/* Mind Body Works Telehealth LLC — public site styles
   Brand tokens (client-mandated, do not change):
   Brand blue #003D8F · Navy #00205B · White #FFFFFF · Light grey #F4F6F9
   Dark slate #1A1A1A · Border grey #C2C9D6 */

*{box-sizing:border-box}
body{margin:0;background:#FFFFFF;color:#1A1A1A;font-family:'Public Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#003D8F;text-underline-offset:3px}
a:hover{color:#00205B}
img{max-width:100%}
main{min-height:60vh}
main p,main h1,main h2,main blockquote{margin:0}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:10;background:#FFFFFF;border-bottom:1px solid #C2C9D6}
.header-bar{max-width:1200px;margin:0 auto;padding:12px clamp(16px,3vw,32px);display:flex;align-items:center;gap:12px 28px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#00205B}
.brand:hover{color:#00205B}
.brand img{width:40px;height:40px;border-radius:50%;flex:0 0 40px}
.brand span{font-family:'Newsreader',serif;font-size:clamp(20px,2.2vw,26px);font-weight:500;line-height:1.2;white-space:nowrap}
.main-nav{order:3;flex:1 1 100%;display:flex;flex-wrap:wrap;gap:0 clamp(16px,2.4vw,32px);padding-top:6px;border-top:1px solid #F4F6F9;font-size:15px;font-weight:500}
.main-nav a,.main-nav a:hover{color:#1A1A1A;text-decoration:none;padding:8px 0;white-space:nowrap}
.header-actions{order:2;display:flex;gap:8px;flex-wrap:wrap;margin-left:auto;flex:0 0 auto}
@media (max-width:360px){.brand span{white-space:normal}}

/* ---------- Buttons ---------- */
.btn{display:inline-block;padding:10px 16px;border-radius:6px;text-decoration:none;font-size:14px;font-weight:600}
.btn-lg{padding:14px 22px;font-size:16px}
.btn-hero{padding:15px 24px;font-size:16px}
.btn-outline{border:1px solid #C2C9D6;color:#00205B}
.btn-outline:hover{border-color:#003D8F;color:#00205B}
.btn-primary{background:#003D8F;color:#FFFFFF}
.btn-primary:hover{background:#00205B;color:#FFFFFF}
.btn-light{background:#FFFFFF;color:#00205B}
.btn-light:hover{background:#F4F6F9;color:#00205B}
.btn-ghost{border:1px solid #C2C9D6;color:#FFFFFF}
.btn-ghost:hover{border-color:#FFFFFF;color:#FFFFFF}
.btn-row{display:flex;gap:12px;flex-wrap:wrap}

/* ---------- Shared type & layout ---------- */
.eyebrow{font-size:13px;letter-spacing:0.12em;text-transform:uppercase;font-weight:600;color:#003D8F}
.h1{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(34px,4.4vw,54px);line-height:1.08;color:#00205B;text-wrap:balance}
.h2{font-family:'Newsreader',serif;font-weight:400;font-size:24px;color:#00205B}
.serif{font-family:'Newsreader',serif}
.navy{color:#00205B}
.pretty{text-wrap:pretty}
.stack{display:flex;flex-direction:column}
.section{max-width:1200px;margin:0 auto;padding:clamp(56px,8vw,104px) clamp(16px,3vw,32px)}
.section-tight{padding-top:clamp(28px,4vw,48px)}
.rule{max-width:1200px;margin:0 auto;padding:0 clamp(16px,3vw,32px)}
.rule hr{margin:0;border:0;border-top:1px solid #C2C9D6}
section[id]{scroll-margin-top:190px}
.grid{display:grid}
.grid-250{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.grid-300{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.grid-320{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.grid-380{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr))}
.grid-420{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.panel{display:flex;flex-direction:column;gap:12px;padding:28px;background:#F4F6F9;border-radius:8px}
.panel-dark{background:#00205B;color:#FFFFFF}
.note{padding:18px 20px;background:#F4F6F9;border-radius:8px;font-size:15px;line-height:1.6}

/* Rule lists (Treatment, Telehealth) */
.rules{gap:0 40px;border-top:1px solid #C2C9D6}
.rules>div{display:flex;flex-direction:column;gap:10px;padding:28px 0;border-bottom:1px solid #C2C9D6}
.rules p{font-size:16px;line-height:1.7}

/* ---------- Home ---------- */
.hero{background:#00205B;color:#FFFFFF}
.hero-inner{max-width:1200px;margin:0 auto;padding:clamp(48px,7vw,96px) clamp(16px,3vw,32px) clamp(56px,9vw,120px);display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"kicker kicker" "title ." "main states";gap:26px clamp(40px,6vw,96px);align-items:start}
.hero h1{grid-area:title;margin:0}
.hero-main{grid-area:main;min-width:0;display:flex;flex-direction:column;gap:26px}
.hero-states{grid-area:states;margin-top:calc(-26px - 0.29 * clamp(40px,5.2vw,68px))}   /* "Licensed in" lines up with the bottom of "You" */
@media (max-width:760px){.hero-states{margin-top:0}}
.hero-kicker{grid-area:kicker;margin-bottom:clamp(8px,2vw,22px);text-align:center;font-size:14px;letter-spacing:0.14em;text-transform:uppercase;font-weight:500;color:#C2C9D6}
@media (max-width:760px){.hero-inner{grid-template-columns:minmax(0,1fr);grid-template-areas:"kicker" "title" "main" "states"}}
@media (max-width:760px){.hero-br{display:none}}
.hero h1{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(40px,5.2vw,68px);line-height:1.03;letter-spacing:-0.02em;text-wrap:balance}
.hero-lede{max-width:600px;font-size:clamp(17px,1.6vw,20px);line-height:1.55;color:#F4F6F9;text-wrap:pretty}
.hero .btn-row{margin-top:6px}
.hero-states{min-width:200px;align-self:start;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:4px;padding-left:24px;border-left:1px solid #C2C9D6}
.hero-states-label{font-size:13px;letter-spacing:0.12em;text-transform:uppercase;color:#C2C9D6;margin-bottom:8px}
.hero-state{font-family:'Newsreader',serif;font-size:clamp(26px,2.6vw,34px);line-height:1.3}
.hero-states-note{font-size:15px;line-height:1.5;color:#F4F6F9;margin-top:12px}

.mind{max-width:1200px;margin:0 auto;padding:clamp(48px,7vw,88px) clamp(16px,3vw,32px);display:flex;flex-direction:column;gap:22px}
.mind-lede{max-width:900px;font-family:'Newsreader',serif;font-size:clamp(22px,2.4vw,30px);line-height:1.4;color:#00205B;text-wrap:pretty}
.mind-dims{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:20px 32px}
.mind-dims li{display:flex;flex-direction:column;gap:6px;padding-top:14px;border-top:1px solid #C2C9D6;font-family:'Newsreader',serif;font-size:24px;color:#00205B}
.mind-dims span{font-family:'Public Sans',system-ui,sans-serif;font-size:13px;font-weight:600;letter-spacing:0.12em;color:#003D8F}

.band{background:#F4F6F9;border-bottom:1px solid #C2C9D6}
.band-inner{max-width:1200px;margin:0 auto;padding:clamp(48px,7vw,88px) clamp(16px,3vw,32px);gap:40px clamp(40px,6vw,96px)}
.hours-title{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(30px,3.6vw,44px);line-height:1.1;color:#00205B}
.hours-row{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 0;border-bottom:1px solid #C2C9D6}
.hours-state{font-family:'Newsreader',serif;font-size:22px;color:#00205B}
.hours-range{font-size:16px;font-variant-numeric:tabular-nums}

.cards{max-width:1200px;margin:0 auto;padding:clamp(48px,7vw,88px) clamp(16px,3vw,32px);gap:16px}
.card{display:flex;flex-direction:column;gap:10px;padding:24px;border:1px solid #C2C9D6;border-radius:8px;text-decoration:none;color:#1A1A1A}
.card:hover{border-color:#003D8F;color:#1A1A1A}
.card-title{font-family:'Newsreader',serif;font-size:24px;color:#00205B}
.card-more{font-size:14px;font-weight:600;color:#003D8F}

/* ---------- About Dr. Young ---------- */
.bio{display:flex;flex-wrap:wrap;gap:48px clamp(40px,6vw,88px);align-items:flex-start}
.bio-side{flex:0 1 340px;display:flex;flex-direction:column;gap:14px}
.bio-side img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 35%;border-radius:8px;background:#F4F6F9;display:block}
.bio-quote{margin-top:12px !important;padding:24px;background:#F4F6F9;border-radius:8px;font-family:'Newsreader',serif;font-size:21px;line-height:1.5;color:#00205B}
.bio-body{flex:1 1 520px;min-width:0;max-width:720px;display:flex;flex-direction:column;gap:20px;font-size:17px;line-height:1.75;text-wrap:pretty}

/* ---------- Becoming a Patient ---------- */
.steps{list-style:none;margin:0;padding:0}
.steps li{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid #C2C9D6;font-size:17px;line-height:1.5}
.steps .n{font-family:'Newsreader',serif;font-size:22px;line-height:1.2;color:#003D8F}

/* ---------- Treatment ---------- */
.methods{margin:0;padding-left:20px;columns:4 200px;column-gap:40px;font-size:17px;line-height:1.6}
.methods li{margin-bottom:8px;break-inside:avoid}

/* ---------- DME ---------- */
.pull{padding:clamp(28px,4vw,44px);border-radius:8px;background:#00205B;color:#FFFFFF;display:flex;flex-direction:column;gap:14px}
.pull p{max-width:880px;font-family:'Newsreader',serif;font-size:clamp(24px,2.8vw,34px);line-height:1.35;text-wrap:pretty}
.pull span{font-size:14px;color:#F4F6F9}
.prose{display:flex;flex-direction:column;gap:18px;font-size:17px;line-height:1.7;text-wrap:pretty}
.signoff{font-family:'Newsreader',serif;font-style:italic;font-size:19px}

/* ---------- Payment ---------- */
.list{margin:0;padding-left:20px;font-size:16px;line-height:1.6}
.list-tight li+li{margin-top:4px}
.list-loose li+li{margin-top:8px}
.auth{display:flex;flex-direction:column;gap:6px;padding-top:14px;border-top:1px solid #C2C9D6}
.auth p{font-size:16px;line-height:1.6}
.auth .quote{padding:14px 16px;background:#FFFFFF;border:1px solid #C2C9D6;border-radius:6px}

/* ---------- Legal pages ---------- */
.legal{max-width:780px;margin:0 auto;padding:clamp(56px,8vw,96px) clamp(16px,3vw,32px);display:flex;flex-direction:column;gap:18px;font-size:16px;line-height:1.75;text-wrap:pretty}
.legal h1{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(34px,4.4vw,52px);line-height:1.1;color:#00205B}
.legal h2{margin:20px 0 0;font-family:'Newsreader',serif;font-weight:500;font-size:24px;color:#00205B}
.legal .effective{font-size:14px}
.legal ul{margin:0;padding-left:22px}
.legal ul li+li{margin-top:6px}
.legal strong{font-weight:600}
.optin{display:flex;gap:14px;align-items:flex-start;padding:20px;border:1px solid #C2C9D6;border-radius:8px;background:#FFFFFF}
.optin-box{flex:0 0 20px;width:20px;height:20px;margin-top:4px;border:2px solid #003D8F;border-radius:4px}
.optin-text{font-size:15px;line-height:1.65}
.sample{padding:14px 18px;background:#F4F6F9;border-radius:8px;font-size:15px}

/* ---------- Search ---------- */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.site-search{margin-left:auto;display:flex;align-items:center;flex:0 1 260px;min-width:200px;padding:4px 0}
.site-search input,.page-search input{flex:1 1 auto;min-width:0;font:inherit;font-size:14px;font-weight:400;color:#1A1A1A;padding:8px 12px;border:1px solid #C2C9D6;border-right:0;border-radius:6px 0 0 6px;background:#FFFFFF}
.site-search input:focus,.page-search input:focus{outline:2px solid #003D8F;outline-offset:-1px}
.site-search button,.page-search button{display:flex;align-items:center;justify-content:center;padding:0 12px;align-self:stretch;border:1px solid #003D8F;border-radius:0 6px 6px 0;background:#003D8F;color:#FFFFFF;cursor:pointer}
.site-search button:hover,.page-search button:hover{background:#00205B;border-color:#00205B}
.site-search svg,.page-search svg{width:16px;height:16px}
@media (max-width:640px){.site-search{flex:1 1 100%;margin-left:0}}
.page-search{display:flex;max-width:560px}
.page-search input{font-size:16px;padding:12px 14px}
.search-status{font-size:16px;line-height:1.6}
.search-results{list-style:none;margin:0;padding:0;max-width:820px}
.search-results li{padding:20px 0;border-bottom:1px solid #C2C9D6}
.search-results li:first-child{border-top:1px solid #C2C9D6}
.search-results a{font-family:'Newsreader',serif;font-size:24px}
.search-results p{margin-top:6px;font-size:16px;line-height:1.65}
.search-results mark{background:#F4F6F9;color:#00205B;font-weight:600;padding:0 2px;border-radius:3px}

/* ---------- Molecules & Energy (mitochondria animation) ---------- */
.mind-more{font-size:16px;font-weight:600}
.mito-steps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.mito-steps button{font:inherit;font-size:14px;font-weight:600;padding:8px 14px;border:1px solid #C2C9D6;border-radius:6px;background:#FFFFFF;color:#00205B;cursor:pointer}
.mito-steps button:hover{border-color:#003D8F}
.mito-steps button[aria-current="step"]{background:#003D8F;border-color:#003D8F;color:#FFFFFF}
.mito-figure{margin:0;padding:clamp(12px,2vw,20px);border:1px solid #C2C9D6;border-radius:8px;background:#FFFFFF;display:flex;flex-direction:column;gap:18px}
.mito-figure svg#mito{width:100%;height:auto;display:block;background:#FFFFFF}
.mito-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.mito-controls .btn{cursor:pointer;font-family:inherit}
.mito-step{font-size:14px;font-weight:600;color:#003D8F;margin-right:auto}
.mito-caption{padding:18px 20px;background:#F4F6F9;border-radius:8px}
.mito-caption h2{font-family:'Newsreader',serif;font-weight:400;font-size:26px;color:#00205B;margin:0 0 6px}
.mito-caption p{font-size:17px;line-height:1.7;max-width:820px}
.mito-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 24px;font-size:14px}
.mito-legend li{display:flex;align-items:center;gap:8px}
.mito-legend svg{height:18px;width:auto}

/* ---------- Footer ---------- */
.site-footer{background:#00205B;color:#FFFFFF}
.footer-inner{max-width:1200px;margin:0 auto;padding:40px clamp(16px,3vw,32px);display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:14px;line-height:1.6}
.footer-id{display:flex;flex-direction:column;gap:6px}
.footer-id span{color:#F4F6F9}
.footer-id .footer-name{font-family:'Newsreader',serif;font-size:20px;color:#FFFFFF}
.footer-nav{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:flex-start}
.footer-nav a{color:#FFFFFF}
.footer-nav a:hover{color:#F4F6F9}
