@font-face{font-family:Satoshi;src:url('/fonts/67e2a9d03cbc283368d024a7_Satoshi-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Satoshi;src:url('/fonts/67e2a9d00d5ffef8ddff48fa_Satoshi-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Satoshi;src:url('/fonts/67e2a9d0977743f2ab56d349_Satoshi-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Hubot;src:url('/fonts/hubot-sans-latin-wght-normal.woff2') format('woff2');font-weight:200 900;font-display:swap}
:root{--ink:#14232c;--ink-deep:#0a1a28;--copy:#5e7180;--blue:#244b7a;--blue-soft:#8ab4f8;--sky:#dfebf5;--sky-deep:#d2e2ef;--line:#cbd9e3;--white:#fff;--gold:#fbbd1d;--radius:32px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Satoshi,system-ui,sans-serif;font-size:18px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.site-shell{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.container{width:min(1200px,calc(100% - 64px));margin:0 auto}.center{text-align:center}.section{padding:112px 0}.section--sky{background:linear-gradient(to bottom,var(--sky),var(--sky-deep))}.section-intro{max-width:980px;margin:0 auto 58px}.section-heading{margin:0;font-family:Hubot,Satoshi,sans-serif;font-size:clamp(44px,5.2vw,72px);font-weight:800;line-height:1.06;letter-spacing:-.065em;font-variation-settings:"wdth" 110}.section-heading em{color:var(--blue);font-style:italic;font-weight:600}.section-lead{max-width:900px;margin:23px auto 0;color:var(--copy);font-size:21px;line-height:1.5}.eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--blue);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.eyebrow:before{content:"";width:24px;height:1px;background:currentColor}.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:56px;padding:0 31px;border:1px solid transparent;border-radius:999px;background:var(--ink);color:#fff;font-size:16px;font-weight:700;letter-spacing:-.02em;box-shadow:0 8px 30px rgba(20,35,44,.08);transition:background .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease}.button:hover{transform:translateY(-2px);background:var(--blue);box-shadow:0 16px 36px rgba(36,75,122,.16)}.button--light{background:#fff;color:var(--ink);box-shadow:none}.button--light:hover{background:var(--blue);color:#fff}.arrow{width:17px;height:17px}.mobile-label{display:none}.reveal{opacity:1;transform:none}

.hero-wrap{padding:60px 0 0;background:#fff}.hero-card{position:relative;isolation:isolate;overflow:hidden;width:min(1320px,calc(100% - 120px));min-height:780px;margin:0 auto;border-radius:32px;background:#14232c url('/images/hero_video_poster.jpg') center/cover no-repeat;color:#fff}.hero-card:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,31,42,.98) 0%,rgba(14,31,42,.89) 38%,rgba(14,31,42,.42) 72%,rgba(14,31,42,.62) 100%)}.hero-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,26,37,.08) 36%,rgba(5,18,28,.86) 100%)}.hero-nav{position:absolute;z-index:4;top:22px;left:40px;right:40px;display:flex;align-items:center;justify-content:space-between}.hero-brand{display:flex;align-items:center;gap:10px;font-family:Hubot,Satoshi,sans-serif;font-size:25px;font-weight:800;letter-spacing:-.055em}.hero-brand svg{width:25px;height:25px}.hero-nav__button{min-height:58px;padding:0 33px}.hero-content{position:relative;z-index:2;display:flex;align-items:center;min-height:780px;padding:145px 60px 165px}.hero-copy{width:min(760px,66%)}.rating-pill{display:inline-flex;align-items:center;gap:10px;margin-bottom:28px;padding:11px 19px;border:1px solid rgba(255,255,255,.17);border-radius:999px;background:rgba(255,255,255,.11);font-size:14px;backdrop-filter:blur(10px)}.rating-pill strong{font-weight:700}.rating-pill .stars{color:var(--gold);letter-spacing:.1em}.google-mark{color:#4285f4;font-weight:800}.hero-card h1{max-width:820px;margin:0;font-family:Hubot,Satoshi,sans-serif;font-size:clamp(44px,4.5vw,70px);font-weight:800;line-height:1.03;letter-spacing:-.065em;font-variation-settings:"wdth" 110}.hero-card h1 em{position:relative;display:inline-block;color:#fff;font-style:italic;font-weight:600;white-space:nowrap}.hero-card h1 em:after{content:"";position:absolute;right:0;bottom:-13px;left:2px;height:12px;border-bottom:3px solid var(--blue-soft);border-radius:50%;transform:rotate(-2deg)}.hero-sub{max-width:600px;margin:28px 0 0;color:rgba(255,255,255,.82);font-size:21px;line-height:1.42}.hero-actions{margin-top:30px}.hero-reassure{margin:12px 0 0;color:rgba(255,255,255,.57);font-size:13px}.hero-logos{position:absolute;z-index:3;right:0;bottom:0;left:0;padding:18px 38px;border-top:1px solid rgba(255,255,255,.13);background:linear-gradient(180deg,rgba(7,22,33,0),rgba(7,22,33,.74))}.hero-logos-window{overflow:hidden;width:100%}.hero-logos-track{display:flex;width:max-content;animation:logo-marquee 30s linear infinite;will-change:transform}.hero-logo-set{display:flex;align-items:center;gap:58px;flex:0 0 auto;padding-right:58px}.hero-logo-set img{width:150px;height:34px;object-fit:contain;filter:brightness(0) invert(1);opacity:.72}.hero-logos:hover .hero-logos-track{animation-play-state:paused}@keyframes logo-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.stats-wrap{padding:35px 0 86px;background:var(--sky)}.stats-wrap .container{width:min(1400px,calc(100% - 48px))}.stats-band{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:repeat(3,1fr);padding:39px 56px;border-radius:32px;background:#122538 url('/images/doctor_magazine_bg.png') center/cover;color:#fff;box-shadow:0 24px 48px rgba(20,35,44,.15)}.stats-band:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,27,43,.9),rgba(9,27,43,.8))}.stats-band article{padding:0 34px;border-right:1px solid rgba(255,255,255,.16)}.stats-band article:first-child{padding-left:0}.stats-band article:last-child{border-right:0}.stats-band strong{display:block;color:var(--blue-soft);font-family:Hubot,Satoshi,sans-serif;font-size:39px;line-height:1;letter-spacing:-.065em;font-variation-settings:"wdth" 110}.stats-band span{display:block;max-width:220px;margin-top:12px;color:rgba(255,255,255,.7);font-size:16px;line-height:1.35}

.results{background:#fff}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.case-card{position:relative;isolation:isolate;overflow:hidden;min-height:390px;padding:30px;border-radius:32px;background:#122538 center/cover;color:#fff;display:flex;align-items:flex-end;box-shadow:0 18px 40px rgba(20,35,44,.05)}.case-card--cre{background-image:url('/images/clinic_lobby_bg.png')}.case-card--harmony{background-image:url('/images/front_desk_team_bg.png')}.case-card--family{background-image:url('/images/doctor_magazine_bg.png')}.case-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(15,36,54,.15),rgba(4,17,29,.94))}.case-content{width:100%}.case-label{display:inline-flex;margin-bottom:18px;padding:6px 10px;border:1px solid rgba(138,180,248,.36);border-radius:999px;color:var(--blue-soft);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.case-card h3{margin:0 0 4px;font-size:18px;font-weight:700}.case-card strong{display:block;font-family:Hubot,Satoshi,sans-serif;font-size:clamp(35px,3.7vw,55px);font-weight:800;line-height:.97;letter-spacing:-.07em;white-space:nowrap;font-variation-settings:"wdth" 110}.case-card small{display:block;margin-top:10px;color:var(--blue-soft);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.review-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:58px}.review{padding:31px;border:1px solid var(--line);border-radius:32px;background:#fff}.review-stars{color:var(--gold);letter-spacing:.12em}.review blockquote{margin:18px 0 23px;color:var(--copy);font-size:16px;line-height:1.5}.review-by{display:flex;align-items:center;justify-content:space-between;gap:18px;color:#91a0aa;font-size:12px}.review-by strong{color:var(--ink);font-size:15px}.section-cta{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:48px}.section-cta>span{color:#80919d;font-size:13px}

.intent{background:linear-gradient(to bottom,var(--sky),var(--sky-deep))}.intent-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:58px}.intent-step{position:relative;min-height:320px;padding:30px;border:1px solid rgba(36,75,122,.15);border-radius:32px;background:rgba(255,255,255,.5)}.intent-step:not(:last-child):after{content:"→";position:absolute;top:50%;right:-26px;z-index:2;color:var(--blue);font-family:Hubot;font-size:32px;transform:translateY(-50%)}.intent-num{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--blue);font-family:Hubot;font-weight:800}.intent-icon{display:grid;place-items:center;width:45px;height:45px;margin-top:28px;border:1px solid rgba(36,75,122,.14);border-radius:50%;color:var(--blue);font-size:25px}.intent-step h3{margin:20px 0 12px;font-family:Hubot,Satoshi,sans-serif;font-size:28px;line-height:1;letter-spacing:-.06em}.intent-step p{margin:0;color:var(--copy);font-size:16px;line-height:1.45}.intent-tag{display:inline-block;margin-top:25px;color:var(--blue);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.intent-bottom{max-width:920px;margin:30px auto 0;padding:27px 32px;border-radius:32px;background:var(--ink);color:#fff;text-align:center;font-size:20px}.intent-bottom strong{color:var(--blue-soft)}

.comparison{background:#fff}.comparison-table{overflow:hidden;margin:58px auto 0;border:1px solid var(--line);border-radius:32px;background:#fff}.compare-row{display:grid;grid-template-columns:1fr 1fr}.compare-row>div{padding:19px 28px;border-bottom:1px solid var(--line);font-size:17px}.compare-row>div:first-child{border-right:1px solid var(--line)}.compare-row:last-child>div{border-bottom:0}.compare-head{background:var(--ink);color:#fff;font-family:Hubot;font-size:21px}.compare-head>div:first-child{color:var(--blue-soft)}.compare-row:not(.compare-head)>div:first-child:before{content:"✓";display:inline-grid;place-items:center;width:23px;height:23px;margin-right:10px;border-radius:50%;background:#dbeefb;color:var(--blue);font-weight:700}.compare-row:not(.compare-head)>div:last-child{color:#8a9aa4}.compare-row:not(.compare-head)>div:last-child:before{content:"×";display:inline-grid;place-items:center;width:23px;height:23px;margin-right:10px;border-radius:50%;background:#eef2f4;color:#9ca9af;font-weight:700}

.values{padding:112px 0;background:var(--sky)}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.value-card{min-height:390px;padding:30px;border:1px solid rgba(36,75,122,.14);border-radius:32px;background:rgba(255,255,255,.48)}.value-card--dark{background:var(--ink);border-color:var(--ink);color:#fff}.value-num{color:var(--blue);font-family:Hubot;font-size:15px;font-weight:700}.value-card--dark .value-num{color:var(--blue-soft)}.value-icon{display:grid;place-items:center;width:51px;height:51px;margin-top:54px;border:1px solid rgba(36,75,122,.22);border-radius:50%;color:var(--blue);font-size:24px}.value-card--dark .value-icon{border-color:rgba(138,180,248,.4);color:var(--blue-soft)}.value-label{display:block;margin-top:24px;color:var(--blue);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.value-card--dark .value-label{color:var(--blue-soft)}.value-card h3{margin:8px 0 13px;font-family:Hubot,Satoshi,sans-serif;font-size:28px;line-height:1.03;letter-spacing:-.06em}.value-card p{margin:0;color:var(--copy);font-size:16px;line-height:1.45}.value-card--dark p{color:rgba(255,255,255,.67)}

.guarantee{padding:105px 0;background:#fff;border-top:1px solid rgba(203,217,227,.55);border-bottom:1px solid rgba(203,217,227,.55)}.guarantee-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 27px;border:1px solid var(--line);border-radius:50%;color:var(--blue);font-size:30px}.guarantee h2{max-width:920px;margin:0 auto;font-family:Hubot,Satoshi,sans-serif;font-size:clamp(42px,5.2vw,72px);font-weight:800;line-height:1.02;letter-spacing:-.07em;font-variation-settings:"wdth" 110}.guarantee h2 em{color:var(--blue);font-style:italic;font-weight:600}

.faq{padding:112px 0;background:var(--sky)}.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:88px;align-items:start}.faq-layout>.section-intro{margin:0;text-align:left}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-question{display:flex;align-items:center;justify-content:space-between;width:100%;gap:24px;padding:24px 0;border:0;background:transparent;color:var(--ink);text-align:left;font-family:Hubot,Satoshi,sans-serif;font-size:20px;line-height:1.15;letter-spacing:-.04em}.faq-plus{display:grid;place-items:center;flex:0 0 auto;width:31px;height:31px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--blue);font-size:22px;transition:transform .25s ease}.faq-item.open .faq-plus{transform:rotate(45deg)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}.faq-answer p{overflow:hidden;margin:0;color:var(--copy);font-size:16px;line-height:1.5}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-item.open .faq-answer p{margin:0 0 22px}

.final{padding:120px 0 112px;background:var(--ink);color:#fff}.final h2{max-width:930px;margin:0 auto;font-family:Hubot,Satoshi,sans-serif;font-size:clamp(46px,5.7vw,80px);font-weight:800;line-height:.99;letter-spacing:-.075em;font-variation-settings:"wdth" 110}.final h2 em{color:var(--blue-soft);font-style:italic;font-weight:600}.final p{max-width:760px;margin:27px auto 0;color:rgba(255,255,255,.69);font-size:20px;line-height:1.48}.final-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1050px;margin:43px auto 0;padding:0;list-style:none;text-align:left}.final-list li{display:flex;gap:10px;color:rgba(255,255,255,.8);font-size:15px;line-height:1.45}.final-list li:before{content:"✓";display:grid;place-items:center;width:23px;height:23px;flex:0 0 auto;border-radius:50%;background:var(--blue-soft);color:var(--ink);font-weight:800}.final .button{margin-top:38px}.reassure{display:block;margin-top:12px;color:rgba(255,255,255,.53);font-size:13px}.footer{padding:29px 0;background:var(--ink);color:rgba(255,255,255,.57);border-top:1px solid rgba(255,255,255,.12);font-size:13px}.footer-inner{display:flex;justify-content:space-between;gap:24px}.footer-links{display:flex;gap:15px}.footer-links span{color:rgba(255,255,255,.25)}.footer a:hover{color:#fff}

.booking-page{min-height:100vh;background:var(--sky)}.booking-hero{padding:60px 0 95px}.booking-shell{width:min(1240px,calc(100% - 64px));margin:0 auto}.back-link{display:inline-flex;gap:8px;margin-bottom:32px;color:var(--blue);font-size:14px}.booking-card{padding:68px 66px;border-radius:32px;background:var(--ink);color:#fff}.booking-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.booking h1{margin:0;font-family:Hubot;font-size:clamp(45px,5.4vw,75px);line-height:.98;letter-spacing:-.075em}.booking-quote{margin-top:32px;padding:25px;border-left:2px solid var(--blue-soft);background:rgba(255,255,255,.06);color:rgba(255,255,255,.78);font-size:17px}.booking-stars{color:var(--gold)}.booking-quote cite{display:block;margin-top:17px;color:rgba(255,255,255,.55);font-size:13px;font-style:normal}.calendar-card{min-height:660px;padding:12px;border-radius:28px;background:#fff}.calendar-card iframe{display:block;width:100%;min-height:632px;border:0;border-radius:20px;background:#fff}.thank-you{min-height:100vh;display:grid;place-items:center;padding:40px;background:var(--sky)}.thank-card{max-width:650px;padding:66px 48px;border-radius:32px;background:var(--ink);color:#fff;text-align:center}.success-mark{width:72px;height:72px;display:grid;place-items:center;margin:0 auto;border-radius:50%;background:var(--blue-soft);color:var(--ink)}.legal-page{min-height:100vh;padding:80px 0;background:var(--sky)}.legal-card{max-width:900px;margin:60px auto 0;padding:50px;border-radius:32px;background:#fff}.legal-card h1{margin:0 0 36px;font-family:Hubot;font-size:clamp(48px,6vw,78px);line-height:.95;letter-spacing:-.07em}.legal-card h2{margin:32px 0 9px;font-family:Hubot;font-size:26px}.legal-card p{color:var(--copy)}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(max-width:900px){.container{width:min(calc(100% - 42px),720px)}.section{padding:86px 0}.hero-card{width:calc(100% - 40px);min-height:800px}.hero-content{min-height:800px;padding:135px 38px 170px}.hero-copy{width:100%;max-width:730px}.hero-card h1{font-size:clamp(44px,6.1vw,66px)}.hero-logos{padding:19px 22px}.hero-logo-set{gap:28px;padding-right:28px}.hero-logo-set img{width:105px;height:27px}.stats-band{grid-template-columns:1fr;padding:29px 32px;gap:20px}.stats-band article{padding:0 0 20px;border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}.stats-band article:last-child{padding-bottom:0;border-bottom:0}.case-grid,.value-grid{grid-template-columns:repeat(2,1fr)}.case-grid .case-card:last-child{grid-column:1/-1}.intent-flow{grid-template-columns:1fr;gap:42px}.intent-step:not(:last-child):after{content:"↓";top:auto;right:auto;bottom:-35px;left:50%;transform:translateX(-50%)}.faq-layout,.booking-layout{grid-template-columns:1fr;gap:50px}.faq-layout>.section-intro{text-align:center}.faq-layout>.section-intro .section-lead{margin-left:auto;margin-right:auto}.final-list{grid-template-columns:1fr;max-width:700px}.booking-card{padding:48px 38px}}
@media(max-width:600px){body{font-size:16px}.container{width:calc(100% - 28px)}.hero-wrap{padding-top:24px}.hero-card{width:calc(100% - 24px);min-height:850px;border-radius:26px}.hero-nav{top:18px;left:20px;right:20px}.hero-brand{font-size:19px}.hero-brand svg{width:20px}.hero-nav__button{min-height:45px;padding:0 16px;font-size:13px}.desktop-label{display:none}.mobile-label{display:inline}.hero-content{min-height:850px;padding:105px 22px 156px}.hero-card h1{font-size:clamp(39px,10.6vw,52px);line-height:1.01}.hero-card h1 em{white-space:normal}.hero-sub{font-size:17px}.rating-pill{gap:7px;margin-bottom:24px;padding:9px 13px;font-size:12px}.hero-logos{padding:16px 15px}.hero-logo-set{gap:20px;padding-right:20px}.hero-logo-set img{width:78px;height:21px}.stats-wrap{padding:22px 0 56px}.stats-wrap .container{width:calc(100% - 28px)}.stats-band{border-radius:26px;padding:25px 23px}.stats-band strong{font-size:34px}.stats-band span{font-size:13px}.section{padding:72px 0}.section-intro{margin-bottom:40px}.section-heading{font-size:clamp(39px,11.4vw,56px)}.section-lead{font-size:17px}.case-grid,.review-grid,.value-grid{grid-template-columns:1fr;gap:16px}.case-grid .case-card:last-child{grid-column:auto}.case-card{min-height:330px;border-radius:26px;padding:25px}.case-card strong{font-size:42px}.review{padding:24px;border-radius:26px}.review blockquote{font-size:16px}.section-cta{margin-top:40px}.intent-step{min-height:285px;padding:25px;border-radius:26px}.intent-bottom{padding:22px 18px;border-radius:26px;font-size:17px}.comparison{padding:72px 0}.comparison-table{margin-top:42px;border-radius:25px}.compare-row>div{padding:16px 12px;font-size:13px}.compare-head{font-size:16px}.compare-row:not(.compare-head)>div:first-child:before,.compare-row:not(.compare-head)>div:last-child:before{width:19px;height:19px;margin-right:5px}.value-card{min-height:340px;padding:25px;border-radius:26px}.value-card h3{font-size:26px}.guarantee{padding:88px 0}.guarantee h2{font-size:clamp(40px,11vw,57px)}.faq{padding:74px 0}.faq-question{font-size:17px}.final{padding:88px 0 78px}.final p{font-size:17px}.footer-inner{align-items:flex-start;flex-direction:column}.booking-hero{padding:24px 0 50px}.booking-card{padding:38px 22px;border-radius:26px}.booking h1{font-size:clamp(43px,12vw,62px)}.calendar-card{min-height:530px;padding:7px}.calendar-card iframe{min-height:515px}.legal-page{padding:30px 0 60px}.legal-card{padding:28px 20px;margin-top:35px}.legal-card h1{font-size:clamp(44px,12vw,65px)}}

/* Reference homepage system: inset hero, layered navy surfaces, and the dark image-card grid. */
.hero-wrap{padding:0;background:#fff;overflow:hidden}.hero-frame{position:relative;isolation:isolate;overflow:hidden;width:calc(100% - 64px);min-height:900px;margin:0 auto;border-radius:0 0 32px 32px;background:#14232c;color:#fff}.hero-bg{position:absolute;inset:0;z-index:-3;background:#14232c url('/images/hero_video_poster.jpg') center/cover no-repeat;filter:brightness(.52) contrast(1.08)}.hero-sheen{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#14232c 0%,rgba(20,35,44,.98) 26%,rgba(20,35,44,.7) 55%,rgba(20,35,44,.18) 100%),linear-gradient(180deg,rgba(20,35,44,.03) 45%,rgba(20,35,44,.9) 100%)}.site-nav{position:absolute;z-index:5;top:24px;left:34px;right:34px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:9px;color:#fff;font-family:Hubot,Satoshi,sans-serif;font-size:18px;font-weight:800;letter-spacing:-.045em}.brand svg{width:19px;height:19px}.nav-cta{min-height:47px!important;padding:0 23px!important;font-size:13px}.hero-content{position:relative;z-index:2;display:flex;align-items:center;min-height:900px;padding:155px 60px 178px}.hero-copy{width:min(710px,68%)}.rating-pill{display:inline-flex;align-items:center;gap:10px;margin-bottom:28px;padding:10px 18px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.1);font-size:14px;backdrop-filter:blur(12px)}.rating-pill strong{font-weight:700}.rating-pill .stars{color:var(--gold);letter-spacing:.1em}.google-mark{color:#4285f4;font-weight:900}.hero-frame h1{max-width:700px;margin:0;font-family:Hubot,Satoshi,sans-serif;font-size:clamp(46px,4.65vw,76px);font-weight:800;line-height:1.02;letter-spacing:-.075em;font-variation-settings:"wdth" 110}.hero-frame h1 em{position:relative;display:inline-block;color:#fff;font-style:italic;font-weight:600;white-space:nowrap}.hero-frame h1 em:after{content:"";position:absolute;right:0;bottom:-13px;left:2px;height:11px;border-bottom:3px solid var(--blue-soft);border-radius:50%;transform:rotate(-2deg)}.hero-sub{max-width:550px;margin:25px 0 0;color:rgba(255,255,255,.8);font-size:19px;line-height:1.43}.hero-actions{margin-top:27px}.hero-reassure{margin:10px 0 0;color:rgba(255,255,255,.56);font-size:12px}.logo-bar{position:absolute;z-index:4;right:0;bottom:0;left:0;padding:19px 38px 21px;border-top:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(10,25,37,0),rgba(10,25,37,.76))}.logo-window{overflow:hidden;width:100%}.logo-track{display:flex;width:max-content;animation:reference-marquee 15s linear infinite;will-change:transform;backface-visibility:hidden}.logo-set{display:flex;align-items:center;gap:48px;flex:0 0 auto;padding-right:48px}.logo-set img{width:126px;height:30px;object-fit:contain;filter:brightness(0) invert(1);opacity:.68}.logo-bar:hover .logo-track{animation-play-state:paused}@keyframes reference-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.stats-section{padding:80px 24px;background:linear-gradient(to bottom,var(--sky),var(--sky-deep))}.stats-band{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:repeat(3,1fr);width:min(1400px,100%);min-height:292px;margin:0 auto;padding:60px 56px;border-radius:32px;background:#122538;color:#fff;box-shadow:0 24px 48px rgba(20,35,44,.15)}.stats-texture{position:absolute;inset:0;z-index:-2;background:#122538 url('/images/doctor_magazine_bg.png') center/cover;filter:grayscale(100%) brightness(.62) contrast(1.15);opacity:.7;mix-blend-mode:screen}.stats-band:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,23,36,.88),rgba(8,23,36,.76))}.stats-band article{display:flex;flex-direction:column;justify-content:center;padding:0 40px;border-right:1px solid rgba(255,255,255,.15)}.stats-band article:first-of-type{padding-left:0}.stats-band article:last-of-type{border-right:0;padding-right:0}.stats-band strong{display:inline;font-family:Hubot,Satoshi,sans-serif;color:var(--blue-soft);font-size:33px;line-height:1;letter-spacing:-.065em;font-variation-settings:"wdth" 110}.stats-band h3{display:inline;margin:0 0 10px;color:#fff;font-family:Hubot,Satoshi,sans-serif;font-size:26px;line-height:1.05;letter-spacing:-.06em}.stats-band article>strong+h3{margin-top:0}.stats-band p{max-width:300px;margin:0;color:rgba(255,255,255,.7);font-size:16px;line-height:1.45}.dark-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.features-section{padding:112px 0}.dark-feature{position:relative;isolation:isolate;overflow:hidden;min-height:302px;border:1px solid rgba(255,255,255,.08);border-radius:32px;background:#122538;color:#fff;box-shadow:0 20px 50px rgba(20,35,44,.15),inset 0 1px 0 rgba(255,255,255,.08);transition:transform .45s ease,box-shadow .45s ease,border-color .45s ease}.dark-feature:hover{transform:translateY(-7px);border-color:rgba(138,180,248,.6);box-shadow:0 32px 64px rgba(36,75,122,.22)}.feature-atmosphere{position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,#122538,#0d1b2a 58%,#08101a),var(--card-image) center/cover no-repeat;filter:none}.feature-atmosphere:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,17,29,.28),rgba(3,14,25,.92)),var(--card-image) center/cover no-repeat;filter:grayscale(100%) brightness(.75) contrast(1.15);mix-blend-mode:screen;opacity:.72}.feature-content{position:relative;z-index:1;display:flex;height:100%;min-height:302px;flex-direction:column;justify-content:flex-end;padding:30px 32px}.feature-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:auto;border:1px solid rgba(255,255,255,.12);border-radius:50%;color:#fff;font-size:24px;background:rgba(255,255,255,.03)}.feature-content h3{max-width:290px;margin:0 0 12px;font-family:Hubot,Satoshi,sans-serif;font-size:27px;line-height:1.02;letter-spacing:-.065em}.feature-content p{max-width:290px;margin:0;color:rgba(255,255,255,.68);font-size:16px;line-height:1.45}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.result-card{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end;min-height:340px;border-radius:32px;background:#122538;color:#fff;box-shadow:0 12px 30px rgba(20,35,44,.08)}.card-atmosphere{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,21,35,.14),rgba(4,17,29,.94)),var(--card-image) center/cover no-repeat;filter:grayscale(100%) brightness(.78) contrast(1.1)}.result-content{width:100%;padding:30px 32px}.result-tag{display:inline-flex;margin-bottom:18px;padding:6px 11px;border-radius:999px;background:rgba(138,180,248,.1);color:var(--blue-soft);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.result-content h3{margin:0 0 4px;font-size:21px}.result-content strong{display:block;font-family:Hubot,Satoshi,sans-serif;font-size:clamp(39px,3.1vw,56px);line-height:.96;letter-spacing:-.07em;white-space:nowrap}.result-content small{display:block;margin-top:11px;color:var(--blue-soft);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.review-grid{margin-top:48px}.review{border-radius:32px;background:#fff}.intent-section{padding:112px 0}.intent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:58px}.intent-grid article{position:relative;min-height:325px;padding:30px;border:1px solid rgba(255,255,255,.1);border-radius:32px;background:linear-gradient(145deg,#17324c,#0c1d30);box-shadow:0 20px 50px rgba(20,35,44,.13);color:#fff}.intent-grid article:not(:last-child):after{content:"→";position:absolute;top:50%;right:-26px;z-index:2;color:var(--blue);font-family:Hubot;font-size:32px;transform:translateY(-50%)}.step-number{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.08);color:var(--blue-soft);font-family:Hubot;font-weight:800}.step-icon{display:grid;place-items:center;width:48px;height:48px;margin-top:25px;border:1px solid rgba(255,255,255,.15);border-radius:50%;font-size:24px}.intent-grid h3{margin:20px 0 10px;font-family:Hubot;font-size:28px;line-height:1;letter-spacing:-.06em}.intent-grid p{margin:0;color:rgba(255,255,255,.68);font-size:16px;line-height:1.45}.intent-grid small{display:block;margin-top:23px;color:var(--blue-soft);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.intent-callout{max-width:920px;margin:30px auto 0;padding:27px 32px;border-radius:32px;background:var(--ink);color:#fff;text-align:center;font-size:20px}.intent-callout strong{color:var(--blue-soft)}.stack-section{padding:112px 0}.stack-list{display:flex;flex-direction:column;gap:56px;max-width:1000px;margin:0 auto}.stack-card{display:flex;min-height:430px;overflow:hidden;border:1px solid #c1d0df;border-radius:32px;background:#fff;box-shadow:0 20px 50px rgba(20,35,44,.05)}.stack-card--reverse{flex-direction:row-reverse}.stack-copy{display:flex;flex:1;flex-direction:column;justify-content:center;gap:13px;padding:48px}.stack-num{color:var(--blue);font-family:Hubot;font-size:15px;font-weight:700}.stack-label{color:var(--blue);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.stack-copy h3{margin:0;color:var(--blue);font-family:Hubot;font-size:clamp(30px,3.3vw,50px);line-height:1.02;letter-spacing:-.065em}.stack-copy p{margin:0;color:var(--copy);font-size:17px;line-height:1.45}.stack-copy .button{align-self:flex-start;margin-top:10px}.stack-image{display:flex;flex:1;align-items:center;justify-content:center;padding:30px;background:#f8fafc}.stack-image img{width:100%;height:100%;min-height:300px;object-fit:contain;border:1px solid rgba(203,217,227,.5);border-radius:26px;background:#091b29;box-shadow:0 24px 50px rgba(20,35,44,.06)}
.faq{padding:112px 0}.final{padding:120px 0 112px}.footer{padding:29px 0}
@media(max-width:900px){.hero-frame{width:calc(100% - 40px);min-height:850px;border-radius:0 0 28px 28px}.site-nav{left:24px;right:24px}.hero-content{min-height:850px;padding:140px 38px 170px}.hero-copy{width:100%;max-width:700px}.hero-frame h1{font-size:clamp(44px,6.1vw,66px)}.stats-section{padding:60px 20px}.stats-band{grid-template-columns:1fr;gap:0;padding:35px 34px}.stats-band article{padding:0 0 22px;margin-bottom:22px;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.stats-band article:last-of-type{padding:0;margin:0;border-bottom:0}.dark-feature-grid,.result-grid,.intent-grid{grid-template-columns:repeat(2,1fr);gap:24px}.dark-feature:last-child,.result-card:last-child{grid-column:1/-1}.intent-grid article:not(:last-child):after{content:"↓";top:auto;right:auto;bottom:-30px;left:50%;transform:translateX(-50%)}.stack-card,.stack-card--reverse{flex-direction:column}.stack-image{min-height:300px}.faq-layout{grid-template-columns:1fr;gap:48px}.faq-layout>.section-intro{text-align:center}.faq-layout>.section-intro .section-lead{margin-left:auto;margin-right:auto}}
@media(max-width:600px){.container{width:calc(100% - 28px)}.hero-frame{width:calc(100% - 24px);min-height:860px;border-radius:0 0 26px 26px}.site-nav{top:18px;left:18px;right:18px}.brand{font-size:17px}.brand svg{width:18px;height:18px}.nav-cta{min-height:44px!important;padding:0 15px!important;font-size:12px}.hero-content{min-height:860px;padding:105px 22px 158px}.hero-copy{width:100%}.rating-pill{gap:7px;margin-bottom:24px;padding:9px 13px;font-size:12px}.hero-frame h1{font-size:clamp(38px,10.6vw,52px);line-height:1.01}.hero-frame h1 em{white-space:normal}.hero-sub{font-size:17px}.logo-bar{padding:16px 15px 18px}.logo-set{gap:20px;padding-right:20px}.logo-set img{width:78px;height:21px}.stats-section{padding:26px 14px 58px}.stats-band{border-radius:26px;padding:27px 23px}.stats-band h3{font-size:24px}.stats-band strong{font-size:32px}.stats-band p{font-size:14px}.features-section,.intent-section,.stack-section{padding:78px 0}.section-intro{margin-bottom:42px}.section-heading{font-size:clamp(38px,11.5vw,56px)}.section-lead{font-size:17px}.dark-feature-grid,.result-grid,.intent-grid{grid-template-columns:1fr;gap:16px}.dark-feature,.feature-content{min-height:310px}.dark-feature:last-child,.result-card:last-child{grid-column:auto}.feature-content{padding:26px}.feature-content h3{font-size:27px}.result-card{min-height:330px;border-radius:26px}.result-content{padding:26px}.result-content strong{font-size:42px}.review-grid{gap:16px;margin-top:32px}.review{padding:24px;border-radius:26px}.review blockquote{font-size:16px}.intent-grid article{min-height:300px;padding:26px;border-radius:26px}.intent-callout{padding:22px 18px;border-radius:26px;font-size:17px}.comparison{padding:78px 0}.comparison-table{margin-top:42px;border-radius:26px}.compare-row>div{padding:16px 12px;font-size:13px}.compare-head{font-size:16px}.stack-list{gap:26px}.stack-card{border-radius:26px}.stack-copy{padding:28px}.stack-copy h3{font-size:34px}.stack-copy p{font-size:16px}.stack-image{padding:18px;min-height:260px}.stack-image img{min-height:220px;border-radius:20px}.guarantee{padding:88px 0}.guarantee h2{font-size:clamp(39px,11vw,57px)}.faq{padding:78px 0}.faq-question{font-size:17px}.final{padding:90px 0 78px}.final p{font-size:17px}.footer-inner{align-items:flex-start;flex-direction:column}}

/* Final alignment pass against the reference homepage measurements. */
.hero-wrap{padding:60px 0 0}.hero-frame{width:calc(100% - 120px);min-height:780px;border-radius:32px}.hero-content{min-height:780px;padding:0 24px;align-items:center}.hero-copy{width:min(760px,68%)}.hero-frame h1{max-width:760px;font-size:clamp(44px,3.62vw,52px);line-height:1.08;letter-spacing:-.07em}.hero-sub{max-width:520px;font-size:16px}.hero-actions{margin-top:24px}.logo-bar{padding:17px 24px 20px}.logo-set{gap:48px;padding-right:48px}.logo-set img{width:126px;height:30px}.stats-section{padding:80px 24px}.stats-band{min-height:292px;padding:56px}.stats-band h3{margin:0 0 12px;font-size:26px;line-height:1.05}.stats-band h3 strong{display:inline;font-size:33px;margin-right:5px}.stats-band p{font-size:16px}.features-section{padding:112px 0}.dark-feature-grid{gap:32px}.result-grid{gap:32px}
@media(max-width:900px){.hero-wrap{padding-top:36px}.hero-frame{width:calc(100% - 48px);min-height:800px;border-radius:30px}.hero-content{min-height:800px;padding:0 24px}.hero-copy{width:100%;max-width:720px}.hero-frame h1{font-size:clamp(42px,5.8vw,58px)}.stats-section{padding:64px 20px}.stats-band{min-height:0;padding:36px 34px}.stats-band article{padding:0 0 22px;margin-bottom:22px}.dark-feature-grid,.result-grid,.intent-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.hero-wrap{padding-top:24px}.hero-frame{width:calc(100% - 46px);min-height:800px;border-radius:28px}.site-nav{top:18px;left:24px;right:24px}.hero-content{min-height:800px;align-items:flex-start;padding:240px 24px 155px}.hero-copy{width:100%}.hero-frame h1{font-size:clamp(35px,9.5vw,45px);line-height:1.06;letter-spacing:-.07em}.hero-frame h1 em{white-space:normal}.hero-sub{font-size:16px;line-height:1.4}.rating-pill{margin-bottom:23px;padding:9px 13px;font-size:12px}.logo-bar{padding:15px 14px 18px}.logo-set{gap:20px;padding-right:20px}.logo-set img{width:78px;height:21px}.stats-section{padding:28px 14px 58px}.stats-band{padding:27px 23px;border-radius:26px}.stats-band h3{font-size:24px}.stats-band h3 strong{font-size:32px}.stats-band p{font-size:14px}}

/* Keep the Hubot/Satoshi type open and readable at the reference card scale. */
.section-heading,.hero-frame h1,.feature-content h3,.result-content h3,.result-content strong,.intent-grid h3,.stack-copy h3,.guarantee h2,.final h2{letter-spacing:-.04em;word-spacing:.015em}.result-content strong{white-space:normal;font-size:clamp(36px,2.8vw,50px)}.result-card:first-child .result-content strong{white-space:nowrap}
@media(max-width:600px){.hero-frame h1{letter-spacing:-.045em}.result-content strong{font-size:39px}.result-card:first-child .result-content strong{white-space:nowrap}}
@media(max-width:600px){.dark-feature-grid,.result-grid,.intent-grid{grid-template-columns:1fr}.dark-feature:last-child,.result-card:last-child{grid-column:auto}.result-content strong{font-size:42px}}
@media(max-width:600px){.hero-content{padding:205px 24px 112px}.hero-frame h1{font-size:32px;line-height:1.06}.hero-frame h1 br{display:none}.hero-sub{font-size:15px;line-height:1.36}.stats-band h3{letter-spacing:-.025em;word-spacing:.045em}.section-heading{letter-spacing:-.03em}}
.stats-band h3{letter-spacing:-.035em;word-spacing:.035em}

/* Final fidelity pass: production hero/video, Google mark, readable metrics, and image-free value cards. */
.hero-bg{overflow:hidden;background:#14232c url('/images/hero_video_poster.jpg') center/cover no-repeat;filter:none}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.48) contrast(1.08);opacity:.92}
.hero-sheen{background:linear-gradient(90deg,rgba(20,35,44,.98) 0%,rgba(20,35,44,.94) 28%,rgba(20,35,44,.64) 60%,rgba(20,35,44,.25) 100%),linear-gradient(180deg,rgba(20,35,44,.04) 42%,rgba(5,18,28,.88) 100%)}
.hero-copy{width:min(1040px,82%)}
.hero-frame h1{max-width:1040px;font-size:clamp(44px,3.45vw,52px);line-height:1.08;letter-spacing:-.055em}
.hero-sub{max-width:680px}
.rating-pill{gap:11px;padding:10px 18px;background:rgba(255,255,255,.105);border-color:rgba(255,255,255,.2);font-size:14px}
.rating-pill .google-mark{display:block;width:16px;height:16px;flex:0 0 16px}
.hero-cta-stack{display:flex;flex-direction:column;align-items:center;width:min(100%,560px);margin-top:25px}
.hero-cta-stack .hero-actions{margin-top:0}
.hero-cta-stack .hero-reassure{margin-top:12px;text-align:center}
.stats-band h3{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:10px;row-gap:8px;margin:0 0 12px;font-size:24px;line-height:1.08;letter-spacing:-.035em}
.stats-band h3 strong{display:inline;font-size:35px;line-height:1;white-space:nowrap;letter-spacing:-.06em}
.stats-band h3 span{display:inline;max-width:230px;margin:0;color:#fff;font-family:Hubot,Satoshi,sans-serif;font-size:24px;line-height:1.08;letter-spacing:-.035em}
.stats-band p{max-width:300px}
.stack-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:1200px}
.stack-card{display:block;min-height:0;border-radius:32px;background:#fff}
.stack-copy{min-height:420px;padding:36px;gap:13px}
.stack-copy h3{font-size:clamp(28px,2.35vw,38px);line-height:1.04}
.stack-copy p{font-size:16px}
.stack-copy .button{margin-top:auto}
.stack-image,.stack-card--reverse{display:none}
@media(max-width:900px){.hero-copy{width:100%}.hero-frame h1{max-width:780px}.stack-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.stack-copy{min-height:360px;padding:28px}.stack-copy h3{font-size:32px}.stats-band h3 span{max-width:unset}}
@media(max-width:600px){.hero-video{filter:brightness(.42) contrast(1.08)}.hero-copy{width:100%}.hero-frame h1{font-size:32px;line-height:1.06;letter-spacing:-.045em}.hero-cta-stack{width:100%;margin-top:22px}.rating-pill{gap:7px;padding:9px 13px;font-size:12px}.rating-pill .google-mark{width:14px;height:14px;flex-basis:14px}.stats-band h3{display:block;font-size:23px}.stats-band h3 strong{font-size:32px;margin-right:8px}.stats-band h3 span{font-size:23px}.stack-list{grid-template-columns:1fr;gap:16px}.stack-copy{min-height:330px;padding:28px}.stack-copy h3{font-size:34px}}

/* Precision pass: use the same scale, density, and layered surfaces as the production homepage. */
.hero-frame{min-height:780px}
.hero-content{min-height:780px;padding:150px 24px 128px;align-items:center}
.hero-copy{width:min(1160px,92%)}
.hero-frame h1{max-width:1160px;font-size:clamp(52px,4.4vw,64px);line-height:1.03;letter-spacing:-.055em}
.hero-sub{max-width:760px;margin-top:27px;font-size:19px;line-height:1.43}
.hero-cta-stack{width:100%;align-items:center;margin-top:27px}
.hero-cta-stack .hero-actions{margin-top:0}
.hero-cta-stack .hero-reassure{margin-top:12px;text-align:center}
.stats-section{padding:58px 24px 78px}
.stats-band{min-height:264px;padding:48px 56px;background:#122538}
.stats-texture{z-index:0;opacity:.86;mix-blend-mode:screen;filter:grayscale(100%) brightness(.7) contrast(1.12)}
.stats-band:after{z-index:1;background:linear-gradient(90deg,rgba(8,23,36,.68),rgba(8,23,36,.58))}
.stats-band article{position:relative;z-index:2}
.stats-band h3{align-items:center;column-gap:13px;margin:0 0 14px;font-size:24px;line-height:1.08}
.stats-band h3 strong{font-size:39px;line-height:1;align-self:center}
.stats-band h3 span{max-width:220px;color:rgba(255,255,255,.92);font-size:23px;line-height:1.08}
.stats-band p{max-width:290px;color:rgba(255,255,255,.72)}
.intent-section{padding:104px 0}
.intent-grid{margin-top:52px}
.intent-grid article{min-height:278px;padding:30px}
.intent-grid article h3{margin:27px 0 12px}
.intent-grid article p{max-width:31ch}
.comparison{padding:112px 0 120px}
.comparison-table{max-width:1040px;margin:52px auto 0;border-color:#bfd0df;box-shadow:0 24px 60px rgba(20,35,44,.07)}
.compare-row>div{display:flex;align-items:center;min-height:64px;padding:18px 30px}
.compare-head>div{min-height:70px;font-size:22px}
.compare-row:not(.compare-head):nth-child(odd)>div:first-child{background:rgba(223,235,245,.32)}
.compare-row:not(.compare-head):nth-child(even)>div:first-child{background:rgba(223,235,245,.15)}
.compare-row:not(.compare-head)>div:last-child{background:#fff}
.stack-section{padding:104px 0 112px}
.stack-list{gap:24px}
.stack-card{min-height:0}
.stack-copy{min-height:350px;justify-content:flex-start;padding:36px}
.stack-copy h3{font-size:clamp(28px,2.45vw,38px)}
.stack-copy p{max-width:34ch}
.stack-cta{margin-top:38px}
.guarantee{padding:96px 0 104px}
.guarantee-badge{display:inline-flex;align-items:center;gap:9px;margin:0 auto 27px;padding:9px 16px;border:1px solid rgba(255,255,255,.75);border-color:rgba(203,217,227,.95);border-radius:999px;background:rgba(255,255,255,.74);color:var(--blue);box-shadow:0 8px 30px rgba(36,75,122,.06)}
.guarantee-badge svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.guarantee-badge svg circle{fill:currentColor;stroke:none}
.guarantee-badge span{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.guarantee h2{max-width:930px}
.guarantee-accent{color:var(--blue);font-style:italic;font-weight:600}
.guarantee-copy{max-width:680px;margin:24px auto 0;color:var(--copy);font-size:19px;line-height:1.5}
.faq{padding:108px 0 116px}
.faq-layout{gap:74px}
.faq-layout>.section-intro{padding-top:6px}
.faq-layout>.section-intro .section-lead{max-width:320px;margin:23px 0 0;font-size:18px}

@media(max-width:900px){
  .hero-content{min-height:800px;padding:132px 38px 130px}
  .hero-copy{width:100%;max-width:980px}
  .hero-frame h1{max-width:900px;font-size:clamp(46px,6.1vw,62px)}
  .hero-cta-stack{width:100%}
  .stats-section{padding:54px 20px 66px}
  .stats-band{min-height:0;padding:38px 34px}
  .stats-band h3{align-items:center}
  .stats-band article{padding:0 0 24px;margin-bottom:24px}
  .stats-band article:last-of-type{padding:0;margin:0}
  .intent-section,.comparison,.stack-section,.faq{padding-top:86px;padding-bottom:92px}
  .comparison-table{margin-top:42px}
  .stack-copy{min-height:310px;padding:30px}
}

@media(max-width:600px){
  .hero-frame{min-height:800px}
  .hero-content{min-height:800px;padding:154px 24px 124px;align-items:flex-start}
  .hero-copy{width:100%}
  .hero-frame h1{max-width:100%;font-size:clamp(37px,10.4vw,48px);line-height:1.04;letter-spacing:-.045em}
  .hero-sub{max-width:100%;margin-top:22px;font-size:16px}
  .hero-cta-stack{margin-top:24px}
  .stats-section{padding:32px 14px 56px}
  .stats-band{padding:28px 23px;border-radius:26px}
  .stats-band h3{display:flex;font-size:22px;line-height:1.08}
  .stats-band h3 strong{font-size:34px}
  .stats-band h3 span{font-size:21px;max-width:190px}
  .stats-band p{font-size:14px}
  .intent-grid article{min-height:244px;padding:26px}
  .intent-grid article h3{margin-top:23px;font-size:26px}
  .intent-grid article p{font-size:15px}
  .comparison{padding-top:76px;padding-bottom:82px}
  .comparison-table{margin-top:34px;border-radius:25px}
  .compare-row>div{min-height:58px;padding:14px 12px;font-size:13px}
  .compare-head>div{min-height:58px;font-size:16px}
  .compare-row:not(.compare-head)>div:first-child:before,.compare-row:not(.compare-head)>div:last-child:before{width:19px;height:19px;margin-right:6px;flex:0 0 19px}
  .stack-section{padding:76px 0 84px}
  .stack-list{gap:16px}
  .stack-copy{min-height:292px;padding:28px}
  .stack-copy h3{font-size:32px}
  .stack-copy p{font-size:16px}
  .stack-cta{margin-top:30px}
  .guarantee{padding:78px 0 84px}
  .guarantee-badge{margin-bottom:23px}
  .guarantee h2{font-size:clamp(39px,10.8vw,55px)}
  .guarantee-copy{padding:0 8px;font-size:17px}
  .faq{padding:76px 0 84px}
  .faq-layout{gap:40px}
  .faq-layout>.section-intro .section-lead{max-width:560px;margin-left:auto;margin-right:auto;font-size:17px}
}

/* Hero refinement: let the copy determine the frame height and keep every breakpoint calm. */
.hero-frame{min-height:0;height:auto}
.hero-content{min-height:0;padding:150px 24px 112px;align-items:flex-start}
.hero-copy{width:min(1160px,92%);max-width:1160px}
.hero-frame h1{max-width:1160px;font-size:clamp(52px,4.4vw,64px);line-height:1.03;letter-spacing:-.055em}
.hero-sub{max-width:760px;margin-top:25px;font-size:19px;line-height:1.43}
.hero-cta-stack{width:auto;align-items:flex-start;margin-top:25px}
.hero-cta-stack .hero-reassure{text-align:left}
.logo-bar{padding:19px 38px 23px;border-top:0;background:linear-gradient(180deg,rgba(10,25,37,0),rgba(10,25,37,.84))}
.logo-set{gap:54px;padding-right:54px}
.logo-set img{width:142px;height:34px;opacity:.76}
.brand svg{width:21px;height:21px}

@media(max-width:900px){
  .hero-content{padding:132px 38px 108px}
  .hero-copy{width:100%;max-width:980px}
  .hero-frame h1{max-width:900px;font-size:clamp(46px,6.1vw,62px)}
  .hero-cta-stack{width:auto}
  .logo-bar{padding:18px 24px 22px}
  .logo-set{gap:36px;padding-right:36px}
  .logo-set img{width:116px;height:30px}
}

@media(max-width:600px){
  .hero-frame{min-height:0}
  .hero-content{min-height:0;padding:128px 24px 106px;align-items:flex-start}
  .hero-copy{width:100%;max-width:none}
  .hero-frame h1{max-width:100%;font-size:clamp(37px,10.4vw,48px);line-height:1.04;letter-spacing:-.045em}
  .hero-sub{max-width:100%;margin-top:21px;font-size:16px;line-height:1.4}
  .hero-cta-stack{width:auto;margin-top:23px;align-items:flex-start}
  .hero-cta-stack .hero-reassure{white-space:nowrap;font-size:11px}
  .logo-bar{padding:16px 15px 19px}
  .logo-set{gap:23px;padding-right:23px}
  .logo-set img{width:88px;height:24px}
  .brand svg{width:19px;height:19px}
}

/* Booking route mirrors the production booking surface: pale canvas, clear value column, and navy calendar panel. */
.booking-page{min-height:100vh;background:linear-gradient(180deg,#dfebf5 0%,#d2e2ef 100%);color:var(--ink)}
.booking-nav{width:min(1240px,calc(100% - 64px));margin:0 auto;padding:25px 0 21px}
.booking-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-family:Hubot,Satoshi,sans-serif;font-size:23px;font-weight:800;letter-spacing:-.055em}
.booking-brand svg{width:28px;height:28px}
.booking-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:58px;width:min(1240px,calc(100% - 64px));margin:0 auto;padding:30px 0 80px}
.booking-copy{display:flex;flex-direction:column;align-items:flex-start;gap:21px;padding-top:2px}
.booking-copy h1{max-width:630px;margin:0;color:var(--ink);font-family:Hubot,Satoshi,sans-serif;font-size:clamp(43px,4.15vw,61px);line-height:.99;letter-spacing:-.075em}
.booking-copy h1 span{color:var(--blue);font-weight:600}
.booking-copy>p{max-width:680px;margin:0;color:rgba(20,35,44,.84);font-size:17px;line-height:1.5}
.booking-checks{display:flex;flex-direction:column;gap:14px;width:100%;margin:1px 0 0;padding:0;list-style:none}
.booking-checks li{display:flex;align-items:flex-start;gap:14px;color:var(--ink);font-size:14px;line-height:1.4}
.booking-checks i{display:grid;place-items:center;flex:0 0 21px;width:21px;height:21px;border:1px solid rgba(87,155,252,.55);border-radius:50%;background:rgba(87,155,252,.12);color:#579bfc;font-style:normal;font-size:13px;box-shadow:0 0 10px rgba(87,155,252,.16)}
.booking-why{width:100%;margin-top:3px;padding:20px 27px 22px;border-radius:28px;background:#122538;color:#fff;box-shadow:0 16px 36px rgba(20,35,44,.16)}
.booking-why h2{margin:0 0 11px;font-family:Hubot,Satoshi,sans-serif;font-size:25px;letter-spacing:-.055em}
.booking-why p{margin:0;color:rgba(255,255,255,.78);font-size:14px;line-height:1.55}
.booking-calendar-shell{min-width:0}
.booking-calendar{overflow:hidden;border-radius:30px;background:#122538;color:#fff;box-shadow:0 24px 60px rgba(18,37,56,.3)}
.calendar-title{display:flex;flex-direction:column;align-items:center;padding:34px 28px 22px;border-bottom:1px solid rgba(255,255,255,.08);text-align:center}
.calendar-title h2{margin:0;font-family:Hubot,Satoshi,sans-serif;font-size:32px;letter-spacing:-.065em}
.calendar-pill{display:flex;align-items:center;gap:9px;margin-top:12px;padding:8px 16px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.78);font-size:13px;font-weight:700}
.calendar-pill .clock{color:#579bfc;font-size:17px;line-height:1}.calendar-pill b{color:rgba(255,255,255,.3)}.calendar-pill span:last-child{color:#579bfc}
.calendar-content{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(190px,.74fr);gap:26px;padding:24px 28px 30px}
.calendar-month{display:flex;align-items:center;justify-content:space-between;padding:0 3px 16px}.calendar-month strong{font-family:Hubot,Satoshi,sans-serif;font-size:14px;letter-spacing:.13em;text-transform:uppercase}.calendar-month button{display:grid;place-items:center;width:33px;height:33px;border:0;border-radius:50%;background:rgba(255,255,255,.07);color:#fff;font-size:27px;line-height:1}.calendar-month button:last-child{color:#579bfc}
.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;text-align:center}.calendar-weekdays{padding:0 0 13px;color:rgba(255,255,255,.45);font-size:11px;font-weight:800;letter-spacing:.06em}.calendar-days{align-items:center}.calendar-days button,.calendar-days span{display:grid;place-items:center;width:34px;height:34px;margin:0 auto;border:0;border-radius:50%;background:transparent;color:rgba(255,255,255,.46);font-size:14px}.calendar-days button{cursor:pointer}.calendar-days button.available{background:rgba(87,155,252,.95);color:#071b2b;font-weight:800}.calendar-days button.active{background:#579bfc;color:#061625;font-weight:900;box-shadow:0 0 0 2px #fff}.calendar-days .muted{color:rgba(255,255,255,.15)}
.calendar-timezone{display:flex;align-items:flex-start;gap:10px;margin-top:24px;color:rgba(255,255,255,.46);font-size:12px}.calendar-timezone>span{color:#579bfc}.calendar-timezone div{display:flex;flex-direction:column;gap:5px}.calendar-timezone strong{color:#fff;font-size:12px}.calendar-timezone div span{color:rgba(255,255,255,.78)}.calendar-timezone>b{margin-left:auto;color:#579bfc}
.calendar-slots{display:flex;flex-direction:column;gap:10px;padding-top:4px}.selected-date{padding:10px 13px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(255,255,255,.045);color:#579bfc;font-size:12px;font-weight:800;letter-spacing:.06em}.time-option,.continue-live{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.045);color:#fff;text-align:left;font-size:17px;transition:background .2s ease,border-color .2s ease,transform .2s ease}.time-option:hover,.time-option.chosen{border-color:#579bfc;background:#579bfc;color:#071b2b;transform:translateY(-1px)}.time-option span{color:rgba(255,255,255,.42)}.time-option:hover span,.time-option.chosen span{color:#071b2b}.continue-live{justify-content:center;gap:8px;margin-top:4px;border-color:rgba(138,180,248,.45);background:transparent;color:#8ab4f8;font-size:12px;font-weight:800}.continue-live:hover{background:#8ab4f8;color:#071b2b}
.booking-footer{display:flex;flex-direction:column;align-items:center;gap:12px;padding:38px 24px 44px;background:#07111c;color:rgba(255,255,255,.56);text-align:center}.booking-footer-brand{display:flex;align-items:center;gap:9px;color:#fff;font-family:Hubot;font-size:19px;font-weight:800}.booking-footer-brand svg{width:22px;height:22px}.booking-footer nav{display:flex;gap:14px;font-size:12px}.booking-footer nav span{color:rgba(255,255,255,.25)}.booking-footer small{font-size:12px}
.live-modal{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:20px;background:rgba(4,15,25,.72);backdrop-filter:blur(8px)}.live-modal[hidden]{display:none}.live-modal-inner{position:relative;width:min(900px,100%);height:min(760px,90vh);overflow:hidden;border-radius:24px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.35)}.live-modal iframe{width:100%;height:100%;border:0}.live-close{position:absolute;z-index:2;top:10px;right:12px;width:35px;height:35px;border:0;border-radius:50%;background:#122538;color:#fff;font-size:24px;line-height:1}
@media(max-width:980px){.booking-main{grid-template-columns:1fr;gap:36px}.booking-copy h1{max-width:780px}.booking-calendar-shell{max-width:800px;width:100%;margin:0 auto}}
@media(max-width:600px){.booking-nav{width:calc(100% - 32px);padding:20px 0 15px}.booking-brand{font-size:19px}.booking-brand svg{width:23px;height:23px}.booking-main{width:calc(100% - 32px);padding:18px 0 56px;gap:32px}.booking-copy{gap:18px}.booking-copy h1{font-size:clamp(42px,11.4vw,56px)}.booking-copy>p{font-size:16px}.booking-checks{gap:13px}.booking-checks li{font-size:13px}.booking-why{padding:21px 23px 23px;border-radius:26px}.booking-why h2{font-size:24px}.booking-why p{font-size:13px}.booking-calendar{border-radius:28px}.calendar-title{padding:28px 18px 20px}.calendar-title h2{font-size:29px}.calendar-pill{gap:7px;font-size:11px;padding:8px 13px}.calendar-content{grid-template-columns:1fr;gap:22px;padding:21px 17px 24px}.calendar-month{padding-bottom:13px}.calendar-weekdays,.calendar-days{gap:5px}.calendar-days button,.calendar-days span{width:32px;height:32px;font-size:13px}.calendar-timezone{margin-top:19px}.calendar-slots{padding-top:0}.time-option{font-size:16px}.booking-footer{padding:34px 18px 39px}}

/* Live availability and booking form: the demo uses the same production
   calendar feed and booking handoff as the main booking page. */
.calendar-view{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(190px,.74fr);gap:24px;min-width:0}.calendar-date-panel,.calendar-slots-side{min-width:0}.calendar-slots-side{display:flex;flex-direction:column;gap:10px}.calendar-status{display:flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.03);color:rgba(255,255,255,.54);font-size:11px;font-weight:700;text-align:center}.calendar-status[hidden]{display:none!important}.calendar-status.is-error{border-color:rgba(240,120,120,.38);color:#ffb4b4}.calendar-spinner{width:17px;height:17px;border:2px solid #579bfc;border-top-color:transparent;border-radius:50%;animation:calendar-spin .7s linear infinite;flex:0 0 auto}@keyframes calendar-spin{to{transform:rotate(360deg)}}.calendar-no-slots{display:flex;align-items:center;justify-content:center;min-height:120px;padding:18px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(255,255,255,.02);color:rgba(255,255,255,.54);font-size:11px;font-weight:650;line-height:1.5;text-align:center}.calendar-form-view[hidden],.calendar-view[hidden]{display:none!important}.calendar-form-view{display:flex;flex-direction:column;gap:16px}.selected-time-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(0,0,0,.25);color:rgba(255,255,255,.64);font-size:12px}.selected-time-summary strong{color:#579bfc;font-weight:850}.change-time{border:0;background:transparent;color:#579bfc;font-size:11px;font-weight:800;cursor:pointer}.change-time:hover{text-decoration:underline}.calendar-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 15px}.calendar-form-grid label{display:flex;flex-direction:column;gap:6px;color:rgba(255,255,255,.82);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.calendar-form-grid label span{color:#e2445c}.calendar-form-grid label.full{grid-column:1/-1}.calendar-form-grid input,.calendar-form-grid select{width:100%;min-height:42px;padding:0 12px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:rgba(0,0,0,.3);color:#fff;font:600 13px Satoshi,system-ui,sans-serif;letter-spacing:0;text-transform:none;outline:0}.calendar-form-grid input:focus,.calendar-form-grid select:focus{border-color:#579bfc;box-shadow:0 0 0 3px rgba(87,155,252,.12)}.calendar-form-grid input::placeholder{color:rgba(255,255,255,.34)}.calendar-form-grid select{appearance:auto;color-scheme:dark}.calendar-form-error{margin:0;color:#ffb4b4;font-size:12px;font-weight:700;line-height:1.45}.calendar-submit{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;border:1px solid #579bfc;border-radius:999px;background:#579bfc;color:#071b2b;font:850 14px Satoshi,system-ui,sans-serif;cursor:pointer;transition:filter .2s ease,transform .2s ease}.calendar-submit:hover{filter:brightness(1.08);transform:translateY(-1px)}.calendar-submit:disabled{cursor:wait;opacity:.65;transform:none}.calendar-form-note{margin:0;color:rgba(255,255,255,.42);font-size:11px;line-height:1.45;text-align:center}@media(max-width:600px){.calendar-view{grid-template-columns:1fr;gap:20px}.calendar-form-grid{grid-template-columns:1fr}.calendar-form-grid label.full{grid-column:auto}.calendar-form-view{gap:14px}.calendar-slots-side{gap:9px}.calendar-status{min-height:38px}.calendar-form-grid input,.calendar-form-grid select{min-height:44px}}

/* The timezone picker remains native and keyboard-accessible, while its
   closed state matches the dark calendar instead of looking like a form field. */
.booking-page .calendar-timezone { cursor: pointer; }
.booking-page .calendar-timezone > div { min-width: 0; }
.booking-page .calendar-timezone-select {
  width: min(100%, 230px);
  min-height: 22px;
  padding: 0 20px 0 0;
  border: 0;
  background: transparent;
  color: rgba(255,255,255,.78);
  font: 500 12px/1.2 Satoshi, system-ui, sans-serif;
  outline: 0;
  cursor: pointer;
  color-scheme: dark;
}
.booking-page .calendar-timezone-select:focus-visible {
  color: #fff;
  text-decoration: underline;
  text-decoration-color: #579bfc;
  text-underline-offset: 4px;
}
.booking-page .calendar-timezone-select option,
.booking-page .calendar-timezone-select optgroup {
  background: #102235;
  color: #fff;
}

/* Booking form polish: make the handoff feel like a calm, intentional final
   step instead of a raw data-entry screen. Labels stay inline with their
   required marker, the selected slot is easy to verify, and the single CTA
   carries the visual weight of the action. */
.booking-page .calendar-form-view {
  gap: 18px;
  padding-top: 2px;
}
.booking-page .form-intro {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  padding: 2px 1px 1px;
}
.booking-page .form-kicker {
  display: block;
  margin-bottom: 7px;
  color: #8ab4f8;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.booking-page .form-intro h3 {
  margin: 0;
  color: #fff;
  font-family: Hubot, Satoshi, sans-serif;
  font-size: clamp(22px, 2.1vw, 28px);
  line-height: 1.04;
  letter-spacing: -.055em;
}
.booking-page .form-intro p {
  max-width: 320px;
  margin: 8px 0 0;
  color: rgba(255,255,255,.58);
  font-size: 12px;
  line-height: 1.45;
}
.booking-page .form-trust {
  flex: 0 0 auto;
  padding: 8px 11px;
  border: 1px solid rgba(138,180,248,.2);
  border-radius: 999px;
  background: rgba(87,155,252,.08);
  color: #a8c9fa;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .04em;
  white-space: nowrap;
}
.booking-page .selected-time-summary {
  align-items: center;
  padding: 13px 15px;
  border-color: rgba(87,155,252,.25);
  background: linear-gradient(100deg, rgba(87,155,252,.11), rgba(255,255,255,.035));
}
.booking-page .selected-time-summary > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 3px;
}
.booking-page .summary-label {
  color: rgba(255,255,255,.46);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.booking-page .selected-time-summary strong {
  overflow: hidden;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.booking-page .change-time {
  padding: 7px 0 7px 10px;
  font-size: 11px;
  white-space: nowrap;
}
.booking-page .calendar-form-grid {
  gap: 15px 14px;
  margin-top: 1px;
}
.booking-page .calendar-form-grid label {
  gap: 7px;
  color: rgba(255,255,255,.78);
  font-size: 10px;
  letter-spacing: .1em;
}
.booking-page .calendar-form-grid .field-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 14px;
  color: rgba(255,255,255,.78);
}
.booking-page .calendar-form-grid .field-label em {
  color: #ff8292;
  font-size: 12px;
  font-style: normal;
  line-height: 1;
}
.booking-page .calendar-form-grid input,
.booking-page .calendar-form-grid select {
  min-height: 48px;
  padding: 0 14px;
  border-color: rgba(255,255,255,.16);
  border-radius: 13px;
  background: rgba(4,17,29,.58);
  font-size: 13px;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.booking-page .calendar-form-grid input:hover,
.booking-page .calendar-form-grid select:hover {
  border-color: rgba(138,180,248,.38);
  background: rgba(4,17,29,.72);
}
.booking-page .calendar-form-grid input::placeholder {
  color: rgba(255,255,255,.34);
  font-weight: 500;
}
.booking-page .calendar-form-grid select:invalid {
  color: rgba(255,255,255,.44);
}
.booking-page .calendar-submit {
  min-height: 54px;
  margin-top: 1px;
  box-shadow: 0 10px 26px rgba(87,155,252,.18);
  font-size: 14px;
  letter-spacing: -.01em;
}
.booking-page .calendar-form-note {
  color: rgba(255,255,255,.45);
  font-size: 10px;
}
@media(max-width:600px){
  .booking-page .form-intro { align-items: flex-start; flex-direction: column; gap: 12px; }
  .booking-page .form-intro p { max-width: none; }
  .booking-page .form-trust { align-self: flex-start; }
  .booking-page .selected-time-summary { padding: 12px 13px; }
  .booking-page .calendar-form-grid { gap: 13px; }
  .booking-page .calendar-form-grid input,
  .booking-page .calendar-form-grid select { min-height: 49px; }
}

/* The acquisition demo uses the production homepage's stats card verbatim.
   Only the copy above is different; layout, image treatment, motion, and breakpoints stay aligned. */
.production-stats-section{display:flex;justify-content:center;width:100%;padding:80px 24px}
.production-stats-card{position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:1400px;border:1px solid rgba(255,255,255,.05);border-radius:32px;background:#122538;box-shadow:0 24px 48px rgba(20,35,44,.15),inset 0 1px 0 rgba(255,255,255,.08);opacity:0;transform:translateY(32px);transition:opacity 1200ms cubic-bezier(.16,1,.3,1),transform 1200ms cubic-bezier(.16,1,.3,1)}
.production-stats-card.stats-in-view{opacity:1;transform:translateY(0)}
.production-stats-atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none}
.production-stats-base{position:absolute;inset:0;background:linear-gradient(135deg,#122538,#0d1b2a 58%,#08101a)}
.production-stats-texture{position:absolute;inset:0;background:url('/images/doctor_magazine_bg.png') center/cover no-repeat;filter:grayscale(100%) brightness(85%) contrast(115%);mix-blend-mode:overlay;opacity:.65}
.production-stats-flare{position:absolute;top:-50%;left:-20%;width:90%;height:150%;background:radial-gradient(ellipse at top left,rgba(138,180,248,.04),transparent 65%)}
.production-stats-content{position:relative;z-index:1;padding:64px 48px}
.production-stats-row{display:flex;align-items:stretch}
.production-stat{display:flex;align-items:center;flex:1;min-width:0}
.production-stat--first{padding:0 32px 0 0}
.production-stat--middle{flex:1.15;padding:0 32px;border-left:1px solid rgba(255,255,255,.08)}
.production-stat--last{padding:0 0 0 32px;border-left:1px solid rgba(255,255,255,.08)}
.production-stat-inner{display:flex;align-items:center;width:100%;padding:8px;border-radius:16px;transition:background 500ms cubic-bezier(.16,1,.3,1)}
.production-stat-inner:hover{background:rgba(255,255,255,.015)}
.production-stat-icon{display:none;place-items:center;flex:0 0 48px;width:48px;height:48px;border:1px solid rgba(255,255,255,.08);border-radius:50%;background:rgba(255,255,255,.03);color:#fff;transition:border-color 500ms,background 500ms,color 500ms,transform 500ms,box-shadow 500ms}
.production-stat-icon svg{width:20px;height:20px}
.production-stat-inner:hover .production-stat-icon{border-color:rgba(138,180,248,.4);background:rgba(138,180,248,.05);color:#8ab4f8;transform:scale(1.04);box-shadow:0 0 20px rgba(138,180,248,.15)}
.production-stat-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.production-stat-copy h3{display:flow-root;margin:20px 0 10px;color:#fff;font-family:Hubot,Satoshi,sans-serif;font-size:24px;font-weight:800;line-height:1.08;letter-spacing:-.03em}
.production-stat-copy h3 span{display:inline;color:#8ab4f8;font-weight:900;margin-right:4px;letter-spacing:-.05em;transition:transform 500ms}
.production-stat-inner:hover h3 span{transform:scale(1.02)}
.production-stat-copy p{max-width:36ch;margin:0;color:rgba(255,255,255,.7);font-family:Satoshi,sans-serif;font-size:16px;font-weight:500;line-height:1.625}
@media(max-width:1023px) and (min-width:768px){.production-stat-copy p{max-width:32ch;font-size:.95rem;line-height:1.625}}
@media(max-width:767px){
  .production-stats-section{padding:48px 24px}
  .production-stats-content{padding:40px 24px}
  .production-stats-row{flex-direction:column}
  .production-stat{align-items:center}
  .production-stat--first{padding:0 0 24px}
  .production-stat--middle{padding:24px 0;border-top:1px solid rgba(255,255,255,.08);border-left:0}
  .production-stat--last{padding:24px 0 0;border-top:1px solid rgba(255,255,255,.08);border-left:0}
  .production-stat-inner{gap:16px}
  .production-stat-icon{display:grid}
  .production-stat-copy h3{font-size:24px;line-height:1.08}
  .production-stat-copy p{max-width:32ch;font-size:12px;line-height:1.625}
}

/* Normalize the demo to the composition that reads best at the user's preferred
   90% Chrome view, so the default 100% view has the same proportions. */
.marketing-page{zoom:.9}

/* Direction 2: a compact, framed statement for the acquisition story. */
.features-section .acquisition-intro-panel{padding:72px 52px 76px;border:1px solid rgba(138,180,248,.48);border-radius:30px;background:rgba(255,255,255,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 24px 52px rgba(36,75,122,.06)}
.features-section .acquisition-intro{max-width:980px;margin:0 auto}
.acquisition-eyebrow{display:block;margin:0 0 25px;color:#2d5b94;font-size:11px;font-weight:800;letter-spacing:.19em;line-height:1.2;text-transform:uppercase}
.features-section .acquisition-intro .section-heading{font-size:clamp(48px,5.5vw,76px);line-height:.99;letter-spacing:-.07em}
.features-section .acquisition-intro .section-heading>span{color:var(--ink)}
.features-section .acquisition-intro .section-heading em{display:inline-block;margin-top:5px;color:var(--blue);font-weight:600}
.features-section .acquisition-intro .section-lead{max-width:820px;margin:27px auto 0;color:#617887;font-size:20px;line-height:1.45}
.features-section .acquisition-intro-panel + .dark-feature-grid{margin-top:58px}
@media(max-width:600px){
  .features-section .acquisition-intro-panel{padding:46px 20px 49px;border-radius:25px}
  .acquisition-eyebrow{margin-bottom:20px;font-size:9px;letter-spacing:.16em}
  .features-section .acquisition-intro .section-heading{font-size:clamp(38px,10.8vw,54px);line-height:1.01}
  .features-section .acquisition-intro .section-heading em{margin-top:4px}
  .features-section .acquisition-intro .section-lead{margin-top:22px;font-size:16px;line-height:1.4}
  .features-section .acquisition-intro-panel + .dark-feature-grid{margin-top:38px}
}

/* Keep the selected hero composition at the same physical proportions as the production homepage.
   The page-level 90% normalization is intentional; these frame heights are its CSS-space equivalents. */
.hero-frame{height:780px;min-height:780px;overflow:hidden}
.hero-content{height:100%;min-height:0}
@media(max-width:1100px) and (min-width:601px){
  .hero-frame{height:800px;min-height:800px}
  .hero-content{height:100%;min-height:0}
}
@media(max-width:600px){
  .hero-frame{height:clamp(760px,calc(206.7vw - 13px),810px);min-height:0}
  .hero-content{height:100%;min-height:0}
}

/* Production feature cards: same layered image treatment, icon geometry, and hover depth as the reference site. */
.dark-feature{min-height:302px;border-radius:32px}
.dark-feature:hover{transform:translateY(-7px) scale(1.03)}
.feature-atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none;background:transparent;filter:none;transition:opacity .5s ease}
.feature-atmosphere-base{position:absolute;inset:0;background:linear-gradient(135deg,#122538,#0d1b2a 58%,#08101a)}
.feature-atmosphere-texture{position:absolute;inset:0;background-image:var(--card-image);background-position:center;background-size:cover;background-repeat:no-repeat;filter:grayscale(100%) brightness(85%) contrast(115%);mix-blend-mode:overlay;opacity:.65}
.feature-atmosphere-flare{position:absolute;top:-50%;left:-20%;width:90%;height:150%;background:radial-gradient(ellipse at top left,rgba(138,180,248,.03),transparent 65%)}
.feature-content{min-height:302px;padding:30px 32px}
.feature-icon{width:48px;height:48px;margin-bottom:auto;border-radius:50%;font-size:24px}
.feature-icon svg{width:20px;height:20px}
@media(max-width:900px){
  .dark-feature-grid{gap:24px}
  .dark-feature:last-child{grid-column:1/-1}
}
@media(max-width:600px){
  .dark-feature-grid{gap:16px}
  .dark-feature:last-child{grid-column:auto}
  .dark-feature,.feature-content{min-height:310px}
  .feature-content{padding:26px}
  .feature-icon{width:48px;height:48px}
  .feature-content h3{font-size:27px}
}

/* Match the production hero's complete rounded frame, not only its inner video crop. */
.hero-frame{width:calc(100% - 133.33px);height:978px;min-height:978px}
.hero-content{height:100%;min-height:0;padding:248px 27px 170px}
@media(max-width:1100px) and (min-width:601px){
  .hero-frame{width:calc(100% - 100px);height:900px;min-height:900px}
  .hero-content{height:100%;min-height:0;padding:251px 27px 150px}
}
@media(max-width:600px){
  .hero-frame{width:calc(100% - 50px);height:950px;min-height:950px}
  .hero-content{height:100%;min-height:0;padding:328px 27px 140px}
  .rating-pill{margin-bottom:14px}
}

/* Final production hero alignment: match the reference frame and use its available
   vertical space deliberately instead of leaving a large dead zone below the copy. */
.hero-wrap{padding-top:66.67px}
.hero-frame h1{max-width:800px;font-size:clamp(58px,5.15vw,74px);line-height:1.03;letter-spacing:-.055em}
.hero-sub{max-width:620px;font-size:20px;line-height:1.4}
@media(max-width:1100px) and (min-width:601px){
  .hero-wrap{padding-top:50px}
  .hero-frame h1{max-width:800px;font-size:clamp(54px,6.2vw,68px);line-height:1.03}
  .hero-sub{max-width:560px;font-size:19px;line-height:1.42}
}
@media(max-width:600px){
  .hero-wrap{padding-top:25px}
  .hero-frame h1{max-width:100%;font-size:32px;line-height:1.06;letter-spacing:-.045em}
  .hero-sub{max-width:100%;font-size:16px;line-height:1.4}
}

/* Use the production hero's actual responsive frame geometry. The page is
   intentionally normalized to 90%, so these values are expressed in the
   unscaled layout space and resolve to the same visible inset at every size. */
.marketing-page{--production-hero-margin:clamp(22.222px,calc(9.523px + 3.9683vw),66.667px)}
.hero-wrap{height:calc(100vh / .9);padding-top:var(--production-hero-margin)}
.hero-frame{width:auto;height:calc(100vh / .9 - 2 * var(--production-hero-margin));min-height:0;margin-left:var(--production-hero-margin);margin-right:var(--production-hero-margin);border-radius:35.556px}
.hero-content{height:100%;min-height:0;padding:0 27px;align-items:center}
@media(max-width:1100px) and (min-width:601px){
  .hero-content{transform:translateY(16px)}
}
@media(max-width:600px){
  .hero-wrap{height:calc(100vh / .9);padding-top:var(--production-hero-margin)}
  .hero-frame{height:calc(100vh / .9 - 2 * var(--production-hero-margin));min-height:0}
  .hero-content{height:100%;min-height:0;padding:0 27px;align-items:center}
}
@media(max-width:600px) and (min-height:760px){
  .hero-content{transform:translateY(36px)}
}

/* Let this acquisition intro sit directly on the section surface rather than
   inside a separate white-looking panel. */
.features-section .acquisition-intro-panel{background:transparent;border-color:transparent;box-shadow:none}

/* Keep the acquisition headline to two intentional lines and give the logo
   rail the same larger, legible presence as the reference homepage. */
.hero-headline-line{display:block;white-space:nowrap}
.hero-frame h1{width:100%;max-width:none}
.logo-bar{padding:17.778px 38px}
.logo-set{gap:48px;padding-right:48px}
.logo-set img{width:250px;height:53.333px;object-fit:contain}
.logo-bar{bottom:30px}
/* The raised logo rail should read as part of the hero surface, not as a
   floating panel. Remove the transparent gradient edge that was creating a
   dark halo around it after the rail was moved upward. */
.logo-bar{background:transparent;border-top:0;box-shadow:none;filter:none;backdrop-filter:none}
/* Keep the desktop copy slightly above the optical center of the hero while
   leaving the tablet/mobile compositions and logo rail untouched. */
@media(min-width:1101px){
  .hero-content{transform:translateY(-12px)}
}
@media(max-width:1100px) and (min-width:601px){
  .hero-copy{width:100%;max-width:none}
  .hero-frame h1{font-size:clamp(52px,5.4vw,63px)}
}
@media(max-width:600px){
  .hero-copy{width:100%;max-width:none}
  .hero-frame h1{font-size:20px;line-height:1.08;letter-spacing:-.045em}
  .logo-bar{padding:17.778px 15px}
  .logo-set{gap:20px;padding-right:20px}
}
@media(max-width:340px){
  .hero-frame h1{font-size:16px}
}

/* Reference-style service section: the current acquisition copy uses the
   same light card system as the production homepage's front-desk section. */
.stack-section{
  padding:96px 0 118px;
  background:#fff;
  border-top:1px solid rgba(203,217,227,.5);
  border-bottom:1px solid rgba(203,217,227,.5);
}
.stack-section .section-intro{max-width:900px;margin-bottom:54px}
.stack-section .section-heading{max-width:900px;margin:0 auto;font-size:clamp(44px,4.9vw,68px);line-height:1.04}
.stack-section .section-lead{max-width:850px;margin-top:20px;color:rgba(20,35,44,.78);font-size:21px;line-height:1.5}
.stack-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:32px;
  max-width:1200px;
  margin:0 auto;
}
.stack-card{
  position:relative;
  display:block;
  min-height:420px;
  overflow:hidden;
  border:1px solid #c1d0df;
  border-top:2px solid #c1d0df;
  border-radius:32px;
  background:linear-gradient(to bottom,#e9eff4 0%,#dfebf5 54%,#d2e2ef 100%);
  box-shadow:0 12px 30px rgba(20,35,44,.02);
  transition:transform .5s ease,box-shadow .5s ease,border-color .5s ease;
}
.stack-card:hover{
  transform:translateY(-12px) scale(1.02);
  border-color:rgba(138,180,248,.5);
  border-top-color:#244b7a;
  box-shadow:0 30px 60px rgba(36,75,122,.12);
}
.stack-copy{
  position:relative;
  display:flex;
  min-height:420px;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  padding:36px 40px 40px;
}
.stack-num{
  position:absolute;
  top:19px;
  right:27px;
  color:rgba(36,75,122,.1);
  font-family:Hubot,Satoshi,sans-serif;
  font-size:58px;
  font-weight:900;
  line-height:1;
  letter-spacing:-.08em;
  pointer-events:none;
}
.stack-label{
  display:inline-flex;
  margin-bottom:55px;
  padding:6px 12px;
  border:1px solid rgba(36,75,122,.1);
  border-radius:999px;
  background:rgba(36,75,122,.05);
  color:#244b7a;
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  line-height:1;
  text-transform:uppercase;
}
.stack-copy h3{
  max-width:330px;
  margin:0 0 14px;
  color:#14232c;
  font-family:Satoshi,system-ui,sans-serif;
  font-size:clamp(24px,2.1vw,32px);
  font-weight:800;
  line-height:1.06;
  letter-spacing:-.055em;
}
.stack-copy p{
  max-width:35ch;
  margin:0;
  color:rgba(20,35,44,.78);
  font-size:16px;
  font-weight:500;
  line-height:1.55;
}
.stack-cta{margin-top:68px}
.stack-cta .button{background:#14232c;color:#fff;box-shadow:0 8px 30px rgba(20,35,44,.08)}
.stack-cta .button:hover{background:#8ab4f8;color:#14232c}
.stack-cta>span{color:#80919d}

/* Centered option 1 treatment for the closing CTA, keeping the existing copy. */
.final{padding:142px 0 128px}
.final h2{max-width:1180px;font-size:clamp(48px,6vw,84px);line-height:1.01}
.final p{max-width:900px;margin-top:30px;font-size:20px;line-height:1.5}
.final-list{max-width:1200px;gap:54px;margin-top:54px}
.final-list li{gap:12px;font-size:16px;line-height:1.5}
.final-list li:before{width:26px;height:26px;font-size:14px}
.final .button{margin-top:48px;min-height:60px;padding:0 34px}
.reassure{margin-top:13px}

@media(max-width:900px){
  .stack-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
  .stack-copy{min-height:380px;padding:30px}
  .stack-label{margin-bottom:44px}
  .final-list{gap:24px}
}
@media(max-width:600px){
  .stack-section{padding:78px 0 88px}
  .stack-section .section-intro{margin-bottom:40px}
  .stack-section .section-heading{font-size:clamp(38px,11.5vw,56px);line-height:1.03}
  .stack-section .section-lead{font-size:17px}
  .stack-list{grid-template-columns:1fr;gap:16px}
  .stack-card,.stack-copy{min-height:330px}
  .stack-copy{padding:27px 26px 29px}
  .stack-num{top:17px;right:22px;font-size:52px}
  .stack-label{margin-bottom:39px}
  .stack-copy h3{max-width:300px;font-size:31px}
  .stack-copy p{font-size:16px}
  .stack-cta{margin-top:44px}
  .final{padding:96px 0 86px}
  .final h2{font-size:clamp(42px,11vw,62px);line-height:1.02}
  .final p{font-size:17px}
  .final-list{margin-top:40px;gap:20px}
  .final-list li{font-size:15px}
  .final .button{margin-top:38px}
}

/* Mobile hero cleanup: keep the headline legible at narrow widths, keep the
   CTA and reassurance together, and let the logo marquee stay inside the card. */
@media(max-width:600px){
  .hero-wrap{overflow-x:clip}
  .hero-frame{
    min-height:820px;
    height:max(820px,calc(100vh / .9 - 2 * var(--production-hero-margin)))
  }
  .hero-content{
    align-items:flex-start;
    padding:220px 27px 0
  }
  .hero-copy{width:100%;max-width:none}
  .hero-frame h1{
    max-width:100%;
    font-size:clamp(23px,6.7vw,31px);
    line-height:1.06;
    letter-spacing:-.045em
  }
  .hero-frame h1 .hero-headline-line{white-space:normal}
  .hero-sub{max-width:100%;font-size:16px;line-height:1.4}
  .hero-cta-stack{width:100%;margin-top:22px}
  .hero-cta-stack .hero-actions{width:100%}
  .hero-cta-stack .button{
    width:100%;
    min-height:52px;
    padding:0 16px;
    gap:9px;
    font-size:14px;
    white-space:nowrap
  }
  .logo-bar{padding:16px 15px 19px;overflow:hidden}
  .logo-set{gap:22px;padding-right:22px}
  .logo-set img{width:104px;height:28px}
}

/* Final mobile polish: scale the hero vertically with taller phones, restore
   the larger partner-mark presence of the reference site, and give the
   header controls a comfortable touch target without changing desktop. */
@media(max-width:600px){
  .hero-content{padding-top:clamp(225px,calc(62.5vh - 275px),315px)}
  .logo-set{gap:20px;padding-right:20px}
  .logo-set img{width:170px;height:34px}
  .site-nav .nav-cta{min-height:49px!important}
  .site-nav .brand{min-height:49px;padding:10px 0}
}

/* Final mobile hero scale: use the card's available height for the message,
   with larger type and controls while keeping the partner rail isolated below it. */
@media(max-width:600px){
  .hero-frame{
    height:calc(100vh / .9 - 2 * var(--production-hero-margin));
    min-height:760px;
  }
  .hero-content{
    transform:none;
    padding:clamp(160px,20vh,214px) 18px 108px;
  }
  .hero-copy{width:100%;max-width:none}
  .rating-pill{
    gap:9px;
    margin-bottom:20px;
    padding:11px 16px;
    font-size:14px;
  }
  .rating-pill .google-mark{width:16px;height:16px;flex-basis:16px}
  .hero-frame h1{
    max-width:none;
    font-size:clamp(34px,8.7vw,41px);
    line-height:1.04;
    letter-spacing:-.05em;
  }
  .hero-sub{margin-top:19px;font-size:17px;line-height:1.38}
  .hero-cta-stack{margin-top:20px}
  .hero-cta-stack .button{min-height:58px;font-size:16px}
  .hero-cta-stack .hero-reassure{margin-top:11px;font-size:12px}
  .logo-bar{padding:16px 15px 19px}
  .logo-set{gap:20px;padding-right:20px}
  .logo-set img{width:170px;height:34px}
  .logo-bar{bottom:90px}
}

@media(max-width:340px){
  .hero-content{padding-top:140px}
  .logo-bar{bottom:105px}
}

/* Keep the mobile hero compact: raise the partner rail toward the message and
   trim the lower card padding without changing desktop/tablet composition. */
@media(max-width:600px){
  .hero-frame{
    height:calc(100vh / .9 - 2 * var(--production-hero-margin) - 76px);
    min-height:730px;
  }
  .logo-bar{bottom:90px}
}

@media(max-width:340px){.logo-bar{bottom:70px}}

/* Booking parity pass: match the production booking page's width, rhythm,
   typography, and navy calendar treatment without changing its GHL iframe. */
.booking-nav{width:min(1152px,100%);padding:20px 32px 18px}
.booking-main{width:min(1152px,100%);gap:40px;padding:16px 32px 80px}
.booking-copy{gap:20px;padding-top:4px}
.booking-copy h1{max-width:524px;font-family:Satoshi,system-ui,sans-serif;font-size:38px;line-height:1.08;letter-spacing:-.045em}
.booking-copy>p{max-width:524px;font-size:16px;line-height:1.625}
.booking-checks{gap:13px;margin-top:2px}
.booking-checks li{gap:12px;font-size:14px;line-height:1.45}
.booking-checks i{flex-basis:20px;width:20px;height:20px}
.booking-why{margin-top:4px;padding:24px 28px 25px;border-radius:32px}
.booking-why h2{margin-bottom:10px;font-size:25px}
.booking-why p{font-size:14px;line-height:1.6}
.booking-calendar{border-radius:34px;box-shadow:0 24px 60px rgba(18,37,56,.26)}
.calendar-title{padding:34px 28px 22px}
.calendar-title h2{font-size:32px}
.calendar-content{gap:24px;padding:24px 28px 30px}
.calendar-slots{gap:10px}
/* Use the same sparkle mark as the homepage instead of a phone glyph on the
   booking route's brand lockups. */
.booking-brand svg,.booking-footer-brand svg{display:none}
.booking-brand:before,.booking-footer-brand:before{content:"✦";display:inline-block;color:currentColor;font-family:Satoshi,system-ui,sans-serif;font-size:1.08em;line-height:1;transform:translateY(-.02em)}

@media(max-width:980px){
  .booking-main{width:min(800px,100%);padding-left:32px;padding-right:32px}
  .booking-copy h1{max-width:780px}
}
@media(max-width:600px){
  .booking-nav{width:100%;padding:20px 16px 15px}
  .booking-main{width:100%;padding:18px 16px 56px;gap:32px}
  .booking-copy{gap:18px;padding-top:0}
  .booking-copy h1{max-width:none;font-size:38px;line-height:1.08;letter-spacing:-.045em}
  .booking-copy>p{font-size:16px;line-height:1.625}
  .booking-checks li{font-size:13px;line-height:1.45}
  .booking-why{padding:23px 24px 24px;border-radius:28px}
  .booking-calendar{border-radius:30px}
}

/* Thank-you page parity: the confirmation surface uses the same navy card,
   review treatment, detail rows, and three-step handoff as the live page. */
.thank-you-page{min-height:100vh;background:linear-gradient(180deg,#dfebf5 0%,#d2e2ef 100%);color:var(--ink)}
.thank-you-shell{width:100%;padding:44px 24px 76px}
.thank-card--production{width:min(896px,100%);margin:0 auto;padding:34px 42px 38px;border-radius:34px;background:linear-gradient(145deg,#122538 0%,#0d1c2b 60%,#091521 100%);color:#fff;box-shadow:0 30px 80px rgba(18,37,56,.25);text-align:center}
.thank-header{display:flex;align-items:center;justify-content:space-between;gap:20px}
.thank-brand{display:inline-flex;align-items:center;gap:10px;color:#fff;font-family:Hubot,Satoshi,sans-serif;font-size:22px;font-weight:800;letter-spacing:-.055em}
.thank-brand svg{width:27px;height:27px}
.thank-reviews{display:flex;align-items:center;gap:9px;padding:9px 14px;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.78);font-size:12px;white-space:nowrap}
.thank-reviews strong{color:#fff;font-size:14px}.thank-stars{color:var(--gold);letter-spacing:.08em}.thank-reviews svg{width:15px;height:15px;flex:0 0 15px}
.thank-success{display:flex;justify-content:center;margin-top:56px}.thank-card--production .success-mark{width:76px;height:76px;background:#8ab4f8;color:#0d1c2b;box-shadow:0 12px 34px rgba(138,180,248,.2)}
.thank-card--production .success-mark svg{width:34px;height:34px}
.thank-card--production h1{margin:24px 0 0;font-family:Hubot,Satoshi,sans-serif;font-size:clamp(48px,6vw,72px);line-height:1;letter-spacing:-.07em}
.thank-subtitle{max-width:610px;margin:19px auto 0;color:rgba(255,255,255,.72);font-size:17px;line-height:1.5}
.thank-details{display:grid;gap:12px;margin:38px auto 0;text-align:left}
.thank-detail-row{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(255,255,255,.06)}
.thank-detail-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid rgba(138,180,248,.35);border-radius:50%;color:#8ab4f8;font-size:20px}
.thank-detail-row strong{display:block;font-family:Hubot,Satoshi,sans-serif;font-size:16px;letter-spacing:-.03em}.thank-detail-row p{margin:3px 0 0;color:rgba(255,255,255,.65);font-size:13px;line-height:1.45}.thank-detail-action{margin-left:auto;color:#8ab4f8;font-size:12px;font-weight:700;white-space:nowrap}
.thank-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:42px 0 0;padding-top:30px;border-top:1px solid rgba(255,255,255,.12);text-align:left}
.thank-steps article span{color:#8ab4f8;font-family:Hubot,Satoshi,sans-serif;font-size:13px;font-weight:800;letter-spacing:.14em}.thank-steps h2{margin:12px 0 7px;font-family:Hubot,Satoshi,sans-serif;font-size:20px;line-height:1.05;letter-spacing:-.045em}.thank-steps p{margin:0;color:rgba(255,255,255,.62);font-size:13px;line-height:1.45}
.thank-home{display:inline-flex;align-items:center;gap:10px;margin-top:38px;padding:13px 20px;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:#fff;font-size:14px;font-weight:700;transition:background .2s ease,transform .2s ease}.thank-home:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}
@media(max-width:600px){
  .thank-you-shell{padding:16px 12px 42px}
  .thank-card--production{padding:23px 18px 28px;border-radius:28px}
  .thank-header{align-items:flex-start;flex-direction:column;gap:16px}.thank-brand{font-size:20px}.thank-brand svg{width:24px;height:24px}.thank-reviews{align-self:stretch;justify-content:center}
  .thank-success{margin-top:42px}.thank-card--production .success-mark{width:68px;height:68px}.thank-card--production h1{font-size:48px;line-height:1.02}.thank-subtitle{font-size:16px}
  .thank-details{margin-top:30px}.thank-detail-row{align-items:flex-start;padding:16px}.thank-detail-action{display:none}
  .thank-steps{grid-template-columns:1fr;gap:22px;margin-top:32px;padding-top:25px}.thank-steps h2{margin-top:8px}
}
@media(max-width:340px){.thank-card--production h1{font-size:42px}}

/* Lower the logo rail slightly on non-mobile hero layouts only. */
@media(min-width:601px){
  .logo-bar{bottom:20px}
}

/* Keep the tablet feature grid balanced: all six cards remain in two equal
   columns instead of forcing the final card across a full row. */
@media(max-width:900px) and (min-width:601px){
  .dark-feature:last-child{grid-column:auto}
}

/* Restore the original Basata-clone guarantee composition while keeping the
   current MedMagic wording in the markup. */
.guarantee{
  padding:96px 24px 112px;
  background:linear-gradient(to bottom,var(--sky),var(--sky-deep));
  border-top:1px solid rgba(203,217,227,.3);
  border-bottom:1px solid rgba(203,217,227,.3);
}
.guarantee>.container{display:flex;width:min(820px,100%);flex-direction:column;align-items:center;justify-content:center;}
.guarantee-badge{margin-bottom:23px;}
.guarantee h2{max-width:820px;font-size:clamp(25px,3.5vw,56px);line-height:1.08;letter-spacing:-.04em;}
@media(max-width:600px){
  .guarantee{padding:78px 20px 90px;}
  .guarantee>.container{width:100%;}
  .guarantee h2{font-size:clamp(39px,10.8vw,55px);line-height:1.06;}
}

/* Center the third process card beneath the first two at the tablet
   breakpoint, then restore the single-column flow on mobile. */
@media(max-width:900px) and (min-width:601px){
  .stack-list>.stack-card:nth-child(3){
    grid-column:1/-1;
    width:calc((100% - 22px)/2);
    justify-self:center;
  }
}
@media(max-width:600px){
  .stack-list>.stack-card:nth-child(3){grid-column:auto;width:auto;}
}

/* Restore the original rounded-card FAQ treatment while retaining the
   current questions, answers, and interaction behavior. */
.faq{
  padding:80px 24px 112px;
  background:#fff;
  border-bottom:1px solid rgba(203,217,227,.3);
}
.faq-layout{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:40px;
  width:min(820px,100%);
  margin:0 auto;
}
.faq-layout>.section-intro{
  width:100%;
  max-width:820px;
  margin:0;
  padding:0;
  text-align:center;
}
.faq-layout>.section-intro .section-lead{max-width:560px;margin:10px auto 0;}
.faq-list{
  display:flex;
  flex-direction:column;
  gap:16px;
  width:100%;
  border-top:0;
}
.faq-item{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.6);
  border-radius:32px;
  background:linear-gradient(to bottom,rgba(255,255,255,.94),rgba(248,250,252,.94));
  box-shadow:0 8px 30px rgba(20,35,44,.04);
  transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease,background .35s ease;
}
.faq-item:before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  width:5px;
  background:transparent;
  transition:background .35s ease;
}
.faq-item.open{
  border-color:rgba(36,75,122,.3);
  background:#fff;
  box-shadow:0 24px 50px rgba(20,35,44,.08);
  transform:translateY(-2px);
}
.faq-item.open:before{background:var(--blue);}
.faq-question{
  position:relative;
  z-index:1;
  padding:20px 32px;
  font-size:17px;
  font-weight:800;
  line-height:1.28;
}
.faq-item.open .faq-question{padding-top:20px;padding-bottom:14px;color:var(--blue);}
.faq-plus{
  width:40px;
  height:40px;
  border-color:rgba(36,75,122,.12);
  background:rgba(36,75,122,.05);
  font-size:22px;
}
.faq-item.open .faq-plus{
  border-color:transparent;
  background:var(--blue);
  color:#fff;
}
.faq-answer p{
  max-width:720px;
  margin:0;
  min-height:0;
  padding:0;
  color:rgba(20,35,44,.75);
  font-size:15px;
  line-height:1.55;
}
.faq-item.open .faq-answer p{padding:0 32px 22px;}
.faq-answer{min-height:0;overflow:hidden;}
.faq-item.open .faq-answer:before{
  content:"";
  display:block;
  height:1px;
  margin:0 32px 12px;
  background:rgba(36,75,122,.1);
}
@media(max-width:600px){
  .faq{padding:76px 14px 84px;}
  .faq-layout{gap:32px;}
  .faq-question{padding:18px 24px;font-size:16px;}
  .faq-item.open .faq-question{padding-top:18px;padding-bottom:12px;}
  .faq-plus{width:38px;height:38px;}
  .faq-answer p{padding:0;font-size:15px;}
  .faq-item.open .faq-answer p{padding:0 24px 20px;}
  .faq-item.open .faq-answer:before{margin:0 24px 11px;}
}

/* Keep the in-page conversion moments distinct from the hero and final CTA.
   The green treatment is intentionally limited to section CTAs so the main
   entry and closing buttons keep their existing white styling. */
.section-cta .button{
  min-width:290px;
  min-height:70px;
  padding:0 38px;
  border-color:rgba(28,112,79,.58);
  background:linear-gradient(135deg,#5cc596 0%,#359f73 54%,#247a58 100%);
  color:#fff;
  font-size:18px;
  gap:15px;
  box-shadow:0 16px 34px rgba(36,122,88,.2),inset 0 1px 0 rgba(255,255,255,.28);
}
.section-cta .button:hover{
  background:linear-gradient(135deg,#73d8aa 0%,#45b983 54%,#2d9068 100%);
  color:#fff;
  box-shadow:0 22px 42px rgba(36,122,88,.3),inset 0 1px 0 rgba(255,255,255,.38);
}
.faq-cta{width:100%;margin-top:4px;}
@media(max-width:600px){
  .faq-cta{margin-top:0;}
  .section-cta .button{min-width:min(290px,100%);min-height:66px;padding:0 30px;font-size:17px;}
}

/* Non-mobile hero refinement: give the brand lockup more presence and lower
   the review pill without moving the rest of the copy. */
@media(min-width:601px){
  .site-nav .brand{font-size:clamp(26px,2.2vw,32px);}
  .site-nav .brand svg{width:clamp(28px,2.2vw,34px);height:clamp(28px,2.2vw,34px);}
  .hero-copy>.rating-pill{position:relative;top:8px;}
}

/* Keep comparison marks optically centered and consistent with their labels. */
.compare-row:not(.compare-head)>div{gap:14px;}
.compare-row:not(.compare-head)>div:first-child:before,
.compare-row:not(.compare-head)>div:last-child:before{
  flex:0 0 28px;
  width:28px;
  height:28px;
  margin-right:0;
  font-family:Satoshi,system-ui,sans-serif;
  font-size:18px;
  font-weight:800;
  line-height:1;
}
@media(max-width:600px){
  .compare-row:not(.compare-head)>div{gap:10px;}
  .compare-row:not(.compare-head)>div:first-child:before,
  .compare-row:not(.compare-head)>div:last-child:before{
    flex-basis:24px;
    width:24px;
    height:24px;
    font-size:16px;
  }
}

/* Keep the live calendar panel spanning the full calendar card. */
.booking-calendar .calendar-view{grid-column:1/-1}
.booking-calendar .calendar-form-view{grid-column:1/-1}

/* Use the wider production-style thank-you panel instead of the legacy 650px cap. */
.thank-card--production{max-width:896px}

.thank-schedule{display:flex;flex-direction:column;align-items:center;gap:7px;padding:21px 20px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(255,255,255,.06);text-align:center}.thank-detail-kicker{color:#8ab4f8;font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.thank-schedule strong{font-family:Hubot,Satoshi,sans-serif;font-size:clamp(22px,3vw,30px);letter-spacing:-.045em}.thank-schedule>span:last-child{color:#8ab4f8;font-size:17px;font-weight:800}.thank-connection{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(255,255,255,.04);text-align:left}.thank-connection-copy{display:flex;flex-direction:column;gap:7px;min-width:0}.thank-connection-copy strong{overflow:hidden;color:#fff;font-size:14px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.thank-connection button,.thank-calendar-actions button{border:1px solid rgba(138,180,248,.38);border-radius:999px;background:#244b7a;color:#fff;font:800 12px Satoshi,system-ui,sans-serif;cursor:pointer;white-space:nowrap}.thank-connection button{padding:11px 17px}.thank-connection button:hover,.thank-calendar-actions button:hover{background:#8ab4f8;color:#091521}.thank-calendar-actions{display:flex;flex-direction:column;align-items:center;gap:10px;padding-top:2px;text-align:center}.thank-calendar-actions>div{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;width:min(420px,100%)}.thank-calendar-actions button{padding:11px 13px;background:#fff;color:#122538;border-color:rgba(255,255,255,.2)}.thank-calendar-actions button:hover{background:#8ab4f8;color:#071b2b}@media(max-width:600px){.thank-connection{align-items:stretch;flex-direction:column}.thank-connection button{width:100%}.thank-calendar-actions>div{gap:7px}.thank-calendar-actions button{padding-inline:8px;font-size:11px}}

/* Live availability and booking form. This uses the same production calendar
   feed and booking handoff as the main /booking page. */
.calendar-view{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(190px,.74fr);gap:24px;min-width:0}.calendar-date-panel,.calendar-slots-side{min-width:0}.calendar-slots-side{display:flex;flex-direction:column;gap:10px}.calendar-status{display:flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.03);color:rgba(255,255,255,.54);font-size:11px;font-weight:700;text-align:center}.calendar-status[hidden]{display:none!important}.calendar-status.is-error{border-color:rgba(240,120,120,.38);color:#ffb4b4}.calendar-spinner{width:17px;height:17px;border:2px solid #579bfc;border-top-color:transparent;border-radius:50%;animation:calendar-spin .7s linear infinite;flex:0 0 auto}@keyframes calendar-spin{to{transform:rotate(360deg)}}.calendar-no-slots{display:flex;align-items:center;justify-content:center;min-height:120px;padding:18px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(255,255,255,.02);color:rgba(255,255,255,.54);font-size:11px;font-weight:650;line-height:1.5;text-align:center}.calendar-form-view[hidden],.calendar-view[hidden]{display:none!important}.calendar-form-view{display:flex;flex-direction:column;gap:16px}.selected-time-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(0,0,0,.25);color:rgba(255,255,255,.64);font-size:12px}.selected-time-summary strong{color:#579bfc;font-weight:850}.change-time{border:0;background:transparent;color:#579bfc;font-size:11px;font-weight:800;cursor:pointer}.change-time:hover{text-decoration:underline}.calendar-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 15px}.calendar-form-grid label{display:flex;flex-direction:column;gap:6px;color:rgba(255,255,255,.82);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.calendar-form-grid label span{color:#e2445c}.calendar-form-grid label.full{grid-column:1/-1}.calendar-form-grid input,.calendar-form-grid select{width:100%;min-height:42px;padding:0 12px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:rgba(0,0,0,.3);color:#fff;font:600 13px Satoshi,system-ui,sans-serif;letter-spacing:0;text-transform:none;outline:0}.calendar-form-grid input:focus,.calendar-form-grid select:focus{border-color:#579bfc;box-shadow:0 0 0 3px rgba(87,155,252,.12)}.calendar-form-grid input::placeholder{color:rgba(255,255,255,.34)}.calendar-form-grid select{appearance:auto;color-scheme:dark}.calendar-form-error{margin:0;color:#ffb4b4;font-size:12px;font-weight:700;line-height:1.45}.calendar-submit{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;border:1px solid #579bfc;border-radius:999px;background:#579bfc;color:#071b2b;font:850 14px Satoshi,system-ui,sans-serif;cursor:pointer;transition:filter .2s ease,transform .2s ease}.calendar-submit:hover{filter:brightness(1.08);transform:translateY(-1px)}.calendar-submit:disabled{cursor:wait;opacity:.65;transform:none}.calendar-form-note{margin:0;color:rgba(255,255,255,.42);font-size:11px;line-height:1.45;text-align:center}@media(max-width:600px){.calendar-view{grid-template-columns:1fr;gap:20px}.calendar-form-grid{grid-template-columns:1fr}.calendar-form-grid label.full{grid-column:auto}.calendar-form-view{gap:14px}.calendar-slots-side{gap:9px}.calendar-status{min-height:38px}.calendar-form-grid input,.calendar-form-grid select{min-height:44px}}
