/* עולם הריאות · מערכת העיצוב המשותפת */
@font-face{font-family:'Assistant';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/assistant-he.woff2) format('woff2');unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:'Assistant';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/assistant-lat.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Rubik';font-style:normal;font-weight:500 800;font-display:swap;src:url(/assets/fonts/rubik-he.woff2) format('woff2');unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:'Rubik';font-style:normal;font-weight:500 800;font-display:swap;src:url(/assets/fonts/rubik-lat.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --bg:oklch(0.972 0.014 95);--card:oklch(0.996 0.006 95);
  --fg:oklch(0.25 0.045 200);--fg-soft:oklch(0.34 0.04 198);--muted:oklch(0.44 0.038 195);--faint:oklch(0.48 0.03 190);
  --primary:oklch(0.44 0.085 185);--primary-fg:oklch(0.98 0.012 120);
  --accent:oklch(0.52 0.15 40);--accent-hover:oklch(0.46 0.15 40);--accent-fg:oklch(0.99 0.01 60);--accent-soft:oklch(0.54 0.15 40 / .12);
  --band:oklch(0.936 0.028 165);--band-deep:oklch(0.912 0.032 165);
  --border:oklch(0.878 0.024 140);--border-soft:oklch(0.878 0.024 140 / .6);--border-ui:oklch(0.58 0.035 185);
  --shadow-card:0 20px 60px -20px oklch(0.35 0.05 200 / .22);--shadow-soft:0 6px 24px oklch(0.35 0.05 200 / .08);
  --grid-line:oklch(0.25 0.045 200 / .07);--header-bg:oklch(0.972 0.014 95 / .86);
  --danger:oklch(0.47 0.17 27);--danger-soft:oklch(0.55 0.19 27 / .09);
  --air-a:oklch(0.86 0.07 170 / .55);--air-b:oklch(0.88 0.07 60 / .5);--air-c:oklch(0.9 0.05 215 / .5);
  --font-d:'Rubik','Assistant','Segoe UI',Arial,sans-serif;--font-b:'Assistant','Segoe UI',Tahoma,Arial,sans-serif;--font-v:'Playpen Sans Hebrew','Assistant',cursive;
  --r-s:11px;--r-m:16px;--r-l:24px;--ease:cubic-bezier(.2,.7,.2,1);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:oklch(0.205 0.028 200);--card:oklch(0.245 0.03 200);
  --fg:oklch(0.94 0.015 160);--fg-soft:oklch(0.86 0.02 170);--muted:oklch(0.74 0.028 180);--faint:oklch(0.69 0.025 185);
  --primary:oklch(0.74 0.095 178);--primary-fg:oklch(0.17 0.03 200);
  --accent:oklch(0.73 0.14 45);--accent-hover:oklch(0.78 0.14 45);--accent-fg:oklch(0.16 0.04 45);--accent-soft:oklch(0.71 0.14 45 / .16);
  --band:oklch(0.24 0.033 192);--band-deep:oklch(0.26 0.035 192);
  --border:oklch(0.33 0.028 195);--border-soft:oklch(0.33 0.028 195 / .6);--border-ui:oklch(0.56 0.035 190);
  --shadow-card:0 20px 60px -20px oklch(0 0 0 / .5);--shadow-soft:0 6px 24px oklch(0 0 0 / .3);
  --grid-line:oklch(0.94 0.015 160 / .05);--header-bg:oklch(0.205 0.028 200 / .86);
  --danger:oklch(0.78 0.13 27);--danger-soft:oklch(0.7 0.16 27 / .13);
  --air-a:oklch(0.5 0.09 178 / .32);--air-b:oklch(0.55 0.1 50 / .2);--air-c:oklch(0.45 0.08 230 / .3);
  color-scheme:dark;
}}
:root[data-theme="dark"]{
  --bg:oklch(0.205 0.028 200);--card:oklch(0.245 0.03 200);
  --fg:oklch(0.94 0.015 160);--fg-soft:oklch(0.86 0.02 170);--muted:oklch(0.74 0.028 180);--faint:oklch(0.69 0.025 185);
  --primary:oklch(0.74 0.095 178);--primary-fg:oklch(0.17 0.03 200);
  --accent:oklch(0.73 0.14 45);--accent-hover:oklch(0.78 0.14 45);--accent-fg:oklch(0.16 0.04 45);--accent-soft:oklch(0.71 0.14 45 / .16);
  --band:oklch(0.24 0.033 192);--band-deep:oklch(0.26 0.035 192);
  --border:oklch(0.33 0.028 195);--border-soft:oklch(0.33 0.028 195 / .6);--border-ui:oklch(0.56 0.035 190);
  --shadow-card:0 20px 60px -20px oklch(0 0 0 / .5);--shadow-soft:0 6px 24px oklch(0 0 0 / .3);
  --grid-line:oklch(0.94 0.015 160 / .05);--header-bg:oklch(0.205 0.028 200 / .86);
  --danger:oklch(0.78 0.13 27);--danger-soft:oklch(0.7 0.16 27 / .13);
  --air-a:oklch(0.5 0.09 178 / .32);--air-b:oklch(0.55 0.1 50 / .2);--air-c:oklch(0.45 0.08 230 / .3);
  color-scheme:dark;
}
html.a11y-contrast{
  --bg:#fff;--card:#fff;--fg:#000;--fg-soft:#000;--muted:#1a1a1a;--faint:#262626;
  --primary:#004d44;--primary-fg:#fff;--accent:#8a2800;--accent-hover:#6b1f00;--accent-fg:#fff;--accent-soft:rgba(138,40,0,.1);
  --band:#f4f4f4;--band-deep:#ebebeb;--border:#000;--border-soft:#000;--border-ui:#000;--header-bg:#fff;--grid-line:transparent;
  --danger:#8a0000;--danger-soft:#fbeaea;--air-a:transparent;--air-b:transparent;--air-c:transparent;color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
html.a11y-big1{font-size:112%}html.a11y-big2{font-size:125%}html.a11y-small{font-size:90%}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-b);font-size:clamp(1.0625rem,.98rem + .4vw,1.1875rem);line-height:1.75;letter-spacing:0;-webkit-font-smoothing:antialiased;overflow-x:clip;text-wrap:pretty}
h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
h1,h2,h3,h4{font-family:var(--font-d);letter-spacing:0;text-wrap:balance;color:var(--fg)}
h1{font-size:clamp(2.2rem,1.5rem + 3.1vw,4rem);line-height:1.14;font-weight:800}
h2{font-size:clamp(1.65rem,1.28rem + 1.6vw,2.6rem);line-height:1.2;font-weight:800}
h3{font-size:clamp(1.2rem,1.08rem + .5vw,1.6rem);line-height:1.32;font-weight:700}
h4{font-size:clamp(1.05rem,1rem + .25vw,1.2rem);line-height:1.4;font-weight:700}
a{color:inherit}
img,svg,video{max-width:100%}
img{height:auto;display:block}
button{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}
.btn-cta:focus-visible,.fab-wa:focus-visible,.skip:focus-visible,.a11y-grid button[aria-pressed="true"]:focus-visible{outline-color:var(--fg)}
[id]{scroll-margin-top:92px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}
.en{unicode-bidi:isolate}
.skip{position:absolute;inset-inline-start:12px;top:-60px;z-index:200;background:var(--accent);color:var(--accent-fg);padding:10px 18px;border-radius:10px;font-weight:700;text-decoration:none;transition:top .2s}
.skip:focus{top:12px}

