:root{--evergreen:#234b45;--deep-green:#153c36;--terracotta:#c97b5a;--ivory:#f6f0e6;--paper:#fbf8f2;--charcoal:#2a2926;--sand:#e4d9c7;--font-display:"Fraunces";--font-body:"Manrope"}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--charcoal);font-family:var(--font-body),sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.site-header{height:104px;padding:18px clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(35,75,69,.16);background:rgba(246,240,230,.94);position:relative;z-index:5}.brand{width:190px}.brand img{width:100%}nav{display:flex;align-items:center;gap:clamp(22px,3vw,46px);font-size:13px;font-weight:700;letter-spacing:.04em}nav a:not(.nav-cta){position:relative}nav a:not(.nav-cta)::after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:2px;background:var(--terracotta);transition:width .25s ease}nav a:hover::after{width:100%}.nav-cta{background:var(--evergreen);color:var(--ivory);padding:14px 22px;border-radius:999px}
.hero{min-height:calc(100vh - 104px);display:grid;grid-template-columns:1.02fr .98fr;overflow:hidden}.hero-copy{padding:clamp(72px,9vw,140px) clamp(36px,7vw,110px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{margin:0 0 26px;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:800;color:var(--evergreen)}.hero h1,h2{font-family:var(--font-display),serif;font-weight:430}.hero h1{margin:0;max-width:660px;font-size:clamp(70px,8vw,128px);letter-spacing:-.055em;line-height:.87;color:var(--deep-green)}.hero h1 em,.boutique h2 em{color:var(--terracotta);font-weight:320}.hero-subhead{max-width:625px;margin:38px 0 36px;font-size:clamp(16px,1.35vw,20px);line-height:1.75}.button{display:inline-flex;align-items:center;gap:32px;border:0;background:var(--evergreen);color:var(--ivory);padding:18px 24px;border-radius:2px;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:800;cursor:pointer;transition:transform .2s ease,background .2s ease}.button:hover{background:var(--terracotta);transform:translateY(-2px)}.button span{font-size:16px}.hero-visual{position:relative;min-height:640px;background:var(--sand)}.hero-image{position:absolute;inset:0;background:linear-gradient(150deg,rgba(35,75,69,.08),rgba(201,123,90,.08)),url('/assets/hero-conversation.png') center/cover no-repeat}
.section{padding:clamp(90px,10vw,150px) clamp(28px,7vw,110px)}.section-kicker{display:flex;align-items:center;gap:22px;color:var(--terracotta);text-transform:uppercase;letter-spacing:.2em;font-size:10px;font-weight:800;margin-bottom:58px}.section-kicker .line{width:70px;height:1px;background:currentColor}.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,9vw,150px);align-items:start}.intro h2,.boutique h2,.contact h2{margin:0;font-size:clamp(48px,5.5vw,84px);line-height:.98;letter-spacing:-.045em;color:var(--evergreen)}.intro-grid>p,.boutique-grid>div,.contact-heading>p{margin:4px 0 0;font-size:17px;line-height:1.85}.role-grid{margin-top:clamp(74px,8vw,118px);display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--sand)}.role-card{padding:40px 46px 12px 0;border-right:1px solid var(--sand)}.role-card+.role-card{padding-left:46px}.role-card:last-child{border-right:0}.role-number{font-size:10px;color:var(--terracotta);font-weight:800;letter-spacing:.15em}.role-card h3{font-family:var(--font-display),serif;color:var(--evergreen);font-size:34px;font-weight:450;margin:26px 0 14px}.role-card p{font-size:14px;line-height:1.75;margin:0}
.approach{background:var(--evergreen);color:var(--ivory);display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(60px,10vw,160px);align-items:center}.section-kicker.light{color:#df9b7f}.approach h2{margin:0 0 42px;font-size:clamp(48px,5vw,76px);line-height:1.05;letter-spacing:-.035em}.approach-copy>p{max-width:760px;font-size:15px;line-height:1.9;color:rgba(246,240,230,.86)}.promise-card{position:relative;padding:54px 46px;background:var(--ivory);color:var(--evergreen);transform:rotate(.35deg);box-shadow:18px 22px 0 rgba(11,45,40,.3)}.promise-label{text-transform:uppercase;letter-spacing:.18em;font-size:10px;font-weight:800;color:var(--terracotta)}.promise-card p{font-family:var(--font-body),sans-serif;font-size:clamp(25px,2.5vw,36px);font-weight:500;line-height:1.3;letter-spacing:-.025em;margin:28px 0 0}.promise-rule{width:44px;height:2px;background:var(--terracotta);margin:38px 0 0}
.boutique{background:var(--ivory)}.boutique-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,10vw,160px)}.boutique-grid p{margin:0 0 24px}.clinicians{padding-top:50px;padding-bottom:50px;background:var(--ivory)}.clinician-inner{max-width:1060px;margin:0 auto;padding:clamp(50px,6vw,82px);text-align:center;background:var(--sand);border-radius:56% 44% 51% 49%/13% 16% 12% 15%}.clinician-inner h2{margin:0 0 24px;color:var(--evergreen);font-size:clamp(38px,4vw,60px)}.clinician-inner>p:not(.eyebrow){max-width:720px;margin:0 auto 30px;line-height:1.8}.text-link{display:inline-flex;gap:16px;color:var(--evergreen);text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:800;border-bottom:2px solid var(--terracotta);padding-bottom:6px}
.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(60px,10vw,160px);background:var(--paper)}.contact-heading>p:last-child{max-width:520px}.contact-form{display:grid;gap:28px}.contact-form label{display:grid;gap:10px}.contact-form label span{text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:800;color:var(--evergreen)}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #9d978c;background:transparent;padding:10px 2px 14px;color:var(--charcoal);font:inherit;border-radius:0}.contact-form input:focus,.contact-form textarea:focus{outline:0;border-color:var(--terracotta)}.contact-form textarea{resize:vertical}.contact-form .button{justify-self:start}.contact-form .button:disabled{cursor:wait;opacity:.7}.contact-form .form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{min-height:24px}.form-status p{margin:0;font-size:13px;line-height:1.6}.form-success{color:var(--evergreen)}.form-error{color:#9b3f30}footer{padding:38px clamp(28px,7vw,110px);background:var(--deep-green);color:rgba(246,240,230,.7);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}footer img{width:130px;filter:brightness(0) invert(1);opacity:.82}footer p:last-child{text-align:right}
@media(max-width:900px){nav a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr}.hero-copy{min-height:620px}.hero-visual{min-height:520px}.intro-grid,.boutique-grid,.approach,.contact{grid-template-columns:1fr}.role-grid{grid-template-columns:1fr}.role-card,.role-card+.role-card{padding:28px 0;border-right:0;border-bottom:1px solid var(--sand)}.promise-card{max-width:500px}}
@media(max-width:560px){.site-header{height:86px;padding:14px 20px}.brand{width:150px}.nav-cta{padding:12px 15px;font-size:10px}.hero{min-height:auto}.hero-copy{padding:76px 24px 64px;min-height:570px}.hero h1{font-size:clamp(64px,20vw,88px)}.hero-subhead{margin-top:30px;font-size:15px;line-height:1.7}.hero-visual{min-height:420px}.section{padding:82px 24px}.section-kicker{margin-bottom:42px}.intro h2,.boutique h2,.contact h2{font-size:50px}.intro-grid{gap:34px}.clinicians{padding:20px 16px 70px}.clinician-inner{padding:54px 24px;border-radius:42px}footer{grid-template-columns:1fr;text-align:left}footer p{margin:0}footer p:last-child{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
