:root{
  --forest:#123c32;--forest-deep:#0b2d24;--gold:#b38d3e;--charcoal:#1a1a1a;--stone:#b8aa98;
  --paper:#fff;--cream:#f8f7f3;--cream-2:#f1efe8;--border:#e3e1d8;--text-soft:#5f645f;
  --font-body:'Montserrat',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-display:'Cormorant Garamond',Georgia,serif;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--charcoal);font-family:var(--font-body);font-size:15px;line-height:1.8;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%}
a{color:inherit}
button,input,textarea{font:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.skip-link{position:fixed;z-index:99;top:-100px;left:20px;background:var(--forest);color:#fff;padding:10px 17px;border-radius:4px}
.skip-link:focus{top:12px}
.container{max-width:calc(var(--max) + 64px);padding:0 32px;margin-inline:auto}
.section{padding:112px 0}
.site-header{position:relative;z-index:10;background:var(--paper);border-bottom:1px solid rgba(18,60,50,.09)}
.header-inner{min-height:168px;display:flex;align-items:center;justify-content:space-between;gap:36px}
.logo-link{flex:0 0 auto;display:block;line-height:0}
.logo-link img{width:260px;height:auto;display:block}
.primary-nav{display:flex;align-items:center;gap:34px}
.primary-nav a{font-size:12px;font-weight:600;line-height:1.4;text-decoration:none;letter-spacing:.035em;transition:color .2s ease}
.primary-nav a:hover,.primary-nav a[aria-current="page"]{color:var(--gold)}
.primary-nav a.nav-contact{border:1px solid var(--forest);padding:13px 20px;color:var(--forest);transition:background .2s,color .2s}
.primary-nav a.nav-contact:hover,.primary-nav a.nav-contact[aria-current="page"]{background:var(--forest);color:white}
.menu-toggle{display:none;background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--forest);padding:10px 13px;font-size:13px;font-weight:600;align-items:center;gap:9px}
.menu-toggle-bars,.menu-toggle-bars:before,.menu-toggle-bars:after{display:block;position:relative;width:17px;height:2px;background:currentColor;content:''}
.menu-toggle-bars:before{position:absolute;top:-6px}.menu-toggle-bars:after{position:absolute;top:6px}
.eyebrow,.section-label{display:block;margin:0 0 21px;color:var(--forest);font-size:11px;line-height:1.7;font-weight:600;letter-spacing:.19em;text-transform:uppercase}
h1,h2,h3,.display-serif{font-family:var(--font-display);font-weight:500;line-height:1.06;letter-spacing:-.015em;margin:0}
h1{font-size:clamp(55px,5.8vw,88px)}h2{font-size:clamp(42px,4.55vw,67px)}h3{font-size:36px}
p{margin:0 0 19px}
.lead{font-size:15px;line-height:1.95;color:#414b46}
.button{display:inline-flex;gap:20px;align-items:center;justify-content:space-between;min-height:54px;padding:14px 24px;background:var(--forest);border:1px solid var(--forest);color:white!important;text-decoration:none;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.115em;line-height:1.25;transition:transform .2s ease,background .2s ease,border-color .2s ease;box-shadow:none}
.button:hover{background:#245849;border-color:#245849;transform:translateY(-2px)}
.button:disabled{opacity:.65;cursor:wait;transform:none}
.button .arrow,.text-link .arrow{font-size:16px;font-weight:400;line-height:1}
.button-light{background:#fff;border-color:#fff;color:var(--forest)!important}
.button-light:hover{background:var(--cream);border-color:var(--cream)}
.button-outline{background:transparent;color:var(--forest)!important}
.button-outline:hover{background:var(--forest);color:#fff!important}
.text-link{display:inline-flex;gap:12px;align-items:center;text-decoration:none;font-size:11px;letter-spacing:.1em;font-weight:700;text-transform:uppercase;color:var(--forest);padding-bottom:9px;border-bottom:1px solid var(--gold)}
.text-link:hover{color:var(--gold)}
.hero{background:linear-gradient(180deg,#ffffff 0%,#f8f8f5 100%);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.86fr);min-height:630px;align-items:stretch;gap:6.2%}
.hero-copy{padding:99px 0 108px;display:flex;justify-content:center;flex-direction:column;max-width:665px;position:relative;z-index:1}
.hero-copy h1{max-width:735px;margin:0 0 24px}
.hero-copy .lead{max-width:575px;margin-bottom:34px}
.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.hero-art{position:relative;min-height:625px;overflow:hidden;background:var(--forest);align-self:stretch}
.hero-art img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0}
.hero-art .frame-note{position:absolute;top:35px;left:36px;display:flex;gap:13px;align-items:center;color:#e3d6b8;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.hero-art .frame-note:before{content:'';height:1px;width:33px;background:var(--gold)}
.hero-art .art-caption{position:absolute;bottom:38px;left:42px;right:40px;display:flex;align-items:end;justify-content:space-between;color:#fff;gap:22px}
.hero-art .art-caption strong{display:block;font-family:var(--font-display);font-size:37px;line-height:1;font-weight:400}
.hero-art .art-caption small{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin-top:12px;color:#d3cdbb}
.hero-art .art-caption .num{font-size:12px;color:#c9ab72;letter-spacing:.15em}
.small-intro{color:var(--gold);font-size:11px;letter-spacing:.11em;text-transform:uppercase;margin:0}
.section-heading{max-width:700px;margin-bottom:50px}
.section-heading h2{margin-bottom:19px}
.intro-section{background:#fff}
.intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:12%;align-items:start}
.intro-grid h2{max-width:430px}
.intro-copy{padding-top:8px;color:#46534c;font-size:15px;line-height:2}
.intro-copy p:last-child{margin-bottom:0}
.intro-divider{display:block;width:56px;height:2px;background:var(--gold);margin:30px 0 0}
.quote-strip{margin-top:60px;display:flex;align-items:center;gap:24px;border-top:1px solid var(--border);padding-top:34px}
.quote-strip .star{color:var(--gold);font-family:var(--font-display);font-size:50px;line-height:.8}
.quote-strip p{font-family:var(--font-display);font-size:clamp(24px,2.8vw,34px);line-height:1.28;margin:0;font-weight:500;color:var(--forest)}
.benefits-section{background:var(--cream)}
.benefits-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}
.benefits-head h2{max-width:680px}
.benefits-head .small-caption{max-width:250px;font-size:12px;color:#64716b;line-height:1.8;border-left:1px solid var(--gold);padding-left:20px;margin-bottom:7px}
.benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.benefit-card{padding:38px 33px 38px;min-height:320px;background:#fff;border:1px solid #ebe9e2;position:relative;display:flex;flex-direction:column}
.benefit-card .card-num{font-family:var(--font-display);font-size:29px;color:var(--gold);line-height:1;margin:0 0 45px}
.benefit-card h3{font-size:31px;margin:0 0 19px;line-height:1.12}
.benefit-card p{color:#56635c;line-height:1.88;font-size:13px;margin:0}
.benefit-card:after{content:'';position:absolute;left:33px;right:33px;bottom:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.benefit-card:hover:after{transform:scaleX(1)}
.physician-section{background:white}
.physician-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}
.physician-feature{background:#f5f3ed;position:relative;padding:68px 55px;min-height:410px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.physician-feature:before{content:'';position:absolute;width:310px;height:310px;border:1px solid rgba(179,141,62,.3);border-radius:50%;right:-120px;top:-100px}
.physician-feature:after{content:'';position:absolute;width:370px;height:370px;border:1px solid rgba(179,141,62,.24);border-radius:50%;right:-112px;top:-115px}
.physician-feature .overline{font-weight:700;letter-spacing:.16em;font-size:11px;color:var(--forest);text-transform:uppercase;margin-bottom:24px}
.physician-feature .credential-head{font-family:var(--font-display);font-size:54px;line-height:1.04;color:var(--forest);font-weight:500;position:relative;z-index:1}
.physician-feature .rule{height:1px;width:70px;background:var(--gold);margin:28px 0}
.physician-feature .credentials{font-size:12px;max-width:260px;line-height:1.8;color:#58665c}
.physician-copy{padding:30px 0}
.physician-copy h2{margin-bottom:23px}
.physician-copy .lead{margin-bottom:30px}
.callout{padding:80px 0;background:var(--forest);color:white;overflow:hidden;position:relative}
.callout:before{content:'';position:absolute;width:650px;height:650px;border:1px solid rgba(204,182,126,.19);border-radius:50%;right:-280px;top:-400px}
.callout:after{content:'';position:absolute;width:850px;height:850px;border:1px solid rgba(204,182,126,.12);border-radius:50%;right:-390px;top:-500px}
.callout-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center}
.callout .eyebrow{color:#d9b776}
.callout h2{max-width:800px;font-size:clamp(44px,4.5vw,64px);margin-bottom:22px}
.callout p:not(.eyebrow){max-width:740px;color:#e1e6de;line-height:1.9;font-size:14px;margin-bottom:12px}
.callout p:last-child{margin-bottom:0}
.site-footer{background:#f8f7f3;border-top:1px solid var(--border);padding:47px 0 26px}
.footer-main{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center;padding-bottom:40px}
.footer-logo{width:260px;height:auto;display:block}
.footer-links{display:flex;gap:26px;justify-content:flex-end;flex-wrap:wrap}
.footer-links a{font-size:11px;font-weight:600;text-decoration:none;color:var(--forest)}
.footer-links a:hover{color:var(--gold)}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--border);padding-top:19px;color:#6f756d;font-size:10px;line-height:1.6;letter-spacing:.02em}
.footer-bottom a{text-decoration:none}
.page-hero{background:linear-gradient(110deg,#f8f7f3,#f3f1e9);padding:93px 0 94px;border-bottom:1px solid var(--border);position:relative;overflow:hidden}
.page-hero:after{content:'';position:absolute;width:500px;height:500px;border:1px solid rgba(179,141,62,.2);border-radius:50%;right:-110px;top:-220px}
.page-hero-inner{position:relative;z-index:1;max-width:860px}
.page-hero h1{max-width:800px;margin-bottom:22px}
.page-hero .lead{max-width:740px;margin:0}
.page-hero .eyebrow{margin-bottom:19px}
.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:11%;align-items:start}
.two-col .prose{padding-top:10px;color:#4c574f}
.prose p{line-height:2;margin-bottom:22px}
.prose p:last-child{margin-bottom:0}
.prose h3{margin:24px 0 13px;color:var(--forest)}
.small-divider{height:1px;background:var(--border);margin:32px 0}
.detail-band{background:#f6f4ee;padding:76px 0}
.detail-band .inner{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}
.detail-band h2{margin-bottom:20px}
.detail-band p{color:#526157}
.detail-emphasis{font-family:var(--font-display);font-size:clamp(37px,4vw,59px);color:var(--forest);line-height:1.13;max-width:500px}
.bio-facts{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.bio-facts span{display:inline-block;border:1px solid #d9d5c8;color:var(--forest);padding:10px 16px;font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}
.contact-wrap{display:grid;grid-template-columns:.88fr 1.12fr;gap:10%;align-items:start}
.contact-aside h2{margin-bottom:24px}
.contact-aside p{line-height:1.95;color:#4d5a52}
.contact-info{margin-top:36px;padding-top:28px;border-top:1px solid var(--border)}
.contact-info .eyebrow{margin-bottom:9px}
.contact-info strong{font-size:13px;color:var(--forest)}
.notice{margin-top:32px;border-left:3px solid var(--gold);background:var(--cream);padding:20px 22px;color:#4b564e;font-size:12px;line-height:1.8}
.notice strong{display:block;color:var(--forest);font-size:12px;margin-bottom:3px}
.form-card{padding:42px 42px 38px;background:#fff;border:1px solid var(--border);box-shadow:0 17px 50px rgba(20,45,34,.055)}
.form-card h3{font-size:37px;color:var(--forest);margin:0 0 8px}
.form-card .form-intro{color:#67716b;font-size:12px;line-height:1.8;margin-bottom:30px}
.field-group{margin-bottom:21px}
.field-group label{display:block;font-size:12px;line-height:1.5;font-weight:600;color:#253e34;margin-bottom:9px}
.field-group input,.field-group textarea{width:100%;display:block;border:1px solid #cdd7cf;border-radius:2px;background:#fff;color:var(--charcoal);padding:13px 14px;font-size:14px;line-height:1.65;transition:border-color .2s,box-shadow .2s}
.field-group input:focus,.field-group textarea:focus{border-color:var(--forest);box-shadow:0 0 0 3px rgba(18,60,50,.1);outline:none}
.field-group textarea{min-height:148px;resize:vertical}
.label-hint{font-weight:400;color:#7a807c}
.honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.cf-turnstile{margin:0 0 23px;min-height:65px}
.submit-button{width:100%;justify-content:center}
.form-status{min-height:28px;margin:14px 0 0;font-size:12px;line-height:1.7;color:var(--forest);font-weight:600;overflow-wrap:anywhere}
.form-status[data-state="error"]{color:#9b2b2b}
.fine-print{font-size:11px;color:#717970;line-height:1.75;margin:18px 0 0}
.fine-print a{color:var(--forest)}
.waitlist-note{font-size:11px;color:#576a5e;margin:4px 0 21px;padding:11px 14px;background:#f3f5ef;border-left:2px solid var(--gold)}
@media(max-width:1030px){
 .primary-nav{gap:20px}.hero-grid{grid-template-columns:1.05fr .95fr;gap:4%}.hero-copy h1{font-size:68px}
 .benefit-card{padding:32px 25px}.benefit-card h3{font-size:29px}
}
@media(max-width:790px){
 .container{padding:0 24px}
 .header-inner{min-height:124px;gap:16px}
 .logo-link img{width:260px}
 .menu-toggle{display:flex}
 .primary-nav{display:none;position:absolute;left:0;right:0;top:100%;padding:17px 24px 25px;background:#fff;box-shadow:0 15px 25px rgba(20,45,34,.1);border-top:1px solid var(--border);gap:0;flex-direction:column;align-items:stretch}
 .primary-nav.is-open{display:flex}
 .primary-nav a{padding:12px 8px;font-size:13px}
 .primary-nav a.nav-contact{margin-top:11px;text-align:center}
 .hero-grid{grid-template-columns:1fr;gap:0}
 .hero-copy{max-width:none;padding:70px 0 75px}
 .hero-copy h1{max-width:750px;font-size:clamp(56px,9vw,78px)}
 .hero-art{min-height:430px;margin:0 -24px}
 .intro-grid,.physician-grid,.two-col,.detail-band .inner,.contact-wrap{grid-template-columns:1fr;gap:38px}
 .benefits-grid{grid-template-columns:1fr;gap:14px}
 .benefit-card{min-height:220px}.benefit-card .card-num{margin-bottom:23px}
 .benefits-head{display:block}.benefits-head .small-caption{margin-top:23px;max-width:650px}
 .callout-inner{grid-template-columns:1fr;gap:32px}
 .footer-main{grid-template-columns:1fr}.footer-links{justify-content:flex-start}
 .section{padding:82px 0}.page-hero{padding:75px 0}.physician-feature{min-height:300px}
}
@media(max-width:480px){
 body{font-size:14px}
 .container{padding:0 19px}
 .header-inner{min-height:108px}
 .logo-link img{width:220px}
 .menu-toggle{padding:9px 11px}
 .hero-copy{padding:63px 0}
 .hero-copy h1{font-size:55px}
 h2{font-size:45px}
 .hero-actions{align-items:flex-start;flex-direction:column;gap:20px}
 .hero-art{min-height:355px;margin:0 -19px}
 .hero-art .art-caption{left:24px;bottom:25px}.hero-art .frame-note{left:24px;top:22px}
 .hero-art .art-caption strong{font-size:31px}
 .section{padding:68px 0}
 .quote-strip{margin-top:42px}
 .physician-feature{padding:48px 32px}
 .physician-feature .credential-head{font-size:45px}
 .form-card{padding:28px 21px}
 .footer-bottom{flex-direction:column;gap:7px}
 .page-hero h1{font-size:54px}
 .page-hero{padding:65px 0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

@media(max-width:360px){.logo-link img{width:174px}.container{padding-left:15px;padding-right:15px}}