.wrap{max-width:1200px;margin-inline:auto;padding-inline:clamp(1.25rem,4vw,2.25rem)}
.wrap-n{max-width:820px}
.sec{padding-block:clamp(3.75rem,8vw,6.75rem)}
.sec-t{padding-block:clamp(2.75rem,6vw,4.5rem)}
.band{background:var(--band);border-block:1px solid var(--border)}
.band-deep{background:var(--band-deep);border-block:1px solid var(--border)}
.gbg{position:relative}
.gbg::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.6;background-image:linear-gradient(to right,var(--grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line) 1px,transparent 1px);background-size:48px 48px}
.gbg>*{position:relative}

.eb{font-size:.9rem;font-weight:700;color:var(--muted);font-family:var(--font-b)}
.eb b{color:var(--accent);font-weight:700}
.sec-hd{display:grid;gap:14px;max-width:46rem}
.sec-hd h2{margin-top:2px}
.sec-hd .aside{color:var(--muted);max-width:62ch}
.sec-hd.split{max-width:none}
@media(min-width:960px){.sec-hd.split{grid-template-columns:1.1fr .9fr;gap:56px;align-items:end}.sec-hd.split .aside{padding-bottom:6px}}
.hl{color:var(--primary)}
.uline{background:linear-gradient(transparent 62%,var(--accent-soft) 62%);padding-inline:.08em}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 26px;border-radius:999px;font-family:var(--font-b);font-weight:700;font-size:1.02rem;line-height:1.2;text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:transform .25s var(--ease),box-shadow .25s,background .15s,border-color .15s;white-space:nowrap}
.btn svg{flex:none}
.btn-cta{background:var(--accent);color:var(--accent-fg);position:relative;overflow:hidden}
.btn-cta::after{content:"";position:absolute;inset-block:0;inset-inline-start:-60%;width:40%;background:linear-gradient(100deg,transparent,oklch(1 0 0 / .26),transparent);transform:skewX(-18deg);opacity:0}
.btn-cta:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 14px 30px -14px var(--accent)}
.btn-cta:hover::after{animation:shine .7s ease 1}
@keyframes shine{0%{inset-inline-start:-60%;opacity:1}100%{inset-inline-start:130%;opacity:0}}
.btn-cta:active{transform:none}
.btn-ghost{background:transparent;color:var(--fg);border-color:var(--border-ui)}
.btn-ghost:hover{background:var(--band);transform:translateY(-2px)}
.btn-lg{min-height:58px;padding:0 32px;font-size:1.1rem}
.btn-sm{min-height:44px;padding:0 20px;font-size:.95rem}
.wa-ic{color:#15803d;flex:none}
:root[data-theme="dark"] .wa-ic{color:#4ade80}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .wa-ic{color:#4ade80}}
html.a11y-contrast .wa-ic{color:#0b5e2a}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.cta-micro{margin-top:14px;font-size:.9rem;color:var(--muted)}
.more{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--primary);text-decoration:none;border-bottom:1.5px solid transparent;transition:border-color .2s,gap .2s}
.more:hover{border-color:currentColor;gap:12px}
.more svg{flex:none}

/* header */
.hd{position:sticky;top:0;z-index:70;background:var(--header-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .25s}
.hd.scrolled{border-bottom-color:var(--border)}
.hd-in{display:flex;align-items:center;justify-content:space-between;gap:18px;height:70px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fg);min-height:46px}
.logo-mark{width:38px;height:38px;border-radius:11px;flex:none;background:var(--primary);color:var(--primary-fg);display:grid;place-items:center}
.logo-txt{line-height:1.15}
.logo-txt .a{font-family:var(--font-d);font-weight:700;font-size:17.5px;display:block}
.logo-txt .b{font-size:.86rem;color:var(--muted);display:block}
.nav{display:none;align-items:center;gap:6px}
.nav>a,.nav .dd-t{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 13px;font-size:.96rem;font-weight:600;color:var(--fg-soft);text-decoration:none;background:none;border:0;cursor:pointer;border-radius:10px}
.nav>a::after,.nav .dd-t::after{content:"";position:absolute;inset-inline:13px;bottom:7px;height:2px;border-radius:2px;background:var(--accent);transform:scaleX(0);transition:transform .3s var(--ease)}
.nav>a:hover::after,.nav .dd-t:hover::after,.nav [aria-current]::after,.nav .dd-t.cur::after{transform:scaleX(1)}
.nav [aria-current],.nav .dd-t.cur{color:var(--fg)}
.dd{position:relative}
.dd-t svg{transition:transform .2s}
.dd.open .dd-t svg{transform:rotate(180deg)}
.dd-m{position:absolute;top:calc(100% + 6px);inset-inline-start:-14px;width:340px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-m);box-shadow:var(--shadow-card);padding:8px;opacity:0;visibility:hidden;transform:translateY(-6px) scale(.98);transform-origin:top;transition:opacity .15s,transform .15s,visibility .15s}
.dd.open .dd-m{opacity:1;visibility:visible;transform:none}
.dd-m a{display:block;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:600;font-size:.97rem;color:var(--fg-soft);line-height:1.4}
.dd-m a small{display:block;font-weight:400;font-size:.875rem;color:var(--muted)}
.dd-m a:hover,.dd-m a:focus-visible{background:var(--band);color:var(--fg)}
.dd-m .all{margin-top:4px;border-top:1px solid var(--border);border-radius:0 0 10px 10px;color:var(--primary)}
.hd-cta{display:none}
.burger{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;border:1.5px solid var(--border-ui);background:transparent;color:var(--fg);cursor:pointer}
.hd-tel{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--accent);color:var(--accent-fg)}
.hd-r{display:flex;gap:8px;align-items:center}
@media(min-width:1000px){.nav{display:flex}.hd-cta{display:inline-flex}.burger,.hd-tel{display:none}}
.mm{position:fixed;inset:0;z-index:90;background:var(--bg);display:flex;flex-direction:column;visibility:hidden;opacity:0;transition:opacity .25s,visibility .25s;overflow-y:auto}
.mm.open{visibility:visible;opacity:1;transition:opacity .25s,visibility 0s}
.mm-top{display:flex;align-items:center;justify-content:space-between;height:70px;padding-inline:clamp(1.25rem,4vw,2.25rem);border-bottom:1px solid var(--border);flex:none}
.mm nav{padding:18px clamp(1.25rem,4vw,2.25rem) 8px;display:grid;gap:2px}
.mm nav a{display:flex;align-items:center;min-height:50px;padding:0 12px;border-radius:12px;text-decoration:none;font-family:var(--font-d);font-weight:700;font-size:1.25rem;color:var(--fg);opacity:0;transform:translateY(10px);transition:opacity .35s var(--ease),transform .35s var(--ease)}
.mm.open nav a{opacity:1;transform:none}
.mm nav a[aria-current]{color:var(--primary)}
.mm .grp{margin:10px 12px 2px;font-size:.88rem;font-weight:700;color:var(--muted)}
.mm nav a.sub{font-family:var(--font-b);font-weight:600;font-size:1.05rem;min-height:46px;color:var(--fg-soft)}
.mm-foot{margin-top:auto;padding:18px clamp(1.25rem,4vw,2.25rem) 28px;display:grid;gap:10px;border-top:1px solid var(--border)}

