@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url('assets/dm-sans-regular.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url('assets/dm-sans-medium.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:600 700;font-display:swap;src:url('assets/dm-sans-semibold.ttf') format('truetype')}
:root{--forest:#143b32;--deep:#0c2923;--ink:#203d32;--sage:#6e866b;--mint:#c4d9cb;--paper:#fafbf6;--line:#dce3d8;--body:#57675c;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif;scroll-behavior:auto;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.6}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}a,button{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #9b9c46;outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif)}em{font-weight:400}section{scroll-margin-top:105px}.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-size:0.75rem;letter-spacing:2.1px;font-weight:650;line-height:1.5}.eyebrow.light{color:#d3dfce;display:flex;gap:16px;align-items:center}.short-line{width:32px;height:1px;background:currentColor}.header{height:102px;padding:0 56px;display:flex;justify-content:space-between;align-items:center;background:var(--paper);position:relative;z-index:20;border-bottom:1px solid var(--line)}.wordmark{display:flex;flex-direction:column;align-items:center;line-height:.85;width:140px}.wordmark>span{font-family:var(--serif);font-size:3.0625rem;font-weight:bold;letter-spacing:-3px}.wordmark small{font-family:Arial,sans-serif;letter-spacing:5.7px;font-size:0.5625rem;font-weight:800;margin-top:7px;padding-left:5px}.desktop-nav{display:flex;gap:35px;margin-left:65px;font-size:0.875rem}.desktop-nav a{position:relative;padding:10px 0}.desktop-nav a:after{content:'';position:absolute;bottom:5px;left:0;width:0;height:1px;background:var(--sage);transition:width .25s}.desktop-nav a:hover:after{width:100%}.header-cta{padding:11px 19px;border:1px solid #a4b29f;display:flex;gap:30px;font-size:0.875rem;font-weight:500}.header-cta span{font-size:1.25rem;line-height:1.2}.hero{min-height:704px;height:calc(100svh - 102px);max-height:960px;background:var(--deep);color:var(--paper);position:relative;isolation:isolate;overflow:hidden}.hero-visual{position:absolute;inset:0;z-index:-2;background:linear-gradient(105deg,#0c2923 15%,#385744 100%)}.hero-content{padding-top:66px;padding-bottom:100px;position:relative}.hero h1{font-size:clamp(4.0625rem,6.65vw,6.4375rem);line-height:1.03;letter-spacing:-3.8px;margin:29px 0 23px}.hero h1 em{color:#c2d2b3}.hero-description{font-size:1.125rem;color:#e2e9de;line-height:1.6;margin-bottom:29px}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:37px;padding:14px 23px;font-size:0.875rem;font-weight:550;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:1.25rem;line-height:1}.button-light{background:var(--paper);color:var(--forest)}.button-light:hover{background:#d9e6d2}.hero-bottom{position:absolute;bottom:25px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff30;padding-top:22px}.hero-bottom p{font-size:0.6875rem;letter-spacing:1.7px;color:#d5dfd1}.hero-bottom a{font-size:0.8125rem;display:flex;gap:25px}.intro{padding-block:112px;display:grid;grid-template-columns:1fr 2.1fr;gap:50px}.intro .eyebrow{padding-top:15px}.intro h2{font-size:clamp(2.25rem,3.7vw,3.5625rem);letter-spacing:-1.5px;line-height:1.15;margin-bottom:28px}.intro h2 em{color:var(--sage)}.intro>div>p{font-size:1.125rem;color:var(--body);max-width:710px;line-height:1.8}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.skip-link{position:absolute;top:-100px;z-index:100;background:white;padding:12px}.skip-link:focus{top:0}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px 24px;box-shadow:0 10px 20px #102b2212}.mobile-nav a{display:block;padding:13px 0;border-bottom:1px solid var(--line)}
@media(min-width:1700px){.header{padding-inline:max(56px,calc((100vw - 1320px)/2))}.hero-content{padding-top:90px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.header{padding:0 32px}.desktop-nav{gap:22px;margin-left:0}.hero h1{font-size:4.9375rem}.intro{grid-template-columns:1fr 2.5fr;gap:30px}.intro h2{font-size:2.625rem}}
@media(max-width:760px){.wrap{width:calc(100% - 44px)}.header{height:86px;padding:0 22px}.wordmark{width:109px}.wordmark>span{font-size:2.5rem}.wordmark small{font-size:0.4375rem;letter-spacing:4.8px;margin-top:6px}.desktop-nav{display:none}.header-cta{margin-left:auto;margin-right:18px;border:0;padding:10px 0;gap:14px;font-size:0.8125rem}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;border:0;background:transparent;width:30px;min-height:44px;padding:0}.menu-toggle span{height:1px;background:var(--forest);width:25px;transition:none}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{height:calc(100svh - 86px);min-height:675px;max-height:820px}.hero-content{padding-top:61px}.hero h1{font-size:clamp(3.3125rem,10.3vw,4.8125rem);letter-spacing:-2.1px;line-height:1.06;margin-top:28px}.hero .eyebrow{font-size:0.625rem;letter-spacing:1.5px;gap:11px}.short-line{width:20px}.hero-description{font-size:1.0625rem;margin-top:23px}.hero-bottom{bottom:24px}.hero-bottom p{font-size:0.5625rem;max-width:210px;line-height:1.8;letter-spacing:1.2px}.hero-bottom a{font-size:0.75rem;gap:12px}.intro{padding-block:74px;display:block}.intro .eyebrow{margin-bottom:26px}.intro h2{font-size:2.3125rem;letter-spacing:-1px}.intro>div>p{font-size:1rem}.button{font-size:0.875rem}.eyebrow{font-size:0.6875rem;letter-spacing:1.8px}}
.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:67% 50%}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,30,25,.75) 0%,rgba(7,30,25,.35) 48%,rgba(7,30,25,.03) 100%),linear-gradient(0deg,rgba(7,30,25,.44),transparent 40%)}
.intro-signature{display:flex;gap:26px;margin-top:32px;font-size:0.8125rem;font-weight:500}.intro-signature span+span{border-left:1px solid #b8c6b7;padding-left:26px}.expertise{padding-block:90px 104px;background:#edf1e8;border-block:1px solid #dfe5d9}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:58px}.section-heading .eyebrow{margin-bottom:25px}.section-heading h2{font-size:clamp(2.5rem,4vw,3.75rem);line-height:1.12;letter-spacing:-1.8px}.section-heading h2 em{color:var(--sage)}.section-heading>p{font-size:1rem;color:var(--body);max-width:310px;margin-bottom:6px;line-height:1.8}.practice-layout{display:grid;grid-template-columns:.88fr 1.5fr;gap:90px}.practice-aside{padding-top:23px}.small-label{font-size:0.625rem;letter-spacing:1.7px;font-weight:600;color:#62765c}.practice-aside h3{font-family:var(--serif);font-size:1.875rem;line-height:1.18;letter-spacing:-.6px;margin:17px 0}.practice-aside>p{color:var(--body);font-size:0.875rem;max-width:280px}.moments{margin-top:28px}.moments button{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid #cdd7c7;padding:15px 9px 15px 0;font-size:0.875rem;color:var(--ink);gap:15px;transition:padding .2s,background .2s}.moments button span{font-size:1.1875rem;color:#4e7054}.moments button[aria-pressed=true]{background:#dce5d3;padding-left:14px;font-weight:600}.moments button:hover{background:#e1e8d9;padding-left:14px}.practice-aside .moment-feedback{min-height:62px;font-size:0.75rem;line-height:1.6;color:#57674e;margin-top:16px}.practice{border-top:1px solid #bdcbb4;transition:background .2s}.practice:last-of-type{border-bottom:1px solid #bdcbb4}.practice summary{list-style:none;display:flex;align-items:center;gap:20px;cursor:pointer;min-height:100px;padding:24px 8px;font-family:var(--serif);font-size:clamp(1.375rem,2.2vw,2.0625rem);line-height:1.2;letter-spacing:-.55px}.practice summary::-webkit-details-marker,.faq-list summary::-webkit-details-marker{display:none}.practice-number{font-family:var(--sans);font-size:0.6875rem;color:#758369;letter-spacing:.5px;min-width:21px}.plus{margin-left:auto;flex-shrink:0;width:18px;height:18px;position:relative}.plus:before,.plus:after{content:'';position:absolute;background:currentColor;top:8px;left:1px;width:15px;height:1px;transition:none}.plus:after{transform:rotate(90deg)}details[open]>summary .plus:after{transform:rotate(0)}summary:focus-visible{outline:2px solid var(--sage);outline-offset:5px}.practice[open]{background:#e6ecdf}.practice-content{padding:0 25px 35px 48px}.practice-content h3{font-size:1.0625rem;font-weight:550;margin-bottom:13px;line-height:1.5}.practice-content p,.practice-content li{font-size:0.9375rem;color:#4c604d;line-height:1.7}.practice-content ul{padding-left:18px;margin:17px 0 25px}.practice-content li{margin-top:7px}.text-link{font-size:0.875rem;display:inline-flex;align-items:center;gap:22px;min-height:40px;border-bottom:1px solid #97ac8e;font-weight:550}.text-link:hover{color:#496943;border-color:currentColor}.text-link span{font-size:1.25rem}.approach{padding-block:120px;display:grid;grid-template-columns:1fr 1.03fr;gap:108px;align-items:center}.approach-art{position:relative;align-self:stretch;min-height:650px;overflow:hidden;background:#607f63}.approach-art img{width:100%;height:100%;object-fit:cover}.art-caption{position:absolute;bottom:32px;left:0;width:100%;text-align:center;color:#eff3e4;font-size:0.625rem;letter-spacing:2px}.approach-copy .eyebrow{margin-bottom:27px}.approach h2{font-size:clamp(2.375rem,3.6vw,3.3125rem);letter-spacing:-1.5px;line-height:1.13}.approach h2 em{color:var(--sage)}.approach-copy>p:not(.eyebrow){margin:26px 0 29px;color:var(--body);line-height:1.8;font-size:1rem}.principle{border-top:1px solid var(--line);display:flex;gap:21px;padding-block:23px}.principle>span{font-size:0.6875rem;color:#6c805f;padding-top:4px;white-space:nowrap}.principle h3{font-size:1.0625rem;font-weight:550;margin-bottom:6px}.principle p{font-size:0.875rem;line-height:1.7;color:var(--body)}.method{background:var(--forest);color:var(--paper);padding-block:95px 102px}.method .section-heading{margin-bottom:56px}.method .section-heading h2 em{color:#b5c9aa}.method .section-heading>p{color:#c8d5c2}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:58px;border-top:1px solid #96ad913e}.steps article{padding-top:24px}.step-number{font-size:0.75rem;font-weight:500;color:#b6c8aa}.steps h3{font-family:var(--serif);font-size:1.9375rem;margin:27px 0 15px;letter-spacing:-.5px}.steps p{font-size:0.9375rem;color:#c7d3c2;line-height:1.8;max-width:310px}.contact{padding-block:114px;display:grid;grid-template-columns:1.6fr 1fr;gap:80px;align-items:center}.contact .eyebrow{margin-bottom:29px}.contact h2{font-size:clamp(2.5rem,3.8vw,3.5625rem);line-height:1.16;letter-spacing:-1.8px}.contact h2 em{color:var(--sage)}.contact>div>p:not(.eyebrow){color:var(--body);font-size:1.0625rem;line-height:1.8;margin-top:27px}.contact-panel{padding:32px 35px;border-left:1px solid #cbd7c4}.contact-symbol{font-size:2.8125rem;line-height:1;color:#648062;display:block;margin-bottom:15px}.contact-panel h3{font-family:var(--serif);font-size:1.9375rem;line-height:1.2;letter-spacing:-.8px}.contact .contact-panel>p{font-size:0.875rem;margin-top:13px}.contact-pending{border-top:1px solid var(--line);padding-top:20px;color:var(--body)}#contact-channels{margin-top:24px}.button-dark{background:var(--forest);color:white}.button-dark:hover{background:#315848}#contact-whatsapp{margin-top:15px}#contact-email{display:flex;gap:25px;max-width:260px}.contact-address{display:block;margin-top:20px;font-size:0.875rem}.contact .contact-panel .contact-note{font-size:0.75rem;line-height:1.6;margin-top:22px}.questions{padding-block:73px 95px;display:grid;grid-template-columns:1fr 1.6fr;gap:80px;border-top:1px solid var(--line)}.questions h2{font-size:2.4375rem;line-height:1.17;letter-spacing:-1px;margin-top:23px}.questions h2 em{color:var(--sage)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;display:flex;gap:30px;align-items:center;font-size:1rem;font-weight:500;padding:21px 0;line-height:1.6}.faq-list .plus{width:14px;height:14px}.faq-list .plus:before,.faq-list .plus:after{width:12px;top:6px}.faq-list details p{font-size:0.9375rem;line-height:1.8;color:var(--body);padding-bottom:23px;padding-right:35px}.closing{padding-block:65px;background:#d6e3d4}.closing>.wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.closing p{font-family:var(--serif);font-size:clamp(2.125rem,4vw,3.6875rem);letter-spacing:-1.6px;line-height:1.15}.closing p em{color:#637e5d}.back-top{border:1px solid #98ae92;border-radius:50%;width:60px;height:60px;display:flex;align-items:center;justify-content:center;font-size:1.5625rem;flex-shrink:0;transition:background .2s}.back-top:hover{background:#bed0b9}.footer{padding-block:43px;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer .wordmark{width:113px}.footer .wordmark>span{font-size:2.5rem}.footer .wordmark small{font-size:0.4375rem;letter-spacing:5px}.footer>p{font-size:0.8125rem;color:var(--body);margin-left:auto;margin-right:50px}.footer>span{font-size:0.75rem;color:#62735e}[hidden],#contact-email[hidden],#contact-whatsapp[hidden]{display:none!important}
@media(max-width:1100px){.practice-layout{gap:50px;grid-template-columns:.9fr 1.5fr}.approach{gap:55px}.approach-art{min-height:620px}.contact{gap:40px}.contact-panel{padding:25px}.steps{gap:35px}.questions{gap:50px}.section-heading{gap:40px}.footer>p{margin-right:25px}}
@media(max-width:760px){.hero-visual img{object-position:65% 50%}.hero-visual:after{background:linear-gradient(90deg,rgba(7,30,25,.69),rgba(7,30,25,.25)),linear-gradient(0deg,rgba(7,30,25,.55),transparent 80%)}.intro-signature{flex-wrap:wrap;gap:10px 16px;font-size:0.6875rem;margin-top:25px}.intro-signature span+span{padding-left:16px}.expertise{padding-block:65px}.section-heading{display:block;margin-bottom:35px}.section-heading .eyebrow{margin-bottom:22px}.section-heading h2{font-size:2.4375rem;letter-spacing:-1.2px}.section-heading>p{margin-top:22px;max-width:360px;font-size:0.9375rem}.practice-layout{display:block}.practice-aside{padding:22px;background:#e2e9db;margin-bottom:33px}.practice-aside h3{font-size:1.75rem;margin-top:12px}.practice-aside h3 br{display:none}.practice-aside>p{max-width:100%}.moments{margin-top:17px}.moments button{font-size:0.875rem;padding-block:16px;min-height:53px}.practice-aside .moment-feedback{font-size:0.75rem;min-height:0;margin-top:17px}.practice summary{font-size:1.4375rem;gap:14px;min-height:86px;padding-block:24px;letter-spacing:-.5px}.practice-number{font-size:0.625rem;min-width:14px}.practice-content{padding:0 17px 27px 35px}.practice-content h3{font-size:1rem}.practice-content p,.practice-content li{font-size:0.875rem}.practice-content .text-link{font-size:0.8125rem}.approach{padding-block:70px;display:flex;flex-direction:column;gap:43px}.approach-art{min-height:0;height:auto;aspect-ratio:1/1;width:100%;max-width:540px;align-self:center}.art-caption{font-size:0.5625rem;bottom:25px}.approach-copy .eyebrow{margin-bottom:24px}.approach h2{font-size:2.5625rem}.approach h2 br:last-child{display:none}.approach-copy>p:not(.eyebrow){font-size:1rem}.principle{padding-block:22px}.method{padding-block:68px}.method .section-heading{margin-bottom:36px}.method .section-heading h2{font-size:2.375rem}.steps{grid-template-columns:1fr;gap:0;border-top:0}.steps article{border-top:1px solid #96ad913e;padding:24px 0 27px;display:grid;grid-template-columns:30px 1fr;gap:0 14px}.step-number{padding-top:7px}.steps h3{font-size:1.8125rem;margin:0 0 14px}.steps p{grid-column:2;font-size:0.9375rem;max-width:100%}.steps article:last-child{padding-bottom:0}.contact{display:block;padding-block:72px}.contact .eyebrow{margin-bottom:23px}.contact h2{font-size:2.4375rem;letter-spacing:-1.3px}.contact h2 br{display:none}.contact>div>p:not(.eyebrow){font-size:1rem;margin-top:22px}.contact-panel{margin-top:35px;padding:27px 0 0;border-left:0;border-top:1px solid var(--line)}.contact-symbol{font-size:2.25rem}.contact .contact-panel>p{font-size:0.875rem}.contact-panel h3{font-size:2rem}.contact-pending{max-width:360px;border:0;padding:0}.questions{padding-block:59px 66px;display:block}.questions h2{font-size:2.25rem;margin:20px 0 30px}.faq-list summary{font-size:0.9375rem;padding-block:20px;gap:20px}.faq-list details p{padding-right:16px;font-size:0.875rem}.closing{padding-block:43px}.closing p{font-size:2.0625rem;letter-spacing:-1px}.back-top{width:45px;height:45px;font-size:1.375rem}.footer{padding-block:32px;flex-wrap:wrap;gap:22px}.footer .wordmark{width:106px}.footer>p{font-size:0.75rem;margin:0 0 0 auto;max-width:145px;text-align:right}.footer>span{width:100%;padding-top:20px;border-top:1px solid var(--line);font-size:0.6875rem}}
@media(max-width:370px){.header-cta{gap:8px;margin-right:12px}.hero h1{font-size:3rem}.intro-signature{font-size:0.625rem;gap:10px}.intro-signature span+span{padding-left:10px}.practice summary{font-size:1.3125rem;gap:10px}.closing p{font-size:1.75rem}}
/* Preserve legibility in body copy and compact controls across viewports. */
.practice-content p,.practice-content li,.steps p,.faq-list details p,.principle p,.practice-aside>p{font-size:1rem}.moments button,.intro-signature,.desktop-nav,.header-cta,.hero-bottom a,.text-link{font-size:0.875rem}.eyebrow,.small-label,.art-caption,.hero .eyebrow,.hero-bottom p,.practice-number,.principle>span,.intro .eyebrow,.footer>span{font-size:0.75rem}.hero-bottom p{max-width:none}.intro-signature{flex-wrap:wrap}.hero h1{overflow-wrap:normal}
@media(max-width:760px){.hero-bottom p{max-width:220px;font-size:0.75rem;letter-spacing:.6px}.hero .eyebrow{font-size:0.75rem;letter-spacing:1px}.hero h1{font-size:clamp(2.9375rem,10.1vw,4.8125rem)}.intro-signature{font-size:0.8125rem;gap:12px}.intro-signature span+span{padding-left:12px}.small-label{letter-spacing:1px}.practice-content .text-link{font-size:0.875rem}}
@media(max-width:390px){.hero .eyebrow{letter-spacing:.5px;gap:8px}.hero-bottom p{max-width:190px}.hero-bottom a{gap:8px}.intro-signature span+span{border-left:0;padding-left:0}.intro-signature{column-gap:20px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Business context and service detail. Keep the hero and text in normal flow. */
.hero{display:flex;flex-direction:column;min-height:760px;height:auto;max-height:none}
.hero-content{flex:1;padding-bottom:64px}
.hero-description{max-width:480px}
.hero-bottom{position:relative;inset:auto;margin-top:auto;margin-bottom:25px}
.credentials{background:#e4ebdf;border-bottom:1px solid #ccd8c6}
.credentials-inner{display:grid;grid-template-columns:repeat(3,1fr);padding-block:28px;gap:35px}
.credentials p+p{border-left:1px solid #bfcfba;padding-left:35px}
.credentials strong{display:block;font-family:var(--serif);font-size:1.375rem;font-weight:400;line-height:1.3}
.credentials span{display:block;font-size:.8125rem;color:#536650;margin-top:5px}
.intro .intro-followup{margin-top:18px;font-size:1rem}
.practice{scroll-margin-top:28px}
.practice summary{min-height:118px}
.practice-title{min-width:0}
.practice-title small{display:block;font-family:var(--sans);font-size:.875rem;color:#52654e;letter-spacing:0;line-height:1.5;margin-top:9px}
.practice-content h4{font-size:.75rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;margin:25px 0 9px;color:#415a3c}
.practice-content ul{margin:12px 0 24px}
.practice-output{border-left:2px solid #829877;padding:1px 0 2px 18px;margin:25px 0}
.practice-output h4{margin-top:0}
.practice-content .practice-output p{font-size:.9375rem}
.scope-note,.scenario-note{font-size:.8125rem;line-height:1.7;color:var(--body);margin-top:24px}
.practice-aside .moment-feedback{font-size:.875rem;min-height:0}
.moment-jump{margin-top:12px}
.decisions{padding-block:100px 92px;border-bottom:1px solid var(--line)}
.decision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:46px}
.decision-grid article{border-top:1px solid #adc0a5;padding-top:25px}
.decision-label{font-size:.6875rem;letter-spacing:1.4px;font-weight:600;color:#5e7758}
.decision-grid h3{font-family:var(--serif);font-size:2rem;line-height:1.2;letter-spacing:-.7px;margin:23px 0}
.decision-grid p{font-size:.9375rem;color:var(--body);line-height:1.8}
.decision-grid .decision-question{color:var(--ink);margin-top:19px;font-size:.9375rem}
.decision-grid .text-link{margin-top:24px}
.scenario-note{margin-top:36px}
.contact>div>p:not(.eyebrow){max-width:570px}
@media(min-width:761px){.hero{min-height:max(760px,calc(100svh - 102px))}.practice-aside{align-self:start;position:sticky;top:24px}}
@media(max-width:1100px){.decision-grid{gap:28px}.decision-grid h3{font-size:1.75rem}.credentials-inner{gap:22px}.credentials p+p{padding-left:22px}.credentials strong{font-size:1.25rem}}
@media(max-width:760px){
  .hero{min-height:690px}.hero-content{padding-top:53px;padding-bottom:48px}.hero-description{max-width:400px;font-size:1rem}.hero-bottom{gap:22px;padding-top:18px}.hero-bottom p{max-width:175px;font-size:.625rem}.hero-bottom a{white-space:nowrap}
  .credentials-inner{padding-block:25px;grid-template-columns:1fr;gap:17px}.credentials p{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:10px}.credentials p+p{border-left:0;border-top:1px solid #c8d4c1;padding:17px 0 0}.credentials strong{font-size:1.3125rem}.credentials span{margin-top:0;font-size:.8125rem}
  .practice summary{gap:12px;padding-block:22px}.practice-title small{font-size:.8125rem}.practice-content{padding-left:12px;padding-right:12px}.practice-content h4{font-size:.75rem;line-height:1.5}.practice-output{padding-left:15px}.practice-content .practice-output p{font-size:.9375rem}
  .decisions{padding-block:66px}.decision-grid{grid-template-columns:1fr;gap:34px}.decision-grid h3{font-size:1.875rem;margin:18px 0}.decision-grid h3 br{display:none}.decision-grid p{font-size:1rem}.decision-grid .decision-question{font-size:1rem}.decision-grid .text-link{margin-top:18px}.scenario-note{margin-top:28px}
}

@media(max-width:370px){.header .wordmark{width:96px;flex-shrink:0}.header .wordmark>span{font-size:2.2rem}.header-cta{font-size:.75rem;gap:6px;margin-right:12px}}

/* Corporate practice and the cross-practice AI offering. */
.desktop-nav{margin-left:0;gap:26px}
.firm-audience{display:block;font-family:var(--serif);font-size:1.375rem;line-height:1.5;margin-top:30px;color:var(--sage)}
.corporate-profile .firm-intro-label .eyebrow{font-size:.75rem;line-height:1.5;color:var(--ink)}
.corporate-profile strong{font-weight:500;color:var(--ink)}
.firm-detail{max-width:710px;border-block:1px solid var(--line);margin-top:28px}
.firm-detail summary,.ai-context summary{list-style:none;display:flex;align-items:center;gap:22px;cursor:pointer;padding-block:20px;font-size:.9375rem;font-weight:500}
.firm-detail summary::-webkit-details-marker,.ai-context summary::-webkit-details-marker{display:none}
.firm-detail>div{padding-bottom:24px}
.firm-detail p{font-size:1rem;line-height:1.8;color:var(--body);margin-top:20px}
.intro>div>p.firm-closing{margin-top:26px;font-size:1rem;line-height:1.8}
.ai-entry{display:block;border-top:1px solid #c0cfb8;padding-top:20px;margin-top:24px;font-size:.875rem;line-height:1.6}
.ai-entry>span{display:block;color:var(--body)}
.ai-entry strong{display:block;font-weight:500;margin-top:7px}
.ai-entry strong span{margin-left:8px}
.ai-entry:hover strong{text-decoration:underline;text-underline-offset:5px}
.ai-practice{background:#102f29;color:var(--paper);padding-block:100px;scroll-margin-top:0}
.ai-heading{display:grid;grid-template-columns:1.8fr 1fr;align-items:end;gap:70px}
.ai-heading .eyebrow{margin-bottom:27px}
.ai-heading h2{font-size:clamp(2.5rem,4.3vw,4rem);line-height:1.13;letter-spacing:-1.7px}
.ai-heading h2 em{color:#c0d3b8}
.ai-heading>p{max-width:350px;color:#c9d7ca;line-height:1.8;font-size:1rem}
.ai-lead{max-width:790px;font-size:1.125rem;line-height:1.85;color:#d8e2d7;margin-top:38px}
.ai-topics{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:55px}
.ai-topics article{border-top:1px solid #779584;padding-top:23px;min-width:0}
.ai-number{font-size:.75rem;letter-spacing:1px;color:#bed1b7}
.ai-topics h3{font-family:var(--serif);font-size:1.5625rem;line-height:1.25;margin:22px 0 17px;letter-spacing:-.3px}
.ai-topics p{color:#c9d7ca;font-size:1rem;line-height:1.8}
.ai-engagement{display:flex;align-items:center;justify-content:space-between;gap:64px;padding-block:36px;border-block:1px solid #5a7b68;margin-top:49px}
.ai-engagement>div{max-width:780px}
.ai-engagement .small-label{color:#bed1b7}
.ai-engagement h3{font-family:var(--serif);font-size:1.75rem;line-height:1.3;margin:12px 0}
.ai-engagement p{font-size:1rem;line-height:1.8;color:#c9d7ca}
.ai-engagement .button{flex-shrink:0;max-width:100%}
.ai-context{margin-top:17px}
.ai-context summary{color:#d8e2d7;max-width:620px}
.ai-context-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-block:10px 22px}
.ai-context-grid p{font-size:1rem;line-height:1.8;color:#c9d7ca}
.ai-context-grid strong{display:block;color:#edf3e9;font-weight:500;margin-bottom:12px}
.ai-context-grid a{display:block;font-size:.875rem;color:#edf3e9;text-decoration:underline;text-underline-offset:5px;margin-top:14px}
.ai-source-date{font-size:.8125rem;color:#bed1b7}
@media(max-width:1100px){.ai-heading{gap:40px;grid-template-columns:1.5fr 1fr}.ai-topics{grid-template-columns:repeat(2,1fr);gap:35px 40px}.ai-engagement{gap:35px}.ai-engagement .button{gap:16px}.desktop-nav{gap:19px}}
@media(min-width:761px) and (max-width:980px){.header{flex-wrap:wrap;height:auto;min-height:120px;gap:10px;padding-block:17px 12px}.desktop-nav{order:3;width:100%;justify-content:center;gap:28px}.header-cta{margin-left:auto}.hero{min-height:760px}.ai-engagement{display:block}.ai-engagement .button{margin-top:24px}}
@media(max-width:760px){
  .firm-audience{display:none}.corporate-profile .firm-intro-label .eyebrow{margin-bottom:24px}.firm-detail summary{font-size:.875rem}.firm-detail p{font-size:1rem}.intro>div>p.firm-closing{font-size:1rem}
  .ai-practice{padding-block:67px}.ai-heading{display:block}.ai-heading h2{font-size:2.4375rem;letter-spacing:-1px}.ai-heading>p{margin-top:26px;max-width:none}.ai-lead{font-size:1rem;margin-top:25px}
  .ai-topics{grid-template-columns:1fr;gap:29px;margin-top:36px}.ai-topics h3{font-size:1.75rem;margin:17px 0 14px}.ai-topics h3 br{display:none}.ai-number{font-size:.75rem}
  .ai-engagement{display:block;margin-top:36px;padding-block:29px}.ai-engagement h3{font-size:1.625rem}.ai-engagement .button{margin-top:26px;gap:25px}.ai-context-grid{grid-template-columns:1fr;gap:28px}.ai-context summary{font-size:.9375rem}
}

/* Four core practices: understandable needs, scoped deliverables, direct intake. */
.hero-description{max-width:620px;font-size:1.2rem;line-height:1.7}
.hero h1{font-size:clamp(3.6rem,6vw,5.8rem);max-width:850px}
.hero-audience{max-width:510px;color:#d4dfcf;font-size:1rem;line-height:1.7;margin:-8px 0 28px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px 30px}
.hero-secondary{font-size:.9375rem;display:inline-flex;align-items:center;gap:16px;border-bottom:1px solid #a9bfa0;padding-block:10px}
.hero-bottom p{letter-spacing:1px;font-size:.7rem}
.hero-bottom a{white-space:nowrap}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.service-card{padding:32px 34px 29px;border:1px solid #c9d5c1;background:#f9fbf5;display:flex;flex-direction:column;min-width:0}
.service-card-top{display:flex;align-items:center;gap:18px;min-height:28px}
.service-index{font-family:var(--serif);font-size:1.1875rem;color:#6e866b}
.service-card .small-label{font-size:.75rem;letter-spacing:1.2px}
.service-card h3{font-family:var(--serif);font-size:clamp(1.8rem,2.7vw,2.5rem);line-height:1.2;letter-spacing:-.8px;margin:21px 0 18px}
.service-card>p{font-size:1rem;line-height:1.8;color:var(--body);max-width:480px}
.service-delivery{padding-top:22px;margin-top:auto}
.service-delivery>span{display:block;font-size:.6875rem;letter-spacing:1px;font-weight:600;color:#526849;margin-bottom:8px}
.service-delivery p{font-size:.9375rem;line-height:1.7;color:#435b45;max-width:475px}
.service-actions{border-top:1px solid #d6dfcf;padding-top:20px;margin-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px}
button.text-link{background:none;border:0;border-bottom:1px solid #97ac8e;color:inherit;font-family:inherit;padding:5px 0;text-align:left;line-height:1.6}
.service-detail-link{font-size:.8125rem;text-decoration:underline;text-underline-offset:5px;padding-block:9px;color:#52674e}
.service-scope{margin-top:25px;max-width:950px;font-size:.875rem;line-height:1.8;color:var(--body)}
.practice-depth{margin-top:75px;padding-top:34px;border-top:1px solid #c0cfb7}
.practice-depth .practice-aside{padding-top:16px}
.practice-depth .practice-title small{max-width:440px}
.complementary{padding-block:94px;border-bottom:1px solid var(--line)}
.complementary-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:start}
.complementary .practice summary{font-size:1.6875rem;min-height:110px}
.complementary .practice-content{padding-left:8px}
.complementary .practice-content .text-link{margin-top:20px}
.ai-support{background:var(--forest);color:var(--paper);padding:36px 36px 32px;scroll-margin-top:30px}
.ai-support .eyebrow{font-size:.6875rem;letter-spacing:1px}
.ai-support h3{font-family:var(--serif);font-size:2rem;line-height:1.2;letter-spacing:-.5px;margin:25px 0}
.ai-support h3 em{color:#bed1b1}
.ai-support p:not(.eyebrow){color:#d8e2d7;font-size:.9375rem;line-height:1.8}
.ai-support-output{margin:25px 0;border-top:1px solid #64816b;padding-top:22px}
.ai-support-output h4{font-size:.75rem;letter-spacing:.5px;font-weight:600;margin:0 0 9px}
.ai-support .text-link{color:var(--paper)}
.brochure-link{margin-top:27px}
.contact>div>p.brochure-caption{font-size:.8125rem;margin-top:8px;color:#647660}
.contact-pending{margin-top:24px}
.contact-panel .button{gap:20px}
.contact-channel-label{font-size:.75rem;color:var(--body);margin-bottom:6px}
#contact-email{max-width:none;justify-content:flex-start}
.contact-address:empty{display:none}
#enfoque{scroll-margin-top:35px}
@media(max-width:1100px){.service-card{padding:28px}.service-card h3{font-size:2rem}.service-actions{display:block}.service-detail-link{display:inline-block;margin-top:9px}.complementary-grid{gap:35px}.ai-support{padding:30px}.hero h1{font-size:4.6rem}}
@media(max-width:760px){
 .hero{min-height:720px}.hero h1{font-size:clamp(2.8rem,9.6vw,4.5rem);letter-spacing:-1.7px}.hero-content{padding-top:48px;padding-bottom:40px}.hero-description{font-size:1.0625rem;line-height:1.7;margin-top:26px;margin-bottom:20px}.hero-audience{font-size:.9375rem;margin:0 0 25px;max-width:400px}.hero-actions{gap:12px 22px}.hero-actions .button{gap:20px}.hero-secondary{font-size:.875rem}.hero-bottom{gap:18px}.hero-bottom p{font-size:.625rem;letter-spacing:.6px;max-width:270px}.hero-bottom a{font-size:.75rem}
 .service-grid{grid-template-columns:1fr;gap:20px}.service-card{padding:26px 24px}.service-card h3{font-size:2rem;margin-top:20px}.service-card .small-label{font-size:.6875rem;letter-spacing:.8px}.service-delivery{padding-top:21px}.service-actions{display:flex}.service-detail-link{margin-top:0}.service-card .text-link{font-size:.875rem;gap:12px}.service-scope{font-size:.8125rem}.practice-depth{margin-top:48px;padding-top:0;border:0}.practice-depth .practice-aside{padding:24px}.practice-depth .practice-title small{font-size:.8125rem}
 .complementary{padding-block:65px}.complementary-grid{grid-template-columns:1fr;gap:35px}.complementary .practice summary{font-size:1.5rem}.ai-support{padding:29px 25px}.ai-support h3{font-size:2rem}.contact-panel .button{font-size:.875rem;padding-inline:18px;gap:18px}.contact>div>p.brochure-caption{font-size:.8125rem}.contact .contact-panel .contact-note{font-size:.8125rem}.contact-panel{padding-bottom:25px}
}
@media(max-width:380px){.hero-bottom p{max-width:205px}.service-card{padding-inline:21px}.service-actions{display:block}.service-detail-link{margin-top:9px}.service-card h3{font-size:1.85rem}.hero-actions .button{padding-inline:18px;gap:16px}.contact-panel .button{gap:10px;font-size:.8125rem}}
