@font-face{font-family:Rubik;src:url(rubik-hebrew.woff2) format("woff2");font-weight:300 900;font-display:swap;unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+FB1D-FB4F}
@font-face{font-family:Rubik;src:url(rubik-latin.woff2) format("woff2");font-weight:300 900;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F}

/* Tokens. Brand: AposTherapy navy and the logo red, on a deep navy night (never pure black). */
:root{
  --bg:#050b18;--bg-2:#081430;--navy:#0a2a5e;--blue:#1d4ed8;--glow-blue:#2a63ff;
  --red:#d42a37;--red-hover:#b9222e;--brand-red:#e0313e;
  --text:#f2f5fa;--muted:#aab7c9;--soft:#7f8ea3;
  --glass:rgba(255,255,255,.055);--glass-2:rgba(255,255,255,.085);--glass-line:rgba(255,255,255,.13);--glass-line-2:rgba(255,255,255,.22);
  --link:#8fb8ff;--err:#ff9a90;--err-bg:rgba(255,90,80,.12);--ok:#7ee2a8;--ok-bg:rgba(60,200,120,.12);
  --focus:#8fb8ff;--radius:22px;--radius-sm:14px;--gutter:16px;--bar-h:0px;
  --ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1)
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:clip;scroll-padding-top:84px;background:var(--bg);color-scheme:dark}
html:not(.lenis){scroll-behavior:smooth}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;font-family:Rubik,"Segoe UI",Arial,sans-serif;font-size:17px;line-height:1.7;color:var(--text);background:var(--bg);padding-bottom:var(--bar-h);overflow-x:clip;overflow-wrap:break-word;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,p,ul,ol,figure{margin:0}
h1,h2,h3{line-height:1.12;text-wrap:balance;color:var(--text);font-weight:700}
h1{font-size:clamp(36px,9.4vw,76px);letter-spacing:-.03em}
h2{font-size:clamp(30px,7vw,56px);letter-spacing:-.025em}
h3{font-size:20px;font-weight:600;letter-spacing:-.01em}
p{max-width:62ch}
a{color:var(--link);text-underline-offset:3px}
a:hover{color:#fff}
button,input{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}
.ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}
.wrap{width:min(1200px,100% - 2*var(--gutter));margin-inline:auto}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.skip{position:fixed;inset-inline-start:var(--gutter);top:-200px;background:#fff;color:var(--navy);padding:10px 16px;border-radius:10px;z-index:60;font-weight:600;text-decoration:none}
.skip:focus{top:12px}
section{position:relative;padding-block:88px}
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#cfdcf2;padding:6px 14px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.kicker::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--brand-red);box-shadow:0 0 12px var(--brand-red)}
.section-head{margin-bottom:40px;max-width:760px}
.section-head .kicker{margin-bottom:18px}
.section-head p{margin-top:16px;color:var(--muted);font-size:18px}
.grad{background:linear-gradient(100deg,#ffffff 10%,#9fc0ff 60%,#ffffff 95%);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Ambient light: slow-moving brand glows behind content. Decorative only. */
.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(120% 80% at 50% -10%,#0d1f48 0%,var(--bg) 55%)}
.ambient i{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55}
.ambient .a1{width:60vmax;height:60vmax;background:#123a8a;top:-25vmax;right:-15vmax}
.ambient .a2{width:40vmax;height:40vmax;background:#0f2f6e;bottom:-20vmax;left:-10vmax;opacity:.5}
.ambient .a3{width:22vmax;height:22vmax;background:#7a1622;top:40vh;left:20vw;opacity:.22}
.grain{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* Glass */
.glass{background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.035));border:1px solid var(--glass-line);border-radius:var(--radius);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 30px 60px -30px rgba(0,0,0,.6)}

/* Buttons. Press feedback scales to .97, never from 0. */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:13px 26px;border-radius:999px;border:1px solid transparent;font-weight:600;font-size:17px;line-height:1.3;text-decoration:none;text-align:center;cursor:pointer;transition:transform .16s var(--ease-out),background-color .2s var(--ease-out),border-color .2s var(--ease-out),box-shadow .2s var(--ease-out)}
.btn:active{transform:scale(.97)}
.btn svg{width:20px;height:20px;flex:none}
.btn-primary{background:var(--red);color:#fff;box-shadow:0 10px 30px -10px rgba(224,49,62,.7),inset 0 1px 0 rgba(255,255,255,.25)}
.btn-glass{background:var(--glass-2);color:#fff;border-color:var(--glass-line-2);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
@media (hover:hover) and (pointer:fine){
  .btn-primary:hover{background:var(--red-hover);color:#fff;box-shadow:0 14px 36px -10px rgba(224,49,62,.85),inset 0 1px 0 rgba(255,255,255,.25)}
  .btn-glass:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.35);color:#fff}
}

/* Header */
.site-header{position:sticky;top:0;z-index:40;background:rgba(5,11,24,.55);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px}
.brand{display:block;flex:none;border-radius:8px}
.brand img{width:128px}
.nav-links{display:none}
.nav-call{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 16px;border-radius:999px;border:1px solid var(--glass-line-2);background:var(--glass);color:#fff;font-weight:600;text-decoration:none;transition:background-color .2s var(--ease-out)}
.nav-call svg{width:18px;height:18px}
@media (hover:hover){.nav-call:hover{background:rgba(255,255,255,.14);color:#fff}}

/* Hero */
.hero{padding-block:40px 0;text-align:center}
.hero .kicker{margin-bottom:22px}
.hero h1{max-width:15ch;margin-inline:auto}
.hero h1 .sub{display:block;margin-top:14px;font-size:.42em;font-weight:500;letter-spacing:-.005em;color:var(--muted)}
.hero .lead{margin:22px auto 0;font-size:18px;color:var(--muted);max-width:46ch}
.hero-actions{display:grid;gap:10px;margin:30px auto 0;max-width:420px}
.hero-note{margin:16px auto 0;font-size:15px;color:var(--soft);max-width:44ch}
.w{display:inline-block}

/* 3D product stage (pointer tilt on fine pointers, scroll tilt everywhere motion is allowed) */
.stage-wrap{margin-top:44px;perspective:1400px}
/* backdrop-filter and overflow:hidden flatten 3D, so they live only on the leaf frame; the hotspots sit on their own layer in front. */
.stage{position:relative;max-width:980px;margin-inline:auto;transform-style:preserve-3d}
.stage-tilt{position:relative;transform-style:preserve-3d}
.stage-frame{border-radius:32px;padding:14px}
.hot-layer{position:absolute;inset:15px;transform-style:preserve-3d;pointer-events:none}
.stage-inner{position:relative;border-radius:22px;overflow:hidden;transform-style:preserve-3d;background:radial-gradient(70% 70% at 50% 45%,#f4f5f7 0%,#e7e9ee 45%,#2a3448 82%,#0a1328 100%)}
.stage-img{width:100%;aspect-ratio:3/2;object-fit:cover;-webkit-mask-image:radial-gradient(75% 78% at 50% 50%,#000 55%,transparent 100%);mask-image:radial-gradient(75% 78% at 50% 50%,#000 55%,transparent 100%)}
.stage-shine{position:absolute;inset:0;pointer-events:none;background:radial-gradient(40% 50% at var(--mx,30%) var(--my,20%),rgba(255,255,255,.22),transparent 70%);mix-blend-mode:soft-light}
/* The dot sits exactly on the unit; the label hangs off to one side. */
.hot{position:absolute;left:var(--x);top:var(--y);width:16px;height:16px;transform:translate(-50%,-50%) translateZ(70px);pointer-events:none}
.hot .dot{position:absolute;inset:0;border-radius:50%;background:var(--brand-red);box-shadow:0 0 0 6px rgba(224,49,62,.25),0 0 22px rgba(224,49,62,.9)}
.hot .lbl{position:absolute;top:50%;transform:translateY(-50%);font-size:12px;font-weight:600;line-height:1.3;color:#fff;padding:5px 9px;border-radius:999px;background:rgba(8,18,40,.78);border:1px solid rgba(255,255,255,.2);white-space:nowrap}
.hot-a{--x:38.5%;--y:79%}
.hot-a .lbl{right:calc(100% + 10px)}
.hot-b{--x:67%;--y:75%}
.hot-b .lbl{left:calc(100% + 10px)}
@media (max-width:599px){
  .hot .lbl{right:auto;left:50%;transform:translateX(-50%)}
  .hot-a .lbl{top:calc(100% + 8px)}
  .hot-b .lbl{top:auto;bottom:calc(100% + 8px)}
}
@media (min-width:600px){.hot .lbl{font-size:13px;padding:6px 10px}}
.stage-cap{margin-top:14px;font-size:15px;color:var(--muted)}

/* System: sticky product view + part cards */
.sys-grid{display:grid;gap:28px}
.sys-media{position:relative}
.sys-frame{position:relative;border-radius:var(--radius);overflow:hidden;padding:12px}
.sys-photo{position:relative;border-radius:16px;overflow:hidden;background:#fff}
.sys-photo img{width:100%;aspect-ratio:1000/622;object-fit:contain}
.ring{position:absolute;left:var(--x);top:var(--y);width:var(--s,20%);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:2.5px solid var(--brand-red);box-shadow:0 0 0 6px rgba(224,49,62,.15),0 0 26px rgba(224,49,62,.5);opacity:0;transition:opacity .35s var(--ease-out),transform .35s var(--ease-out);pointer-events:none}
.ring.wide{border-radius:40%;width:var(--s);aspect-ratio:auto;height:var(--h)}
.sys-media[data-active="1"] .r1,.sys-media[data-active="2"] .r2,.sys-media[data-active="3"] .r3{opacity:1}
.sys-cap{margin-top:12px;font-size:15px;color:var(--muted);padding-inline:4px}
.parts{list-style:none;padding:0;display:grid;gap:14px}
.part{padding:22px;transition:border-color .3s var(--ease-out),background .3s var(--ease-out)}
.part .n{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:700;font-size:15px;background:rgba(255,255,255,.1);border:1px solid var(--glass-line-2);margin-bottom:12px;transition:background .3s var(--ease-out)}
.part p{color:var(--muted);margin-top:6px;font-size:16px}
.part.is-active{border-color:rgba(224,49,62,.55);background:linear-gradient(160deg,rgba(224,49,62,.12),rgba(255,255,255,.035))}
.part.is-active .n{background:var(--red);border-color:transparent}
.place{margin-top:16px;padding:20px 22px;border-inline-start:3px solid var(--brand-red)}
.place h3{font-size:18px;margin-bottom:4px}
.place p{font-size:16px;color:#d8e1ee}

/* Process timeline */
.legend{display:flex;flex-wrap:wrap;gap:10px 22px;margin-bottom:28px;font-size:15px;color:var(--muted)}
.legend span{display:inline-flex;align-items:center;gap:8px}
.legend i{width:16px;height:16px;border-radius:5px;display:inline-block}
.legend .k-info{border:1.5px dashed #9fb2cc}
.legend .k-clin{background:linear-gradient(160deg,#2a63ff,#0a2a5e);border:1px solid rgba(255,255,255,.25)}
.timeline{position:relative}
.track{position:absolute;inset-block:22px;inset-inline-start:17px;width:2px;background:rgba(255,255,255,.12);border-radius:2px;overflow:hidden}
.track b{position:absolute;inset:0;background:linear-gradient(180deg,var(--brand-red),#7fa8ff);transform-origin:top;transform:scaleY(var(--p,1))}
.steps{list-style:none;padding:0;display:grid;gap:14px;counter-reset:s}
.step{position:relative;padding:20px;margin-inline-start:48px}
.step::before{counter-increment:s;content:counter(s);position:absolute;inset-inline-start:-48px;top:18px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:15px;background:linear-gradient(160deg,#2a63ff,#0a2a5e);border:1px solid rgba(255,255,255,.3);box-shadow:0 0 18px rgba(42,99,255,.45)}
.step.glass{border-radius:var(--radius-sm)}
.step.info{background:transparent;border:1.5px dashed rgba(170,190,220,.55);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.step.info::before{background:var(--bg-2);border:1.5px solid #9fb2cc;box-shadow:none}
.tag{display:inline-block;font-size:13px;font-weight:600;border-radius:999px;padding:3px 10px;margin-bottom:8px}
.tag-info{background:rgba(255,255,255,.08);color:#dfe7f3;border:1px solid rgba(255,255,255,.18)}
.tag-clin{background:rgba(42,99,255,.22);color:#d6e3ff;border:1px solid rgba(127,168,255,.4)}
.step p{color:var(--muted);font-size:16px;margin-top:4px}

/* Daily life band */
.daily{padding-block:24px 88px}
.daily-card{position:relative;overflow:hidden;border-radius:28px;border:1px solid var(--glass-line);min-height:440px;display:flex;align-items:flex-end}
.daily-bg{position:absolute;inset:-8% 0;background:url(img/daily-use.webp) 30% 50%/cover no-repeat;will-change:transform}
.daily-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,11,24,.96) 0%,rgba(5,11,24,.7) 38%,rgba(5,11,24,.05) 70%)}
.daily-copy{position:relative;z-index:1;margin:16px;padding:22px;max-width:520px}
.daily-copy h2{font-size:clamp(26px,5.4vw,40px)}
.daily-copy p{margin-top:10px;color:#d8e1ee;font-size:16px}

/* Ask: spotlight glass cards */
.ask-grid{list-style:none;padding:0;display:grid;gap:14px}
.ask-card{position:relative;padding:24px;overflow:hidden;isolation:isolate}
.ask-card::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .3s var(--ease-out);background:radial-gradient(320px circle at var(--sx,50%) var(--sy,50%),rgba(143,184,255,.18),transparent 60%)}
.ask-card:hover::before{opacity:1}
.ask-ico{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(160deg,rgba(42,99,255,.35),rgba(10,42,94,.5));border:1px solid rgba(127,168,255,.35);margin-bottom:16px}
.ask-ico svg{width:24px;height:24px;color:#dbe7ff}
.ask-card ul{padding-inline-start:20px;margin-top:10px;color:var(--muted);font-size:16px}
.ask-card li+li{margin-top:5px}
.ask-card li::marker{color:var(--brand-red)}
.ask-foot{margin-top:22px;color:var(--muted);font-size:16px}

/* Contact */
.contact-grid{display:grid;gap:28px;align-items:start}
.contact-copy p{color:var(--muted);margin-top:14px;font-size:18px}
.call-big{display:inline-flex;align-items:center;gap:12px;margin-top:18px;color:#fff;font-size:34px;font-weight:700;text-decoration:none;min-height:48px;letter-spacing:-.01em}
.call-big svg{width:30px;height:30px;color:var(--brand-red)}
@media (hover:hover){.call-big:hover{color:#ffd1d5}}
.disclaimer{margin-top:24px;padding:18px 20px;font-size:15px;color:#d8e1ee;border-radius:var(--radius-sm)}
.disclaimer strong{color:#fff}
.form-card{padding:24px 18px;border-radius:26px}
.form-card h3{font-size:24px}
.req-note{font-size:15px;color:var(--muted);margin:6px 0 20px}
.field{margin-bottom:18px}
.field label{display:block;font-weight:600;margin-bottom:8px}
.field input{display:block;width:100%;min-height:54px;padding:12px 16px;border:1.5px solid rgba(255,255,255,.28);border-radius:14px;background:rgba(3,8,20,.55);color:#fff;font-size:18px;transition:border-color .2s var(--ease-out),box-shadow .2s var(--ease-out)}
.field input:focus{outline:none;border-color:#8fb8ff;box-shadow:0 0 0 4px rgba(143,184,255,.28)}
.field input:focus-visible{outline:none}
.field input[aria-invalid="true"]{border-color:var(--err);box-shadow:0 0 0 4px rgba(255,120,110,.18)}
.hint{font-size:14px;color:var(--soft);margin-top:6px}
.err{font-size:15px;color:var(--err);font-weight:600;margin-top:8px;display:flex;gap:8px;align-items:flex-start}
.err[hidden]{display:none}
.err::before{content:"!";flex:none;width:20px;height:20px;border-radius:50%;background:var(--err);color:#2a0705;display:grid;place-items:center;font-size:13px;font-weight:800;line-height:1;margin-top:2px}
.consent{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start;font-size:15px;line-height:1.6}
.consent input{width:24px;height:24px;margin:2px 0 0;accent-color:var(--red);cursor:pointer}
.consent-wrap{margin:4px 0 20px}
.consent-wrap .err{margin-inline-start:40px}
.form-card .btn-primary{width:100%;font-size:18px}
.form-card .btn-primary[disabled]{background:#3a465a;color:#e3e9f2;box-shadow:none;cursor:progress}
.form-fine{font-size:14px;color:var(--soft);margin-top:12px}
.status{margin-top:14px;border-radius:14px;padding:12px 14px;font-size:16px;font-weight:500}
.status:empty{display:none}
.status.is-error{background:var(--err-bg);color:#ffd6d1;border:1px solid rgba(255,120,110,.45)}
.status.is-busy{background:rgba(255,255,255,.06);color:#fff;border:1px solid var(--glass-line)}
.status a{color:#fff;font-weight:700}
.success[hidden]{display:none}
.success{background:var(--ok-bg);border:1px solid rgba(126,226,168,.4);border-radius:18px;padding:20px}
.success h3{color:var(--ok);font-size:24px;margin-bottom:8px}
.success h3:focus{outline:none}
.success p+p{margin-top:6px}
.success a{color:#fff;font-weight:700}

/* FAQ */
.faq-list{max-width:880px;display:grid;gap:10px}
.faq details{border-radius:var(--radius-sm);overflow:hidden}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;font-weight:600;font-size:18px;min-height:60px;border-radius:var(--radius-sm)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:11px;height:11px;border-inline-end:2px solid #cfdcf2;border-bottom:2px solid #cfdcf2;transform:rotate(45deg);margin-top:-6px;transition:transform .25s var(--ease-out)}
.faq details[open] summary::after{transform:rotate(-135deg);margin-top:4px}
.faq .answer{padding:0 20px 20px;color:var(--muted)}

/* Footer */
.site-footer{border-top:1px solid rgba(255,255,255,.08);padding-block:36px;font-size:15px;color:var(--soft);background:rgba(3,7,16,.6)}
.foot-top{display:grid;gap:16px;margin-bottom:18px}
.foot-top img{width:124px}
.foot-links{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:4px 22px}
.foot-links a{display:inline-block;padding-block:8px;color:#cfdcf2}
.site-footer p+p{margin-top:8px}

/* Mobile action bar */
.mbar{display:none}
.js .mbar{position:fixed;inset-inline:10px;bottom:10px;z-index:45;display:grid;grid-template-columns:1fr auto;gap:8px;padding:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom));border-radius:999px;background:rgba(8,16,36,.72);border:1px solid var(--glass-line-2);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);box-shadow:0 20px 40px -16px rgba(0,0,0,.7);transform:translateY(140%);visibility:hidden;transition:transform .28s var(--ease-out),visibility 0s .28s}
.js .mbar.is-on{transform:none;visibility:visible;transition:transform .28s var(--ease-out)}
.mbar .btn{min-height:48px;padding:10px 16px;font-size:16px}

/* Motion setup: only hidden when JS motion is running; a failsafe in <head> removes .motion */
.motion .m-hero{opacity:0}

@media (min-width:600px){
  :root{--gutter:24px}
  .hero-actions{display:flex;justify-content:center;flex-wrap:wrap;max-width:none}
  .ask-grid{grid-template-columns:1fr 1fr}
  .form-card{padding:32px}
  .daily-copy{margin:28px;padding:28px}
}
@media (min-width:768px){
  section{padding-block:110px}
  .hero{padding-block:64px 0}
  .foot-top{grid-template-columns:auto 1fr;align-items:center}
  .foot-links{justify-content:flex-end}
  .daily-card{min-height:520px}
}
@media (min-width:1000px){
  :root{--gutter:32px}
  body{font-size:18px}
  .nav{min-height:72px}
  .brand img{width:150px}
  .nav-links{display:flex;gap:6px;list-style:none;padding:0;margin:0 auto 0 0}
  .nav-links a{display:block;color:#d6e0ee;text-decoration:none;font-weight:500;font-size:16px;padding:8px 14px;border-radius:999px;transition:background-color .2s var(--ease-out),color .2s var(--ease-out)}
  .nav-links a:hover{background:rgba(255,255,255,.08);color:#fff}
  .sys-grid{grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
  .sys-media{position:sticky;top:110px}
  .parts{gap:18px}
  .part{padding:28px}
  .timeline .track{inset-block:auto;top:39px;inset-inline:7%;width:auto;height:2px}
  .timeline .track b{transform-origin:right;transform:scaleX(var(--p,1))}
  .steps{grid-template-columns:repeat(5,1fr);gap:14px}
  .step{padding:78px 18px 22px;margin-inline-start:0}
  .step::before{top:20px;inset-inline-start:18px}
  .ask-grid{grid-template-columns:repeat(4,1fr)}
  .contact-grid{grid-template-columns:1fr 1fr;gap:72px}
  .js .mbar{display:none}
  body{padding-bottom:0}
}
@media (prefers-reduced-motion:reduce){
  html:not(.lenis){scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation:none!important}
  .ambient i{display:none}
}
@media (forced-colors:active){
  .btn,.field input,.glass,.step{border:2px solid CanvasText}
  .grad{color:CanvasText;background:none}
}

/* ==========================================================================
   Themes. <html data-theme="night|clinic|sand|sky">. "night" is the base above.
   The light themes share one override layer (.t-light) and differ only in tokens.
   ========================================================================== */
.logo-dark{display:none}
.t-light .logo-dark{display:block}
.t-light .logo-light{display:none}

[data-theme="clinic"]{
  --bg:#f5f7fb;--bg-2:#ffffff;--text:#0c1f3f;--muted:#46566c;--soft:#5a687c;
  --line:rgba(10,42,94,.12);--line-2:rgba(10,42,94,.22);
  --glass-tint:rgba(255,255,255,.72);--glass-tint-2:rgba(255,255,255,.45);
  --amb-1:#cddfff;--amb-2:#e3ecff;--amb-3:#ffd6da;--amb-top:#e9f0ff;
  --cta:var(--red);--cta-hover:var(--red-hover);--cta-glow:rgba(212,42,55,.35);
  --accent:#1d4ed8;--accent-soft:rgba(29,78,216,.1)
}
[data-theme="sand"]{
  --bg:#f6f1e9;--bg-2:#fffaf3;--text:#13233f;--muted:#525c6b;--soft:#5d6675;
  --line:rgba(70,50,30,.13);--line-2:rgba(70,50,30,.24);
  --glass-tint:rgba(255,251,245,.78);--glass-tint-2:rgba(255,248,238,.5);
  --amb-1:#efd9bf;--amb-2:#e9e1d3;--amb-3:#f5c6c0;--amb-top:#fbf3e7;
  --cta:var(--red);--cta-hover:var(--red-hover);--cta-glow:rgba(212,42,55,.3);
  --accent:#0a2a5e;--accent-soft:rgba(10,42,94,.08)
}
[data-theme="sky"]{
  --bg:#f1f6ff;--bg-2:#ffffff;--text:#0a2148;--muted:#43546d;--soft:#566580;
  --line:rgba(29,78,216,.14);--line-2:rgba(29,78,216,.26);
  --glass-tint:rgba(255,255,255,.62);--glass-tint-2:rgba(255,255,255,.35);
  --amb-1:#9fc2ff;--amb-2:#c4dcff;--amb-3:#ffd0d5;--amb-top:#d6e6ff;
  --cta:#0a2a5e;--cta-hover:#123d7d;--cta-glow:rgba(10,42,94,.35);
  --accent:#1d4ed8;--accent-soft:rgba(29,78,216,.12)
}
.t-light{
  color-scheme:light;
  --glass:var(--glass-tint);--glass-2:var(--glass-tint);--glass-line:var(--line);--glass-line-2:var(--line-2);
  --link:#1d4ed8;--focus:#1d4ed8;--err:#b3261e;--err-bg:#fdecea;--ok:#11663a;--ok-bg:#e7f5ec
}
.t-light a:hover{color:var(--navy)}
.t-light a.btn-primary:hover{color:#fff}
.t-light .kicker{color:var(--navy);background:var(--glass-tint)}
.t-light .grad{background:linear-gradient(100deg,var(--navy) 5%,var(--accent) 55%,var(--navy) 100%);-webkit-background-clip:text;background-clip:text}
.t-light .ambient{background:radial-gradient(120% 80% at 50% -10%,var(--amb-top) 0%,var(--bg) 60%)}
.t-light .ambient .a1{background:var(--amb-1);opacity:.6}
.t-light .ambient .a2{background:var(--amb-2);opacity:.7}
.t-light .ambient .a3{background:var(--amb-3);opacity:.45}
.t-light .grain{opacity:.025}
.t-light .glass{background:linear-gradient(160deg,var(--glass-tint),var(--glass-tint-2));box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 24px 50px -28px rgba(10,42,94,.28)}
.t-light .btn-primary{background:var(--cta);box-shadow:0 10px 26px -10px var(--cta-glow),inset 0 1px 0 rgba(255,255,255,.25)}
.t-light .btn-glass{color:var(--navy);background:rgba(255,255,255,.7)}
@media (hover:hover) and (pointer:fine){
  .t-light .btn-primary:hover{background:var(--cta-hover);box-shadow:0 14px 32px -10px var(--cta-glow)}
  .t-light .btn-glass:hover{background:#fff;color:var(--navy);border-color:var(--line-2)}
}
.t-light .site-header{background:rgba(255,255,255,.72);border-bottom-color:var(--line)}
.t-light .nav-call{color:var(--navy)}
@media (hover:hover){.t-light .nav-call:hover{background:#fff;color:var(--navy)}}
.t-light .stage-inner{background:radial-gradient(70% 70% at 50% 45%,#f6f7f9 0%,#eceef2 50%,#dfe4ec 85%,#d3dae6 100%)}
.t-light .stage-img{-webkit-mask-image:none;mask-image:none}
.t-light .part .n{background:var(--accent-soft);color:var(--navy)}
.t-light .part.is-active{border-color:rgba(212,42,55,.45);background:linear-gradient(160deg,rgba(224,49,62,.08),var(--glass-tint))}
.t-light .part.is-active .n{background:var(--red);color:#fff}
.t-light .place p{color:var(--text)}
.t-light .legend .k-info{border-color:#6f819b}
.t-light .legend .k-clin{border-color:transparent}
.t-light .track{background:var(--line)}
.t-light .step::before{color:#fff;border-color:transparent;box-shadow:0 6px 16px -6px rgba(29,78,216,.6)}
.t-light .step.info{border-color:rgba(10,42,94,.35)}
.t-light .step.info::before{background:#fff;color:var(--navy);border:1.5px solid var(--navy)}
.t-light .tag-info{background:#fff;color:var(--navy);border-color:var(--line-2)}
.t-light .tag-clin{background:var(--accent-soft);color:var(--navy);border-color:transparent}
.t-light .daily-card::after{background:linear-gradient(0deg,color-mix(in srgb,var(--bg) 96%,transparent) 0%,color-mix(in srgb,var(--bg) 60%,transparent) 36%,transparent 68%)}
.t-light .daily-copy p{color:var(--text)}
.t-light .ask-card::before{background:radial-gradient(320px circle at var(--sx,50%) var(--sy,50%),rgba(29,78,216,.1),transparent 60%)}
.t-light .ask-ico{background:var(--accent-soft);border-color:transparent}
.t-light .ask-ico svg{color:var(--accent)}
.t-light .call-big{color:var(--navy)}
@media (hover:hover){.t-light .call-big:hover{color:var(--red)}}
.t-light .disclaimer{color:var(--text)}
.t-light .disclaimer strong{color:var(--navy)}
.t-light .field input{background:#fff;color:var(--text);border-color:rgba(10,42,94,.32)}
.t-light .field input:focus{border-color:#1d4ed8;box-shadow:0 0 0 4px rgba(29,78,216,.18)}
.t-light .field input[aria-invalid="true"]{background:#fffafa;box-shadow:0 0 0 4px rgba(179,38,30,.12)}
.t-light .err::before{color:#fff}
.t-light .form-card .btn-primary[disabled]{background:#c9d3df;color:#2a3a4f}
.t-light .status.is-error{color:#7d1a14;border-color:#f3b7b2}
.t-light .status.is-busy{background:#fff;color:var(--text)}
.t-light .status a,.t-light .success a{color:inherit}
.t-light .success{border-color:#b5dcc6}
.t-light .faq summary::after{border-color:var(--navy)}
.t-light .site-footer{background:rgba(255,255,255,.55);border-top-color:var(--line)}
.t-light .foot-links a{color:var(--navy)}
.t-light .js .mbar,.t-light.js .mbar{background:rgba(255,255,255,.82);box-shadow:0 18px 36px -16px rgba(10,42,94,.35)}
@media (min-width:1000px){
  .t-light .nav-links a{color:var(--text)}
  .t-light .nav-links a:hover{background:var(--accent-soft);color:var(--navy)}
}