/* crumbs */
.crumbs{font-size:.9rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.crumbs a{color:var(--muted);text-decoration:none;border-bottom:1px solid transparent}
.crumbs a:hover{color:var(--fg);border-color:currentColor}
.crumbs span[aria-hidden]{opacity:.6}

/* home hero (video) */
.hero{position:relative;min-height:94svh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:oklch(0.22 0.03 195)}
.hero-vid,.hero-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,25,23,.38) 0%,rgba(10,25,23,.22) 38%,rgba(8,20,19,.9) 100%)}
.hero-in{position:relative;width:100%;padding-top:110px;padding-bottom:46px}
.hero-copy{max-width:720px}
.hero h1{color:#fff;display:grid;gap:16px}
.h1-who{font-family:var(--font-b);font-weight:700;font-size:clamp(1rem,.9rem + .5vw,1.2rem);line-height:1.5;display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 10px;color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.5)}
.h1-who i{width:8px;height:8px;border-radius:50%;background:oklch(0.78 0.13 45);flex:none}
.h1-big{font-size:clamp(2.35rem,1.4rem + 4.6vw,4.7rem);line-height:1.1;text-shadow:0 2px 30px rgba(0,0,0,.45)}
.h1-big em{font-style:normal;color:oklch(0.88 0.09 165)}
.hero .sub{margin-top:20px;max-width:34em;font-size:clamp(1.08rem,1rem + .5vw,1.3rem);line-height:1.7;color:rgba(255,255,255,.95);text-shadow:0 1px 16px rgba(0,0,0,.45)}
.hero .sub b{color:#fff}
.hero .who{margin-top:10px;font-size:1rem;font-weight:600;color:rgba(255,255,255,.88);text-shadow:0 1px 12px rgba(0,0,0,.5);max-width:36em}
.hero .cta-row{margin-top:26px}
.hero .btn-ghost{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.55);color:#fff;backdrop-filter:blur(6px)}
.hero .btn-ghost:hover{background:rgba(255,255,255,.24)}
.hero .wa-ic{color:#5fe08f}
.hero .cta-micro{color:rgba(255,255,255,.85);text-shadow:0 1px 10px rgba(0,0,0,.45)}
.hero .cta-micro a{color:#fff}
.vpause{position:absolute;top:86px;inset-inline-end:16px;z-index:5;width:46px;height:46px;border-radius:50%;border:1px solid oklch(1 0 0 / .45);background:oklch(0.2 0.03 200 / .6);backdrop-filter:blur(6px);color:#fff;display:grid;place-items:center;cursor:pointer}
.vpause:hover{background:oklch(0.2 0.03 200 / .85)}
.scroll-cue{position:absolute;bottom:14px;inset-inline-start:50%;width:26px;height:40px;margin-inline-start:-13px;border:1.5px solid rgba(255,255,255,.6);border-radius:14px;display:none}
.scroll-cue::after{content:"";position:absolute;top:8px;inset-inline-start:50%;width:4px;height:8px;margin-inline-start:-2px;border-radius:2px;background:#fff;animation:cue 2s ease-in-out infinite}
@keyframes cue{0%,100%{transform:translateY(0);opacity:1}60%{transform:translateY(12px);opacity:.2}}
@media(min-width:980px){
  .hero{align-items:center;min-height:92vh}
  .hero-in{padding-top:120px;padding-bottom:70px}
  .hero-shade{background:linear-gradient(to left,rgba(8,22,20,.86) 0%,rgba(8,22,20,.5) 46%,rgba(8,22,20,.1) 80%),linear-gradient(180deg,rgba(8,22,20,.22),rgba(8,22,20,.32))}
  .scroll-cue{display:block}
  .vpause{top:auto;bottom:18px;inset-inline-end:auto;inset-inline-start:18px}
}
html.a11y-contrast .hero-shade{background:rgba(0,0,0,.86)}

/* trust strip */
.trust{border-bottom:1px solid var(--border);background:var(--band)}
.trust-in{display:flex;flex-direction:column;gap:14px;align-items:flex-start;padding-block:26px}
@media(min-width:960px){.trust-in{flex-direction:row;justify-content:space-between;align-items:center}}
.trust .cap{font-size:.92rem;font-weight:700;color:var(--muted);max-width:26em}
.trust ul{display:flex;flex-wrap:wrap;gap:10px 26px}
.trust li{display:flex;align-items:center;gap:8px;color:var(--fg-soft);font-family:var(--font-d);font-weight:500;font-size:.98rem}
.trust li svg{color:var(--primary);flex:none}

/* inner "air" hero */
.ah{position:relative;overflow:hidden;background:var(--band);border-bottom:1px solid var(--border);isolation:isolate}
.air{position:absolute;inset:0;z-index:-1;pointer-events:none}
.air i{position:absolute;border-radius:50%;filter:blur(70px);will-change:transform}
.air i:nth-child(1){width:min(52vw,640px);aspect-ratio:1;background:var(--air-a);top:-22%;inset-inline-start:-8%;animation:drift1 34s ease-in-out infinite alternate}
.air i:nth-child(2){width:min(44vw,520px);aspect-ratio:1;background:var(--air-b);bottom:-34%;inset-inline-end:4%;animation:drift2 41s ease-in-out infinite alternate}
.air i:nth-child(3){width:min(36vw,420px);aspect-ratio:1;background:var(--air-c);top:8%;inset-inline-end:28%;animation:drift1 47s ease-in-out infinite alternate-reverse}
@keyframes drift1{to{transform:translate3d(6%,10%,0) scale(1.12)}}
@keyframes drift2{to{transform:translate3d(-8%,-8%,0) scale(1.08)}}
.breath{position:absolute;inset-inline:0;bottom:-1px;height:54px;z-index:-1;overflow:hidden;color:var(--primary);opacity:.34}
.breath svg{display:block;width:200%;max-width:none;height:100%;animation:flow 46s linear infinite}
@keyframes flow{to{transform:translateX(50%)}}
.ah-in{padding-top:clamp(1.75rem,4vw,2.75rem);padding-bottom:clamp(3.25rem,7vw,5.5rem);display:grid;gap:clamp(1.75rem,4vw,3.5rem);align-items:center}
@media(min-width:980px){.ah-in.has-sig{grid-template-columns:minmax(0,1.32fr) minmax(0,.9fr)}}
.ah h1{margin-top:22px;font-size:clamp(2.1rem,1.5rem + 2.8vw,3.7rem)}
.ah .tag{margin-top:14px;font-family:var(--font-d);font-weight:500;font-size:clamp(1.15rem,1.05rem + .6vw,1.5rem);line-height:1.45;color:var(--primary);max-width:28em}
.lede{margin-top:20px;font-size:clamp(1.1rem,1.04rem + .32vw,1.26rem);line-height:1.78;color:var(--fg-soft);max-width:66ch}
.ah .cta-row{margin-top:28px}
.ah .meta{margin-top:20px;font-size:.9rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center}
.ah .meta a{color:var(--fg-soft);font-weight:600}
.ah .eb{margin-top:20px;display:block}
.ah.slim .ah-in{padding-bottom:clamp(2.5rem,5vw,4rem)}

/* signature diagram card */
.sig{background:color-mix(in oklch,var(--card) 82%,transparent);border:1px solid var(--border);border-radius:var(--r-l);padding:22px 22px 16px;box-shadow:var(--shadow-card);backdrop-filter:blur(6px)}
.sig svg{display:block;width:100%;height:auto;overflow:visible;direction:ltr}
.sig figcaption{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);font-size:.88rem;color:var(--muted);line-height:1.55}
.sig text{font-family:var(--font-b);fill:var(--fg-soft);font-size:13px}
.sig .t-b{font-weight:700;fill:var(--fg);font-size:14px}
.sig .t-s{font-size:11.5px;fill:var(--muted)}
.sig .ln{fill:none;stroke:var(--primary);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.sig .ln2{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.sig .ax{stroke:var(--border-ui);stroke-width:1.2;fill:none}
.sig .dash{stroke:var(--muted);stroke-width:1.2;stroke-dasharray:4 5;fill:none}
.sig .fill-p{fill:var(--primary)}.sig .fill-a{fill:var(--accent)}.sig .fill-b{fill:var(--band-deep)}.sig .fill-c{fill:var(--card)}
.sig .soft-p{fill:color-mix(in oklch,var(--primary) 16%,transparent)}.sig .soft-a{fill:var(--accent-soft)}
.sig .st-p{stroke:var(--primary)}.sig .st-a{stroke:var(--accent)}.sig .st-b{stroke:var(--border-ui)}
.sig .draw{stroke-dasharray:var(--len,900);stroke-dashoffset:var(--len,900)}
.sig.in .draw{animation:draw 2.2s var(--ease) forwards;animation-delay:var(--d,0s)}
@keyframes draw{to{stroke-dashoffset:0}}
.sig .pop{opacity:0;transform:scale(.6);transform-box:fill-box;transform-origin:center}
.sig.in .pop{animation:pop .5s var(--ease) forwards;animation-delay:var(--d,0s)}
@keyframes pop{to{opacity:1;transform:none}}
.sig .fade{opacity:0}
.sig.in .fade{animation:fadein .6s ease forwards;animation-delay:var(--d,0s)}
@keyframes fadein{to{opacity:1}}
.sig .pulse{transform-box:fill-box;transform-origin:center;animation:airway 5s ease-in-out infinite}
@keyframes airway{0%,100%{transform:scale(1)}50%{transform:scale(.62)}}
.sig .beat{transform-box:fill-box;transform-origin:center;animation:beat 3.2s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes beat{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.55}}

/* prose */
.prose{max-width:68ch}
.prose>*+*{margin-top:1.05em}
.prose h2{margin-top:2.1em;font-size:clamp(1.5rem,1.25rem + 1.1vw,2.1rem)}
.prose h3{margin-top:1.7em;font-size:clamp(1.18rem,1.1rem + .35vw,1.4rem)}
.prose h2+*,.prose h3+*{margin-top:.7em}
.prose p,.prose li{color:var(--fg-soft)}
.prose strong,.prose b{color:var(--fg);font-weight:700}
.prose a{color:var(--primary);font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
.prose a:hover{color:var(--accent)}
.prose ul,.prose ol{display:grid;gap:.5em;padding-inline-start:1.3em}
.prose ul li{list-style:none;position:relative}
.prose ul li::before{content:"";position:absolute;inset-inline-start:-1.15em;top:.72em;width:7px;height:7px;border-radius:50%;background:var(--primary)}
.prose ol{list-style:decimal;padding-inline-start:1.5em}
.prose ol li::marker{font-family:var(--font-d);font-weight:700;color:var(--primary)}
.prose>:first-child{margin-top:0}
.prose .wide{max-width:none}

/* layouts with side rail */
.rail{display:grid;gap:clamp(2rem,5vw,4.5rem)}
@media(min-width:1040px){.rail{grid-template-columns:minmax(0,1fr) 300px;align-items:start}.rail>aside{position:sticky;top:96px}}
.toc{border:1px solid var(--border);border-radius:var(--r-m);background:var(--card);padding:18px 20px}
.toc h2{font-size:.92rem;font-family:var(--font-b);font-weight:700;color:var(--muted)}
.toc ol{margin-top:10px;display:grid;gap:2px}
.toc a{display:block;padding:7px 10px;margin-inline:-10px;border-radius:9px;text-decoration:none;font-size:.95rem;line-height:1.45;color:var(--fg-soft);font-weight:600}
.toc a:hover{background:var(--band);color:var(--fg)}
.side-cta{margin-top:16px;border-radius:var(--r-m);background:var(--primary);color:var(--primary-fg);padding:22px 20px;display:grid;gap:12px}
.side-cta p{font-family:var(--font-d);font-weight:700;font-size:1.15rem;line-height:1.35}
.side-cta small{font-size:.9rem;opacity:.92;line-height:1.5}
.side-cta .btn{width:100%}
.side-cta .btn-ghost{color:var(--primary-fg);border-color:color-mix(in oklch,var(--primary-fg) 55%,transparent)}
.side-cta .btn-ghost:hover{background:color-mix(in oklch,var(--primary-fg) 14%,transparent)}
.side-cta .wa-ic{color:currentColor}
@media(max-width:1039px){.rail>aside .toc{display:none}}

/* callouts */
.facts{border:1px solid var(--border);border-inline-start:4px solid var(--primary);background:var(--card);border-radius:var(--r-m);padding:20px 22px}
.facts h2,.facts h3{font-size:1.05rem;font-family:var(--font-d)}
.facts ul{margin-top:10px;display:grid;gap:8px;padding:0}
.facts li{position:relative;padding-inline-start:26px;color:var(--fg-soft);line-height:1.6}
.facts li::before{content:"";position:absolute;inset-inline-start:2px;top:.5em;width:14px;height:8px;border-inline-start:2.5px solid var(--primary);border-bottom:2.5px solid var(--primary);transform:rotate(-45deg);background:none;border-radius:0}
.prose .facts li::before{inset-inline-start:2px;top:.5em;width:14px;height:8px;background:none;border-radius:0}
.alert{border:1px solid color-mix(in oklch,var(--danger) 40%,var(--border));background:var(--danger-soft);border-radius:var(--r-m);padding:20px 22px}
.alert h2,.alert h3{font-size:1.12rem;color:var(--danger);display:flex;gap:10px;align-items:center;font-family:var(--font-d)}
.alert ul{margin-top:10px;display:grid;gap:7px;padding-inline-start:1.2em}
.alert li{list-style:disc;color:var(--fg-soft)}
.prose .alert li::before{display:none}
.alert p{margin-top:10px;color:var(--fg);font-weight:600}
.alert a{color:var(--danger);font-weight:700}
.note{display:flex;gap:12px;align-items:flex-start;background:var(--card);border:1px solid var(--border);border-inline-start:3px solid var(--accent);border-radius:12px;padding:14px 16px;max-width:68ch}
.note svg{flex:none;color:var(--accent);margin-top:4px}
.note p{color:var(--fg-soft);font-size:1rem;line-height:1.6}
.disc{margin-top:28px;font-size:.93rem;line-height:1.7;color:var(--muted);border-top:1px solid var(--border);padding-top:18px;max-width:68ch}
.sources{margin-top:32px;max-width:68ch}
.sources h2{font-size:1.1rem}
.sources ol{margin-top:10px;display:grid;gap:8px;list-style:decimal;padding-inline-start:1.4em;font-size:.95rem;color:var(--fg-soft)}
.sources a{color:var(--primary);text-decoration:underline;text-underline-offset:3px;unicode-bidi:isolate}
.sources .org{color:var(--muted)}

/* table */
.tbl-w{overflow-x:auto;border:1px solid var(--border);border-radius:var(--r-m);background:var(--card);-webkit-overflow-scrolling:touch}
.tbl{width:100%;border-collapse:collapse;font-size:.98rem;min-width:520px}
.tbl caption{caption-side:top;text-align:start;padding:14px 18px 0;font-weight:700;font-family:var(--font-d);color:var(--fg)}
.tbl th,.tbl td{text-align:start;padding:13px 18px;border-bottom:1px solid var(--border);vertical-align:top;line-height:1.55}
.tbl thead th{font-size:.9rem;color:var(--muted);font-weight:700;background:var(--band)}
.tbl tbody th{font-weight:700;color:var(--fg);font-family:var(--font-b);width:24%;min-width:8.5em}
.tbl td{color:var(--fg-soft)}
.tbl tr:last-child td,.tbl tr:last-child th{border-bottom:0}
@media(max-width:640px){
  .tbl{min-width:0}.tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .tbl tr{display:block;padding:14px 16px;border-bottom:1px solid var(--border)}.tbl tr:last-child{border-bottom:0}
  .tbl th,.tbl td{display:block;padding:0;border:0}.tbl tbody th{width:auto;min-width:0;font-size:1.05rem;margin-bottom:6px}
  .tbl td{padding-top:4px}.tbl td::before{content:attr(data-l) ": ";font-weight:700;color:var(--muted);font-size:.88rem}
}

/* recognition list */
.know{display:grid;gap:12px}
@media(min-width:760px){.know{grid-template-columns:1.25fr 1fr;gap:14px 16px}.know li:first-child{grid-row:span 2}}
.know li{background:var(--card);border:1px solid var(--border);border-radius:var(--r-m);padding:18px 20px;color:var(--fg-soft);line-height:1.6;display:flex;gap:14px;align-items:flex-start;transition:transform .25s var(--ease),box-shadow .25s,border-color .25s}
.know li:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft);border-color:var(--primary)}
.know li:first-child{font-family:var(--font-d);font-weight:500;font-size:clamp(1.2rem,1.1rem + .6vw,1.55rem);line-height:1.4;color:var(--fg);background:var(--primary);color:var(--primary-fg);border-color:transparent;align-items:flex-end;min-height:170px}
.know .k{flex:none;width:34px;height:34px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin-top:2px}
.know li:first-child .k{background:color-mix(in oklch,var(--primary-fg) 16%,transparent);color:var(--primary-fg)}

/* journey steps */
.journey{position:relative;display:grid;gap:22px;margin-top:38px;padding-inline-start:34px}
.journey::before{content:"";position:absolute;inset-inline-start:11px;top:8px;bottom:8px;width:2px;background:var(--border)}
.journey::after{content:"";position:absolute;inset-inline-start:11px;top:8px;width:2px;height:calc((100% - 16px) * var(--p,0));background:var(--accent);transition:height .2s linear}
.jstep{position:relative;background:var(--card);border:1px solid var(--border);border-radius:var(--r-m);padding:20px 22px;max-width:44rem;transition:border-color .4s,box-shadow .4s}
.jstep::before{content:"";position:absolute;inset-inline-start:-31px;top:24px;width:16px;height:16px;border-radius:50%;background:var(--bg);border:3px solid var(--border-ui);transition:border-color .4s,background .4s}
.jstep.on{border-color:var(--primary);box-shadow:var(--shadow-soft)}
.jstep.on::before{border-color:var(--accent);background:var(--accent)}
.jstep h3{font-size:1.2rem}
.jstep p{margin-top:6px;color:var(--fg-soft);max-width:60ch}
.jstep .when{font-size:.88rem;font-weight:700;color:var(--primary)}

/* faq */
.faq{display:grid;gap:12px;max-width:50rem}
.faq details{background:var(--card);border:1px solid var(--border);border-radius:14px;transition:border-color .15s}
.faq details[open]{border-color:var(--primary)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 22px;min-height:60px}
.faq summary h3{font-family:var(--font-b);font-weight:700;font-size:1.1rem;line-height:1.45}
.faq summary::-webkit-details-marker{display:none}
.faq .chev{flex:none;color:var(--accent);transition:transform .25s}
.faq details[open] .chev{transform:rotate(180deg)}
.faq .ans{padding:0 22px 22px;color:var(--fg-soft);max-width:68ch}
.faq .ans a{color:var(--primary);font-weight:600}

/* doctor */
.doc{display:grid;gap:44px;align-items:center}
@media(min-width:960px){.doc{grid-template-columns:5fr 7fr;gap:72px}}
.doc-visual{position:relative;max-width:420px;margin-inline:auto;width:100%}
.doc-visual::before{content:"";position:absolute;inset:-7% -9% 12% 16%;border-radius:58% 42% 55% 45% / 50% 55% 45% 50%;background:var(--band-deep);z-index:0;animation:morph 26s ease-in-out infinite alternate}
@keyframes morph{to{border-radius:44% 56% 42% 58% / 56% 44% 56% 44%;transform:rotate(6deg)}}
.doc-card{position:relative;border-radius:var(--r-l);overflow:hidden;border:1px solid var(--border);background:var(--band);box-shadow:var(--shadow-card);aspect-ratio:800/812}
.doc-card img{width:100%;height:100%;object-fit:cover}
.doc-tag{position:absolute;bottom:14px;inset-inline:14px;background:oklch(0.2 0.03 200 / .72);backdrop-filter:blur(8px);color:#fff;border-radius:12px;padding:11px 16px}
.doc-tag .a{font-family:var(--font-d);font-weight:700;font-size:1.02rem}
.doc-tag .b{font-size:.88rem;opacity:.92}
.bio{margin-top:20px;display:grid;gap:14px;max-width:62ch}
.bio p{color:var(--fg-soft)}
.bio b{color:var(--fg)}
.creds{margin-top:26px;display:grid;gap:10px}
@media(min-width:620px){.creds{grid-template-columns:1fr 1fr}}
.cred{display:flex;gap:10px;align-items:flex-start;background:var(--card);border:1px solid var(--border);border-radius:var(--r-s);padding:12px 14px;font-size:.96rem;font-weight:600;line-height:1.5;color:var(--fg-soft)}
.cred svg{flex:none;color:var(--primary);margin-top:4px}
.voice{font-family:var(--font-v);font-weight:500;font-size:clamp(1.3rem,1.15rem + .7vw,1.6rem);line-height:1.6;color:var(--fg);letter-spacing:0}
.voice-q{margin-top:28px;border-inline-start:3px solid var(--accent);padding-inline-start:20px;max-width:34em}
.voice-q footer{margin-top:8px;font-family:var(--font-b);font-size:.92rem;color:var(--muted);font-weight:600}
.dstrip{display:grid;gap:22px;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:var(--r-l);padding:clamp(20px,4vw,34px)}
@media(min-width:760px){.dstrip{grid-template-columns:132px 1fr}}
.dstrip img{width:132px;height:132px;border-radius:50%;object-fit:cover;object-position:50% 18%;border:3px solid var(--band-deep)}
.dstrip .who{margin-top:10px;font-size:.96rem;color:var(--muted)}
.dstrip .who b{color:var(--fg)}
.dstrip .voice{font-size:clamp(1.15rem,1.05rem + .5vw,1.4rem)}

/* treatments list (home + index) */
.tx{display:grid;gap:16px;margin-top:44px}
@media(min-width:900px){.tx{grid-template-columns:1.15fr 1fr;gap:20px}}
.tx-lead{background:var(--primary);color:var(--primary-fg);border-radius:var(--r-l);padding:clamp(24px,4vw,40px);display:flex;flex-direction:column;gap:14px;text-decoration:none;position:relative;overflow:hidden;min-height:330px;transition:transform .3s var(--ease),box-shadow .3s}
.tx-lead:hover{transform:translateY(-4px);box-shadow:var(--shadow-card)}
.tx-lead h3{color:inherit;font-size:clamp(1.6rem,1.3rem + 1.4vw,2.3rem);font-weight:800}
.tx-lead p{max-width:30em;opacity:.95}
.tx-lead .go{margin-top:auto;font-weight:700;display:inline-flex;gap:8px;align-items:center}
.tx-lead svg.deco{position:absolute;inset-inline-end:-30px;bottom:-30px;width:230px;height:230px;opacity:.14}
.tx-rows{display:grid;border:1px solid var(--border);border-radius:var(--r-l);background:var(--card);overflow:hidden}
.tx-row{display:grid;grid-template-columns:1fr auto;gap:4px 16px;align-items:center;padding:17px 22px;text-decoration:none;border-bottom:1px solid var(--border);transition:background .2s,padding .25s var(--ease)}
.tx-row:last-child{border-bottom:0}
.tx-row:hover{background:var(--band);padding-inline-start:28px}
.tx-row h3{font-size:1.14rem}
.tx-row p{grid-column:1;font-size:.95rem;color:var(--muted);line-height:1.5}
.tx-row svg{grid-row:1 / span 2;grid-column:2;color:var(--accent)}
.tx-full{display:grid;gap:18px;margin-top:40px}
.tx-item{display:grid;gap:10px 28px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-l);padding:clamp(22px,3.5vw,34px);text-decoration:none;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}
@media(min-width:820px){.tx-item{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) auto;align-items:center}.tx-item:nth-child(even){margin-inline-start:6%}.tx-item:nth-child(odd){margin-inline-end:6%}}
.tx-item:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft);border-color:var(--primary)}
.tx-item h2{font-size:clamp(1.3rem,1.15rem + .7vw,1.7rem)}
.tx-item p{color:var(--fg-soft)}
.tx-item small{display:block;margin-top:6px;color:var(--muted);font-size:.9rem}
.tx-item svg{color:var(--accent)}

/* symptoms checklist (home) */
.sym-grid{margin-top:40px;display:grid;gap:12px}
@media(min-width:680px){.sym-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1020px){.sym-grid{grid-template-columns:1fr 1fr 1fr}}
.sym{position:relative;display:flex;gap:14px;align-items:center;width:100%;text-align:start;cursor:pointer;background:var(--card);border:1.5px solid var(--border);border-radius:var(--r-m);padding:14px 16px;font-weight:600;color:var(--fg-soft);line-height:1.5;transition:border-color .15s,box-shadow .15s,transform .2s var(--ease)}
.sym:hover{border-color:var(--primary);box-shadow:var(--shadow-soft);transform:translateY(-2px)}
.si{width:52px;height:52px;border-radius:15px;flex:none;display:grid;place-items:center;color:#fff}
.si1{background:linear-gradient(135deg,oklch(0.6 0.13 45),oklch(0.5 0.14 35))}.si2{background:linear-gradient(135deg,oklch(0.52 0.09 270),oklch(0.42 0.09 280))}.si3{background:linear-gradient(135deg,oklch(0.55 0.1 185),oklch(0.45 0.1 195))}
.si4{background:linear-gradient(135deg,oklch(0.6 0.12 70),oklch(0.5 0.13 60))}.si5{background:linear-gradient(135deg,oklch(0.55 0.1 150),oklch(0.45 0.1 160))}.si6{background:linear-gradient(135deg,oklch(0.58 0.12 20),oklch(0.48 0.13 10))}
html.a11y-gray .si,html.a11y-contrast .si{filter:saturate(0) contrast(1.5)}
.sym-check{position:absolute;top:-9px;inset-inline-start:-9px;width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--accent-fg);display:grid;place-items:center;opacity:0;transform:scale(.4);transition:opacity .2s,transform .2s cubic-bezier(.2,1.6,.4,1)}
.sym[aria-pressed="true"] .sym-check{opacity:1;transform:scale(1)}
.sym[aria-pressed="true"]{border-color:var(--accent)}
.sym-foot{margin-top:30px;display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center}
.sym-foot .n{color:var(--muted);font-size:.96rem;max-width:34em}

/* fit */
.fit{margin-top:40px;display:grid;gap:16px}
@media(min-width:760px){.fit{grid-template-columns:1.2fr 1fr}}
.fit-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-l);padding:26px}
.fit-card.yes{border-top:3px solid var(--primary)}.fit-card.no{border-top:3px solid var(--border-ui)}
.fit-card h3{font-size:1.25rem}
.fit-card ul{margin-top:14px;display:grid;gap:10px}
.fit-card li{position:relative;padding-inline-start:20px;color:var(--fg-soft);line-height:1.55}
.fit-card li::before{content:"";position:absolute;inset-inline-start:0;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--primary)}
.fit-card.no li::before{background:var(--border-ui)}
.fit-card li a{color:var(--primary);font-weight:600}

