:root{--paper:#faf8f3;--surface:#fffefa;--ink:#282b31;--muted:#62636b;--primary:#344c68;--primary-dark:#25394f;--clay:#a3442c;--ochre:#7a5b19;--line:#dddcd2;--tint:#eeece7;--peach:#f6e8dd;--sand:#f3eedb;--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:var(--primary);text-underline-offset:5px;text-decoration-thickness:1px}a:hover{color:var(--clay)}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--clay);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(39px,4.7vw,63px);font-weight:750;max-width:760px}h2{font-size:clamp(30px,3.1vw,43px);max-width:790px;margin-bottom:22px;font-weight:720}h3{font-size:22px;margin-bottom:14px;font-weight:700}p+p{margin-top:18px}.wrap{width:min(1180px,100% - 80px);margin-inline:auto}.icon{display:inline-block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex-shrink:0}.accent-forest{color:var(--primary)}.accent-clay{color:var(--clay)}.accent-ochre{color:var(--ochre)}.skip{position:fixed;left:16px;top:-100px;background:var(--primary);color:#fff;padding:12px;z-index:100}.skip:focus{top:10px}.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;background:var(--clay);transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}
.site-header{position:sticky;top:0;z-index:40;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{height:92px;display:flex;justify-content:space-between;align-items:center;gap:32px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink);flex-shrink:0}.brand-mark{display:grid;place-items:center;width:44px;height:44px;background:var(--primary);color:#fff;border-radius:12px;font-size:16px;font-weight:700;letter-spacing:-.08em}.brand-name{display:block;font-size:18px;line-height:1.3;letter-spacing:-.04em;font-weight:700}.brand-name strong{color:var(--primary)}.brand-subtitle{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;line-height:1.5;color:var(--muted);margin-top:3px}.header-nav{display:flex;align-items:center;gap:27px}.header-nav>a:not(.button){text-decoration:none;color:var(--muted);font-size:14px;font-weight:550;position:relative;padding-block:10px}.header-nav>a:not(.button):after{content:"";position:absolute;bottom:4px;left:0;right:0;height:2px;background:var(--clay);transform:scaleX(0);transform-origin:left;transition:transform .2s}.header-nav>a:hover:after,.header-nav>a[aria-current]:after{transform:scaleX(1)}.header-nav>a[aria-current]{color:var(--primary)}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--primary);color:#fff;padding:15px 23px;border-radius:9px;font-size:15px;font-weight:650;text-decoration:none;line-height:1.5;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{background:var(--primary-dark);color:#fff;transform:translateY(-2px);box-shadow:0 6px 15px #25394f16}.button .icon{width:18px;height:18px;transition:transform .2s}.button:hover .icon{transform:translate(2px,-2px)}.header-cta{padding:11px 16px!important;font-size:13px}.menu-toggle{display:none;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);padding:8px 10px;border-radius:8px;color:var(--primary);font-size:13px}.menu-toggle .close-icon{display:none}.menu-toggle[aria-expanded=true] .menu-icon{display:none}.menu-toggle[aria-expanded=true] .close-icon{display:inline-flex}
.hero{padding:64px 0 66px;background:var(--paper);overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr);gap:65px;align-items:center}.eyebrow{display:flex;align-items:center;gap:9px;font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:var(--clay);margin-bottom:18px}.eyebrow .icon{width:16px;height:16px}.hero .eyebrow{color:var(--primary)}.hero-intro{font-size:17px;line-height:1.8;color:var(--muted);margin-top:25px;max-width:640px}.experience{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted);margin-top:22px;max-width:570px}.experience .icon{color:var(--ochre);width:19px;height:19px}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}.text-link{display:inline-flex;gap:8px;align-items:center;font-weight:600;margin-top:20px;font-size:15px}.actions .text-link{margin-top:0}.text-link .icon{width:17px;height:17px}.portrait{position:relative;padding:18px 18px 0;background:var(--tint);border:1px solid #d9d5ce;border-radius:110px 110px 20px 20px;isolation:isolate}.portrait img{display:block;width:100%;height:auto;aspect-ratio:1/1.15;object-fit:cover;object-position:50% 40%;border-radius:94px 94px 12px 12px}.portrait figcaption{text-align:center;font-size:10px;letter-spacing:.035em;color:var(--primary);padding:16px 0}.portrait-note{position:absolute;bottom:76px;left:-30px;background:var(--surface);border:1px solid var(--line);box-shadow:0 10px 28px #2b303812;border-radius:12px;padding:14px 19px;display:flex;align-items:center;gap:13px}.portrait-note strong{font-size:32px;line-height:1;color:var(--clay);letter-spacing:-.06em}.portrait-note span{font-size:11px;line-height:1.5;max-width:90px;color:var(--muted)}.focus-points{display:flex;flex-wrap:wrap;gap:9px;list-style:none;padding:0;margin:27px 0 0}.focus-points li{display:flex;gap:7px;align-items:center;background:var(--surface);border:1px solid var(--line);padding:7px 10px;border-radius:6px;font-size:11px;font-weight:600;color:var(--primary)}.focus-points li:nth-child(2){color:var(--clay)}.focus-points li:nth-child(3){color:var(--ochre)}.focus-points .icon{width:15px;height:15px}
.section{padding-block:82px}.section-muted{background:#f1eee8;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.client-proof{padding-block:44px 52px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper)}.client-proof h2{font-size:27px;margin-bottom:12px}.client-proof .eyebrow{margin-bottom:12px}.client-proof>p:not(.eyebrow){color:var(--muted);font-size:14px}.client-logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:28px 0 0}.client-logos li{display:flex;align-items:center;justify-content:center;min-height:88px;background:#fff;border:1px solid #e4e3dc;border-radius:10px;padding:12px;transition:transform .2s,border-color .2s}.client-logos li:hover{transform:translateY(-3px);border-color:#b9b3a8}.client-logos img{max-width:100%;width:150px;height:58px;object-fit:contain}.introduction{position:relative;padding-left:65px}.introduction:before{content:"";position:absolute;top:88px;bottom:88px;left:0;width:4px;background:var(--clay);border-radius:4px}.introduction>p:not(.eyebrow){max-width:890px;color:var(--muted)}.introduction h2{color:var(--primary)}.services-intro{max-width:850px;color:var(--muted);font-size:16px}.service-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:32px}.service-filters{display:flex;gap:7px;flex-wrap:wrap}.service-filters button{border:1px solid #d7d2c9;background:transparent;padding:8px 13px;border-radius:7px;color:var(--muted);font-size:12px;cursor:pointer;transition:background .18s,color .18s}.service-filters button:hover{background:#e6e0d5;color:var(--primary)}.service-filters button[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:#fff}.service-count{font-size:11px;white-space:nowrap;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.service-grid article{position:relative;background:var(--surface);border:1px solid #dfdad2;border-radius:var(--radius);padding:27px 26px 30px;transition:transform .22s,box-shadow .22s,border-color .22s}.service-grid article:hover{transform:translateY(-5px);box-shadow:0 12px 24px #2c30380b;border-color:#b4beca}.service-grid article[hidden]{display:none}.service-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--tint);color:var(--primary);margin-bottom:23px}.service-icon .icon{width:23px;height:23px}.service-grid article:nth-child(3n+2) .service-icon{background:var(--peach);color:var(--clay)}.service-grid article:nth-child(3n) .service-icon{background:var(--sand);color:var(--ochre)}.service-grid article:nth-child(3n+2) h3{color:var(--clay)}.service-grid article:nth-child(3n) h3{color:var(--ochre)}.service-grid h3{font-size:20px;line-height:1.24;color:var(--primary);margin-bottom:14px}.number{position:absolute;right:25px;top:32px;color:#7e7d79;font-size:11px;font-variant-numeric:tabular-nums}.service-grid p{font-size:14px;line-height:1.8;color:var(--muted)}
.section-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:60px;align-items:end}.section-heading>p{margin-bottom:24px;color:var(--muted);font-size:15px}.process{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;list-style:none;counter-reset:steps;padding:0;margin:25px 0 0}.process li{counter-increment:steps;position:relative;padding:26px 0 0;border-top:1px solid var(--line)}.process .point-icon{display:inline-flex;align-items:center;justify-content:center;padding:12px;background:var(--tint);color:var(--primary);border-radius:12px;margin-bottom:22px}.process li:nth-child(2) .point-icon{background:var(--peach);color:var(--clay)}.process li:nth-child(3) .point-icon{background:var(--sand);color:var(--ochre)}.process li:before{content:"0" counter(steps);position:absolute;right:10px;top:32px;font-size:12px;color:var(--muted)}.process h3{font-size:22px;color:var(--primary)}.process li:nth-child(2) h3{color:var(--clay)}.process li:nth-child(3) h3{color:var(--ochre)}.process p{font-size:15px;color:var(--muted)}.experience-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;align-items:start}.experience-grid h2{color:var(--primary)}.experience-grid p{color:var(--muted);font-size:16px}.reading{background:var(--surface);padding:32px;border:1px solid var(--line);border-radius:var(--radius)}.reading h3{color:var(--clay)}.reading> .point-icon{display:inline-flex;color:var(--clay);margin-bottom:20px}.reading ul{padding:0;list-style:none;margin-bottom:0}.reading li{padding:14px 0;border-top:1px solid var(--line)}.reading a{font-size:14px}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:32px}.portfolio-grid article{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:30px}.portfolio-grid .point-icon{display:inline-flex;padding:11px;background:var(--tint);color:var(--primary);border-radius:10px;margin-bottom:23px}.portfolio-grid article:nth-child(2n) .point-icon{background:var(--peach);color:var(--clay)}.portfolio-grid h3{color:var(--primary)}.portfolio-grid article:nth-child(2n) h3{color:var(--clay)}.portfolio-grid p{font-size:15px;color:var(--muted)}.portfolio-grid .text-link{font-size:14px}.faq{padding-top:0;max-width:960px}.faq h2{color:var(--primary)}.faq details{border-bottom:1px solid var(--line);padding:23px 0}.faq summary{font-weight:600;font-size:17px;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:22px;color:var(--ink)}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";display:grid;place-items:center;border:1px solid var(--line);color:var(--clay);border-radius:50%;width:28px;height:28px;flex-shrink:0;font-weight:400;font-size:21px}.faq details[open] summary:after{content:"−";background:var(--peach)}.faq details[open] summary{color:var(--primary)}.faq details p{margin-top:18px;max-width:810px;font-size:15px;color:var(--muted)}.contact-section{background:#e9e3d8;color:var(--primary-dark);padding:64px 0;border-top:1px solid #d6ccbd;border-bottom:1px solid #d6ccbd}.contact-section h2{font-size:clamp(33px,3.4vw,46px)}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:center}.contact-grid p:not(.eyebrow){color:#5e5b55;font-size:16px;max-width:650px}.contact-secondary{display:block;font-size:13px;margin-top:18px;color:var(--primary)}.site-footer{padding:28px 0;color:var(--muted);font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-inner>span:last-child{display:flex;align-items:center;gap:6px}.footer-inner .icon{width:14px;height:14px}.reveal-ready{transition:opacity .45s ease,transform .45s ease}.reveal-ready:not(.in-view){opacity:0;transform:translateY(14px)}
@media(min-width:1400px){.hero{padding-block:84px}.hero-grid{gap:90px}}@media(max-width:1050px){.header-nav{gap:17px}.hero-grid{gap:40px;grid-template-columns:minmax(0,1.5fr) minmax(250px,.8fr)}h1{font-size:48px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid article{padding:25px}.service-toolbar{align-items:flex-start;flex-direction:column;gap:10px}.experience-grid{gap:40px}}
@media(max-width:900px){.header-inner{height:78px}.menu-toggle{display:inline-flex}.header-nav{display:none;position:absolute;left:24px;right:24px;top:calc(100% + 8px);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 16px 30px #252f3f14;gap:2px}.header-nav[data-open=true]{display:flex;flex-direction:column;align-items:stretch}.header-nav>a:not(.button){padding:11px 10px}.header-nav .button{margin-top:10px}.header-nav>a:after{display:none}.section-heading,.experience-grid{grid-template-columns:1fr;gap:20px}.process{gap:24px}.client-logos{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-grid{grid-template-columns:1.45fr .8fr;gap:30px}.portrait{padding:12px 12px 0;border-radius:75px 75px 16px 16px}.portrait img{border-radius:63px 63px 10px 10px}.portrait-note{left:-16px;bottom:65px;padding:10px 12px}.portrait-note strong{font-size:26px}.portrait-note span{font-size:10px}.portrait figcaption{font-size:9px}.contact-grid{gap:35px}h1{font-size:43px}}
@media(max-width:650px){html{scroll-padding-top:100px}.wrap{width:calc(100% - 40px)}body{font-size:16px}.brand-name{font-size:16px}.brand-mark{width:38px;height:38px;border-radius:10px;font-size:14px}.brand-subtitle{font-size:9px}.brand{gap:10px}.hero{padding:42px 0}.hero-grid{grid-template-columns:1fr;gap:37px}h1{font-size:40px;line-height:1.12}.hero-intro{font-size:16px;margin-top:22px}.hero .eyebrow{font-size:10px;letter-spacing:.09em}.experience{font-size:12px}.actions{gap:20px}.button{padding:14px 18px;font-size:14px}.portrait{max-width:340px;margin:0 auto;width:100%;padding:14px 14px 0;border-radius:85px 85px 18px 18px}.portrait img{border-radius:72px 72px 10px 10px;aspect-ratio:1/1.04}.portrait-note{left:-8px;bottom:55px}.portrait figcaption{font-size:10px;padding:15px 0}.focus-points{gap:7px;margin-top:23px}.focus-points li{font-size:10px;padding:6px 8px}.section{padding-block:52px}.client-proof{padding-block:32px 40px}.client-proof h2{font-size:25px}.client-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.client-logos li{min-height:80px;padding:10px}.client-logos img{height:54px}.client-logos li:last-child{grid-column:1/-1;max-width:180px;width:100%;justify-self:center}.introduction{padding-left:22px}.introduction:before{top:58px;bottom:58px;width:3px}h2{font-size:30px}.services-intro{font-size:15px}.service-grid{grid-template-columns:1fr;gap:14px;margin-top:22px}.service-grid article{padding:25px}.service-grid h3{font-size:21px}.service-grid p{font-size:14px}.service-filters{gap:6px}.service-filters button{font-size:11px;padding:7px 10px}.service-icon{margin-bottom:20px}.process,.portfolio-grid,.contact-grid{grid-template-columns:1fr}.process{gap:28px}.process li{padding-top:24px}.section-heading>p{margin-bottom:0}.portfolio-grid{gap:16px}.portfolio-grid article,.reading{padding:25px}.faq{padding-top:0}.faq summary{font-size:16px}.contact-section{padding:44px 0}.contact-grid{gap:27px}.contact-section h2{font-size:34px}.header-inner{gap:14px}.site-footer{padding:24px 0}.footer-inner{gap:9px;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready:not(.in-view){opacity:1;transform:none}.button:hover,.service-grid article:hover,.client-logos li:hover{transform:none}}

.service-toolbar[hidden]{display:none}
/* Connected service pages */
.service-link{display:inline-flex;align-items:center;gap:8px;margin-top:21px;color:inherit;font-size:12px;font-weight:650;text-decoration:none}.service-link:hover{text-decoration:underline}.service-link .icon{width:16px;height:16px}.service-grid article:nth-child(3n+2) .service-link{color:var(--clay)}.service-grid article:nth-child(3n) .service-link{color:var(--ochre)}.footer-links{display:flex;gap:20px}.footer-links a{color:var(--muted)}.service-hero{padding-top:28px}.detail-breadcrumb{display:flex;align-items:center;gap:11px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-bottom:40px;line-height:1.6}.detail-breadcrumb .icon{width:14px;height:14px;color:var(--clay)}.detail-breadcrumb a{white-space:nowrap}.service-hero h1{font-size:clamp(38px,4.25vw,57px);max-width:760px}.service-hero .hero-grid{align-items:start}.service-hero .hero-intro{font-size:17px}.scope-panel{background:var(--tint);border:1px solid #d8d2c7;border-radius:var(--radius);padding:30px;margin-top:5px}.scope-panel>.service-icon{background:var(--surface);margin-bottom:20px}.scope-panel h2{font-size:25px;color:var(--primary);margin-bottom:23px}.scope-panel dl{margin:0}.scope-panel dl>div+div{border-top:1px solid #d4cbbc;margin-top:18px;padding-top:18px}.scope-panel dt{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--primary);font-weight:700;margin-bottom:5px}.scope-panel dd{margin:0;font-size:14px;line-height:1.7;color:var(--muted)}.scope-location{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--primary);margin-top:25px!important}.scope-location .icon{width:15px;height:15px}.detail-introduction{max-width:970px}.detail-introduction h2{color:var(--primary)}.detail-introduction>p:not(.eyebrow){color:var(--muted);max-width:890px}.deliverables-grid h3{line-height:1.25}.detail-evidence{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:start}.detail-evidence h2{font-size:clamp(29px,2.9vw,38px);color:var(--primary)}.detail-evidence p:not(.eyebrow){color:var(--muted);font-size:16px}.consultant-note{background:var(--surface);border:1px solid var(--line);padding:28px;border-radius:var(--radius)}.consultant-note img{display:block;width:74px;height:74px;object-fit:cover;border-radius:18px;margin-bottom:20px}.consultant-note h3{font-size:22px;color:var(--clay)}.consultant-note p{font-size:14px!important}.consultant-note .text-link{font-size:13px}.detail-faq{padding-top:72px;padding-bottom:72px}.related-section{background:#f4f0e6;border-top:1px solid var(--line)}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}.related-grid article{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);display:flex;flex-direction:column;align-items:flex-start}.related-grid .service-icon{margin-bottom:20px}.related-grid article:nth-child(2) .service-icon{background:var(--peach);color:var(--clay)}.related-grid article:nth-child(3) .service-icon{background:var(--sand);color:var(--ochre)}.related-grid h3{font-size:21px;line-height:1.25}.related-grid h3 a{color:var(--primary);text-decoration:none}.related-grid h3 a:hover{text-decoration:underline}.related-grid p{font-size:14px;color:var(--muted);margin-bottom:20px}.related-grid .text-link{margin-top:auto;font-size:13px}.service-detail .contact-section .eyebrow{line-height:1.6;letter-spacing:.08em}
@media(max-width:900px){.detail-evidence{gap:30px;grid-template-columns:1.2fr 1fr}.related-grid{gap:14px}.related-grid article{padding:22px}.service-hero h1{font-size:42px}.scope-panel{padding:24px}}
@media(max-width:650px){.service-hero{padding-top:24px}.detail-breadcrumb{margin-bottom:29px;font-size:11px;gap:8px}.service-hero h1{font-size:38px}.service-hero .hero-intro{font-size:16px}.service-hero .hero-grid{gap:32px}.scope-panel{padding:26px;margin:0}.detail-evidence,.related-grid{grid-template-columns:1fr;gap:22px}.detail-faq{padding-top:50px;padding-bottom:50px}.detail-introduction>p:not(.eyebrow){font-size:16px}.related-grid article{padding:26px}.footer-links{gap:15px}.scope-panel h2{font-size:25px}}
