/* SOFWAVE design for Square Mile Clinic (Ravi, 30 Sep 2026): his app/globals.css ported without Tailwind */
/* 1. base: the part of Tailwind's preflight his rules were written against */
*,::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}
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;color:currentColor}
@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 before his rules (which override them, as they did the utilities) */
.journey{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;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 #377fd580}
[role=tab] svg{flex-shrink:0;pointer-events:none}
[role=tabpanel]{flex:1;outline:none}
.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;font-weight:500;text-align:left;cursor:pointer;list-style:none}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary h3{font:inherit;letter-spacing:inherit}
.faq-list summary:hover h3{text-decoration:underline}
.faq-list summary:focus-visible{outline:3px solid var(--purple);outline-offset:5px}
.faq-list summary svg{flex-shrink:0;color:var(--muted-foreground);transform:translateY(2px);transition:transform .2s}
.faq-list details[open] summary svg{transform:translateY(2px) rotate(180deg)}
.faq-answer{overflow:hidden;padding-bottom:16px;font-size:14px}
/* 3. his rules, in his order (the morpheus8-era selectors his file still carries, unused here, are left out) */
@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:#1d2126;--card:#fff;--card-foreground:#1d2126;--popover:#fff;--popover-foreground:#1d2126;--primary:#2670bd;--primary-foreground:#fff;--secondary:#edf3f9;--secondary-foreground:#1d2126;--muted:#f2f4f6;--muted-foreground:#5d646b;--accent:#e2edf9;--accent-foreground:#215b97;--border:#dbe2e9;--input:#c3ccd5;--ring:#3d8ee2;--radius:.5rem;--purple:#3d8ee2;--ink:#12161b;--turquoise:#39e2e5}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:25px}
body{margin:0;font:16px/1.75 Gotham,Arial,sans-serif;background:#fff;color:#1d2126}
button,input{font:inherit}
a{color:inherit;text-decoration:none}
button,a{touch-action:manipulation}
button{cursor:pointer}
button:disabled{opacity:.6;cursor:wait}
button,a,input{outline-offset:5px}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--purple)}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:GothamRounded,Gotham,Arial,sans-serif;font-weight:500;line-height:1.13;letter-spacing:-.055em}
h2{font-size:clamp(38px,4.2vw,64px)}
h3{font-size:29px}
em{font-style:normal;color:#2670bd}
.skip{position:fixed;top:-90px;left:20px;z-index:99;background:white;padding:12px}
.skip:focus{top:12px}
.announcement{display:flex;justify-content:space-between;gap:20px;background:var(--ink);color:#e1e8f0;padding:9px 5%;font-size:12px;letter-spacing:.06em}
.header{display:flex;align-items:center;justify-content:space-between;padding:20px 5%;min-height:105px;gap:25px}
.brand{display:flex;align-items:center;gap:16px;line-height:1}
.brand>span{font-size:17px;letter-spacing:.19em}
.nav{display:flex;gap:28px;font-size:14px}
.nav a:hover{color:var(--primary)}
.button,.primary{display:inline-flex;justify-content:center;align-items:center;min-height:49px;background:var(--primary);color:white;border:1px solid var(--primary);border-radius:4px;padding:13px 23px;font-size:14px;transition:transform .2s,background .2s}
.button:hover,.primary:hover{background:#175493;transform:translateY(-2px)}
.menu-button{display:none}
.top-consultation{padding:0 5% 20px}
.consultation-box{padding:14px 20px 10px;border:1.5px solid transparent;border-radius:7px;background:linear-gradient(#f0f6fc,#f0f6fc) padding-box,linear-gradient(100deg,#3d8ee2,#b4cde8,#39e2e5,#3d8ee2) border-box;background-size:100% 100%,300% 100%;animation:borderFlow 9s ease infinite}
.quick-form{display:grid;grid-template-columns:1.05fr 1fr 1.35fr 1.15fr auto;align-items:center;gap:0 14px}
.quick-heading h2{font-size:19px;letter-spacing:-.035em}
.quick-heading p{font-size:12px;margin-top:5px;color:#606f7e}
.quick-field label{font-size:13px;display:block;margin-bottom:3px;color:#4c5a69}
.quick-field input{height:40px;width:100%;min-width:0;font-size:14px;padding:9px 10px;background:white;border:1px solid #cbd7e3;border-radius:4px}
.quick-submit{align-self:end;min-height:40px;padding:9px 15px}
.quick-notice{grid-column:2/-1;font-size:12px;color:#6a737d;margin-top:6px;line-height:1.5}
.quick-notice a{text-decoration:underline}
.eyebrow{display:block;font-size:12px;letter-spacing:.14em;color:#256cb6;margin-bottom:23px}
.text-link{border-bottom:1px solid #94adc7;padding-bottom:4px;font-size:14px;color:#215b97}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.hero-actions .text-link{color:#dbe5f0}
.section{padding:90px 6%}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:65px;margin-bottom:43px}
.section-heading>p{max-width:380px;color:#6d747b;line-height:1.9}
.section-note{font-size:12px;color:#798490;margin-top:18px}
.experience{background:#f3f6f9}
.journey-nav{display:grid!important;grid-template-columns:repeat(4,1fr);width:100%!important;height:auto!important;gap:13px!important;background:transparent!important;padding:0!important}
.journey-nav button{border:1px solid #ccd9e7!important;display:flex!important;align-items:flex-start!important;flex-direction:column!important;gap:26px!important;background:white!important;padding:25px!important;border-radius:5px!important;color:#606c78!important;box-shadow:none!important;font-size:17px!important}
.journey-nav button>span{font-size:32px;line-height:1;color:#819dbb}
.journey-nav button[data-state=active]{background:#2a72bd!important;color:white!important;border-color:#2a72bd!important}
.journey-nav button[data-state=active]>span{color:#b6d6f8}
.journey-panel{display:flex;gap:40px;padding:36px 20px 20px;align-items:flex-start;animation:appear .35s}
.journey-panel>span{font:500 60px/1 GothamRounded,Arial,sans-serif;color:#b4c9df}
.journey-panel h3{font-size:30px;margin-bottom:17px}
.journey-panel p{max-width:830px;color:#657382;line-height:1.9}
.offers{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;align-items:center;background:#fff}
.offers>div>p{color:#67717b;max-width:450px;margin:25px 0 35px;line-height:1.9}
.price-promise{display:flex;gap:17px;border-top:1px solid #d7dfe8;padding-top:26px;max-width:460px}
.price-promise>svg{color:var(--primary);flex-shrink:0;margin-top:3px}
.price-promise h3{font-size:19px;letter-spacing:-.03em}
.price-promise p{font-size:13px;color:#73808e;margin-top:13px}
.offer-card{padding:38px;background:#141a21;color:white;border:1px solid #32475d;border-radius:7px}
.offer-card .eyebrow{color:#94c0ed}
.offer-card h3{font-size:37px}
.offer-card>p{color:#bac7d4;margin:22px 0;font-size:16px}
.offer-card ul{list-style:none;margin:29px 0;padding:0;display:flex;flex-direction:column;gap:13px}
.offer-card li{display:flex;align-items:center;gap:12px;font-size:14px}
.offer-card li>svg{color:#8dbae9;flex-shrink:0}
.offer-card .button{background:#3d8ee2;width:100%}
.offer-card small{font-size:12px;color:#a2b2c3;display:block;margin-top:20px;line-height:1.8}
.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:7%;border-top:1px solid #e5eaef}
.faq-list summary{font-family:Gotham,Arial,sans-serif;font-size:16px;letter-spacing:0;line-height:1.6;padding:20px 0}
.faq-answer{font-size:15px;color:#677482;line-height:1.9}
.risk-source{display:block;margin-top:16px;color:#286eb6;text-decoration:underline;font-size:13px}
.location{display:grid;grid-template-columns:1.25fr 1fr;gap:12%;background:#eef2f6;align-items:center}
.location p{color:#6a7580;margin:24px 0 28px;max-width:400px}
.address-card{padding:30px 0;border-left:1px solid #bdcedf;padding-left:60px}
.address-card>svg{color:#558ec9;margin-bottom:23px}
.address-card h3{font-size:27px}
.address-card address{font-style:normal;color:#687480;margin:20px 0;font-size:16px}
footer{background:#101316;color:#bcc3cb;padding:60px 6% 25px}
.footer-main{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:50px;align-items:center}
.by{font-size:12px;color:#a0b4c8;display:block;margin-bottom:10px}
.clinic-lockup{display:flex;align-items:center;gap:15px}
.clinic-lockup>img{width:66px;height:86px;object-fit:contain}
.clinic-lockup>span{font-size:13px;letter-spacing:.14em;color:#dbc49b;line-height:1.5}
.clinic-lockup strong{display:block;font-size:25px;letter-spacing:.18em;font-weight:400}
.clinic-lockup small{display:block;font-size:10px;letter-spacing:.12em}
.footer-main>p{font-family:GothamRounded,Arial,sans-serif;font-size:24px;line-height:1.5;letter-spacing:-.03em;color:#d8dfe7}
.footer-main>p>span{color:#8aa7c5}
.footer-main address{font-style:normal;font-size:13px;line-height:1.9;color:#99a6b4}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:30px;margin-top:40px;border-top:1px solid #28323d;font-size:12px;color:#8e9dac}
.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:.35;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){
  .section{padding-left:max(6%,calc((100vw - 1440px)/2));padding-right:max(6%,calc((100vw - 1440px)/2))}
}
@media(max-width:1100px){
  .nav{gap:17px}
  .quick-form{grid-template-columns:1fr 1fr 1.2fr 1fr;gap:10px}
  .quick-heading{grid-column:1/-1;display:flex;align-items:center;gap:15px}
  .quick-heading p{margin:0}
  .quick-notice{grid-column:1/-1}
  .hero-actions{gap:20px}
  .section{padding:70px 6%}
  .offers{gap:6%}
  .offer-card{padding:30px}
  .footer-main{gap:30px}
}
@media(max-width:850px){
  .header{padding:17px 5%;min-height:92px;position:relative}
  .nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:30;background:#fff;padding:25px 6%;border-bottom:1px solid #ccd9e6}
  .nav.open{display:flex;flex-direction:column}
  .menu-button{display:block;color:var(--primary)}
  .header-cta{margin-left:auto;font-size:13px;padding:11px 16px;min-height:43px}
  .announcement>span:last-child{display:none}
  .hero-actions .button{font-size:13px;padding:11px 15px}
  .section-heading{gap:35px;align-items:start}
  .section-heading>p{max-width:300px;font-size:15px}
  .journey-nav button{padding:20px!important;font-size:15px!important}
  .offers{grid-template-columns:1fr 1fr;gap:5%}
  .offer-card h3{font-size:30px}
  .faq{grid-template-columns:1fr;gap:30px}
  .location{gap:8%}
  .address-card{padding-left:30px}
  .footer-main{grid-template-columns:1fr 1fr}
  .footer-main>address{grid-column:1/-1}
  .footer-bottom{flex-wrap:wrap;justify-content:flex-start}
}
@media(max-width:600px){
  .announcement{font-size:10px;letter-spacing:.08em;padding:8px 6%}
  .brand{gap:11px}
  .brand>span{font-size:14px}
  .header{gap:15px}
  .header-cta{font-size:12px;padding:9px 10px;min-height:38px}
  .menu-button svg{width:22px}
  .top-consultation{padding:0 5% 18px}
  .consultation-box{padding:15px}
  .quick-form{grid-template-columns:1fr 1fr;gap:10px}
  .quick-heading{display:block}
  .quick-heading h2{font-size:20px}
  .quick-heading p{margin-top:4px;font-size:12px}
  .quick-field:nth-of-type(3){grid-column:2}
  .quick-field input{font-size:14px;height:43px}
  .quick-field label{font-size:12px}
  .quick-field:nth-of-type(4){grid-column:1}
  .quick-submit{grid-column:2;min-height:43px;font-size:13px;padding:10px}
  .quick-notice{font-size:11px;margin-top:0;line-height:1.6}
  .hero-actions .button{font-size:14px;padding:12px 17px}
  .hero-actions{gap:20px}
  .section{padding:55px 6%}
  .section-heading{display:block;margin-bottom:30px}
  .section-heading>p{max-width:none;margin-top:24px;font-size:16px}
  .eyebrow{font-size:11px;margin-bottom:20px}
  h2{font-size:42px}
  .section-note{font-size:12px}
  .journey-nav{grid-template-columns:repeat(2,1fr);gap:10px!important}
  .journey-nav button{padding:23px!important;gap:20px!important;font-size:16px!important}
  .journey-panel{gap:23px;padding:30px 0 20px}
  .journey-panel>span{font-size:42px}
  .journey-panel h3{font-size:27px}
  .journey-panel p{font-size:15px}
  .offers{grid-template-columns:1fr;gap:32px}
  .offers>div>p{font-size:16px}
  .price-promise p{font-size:13px}
  .offer-card{padding:29px}
  .offer-card h3{font-size:33px}
  .faq-list summary{font-size:15px;padding:19px 0}
  .faq-answer{font-size:15px}
  .location{grid-template-columns:1fr;gap:30px}
  .address-card{border-left:0;border-top:1px solid #bdcedf;padding:27px 0 0}
  .address-card h3{font-size:27px}
  .footer-main{grid-template-columns:1fr;gap:30px}
  .footer-main>address{grid-column:auto}
  .footer-main>p{font-size:27px}
  .footer-main address{font-size:14px}
  .footer-bottom{gap:17px;font-size:12px;padding-top:25px;margin-top:30px}
}
/* his Sofwave London layer */
:root{--primary:#256aba;--ring:#377fd5;--purple:#377fd5;--ink:#101e30;--foreground:#182a40;--background:#fff;--secondary:#edf5fc;--secondary-foreground:#182a40;--muted:#f2f6f9;--muted-foreground:#576e83;--accent:#e8f2fc;--accent-foreground:#235d9e;--border:#d9e4ed;--input:#bed0df}
body{color:#182a40}
.announcement{background:#111d2b;color:#d4dfec}
.header .brand{gap:22px}
.header .brand>img{width:190px;height:auto}
.header .brand>span{font-size:12px;letter-spacing:.2em;border-left:1px solid #bed0dd;padding-left:20px;color:#61778b}
.nav a:hover{color:#377fd5}
.button:hover,.primary:hover{background:#1b538f}
.eyebrow{color:#2d6baa}
em{color:#377fd5}
.consultation-box{background:linear-gradient(#eff6fc,#eff6fc) padding-box,linear-gradient(100deg,#377fd5,#a3c4e8,#a8dedc,#377fd5) border-box;background-size:100% 100%,300% 100%}
.quick-heading p{color:#64798b}
.quick-field label{color:#4e697f}
.quick-field input{border-color:#c8dbea}
.quick-notice{color:#667e91}
.sof-hero{display:grid;grid-template-columns:.92fr 1.12fr;gap:5%;align-items:center;padding:25px 5% 50px;max-width:1700px;margin:auto}
.sof-hero-copy{padding:25px 0}
.sof-hero-copy h1{font-size:clamp(52px,5.5vw,83px);line-height:1.08;letter-spacing:-.055em}
.sof-hero-copy>p{font-size:18px;line-height:1.9;color:#667e93;max-width:440px;margin:27px 0 32px}
.sof-hero-copy .eyebrow{font-size:12px;letter-spacing:.15em}
.hero-actions .text-link{color:#285f96}
.hero-signature{display:flex;align-items:center;gap:15px;margin-top:35px;color:#7990a4}
.hero-signature>svg{color:#377fd5;flex-shrink:0}
.hero-signature p{font-size:13px;line-height:1.9}
.hero-signature strong{font-weight:400;color:#3d5e7b}
.sof-hero-photo{height:560px;position:relative;border-radius:90px 8px 90px 8px;overflow:hidden;background:#f2f3f6;isolation:isolate}
.sof-hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:64% 55%;transition:transform 1.2s;display:block}
.sof-hero-photo:hover>img{transform:scale(1.025)}
.hero-photo-note{position:absolute;left:25px;bottom:24px;background:#ffffffed;padding:20px 23px;min-width:200px;border-radius:5px;border:1px solid #e3eaf1}
.hero-photo-note>span{font-size:11px;letter-spacing:.1em;color:#5f819e}
.hero-photo-note>strong{display:block;font:500 27px/1.2 GothamRounded,Arial,sans-serif;color:#204d78;letter-spacing:-.04em;margin:12px 0}
.hero-photo-note>small{font-size:10px;color:#7792a7}
.treatment-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;align-items:center;background:#101e30;color:#e1edfa;padding:26px 6%}
.treatment-facts>div{display:flex;align-items:center;justify-content:center;gap:18px}
.treatment-facts>div+div{border-left:1px solid #34465a}
.treatment-facts svg{color:#73a9e9;width:28px;height:28px;flex-shrink:0}
.treatment-facts strong{display:block;font-size:17px;font-weight:400;color:white;line-height:1.4;margin-bottom:7px}
.treatment-facts span{font-size:12px;color:#94aac1}
.benefit-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.benefit-cards>a{display:flex;flex-direction:column;padding:30px;border:1px solid #d9e5f1;background:linear-gradient(150deg,#f1f7fd,#fff);border-radius:6px;transition:transform .25s,border-color .25s}
.benefit-cards>a:hover{transform:translateY(-5px);border-color:#90b8e5}
.benefit-cards>a>span:first-child{font:500 32px/1 GothamRounded,Arial,sans-serif;color:#9ebce1}
.benefit-cards h3{font-size:29px;line-height:1.25;margin:28px 0 18px}
.benefit-cards p{font-size:16px;line-height:1.85;color:#6b8196;margin-bottom:29px}
.card-link{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-top:auto;border-top:1px solid #d7e3ee;padding-top:19px;font-size:13px;color:#3575b9}
.card-link>svg{flex-shrink:0}
.section-note{color:#7890a5}
.sof-areas{background:#edf5fc}
.sof-explorer{display:grid;grid-template-columns:.75fr 1fr 1.2fr;gap:35px;align-items:center}
.sof-area-nav{display:flex;flex-direction:column;gap:8px}
.sof-area-nav button{display:flex;align-items:center;gap:13px;text-align:left;padding:20px 16px;border:1px solid #d4e3f0;border-radius:5px;background:transparent;color:#587692;transition:background .2s,border-color .2s}
.sof-area-nav button>span{font-size:12px;color:#8aa7bf}
.sof-area-nav button>strong{font-size:16px;font-weight:400;flex:1}
.sof-area-nav button>svg{width:18px;flex-shrink:0}
.sof-area-nav button.active{background:white;border-color:#83aedf;box-shadow:0 5px 18px #3969990a;color:#246aba}
.sof-area-nav button.active>span{color:#377fd5}
.sof-area-nav button:hover{border-color:#83aedf}
.sof-area-image{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:410px;border:1px solid #d9e6f1;background:#fff;border-radius:160px 160px 12px 12px;animation:appear .3s}
.sof-area-image img{width:210px;max-width:75%;height:auto;image-rendering:auto}
.sof-area-image>span{font-size:12px;letter-spacing:.17em;color:#b94b0f;margin-top:30px}
.sof-area-detail{animation:appear .3s}
.sof-area-detail .eyebrow{margin-bottom:17px;font-size:11px}
.sof-area-detail h3{font-size:34px;line-height:1.18}
.sof-area-detail>p:not(.area-note){color:#617d96;font-size:16px;line-height:1.9;margin:23px 0}
.sof-area-detail ul{padding:0;list-style:none;display:flex;flex-direction:column;gap:12px;margin:24px 0 30px}
.sof-area-detail li{display:flex;gap:11px;align-items:flex-start;font-size:14px;color:#486783}
.sof-area-detail li>svg{color:#377fd5;flex-shrink:0;margin-top:3px}
.sof-area-detail .area-note{color:#7892a7;font-size:12px;line-height:1.8;margin-top:21px}
.sof-technology{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:8%}
.technology-picture{position:relative;border-radius:6px;overflow:hidden;background:#f5f6f7;border:1px solid #e6ebf0}
.technology-picture img{width:100%;height:auto;display:block}
.technology-picture>span{position:absolute;left:25px;right:25px;bottom:26px;font-size:10px;letter-spacing:.13em;color:#5a7e9d;text-align:center}
.technology-copy>p{color:#657e94;font-size:16px;line-height:1.9;margin:28px 0}
.tech-steps{display:flex;flex-direction:column;gap:17px;margin:25px 0 30px}
.tech-steps>div{display:flex;gap:20px;padding-top:17px;border-top:1px solid #e1eaf2}
.tech-steps>div>span{font-size:12px;color:#91afcb;padding-top:4px}
.tech-steps p{font-size:14px;color:#6d879f;line-height:1.8}
.tech-steps strong{display:block;font-size:17px;font-weight:400;color:#335775;margin-bottom:4px}
.experience{background:#f6f8fb}
.journey-nav button[data-state=active]{background:#256aba!important;border-color:#256aba!important}
.journey-nav button[data-state=active]>span{color:#bdd8f6}
.journey-panel p{color:#647d94}
.price-promise>svg{color:#377fd5}
.offers>div>p,.price-promise p{color:#6d8397}
.offer-card{background:#101e30;border-color:#314f70}
.offer-card .eyebrow{color:#8bb5e7}
.offer-card>p{color:#aebfd2}
.offer-card li>svg{color:#8ab4e5}
.offer-card small{color:#9aadc3}
.offer-card .button{background:#377fd5;border-color:#377fd5}
.offer-card .button:hover{background:#2b6dbb}
.location{background:#eff5fa}
.footer-main>p>span{color:#75a6de}
.footer-main>address{color:#93a4b8}
.footer-bottom{color:#899aad;border-color:#2e3d50}
footer{background:#0e1826}
.text-link{color:#2968a9;border-color:#a0bdd8}
.risk-source{color:#2868ae}
@media(max-width:1150px){
  .sof-hero{gap:4%;grid-template-columns:1fr 1.1fr}
  .sof-hero-copy h1{font-size:65px}
  .sof-hero-photo{height:545px}
  .sof-hero-copy>p{font-size:16px}
  .sof-explorer{grid-template-columns:.75fr 1fr 1.2fr;gap:22px}
  .sof-area-nav button{padding:17px 13px;gap:9px}
  .sof-area-nav button>strong{font-size:14px}
  .sof-area-detail h3{font-size:29px}
  .sof-area-image{min-height:370px}
  .benefit-cards h3{font-size:25px}
  .benefit-cards>a{padding:26px}
  .sof-technology{gap:5%}
}
@media(max-width:850px){
  .header .brand{gap:16px}
  .header .brand>img{width:159px}
  .header .brand>span{font-size:10px;padding-left:15px}
  .sof-hero-copy h1{font-size:53px}
  .sof-hero-copy>p{font-size:15px}
  .sof-hero-photo{height:555px}
  .hero-photo-note{left:17px;bottom:20px;padding:17px;min-width:175px}
  .hero-photo-note>strong{font-size:24px}
  .hero-photo-note>span{font-size:10px}
  .hero-photo-note>small{font-size:9px}
  .treatment-facts{gap:20px;padding:25px 5%}
  .treatment-facts>div{gap:12px}
  .treatment-facts strong{font-size:14px}
  .treatment-facts span{font-size:11px}
  .treatment-facts svg{width:23px;height:23px}
  .benefit-cards{gap:15px}
  .benefit-cards>a{padding:23px}
  .benefit-cards h3{font-size:24px}
  .benefit-cards p{font-size:15px}
  .card-link{font-size:12px}
  .sof-explorer{grid-template-columns:1fr 1.1fr;gap:28px}
  .sof-area-nav{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
  .sof-area-nav button{padding:16px 11px;gap:8px}
  .sof-area-nav button>svg{display:none}
  .sof-area-nav button>strong{font-size:13px}
  .sof-area-image{min-height:390px}
  .sof-area-detail h3{font-size:30px}
  .sof-technology{grid-template-columns:1fr;gap:35px}
  .technology-picture{max-width:520px;width:100%;margin:auto}
  .technology-copy{max-width:700px}
  .technology-copy>p{font-size:16px}
}
@media(max-width:600px){
  .header .brand>img{width:145px}
  .header .brand{gap:11px}
  .header .brand>span{font-size:9px;letter-spacing:.12em;padding-left:10px}
  .header-cta{font-size:11px;padding:9px;min-height:38px}
  .header{gap:11px}
  .sof-hero{grid-template-columns:1fr;padding:12px 6% 33px;gap:30px}
  .sof-hero-copy{padding:5px 0 0}
  .sof-hero-copy h1{font-size:55px}
  .sof-hero-copy>p{font-size:16px;max-width:none;margin:24px 0 28px}
  .sof-hero-copy .eyebrow{font-size:11px;margin-bottom:22px}
  .hero-actions .button{font-size:14px;padding:12px 20px}
  .hero-actions .text-link{font-size:13px}
  .hero-signature{margin-top:23px;gap:12px}
  .hero-signature p{font-size:12px}
  .hero-signature>svg{width:22px}
  .sof-hero-photo{height:470px;border-radius:60px 7px 60px 7px}
  .sof-hero-photo>img{object-position:64% center}
  .hero-photo-note{padding:17px 20px;min-width:175px;left:19px;bottom:21px}
  .hero-photo-note>strong{font-size:25px}
  .hero-photo-note>small{font-size:10px}
  .treatment-facts{grid-template-columns:1fr;gap:0;padding:15px 7%}
  .treatment-facts>div{justify-content:flex-start;padding:17px 0;gap:19px}
  .treatment-facts>div+div{border-left:0;border-top:1px solid #30435a}
  .treatment-facts strong{font-size:16px;margin-bottom:4px}
  .treatment-facts span{font-size:12px}
  .treatment-facts svg{width:25px;height:25px}
  .benefit-cards{grid-template-columns:1fr;gap:15px}
  .benefit-cards>a{padding:29px}
  .benefit-cards h3{font-size:29px;margin:24px 0 16px}
  .benefit-cards p{font-size:16px;margin-bottom:25px}
  .card-link{font-size:13px}
  .sof-explorer{grid-template-columns:1fr;gap:27px}
  .sof-area-nav{grid-template-columns:repeat(2,1fr);gap:10px}
  .sof-area-nav button{padding:17px 14px;gap:12px}
  .sof-area-nav button>strong{font-size:14px}
  .sof-area-nav button>span{font-size:11px}
  .sof-area-nav button>svg{display:block;width:16px}
  .sof-area-image{min-height:340px;border-radius:150px 150px 8px 8px;padding:30px 0;max-width:320px;width:100%;margin:auto}
  .sof-area-image img{width:205px;max-height:230px;object-fit:contain}
  .sof-area-image>span{margin-top:25px;font-size:12px}
  .sof-area-detail h3{font-size:33px}
  .sof-area-detail li{font-size:15px}
  .sof-area-detail .eyebrow{font-size:12px}
  .sof-area-detail>p:not(.area-note){font-size:16px}
  .sof-area-detail .area-note{font-size:12px}
  .technology-picture>span{font-size:9px;bottom:20px}
  .tech-steps p{font-size:14px}
  .tech-steps strong{font-size:17px}
  .technology-copy .text-link{font-size:13px}
  .quick-field label{font-size:13px}
  .quick-notice{font-size:12px}
  .hero-photo-note{backdrop-filter:none}
}
@media(max-width:600px){
  .header .brand>span{display:none}
  .header .brand>img{width:136px}
  .header{gap:8px}
}
/* 4. pieces his React components drew: the menu icon swap; the area panes wrapper (all four in the HTML) adds no box */
.menu-button .i-close{display:none}
.menu-button[aria-expanded=true] .i-open{display:none}
.menu-button[aria-expanded=true] .i-close{display:block}
.sof-area-panes{display:contents}
/* 5. fleet pieces on his palette: CRM error box, contact links, skip link of the lib pages */
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:-90px;left:20px;z-index:99;background:white;padding:12px}
.skip-link:focus{top:12px}
/* 6. privacy, patient safety and 404 pages (lib markup) */
.primary{gap:10px}
.page-hero{padding:90px 6% 40px;background:#fff}
.page-hero h1{font-size:clamp(44px,5vw,72px);line-height:1.04;letter-spacing:-.065em}
.page-hero>p:not(.eyebrow){max-width:560px;margin-top:22px;color:#667e93;line-height:1.9}
.page-hero .hero-actions{margin-top:34px}
.prose-section{padding:20px 6% 90px;background:#fff}
.prose{max-width:820px;color:#657e94;font-size:16px;line-height:1.9;overflow-wrap:break-word}
.prose>*+*{margin-top:16px}
.prose h2{font-size:clamp(26px,2.6vw,34px);color:#182a40;margin-top:44px}
.prose h3{font-size:21px;line-height:1.3;letter-spacing:-.03em;color:#182a40;margin-top:30px}
.prose ul{list-style:disc;padding-left:22px}
.prose li+li{margin-top:6px}
.prose a{color:#2968a9;text-decoration:underline;text-underline-offset:3px}
.prose strong{color:#182a40}
.prose em{font-style:italic;color:inherit}
.prose hr{border-color:#d9e4ed;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{border-bottom:1px solid #a0bdd8;padding-bottom:4px;font-size:14px;color:#2968a9}
.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:#101e30;color:#d4dfec;border-top:1px solid #314f70;box-shadow:0 -16px 48px #00000066;font:400 14px/1.75 Gotham,Arial,sans-serif}
body #cookie-banner p{color:#aebfd2}
body #cookie-banner a{color:#8bb5e7}
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 #4b6a8c}
body #cookie-banner #deny-btn:hover{background:#1a2f47}
body #cookie-banner #accept-all-btn,body #cookie-banner #accept-selected-btn{background:#377fd5;color:#fff;border:1px solid #377fd5}
body #cookie-banner #accept-all-btn:hover,body #cookie-banner #accept-selected-btn:hover{background:#2b6dbb;border-color:#2b6dbb}
body #cookie-banner .more a{color:#94aac1}
body #cookie-banner .more a:hover{color:#8bb5e7}
body #cookie-banner .toggle-container{color:#d4dfec}
body #cookie-banner .toggle{background:#314f70}
body #cookie-banner .toggle:checked{background:#377fd5}
body #cookie-banner .toggle:focus-visible{outline-color:#8bb5e7}
@media(min-width:1600px){
  .page-hero,.prose-section{padding-left:max(6%,calc((100vw - 1440px)/2));padding-right:max(6%,calc((100vw - 1440px)/2))}
}
@media(max-width:1100px){
  form.quick-form .alert-danger{grid-column:1/-1}
  .page-hero{padding:70px 6% 34px}
  .prose-section{padding-bottom:70px}
}
@media(max-width:600px){
  .page-hero{padding:55px 6% 30px}
  .prose-section{padding:10px 6% 55px}
  .prose{font-size:15px}
  body #cookie-banner{font-size:13px}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