/* testimonials rail */
.rail-x{margin-top:40px;display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px clamp(1.25rem,4vw,2.25rem) 18px;scrollbar-width:thin;scrollbar-color:var(--border-ui) transparent}
.tcard{scroll-snap-align:start;flex:none;width:min(84vw,340px);background:var(--card);border:1px solid var(--border);border-radius:var(--r-m);padding:22px 24px;display:flex;flex-direction:column;gap:14px}
.tcard:nth-child(3n+1){width:min(88vw,400px)}
.tcard p{color:var(--fg-soft);flex:1;line-height:1.7}
.tcard figcaption{display:flex;align-items:center;gap:10px;padding-top:12px;border-top:1px solid var(--border)}
.tcard .av{width:38px;height:38px;border-radius:50%;flex:none;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:700}
.tcard .nm{font-weight:700;font-size:.95rem;line-height:1.3}
.tcard .nm span{display:block;font-weight:400;font-size:.88rem;color:var(--muted)}

/* article cards */
.acards{display:grid;gap:18px;margin-top:38px}
@media(min-width:760px){.acards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1060px){.acards.three{grid-template-columns:repeat(3,minmax(0,1fr))}}
.acard{display:flex;flex-direction:column;gap:10px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-m);padding:22px 24px;text-decoration:none;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}
.acard:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft);border-color:var(--primary)}
.acard h3{font-size:1.2rem;line-height:1.38}
.acard p{color:var(--fg-soft);font-size:.98rem;line-height:1.6;flex:1}
.acard .m{font-size:.88rem;color:var(--muted);display:flex;gap:6px 12px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:var(--band);border:1px solid var(--border);font-size:.86rem;font-weight:700;color:var(--fg-soft);width:fit-content}
.afeat{display:grid;gap:18px;background:var(--primary);color:var(--primary-fg);border-radius:var(--r-l);padding:clamp(24px,4vw,44px);text-decoration:none;position:relative;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s}
.afeat:hover{transform:translateY(-4px);box-shadow:var(--shadow-card)}
.afeat h2{color:inherit;font-size:clamp(1.6rem,1.3rem + 1.5vw,2.5rem);max-width:20em}
.afeat p{max-width:40em;opacity:.95}
.afeat .chip{background:color-mix(in oklch,var(--primary-fg) 14%,transparent);border-color:transparent;color:inherit}
.afeat .m{font-size:.92rem;opacity:.9}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.filters button{min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid var(--border-ui);background:transparent;font-weight:700;font-size:.95rem;cursor:pointer;color:var(--fg-soft)}
.filters button[aria-pressed="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}

/* article page */
.progress{position:fixed;top:0;inset-inline:0;height:3px;z-index:100;background:transparent}
.progress i{display:block;height:100%;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:right center}
.byline{margin-top:22px;display:flex;gap:12px;align-items:center;font-size:.95rem;color:var(--muted)}
.byline img{width:46px;height:46px;border-radius:50%;object-fit:cover;object-position:50% 18%}
.byline b{color:var(--fg);display:block}
.author{margin-top:40px;display:grid;gap:18px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-l);padding:clamp(20px,3.5vw,30px);max-width:68ch}
@media(min-width:640px){.author{grid-template-columns:104px 1fr;align-items:center}}
.author img{width:104px;height:104px;border-radius:50%;object-fit:cover;object-position:50% 18%}
.author h2{font-size:1.2rem}
.author p{margin-top:6px;color:var(--fg-soft);font-size:.98rem;line-height:1.65}
.author .more{margin-top:10px}

