/* Prep & Press website · 2026 design "A + C combined" (Clean Copper).
   Every page is a stack of bands. Each band has a tone class: .t-dark, .t-light (white) or .t-cream.
   The theme (html[data-mode]) only remaps the tokens of each tone:
     designed = dark + light bands as drawn · light = dark bands turn warm paper · dark = light bands turn warm charcoal
     auto (no data-mode) = phone light -> designed, phone dark -> dark.  Tokens are generated in build.py (:root{--pagebg:#141210}.t-dark{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#3A332D;--rule:#2A2521;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#141210;--surface:#1E1A17;--raised:#26211D;color-scheme:dark}.t-light{--text:#1C1B1A;--body:#5C554F;--muted:#6E665F;--border:#E2D9CE;--rule:#ECE4DA;--accent:#A9583A;--accentHover:#8E4529;--accentText:#8E4529;--accentSoft:#F3E3D9;--onAccent:#FFFFFF;--good:#5E7D63;--bad:#B5443A;--figure:#3A3531;--arm:#1C1B1A;--bar:#B8AEA4;--mus1:#D9774F;--mus2:#EBC0A8;--plate:#C99A82;--off1:#E4DCD2;--off2:#EDE6DD;--bg:#FFFFFF;--surface:#F6F2EC;--raised:#FFFFFF;color-scheme:light}.t-cream{--text:#1C1B1A;--body:#5C554F;--muted:#6E665F;--border:#E2D9CE;--rule:#ECE4DA;--accent:#A9583A;--accentHover:#8E4529;--accentText:#8E4529;--accentSoft:#F3E3D9;--onAccent:#FFFFFF;--good:#5E7D63;--bad:#B5443A;--figure:#3A3531;--arm:#1C1B1A;--bar:#B8AEA4;--mus1:#D9774F;--mus2:#EBC0A8;--plate:#C99A82;--off1:#E4DCD2;--off2:#EDE6DD;--bg:#F6F2EC;--surface:#FFFFFF;--raised:#FFFFFF;color-scheme:light}.inv{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#3A332D;--rule:#2A2521;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#1C1B1A;--surface:#26211D;--raised:#2A2521;color-scheme:dark}:root[data-mode="light"] .t-dark{--text:#1C1B1A;--body:#5C554F;--muted:#6E665F;--border:#E2D9CE;--rule:#E8DFD4;--accent:#A9583A;--accentHover:#8E4529;--accentText:#8E4529;--accentSoft:#F3E3D9;--onAccent:#FFFFFF;--good:#5E7D63;--bad:#B5443A;--figure:#3A3531;--arm:#1C1B1A;--bar:#B8AEA4;--mus1:#D9774F;--mus2:#EBC0A8;--plate:#C99A82;--off1:#E4DCD2;--off2:#EDE6DD;--bg:#FAF7F2;--surface:#F1EBE3;--raised:#FFFFFF;color-scheme:light}:root[data-mode="light"]{--pagebg:#FAF7F2}:root[data-mode="dark"] .t-light,:root[data-theme="dark"]:not([data-mode]) .t-light{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#40382F;--rule:#2E2824;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#1C1916;--surface:#26211D;--raised:#2E2824;color-scheme:dark}:root[data-mode="dark"] .t-cream,:root[data-theme="dark"]:not([data-mode]) .t-cream{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#433A33;--rule:#332C27;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#211D1A;--surface:#2B2622;--raised:#332C27;color-scheme:dark}:root[data-mode="dark"] .inv,:root[data-theme="dark"]:not([data-mode]) .inv{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#3A332D;--rule:#2A2521;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#0F0D0C;--surface:#1E1A17;--raised:#26211D;color-scheme:dark}:root[data-mode="dark"] .shot-l,:root[data-theme="dark"]:not([data-mode]) .shot-l{display:none!important}:root[data-mode="dark"] .shot-d,:root[data-theme="dark"]:not([data-mode]) .shot-d{display:block!important}:root[data-mode="dark"] .screen,:root[data-theme="dark"]:not([data-mode]) .screen{--scr:#1B1714}@media (prefers-color-scheme:dark){:root:not([data-mode]):not([data-theme="light"]) .t-light{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#40382F;--rule:#2E2824;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#1C1916;--surface:#26211D;--raised:#2E2824;color-scheme:dark}:root:not([data-mode]):not([data-theme="light"]) .t-cream{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#433A33;--rule:#332C27;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#211D1A;--surface:#2B2622;--raised:#332C27;color-scheme:dark}:root:not([data-mode]):not([data-theme="light"]) .inv{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#3A332D;--rule:#2A2521;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#0F0D0C;--surface:#1E1A17;--raised:#26211D;color-scheme:dark}:root:not([data-mode]):not([data-theme="light"]) .shot-l{display:none!important}:root:not([data-mode]):not([data-theme="light"]) .shot-d{display:block!important}:root:not([data-mode]):not([data-theme="light"]) .screen{--scr:#1B1714}}). */
