/* EXION design for Square Mile Clinic (Ravi, 1 Oct 2026): his app/globals.css ported without Tailwind */
/* 1 and 2 sit in cascade layers, as Tailwind 4 put them: his unlayered rules (3) win over them, whatever the order */
@layer base,components;
/* 1. base: the part of Tailwind's preflight his rules were written against */
@layer base{
*,::before,::after,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}
html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent;font-family:Gotham,Arial,sans-serif}
hr{height:0;color:inherit;border-top-width:1px}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
b,strong{font-weight:bolder}
small{font-size:80%}
ol,ul,menu{list-style:none}
img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}
img,video{max-width:100%;height:auto}
button,input,select,optgroup,textarea{font:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:transparent;border-radius:0}
::placeholder{opacity:1}
@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}
button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}
[hidden]:where(:not([hidden=until-found])){display:none!important}
}
/* 2. what his shadcn Tabs and Accordion drew (his rules override them, as they did the utilities) */
@layer components{
[data-tabs]{display:flex;flex-direction:column;gap:8px}
[role=tablist]{display:inline-flex;width:fit-content;height:36px;align-items:center;justify-content:center;padding:3px;border-radius:8px;background:var(--muted);color:var(--muted-foreground)}
[role=tab]{position:relative;display:inline-flex;flex:1 1 0%;height:calc(100% - 1px);align-items:center;justify-content:center;gap:6px;padding:4px 8px;border:1px solid transparent;border-radius:6px;font-size:14px;line-height:calc(1.25/.875);font-weight:500;white-space:nowrap;color:var(--foreground);transition:all .15s cubic-bezier(.4,0,.2,1)}
@supports (color:color-mix(in lab,red,red)){[role=tab]{color:color-mix(in oklab,var(--foreground) 60%,transparent)}}
[role=tab]:hover{color:var(--foreground)}
[role=tab][data-state=active]{background:var(--background);color:var(--foreground);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a}
[role=tab]:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px #089bd980;outline:1px solid var(--ring)}
[role=tabpanel]{flex:1;outline:none}
/* his build's dark-scheme variants of the trigger */
@media(prefers-color-scheme:dark){
  [role=tab]{color:var(--muted-foreground)}
  [role=tab]:hover{color:var(--foreground)}
  [role=tab][data-state=active]{border-color:var(--input);background:color-mix(in oklab,var(--input) 30%,transparent);color:var(--foreground)}
}
.faq-list details{border-bottom:1px solid}
.faq-list details:last-child{border-bottom:0}
.faq-list summary{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 0;border-radius:6px;font-size:14px;line-height:calc(1.25/.875);font-weight:500;text-align:left;cursor:pointer;list-style:none;outline:none;transition:all .15s cubic-bezier(.4,0,.2,1)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:hover h3{text-decoration:underline}
.faq-list summary:focus-visible{box-shadow:0 0 0 3px #089bd980}
.faq-list summary svg{flex-shrink:0;color:var(--muted-foreground);transform:translateY(2px);transition:transform .2s;pointer-events:none}
.faq-list details[open] summary svg{transform:translateY(2px) rotate(180deg)}
.faq-answer{overflow:hidden;padding-bottom:16px;font-size:14px;line-height:calc(1.25/.875)}
}
/* 3. his rules, in his order */
@font-face{font-family:Gotham;src:url(/wp-content/fonts/GothamBook.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:GothamRounded;src:url(/wp-content/fonts/GothamRounded-Medium.woff2) format('woff2');font-weight:500;font-display:swap}
:root{--background:#fff;--foreground:#05112a;--card:#fff;--card-foreground:#05112a;--popover:#fff;--popover-foreground:#05112a;--primary:#087daa;--primary-foreground:#fff;--secondary:#eaf9ff;--secondary-foreground:#05112a;--muted:#eff5f8;--muted-foreground:#526175;--accent:#eaf9ff;--accent-foreground:#056f9d;--border:#d4e1e9;--input:#b7c9d5;--ring:#089bd9;--radius:.5rem;--blue:#089bd9;--pink:#c92c83;--ink:#05112a}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px}
body{margin:0;font:16px/1.8 Gotham,Arial,sans-serif;background:#fff;color:var(--ink)}
button,input{font:inherit}
button,a{touch-action:manipulation}
button{cursor:pointer}
button:disabled{opacity:.6;cursor:wait}
a{color:inherit;text-decoration:none}
button,a,input{outline-offset:5px}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--blue)}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:GothamRounded,Gotham,Arial,sans-serif;font-weight:500;line-height:1.15;letter-spacing:-.045em}
h2{font-size:clamp(35px,4.1vw,60px)}
h3{font-size:28px}
em{font-style:normal;color:var(--primary)}
.skip{position:fixed;top:-100px;left:20px;z-index:99;padding:10px 20px;background:white}
.skip:focus{top:10px}
.announcement{padding:9px 5%;background:var(--ink);color:#cee5f4;display:flex;justify-content:space-between;gap:15px;font-size:12px;letter-spacing:.05em}
.header{display:flex;align-items:center;justify-content:space-between;padding:20px 5%;gap:24px;min-height:103px}
.brand{display:flex;align-items:center;gap:19px}
.brand img{width:157px;height:auto}
.brand span{font-size:13px;letter-spacing:.22em;border-left:1px solid #cbdbe6;padding-left:19px}
.nav{display:flex;gap:25px;font-size:14px}
.nav a:hover{color:var(--primary)}
.button,.primary{display:inline-flex;align-items:center;justify-content:center;min-height:49px;border:1px solid var(--primary);border-radius:4px;padding:12px 22px;background:var(--primary);color:white;font-size:14px;transition:background .2s,transform .2s}
.button:hover,.primary:hover{background:#066a94;transform:translateY(-2px)}
.button.light{background:white;color:var(--ink);border-color:white}
.text-link{color:var(--primary);font-size:14px;border-bottom:1px solid #9ab8c8;padding-bottom:4px}
.menu-button{display:none}
.top-consultation{padding:0 5% 23px}
.consultation-box{padding:13px 20px 10px;border:1.5px solid transparent;border-radius:7px;background:linear-gradient(#eef9fe,#eef9fe) padding-box,linear-gradient(110deg,#089bd9,#b4d7ed,#c92c83,#089bd9) border-box;background-size:100% 100%,300% 100%;animation:borderFlow 9s ease infinite}
.quick-form{display:grid;grid-template-columns:1.1fr 1fr 1.35fr 1.15fr auto;align-items:center;gap:0 13px}
.quick-heading h2{font-size:19px}
.quick-heading p{font-size:12px;color:#526175;margin-top:4px}
.quick-field label{display:block;font-size:14px;margin-bottom:3px}
.quick-field input{width:100%;min-width:0;height:40px;padding:8px 10px;font-size:14px;background:white;border:1px solid #bacfdb;border-radius:4px}
.quick-submit{align-self:end;min-height:40px;padding:8px 15px}
.quick-notice{grid-column:2/-1;font-size:12px;color:#526175;margin-top:6px;line-height:1.6}
.quick-notice a{text-decoration:underline}
.eyebrow{display:block;font-size:12px;letter-spacing:.15em;color:var(--primary);margin-bottom:22px}
.hero{display:grid;grid-template-columns:1fr 1.05fr;background:var(--ink);color:white;min-height:630px;overflow:hidden}
.hero-copy{padding:65px 8% 50px 10%;position:relative;background:radial-gradient(ellipse at 0 100%,#133468 0,transparent 68%)}
.hero .eyebrow{color:#8bd3f0}
.hero h1{font-size:clamp(53px,5.65vw,82px);line-height:1.04;letter-spacing:-.055em}
.hero h1 em{background:linear-gradient(110deg,#5bc5f4,#e288be);background-clip:text;color:transparent}
.hero-copy>p{max-width:480px;color:#baccdf;font-size:17px;margin:26px 0 31px;line-height:1.85}
.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.hero .text-link{color:#d3e6f5;border-color:#66859e}
.hero-signature{display:flex;align-items:center;gap:14px;margin-top:34px;color:#91b5cc;font-size:13px}
.hero-signature svg{color:#5dbfea}
.hero-photo{position:relative;min-width:0;overflow:hidden}
.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center;transition:transform 1.5s}
.hero-photo:hover>img{transform:scale(1.035)}
.hero-photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#05112aaa);pointer-events:none}
.photo-caption{position:absolute;z-index:1;bottom:34px;left:35px;color:#fff}
.photo-caption>span{display:block;font-size:12px;letter-spacing:.15em}
.photo-caption>strong{display:block;font:500 30px/1.15 GothamRounded,Arial,sans-serif;margin-top:12px}
.photo-caption small{font-size:12px;color:#d9e8f5;display:block;margin-top:14px}
.facts{display:grid;grid-template-columns:repeat(3,1fr);padding:29px 5%;gap:24px;background:#eaf9ff}
.facts>div{display:flex;justify-content:center;align-items:center;gap:16px}
.facts>div+div{border-left:1px solid #c2dce9}
.facts svg{color:var(--primary);flex-shrink:0}
.facts strong{display:block;font-size:16px;font-weight:500}
.facts span{font-size:13px;color:#536879}
.section{padding:88px 6%}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:42px}
.section-heading>p{max-width:390px;color:#596b7c}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.benefit-grid>a{padding:30px;border-top:2px solid var(--blue);background:#f4f9fc;display:flex;flex-direction:column;transition:transform .2s}
.benefit-grid>a:nth-child(2){border-color:var(--pink)}
.benefit-grid>a:nth-child(3){border-color:#05112a}
.benefit-grid>a:hover{transform:translateY(-5px)}
.benefit-grid svg{color:var(--primary);margin-bottom:20px}
.benefit-grid>a:nth-child(2) svg{color:var(--pink)}
.benefit-grid h3{margin:8px 0 19px}
.benefit-grid p{color:#596b7c;font-size:16px}
.card-link{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #d6e3ec;font-size:14px;margin-top:28px;padding-top:18px}
.card-link svg{margin:0}
.section-note{font-size:12px;line-height:1.8;color:#67798a;margin-top:25px}
.technology{padding-top:0}
.treatment-tabs{gap:0!important}
.treatment-nav{display:grid!important;grid-template-columns:repeat(3,1fr);width:100%;height:auto!important;padding:0!important;background:#fff!important;border:1px solid #cfdce5;border-radius:6px 6px 0 0!important;gap:0}
.treatment-nav>button{font:500 17px GothamRounded,Arial,sans-serif!important;white-space:normal;min-height:72px;border-radius:0!important;color:#4e6779!important;box-shadow:none!important;padding:17px 10px!important}
.treatment-nav>button+button{border-left:1px solid #cfdce5}
.treatment-nav>button[data-state=active]{background:var(--ink)!important;color:white!important}
.treatment-panel{display:grid;grid-template-columns:1fr 1fr;background:#f1f7fb;min-height:510px;animation:appear .35s}
.treatment-photo{min-height:480px;position:relative;overflow:hidden}
.treatment-photo img{position:absolute;width:100%;height:100%;object-fit:cover}
.treatment-copy{padding:47px 10%}
.treatment-copy h3{font-size:37px}
.treatment-copy>p{margin-top:22px;color:#51687b}
ul.checks{padding:0;margin:25px 0;list-style:none;display:flex;flex-direction:column;gap:11px}
ul.checks li{display:flex;gap:10px;align-items:flex-start;font-size:14px}
ul.checks svg{color:var(--primary);flex-shrink:0;margin-top:3px}
.treatment-copy .recovery{font-size:13px;border-top:1px solid #cedce6;padding-top:20px;margin:0 0 26px}
.areas{background:var(--ink);color:white;overflow:hidden}
.areas .eyebrow{color:#84cced}
.areas h2 em{color:#70c8ed}
.areas .section-heading>p{color:#a7bed2}
.area-switch{display:inline-flex!important;height:auto!important;padding:5px!important;background:#112842!important;border:1px solid #294057;margin-bottom:28px;border-radius:6px!important}
.area-switch>button{padding:11px 28px!important;font-size:15px!important;color:#aac8dc!important;border-radius:4px!important}
.area-switch>button[data-state=active]{background:#eaf9ff!important;color:#05112a!important}
.area-explorer{display:grid;grid-template-columns:.8fr 1.1fr 1fr;gap:38px;align-items:center}
.area-buttons{display:flex;flex-direction:column;gap:9px}
.area-buttons>button{display:flex;align-items:center;gap:12px;padding:17px 16px;color:#b8cfe0;text-align:left;background:#0e203a;border:1px solid #263b52;border-radius:4px;transition:all .2s}
.area-buttons>button>span{font-size:12px;color:#7194ac}
.area-buttons>button>strong{font-size:15px;font-weight:400;flex:1}
.area-buttons>button.active{border-color:#50b2df;background:#163451;color:white}
.area-buttons>button.active>span{color:#e98fc2}
.area-buttons>button:hover{border-color:#50b2df}
.area-visual{position:relative;display:flex;align-items:center;justify-content:center;min-height:520px;background:#fff;border-radius:150px 150px 12px 12px;overflow:hidden}
.area-visual>img{width:100%;height:520px;object-fit:contain;padding:22px}
.area-detail{animation:appear .3s}
.area-detail h3{font-size:34px;line-height:1.2}
.area-detail>p{color:#aabfd2;margin:22px 0}
.area-detail li{color:#c6d8e5}
.area-detail .checks svg{color:#4bb5e5}
.area-detail .area-note{font-size:12px;color:#8aa5bc;margin-top:23px}
.areas .section-note{color:#94b0c4}
.experience{background:#f1f7fb}
.journey-nav{display:grid!important;grid-template-columns:repeat(4,1fr);height:auto!important;background:transparent!important;gap:12px;padding:0!important}
.journey-nav>button{border:1px solid #bdcfdd!important;border-radius:4px!important;padding:18px 15px!important;min-height:70px;box-shadow:none!important;font-size:15px!important;justify-content:flex-start!important;gap:16px}
.journey-nav>button>span{color:#598cac;font-size:13px}
.journey-nav>button[data-state=active]{background:var(--primary)!important;border-color:var(--primary)!important;color:white!important}
.journey-nav>button[data-state=active]>span{color:#c6edff}
.journey-panel{display:flex;gap:40px;padding:42px 0 0;max-width:950px}
.journey-panel>span{font-size:60px;line-height:1;color:#9ec9df}
.journey-panel h3{font-size:31px;margin-bottom:17px}
.journey-panel p{color:#526b7c}
.offers{display:grid;grid-template-columns:1.1fr .85fr;gap:10%;align-items:center}
.offers>div>p{color:#596b7c;margin-top:28px}
.price-promise{border-top:1px solid #d2e0e9;margin-top:32px;padding-top:27px;display:flex;gap:17px}
.price-promise>svg{flex-shrink:0;color:var(--pink)}
.price-promise h3{font-size:22px;line-height:1.4}
.price-promise p{color:#596b7c;font-size:14px;margin-top:14px}
.offer-card{padding:42px;background:var(--ink);color:white;border-radius:8px;position:relative;overflow:hidden;border-top:4px solid var(--pink)}
.offer-card .eyebrow{color:#7bcaed}
.offer-card h3{font-size:37px}
.offer-card>p{color:#adbed1;margin-top:23px}
.offer-card ul{margin:28px 0}
.offer-card .checks svg{color:#68c4ee}
.offer-card .button{width:100%}
.offer-card small{display:block;font-size:12px;line-height:1.8;color:#97afc3;margin-top:21px}
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;border-top:1px solid #dfebf2}
.faq-list summary{font-family:Gotham,Arial,sans-serif;font-size:16px;text-align:left;line-height:1.6;padding:20px 0;font-weight:400}
.faq-answer{font-size:15px;color:#526175;line-height:1.85}
.location{display:grid;grid-template-columns:1.1fr .85fr;gap:10%;background:#eaf9ff;align-items:center}
.location>div>p{max-width:490px;margin:26px 0;color:#536a7c}
.address-card{border:1px solid #c2dce9;background:white;padding:35px}
.address-card>svg{color:var(--primary);margin-bottom:20px}
.address-card h3{font-size:27px}
.address-card address{font-style:normal;line-height:1.9;margin:20px 0;color:#526b7c}
.address-card .text-link{display:inline-block}
footer{background:var(--ink);color:white;padding:57px 6% 25px}
.footer-main{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:45px;align-items:center}
.by{color:#95a9ba;font-size:13px}
.clinic-lockup{display:flex;align-items:center;gap:16px;margin-top:6px}
.clinic-lockup>img{width:66px;height:91px;object-fit:contain}
.clinic-lockup>span{font-size:17px;letter-spacing:.1em;line-height:1.5}
.clinic-lockup strong{display:block;font-size:23px;font-weight:400;letter-spacing:.21em}
.clinic-lockup small{display:block;font-size:10px;letter-spacing:.17em;margin-top:9px;color:#a9b6c8}
.footer-main>p{font-size:26px;line-height:1.4;font-family:GothamRounded,Arial,sans-serif;letter-spacing:-.04em}
.footer-main>p>span{color:#67c1e8}
.footer-main>address{font-size:14px;font-style:normal;color:#96aec1}
.footer-bottom{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;border-top:1px solid #2a3c53;padding-top:23px;margin-top:45px;color:#93aabf;font-size:12px}
.footer-bottom a{text-decoration:underline}
.footer-bottom a:hover{color:white}
@keyframes borderFlow{0%,100%{background-position:0 0,0 50%}50%{background-position:0 0,100% 50%}}
@keyframes appear{from{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){
  .hero-copy{padding-left:16%}
  .section{padding-left:max(6%,calc((100% - 1400px)/2));padding-right:max(6%,calc((100% - 1400px)/2))}
}
@media(max-width:1100px){
  .header{gap:18px}
  .nav{gap:17px}
  .brand img{width:135px}
  .brand span{font-size:12px;padding-left:13px}
  .header-cta{padding:11px 16px}
  .quick-form{grid-template-columns:1fr 1fr 1fr;gap:10px 15px}
  .quick-heading{grid-column:1/-1;display:flex;align-items:center;gap:15px}
  .quick-heading p{margin:0}
  .quick-submit{grid-column:1}
  .quick-notice{grid-column:2/-1;margin:0}
  .hero-copy{padding:46px 7% 42px 10%}
  .hero h1{font-size:60px}
  .hero{min-height:600px}
  .hero-copy>p{font-size:16px}
  .area-explorer{gap:23px;grid-template-columns:.85fr 1fr 1fr}
  .area-detail h3{font-size:29px}
  .treatment-copy{padding:35px 7%}
  .treatment-copy h3{font-size:31px}
  .offers,.faq,.location{gap:6%}
  .offer-card{padding:32px}
  .footer-main{gap:25px}
}
@media(max-width:850px){
  .nav{display:none;position:absolute;left:0;right:0;top:138px;z-index:10;background:white;box-shadow:0 12px 20px #05112a1a;padding:24px 6%;flex-direction:column}
  .nav.open{display:flex}
  .menu-button{display:block;border:1px solid #c3d6e1;padding:9px;border-radius:4px;color:var(--ink)}
  .header-cta{margin-left:auto}
  .header{min-height:90px}
  .brand img{width:140px}
  .hero{grid-template-columns:1fr 1fr}
  .hero h1{font-size:51px}
  .hero-copy{padding:43px 8% 39px 10%}
  .hero-copy>p{font-size:16px}
  .hero-signature{font-size:12px}
  .photo-caption{left:24px;bottom:27px}
  .photo-caption>strong{font-size:25px}
  .facts{gap:16px;padding:24px 5%}
  .facts>div{gap:12px}
  .facts strong{font-size:14px}
  .facts span{font-size:12px}
  .section{padding:65px 6%}
  .section-heading{align-items:flex-start;gap:25px}
  .section-heading>p{max-width:290px;font-size:16px}
  .benefit-grid{gap:15px}
  .benefit-grid>a{padding:24px}
  .benefit-grid h3{font-size:24px}
  .technology{padding-top:0}
  .treatment-panel{grid-template-columns:1fr 1fr}
  .treatment-copy{padding:32px 8%}
  .treatment-copy h3{font-size:29px}
  .treatment-nav>button{font-size:15px!important}
  .area-explorer{grid-template-columns:1fr 1fr;gap:28px}
  .area-buttons{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}
  .area-buttons>button{padding:15px 12px}
  .area-buttons>button>strong{font-size:14px}
  .area-visual,.area-visual>img{min-height:430px;height:430px}
  .journey-panel{gap:25px}
  .offers{grid-template-columns:1fr 1fr;gap:5%}
  .offer-card h3{font-size:30px}
  .faq{grid-template-columns:1fr;gap:30px}
  .footer-main{grid-template-columns:1fr 1fr;gap:30px}
  .footer-main>address{grid-column:1/-1}
}
@media(max-width:600px){
  .announcement{justify-content:center;text-align:center;font-size:12px}
  .announcement>span:first-child{display:none}
  .header{padding:18px 5%;gap:12px}
  .brand{gap:9px}
  .brand img{width:123px}
  .brand span{display:none}
  .header-cta{font-size:12px;padding:10px 12px;min-height:40px}
  .menu-button{padding:7px}
  .menu-button svg{width:22px}
  .nav{top:116px}
  .top-consultation{padding:0 5% 20px}
  .consultation-box{padding:15px}
  .quick-form{grid-template-columns:1fr 1fr;gap:10px}
  .quick-heading{gap:10px;justify-content:space-between;flex-wrap:wrap}
  .quick-heading h2{font-size:18px}
  .quick-heading p{font-size:12px}
  .quick-field:nth-of-type(2){grid-column:1/-1}
  .quick-field label{font-size:14px}
  .quick-field input{font-size:16px;height:42px}
  .quick-submit{grid-column:1/-1;width:100%;min-height:43px;margin-top:3px}
  .quick-notice{grid-column:1/-1;font-size:12px}
  .hero{grid-template-columns:1fr}
  .hero-copy{padding:40px 6%}
  .hero h1{font-size:clamp(49px,12.5vw,66px)}
  .hero .eyebrow{font-size:12px;margin-bottom:24px}
  .hero-copy>p{margin:24px 0;max-width:none}
  .hero-actions{gap:24px}
  .hero-signature{font-size:13px;margin-top:26px}
  .hero-photo{min-height:410px}
  .hero-photo>img{object-position:center}
  .photo-caption{left:6%;bottom:24px}
  .photo-caption>strong{font-size:26px}
  .facts{grid-template-columns:1fr;padding:12px 6%;gap:0}
  .facts>div{justify-content:flex-start;padding:17px 0;gap:19px}
  .facts>div+div{border-left:0;border-top:1px solid #c2dce9}
  .facts strong{font-size:16px}
  .facts span{font-size:13px}
  .section{padding:58px 6%}
  .section-heading{display:block;margin-bottom:30px}
  .section-heading>p{max-width:none;margin-top:23px}
  .eyebrow{font-size:12px;margin-bottom:20px}
  .benefit-grid{grid-template-columns:1fr;gap:18px}
  .benefit-grid>a{padding:27px}
  .benefit-grid h3{font-size:29px}
  .benefit-grid svg{margin-bottom:13px}
  .card-link svg{margin:0}
  .technology{padding-top:0}
  .treatment-nav>button{font-size:14px!important;min-height:80px;padding:14px 8px!important;line-height:1.5!important}
  .treatment-panel{grid-template-columns:1fr}
  .treatment-photo{min-height:320px}
  .treatment-copy{padding:32px 25px}
  .treatment-copy h3{font-size:31px}
  .treatment-copy .eyebrow{font-size:12px}
  .treatment-copy ul.checks li{font-size:15px}
  .area-switch{width:100%}
  .area-switch>button{flex:1}
  .area-explorer{grid-template-columns:1fr;gap:27px}
  .area-buttons{grid-template-columns:repeat(2,1fr);gap:9px}
  .area-buttons>button{padding:15px 12px;gap:9px}
  .area-buttons>button>strong{font-size:14px}
  .area-buttons>button svg{width:16px}
  .area-visual{max-width:340px;width:100%;margin:auto;border-radius:150px 150px 8px 8px}
  .area-visual,.area-visual>img{min-height:410px;height:410px}
  .area-detail h3{font-size:32px}
  .area-detail .checks li{font-size:15px}
  .journey-nav{grid-template-columns:repeat(2,1fr);gap:9px}
  .journey-nav>button{min-height:59px;padding:13px!important;gap:11px}
  .journey-panel{gap:19px;padding-top:30px}
  .journey-panel>span{font-size:39px}
  .journey-panel h3{font-size:27px}
  .offers,.location{grid-template-columns:1fr;gap:35px}
  .offer-card{padding:32px}
  .offer-card h3{font-size:35px}
  .faq{gap:24px}
  .faq-list summary{font-size:16px}
  .address-card{padding:29px}
  .footer-main{grid-template-columns:1fr;gap:30px}
  .footer-main>address{grid-column:auto}
  .footer-main>p{font-size:28px}
  footer{padding:45px 6% 24px}
  .footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:15px;margin-top:30px}
  .footer-main .clinic-lockup{gap:20px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation:none!important;transition:none!important}
}
.hero-photo>img{object-position:74% center}
.treatment-photo{display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#dceffc,#eef8fe 68%)}
.treatment-photo img{position:static;max-width:82%;max-height:390px;object-fit:contain;width:100%;height:auto;padding:20px;transition:transform .5s}
.treatment-photo:hover img{transform:scale(1.04)}
.area-visual{min-height:0;height:auto;display:block;border-radius:120px 120px 8px 8px}
.area-visual>img{display:block;width:100%;height:auto;min-height:0;object-fit:contain;padding:0}
.area-visual.body{border-radius:8px}
.area-pin{position:absolute;width:42px;height:42px;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);z-index:2;border:0;border-radius:50%;background:transparent}
.area-pin>span{width:12px;height:12px;border-radius:50%;background:#c92c83;border:2px solid white;box-shadow:0 0 0 6px #c92c8330;transition:transform .2s}
.area-pin.active>span{background:#089bd9;box-shadow:0 0 0 7px #089bd940;transform:scale(1.25)}
.area-pin:hover>span{transform:scale(1.4)}
.visual-label{position:absolute;bottom:10px;left:8px;right:8px;text-align:center;color:#204459;font-size:10px;letter-spacing:.04em;background:#ffffffd9;padding:3px;border-radius:3px}
.area-visual.face .visual-label{color:#4a7187}
@media(max-width:600px){
  .treatment-photo{min-height:300px}
  .treatment-photo img{max-height:300px;width:auto;max-width:90%}
  .area-visual,.area-visual>img{min-height:0;height:auto}
  .hero-photo>img{object-position:74% center}
}
/* 4. his React pieces: menu icon swap, FAQ question as in his trigger (h3 spacing), summary focus, panes wrapper */
.menu-button .i-close{display:none}
.menu-button[aria-expanded=true] .i-open{display:none}
.menu-button[aria-expanded=true] .i-close{display:block}
.faq-list summary h3{font:inherit;letter-spacing:-1.26px}
.faq-list summary{outline-offset:5px}
.faq-list summary:focus-visible{outline:3px solid var(--blue)}
.area-panes{display:contents}
/* 5. fleet pieces on his palette: CRM error box (below his submit + consent row), contact links, lib skip link */
form.quick-form .alert-danger{grid-column:2/-1;margin-top:10px}
address a{transition:color .2s}
.address-card address a:hover{color:var(--primary)}
footer address a:hover{color:#fff}
.skip-link{position:fixed;top:-100px;left:20px;z-index:99;padding:10px 20px;background:white}
.skip-link:focus{top:10px}
/* 6. privacy, patient safety and 404 pages (lib markup) */
.primary{gap:10px}
.page-hero{padding:88px 6% 40px;background:#fff}
.page-hero h1{font-size:clamp(44px,5vw,72px);line-height:1.04;letter-spacing:-.055em}
.page-hero>p:not(.eyebrow){max-width:560px;margin-top:22px;color:#596b7c;line-height:1.85}
.page-hero .hero-actions{margin-top:34px}
.prose-section{padding:20px 6% 88px;background:#fff}
.prose{max-width:820px;color:#526b7c;font-size:16px;line-height:1.85;overflow-wrap:break-word}
.prose>*+*{margin-top:16px}
.prose h2{font-size:clamp(26px,2.6vw,34px);color:var(--ink);margin-top:44px}
.prose h3{font-size:21px;line-height:1.3;letter-spacing:-.03em;color:var(--ink);margin-top:30px}
.prose ul{list-style:disc;padding-left:22px}
.prose li+li{margin-top:6px}
.prose a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}
.prose strong{color:var(--ink)}
.prose em{font-style:italic;color:inherit}
.prose hr{border-color:#d4e1e9;margin-block:36px}
.prose-actions{display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin-top:36px}
.prose .primary{color:#fff;text-decoration:none}
.prose .text-button{text-decoration:none}
.text-button{color:var(--primary);font-size:14px;border-bottom:1px solid #9ab8c8;padding-bottom:4px}
.action-arrow{flex-shrink:0}
/* 7. the fleet cookie banner (partial unchanged) on his palette: body-prefixed to outrank its inline style */
body #cookie-banner{background:var(--ink);color:#cee5f4;border-top:1px solid #294057;box-shadow:0 -16px 48px #00000066;font:400 14px/1.75 Gotham,Arial,sans-serif}
body #cookie-banner p{color:#a7bed2}
body #cookie-banner a{color:#84cced}
body #cookie-banner button{border-radius:4px;font:400 14px/1.4 Gotham,Arial,sans-serif}
body #cookie-banner #deny-btn{background:transparent;color:#fff;border:1px solid #3a5470}
body #cookie-banner #deny-btn:hover{background:#112842}
body #cookie-banner #accept-all-btn,body #cookie-banner #accept-selected-btn{background:var(--primary);color:#fff;border:1px solid var(--primary)}
body #cookie-banner #accept-all-btn:hover,body #cookie-banner #accept-selected-btn:hover{background:#066a94;border-color:#066a94}
body #cookie-banner .more a{color:#a7bed2}
body #cookie-banner .more a:hover{color:#84cced}
body #cookie-banner .toggle-container{color:#cee5f4}
body #cookie-banner .toggle{background:#294057}
body #cookie-banner .toggle:checked{background:var(--primary)}
body #cookie-banner .toggle:focus-visible{outline-color:#84cced}
@media(min-width:1600px){
  .page-hero,.prose-section{padding-left:max(6%,calc((100% - 1400px)/2));padding-right:max(6%,calc((100% - 1400px)/2))}
}
@media(max-width:1100px){
  form.quick-form .alert-danger{grid-column:1/-1;order:1}
}
@media(max-width:850px){
  .page-hero{padding:65px 6% 34px}
  .prose-section{padding-bottom:65px}
}
@media(max-width:600px){
  .page-hero{padding:58px 6% 30px}
  .prose-section{padding:10px 6% 58px}
  .prose{font-size:15px}
  body #cookie-banner{font-size:13px}
}