/* lead form + contact panel */
.panel{border:1px solid var(--border);border-radius:var(--r-l);overflow:hidden;background:var(--card)}
.panel-grid{display:grid}
@media(min-width:960px){.panel-grid{grid-template-columns:1.15fr 1fr}}
.panel-main{padding:clamp(26px,5vw,52px)}
.panel-main h2{margin-top:10px}
.panel-main .lead-p{margin-top:16px;color:var(--fg-soft);max-width:34em}
.panel-main .cta-row{margin-top:26px}
.panel-info{margin-top:26px;display:grid;gap:4px}
.panel-info a{display:inline-flex;align-items:center;gap:10px;font-weight:600;color:var(--fg-soft);text-decoration:none;min-height:44px;width:fit-content}
.panel-info a:hover{color:var(--fg)}
.panel-info svg{color:var(--primary);flex:none}
.panel-form{background:var(--band);border-top:1px solid var(--border);padding:clamp(26px,5vw,48px);display:flex;flex-direction:column;justify-content:center}
@media(min-width:960px){.panel-form{border-top:0;border-inline-start:1px solid var(--border)}}
.lead-form h3,.lead-form h2{font-size:1.3rem}
.lead-form .hint{margin-top:6px;color:var(--muted);font-size:.96rem}
.lead-form .fld{margin-top:14px;display:grid;gap:6px}
.lead-form label{font-size:.92rem;font-weight:700;color:var(--fg-soft)}
.lead-form input,.lead-form textarea{width:100%;font:inherit;font-size:1rem;color:var(--fg);background:var(--card);border:1.5px solid var(--border-ui);border-radius:12px;padding:12px 14px;min-height:50px;transition:border-color .18s,box-shadow .18s;-webkit-appearance:none;appearance:none}
.lead-form textarea{resize:vertical;min-height:84px}
.lead-form input:focus,.lead-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.lead-form input[aria-invalid="true"]{border-color:var(--danger)}
.lead-form .row2{display:grid;gap:0 12px}
@media(min-width:560px){.lead-form .row2{grid-template-columns:1fr 1fr}}
.lead-form button{width:100%;margin-top:16px}
.lead-form button[disabled]{opacity:.6;cursor:progress}
.lead-msg{margin-top:10px;font-size:.95rem;min-height:1.4em;color:var(--muted)}
.lead-msg[data-ok]{color:var(--primary);font-weight:700}
.lead-msg[data-err]{color:var(--danger);font-weight:600}
.lead-form .legal-l{margin-top:10px;font-size:.86rem;color:var(--muted);line-height:1.55}
.lead-form .legal-l a{color:var(--fg-soft)}
.ring{width:132px;height:132px;border-radius:50%;border:2px solid color-mix(in oklch,var(--primary) 40%,transparent);display:grid;place-items:center;position:relative;margin-bottom:22px}
.ring::before{content:"";position:absolute;inset:14px;border-radius:50%;background:color-mix(in oklch,var(--primary) 18%,transparent);animation:breathe 9s ease-in-out infinite}
@keyframes breathe{0%,100%{transform:scale(.62)}45%,55%{transform:scale(1)}}
.ring span{position:relative;font-family:var(--font-d);font-weight:700;font-size:.92rem;color:var(--primary)}