@font-face{font-family:"PP Poppins";font-weight:500;font-display:swap;src:url(assets/fonts/Poppins-Medium.woff) format("woff")}
@font-face{font-family:"PP Poppins";font-weight:700;font-display:swap;src:url(assets/fonts/Poppins-Bold.woff) format("woff")}
@font-face{font-family:"PP Slab";font-weight:700;font-display:swap;src:url(assets/fonts/RobotoSlab-Bold.woff) format("woff")}
@font-face{font-family:"PP Inter";font-weight:400;font-display:swap;src:url(assets/fonts/Inter-Regular.woff) format("woff")}
@font-face{font-family:"PP Inter";font-weight:600;font-display:swap;src:url(assets/fonts/Inter-SemiBold.woff) format("woff")}
@font-face{font-family:"PP Inter";font-weight:700;font-display:swap;src:url(assets/fonts/Inter-Bold.woff) format("woff")}
:root{--pagebg:#141210}.t-dark{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#3A332D;--rule:#2A2521;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#141210;--surface:#1E1A17;--raised:#26211D;color-scheme:dark}.t-light{--text:#1C1B1A;--body:#5C554F;--muted:#6E665F;--border:#E2D9CE;--rule:#ECE4DA;--accent:#A9583A;--accentHover:#8E4529;--accentText:#8E4529;--accentSoft:#F3E3D9;--onAccent:#FFFFFF;--good:#5E7D63;--bad:#B5443A;--figure:#3A3531;--arm:#1C1B1A;--bar:#B8AEA4;--mus1:#D9774F;--mus2:#EBC0A8;--plate:#C99A82;--off1:#E4DCD2;--off2:#EDE6DD;--bg:#FFFFFF;--surface:#F6F2EC;--raised:#FFFFFF;color-scheme:light}.t-cream{--text:#1C1B1A;--body:#5C554F;--muted:#6E665F;--border:#E2D9CE;--rule:#ECE4DA;--accent:#A9583A;--accentHover:#8E4529;--accentText:#8E4529;--accentSoft:#F3E3D9;--onAccent:#FFFFFF;--good:#5E7D63;--bad:#B5443A;--figure:#3A3531;--arm:#1C1B1A;--bar:#B8AEA4;--mus1:#D9774F;--mus2:#EBC0A8;--plate:#C99A82;--off1:#E4DCD2;--off2:#EDE6DD;--bg:#F6F2EC;--surface:#FFFFFF;--raised:#FFFFFF;color-scheme:light}.inv{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#3A332D;--rule:#2A2521;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#1C1B1A;--surface:#26211D;--raised:#2A2521;color-scheme:dark}:root[data-mode="light"] .t-dark{--text:#1C1B1A;--body:#5C554F;--muted:#6E665F;--border:#E2D9CE;--rule:#E8DFD4;--accent:#A9583A;--accentHover:#8E4529;--accentText:#8E4529;--accentSoft:#F3E3D9;--onAccent:#FFFFFF;--good:#5E7D63;--bad:#B5443A;--figure:#3A3531;--arm:#1C1B1A;--bar:#B8AEA4;--mus1:#D9774F;--mus2:#EBC0A8;--plate:#C99A82;--off1:#E4DCD2;--off2:#EDE6DD;--bg:#FAF7F2;--surface:#F1EBE3;--raised:#FFFFFF;color-scheme:light}:root[data-mode="light"]{--pagebg:#FAF7F2}:root[data-mode="dark"] .t-light,:root[data-theme="dark"]:not([data-mode]) .t-light{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#40382F;--rule:#2E2824;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#1C1916;--surface:#26211D;--raised:#2E2824;color-scheme:dark}:root[data-mode="dark"] .t-cream,:root[data-theme="dark"]:not([data-mode]) .t-cream{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#433A33;--rule:#332C27;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#211D1A;--surface:#2B2622;--raised:#332C27;color-scheme:dark}:root[data-mode="dark"] .inv,:root[data-theme="dark"]:not([data-mode]) .inv{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#3A332D;--rule:#2A2521;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#0F0D0C;--surface:#1E1A17;--raised:#26211D;color-scheme:dark}:root[data-mode="dark"] .shot-l,:root[data-theme="dark"]:not([data-mode]) .shot-l{display:none!important}:root[data-mode="dark"] .shot-d,:root[data-theme="dark"]:not([data-mode]) .shot-d{display:block!important}:root[data-mode="dark"] .screen,:root[data-theme="dark"]:not([data-mode]) .screen{--scr:#1B1714}@media (prefers-color-scheme:dark){:root:not([data-mode]):not([data-theme="light"]) .t-light{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#40382F;--rule:#2E2824;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#1C1916;--surface:#26211D;--raised:#2E2824;color-scheme:dark}:root:not([data-mode]):not([data-theme="light"]) .t-cream{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#433A33;--rule:#332C27;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#211D1A;--surface:#2B2622;--raised:#332C27;color-scheme:dark}:root:not([data-mode]):not([data-theme="light"]) .inv{--text:#F3EEE8;--body:#CFC6BC;--muted:#A69E96;--border:#3A332D;--rule:#2A2521;--accent:#C8846A;--accentHover:#D9977E;--accentText:#E7B5A2;--accentSoft:#3A2B24;--onAccent:#141210;--good:#8FA88A;--bad:#E07C6E;--figure:#D9CFC4;--arm:#EDE5DB;--bar:#6F675F;--mus1:#E0997C;--mus2:#8A5A47;--plate:#6E4A3D;--off1:#3A332E;--off2:#302A26;--bg:#0F0D0C;--surface:#1E1A17;--raised:#26211D;color-scheme:dark}:root:not([data-mode]):not([data-theme="light"]) .shot-l{display:none!important}:root:not([data-mode]):not([data-theme="light"]) .shot-d{display:block!important}:root:not([data-mode]):not([data-theme="light"]) .screen{--scr:#1B1714}}
:root{--display:"PP Poppins","Poppins",system-ui,sans-serif;--sans:"PP Inter","Inter",system-ui,sans-serif;--r:24px;--gut:max(20px,env(safe-area-inset-left,0px))}
.t-dark,.t-light,.t-cream,.inv{background:var(--bg);color:var(--text)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:84px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--pagebg);color:var(--text);font:17px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%}
a{color:var(--accentText)}
a:hover{color:var(--text)}
h1,h2,h3,h4{font-family:var(--display);font-weight:700;letter-spacing:-.025em;margin:0;text-wrap:balance}
h1{font-size:clamp(40px,6vw,76px);line-height:1;letter-spacing:-.035em}
h2{font-size:clamp(32px,4.4vw,58px);line-height:1.04;letter-spacing:-.035em}
h3{font-size:22px;line-height:1.25;letter-spacing:-.02em}
h4{font-family:var(--sans);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--accentText);margin-bottom:6px}
p{margin:0}
.hl{color:var(--accent)}
.dim{color:var(--muted)}
.lead{font-size:19px;line-height:1.6;color:var(--body);max-width:60ch}
.muted{color:var(--muted)}
.small{font-size:14px}
.fine{font-size:14px;color:var(--muted)}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accentText);margin:0}
.wrap{max-width:1280px;margin:0 auto;padding-left:var(--gut);padding-right:var(--gut)}
@media (min-width:700px){:root{--gut:32px}}
.narrow{max-width:860px}
.center{text-align:center;align-items:center}
.skip{position:absolute;left:-999px;top:8px;background:var(--accent);color:var(--onAccent);padding:8px 14px;border-radius:10px;z-index:50}
.skip:focus{left:12px}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.sec{padding-top:clamp(72px,9vw,120px);padding-bottom:clamp(72px,9vw,120px)}
.sec-head{display:flex;flex-direction:column;gap:18px;margin-bottom:clamp(36px,5vw,56px)}
.sec-head.center{margin-left:auto;margin-right:auto;max-width:860px}
.sec-head .lead{max-width:600px}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:56px;padding:0 28px;border-radius:999px;background:var(--accent);color:var(--onAccent);font:700 17px var(--sans);text-decoration:none;border:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.btn:hover{color:var(--onAccent);background:var(--accentHover)}
.btn.small{min-height:44px;padding:0 20px;font-size:15px}
.btn.big{min-height:62px;padding:0 34px;font-size:18px}
.btn.ghost{background:transparent;color:var(--body);border:1px solid var(--border);font-weight:600}
.btn.ghost:hover{border-color:var(--accent);color:var(--text)}
.btn.block{width:100%;border-radius:14px}
.btn.off{background:transparent;border:1px dashed var(--border);color:var(--muted);cursor:default}
.icon-btn{width:44px;height:44px;border-radius:22px;border:1px solid var(--border);background:transparent;color:var(--body);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.icon-btn:hover{color:var(--text);border-color:var(--accent)}
.icon-btn svg,.ticks svg,.ico svg,.tm-item svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pill{display:inline-flex;align-self:flex-start;align-items:center;gap:10px;padding:8px 14px;border:1px solid var(--border);border-radius:999px;font-size:13px;font-weight:600;color:var(--body)}
.pill::before{content:"";width:8px;height:8px;border-radius:4px;background:var(--accent)}
/* header */
.site-head{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding-top:env(safe-area-inset-top,0px);border-bottom:1px solid transparent;transition:border-color .2s}
.site-head.scrolled{border-bottom-color:var(--rule)}
.head-row{display:flex;align-items:center;gap:24px;min-height:80px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text)}
.wm{display:flex;flex-direction:column;gap:6px;line-height:1}
.wm b{font-family:"PP Slab","Roboto Slab",Rockwell,Georgia,serif;font-weight:700;font-size:18px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.wm b i{font-style:normal;color:var(--accentText)}
.wm small{font-family:var(--sans);font-weight:600;font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--muted);white-space:nowrap;padding-left:1px}
.brand:hover{color:var(--text)}
.brand img{width:44px;height:44px;border-radius:22px;transition:width .25s,height .25s}
.site-head .head-row{transition:min-height .25s}
.site-head.scrolled .head-row{min-height:64px}
.site-head.scrolled .brand img{width:38px;height:38px}
.nav{display:flex;gap:28px;margin-left:auto;margin-right:auto}
.nav a{text-decoration:none;color:var(--body);font-weight:500;font-size:15px;padding:8px 0;border-bottom:2px solid transparent}
.nav a:hover{color:var(--text)}
.nav a[aria-current]{color:var(--text);border-bottom-color:var(--accent)}
.nav .login{display:none}
.head-actions{display:flex;align-items:center;gap:14px}
.head-actions .login-lg{font-size:15px;font-weight:600;color:var(--body);text-decoration:none}
.head-actions .login-lg:hover{color:var(--text)}
.menu-btn{display:none}
@media (max-width:980px){
  .nav{position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--rule);padding:8px var(--gut) 20px;display:none;margin:0}
  .nav.open{display:flex}
  .nav a{padding:14px 0;font-size:18px;border-bottom:1px solid var(--rule)}
  .nav a[aria-current]{border-bottom-color:var(--rule);color:var(--accent)}
  .nav .login{display:block;border-bottom:none}
  .menu-btn{display:inline-flex}
  .head-actions{margin-left:auto;gap:10px}
  .head-actions .login-lg{display:none}
}
@media (max-width:460px){.head-actions .btn{display:none}.wm b{font-size:15.5px;letter-spacing:.08em}.wm small{font-size:8.5px;letter-spacing:.2em}.brand{gap:10px}.brand img{width:40px;height:40px}}
/* theme menu */
.tm{position:relative}
.tm-pop{position:absolute;right:0;top:calc(100% + 10px);width:270px;background:var(--raised);border:1px solid var(--border);border-radius:18px;padding:8px;box-shadow:0 24px 48px rgba(0,0,0,.28);display:none;z-index:40}
.tm-pop.open{display:block}
.tm-pop p{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:8px 10px 6px}
.tm-item{display:flex;width:100%;align-items:flex-start;gap:10px;text-align:left;border:none;background:none;color:var(--text);padding:10px;border-radius:12px;cursor:pointer;font:inherit}
.tm-item:hover{background:var(--surface)}
.tm-item b{display:block;font-size:15px;font-weight:600}
.tm-item span{display:block;font-size:13px;color:var(--muted);line-height:1.4}
.tm-item svg{flex:0 0 20px;margin-top:2px;color:var(--accent);visibility:hidden}
.tm-item[aria-checked="true"] svg{visibility:visible}
.tm-item[aria-checked="true"]{background:var(--surface)}
/* segmented controls */
.seg{display:inline-flex;align-self:flex-start;padding:4px;gap:4px;border-radius:14px;border:1px solid var(--border);background:var(--raised);flex-wrap:wrap}
.seg button{min-height:42px;padding:0 18px;border-radius:10px;border:none;background:none;color:var(--body);font:700 14px var(--sans);cursor:pointer}
.seg button em{font-style:normal;font-weight:600;opacity:.85}
.seg button.on{background:var(--text);color:var(--bg)}
.seg.small button{min-height:34px;padding:0 14px;font-size:13px}
.seg.small{border-radius:999px}.seg.small button{border-radius:999px}
.seg.small button.on{background:var(--accent);color:var(--onAccent)}
.center .seg{align-self:center}
/* ---------- home: hero ---------- */
.hero{padding-top:clamp(10px,1.6vw,20px);padding-bottom:56px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:48px;align-items:center}
.hero-copy{display:flex;flex-direction:column;gap:28px;min-width:0}
.hero h1{font-size:clamp(52px,7.4vw,108px);line-height:.95}
.hero .lead{max-width:500px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.center .cta-row{justify-content:center}
.ring-wrap{position:relative;width:100%;max-width:620px;margin:0 auto;aspect-ratio:1/1}
#ring-hero{position:absolute;inset:0}
.ring-hero{position:absolute;inset:0}
.rings{position:absolute;inset:0;width:100%;height:100%}
.rings .r1{fill:none;stroke:var(--rule);stroke-width:1}
.rings .r0{fill:var(--surface)}
.rings .arc{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linecap:round}
.ring-fig{position:absolute;left:4%;top:6%;width:92%}
.ring-fig svg{width:100%;height:auto;display:block}
.callout{position:absolute;display:flex;flex-direction:column;gap:2px;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:14px;max-width:46%}
.callout span{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.callout b{font-size:15px;font-weight:600;line-height:1.35}
.c-main{right:0;top:28%}.c-main span{color:var(--mus1)}
.c-help{left:0;top:42%}
.ring-pill{position:absolute;left:50%;bottom:9%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:10px 18px;background:var(--text);color:var(--bg);border-radius:999px;white-space:nowrap}
.ring-pill span{font-size:12px;font-weight:700;letter-spacing:.16em;min-width:9.5em;text-align:center}
.ring-pill span.up{color:var(--accent)}
.ring-pill i{width:1px;height:14px;background:var(--muted)}
.ring-pill b{font-size:13px;font-weight:600}
.ring-hero .hero-dots{position:absolute;left:0;right:0;bottom:0}
.ring-still{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.hero-dots{display:flex;justify-content:center;gap:6px}
.hero-dots button{width:30px;height:28px;border:none;background:none;cursor:pointer;position:relative;padding:0}
.hero-dots button::after{content:"";position:absolute;left:5px;right:5px;top:12px;height:4px;border-radius:2px;background:var(--border)}
.hero-dots button.on::after{background:var(--accent)}
@media (max-width:900px){.hero{grid-template-columns:1fr;gap:32px;padding-bottom:40px}.ring-wrap{max-width:520px}}
@media (max-width:520px){.callout{padding:8px 11px;border-radius:12px}.callout span{font-size:9.5px}.callout b{font-size:12.5px}.c-main{top:22%}.c-help{top:44%}.ring-pill{gap:8px;padding:8px 13px;bottom:10%}.ring-pill span{font-size:10px;min-width:0}.ring-pill b{font-size:11.5px}}
/* facts strip */
.facts{border-top:1px solid var(--rule)}
.facts .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.fact{padding:36px 24px;display:flex;flex-direction:column;gap:6px;border-left:1px solid var(--rule)}
.fact:first-child{border-left:none;padding-left:0}
.fact b{font-family:var(--display);font-size:clamp(38px,4vw,48px);line-height:1;letter-spacing:-.03em}
.fact span{font-size:15px;color:var(--muted)}
@media (max-width:860px){.facts .wrap{grid-template-columns:1fr 1fr}.fact{padding:28px 16px}.fact:nth-child(3){border-left:none;padding-left:0}.fact:nth-child(n+3){border-top:1px solid var(--rule)}}
/* three-phone fan */
.fan{position:relative;width:100%;max-width:1040px;height:clamp(440px,62vw,760px);margin:8px auto 0}
.fan .glow{position:absolute;left:50%;top:18%;transform:translateX(-50%);width:min(820px,92%);aspect-ratio:1/1;border-radius:50%;background:var(--accentSoft)}
.phone{position:absolute;padding:8px;background:#1C1B1A;border-radius:42px;box-shadow:0 30px 60px rgba(40,25,15,.22)}
.phone.l{left:6%;top:16%;width:min(290px,30%);transform:rotate(-8deg)}
.phone.r{right:6%;top:16%;width:min(290px,30%);transform:rotate(8deg)}
.phone.c{left:50%;top:0;transform:translateX(-50%);width:min(330px,36%);padding:9px;border-radius:48px;box-shadow:0 40px 80px rgba(40,25,15,.3)}
/* screen = app background with the screenshot set in from the edges (same colour, so the inset is invisible) */
.screen{--scr:#FAF7F2;background:var(--scr);border-radius:34px;overflow:hidden;padding:7% 5.5% 6%}
.phone.c .screen{border-radius:39px}
.screen.fixed-l{--scr:#FAF7F2}.screen.fixed-d{--scr:#1B1714}
.screen img{display:block;width:100%;height:auto;border-radius:6px}
@media (max-width:640px){.phone{padding:4px;border-radius:24px}.screen{border-radius:20px}.phone.c{padding:5px;border-radius:28px}.phone.c .screen{border-radius:23px}.phone.l,.phone.r{width:31%;top:14%}.phone.l{left:2%}.phone.r{right:2%}.phone.c{width:40%}}
.shot-d{display:none!important}
/* bento */
.bento{display:flex;flex-wrap:wrap;gap:20px}
.tile{flex:1 1 300px;min-width:0;background:var(--surface);border-radius:28px;padding:clamp(24px,3vw,36px);display:flex;flex-direction:column;gap:20px}
.tile.wide{flex:2 1 600px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:24px}
.tile.wide>div{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:12px}
.tile>b,.tile.wide b.tt{font-family:var(--display);font-weight:700;font-size:24px;letter-spacing:-.02em;line-height:1.2}
.tile.wide b.tt{font-size:28px}
.tile p{font-size:15.5px;line-height:1.6;color:var(--body)}
.tile .inner{background:var(--raised);border-radius:20px;padding:16px}
.bento-demo{display:flex;flex-direction:column;align-items:center;gap:10px}
.bento-demo .seg{align-self:flex-start}
.bento-stage{width:100%;display:flex;flex-direction:column;align-items:center;gap:4px}
.bento-stage svg{width:100%;height:auto;display:block}
.cue-tag{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--accentText)}
.btl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.btl div{background:var(--raised);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:4px}
.btl div.on{outline:2px solid var(--accent)}
.btl small{font-size:12px;color:var(--muted)}
.btl div.on small{color:var(--accentText);font-weight:600}
.btl b{font-family:var(--display);font-size:26px;font-variant-numeric:tabular-nums}
.btl span{font-size:13px;color:var(--muted)}
.timer{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.timer b{font-family:var(--display);font-weight:700;font-size:64px;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.timer span{padding:9px 14px;border-radius:12px;border:1px solid var(--border);font-size:14px;font-weight:700}
.timer span.go{background:var(--accent);border-color:var(--accent);color:var(--onAccent)}
.tbar{height:4px;border-radius:2px;background:var(--border);overflow:hidden}
.tbar i{display:block;width:62%;height:100%;background:var(--accent);animation:tb 12s linear infinite}
@keyframes tb{from{width:100%}to{width:0}}
@media (prefers-reduced-motion:reduce){.tbar i{animation:none}}
.swaps{display:flex;flex-direction:column;gap:8px}
.swaps div{display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--raised);border-radius:14px;padding:14px 16px}
.swaps div.on{outline:2px solid var(--accent)}
.swaps b{font-weight:600;font-size:15px}
.swaps span{font-size:13px;color:var(--muted)}
.swaps svg{width:20px;height:20px;fill:none;stroke:var(--good);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.tile .maps{background:var(--raised);border-radius:20px;padding:16px 24px;justify-content:space-around}
.tile .body-map svg{width:100%;max-width:120px}
.tile.peek{flex:2 1 600px;flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:24px;padding-bottom:0;overflow:hidden}
.tile.peek>div:first-child{flex:1 1 240px;min-width:0;display:flex;flex-direction:column;gap:12px;padding-bottom:36px}
.peek-phones{flex:1 1 320px;min-width:0;display:flex;gap:14px;justify-content:center}
.peek-phones .pk{width:46%;padding:6px 6px 0;background:#1C1B1A;border-radius:30px 30px 0 0;height:300px;overflow:hidden}
.peek-phones .pk+.pk{margin-top:40px}
.peek-phones .screen{border-radius:24px 24px 0 0;padding-bottom:0}
/* how it works */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;list-style:none;margin:0;padding:0}
.steps li{display:flex;flex-direction:column;gap:14px}
.steps .num{font-family:var(--display);font-weight:700;font-size:clamp(72px,8vw,96px);line-height:1;letter-spacing:-.04em;-webkit-text-stroke:1.5px var(--accent);color:transparent}
.steps b{font-size:22px;font-weight:600}
.steps p{font-size:16px;color:var(--muted)}
@media (max-width:820px){.steps{grid-template-columns:1fr;gap:32px}}
/* meals feature card */
.mealbox{background:var(--surface);border:1px solid var(--rule);border-radius:32px;padding:clamp(28px,5vw,72px);display:flex;flex-wrap:wrap;gap:56px;align-items:center}
.mealbox>div:first-child{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:20px}
.mealbox .eyebrow{display:flex;align-items:center;gap:12px;color:var(--accent);letter-spacing:.18em}
.mealbox .lead{font-size:17px}
.mc-wrap{flex:1 1 340px;min-width:0;display:flex;justify-content:center}
.mc{width:100%;max-width:420px;background:var(--raised);border-radius:24px;padding:28px;display:flex;flex-direction:column;gap:20px}
.mc-row{display:flex;gap:18px;align-items:center}
.mc-row svg{flex:0 0 88px;width:88px;height:88px}
.mc-row div{display:flex;flex-direction:column;gap:4px}
.mc-row small{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--mus1)}
.mc-row b{font-size:18px;font-weight:600;line-height:1.3}
.mc-row span{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}
.mc-bars{display:flex;flex-direction:column;gap:12px}
.mc-bars div{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--muted)}
.mc-bars div span{width:64px}
.mc-bars i{flex:1;height:8px;border-radius:4px;background:linear-gradient(90deg,var(--c,var(--accent)) var(--w),var(--border) var(--w))}
.soon{display:inline-block;vertical-align:middle;margin-left:8px;font:700 11px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accentText);background:var(--accentSoft);padding:4px 10px;border-radius:999px}
.mealbox .soon{margin-left:0}
/* pricing */
.tiers{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.tier{background:var(--raised);border:1px solid var(--rule);border-radius:28px;padding:36px;display:flex;flex-direction:column;gap:16px}
.tier-top{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.tier-top h3{font-family:var(--sans);font-size:18px;font-weight:700;letter-spacing:0}
.tier .blurb{font-size:15px;color:var(--muted);margin-top:-6px}
.tag{font:700 12px var(--sans);letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:var(--accent);color:var(--onAccent)}
.tag.soft{background:var(--accentSoft);color:var(--accentText)}
.price{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.price b{font-family:var(--display);font-weight:700;font-size:52px;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1.1}
.price span{color:var(--muted)}
.per{margin-top:-10px;color:var(--muted);font-size:14px}
.plus{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:15px;color:var(--body)}
.plus li{display:flex;gap:10px}
.plus li::before{content:"+";color:var(--accent);font-weight:700}
.tier .note{font-size:13px;color:var(--muted)}
.tier .btn{margin-top:auto}
.tier .btn.ghost{color:var(--text)}
@media (max-width:960px){.tiers{grid-template-columns:1fr;max-width:520px;margin:0 auto}.tier.inv{order:-1}}
.founding{display:flex;flex-direction:column;gap:4px;max-width:640px;padding:14px 18px;border-radius:16px;background:var(--accentSoft);border-left:4px solid var(--accent);text-align:left}
.founding b{color:var(--accentText);font-family:var(--display);font-weight:500}
.founding span{color:var(--body);font-size:15px}
/* faq */
.qa{display:flex;flex-direction:column}
.qa details{border-top:1px solid var(--rule);padding:22px 4px}
.qa details:last-child{border-bottom:1px solid var(--rule)}
.qa summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;font-weight:600;font-size:18px;line-height:1.4}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";color:var(--accent);font-size:22px;line-height:1.1}
.qa details[open] summary::after{content:"−"}
.qa details p{margin-top:12px;font-size:16px;line-height:1.65;color:var(--body);max-width:68ch}
.qa h2{font-size:clamp(24px,2.6vw,30px);margin:48px 0 16px}
.qa h2:first-child{margin-top:0}
/* final cta */
.final{display:flex;flex-direction:column;align-items:center;text-align:center;gap:32px;padding-top:clamp(88px,10vw,128px);padding-bottom:clamp(88px,10vw,128px)}
.final h2{font-size:clamp(44px,6vw,88px);line-height:.98;max-width:980px}
.final .lead{text-align:center}
/* footer */
.site-foot{border-top:1px solid var(--rule)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:32px;padding-top:56px;padding-bottom:40px}
.foot-grid nav{display:flex;flex-direction:column;gap:4px}
.foot-grid nav a{color:var(--muted);text-decoration:none;font-size:15px;padding:4px 0}
.foot-grid nav a:hover{color:var(--text)}
.foot-grid h4{color:var(--text);font-size:12px;margin-bottom:8px}
.foot-brand{display:flex;flex-direction:column;gap:12px;color:var(--muted);font-size:15px}
.social{display:flex;gap:16px}.social a{color:var(--body);text-decoration:none}.social a:hover{color:var(--text)}
.foot-theme{display:flex;flex-direction:column;gap:10px}
.foot-theme .seg button{min-height:34px;padding:0 12px;font-size:13px}
.foot-legal{border-top:1px solid var(--rule);padding-top:24px;padding-bottom:calc(32px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted);line-height:1.6}
@media (max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}.foot-brand,.foot-theme{grid-column:1/-1}}
/* ---------- inner pages ---------- */
.top{padding-top:clamp(40px,6vw,80px);padding-bottom:clamp(56px,7vw,96px);display:flex;flex-direction:column;gap:22px}
.top h1{max-width:16ch}
.top.narrow h1{max-width:none}
.top .lead{color:var(--body)}
.cards3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.card{background:var(--surface);border-radius:var(--r);padding:28px;display:flex;flex-direction:column;gap:10px}
.card h3{font-size:21px}
.card p{color:var(--body);font-size:16px}
@media (max-width:860px){.cards3{grid-template-columns:1fr}}
.ticks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.ticks li{display:flex;gap:12px;color:var(--body)}
.ticks svg{flex:0 0 22px;margin-top:3px;color:var(--good);stroke-width:2.6}
.more{font-weight:700;color:var(--accentText);text-decoration:none}
.more:hover{text-decoration:underline}
.accent-text{color:var(--accentText)}
/* forms */
.form{background:var(--surface);gap:8px;margin-bottom:16px;padding:clamp(24px,4vw,40px)}
.form label{font-weight:600;font-size:15px;margin-top:8px}
.form input,.form select,.form textarea{width:100%;min-height:52px;border-radius:14px;border:1.5px solid var(--border);background:var(--raised);color:var(--text);font:16px var(--sans);padding:12px 16px}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--accent);outline:none}
.form textarea{min-height:150px;resize:vertical}
.form .btn{margin-top:16px;align-self:flex-start}
.form-note{font-size:15px;color:var(--accentText);min-height:24px}
.hidden-field{position:absolute;left:-9999px}
.selectable{user-select:all}
.draft{align-self:flex-start;background:var(--accentSoft);color:var(--accentText);font-weight:600;font-size:15px;padding:12px 16px;border-radius:12px}
.toc{display:flex;flex-wrap:wrap;gap:8px}
.toc a{font-size:14px;padding:8px 14px;border-radius:999px;border:1px solid var(--border);text-decoration:none;color:var(--body)}
.toc a:hover{border-color:var(--accent);color:var(--text)}
.legal{display:flex;flex-direction:column;gap:40px}
.legal section{display:flex;flex-direction:column;gap:12px;padding-top:4px}
.legal h2{font-size:clamp(24px,2.6vw,30px)}
.legal p,.legal li{color:var(--body);max-width:68ch}
.legal ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}
/* workouts page */
.demo-frame{background:var(--surface);border-radius:32px;padding:clamp(18px,3vw,36px);min-height:420px;display:flex;align-items:center;justify-content:center}
.player{width:100%;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.player-stage{display:flex;flex-direction:column;gap:12px;min-width:0;background:var(--raised);border-radius:24px;padding:16px}
.player-stage svg{width:100%;height:auto;display:block}
.player-stage .cue,.hero-demo .cue{font:700 12px var(--sans);letter-spacing:2px}
.player-ctrl{display:flex;justify-content:center}
.player-ctrl .seg{align-self:center}
.player-side{display:flex;flex-direction:column;gap:14px;min-width:0}
.player-side h3{font-size:clamp(24px,2.6vw,32px)}
.maps{display:flex;gap:16px;justify-content:flex-start}
.body-map{margin:0;display:flex;flex-direction:column;align-items:center;gap:4px}
.body-map svg{width:92px;height:auto}
.body-map figcaption{font-size:12px;color:var(--muted);font-weight:600}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{min-height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--border);background:var(--raised);color:var(--body);font:600 14px var(--sans);cursor:pointer}
.chip:hover{border-color:var(--accent)}
.chip.on{background:var(--text);border-color:var(--text);color:var(--bg)}
.lib-head{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}
.lib .count{font-weight:700;color:var(--text)}
.filters{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.ex-grid{list-style:none;margin:0 0 20px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.ex{background:var(--surface);border-radius:18px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-height:118px}
.ex[hidden]{display:none}
.ex b{display:block;font-family:var(--display);font-weight:500;font-size:16px;line-height:1.3;letter-spacing:-.01em}
.ex-mus{font-size:13px;color:var(--muted)}
.ex.is-sample{background:var(--raised);outline:2px solid var(--accent)}
.ex-foot{display:flex;justify-content:space-between;align-items:center;gap:8px}
.tagl{font-size:12px;font-weight:600;color:var(--muted);background:var(--bg);padding:4px 10px;border-radius:999px}
.ex-act{display:inline-flex;align-items:center;gap:6px;font:700 13px var(--sans)}
.ex-act svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ex-act.locked{color:var(--muted)}
.ex-act.play{border:none;background:var(--accent);color:var(--onAccent);border-radius:999px;min-height:32px;padding:0 12px;cursor:pointer}
@media (max-width:860px){.player{grid-template-columns:1fr;gap:20px}}
@media (max-width:560px){.ex-grid{grid-template-columns:1fr 1fr;gap:8px}.ex{padding:12px;min-height:0;gap:10px}.ex b{font-size:14px}.ex-foot{flex-wrap:wrap;gap:6px}.ex-act.play{min-height:30px;padding:0 10px;font-size:12px}}
/* motion strip (workouts page) */
.strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0}
.strip li{background:var(--surface);border-radius:20px;padding:12px 10px 14px;display:flex;flex-direction:column;align-items:center;gap:6px}
.strip svg{width:100%;height:auto;display:block}
.strip span{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.strip li:nth-child(3){outline:2px solid var(--accent)}
.strip li:nth-child(3) span{color:var(--accentText)}
@media (max-width:640px){.strip{grid-template-columns:repeat(5,minmax(120px,1fr));overflow-x:auto;padding-bottom:6px;scroll-snap-type:x mandatory}.strip li{scroll-snap-align:start}}
/* about */
.about-story{display:flex;flex-direction:column;gap:18px}
.about-story p{font-size:18px;line-height:1.7;max-width:62ch;color:var(--body)}
.about-story p:first-of-type{font-family:var(--display);font-weight:500;font-size:clamp(22px,2.4vw,28px);line-height:1.45;letter-spacing:-.015em;color:var(--text)}
.founder{display:flex;align-items:center;gap:14px;margin-bottom:8px}
.founder img{border-radius:50%}
.founder b{display:block;font-family:var(--display);font-size:20px}
.founder span{color:var(--muted);font-size:14px}
.about-small{display:flex;flex-direction:column;gap:14px}
.about-small p{color:var(--body)}
/* meals page */
.meal-demo{display:grid;grid-template-columns:1.25fr .75fr;gap:20px;align-items:start}
.meal-demo .card{gap:16px}
.md-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.md-head .eyebrow{margin-bottom:6px}
.md-total{font-size:clamp(30px,3.4vw,40px);font-variant-numeric:tabular-nums}
.meal-list{display:flex;flex-direction:column;gap:10px}
.meal{display:flex;align-items:center;gap:14px;background:var(--raised);border-radius:18px;padding:12px 16px}
.meal-ico svg{width:60px;height:60px;display:block}
.meal-txt{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.meal-txt .eyebrow{font-size:11px}
.meal-txt b{font-weight:600;font-size:16px;line-height:1.3}
.mac{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}
.swap{font:700 13px var(--sans);color:var(--accentText);border:1px solid var(--border);border-radius:999px;padding:6px 12px}
.shop h2{font-size:clamp(24px,2.6vw,30px)}
.aisles{display:flex;flex-direction:column;gap:14px}
.aisle h4{font:700 12px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.aisle ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.aisle label{display:flex;align-items:center;gap:10px;min-height:34px;cursor:pointer;color:var(--body)}
.aisle input{width:18px;height:18px;accent-color:var(--accent)}
.aisle label:has(input:checked){color:var(--muted);text-decoration:line-through}
@media (max-width:900px){.meal-demo{grid-template-columns:1fr}}
@media (max-width:480px){.meal{padding:10px;gap:10px}.meal-ico svg{width:46px;height:46px}.swap{display:none}}
/* split section (two columns) */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:center}
.split>div{display:flex;flex-direction:column;gap:18px;min-width:0}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.mini{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;color:var(--body);font-size:15px}
.ico{display:inline-flex;vertical-align:middle;color:var(--accentText)}
@media (max-width:520px){.two{grid-template-columns:1fr}}
.tile.inv,.tier.inv{background:var(--bg);border-color:var(--border)}
.tier.inv .price span,.tier.inv .per,.tier.inv .note{color:var(--muted)}
.fan{overflow:hidden;border-radius:0 0 4px 4px}
.tier-top{min-height:30px}
@media (max-width:640px){.fan{height:clamp(360px,100vw,460px)}.fan .glow{top:20%;width:96%}}
.foot-grid{grid-template-columns:1.3fr 1fr 1fr 1.5fr}
.foot-theme .seg{flex-wrap:nowrap}
.foot-theme .seg button{padding:0 10px;white-space:nowrap}
@media (max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}

/* ---------- plan builder (home) ---------- */
.planner{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:28px;align-items:start;margin-top:8px}
.pq-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:18px}
.pq{display:flex;flex-direction:column;gap:8px}
.pq-l{font:700 11px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.pq .seg{align-self:stretch}.pq .seg button{flex:1 1 auto}
.plan-card{background:var(--bg);color:var(--text);border-radius:calc(var(--r) + 4px);padding:28px;display:flex;flex-direction:column;gap:20px;box-shadow:0 30px 60px -30px rgba(20,18,16,.45);position:relative;overflow:hidden}
.plan-card::before{content:"";position:absolute;right:-90px;top:-90px;width:240px;height:240px;border-radius:50%;border:1px solid var(--accent);opacity:.35;box-shadow:0 0 0 36px transparent,0 0 0 37px color-mix(in srgb,var(--accent) 30%,transparent)}
.pc-top h3{font-size:30px;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.pc-auto{font:600 12px var(--sans);font-style:normal;letter-spacing:.04em;color:var(--accentText);border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:999px;padding:4px 10px}
.pc-sub{color:var(--body);margin:6px 0 0}
.pc-week{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.pc-week li{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.pc-week li>span{font:600 11px var(--sans);color:var(--muted);letter-spacing:.06em;text-transform:uppercase}
.pc-week button,.pc-week b{width:100%;min-height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font:700 12px var(--sans);padding:0 2px;text-align:center;line-height:1.15}
.pc-week button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;transition:background .2s,border-color .2s,transform .15s}
.pc-week button:hover{border-color:var(--accent)}
.pc-week li.on button{background:var(--accent);border-color:var(--accent);color:var(--onAccent)}
.pc-week b{color:var(--muted);font-weight:600;border:1px dashed var(--border)}
.pc-day{border-top:1px solid var(--rule);padding-top:18px;display:flex;flex-direction:column;gap:12px}
.pc-day-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.pc-day-h b{font-family:var(--display);font-size:20px}.pc-day-h span{color:var(--muted);font-size:14px}
.pc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.pc-list li{display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:center;background:var(--surface);border-radius:14px;padding:12px 14px;animation:pcIn .45s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i) * 45ms)}
.pc-n{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font:700 13px var(--sans);color:var(--accentText);border:1px solid color-mix(in srgb,var(--accent) 50%,transparent)}
.pc-list b{display:block;font:600 15px var(--sans);color:var(--text)}
.pc-list div span{font-size:13px;color:var(--muted)}
.pc-sr{text-align:right;font:700 15px var(--sans);font-variant-numeric:tabular-nums;white-space:nowrap}
.pc-sr small{display:block;font-weight:500;font-size:12px;color:var(--muted)}
@keyframes pcIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (max-width:900px){.planner{grid-template-columns:1fr}}
@media (max-width:520px){.pq-panel,.plan-card{padding:20px}.pc-week{gap:4px}.pc-week button,.pc-week b{min-height:40px;font-size:10.5px;border-radius:10px}.pc-week b{font-size:10px}.pc-top h3{font-size:24px}.pc-list li{grid-template-columns:26px 1fr auto;padding:10px 12px;gap:10px}.pc-n{width:24px;height:24px;font-size:12px}.pc-list b{font-size:14px}}

/* ---------- beat last time (workouts) ---------- */
.blt{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:24px;align-items:stretch}
.blt-in{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:16px}
.blt-f{display:flex;flex-direction:column;gap:8px}
.blt-f span{font:700 11px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.blt-f select{min-height:48px;border-radius:12px;border:1px solid var(--border);background:var(--raised);color:var(--text);font:600 16px var(--sans);padding:0 14px}
.blt-last{display:flex;flex-direction:column;gap:12px}
.blt-kg,.blt-step{display:inline-flex;align-items:center;gap:6px;background:var(--raised);border:1px solid var(--border);border-radius:999px;padding:4px;align-self:flex-start}
.blt-kg b{min-width:110px;text-align:center;font:700 22px var(--display);font-variant-numeric:tabular-nums}.blt-kg b small{font:600 12px var(--sans);color:var(--muted)}
.blt-kg button,.blt-step button{width:40px;height:40px;border-radius:50%;border:none;background:var(--surface);color:var(--text);font:700 20px var(--sans);cursor:pointer}
.blt-kg button:hover,.blt-step button:hover{background:var(--accent);color:var(--onAccent)}
.blt-sets{display:flex;gap:10px;flex-wrap:wrap}
.blt-set{display:flex;flex-direction:column;gap:6px}.blt-set small{font:600 12px var(--sans);color:var(--muted)}
.blt-step button{width:34px;height:34px;font-size:17px}.blt-step b{min-width:26px;text-align:center;font:700 17px var(--sans);font-variant-numeric:tabular-nums}
.blt-out{background:var(--bg);color:var(--text);border-radius:calc(var(--r) + 4px);padding:28px;display:flex;flex-direction:column;justify-content:center;gap:10px;box-shadow:0 30px 60px -30px rgba(20,18,16,.45)}
.blt-out p{margin:0;color:var(--body)}
.blt-big{font:700 clamp(44px,5vw,60px) var(--display);letter-spacing:-.03em;line-height:1.05;font-variant-numeric:tabular-nums}
.blt-big i{font-style:normal;color:var(--accentText);font-weight:500}
.blt-out.up .blt-big{color:var(--accentText)}
@media (max-width:860px){.blt{grid-template-columns:minmax(0,1fr)}}
.blt-in,.blt-out{min-width:0}

/* ---------- tap a muscle (workouts library) ---------- */
.lib-top{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:center;margin-bottom:8px}
.mfilter{display:flex;flex-direction:column;align-items:center;gap:6px}
.mfilter .maps{display:flex;gap:10px}
.mfilter .body-map{margin:0;display:flex;flex-direction:column;align-items:center;gap:4px}
.mfilter svg{width:130px;height:auto}
.mfilter figcaption{font:600 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.pick-r{cursor:pointer;outline:none}.pick-r *{transition:fill .15s}
.pick-r:focus-visible *{stroke:var(--accent);stroke-width:1.5}
.mf-say{margin:0;min-height:28px;display:flex;gap:10px;align-items:center;font-size:14px;color:var(--muted)}
.mf-say b{color:var(--accentText);font-size:15px}
@media (max-width:760px){.lib-top{grid-template-columns:1fr}.mfilter svg{width:110px}}

/* ---------- reveal on scroll (only when motion is welcome) ---------- */
.js-rv .rv{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.js-rv .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.pc-list li{animation:none}}
.mf-clear{background:none;border:0;padding:4px 2px;color:var(--accentText);font:600 14px var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.mfilter svg{width:150px}
@media (max-width:760px){.mfilter svg{width:120px}}

/* ---------- today's session (home) ---------- */
.today{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:40px;align-items:center}
.td-copy{display:flex;flex-direction:column;gap:18px}
.td-copy h2{font-size:clamp(40px,5vw,64px);line-height:1.02}
.td-copy .lead{margin:0}
.td-live{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;margin:0;padding:8px 14px;border:1px solid var(--border);border-radius:999px;font:600 13px var(--sans);color:var(--body)}
.td-live i{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 60%,transparent);animation:tdPulse 2s infinite}
@keyframes tdPulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 55%,transparent)}70%{box-shadow:0 0 0 10px transparent}100%{box-shadow:0 0 0 0 transparent}}
.td-copy .fine b{color:var(--text);font-variant-numeric:tabular-nums}
.td-card{background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--r) + 4px);padding:24px;display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:20px;align-items:center}
.td-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.td-list li{display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:center;background:var(--raised);border-radius:14px;padding:11px 14px}
.td-list b{display:block;font:600 15px var(--sans);color:var(--text)}.td-list div span{font-size:13px;color:var(--muted)}
.td-map{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.td-map .maps{display:flex;gap:6px}.td-map svg{width:84px;height:auto}.td-map figcaption{font:600 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:center}
.td-map figure{margin:0}.td-map b{color:var(--accentText)}
@media (max-width:980px){.today{grid-template-columns:1fr}.td-card{grid-template-columns:1fr}.td-map{flex-direction:row;justify-content:center;text-align:left}}
@media (max-width:520px){.td-card{padding:16px}.td-list li{grid-template-columns:26px 1fr auto;padding:10px 12px;gap:10px}.td-list b{font-size:14px}.td-map{flex-direction:column}}
@media (prefers-reduced-motion:reduce){.td-live i{animation:none}}

/* ---------- hero pills (live, clickable) ---------- */
.pills{display:flex;flex-wrap:wrap;gap:10px;align-self:flex-start}
a.pill{text-decoration:none}
.pill-i{position:relative;cursor:pointer;transition:border-color .2s,background .2s,transform .2s;padding-right:12px}
.pill-i:hover,.pill-i:focus-visible{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text);transform:translateY(-1px)}
.pill-go{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:.55;transition:transform .2s,opacity .2s}
.pill-i:hover .pill-go{transform:translateX(3px);opacity:1}
.pill.live::before{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 55%,transparent);animation:tdPulse 2s infinite}
.flip{display:inline-grid}
.flip>span{grid-area:1/1;white-space:nowrap;opacity:0;transform:translateY(8px);transition:opacity .45s,transform .45s}
.flip>span.on{opacity:1;transform:none}
.flip>span:not(.on){pointer-events:none}
@media (max-width:420px){.pill{font-size:12px;padding:7px 10px;gap:8px}.pills{gap:8px}}
@media (prefers-reduced-motion:reduce){.pill.live::before{animation:none}.flip>span{transition:none}}

/* ---------- hero quote ---------- */
#hero-quote{align-self:stretch;max-width:560px}
.hq{margin:0;display:flex;flex-direction:row;align-items:flex-start;gap:8px}
.hq-btn{display:flex;gap:14px;align-items:flex-start;background:none;border:0;padding:0;margin:0;text-align:left;color:inherit;font:inherit;cursor:pointer}
.hq-mark{font:700 calc(clamp(18px,1.9vw,22px) * 1.5)/0 "PP Slab","Roboto Slab",Georgia,serif;color:var(--accent);flex:none;padding-top:.62em;width:.62em}
.hq-stack{display:grid;flex:1}
.hq-one{grid-area:1/1;display:flex;flex-direction:column;gap:6px;opacity:0;transform:translateY(8px);transition:opacity .6s,transform .6s;pointer-events:none}
.hq-one.on{opacity:1;transform:none}
.hq blockquote{margin:0;font:500 clamp(18px,1.9vw,22px)/1.35 var(--display);letter-spacing:-.01em;color:var(--text)}
.hq figcaption{font:600 12px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hq figcaption b{color:var(--accentText);font-weight:700}
.hq-btn:hover blockquote{color:var(--accentText)}
.hq-dots{display:flex;gap:6px;padding-left:46px}
.hq-dots i{width:18px;height:3px;border-radius:2px;background:var(--border);transition:background .3s,width .3s}
.hq-dots i.on{background:var(--accent);width:28px}
@media (max-width:520px){.hq-dots{padding-left:38px}.hq figcaption{font-size:10.5px;letter-spacing:.06em}}
@media (prefers-reduced-motion:reduce){.hq-one{transition:none}}
.hq-end{font:700 1.5em/0 "PP Slab","Roboto Slab",Georgia,serif;color:var(--accent);margin-left:6px;vertical-align:-.32em}
.hq-open{margin-left:0;margin-right:6px}

/* ---------- exercise guides ---------- */
.crumbs{margin:6px 0 0;font-size:14px;color:var(--muted)}.crumbs a{color:var(--accentText)}
.exg{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:start}
.exg-vis{position:sticky;top:96px;display:flex;flex-direction:column;gap:12px}
.exv{background:var(--surface);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;align-items:center;gap:14px}
.exv .maps{display:flex;gap:14px}.exv .body-map{margin:0;display:flex;flex-direction:column;align-items:center;gap:4px}.exv .body-map svg{width:130px}
.exv figcaption{font:600 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.exv-key{margin:0;display:flex;gap:14px;align-items:center;font-size:13px;color:var(--muted)}
.exv-key i{width:12px;height:12px;border-radius:3px;display:inline-block;margin-right:-8px}.exv-key .k1{background:var(--mus1)}.exv-key .k2{background:var(--mus2)}
.gd{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px}.gd svg{width:100%;max-width:340px}
.exg-txt{display:flex;flex-direction:column;gap:22px}
.exg-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:16px;overflow:hidden}
.exg-facts div{background:var(--bg);padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.exg-facts span{font:700 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.exg-facts b{font:600 15px var(--sans);color:var(--text)}
.exg-txt h2{font-size:clamp(28px,3vw,36px)}
.exg-steps{margin:0;padding:0;list-style:none;counter-reset:st;display:flex;flex-direction:column;gap:12px}
.exg-steps li{counter-increment:st;display:grid;grid-template-columns:40px 1fr;gap:14px;align-items:start;font-size:17px;line-height:1.55;color:var(--body)}
.exg-steps li::before{content:counter(st);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--accentSoft);color:var(--accentText);font:700 15px var(--sans)}
.exg-members{background:var(--bg);color:var(--text);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.exg-members b{font:700 18px var(--display)}.exg-members p{margin:0;color:var(--body)}
.exg-chips{gap:10px}.exg-chips a.chip{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--text)}
.exg-chips a.chip small{color:var(--muted);font-weight:500}
.exg-chips a.chip:hover{border-color:var(--accent)}
@media (max-width:900px){.exg{grid-template-columns:1fr;gap:28px}.exg-vis{position:static}.exg-facts{grid-template-columns:1fr 1fr}}
.exi{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:36px 32px}
.exi-g h2{font-size:26px;margin-bottom:12px;scroll-margin-top:96px}
.exi-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.exi-list a{display:flex;flex-direction:column;padding:10px 12px;border-radius:12px;text-decoration:none}
.exi-list a:hover{background:var(--surface)}.exi-list b{font:600 16px var(--sans);color:var(--text)}.exi-list span{font-size:13px;color:var(--muted)}
a.ex-link{color:inherit;text-decoration:none}a.ex-link:hover{color:var(--accentText);text-decoration:underline;text-underline-offset:3px}

/* ---------- calculators ---------- */
.calc{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:24px;align-items:stretch}
.calc-in{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:18px}
.calc-row{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}
.cf{display:flex;flex-direction:column;gap:8px;flex:1 1 160px}
.cf>span{font:700 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.cf-in{display:flex;align-items:center;border:1px solid var(--border);background:var(--raised);border-radius:12px;padding:0 14px;min-height:50px}
.cf-in input{flex:1;min-width:0;border:0;background:none;font:600 18px var(--sans);color:var(--text);outline:none;padding:0}
.cf-in em{font-style:normal;color:var(--muted);font-weight:600}
.cf-in:focus-within{border-color:var(--accent)}
.cf select{min-height:50px;border-radius:12px;border:1px solid var(--border);background:var(--raised);color:var(--text);font:600 15px var(--sans);padding:0 12px}
.calc-out{background:var(--bg);color:var(--text);border-radius:calc(var(--r) + 4px);padding:28px;display:flex;flex-direction:column;justify-content:center;gap:10px;box-shadow:0 30px 60px -30px rgba(20,18,16,.45)}
.calc-out p{margin:0;color:var(--body)}
.calc-big{font:700 clamp(40px,4.6vw,56px) var(--display);letter-spacing:-.03em;line-height:1.05;color:var(--accentText);font-variant-numeric:tabular-nums}
.calc-tbl{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}.calc-tbl th,.calc-tbl td{text-align:left;padding:8px 6px;border-top:1px solid var(--rule);font-size:15px}.calc-tbl th{color:var(--accentText)}.calc-tbl td:last-child{color:var(--muted)}
.tool-note h3{margin-bottom:10px}.tool-note p{color:var(--body)}
@media (max-width:860px){.calc{grid-template-columns:minmax(0,1fr)}}
.calc-in,.calc-out,.cf{min-width:0}.calc-in .seg{max-width:100%}

/* ---------- trust strip + comparison ---------- */
.trust{list-style:none;margin:28px auto 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:980px}
.trust li{border:1px solid var(--border);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:2px;text-align:center}
.trust b{font:700 14px var(--sans);color:var(--text)}.trust span{font-size:13px;color:var(--muted)}
@media (max-width:760px){.trust{grid-template-columns:1fr 1fr}}
.cmp-wrap{position:relative;max-width:100%;min-width:0;width:100%;overflow-x:auto;margin:8px 0 16px;border:1px solid var(--rule);border-radius:var(--r)}
.cmp{width:100%;border-collapse:collapse;min-width:640px}
.cmp th,.cmp td{padding:14px 16px;text-align:center;border-top:1px solid var(--rule);font-size:15px;color:var(--body)}
.cmp tr:first-child th{border-top:0;font:700 14px var(--sans);color:var(--text)}
.cmp th[scope=row]{text-align:left;font:600 15px var(--sans);color:var(--text);max-width:260px}
.cmp .us{background:var(--accent);color:var(--onAccent)!important;border-radius:14px 14px 0 0}
.cmp td:nth-child(2){background:color-mix(in srgb,var(--accent) 9%,transparent);font-weight:700;color:var(--text)}
.cmp td.y span{color:var(--good);font-weight:800;font-size:18px}.cmp td.n span{color:var(--muted)}.cmp td.s{color:var(--accentText);font-weight:600}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- save / print plan ---------- */
.pc-save{margin-top:-8px}
.print-plan{display:none}
@media print{
  body.printing-plan>*:not(.print-plan){display:none!important}
  body.printing-plan .print-plan{display:block;color:#000;background:#fff;font:12pt/1.45 Arial,sans-serif;padding:0}
  .print-plan h1{font-size:20pt;margin:0 0 6pt}.print-plan h2{font-size:14pt;margin:14pt 0 4pt}
  html,body{background:#fff!important}
  .print-plan table{width:100%;border-collapse:collapse;table-layout:fixed}.print-plan td{border-bottom:1px solid #ccc;padding:4pt 6pt}
  .print-plan td:first-child{width:6%}.print-plan td:nth-child(2){width:54%}.print-plan td:nth-child(3){width:20%}
}
