
:root{
  --night:#030817;--night-2:#0A1330;--night-3:#111D45;
  --blue:#003AE6;--blue-hi:#2D62FF;--blue-deep:#0029A8;
  --sky:#8FB0FF;
  --steel:#C3CEDC;--steel-2:#E3E9F1;--paper:#F3F5F9;
  --ink:#07102B;--mute:#56627D;--mute-d:#9AA7C2;
  --line:#DCE2EB;--line-d:rgba(195,206,220,.13);
  --ok:#22C07A;
  --r:18px;--ease:cubic-bezier(.2,.7,.1,1);--ease-io:cubic-bezier(.65,0,.35,1);
  --display:'Archivo',Impact,system-ui,sans-serif;
  --body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'JetBrains Mono',ui-monospace,Consolas,monospace;
  --hdr:72px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:var(--hdr)}
body{font-family:var(--body);color:var(--ink);background:var(--paper);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video{max-width:100%;display:block}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
a{color:inherit}
.wrap{max-width:1280px;margin:0 auto;padding-inline:clamp(18px,4vw,40px)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--sky);outline-offset:3px;border-radius:6px}
::selection{background:var(--blue);color:#fff}

.display{font-family:var(--display);font-stretch:125%;font-weight:900;text-transform:uppercase;letter-spacing:-.015em;line-height:.9}
.h2{font-size:clamp(2.2rem,6vw,4.6rem)}
.h3{font-size:clamp(1.3rem,2.4vw,1.7rem);line-height:1}
.kicker{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:18px}
.kicker::before{content:'';width:8px;height:8px;background:currentColor;border-radius:2px}
.dark .kicker{color:var(--sky)}
.lede{font-size:clamp(1rem,1.6vw,1.15rem);color:var(--mute);max-width:56ch}
.dark{background:var(--night);color:#fff}
.dark .lede{color:var(--mute-d)}
.accent{color:var(--blue)}
.dark .accent{color:var(--sky)}

.outline{-webkit-text-stroke:1.5px var(--sky);color:transparent}

.tbd{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;background:#FFF4D6;color:#6B4E00;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.04em;white-space:nowrap;vertical-align:middle}
.tbd::before{content:'';width:6px;height:6px;border-radius:50%;background:#E0A100}
.dark .tbd{background:rgba(255,196,64,.14);color:#FFD98A}

.onreq{font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.04em;color:var(--mute);white-space:nowrap}
.dark .onreq{color:var(--mute-d)}

.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:15px 28px;border-radius:999px;font-weight:700;font-size:15px;letter-spacing:.01em;text-decoration:none;white-space:nowrap;overflow:hidden;isolation:isolate;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .25s,color .25s}
.btn svg{width:18px;height:18px;transition:transform .35s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn:active{transform:scale(.97)}
.btn-blue{background:var(--blue);color:#fff;box-shadow:0 12px 34px -8px rgba(0,58,230,.7)}
.btn-blue::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s var(--ease)}
.btn-blue:hover{background:var(--blue-hi);transform:translateY(-2px);box-shadow:0 18px 40px -8px rgba(45,98,255,.75)}
.btn-blue:hover::after{transform:translateX(120%)}
.btn-white{background:#fff;color:var(--ink)}
.btn-white:hover{background:var(--steel-2);transform:translateY(-2px)}
.btn-ghost{color:#fff;border:1.5px solid rgba(255,255,255,.22);backdrop-filter:blur(10px)}
.btn-ghost:hover{border-color:#fff}
.btn-line{color:var(--ink);border:1.5px solid var(--line)}
.btn-line:hover{border-color:var(--ink)}
.btn-block{width:100%}
.play{width:30px;height:30px;border-radius:50%;background:#fff;color:var(--night);display:grid;place-items:center;margin-left:-12px}
.play svg{width:12px;height:12px;margin-left:2px}
.btn:hover .play svg{transform:none}

.pv{background:#FFF4D6;color:#5A4200;font-size:12px;font-weight:600;text-align:center;padding:6px 16px}
.announce{background:var(--blue);color:#fff;font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;overflow:hidden;white-space:nowrap}
.announce-track{display:inline-flex;gap:48px;padding:9px 0;animation:tick 32s linear infinite}
.announce-track span{display:inline-flex;align-items:center;gap:48px}
.announce-track span::after{content:'✦';opacity:.6}
@keyframes tick{to{transform:translateX(-50%)}}

.hdr{position:sticky;top:0;z-index:70;height:var(--hdr);transition:background .4s,border-color .4s,backdrop-filter .4s;border-bottom:1px solid transparent;color:#fff}
.hdr.solid,.hdr--solid{background:rgba(3,8,23,.86);backdrop-filter:blur(16px) saturate(1.4);border-bottom-color:var(--line-d)}
.hdr-in{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand img{height:34px;width:auto}
.nav{display:none;gap:clamp(20px,2.6vw,38px)}
.nav a{position:relative;text-decoration:none;font-size:14px;font-weight:600;opacity:.8;transition:opacity .2s}
.nav a::after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--sky);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
.nav a:hover,.nav a[aria-current="page"]{opacity:1}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}
.hdr-r{display:flex;align-items:center;gap:8px}
.icon-btn{position:relative;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;transition:background .2s}
.icon-btn:hover{background:rgba(255,255,255,.1)}
.icon-btn svg{width:22px;height:22px}
.hdr .btn{min-height:44px;padding:10px 20px;font-size:14px;display:none}
.cart-count{position:absolute;top:4px;right:2px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:var(--blue);color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;box-shadow:0 0 0 2px var(--night)}
.cart-count[data-n="0"]{display:none}
.cart-count.bump{animation:bump .5s var(--ease)}
@keyframes bump{40%{transform:scale(1.45)}}
@media(min-width:980px){.nav,.hdr .btn{display:inline-flex}.menu-btn{display:none}}

.anim [data-reveal]{opacity:0;transform:translateY(28px)}
.anim [data-reveal].in{opacity:1;transform:none;transition:opacity .9s var(--ease),transform .9s var(--ease)}

.ft{background:var(--night);color:var(--mute-d);padding-block:clamp(64px,8vw,100px) 40px;font-size:14px;overflow:hidden}
.ft-cta{display:grid;gap:28px;align-items:end;padding-bottom:56px;border-bottom:1px solid var(--line-d);margin-bottom:48px}
@media(min-width:900px){.ft-cta{grid-template-columns:1.4fr 1fr}}
.ft-cta .display{color:#fff;font-size:clamp(2.4rem,6vw,4.8rem)}
.ft-cta form{display:flex;gap:8px;background:var(--night-2);border:1px solid var(--line-d);border-radius:999px;padding:6px}
.ft-cta input{flex:1;min-width:0;background:none;border:0;color:#fff;font:inherit;padding:0 18px}
.ft-cta input::placeholder{color:var(--mute-d)}
.ft-cta .btn{min-height:48px;padding:10px 22px}
.ft-grid{display:grid;gap:40px;grid-template-columns:repeat(2,1fr)}
@media(min-width:900px){.ft-grid{grid-template-columns:1.6fr 1fr 1fr 1fr}}
.ft-grid>div:first-child{grid-column:1/-1}
@media(min-width:900px){.ft-grid>div:first-child{grid-column:auto}}
.ft-brand img{height:52px;width:auto;margin-bottom:18px}
.ft h4,.ft .ft-h{color:#fff;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
.ft ul{list-style:none;display:grid;gap:0}
.ft li{min-height:38px;display:flex;align-items:center}
.ft li a{display:inline-block;padding:10px 0}
.ft a{text-decoration:none;transition:color .2s}.ft a:hover{color:#fff}
.socials{display:flex;gap:10px;margin-top:22px}
.socials a{width:44px;height:44px;border-radius:50%;border:1px solid var(--line-d);display:grid;place-items:center;color:#fff}
.socials a:hover{background:var(--blue);border-color:var(--blue)}
.socials svg{width:18px;height:18px}
.ft-mark{font-family:var(--display);font-stretch:125%;font-weight:900;font-size:clamp(4rem,19vw,17rem);line-height:.8;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1px rgba(195,206,220,.12);margin:56px 0 24px;white-space:nowrap;text-align:center;user-select:none}
.ft-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:12.5px}

.drawer{position:fixed;inset:0;z-index:90;visibility:hidden}
.drawer.open{visibility:visible}
.drawer-bg{position:absolute;inset:0;background:rgba(3,8,23,.6);backdrop-filter:blur(3px);opacity:0;transition:opacity .4s}
.drawer.open .drawer-bg{opacity:1}
.drawer-panel{position:absolute;top:8px;right:8px;bottom:8px;width:min(440px,calc(100% - 16px));background:#fff;border-radius:22px;display:flex;flex-direction:column;overflow:hidden;transform:translateX(calc(100% + 16px));transition:transform .5s var(--ease)}
.drawer.open .drawer-panel{transform:none}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}
.drawer-head h2{font-size:20px}
.drawer-head .icon-btn:hover{background:var(--paper)}
.meter{padding:16px 22px;background:var(--paper);font-size:13.5px;font-weight:600}
.meter-bar{height:6px;border-radius:99px;background:var(--steel-2);margin-top:10px;overflow:hidden}
.meter-bar i{display:block;height:100%;width:0;background:var(--blue);border-radius:99px;transition:width .6s var(--ease)}
.meter.done .meter-bar i{background:var(--ok)}
.lines{flex:1;overflow-y:auto;padding:4px 22px}
.line{display:grid;grid-template-columns:68px 1fr auto;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);align-items:center}
.line img{width:68px;height:68px;border-radius:12px;object-fit:cover}
.line b{display:block;font-size:14.5px;line-height:1.25}
.line small{color:var(--mute);font-size:12.5px}
.line-r{display:grid;gap:6px;justify-items:end}
.rm{font-size:12px;color:var(--mute);text-decoration:underline}
.qty{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:999px;height:36px;width:max-content;margin-top:8px}
.qty button{width:32px;height:100%;display:grid;place-items:center;font-size:17px;border-radius:999px}
.qty input{width:30px;text-align:center;background:none;border:0;font:inherit;font-weight:700;font-size:14px;color:inherit;-moz-appearance:textfield}
.qty input::-webkit-inner-spin-button{-webkit-appearance:none}
.empty{text-align:center;padding:64px 12px;color:var(--mute)}
.empty img{width:120px;margin:0 auto 16px;opacity:.9}
.nudge{margin:14px 0 0;padding:14px;border-radius:14px;border:1.5px dashed var(--steel);display:flex;gap:12px;align-items:center;font-size:13.5px}
.nudge[hidden]{display:none}
.nudge button{margin-left:auto;flex:none;font-weight:700;color:var(--blue);border:1.5px solid var(--blue);border-radius:99px;padding:8px 14px;font-size:13px}
.nudge button:hover{background:var(--blue);color:#fff}
.drawer-foot{padding:18px 22px 22px;border-top:1px solid var(--line);display:grid;gap:12px}
.tot{display:flex;justify-content:space-between;font-weight:800;font-size:17px}
.drawer-foot small{color:var(--mute);text-align:center;font-size:12px}

.mm{position:fixed;inset:0;z-index:95;background:var(--night);color:#fff;padding:18px clamp(18px,4vw,40px);display:flex;flex-direction:column;clip-path:circle(0% at calc(100% - 40px) 40px);transition:clip-path .7s var(--ease-io);visibility:hidden}
.mm.open{clip-path:circle(150% at calc(100% - 40px) 40px);visibility:visible}
.mm-head{display:flex;justify-content:space-between;align-items:center;height:56px;margin-bottom:28px}
.mm-head img{height:30px}
.mm nav a{display:block;padding:12px 0;border-bottom:1px solid var(--line-d);text-decoration:none;font-family:var(--display);font-stretch:125%;font-weight:900;text-transform:uppercase;font-size:clamp(2rem,9vw,3rem);line-height:1}
.mm .btn{margin-top:auto}

.toast{position:fixed;left:50%;bottom:28px;z-index:100;transform:translate(-50%,calc(100% + 60px));background:var(--ink);color:#fff;padding:13px 20px;border-radius:14px;font-weight:600;font-size:14px;box-shadow:0 16px 40px rgba(0,0,0,.3);transition:transform .45s var(--ease);max-width:calc(100% - 32px);text-align:center}
.toast.show{transform:translate(-50%,0)}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