/* contact page */
.acts{display:grid;gap:14px;margin-top:30px}
@media(min-width:820px){.acts{grid-template-columns:1.25fr 1fr 1fr}}
.act{display:flex;flex-direction:column;gap:8px;padding:24px;border-radius:var(--r-l);text-decoration:none;border:1.5px solid var(--border);background:var(--card);min-height:170px;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}
.act:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft);border-color:var(--primary)}
.act.main{background:var(--accent);color:var(--accent-fg);border-color:transparent}
.act .ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--band);color:var(--primary)}
.act.main .ic{background:color-mix(in oklch,var(--accent-fg) 18%,transparent);color:inherit}
.act b{font-family:var(--font-d);font-size:1.3rem;margin-top:auto}
.act span{font-size:.96rem;color:var(--muted)}
.act.main span{color:inherit;opacity:.95}
.where{display:grid;gap:22px}
@media(min-width:900px){.where{grid-template-columns:1fr 1fr;gap:48px;align-items:center}}
.mapcard{position:relative;border-radius:var(--r-l);border:1px solid var(--border);background:var(--band-deep);aspect-ratio:4/3;overflow:hidden}
.mapcard svg{position:absolute;inset:0;width:100%;height:100%}
.mapcard .pin{position:absolute;inset-inline-start:50%;top:46%;transform:translate(50%,-100%);display:grid;justify-items:center;gap:4px}
.mapcard .pin b{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:6px 12px;font-size:.92rem;box-shadow:var(--shadow-soft);white-space:nowrap}
.mapcard .pin i{width:18px;height:18px;border-radius:50% 50% 50% 0;background:var(--accent);transform:rotate(-45deg);box-shadow:0 0 0 6px var(--accent-soft)}

