@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;450;500;550;600;650;700&display=swap');
:root{--paper:#faf9f6;--ink:#252820;--muted:#6f7169;--line:#d4d3ca;--olive:#6c705b;--body:'DM Sans',Arial,sans-serif;--heading:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid #a08b54;outline-offset:6px}a:hover .text-link{color:var(--olive)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:450;line-height:1.13}h1{font-size:clamp(3rem,6vw,6rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,3.5vw,3.4rem);letter-spacing:-.045em}h3{font-size:1.4rem;letter-spacing:-.03em}.skip{position:absolute;left:20px;top:-100px;background:white;color:black;padding:12px;z-index:100}.skip:focus{top:20px}.hero-wrap{padding:20px}.hero{position:relative;color:#fff;background:linear-gradient(90deg,rgba(14,12,10,.67),rgba(19,15,11,.17)),linear-gradient(0deg,rgba(10,12,9,.8),transparent 65%),url('/assets/hero.jpg') center 55%/cover;min-height:760px}.header{display:flex;align-items:center;justify-content:space-between;padding:32px 5%;border-bottom:1px solid var(--line);gap:30px}.header.on-dark{border-bottom:1px solid #ffffff35}.brand{display:flex;align-items:center;gap:16px;line-height:1.1;font-size:1.22rem;font-weight:500;letter-spacing:.1em}.brand small{display:block;font-size:.64rem;letter-spacing:.38em;margin-top:7px}.mark{font-family:Georgia,serif;font-size:3rem;font-weight:400;letter-spacing:-.17em;position:relative;line-height:1}.mark>span{font-size:2.2rem;font-weight:400;display:inline-block;transform:translate(-1px,3px);letter-spacing:-.15em}.header nav{display:flex;gap:34px;font-size:.875rem}.header nav a{position:relative}.header nav a:after{content:'';height:1px;background:currentColor;position:absolute;bottom:-7px;left:0;width:0;transition:width .2s}.header nav a:hover:after{width:100%}.outline{border:1px solid currentColor;padding:11px 18px;display:inline-flex;gap:30px;align-items:center;font-size:.875rem}.menu-toggle{display:none}.hero-topline{padding:33px 5% 0;display:flex;justify-content:space-between;align-items:flex-start}.hero-topline>span,.hero-caption,.hero-bottom,.eyebrow,.section-label{font-size:.75rem;letter-spacing:.1em;font-weight:500}.hero-topline>span{color:#e1dfd6}.hero-topline p{font-size:.875rem;text-align:right;color:#e3e0d8}.hero-content{padding:65px 5% 50px;display:flex;justify-content:space-between;gap:32px;align-items:flex-end}.hero-caption{display:none}.hero h1{font-size:clamp(3.4rem,5.7vw,6rem);font-weight:400;line-height:1.06;letter-spacing:-.058em}.hero h1>span{color:#d5d1c3}.hero-aside{width:265px;padding-bottom:8px}.button{background:var(--paper);color:var(--ink);display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:17px 24px;font-size:.875rem;transition:background .2s,transform .2s}.button:hover{background:#dedfd3;transform:translateY(-2px)}.button.dark{background:var(--ink);color:white}.button.dark:hover{background:#484c3c}.button>span{font-size:1.3rem}.since{border-top:1px solid #ffffff77;margin-top:48px;padding-top:21px;display:flex;align-items:center;justify-content:space-between}.since>span{font-size:3rem;letter-spacing:-.05em;line-height:1}.since p{font-size:.8rem;line-height:1.45;color:#dfded5}.hero-bottom{margin:0 5%;border-top:1px solid #ffffff44;padding:20px 0;display:flex;justify-content:space-between;font-size:.7rem}.references{margin:0 6.2%;padding:32px 0 34px;border-bottom:1px solid var(--line)}.references>div:first-child{display:flex;align-items:center;justify-content:space-between}.draft{font-size:.75rem;color:var(--muted);letter-spacing:0}.logo-row{display:grid;grid-template-columns:repeat(4,1fr);padding-top:34px;text-align:center;gap:20px;color:#83877b}.logo-row>span{font-family:var(--heading);font-size:1.3rem;font-weight:600;letter-spacing:-.04em}.logo-row b{font-size:.7rem;vertical-align:super;margin-left:7px;font-weight:400}.section-grid{display:grid;grid-template-columns:1fr 3fr;gap:45px;padding:115px 6.2%}.section-label{color:#686c58;line-height:1.6}.year{font-family:var(--heading);font-size:4.5rem;letter-spacing:-.07em;margin-top:62px;font-weight:450;line-height:1}.year small{display:block;letter-spacing:.1em;font-size:.7rem;margin-top:14px}.large-text{font-size:clamp(1.3rem,2.1vw,2rem);line-height:1.42;letter-spacing:-.025em}.about .large-text{margin-top:34px;max-width:760px}.about-bottom{display:flex;justify-content:space-between;gap:50px;margin-top:28px;align-items:flex-end}.about-bottom p{max-width:490px;color:var(--muted)}.text-link{border-bottom:1px solid var(--ink);padding:10px 0;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;font-size:.875rem;white-space:nowrap}.text-link:hover{color:var(--olive)}.services{padding-top:45px}.section-label>p{letter-spacing:0;font-size:1rem;margin-top:30px;font-weight:400;color:var(--muted)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:44px}.big-arrow{font-size:3rem;line-height:1;font-weight:400;color:var(--olive)}.service-row{border-top:1px solid var(--line);padding:28px 0;display:grid;grid-template-columns:65px 1fr 28px;gap:20px;align-items:start;transition:background .2s}.service-row:hover{background:#eeeee6}.row-number{font-size:.8rem;padding-top:3px;color:var(--muted)}.service-row p{font-size:.9rem;color:var(--muted);max-width:550px;margin-top:10px;line-height:1.55}.service-row>span:last-child{font-size:1.5rem;font-weight:400}.all-services{display:flex;margin-top:17px}.all-services>span:first-child{margin-left:auto;color:var(--muted);font-size:.7rem;letter-spacing:.1em}.partners{padding:80px 6.2%;background:#eeeee7}.partners h2{margin-top:24px}.partners .section-heading>p{color:var(--muted);font-size:.95rem;line-height:1.6}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.initials{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1.2;background:#dcded3;color:#737760;font-family:Georgia,serif;font-size:6.5rem;font-weight:400;letter-spacing:-.08em;overflow:hidden}.initials:after{content:'';position:absolute;inset:18px;border:1px solid #73776035}.initials>span{position:absolute;bottom:33px;left:35px;font-size:.7rem;font-family:var(--body);letter-spacing:.14em}.team-card:nth-child(2) .initials{background:#e4e0d8;color:#807461}.team-card:nth-child(3) .initials{background:#d2d7cf;color:#627261}.team-name{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.team-name span{font-size:1.5rem}.team-card p{font-size:.8rem;color:var(--muted);margin-top:8px}.team-card .initials{transition:filter .3s}.team-card:hover .initials{filter:brightness(.95)}.testimonial{padding:100px 20px;text-align:center;border-bottom:1px solid var(--line)}.quote-mark{font-family:Georgia,serif;font-size:6rem;line-height:1;height:70px;margin-top:35px;color:#848970}.testimonial h2{font-size:3rem}.testimonial p{margin:24px 0 10px;color:var(--muted)}.contact-section{padding:95px 6.2%;display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.contact-section h2{margin:26px 0}.contact-section p{max-width:350px;color:var(--muted);margin-bottom:30px}.map{position:relative;background:#e8e9e1;min-height:360px;border:1px solid var(--line)}.map iframe{height:100%;width:100%;min-height:360px;border:0;filter:grayscale(1)}.map>a{position:absolute;bottom:16px;left:16px;right:16px;padding:13px 18px;background:var(--paper);display:flex;justify-content:space-between;font-size:.8rem}footer{background:#282d24;color:#f6f6ed;padding:55px 6.2% 22px}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:55px;gap:35px}.footer-top>p{font-size:1.5rem;letter-spacing:-.03em;line-height:1.4}.footer-top>a:last-child{font-size:.875rem}.footer-top>a:last-child>span{margin-left:35px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff30;padding-top:22px;color:#c0c4b7;font-size:.75rem}.page-head{padding:90px 6.2% 75px;border-bottom:1px solid var(--line)}.page-head h1{font-size:clamp(2.8rem,5.5vw,5.5rem);margin:30px 0;max-width:1050px}.page-head>p{font-size:1.2rem;color:var(--muted);max-width:660px}.article{padding-top:70px;padding-bottom:100px}.article p+p{margin-top:25px}.article h2{margin:45px 0 24px;font-size:2rem}.article .text-link,.article .button{margin-top:30px}.article>.text-link{align-self:start;justify-self:start}.article+ .team-grid,main>.team-grid{padding:70px 6.2%}.service-directory{padding:60px 10% 100px}.scope-list{list-style:none;margin:0 0 32px;padding:0}.scope-list li{padding:18px 0;border-top:1px solid var(--line)}.scope-list li:before{content:'↗';margin-right:18px;color:var(--olive)}.profile-initial{font-size:5rem}.article>div>p:not(.large-text){color:var(--muted)}
@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero{min-height:850px}.hero-content{padding-top:90px}}
@media(max-width:1000px){.header{gap:20px}.header nav{gap:20px}.nav-contact{display:none}.hero-content{padding-top:100px}.hero-aside{width:225px}.section-grid{grid-template-columns:1fr 3fr;gap:25px}.about-bottom{display:block}.about-bottom .text-link{margin-top:20px}.service-row{grid-template-columns:35px 1fr 25px}.contact-section{gap:35px}.brand{font-size:1rem}}
@media(max-width:700px){.hero-wrap{padding:10px}.hero{min-height:auto}.header{padding:22px 6%;position:relative;gap:12px}.brand{gap:13px}.mark{font-size:2.4rem}.mark>span{font-size:1.8rem}.menu-toggle{display:flex;gap:15px;background:none;color:inherit;border:1px solid #8f9385;padding:8px 12px;font-size:.8rem}.header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#292e25;color:white;z-index:5;padding:25px 6%;flex-direction:column;gap:24px;box-shadow:0 15px 20px #0002}.header nav.open{display:flex}.hero-topline{padding-top:25px}.hero-topline>span{font-size:.64rem}.hero-topline p{display:none}.hero-content{padding:85px 6% 35px;display:block}.hero h1{font-size:clamp(2.5rem,8.4vw,4rem);line-height:1.13}.hero-aside{width:100%;margin-top:40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.hero-aside .button{padding:13px 15px;font-size:.8rem;gap:20px}.since{margin:0;padding:0;border:none}.since>span{font-size:2.3rem}.since p{display:none}.hero-bottom{font-size:.6rem;gap:12px;align-items:center}.references{padding-top:25px}.references>div:first-child{align-items:flex-start;flex-direction:column;gap:8px}.logo-row{grid-template-columns:repeat(2,1fr);gap:24px}.logo-row>span{font-size:1.05rem}.section-grid{display:block;padding:65px 6.2%}.section-label{margin-bottom:25px}.section-label>p,.year{display:none}.large-text{font-size:1.35rem}.about .large-text{margin-top:25px}.services{padding-top:10px}.section-heading{margin-bottom:30px}.service-row{gap:12px;padding:24px 0;grid-template-columns:24px 1fr 20px}.service-row h3{font-size:1.2rem}.service-row p{font-size:.875rem}.big-arrow{display:none}.all-services{gap:10px;font-size:.78rem;white-space:normal}.all-services>span:first-child{display:none}.partners{padding:55px 6.2%}.partners .section-heading{display:block}.partners .section-heading>p{margin-top:22px}.team-grid{grid-template-columns:1fr;gap:36px}.initials{aspect-ratio:1.65}.team-name{margin-top:14px}.testimonial{padding:65px 6%}.testimonial h2{font-size:2.25rem}.contact-section{padding:60px 6.2%;grid-template-columns:1fr;gap:35px}.map,.map iframe{min-height:320px}.footer-top{align-items:flex-start;flex-direction:column;gap:30px;padding-bottom:35px}.footer-top>p{font-size:1.35rem}.footer-bottom{gap:20px;flex-wrap:wrap}.page-head{padding:60px 6.2% 45px}.page-head h1{font-size:2.8rem;overflow-wrap:anywhere}.page-head>p{font-size:1rem}.service-directory{padding:35px 6.2% 65px}.article>.text-link{margin:0 0 35px}.profile-initial{max-width:270px;margin-bottom:35px}.article+ .team-grid,main>.team-grid{padding-top:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Partner marks and contact form */
.logo-row{grid-template-columns:repeat(3,1fr);align-items:center;justify-items:center;gap:60px;padding:32px 4% 10px}.logo-row img{display:block;width:100%;max-width:230px;height:105px;object-fit:contain}.logo-row img.a-brand{height:85px;max-width:100px}.contact-links{display:flex;flex-direction:column;gap:8px;margin:-8px 0 30px;font-size:1.1rem}.contact-links a{width:fit-content;border-bottom:1px solid var(--line)}.contact-links a:hover{color:var(--olive)}.message-section{padding-top:30px;border-top:1px solid var(--line)}.message-section>.section-label{padding-top:10px}.message-section h2{margin-bottom:18px}.form-intro{color:var(--muted);margin-bottom:36px}.contact-form{display:flex;flex-direction:column;gap:25px}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:28px}.contact-form label{display:flex;flex-direction:column;gap:9px;font-size:.9rem}.contact-form label>span{display:inline;font-size:.8rem;color:var(--muted)}.contact-form input,.contact-form textarea{font:inherit;font-size:1rem;background:transparent;border:1px solid var(--line);padding:14px 16px;border-radius:0;min-width:0;width:100%;color:var(--ink)}.contact-form textarea{resize:vertical;min-height:150px;line-height:1.6}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--olive);outline-offset:2px}.contact-form .form-trap{display:none}.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px}.form-bottom p{font-size:.8rem;color:var(--muted);max-width:360px}.contact-form button{border:0;cursor:pointer;flex-shrink:0}.footer-contacts{display:flex;gap:25px;flex-wrap:wrap}
@media(max-width:700px){.logo-row{gap:24px;padding-left:0;padding-right:0}.logo-row img{height:70px}.logo-row img.a-brand{height:55px}.hero-bottom{flex-direction:column;align-items:flex-start;line-height:1.7;font-size:.62rem;letter-spacing:.06em}.message-section{padding-top:40px}.form-fields{grid-template-columns:1fr;gap:25px}.form-bottom{align-items:flex-start;flex-direction:column}.footer-contacts{gap:12px;flex-direction:column}}
.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:25px 6.2% 0;color:var(--muted);font-size:.875rem}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs [aria-current]{color:var(--ink)}.breadcrumbs+.page-head{padding-top:50px}
