*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#000000;--s1:#181818;--s2:#1F1F1F;--s3:#272727;--s4:#313131;
  --silver:#E6E8EC;--silver2:#C4C9D1;--muted:#8B9099;
  --glow-a:rgba(214,220,230,.75);--glow-b:rgba(190,198,210,.42);--glow-c:rgba(170,180,195,.24);
  --display:'Anton','Impact',sans-serif;
  --font:'Geist',system-ui,sans-serif;
  --ease-out:cubic-bezier(0.23,1,0.32,1);
  --ease-in-out:cubic-bezier(0.77,0,0.175,1);
  --ease-drawer:cubic-bezier(0.32,0.72,0,1);
  --pad:24px;
}
@media (min-width:768px){:root{--pad:48px}}
html{scroll-behavior:smooth;scroll-padding-top:calc(env(safe-area-inset-top,0px) + 96px);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;background:var(--bg)}
body{background:linear-gradient(180deg,#000 0%,#08090b 14%,#0f1114 38%,#121418 55%,#0d0f12 78%,#050506 94%,#000 100%);color:var(--silver2);font-family:var(--font);font-size:16px;line-height:24px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
button,a{touch-action:manipulation}
button,.btn,.island a,.menu a,.lnav a{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
:focus-visible{outline:2px solid var(--silver);outline-offset:4px;border-radius:4px}
h1,h2,h3,h4,p,dt,dd{text-wrap:pretty}
.wrap{max-width:1440px;margin:0 auto;padding:0 var(--pad)}
[hidden]{display:none!important}
.skip{position:fixed;left:16px;top:16px;z-index:200;background:var(--silver);color:#000;padding:8px 16px;border-radius:9999px;font-weight:600;transform:translateY(-200%);transition:transform 200ms var(--ease-out)}
.skip:focus{transform:none}

/* ---------- glow ---------- */
.glow{filter:drop-shadow(0 0 1px rgba(255,255,255,.9)) drop-shadow(0 0 8px var(--glow-a)) drop-shadow(0 0 28px var(--glow-b)) drop-shadow(0 0 72px var(--glow-c))}
.ignite{animation:ignite 1.6s linear both}
@keyframes ignite{0%{opacity:0}8%{opacity:.85}10%{opacity:.08}18%{opacity:.8}21%{opacity:.18}30%{opacity:1}33%{opacity:.5}37%,100%{opacity:1}}
.display{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.01em}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 24px;border-radius:9999px;font-size:16px;line-height:24px;font-weight:600;text-decoration:none;white-space:nowrap;cursor:pointer;border:1px solid transparent;
  transition:transform 160ms var(--ease-out),box-shadow 250ms var(--ease-out),background-color 200ms var(--ease-out),color 200ms var(--ease-out),border-color 200ms var(--ease-out)}
.btn:active{transform:scale(.97)}
.btn-silver{background:var(--silver);color:#000}
.btn-line{border-color:var(--s4);color:var(--silver)}
.btn-lg{min-height:56px;padding:16px 32px;font-size:18px;line-height:28px}
.btn-wide{width:100%}
.btn.round{width:48px;padding:0;font-size:20px}
.btn:disabled{opacity:.35;cursor:not-allowed;transform:none;box-shadow:none}
.btn-plain{display:block;margin:12px auto 0;font-size:14px;line-height:20px;color:var(--muted);text-decoration:underline;text-underline-offset:4px;transition:color 200ms var(--ease-out)}
.tlink{font-size:16px;font-weight:600;color:var(--silver2);text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--s4);transition:color 200ms var(--ease-out),text-decoration-color 200ms var(--ease-out)}
.tg-inline{font-weight:600;color:var(--silver);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--s4)}

/* ---------- island nav ---------- */
.island{position:fixed;top:calc(env(safe-area-inset-top,0px) + 16px);left:50%;transform:translateX(-50%);z-index:40;display:flex;align-items:center;gap:8px;width:max-content;max-width:calc(100% - 24px);padding:8px 8px 8px 24px;border-radius:9999px;
  background:rgba(24,24,24,.72);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);box-shadow:0 0 0 1px var(--s4) inset,0 8px 32px rgba(0,0,0,.5)}
.island-logo img{height:24px;width:auto}
.island-links{display:flex;gap:4px;margin-left:24px}
.island-links a{font-size:14px;line-height:20px;font-weight:600;color:var(--muted);text-decoration:none;padding:8px 12px;border-radius:9999px;transition:color 200ms var(--ease-out),background-color 200ms var(--ease-out)}
.island-links a[aria-current]{color:var(--silver);background:var(--s3)}
.island-cart{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 8px 8px 16px;margin-left:16px;border-radius:9999px;background:var(--silver);color:#000;font-size:14px;line-height:20px;font-weight:600;transition:transform 160ms var(--ease-out),box-shadow 250ms var(--ease-out)}
.island-cart:active{transform:scale(.97)}
.odo{display:inline-flex;overflow:hidden;min-width:24px;height:24px;padding:0 8px;border-radius:9999px;background:#000;color:var(--silver);justify-content:center;align-items:center;font-size:12px;line-height:16px}
.cart-n{display:inline-block;font-variant-numeric:tabular-nums}
.burger{display:none;position:relative;width:40px;height:40px;border-radius:9999px;background:var(--s3);transition:transform 160ms var(--ease-out)}
.burger:active{transform:scale(.95)}
.burger span{position:absolute;left:12px;right:12px;height:2px;border-radius:2px;background:var(--silver);transition:transform 450ms var(--ease-drawer)}
.burger span:first-child{transform:translateY(-4px)}
.burger span:last-child{transform:translateY(4px)}
.burger[aria-expanded="true"] span:first-child{transform:rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:rotate(-45deg)}
@media (max-width:860px){
  .island{padding-left:16px;gap:8px}
  .island-links{display:none}
  .island-cart{margin-left:24px}
  .burger{display:block}
}
.menu{position:fixed;inset:0;z-index:35;background:rgba(0,0,0,.8);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);display:flex;flex-direction:column;justify-content:flex-end;gap:8px;padding:96px var(--pad) calc(env(safe-area-inset-bottom,0px) + 48px);
  opacity:0;visibility:hidden;transition:opacity 300ms var(--ease-out),visibility 0s linear 300ms}
.menu.is-open{opacity:1;visibility:visible;transition:opacity 450ms var(--ease-out),visibility 0s}
.menu a{font-family:var(--display);text-transform:uppercase;font-size:72px;line-height:1;color:var(--silver);text-decoration:none;cursor:pointer;opacity:0;transform:translateY(48px);transition:opacity 250ms ease,transform 250ms var(--ease-out)}
.menu.is-open a{opacity:1;transform:none;transition:opacity 500ms var(--ease-out),transform 700ms var(--ease-drawer);transition-delay:calc(100ms + var(--i,0)*50ms)}

/* ---------- hero ---------- */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:calc(env(safe-area-inset-top,0px) + 96px) var(--pad) 64px;overflow:hidden;isolation:isolate}
.smoke{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.h-title{position:relative;z-index:1;width:min(820px,100%)}
.h-logo{width:100%;height:auto}
.h-lede{position:relative;z-index:1;max-width:680px;margin:48px auto 32px;font-size:18px;line-height:28px;color:var(--silver2);text-wrap:balance;opacity:0;animation:rise 800ms var(--ease-out) 1.2s forwards}
.h-cta{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;opacity:0;animation:rise 800ms var(--ease-out) 1.35s forwards}
.h-proof{position:relative;z-index:1;list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:12px 32px;margin-top:64px;font-size:14px;line-height:20px;color:var(--muted);opacity:0;animation:rise 800ms var(--ease-out) 1.5s forwards}
.h-proof b{color:var(--silver);font-weight:600}
@keyframes rise{from{opacity:0;transform:translateY(16px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}
@media (max-width:640px){.h-lede{margin:32px auto 24px;font-size:16px;line-height:24px}.h-cta{flex-direction:column;gap:16px}.h-cta .btn{width:100%}.h-proof{margin-top:48px;gap:8px 24px}}

/* ---------- tagline reveal ---------- */
.tagline-sec{padding:96px var(--pad) 128px;display:flex;justify-content:center}
.tagline{max-width:980px;font-family:var(--display);text-transform:uppercase;font-size:36px;line-height:40px;text-align:center;text-wrap:balance}
.tagline [data-line]{display:block}
@media (min-width:768px){.tagline{font-size:60px;line-height:1.05}}
.tagline .w{color:rgba(230,232,236,.28);transition:color 700ms var(--ease-drawer),text-shadow 700ms var(--ease-drawer)}
.tagline .w.on{color:var(--silver);text-shadow:0 0 8px rgba(214,220,230,.55),0 0 32px rgba(190,198,210,.3)}
.js .tagline .w{will-change:color}

/* ---------- sections ---------- */
.sec{padding:96px 0}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:16px 48px;align-items:end;margin-bottom:48px}
.sec-title{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:60px;line-height:1;color:var(--silver);text-shadow:0 0 24px rgba(200,206,216,.28)}
@media (min-width:768px){.sec-title{font-size:96px}}
.sec-note{font-size:16px;line-height:24px;color:var(--muted);max-width:65ch}
@media (max-width:760px){.sec-head{grid-template-columns:1fr;margin-bottom:32px}}
.js [data-reveal]{opacity:0;transform:translateY(64px);filter:blur(12px);transition:opacity 800ms var(--ease-drawer),transform 900ms var(--ease-drawer),filter 800ms var(--ease-drawer)}
.js [data-reveal].in{opacity:1;transform:none;filter:none}

/* ---------- shop ---------- */
.shop{padding:64px 0 48px}
.lnav{position:sticky;top:calc(env(safe-area-inset-top,0px) + 76px);z-index:25;background:rgba(0,0,0,.82);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--s3),0 -1px 0 var(--s3)}
.lnav-track{position:relative;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;padding:8px var(--pad) 12px;max-width:1440px;margin:0 auto}
.lnav-track::-webkit-scrollbar{display:none}
.lnav-list{display:flex;gap:4px;width:max-content}
.lnav-list>*{display:block;font-size:14px;line-height:20px;font-weight:600;padding:8px 16px;border-radius:9999px;white-space:nowrap;text-decoration:none;color:var(--muted);transition:color 200ms var(--ease-out)}
.lnav-on{position:absolute;top:8px;left:var(--pad);pointer-events:none;clip-path:inset(0 100% 0 0);transition:clip-path 320ms var(--ease-in-out)}
.lnav-on>*{background:var(--silver);color:#000;box-shadow:0 0 16px rgba(214,220,230,.35)}
.line{padding:64px 0 32px;scroll-margin-top:calc(env(safe-area-inset-top,0px) + 136px)}
.line+.line{border-top:1px solid var(--s3)}
.line-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px 48px;flex-wrap:wrap;margin-bottom:32px}
.line-name{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:48px;line-height:1;color:var(--silver);margin-bottom:16px}
@media (min-width:768px){.line-name{font-size:72px}}
.chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.chips li{padding:4px 12px;border-radius:9999px;background:var(--s1);box-shadow:0 0 0 1px var(--s4) inset;font-size:14px;line-height:20px;font-weight:600;color:var(--silver2)}
.line-desc{color:var(--muted);max-width:65ch}
.line-buy{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.line-price{display:flex;align-items:baseline;gap:8px;color:var(--muted);font-size:14px;line-height:20px}
.line-price .num{font-family:var(--display);font-size:48px;line-height:1;color:var(--silver);text-shadow:0 0 16px rgba(214,220,230,.35)}
@media (max-width:760px){.line-buy{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px 24px}}

.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media (max-width:1100px){.tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.tiles{grid-template-columns:1fr 1fr;gap:12px}}
.tiles.is-collapsed .tile[data-extra]{display:none}
.tile{display:flex;flex-direction:column;background:var(--s1);border-radius:24px;padding:8px;box-shadow:0 0 0 1px var(--s3) inset;transition:transform 300ms var(--ease-out),box-shadow 300ms var(--ease-out)}
.t-img{aspect-ratio:1;border-radius:16px;overflow:hidden;background:var(--s2)}
.t-img img{width:100%;height:100%;object-fit:cover;transition:transform 600ms var(--ease-drawer)}
.t-body{display:flex;flex-direction:column;flex:1;padding:16px 8px 8px}
.t-name{font-size:18px;line-height:28px;font-weight:600;letter-spacing:-.01em;color:var(--silver)}
.t-desc{font-size:14px;line-height:20px;color:var(--muted)}
.t-row{margin-top:auto;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.t-price{font-family:var(--display);font-size:24px;line-height:32px;color:var(--silver)}
.t-ctl{display:grid;width:120px;flex:none}
.t-ctl>*{grid-area:1/1;transition:opacity 200ms ease,filter 200ms ease,transform 200ms var(--ease-out)}
.t-add{min-height:40px;border-radius:9999px;box-shadow:0 0 0 1px var(--s4) inset;color:var(--silver);font-weight:600;font-size:14px;line-height:20px;transition:transform 160ms var(--ease-out),opacity 200ms ease,filter 200ms ease,background-color 200ms var(--ease-out),color 200ms var(--ease-out)}
.t-add:active,.t-q:active{transform:scale(.95)}
.t-step{display:flex;align-items:stretch;min-height:40px;border-radius:9999px;background:var(--silver);color:#000;overflow:hidden;opacity:0;filter:blur(2px);transform:scale(.97);pointer-events:none;box-shadow:0 0 20px rgba(214,220,230,.3)}
.t-q{flex:0 0 36px;font-size:18px;line-height:1;font-weight:700;transition:transform 160ms var(--ease-out)}
.t-n{flex:1;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;font-variant-numeric:tabular-nums}
.t-ctl.has .t-add{opacity:0;filter:blur(2px);transform:scale(.97);pointer-events:none}
.t-ctl.has .t-step{opacity:1;filter:none;transform:none;pointer-events:auto}
.tile.in-cart{box-shadow:0 0 0 1px rgba(214,220,230,.55) inset,0 0 32px rgba(190,198,210,.16)}
@media (max-width:640px){.tile{border-radius:16px;padding:4px}.t-img{border-radius:12px}.t-body{padding:12px 4px 4px}.t-name{font-size:16px;line-height:24px}.t-desc{display:none}.t-row{flex-direction:column;align-items:stretch;gap:8px;padding-top:8px}.t-ctl{width:100%}}
.more{display:flex;justify-content:center;align-items:center;width:100%;margin-top:24px;min-height:56px;border-radius:9999px;box-shadow:0 0 0 1px var(--s4) inset;font-weight:600;font-size:16px;color:var(--silver);transition:transform 160ms var(--ease-out),background-color 200ms var(--ease-out)}
.more:active{transform:scale(.99)}

/* ---------- cartons ---------- */
.cartons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:1000px){.cartons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.cartons{grid-template-columns:1fr}}
.carton{background:var(--s1);border-radius:24px;padding:8px;box-shadow:0 0 0 1px var(--s3) inset;display:flex;flex-direction:column;transition:box-shadow 300ms var(--ease-out),transform 300ms var(--ease-out)}
.c-img{aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:var(--s2)}
.c-img img{width:100%;height:100%;object-fit:cover}
.c-body{padding:24px 16px 16px;display:flex;flex-direction:column;flex:1}
.c-name{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:30px;line-height:36px;color:var(--silver);margin-bottom:8px}
.c-meta{color:var(--muted);margin-bottom:24px}
.c-row{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.c-price{display:flex;flex-direction:column}
.c-price .num{font-family:var(--display);font-size:48px;line-height:1;color:var(--silver);text-shadow:0 0 16px rgba(214,220,230,.35)}
.c-per{font-size:14px;line-height:20px;color:var(--muted);margin-top:4px}

/* ---------- reviews ---------- */
.shots{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--pad) 8px;scroll-padding:0 var(--pad);scrollbar-width:none;overscroll-behavior-x:contain}
.shots::-webkit-scrollbar{display:none}
.shots.dragging{scroll-snap-type:none;cursor:grabbing}
.shot{flex:0 0 auto;scroll-snap-align:start;height:min(60vh,520px);border-radius:24px;overflow:hidden;background:var(--s1);box-shadow:0 0 0 1px var(--s3) inset}
.shot img{height:100%;width:auto;max-width:none;-webkit-user-drag:none;user-select:none}
.shots-nav{display:flex;gap:12px;margin-top:24px}

/* ---------- steps ---------- */
.steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.steps li{background:var(--s1);border-radius:24px;padding:32px 24px;box-shadow:0 0 0 1px var(--s3) inset}
.step-n{display:block;font-family:var(--display);font-size:96px;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--silver);margin-bottom:24px;filter:drop-shadow(0 0 8px rgba(214,220,230,.45))}
.steps h3{font-size:20px;line-height:28px;font-weight:600;letter-spacing:-.015em;color:var(--silver);margin-bottom:8px}
.steps p{color:var(--muted)}
@media (max-width:1000px){.steps{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.steps{grid-template-columns:1fr}}

/* ---------- faq: side by side list ---------- */
.faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}
.qa{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:24px 0;box-shadow:0 -1px 0 var(--s3)}
.qa dt{font-size:18px;line-height:28px;font-weight:600;letter-spacing:-.01em;color:var(--silver)}
.qa dd{color:var(--muted);max-width:60ch}
@media (max-width:860px){.faq{grid-template-columns:1fr}}

/* ---------- final cta ---------- */
.final{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:128px var(--pad) 96px;overflow:hidden;isolation:isolate}
.f-logo{position:relative;z-index:1;width:min(480px,80%);margin-bottom:64px}
.final-q{position:relative;z-index:1;font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:48px;line-height:1;color:var(--silver);max-width:680px;text-wrap:balance}
@media (min-width:768px){.final-q{font-size:72px}}
.final-note{position:relative;z-index:1;max-width:680px;margin:24px auto 32px;font-size:18px;line-height:28px;color:var(--muted)}
.final .btn{position:relative;z-index:1}

/* ---------- footer ---------- */
.foot{padding:32px 0 calc(env(safe-area-inset-bottom,0px) + 96px)}
.foot-in{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;box-shadow:0 -1px 0 var(--s3);padding-top:32px;font-size:14px;line-height:20px;color:var(--muted)}
.foot-in p:first-child{max-width:65ch}
.foot-in strong{color:var(--silver2);font-weight:600}
@media (min-width:861px){.foot{padding-bottom:48px}}

/* ---------- mobile cart bar ---------- */
.mbar{position:fixed;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 12px);z-index:30;transform:translateY(160%);transition:transform 300ms var(--ease-out)}
.mbar button{width:100%;min-height:56px;display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-radius:9999px;background:var(--silver);color:#000;font-weight:700;font-size:16px;box-shadow:0 0 32px rgba(190,198,210,.3),0 8px 24px rgba(0,0,0,.6);transition:transform 160ms var(--ease-out)}
.mbar button:active{transform:scale(.98)}
.mbar-total{font-family:var(--display);font-weight:400;font-size:24px;line-height:32px;font-variant-numeric:tabular-nums}
body.has-cart .mbar{transform:none;transition-duration:500ms;transition-timing-function:var(--ease-drawer)}
@media (min-width:861px){.mbar{display:none}}

/* ---------- scrim + sheets ---------- */
.scrim{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:opacity 250ms ease,visibility 0s linear 250ms}
.scrim.on{opacity:1;visibility:visible;transition:opacity 350ms ease,visibility 0s}
.sheet{touch-action:pan-y}
.grab-zone{position:relative}
.grab{display:none}
.cart{position:fixed;top:0;right:0;bottom:0;z-index:60;width:min(480px,100%);background:var(--s1);color:var(--silver2);box-shadow:-1px 0 0 var(--s4);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px);
  transform:translateX(100%);visibility:hidden;transition:transform 280ms var(--ease-out),visibility 0s linear 280ms}
.cart.open{transform:none;visibility:visible;transition:transform 500ms var(--ease-drawer),visibility 0s}
.cart-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 24px 16px;box-shadow:0 1px 0 var(--s3)}
.cart-title{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:48px;line-height:1;color:var(--silver)}
.x{font-size:14px;line-height:20px;font-weight:600;color:var(--muted);text-decoration:underline;text-underline-offset:4px;padding:8px 0;transition:color 200ms var(--ease-out)}
.cart-body{flex:1;overflow-y:auto;padding:0 24px calc(env(safe-area-inset-bottom,0px) + 32px);overscroll-behavior:contain}
.cart-empty{padding:40px 0;display:flex;flex-direction:column;align-items:flex-start;gap:16px;color:var(--muted)}
.cart-list{list-style:none}
.ci{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:16px;padding:16px 0;box-shadow:0 1px 0 var(--s3);align-items:start}
.ci.fresh{animation:ci-in 350ms var(--ease-out)}
@keyframes ci-in{from{opacity:0;transform:translateY(-8px)}}
.ci-img{width:64px;height:64px;object-fit:cover;border-radius:12px}
.ci-box{width:64px;height:64px;border-radius:12px;background:var(--s3);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:24px;color:var(--silver)}
.ci-brand{font-size:12px;line-height:16px;color:var(--muted)}
.ci-name{font-size:16px;line-height:24px;font-weight:700;color:var(--silver);margin-bottom:8px}
.ci-ctl{display:flex;align-items:center;gap:4px}
.q{width:32px;height:32px;border-radius:9999px;box-shadow:0 0 0 1px var(--s4) inset;font-size:16px;font-weight:700;line-height:1;color:var(--silver);transition:transform 160ms var(--ease-out),background-color 200ms var(--ease-out),color 200ms var(--ease-out)}
.q:active{transform:scale(.92)}
.qn{min-width:32px;text-align:center;font-weight:700;color:var(--silver);font-variant-numeric:tabular-nums}
.rm{margin-left:12px;font-size:14px;color:var(--muted);text-decoration:underline;text-underline-offset:4px;transition:color 200ms var(--ease-out)}
.ci-price{font-weight:700;color:var(--silver);font-variant-numeric:tabular-nums;white-space:nowrap}
.cart-sum{padding-top:16px}
.sum-row{display:flex;justify-content:space-between;padding:4px 0;font-variant-numeric:tabular-nums}
.sum-total{color:var(--silver);font-size:20px;line-height:28px;font-weight:700;padding-top:12px;margin-top:8px;box-shadow:0 -1px 0 var(--s3)}
.sum-hint{font-size:14px;line-height:20px;font-weight:600;color:var(--silver);margin:12px 0 4px;min-height:20px}
.ship-meter{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:12px 0 0}
.ship-meter i{height:4px;border-radius:9999px;background:var(--s3);position:relative;overflow:hidden}
.ship-meter i::after{content:'';position:absolute;inset:0;background:var(--silver);box-shadow:0 0 8px var(--glow-a);transform:scaleX(0);transform-origin:left;transition:transform 400ms var(--ease-out)}
.ship-meter i.on::after{transform:none}
.form{margin:24px 0;display:flex;flex-direction:column;gap:16px}
.fld{display:flex;flex-direction:column;gap:8px}
.fld span,.pay legend{font-size:14px;line-height:20px;font-weight:600;color:var(--silver2)}
.fld input{font:inherit;font-size:16px;line-height:24px;color:var(--silver);background:var(--s2);border:0;box-shadow:0 0 0 1px var(--s4) inset;border-radius:12px;padding:12px 16px;outline:none;transition:box-shadow 200ms var(--ease-out),background-color 200ms var(--ease-out)}
.fld input:focus{box-shadow:0 0 0 1px var(--silver) inset,0 0 16px rgba(214,220,230,.18)}
.fld input::placeholder{color:#5d6168}
.err-msg{display:none;font-style:normal;font-size:14px;line-height:20px;color:#FF8A8A;font-weight:600}
.fld.err input{box-shadow:0 0 0 1px #FF8A8A inset}
.fld.err .err-msg,.pay.err .err-msg{display:block}
.shake{animation:shake 320ms var(--ease-out)}
@keyframes shake{20%{transform:translateX(-4px)}45%{transform:translateX(4px)}70%{transform:translateX(-2px)}}
.pay{border:0}
.pay legend{margin-bottom:8px}
.pay-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pay-opts button{min-height:48px;border-radius:9999px;box-shadow:0 0 0 1px var(--s4) inset;font-size:14px;font-weight:600;color:var(--silver2);transition:transform 160ms var(--ease-out),background-color 200ms var(--ease-out),color 200ms var(--ease-out)}
.pay-opts button:active{transform:scale(.97)}
.pay-opts button[aria-pressed="true"]{background:var(--silver);color:#000;box-shadow:0 0 16px rgba(214,220,230,.3)}
.pay.err .pay-opts button{box-shadow:0 0 0 1px #FF8A8A inset}
.cart-fine{font-size:14px;line-height:20px;color:var(--muted);margin-top:16px}

.modal{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:24px;visibility:hidden;transition:visibility 0s linear 200ms}
.modal.open{visibility:visible;transition:visibility 0s}
.modal-in{width:min(560px,100%);max-height:88dvh;display:flex;flex-direction:column;background:var(--s1);color:var(--silver2);border-radius:24px;box-shadow:0 0 0 1px var(--s4) inset,0 24px 64px rgba(0,0,0,.6);overflow:hidden;
  opacity:0;transform:scale(.96);transition:opacity 150ms ease,transform 200ms var(--ease-out)}
.modal.open .modal-in{opacity:1;transform:none;transition:opacity 250ms var(--ease-out),transform 250ms var(--ease-out)}
.cm-sub{color:var(--muted);font-size:14px;line-height:20px;margin-top:8px}
.cm-count{padding:16px 24px 8px;font-size:14px;line-height:20px;font-weight:700;color:var(--silver);font-variant-numeric:tabular-nums}
.cm-meter{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;padding:0 24px 16px;box-shadow:0 1px 0 var(--s3)}
.cm-meter i{height:8px;border-radius:9999px;background:var(--s3);position:relative;overflow:hidden}
.cm-meter i::after{content:'';position:absolute;inset:0;background:var(--silver);box-shadow:0 0 8px var(--glow-a);transform:scaleX(0);transform-origin:left;transition:transform 200ms var(--ease-out)}
.cm-meter i.on::after{transform:none}
.cm-list{list-style:none;overflow-y:auto;flex:1;padding:0 24px;overscroll-behavior:contain}
.cm-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;box-shadow:0 1px 0 var(--s2)}
.cm-row.has{color:var(--silver);font-weight:700}
.cm-row.has .q[data-d="1"]{background:var(--silver);color:#000}
.cm-foot{padding:16px 24px calc(env(safe-area-inset-bottom,0px) + 16px);box-shadow:0 -1px 0 var(--s3)}

@media (max-width:700px){
  .grab{display:block;position:absolute;top:8px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:9999px;background:var(--s4)}
  .grab-zone{padding-top:32px;touch-action:none;cursor:grab}
  .cart{top:auto;left:0;width:100%;max-height:92dvh;border-radius:24px 24px 0 0;padding-top:0;box-shadow:0 -1px 0 var(--s4);transform:translateY(100%)}
  .cart.open{transform:none}
  .modal{align-items:flex-end;padding:0;transition:visibility 0s linear 280ms}
  .modal-in{max-height:92dvh;border-radius:24px 24px 0 0;opacity:1;transform:translateY(100%);transition:transform 280ms var(--ease-out)}
  .modal.open .modal-in{transform:none;transition:transform 500ms var(--ease-drawer)}
}

/* ---------- toast ---------- */
.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 88px);z-index:80;transform:translate(-50%,calc(100% + 96px));opacity:0;pointer-events:none;background:var(--silver);color:#000;border-radius:9999px;padding:12px 24px;font-size:14px;line-height:20px;font-weight:600;transition:opacity 400ms ease,transform 400ms ease;max-width:calc(100% - 32px);text-align:center;box-shadow:0 0 24px rgba(214,220,230,.3)}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media (min-width:861px){.toast{bottom:32px}}

/* ---------- age gate ---------- */
.gate{position:fixed;inset:0;z-index:100;background:#000;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--pad);transition:opacity 400ms ease,visibility 0s linear 400ms}
.gate.bye{opacity:0;visibility:hidden}
.gate-in{max-width:560px;display:flex;flex-direction:column;align-items:center}
.gate-logo{width:min(360px,80vw);margin-bottom:48px}
.gate-q{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:48px;line-height:1;color:var(--silver);margin-bottom:16px}
.gate-note{color:var(--muted);margin-bottom:32px;max-width:40ch}
.gate-btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.gate-deny{margin-top:24px;font-weight:600;color:var(--silver)}
body.gated,body.lock{overflow:hidden}

/* ---------- hover only where hover exists ---------- */
@media (hover:hover) and (pointer:fine){
  .btn-silver:hover,.island-cart:hover{box-shadow:0 0 0 1px #fff inset,0 0 24px rgba(214,220,230,.45),0 0 64px rgba(190,198,210,.2)}
  .btn-line:hover{border-color:var(--silver2);background:var(--s2)}
  .tlink:hover{color:var(--silver);text-decoration-color:var(--silver)}
  .island-links a:hover{color:var(--silver)}
  .tile:hover,.carton:hover{transform:translateY(-4px);box-shadow:0 0 0 1px rgba(214,220,230,.4) inset,0 0 40px rgba(190,198,210,.14)}
  .tile:hover .t-img img{transform:scale(1.04)}
  .t-add:hover{background:var(--silver);color:#000}
  .t-q:hover{background:#d5d8dd}
  .lnav-list a:hover{color:var(--silver)}
  .more:hover{background:var(--s2)}
  .q:hover{background:var(--silver);color:#000}
  .pay-opts button:hover{background:var(--s2)}
  .pay-opts button[aria-pressed="true"]:hover{background:var(--silver)}
  .x:hover,.rm:hover,.btn-plain:hover{color:var(--silver)}
  .shots{cursor:grab}
}

/* ---------- reduced motion: fewer, gentler ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .ignite{animation:none}
  .h-lede,.h-cta,.h-proof{animation:fade 300ms ease forwards}
  @keyframes fade{to{opacity:1}}
  .js [data-reveal]{transform:none;filter:none;transition:opacity 400ms ease}
  .menu a,.menu.is-open a{transform:none}
  .cart,.cart.open,.modal-in,.modal.open .modal-in{transition:opacity 200ms ease,visibility 0s;transform:none!important}
  .cart{opacity:0}.cart.open{opacity:1}
  .toast,.toast.show{transform:translate(-50%,0)}
  .tile:hover,.carton:hover,.btn:hover{transform:none}
  .t-ctl>*{transform:none!important}
  .shake,.ci.fresh{animation:none}
  .burger span{transition:none}
}

/* =====================================================
   OŻYWIENIE: światło zamiast płaskiej czerni
   ===================================================== */

/* ściana, na której wisi neon: szary poblask od logo, grafit u góry */
.hero{background:
  radial-gradient(ellipse 60% 48% at 50% 40%,rgba(205,211,221,.17),rgba(205,211,221,0) 72%),
  radial-gradient(ellipse 110% 70% at 50% 0%,#26282c 0%,rgba(38,40,44,0) 70%),
  linear-gradient(180deg,#000 0%,#000 60%,rgba(0,0,0,0) 100%)}
.final{background:
  radial-gradient(ellipse 55% 50% at 50% 34%,rgba(205,211,221,.14),rgba(205,211,221,0) 72%),
  linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(28,29,32,.6) 100%)}

/* sekcje jak oświetlone pomieszczenia: światło z góry, każda o krok jaśniejsza lub ciemniejsza */
.tagline-sec{background:radial-gradient(ellipse 70% 80% at 50% 50%,rgba(40,43,48,.5) 0%,rgba(0,0,0,0) 75%)}
#kartony{background:radial-gradient(ellipse 90% 55% at 50% 0%,rgba(46,49,54,.7) 0%,rgba(30,32,36,.3) 45%,rgba(0,0,0,0) 100%)}
#klienci{background:radial-gradient(ellipse 70% 60% at 50% 55%,rgba(44,47,52,.45) 0%,rgba(0,0,0,0) 75%)}
#zamowienie{background:radial-gradient(ellipse 80% 60% at 20% 0%,rgba(46,49,54,.55) 0%,rgba(0,0,0,0) 70%)}
#faq{background:radial-gradient(ellipse 80% 60% at 80% 0%,rgba(46,49,54,.55) 0%,rgba(0,0,0,0) 70%)}
.shop{background:transparent}

/* ziarno: zabija płaski cyfrowy czarny */
.grain{position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.055;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* światło podążające za kursorem, jak latarka po ścianie */
.ambient{position:fixed;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.cursor-light{position:absolute;left:0;top:0;width:900px;height:900px;margin:-450px 0 0 -450px;border-radius:50%;
  background:radial-gradient(circle,rgba(215,221,230,.075) 0%,rgba(215,221,230,.03) 35%,rgba(215,221,230,0) 70%);
  opacity:0;transform:translate3d(-2000px,-2000px,0);transition:opacity 600ms ease;will-change:transform}
.cursor-light.on{opacity:1}
main,.foot{position:relative;z-index:2}
main>section,main>header{position:relative}

/* neonowe rurki między sekcjami: zapalają się raz, gdy do nich dojedziesz */
.tube{position:relative;z-index:3;height:1px;max-width:1344px;margin:0 auto;background:var(--silver);
  box-shadow:0 0 4px rgba(230,232,236,.9),0 0 14px rgba(214,220,230,.55),0 0 40px rgba(190,198,210,.3);
  transform:scaleX(.001);opacity:0}
.tube.on{animation:tube 1.3s var(--ease-out) forwards}
@keyframes tube{0%{transform:scaleX(.001);opacity:0}6%{opacity:.9}9%{opacity:.15}14%{opacity:.8}18%{opacity:.3}24%{opacity:1}100%{transform:scaleX(1);opacity:1}}
@media (max-width:767px){.tube{margin:0 24px}}

/* produkt podświetla własną kartę kolorem smaku */
.tile,.carton{position:relative;isolation:isolate}
.tile::before,.carton::before{content:'';position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;
  background:radial-gradient(130% 65% at 50% 100%,color-mix(in srgb,var(--c) 28%,transparent) 0%,color-mix(in srgb,var(--c) 10%,transparent) 50%,transparent 80%);
  opacity:.75;transition:opacity 400ms var(--ease-out)}
.tile::after{content:'';position:absolute;left:18%;right:18%;top:8px;height:40%;z-index:-1;border-radius:50%;pointer-events:none;
  background:var(--c);filter:blur(40px);opacity:0;transition:opacity 500ms var(--ease-out)}
.tile.in-cart::before{opacity:1}
.t-price{text-shadow:0 0 18px color-mix(in srgb,var(--c) 45%,transparent)}

/* hasło: świecące słowa dostają lekki srebrny poblask w tle sekcji */
.tagline .w.on{text-shadow:0 0 8px rgba(214,220,230,.6),0 0 36px rgba(190,198,210,.32),0 0 80px rgba(170,180,195,.18)}

@media (hover:hover) and (pointer:fine){
  .tile:hover::before,.carton:hover::before{opacity:1}
  .tile:hover::after{opacity:.35}
  .tile:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--c) 45%,#3a3d42) inset,0 18px 48px -18px color-mix(in srgb,var(--c) 55%,transparent)}
  .carton:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--c) 45%,#3a3d42) inset,0 18px 48px -18px color-mix(in srgb,var(--c) 45%,transparent)}
}
@media (prefers-reduced-motion:reduce){
  .tube,.tube.on{animation:none;transform:none;opacity:1}
  .cursor-light{display:none}
}

/* ---------- typografia: Anton jak w logo, Geist do czytania ---------- */
.sec-title,.line-name,.final-q,.gate-q,.cart-title,.c-name,.menu a,.tagline{letter-spacing:.005em;font-kerning:normal}
.t-price,.line-price .num,.c-price .num,.mbar-total{font-variant-numeric:tabular-nums;letter-spacing:.01em}
.h-lede,.final-note,.sec-note{letter-spacing:-.005em}
.chips li,.island-links a,.lnav-list>*,.btn{letter-spacing:-.005em}
.h-proof b{font-variant-numeric:tabular-nums}

/* =====================================================
   LIQUIDY: jedna karta, smaki przewijane albo wybierane z listy
   ===================================================== */
.lq{position:relative;isolation:isolate;background:var(--s1);border-radius:24px;padding:8px;box-shadow:0 0 0 1px var(--s3) inset}
.lq::before{content:'';position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;
  background:radial-gradient(90% 70% at 25% 60%,color-mix(in srgb,var(--c,#c4c9d1) 22%,transparent) 0%,transparent 70%);transition:background 600ms ease}
.lq-tabs{display:flex;gap:4px;padding:8px 8px 16px}
.lq-tab{display:flex;align-items:baseline;gap:8px;min-height:44px;padding:8px 16px;border-radius:9999px;font-size:14px;line-height:20px;font-weight:600;color:var(--muted);box-shadow:0 0 0 1px var(--s4) inset;transition:transform 160ms var(--ease-out),background-color 200ms var(--ease-out),color 200ms var(--ease-out),box-shadow 250ms var(--ease-out)}
.lq-tab small{font-size:12px;opacity:.75;font-variant-numeric:tabular-nums}
.lq-tab:active{transform:scale(.97)}
.lq-tab[aria-selected="true"]{background:var(--silver);color:#000;box-shadow:0 0 18px rgba(214,220,230,.3)}
.lq-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 32px;align-items:stretch}
.lq-panel[hidden]{display:none}
.lq-panel.enter{animation:lq-in 350ms var(--ease-out)}
@keyframes lq-in{from{opacity:0;transform:translateY(8px)}}
.lq-stage{position:relative;border-radius:16px;overflow:hidden;background:var(--s2);align-self:start}
.lq-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;outline-offset:-4px}
.lq-track::-webkit-scrollbar{display:none}
.lq-slide{flex:0 0 100%;aspect-ratio:1;scroll-snap-align:center;scroll-snap-stop:always}
.lq-slide img{width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;user-select:none}
.lq-stage-ui{position:absolute;left:12px;right:12px;bottom:12px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.lq-arrow{pointer-events:auto;width:44px;height:44px;border-radius:9999px;background:rgba(24,24,24,.72);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 0 0 1px var(--s4) inset;color:var(--silver);font-size:18px;transition:transform 160ms var(--ease-out),background-color 200ms var(--ease-out)}
.lq-arrow:active{transform:scale(.92)}
.lq-count{padding:8px 12px;border-radius:9999px;background:rgba(24,24,24,.72);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:12px;line-height:16px;color:var(--muted);font-variant-numeric:tabular-nums}
.lq-count b{color:var(--silver);font-weight:600}
.lq-side{display:flex;flex-direction:column;padding:8px 16px 16px 0;min-width:0}
.lq-desc{color:var(--muted);margin-bottom:24px}
.lq-sel-label{font-size:12px;line-height:16px;color:var(--muted)}
.lq-sel{font-family:var(--display);text-transform:uppercase;font-size:36px;line-height:40px;color:var(--silver);margin-bottom:16px;text-shadow:0 0 18px color-mix(in srgb,var(--c) 40%,transparent);min-height:40px}
.lq-list{display:flex;flex-direction:column;gap:2px;max-height:264px;overflow-y:auto;overscroll-behavior:contain;padding:4px;margin:0 -4px 24px;border-radius:16px;background:rgba(0,0,0,.25);box-shadow:0 0 0 1px var(--s3) inset;scrollbar-width:thin;scrollbar-color:var(--s4) transparent;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 12px,#000 calc(100% - 20px),transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 12px,#000 calc(100% - 20px),transparent 100%)}
.lq-opt{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:8px 12px;border-radius:12px;text-align:left;font-size:14px;line-height:20px;font-weight:600;color:var(--silver2);transition:background-color 200ms var(--ease-out),color 200ms var(--ease-out),transform 160ms var(--ease-out)}
.lq-opt:active{transform:scale(.98)}
.lq-dot{flex:none;width:10px;height:10px;border-radius:9999px;background:var(--c);box-shadow:0 0 8px color-mix(in srgb,var(--c) 70%,transparent)}
.lq-nm{flex:1;min-width:0}
.lq-q{flex:none;font-size:12px;line-height:16px;font-weight:700;color:#000;background:var(--silver);border-radius:9999px;padding:2px 8px;opacity:0;transform:scale(.8);transition:opacity 200ms ease,transform 200ms var(--ease-out)}
.lq-q.has{opacity:1;transform:none}
.lq-opt[aria-selected="true"]{background:var(--s3);color:var(--silver);box-shadow:0 0 0 1px color-mix(in srgb,var(--c) 45%,var(--s4)) inset}
.lq-buy{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;margin-bottom:12px}
.lq-price{font-family:var(--display);font-size:48px;line-height:1;color:var(--silver);text-shadow:0 0 16px rgba(214,220,230,.35);font-variant-numeric:tabular-nums}
.lq-ctl{width:160px}
.lq-ctl .t-add,.lq-ctl .t-step{min-height:48px}
.lq-ctl .t-add{background:var(--silver);color:#000;box-shadow:none;font-size:16px}
.lq-side>.btn-line{align-self:flex-start}
@media (max-width:860px){
  .lq-panel{grid-template-columns:1fr}
  .lq-side{padding:16px 8px 8px}
  .lq-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px 4px 12px}
  .lq-tab{flex-direction:column;align-items:center;justify-content:center;gap:0;padding:8px 4px;text-align:center;font-size:13px;letter-spacing:-.01em}
  .lq-tab span{white-space:nowrap}
  .lq-list{max-height:220px}
  .lq-sel{font-size:30px;line-height:36px}
  .lq-ctl{width:auto;flex:1}
  .lq-price{font-size:36px}
}
@media (hover:hover) and (pointer:fine){
  .lq-opt:hover{background:var(--s2);color:var(--silver)}
  .lq-opt[aria-selected="true"]:hover{background:var(--s3)}
  .lq-arrow:hover{background:var(--s3)}
  .lq-tab:not([aria-selected="true"]):hover{color:var(--silver);background:var(--s2)}
  .lq-ctl .t-add:hover{box-shadow:0 0 24px rgba(214,220,230,.45)}
}
@media (prefers-reduced-motion:reduce){.lq-panel.enter{animation:none}}
.lq-single{padding:8px}
.lq-single .lq-side{padding-top:16px}
.lq-single .lq-sel{margin-bottom:16px}
@media (min-width:861px){.lq-single .lq-list{max-height:none;flex:0 1 auto}}

/* =====================================================
   OPINIE: karty z prawdziwymi wiadomościami
   ===================================================== */
.rv-wall{columns:4 250px;column-gap:16px}
.rv{break-inside:avoid;margin:0 0 16px;display:flex;flex-direction:column;background:var(--s1);border-radius:24px;padding:8px;box-shadow:0 0 0 1px var(--s3) inset;transition:transform 300ms var(--ease-out),box-shadow 300ms var(--ease-out)}
.rv-photo{border-radius:16px;overflow:hidden;background:var(--s2);margin-bottom:8px}
.rv-photo img{width:100%;height:auto;max-height:340px;object-fit:cover;filter:saturate(.92)}
.rv-text{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 12px 4px}
.rv-msg{display:inline-block;max-width:100%;padding:10px 16px;border-radius:18px 18px 18px 6px;background:var(--s3);color:var(--silver);font-size:16px;line-height:24px;font-weight:500;letter-spacing:-.005em}
.rv-lg .rv-msg{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:36px;line-height:40px;letter-spacing:.005em;padding:0;background:none;border-radius:0;text-shadow:0 0 18px rgba(214,220,230,.35)}
.rv-lg .rv-text{padding:24px 16px 8px}
.rv-meta{display:flex;align-items:center;gap:8px;padding:12px 16px 12px;font-size:12px;line-height:16px;color:var(--muted)}
.rv-dot{width:6px;height:6px;border-radius:9999px;background:var(--silver);box-shadow:0 0 8px var(--glow-a)}
@media (max-width:760px){
  .rv-wall{columns:auto;display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 calc(var(--pad)*-1);padding:0 var(--pad) 8px;scroll-padding:0 var(--pad);scrollbar-width:none;overscroll-behavior-x:contain;align-items:flex-start}
  .rv-wall::-webkit-scrollbar{display:none}
  .rv{flex:0 0 78%;scroll-snap-align:start;margin:0}
  .rv-photo img{max-height:340px}
}
@media (hover:hover) and (pointer:fine){
  .rv:hover{transform:translateY(-4px);box-shadow:0 0 0 1px rgba(214,220,230,.35) inset,0 0 40px rgba(190,198,210,.12)}
}
@media (prefers-reduced-motion:reduce){.rv:hover{transform:none}}

/* ---------- ikona Telegrama (oficjalne logo) ---------- */
.tg-ico{display:inline-flex;align-items:center;gap:10px}
.tg-ico::before{content:'';flex:none;width:1.35em;height:1.35em;border-radius:50%;background:url(telegram.webp) center/contain no-repeat}
.btn.tg-ico::before{width:1.5em;height:1.5em;box-shadow:0 0 0 2px rgba(0,0,0,.06)}
.tg-inline.tg-ico{gap:6px;vertical-align:bottom}
.tg-inline.tg-ico::before{width:1.15em;height:1.15em}
.menu a.tg-ico::before{width:.7em;height:.7em}
.menu a.tg-ico{gap:16px}

/* ---------- Kartony zawsze widoczne w nawigacji ---------- */
.island-kart{display:none;align-items:center;min-height:40px;padding:8px 14px;border-radius:9999px;font-size:14px;line-height:20px;font-weight:600;color:var(--silver);text-decoration:none;box-shadow:0 0 0 1px var(--s4) inset;transition:transform 160ms var(--ease-out),background-color 200ms var(--ease-out)}
.island-kart:active{transform:scale(.97)}
@media (max-width:860px){
  .island-kart{display:inline-flex;margin-left:12px}
  .island-cart{margin-left:6px}
}
@media (max-width:374px){.island-kart{padding:8px 10px}.island-logo img{height:20px}}

/* ---------- hurt: widoczny, ale bez krzyku ---------- */
.bulk{position:relative;isolation:isolate;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px 48px;margin-bottom:32px;padding:32px 40px;border-radius:24px;background:var(--s1);
  box-shadow:0 0 0 1px rgba(214,220,230,.5) inset,0 0 0 1px rgba(214,220,230,.08),0 0 32px rgba(190,198,210,.14),inset 0 0 40px rgba(190,198,210,.06)}
.bulk::before{content:'';position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;background:radial-gradient(60% 120% at 0% 50%,rgba(214,220,230,.1),rgba(214,220,230,0) 70%)}
.bulk-nums{display:flex;align-items:baseline;gap:12px;font-family:var(--display);color:var(--silver)}
.bulk-nums span{font-size:48px;line-height:1;text-shadow:0 0 12px rgba(214,220,230,.5),0 0 32px rgba(190,198,210,.28)}
.bulk-nums span:nth-child(2){opacity:.75}
.bulk-nums span:nth-child(3){font-size:72px}
.bulk-nums small{font-family:var(--font);font-size:14px;line-height:20px;color:var(--muted);font-weight:600}
.bulk-title{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:30px;line-height:36px;color:var(--silver);margin-bottom:8px}
.bulk-copy p{color:var(--silver2);max-width:60ch}
@media (max-width:1000px){.bulk{grid-template-columns:1fr;padding:24px}.bulk .btn{justify-self:start}}
@media (max-width:640px){.bulk-nums span{font-size:36px}.bulk-nums span:nth-child(3){font-size:56px}.bulk .btn{width:100%;justify-self:stretch}}
@media (hover:hover) and (pointer:fine){.island-kart:hover{background:var(--s3)}}

/* =====================================================
   PÓŁKI: mniejsze serie jako przewijany rząd obok opisu
   ===================================================== */
.rail{display:grid;grid-template-columns:300px minmax(0,1fr);gap:32px;align-items:start}
.rail-info{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding-top:8px}
.rail-info .line-name{margin-bottom:16px}
.rail-info .line-desc{margin-bottom:24px}
.rail-info .line-price{margin-bottom:16px}
.rail-info .btn-line{margin-bottom:24px}
.rail-nav{display:flex;gap:8px;margin-top:8px}
.rail-arrow{width:48px;height:48px;border-radius:9999px;box-shadow:0 0 0 1px var(--s4) inset;color:var(--silver);font-size:18px;transition:transform 160ms var(--ease-out),background-color 200ms var(--ease-out),opacity 200ms ease}
.rail-arrow:active{transform:scale(.92)}
.rail-arrow:disabled{opacity:.3;cursor:default;transform:none}
.rail-track{display:flex;align-items:flex-start;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding:8px 48px 16px 4px;margin:-8px 0 -16px;scroll-padding:0 4px;
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 64px),transparent 100%);mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 64px),transparent 100%)}
.rail-track::-webkit-scrollbar{display:none}
.rail-track.at-end{-webkit-mask-image:none;mask-image:none}
.rail-track.dragging{scroll-snap-type:none;cursor:grabbing}
.rail-track .tile{flex:0 0 260px;scroll-snap-align:start}
@media (max-width:1000px){
  .rail{grid-template-columns:1fr;gap:24px}
  .rail-nav{display:none}
  .rail-track{margin:0 calc(var(--pad)*-1);padding:4px var(--pad) 8px;scroll-padding:0 var(--pad);-webkit-mask-image:none;mask-image:none}
  .rail-track .tile{flex-basis:220px}
}
@media (max-width:640px){
  .rail-track{gap:12px}
  .rail-track .tile{flex-basis:62%}
  .rail-track .t-desc{display:none}
}
@media (hover:hover) and (pointer:fine){
  .rail-arrow:not(:disabled):hover{background:var(--s3)}
  .rail-track{cursor:grab}
}
.rail-buy{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:24px}
.rail-info .rail-buy .line-price,.rail-info .rail-buy .btn-line{margin-bottom:0}
@media (max-width:1000px){
  .rail-buy{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:0}
  .rail-info .line-desc{margin-bottom:16px}
  .rail-info .line-name{margin-bottom:12px}
}
@media (max-width:640px){.rail-info .line-price .num{font-size:40px}}