/* legal */
.legal h2{margin-top:2em;font-size:clamp(1.3rem,1.15rem + .7vw,1.65rem)}
.legal .upd{color:var(--muted);font-size:.95rem}

/* footer */
.ft{border-top:1px solid var(--border);background:var(--card)}
.ft-in{padding-top:54px;padding-bottom:30px}
.ft-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 28px}
@media(min-width:900px){.ft-grid{grid-template-columns:1.7fr 1.2fr 1fr 1.25fr}}
.ft .brand{grid-column:1/-1}
@media(min-width:900px){.ft .brand{grid-column:auto}}
.ft .blurb{margin-top:16px;max-width:30em;font-size:.95rem;line-height:1.7;color:var(--muted)}
.ft h2{font-size:.92rem;font-family:var(--font-b);font-weight:700;color:var(--muted)}
.ft ul{margin-top:12px;display:grid;gap:2px}
.ft ul a{display:inline-flex;align-items:center;gap:8px;min-height:40px;font-size:.96rem;color:var(--fg-soft);text-decoration:none}
.ft ul a:hover{color:var(--primary)}
.ft ul li{font-size:.96rem;color:var(--fg-soft)}
.ft ul svg{flex:none;color:var(--primary)}
.ft .addr{display:flex;gap:8px;align-items:center;min-height:40px}
.ft .legal-n{margin-top:38px;padding-top:20px;border-top:1px solid var(--border);font-size:.88rem;line-height:1.7;color:var(--muted);max-width:74ch}
.ft .base{margin-top:16px;padding-top:16px;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:6px 22px;justify-content:space-between;font-size:.88rem;color:var(--muted);padding-bottom:96px}
.ft .base a{color:var(--muted);display:inline-flex;align-items:center;min-height:40px}
.ft .base nav{display:flex;flex-wrap:wrap;gap:0 18px}
@media(min-width:900px){.ft .base{padding-bottom:0}}

/* floating + sticky */
.bar{position:fixed;inset-inline:0;bottom:0;z-index:80;display:flex;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:var(--header-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border);visibility:hidden;transform:translateY(110%);transition:transform .35s var(--ease),visibility .35s}
.bar.show{visibility:visible;transform:none}
.bar .btn-cta{flex:1;min-height:52px;border-radius:14px;padding:0 12px}
.bar .sq{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:14px;text-decoration:none;border:1.5px solid var(--border-ui);background:var(--card);color:var(--fg)}
.bar .sq.wa{background:#1faa53;border-color:#1faa53;color:#fff}
@media(min-width:900px){.bar{display:none}}
.fab-wa{position:fixed;z-index:79;inset-inline-end:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#1faa53;color:#fff;display:none;place-items:center;box-shadow:0 12px 30px -10px rgba(0,0,0,.45);transition:transform .25s var(--ease)}
.fab-wa:hover{transform:translateY(-3px) scale(1.04)}
@media(min-width:900px){.fab-wa{display:grid}}
.a11y-btn{position:fixed;z-index:95;inset-inline-end:0;top:46%;width:46px;height:50px;border:0;border-start-start-radius:14px;border-end-start-radius:14px;cursor:pointer;background:var(--primary);color:var(--primary-fg);display:grid;place-items:center;box-shadow:var(--shadow-soft)}
@media(min-width:900px){.a11y-btn{top:auto;bottom:22px;inset-inline-end:auto;inset-inline-start:22px;width:48px;height:48px;border-radius:50%;border:2px solid var(--primary-fg)}}
.a11y-panel{position:fixed;z-index:96;inset-inline:14px;top:50%;transform:translateY(-50%);width:auto;max-width:360px;margin-inline:auto;max-height:min(80vh,620px);overflow:auto;background:var(--card);border:1px solid var(--border-ui);border-radius:var(--r-m);box-shadow:var(--shadow-card);padding:16px;display:none}
@media(min-width:900px){.a11y-panel{top:auto;transform:none;bottom:80px;inset-inline:22px auto;width:340px;margin:0}}
.a11y-panel.open{display:block}
.a11y-panel h2{font-size:1.1rem;display:flex;justify-content:space-between;align-items:center}
.a11y-x{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--border-ui);background:transparent;cursor:pointer;display:grid;place-items:center}
.a11y-grid{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.a11y-grid button{min-height:52px;display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg);border:1.5px solid var(--border-ui);border-radius:10px;font-size:.9rem;font-weight:700;color:var(--fg-soft);cursor:pointer;text-align:start;line-height:1.25}
.a11y-grid button[aria-pressed="true"]{border-color:var(--primary);background:var(--primary);color:var(--primary-fg)}
.a11y-grid .full{grid-column:1/-1;justify-content:center}
.a11y-foot{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);font-size:.9rem;display:grid;gap:4px}
.a11y-foot a{color:var(--primary);font-weight:700;display:inline-flex;min-height:40px;align-items:center}
#a11y-guide{position:fixed;inset-inline:0;height:42px;margin-top:-21px;z-index:94;pointer-events:none;background:color-mix(in oklch,var(--accent) 16%,transparent);border-block:2px solid var(--accent);display:none}
html.a11y-guide #a11y-guide{display:block}

/* a11y modes */
html.a11y-gray main,html.a11y-gray .hd,html.a11y-gray .ft,html.a11y-gray .bar,html.a11y-gray .fab-wa,html.a11y-gray .mm{filter:grayscale(1)}
html.a11y-links a{text-decoration:underline !important;text-underline-offset:3px}
html.a11y-links main a:not(.btn):not(.act):not(.acard):not(.afeat):not(.tx-lead):not(.tx-row):not(.tx-item){background:var(--accent-soft)}
html.a11y-font *{font-family:Arial,'Segoe UI',Tahoma,sans-serif !important;letter-spacing:0 !important}
html.a11y-font body{letter-spacing:.01em}
html.a11y-cursor,html.a11y-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 24 24'%3E%3Cpath d='M5 2l14 11h-7l-3 8z' fill='%23000' stroke='%23fff' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E") 8 4,auto !important}
html.a11y-still *,html.a11y-still *::before,html.a11y-still *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}
html.a11y-still .rv,html.a11y-still .sig .pop,html.a11y-still .sig .fade{opacity:1 !important;transform:none !important}
html.a11y-still .sig .draw{stroke-dashoffset:0 !important}
html.a11y-still .mm nav a{opacity:1;transform:none}

/* reveal + page */
.rv{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s var(--ease);transition-delay:var(--rd,0s)}
.rv.in{opacity:1;transform:none}
.no-js .rv{opacity:1;transform:none}
.center{text-align:center;justify-items:center;margin-inline:auto}
.mt-s{margin-top:18px}.mt-m{margin-top:32px}.mt-l{margin-top:52px}
.nf{min-height:72svh;display:grid;place-items:center;text-align:center}
.nf .big{font-family:var(--font-d);font-weight:800;font-size:clamp(4.5rem,18vw,11rem);line-height:1;color:var(--primary);opacity:.22}
.local p{max-width:68ch;color:var(--fg-soft)}
.local p+p{margin-top:1em}
.local a{color:var(--primary);font-weight:600}

@media (pointer:coarse),(max-width:760px){
  .crumbs a,.ft ul a,.ft .base a{min-height:44px;display:inline-flex;align-items:center}
  .faq summary{min-height:60px}
  .more{min-height:44px}
  .toc a{min-height:44px;display:flex;align-items:center}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}
  .rv,.sig .pop,.sig .fade{opacity:1;transform:none}
  .sig .draw{stroke-dashoffset:0}
  .mm nav a{opacity:1;transform:none}
}
@media print{.hd,.bar,.fab-wa,.a11y-btn,.a11y-panel,.mm,.progress,.air,.breath{display:none !important}.rv{opacity:1;transform:none}}

.reviewed{margin-top:10px;font-size:.9rem;color:var(--muted)}
.reviewed time{font-variant-numeric:tabular-nums}
