@font-face{font-family:"Inter";font-weight:400;font-display:swap;src:url("../fonts/inter-latin-400-normal.da03732a27e1.woff2") format("woff2")}
@font-face{font-family:"Inter";font-weight:600;font-display:swap;src:url("../fonts/inter-latin-600-normal.2ede57db1a3a.woff2") format("woff2")}
/* Fontes da marca: Orbitron (parecida com o título do logotipo) e Montserrat (slogan). O logotipo em si é o vetor oficial. */
@font-face{font-family:"Orbitron";font-weight:800;font-display:swap;src:url("../fonts/orbitron-latin-800-normal.962ae6322aec.woff2") format("woff2")}
@font-face{font-family:"Orbitron";font-weight:900;font-display:swap;src:url("../fonts/orbitron-latin-900-normal.803e9313ecef.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-weight:600;font-display:swap;src:url("../fonts/montserrat-latin-600-normal.9e606da1cbeb.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-weight:700;font-display:swap;src:url("../fonts/montserrat-latin-700-normal.1c0792ac34ef.woff2") format("woff2")}

:root{--graf:#0b0d0c;--graf2:#121513;--graf3:#1a1e1b;--linha:rgba(240,238,230,.12);--marfim:#F0EEE6;--mudo:rgba(240,238,230,.66);--neon:#B9FF3B;--neon2:#A8DB45;--erro:#ff7a6b;
  --f-corpo:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--f-titulo:"Orbitron","Arial Black",Impact,sans-serif;--f-slogan:"Montserrat","Inter",system-ui,sans-serif;--max:1180px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--graf);color:var(--marfim);font:400 16px/1.6 var(--f-corpo);-webkit-font-smoothing:antialiased}
img,video{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--neon);outline-offset:3px}
.wrap{width:min(var(--max),100% - 2*clamp(18px,4vw,40px));margin-inline:auto}
.skip{position:absolute;left:-999px;top:8px;background:var(--neon);color:#10140a;padding:10px 16px;z-index:100}
.skip:focus{left:8px}

/* topo */
.top{position:sticky;top:0;z-index:50;background:rgba(11,13,12,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--linha)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:68px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{height:22px;width:auto;display:block}
.nav{display:flex;gap:clamp(12px,2vw,28px);align-items:center}
.nav a{text-decoration:none;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--mudo);padding:6px 0;border-bottom:2px solid transparent;transition:.2s}
.nav a:hover,.nav a.on{color:var(--marfim);border-color:var(--neon)}
.cart{position:relative}
.cart b{position:absolute;right:-14px;top:-8px;min-width:18px;height:18px;border-radius:9px;background:var(--neon);color:#10140a;font:700 11px/18px var(--f-corpo);text-align:center}
.burger{display:none;background:none;border:1px solid var(--linha);color:var(--marfim);padding:8px 12px;font:inherit;cursor:pointer}
@media(max-width:900px){.burger{display:block}.nav{position:absolute;left:0;right:0;top:68px;background:var(--graf);flex-direction:column;align-items:flex-start;padding:18px clamp(18px,4vw,40px) 26px;gap:16px;border-bottom:1px solid var(--linha);display:none}.nav.open{display:flex}}

/* tipografia / blocos */
h1,h2,h3{font-family:var(--f-titulo);text-transform:uppercase;line-height:1.08;letter-spacing:.01em;font-weight:800;overflow-wrap:anywhere}
h1{font-size:clamp(28px,4.6vw,60px)}h2{font-size:clamp(24px,3.2vw,40px)}h3{font-size:clamp(16px,1.6vw,19px);line-height:1.2}
.eb{display:inline-block;font:600 13px/1 var(--f-corpo);letter-spacing:.2em;text-transform:uppercase;color:var(--neon);margin-bottom:16px}
.sec{padding:clamp(56px,9vw,112px) 0}
.sec.alt{background:var(--graf2);border-block:1px solid var(--linha)}
.lead{font-size:clamp(17px,1.5vw,20px);color:var(--mudo);max-width:62ch;margin-top:18px}
.prose{max-width:68ch;color:var(--mudo);white-space:pre-line}
.page-head{padding:clamp(48px,8vw,96px) 0 clamp(16px,3vw,32px);border-bottom:1px solid var(--linha)}
.btn{display:inline-block;padding:15px 30px;background:var(--neon);color:#10140a;text-decoration:none;font:700 13px/1 var(--f-corpo);letter-spacing:.14em;text-transform:uppercase;border:0;cursor:pointer;transition:.2s}
.btn:hover{background:#d2ff7e;transform:translateY(-2px)}
.btn.ghost{background:transparent;color:var(--marfim);border:1px solid var(--linha)}
.btn.ghost:hover{border-color:var(--neon);color:var(--neon)}
.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.grid{display:grid;gap:clamp(14px,2vw,26px)}
.g3{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.g4{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.card{background:var(--graf2);border:1px solid var(--linha);transition:.25s;text-decoration:none;display:block;overflow:hidden}
a.card:hover{border-color:var(--neon);transform:translateY(-3px)}
.card .img{aspect-ratio:4/3;background:var(--graf3);overflow:hidden}
.card .img img,.card .img video{width:100%;height:100%;object-fit:cover}
.card .body{padding:18px 18px 22px}
.card h3{margin-bottom:8px}.muted{color:var(--mudo)}
.price{font:800 20px/1 var(--f-titulo);letter-spacing:.02em}.price s{font:400 14px var(--f-corpo);color:var(--mudo);margin-right:8px}
.tag{display:inline-block;background:var(--neon);color:#10140a;font:700 11px/1 var(--f-corpo);letter-spacing:.12em;text-transform:uppercase;padding:6px 9px;margin-bottom:10px}
.tag.off{background:var(--graf3);color:var(--mudo)}
.empty{padding:48px 0;color:var(--mudo)}

/* formulários */
label{display:block;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--mudo);margin-bottom:6px}
input,textarea,select{width:100%;background:var(--graf2);border:1px solid var(--linha);color:var(--marfim);padding:13px 14px;font:inherit;border-radius:0}
input:focus,textarea:focus,select:focus{border-color:var(--neon);outline:none}
textarea{min-height:150px;resize:vertical}
.field{margin-bottom:18px}.err{color:var(--erro);font-size:14px;margin-top:5px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:560px){.row2{grid-template-columns:1fr}}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.radio{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--linha);margin-bottom:10px;cursor:pointer;text-transform:none;letter-spacing:0;font-size:15px;color:var(--marfim)}
.radio input{width:auto;margin-top:5px}
.check{display:flex;gap:10px;align-items:flex-start;text-transform:none;letter-spacing:0;color:var(--mudo);font-size:14px}.check input{width:auto;margin-top:5px}
.msgs{list-style:none;margin:20px 0}.msgs li{padding:14px 18px;border-left:4px solid var(--neon);background:var(--graf2);margin-bottom:10px}.msgs .error,.msgs .warning{border-color:var(--erro)}

/* tabela carrinho */
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 8px;border-bottom:1px solid var(--linha);vertical-align:middle}th{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mudo);font-weight:600}
.qty{width:76px}.right{text-align:right}
.split{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(24px,4vw,56px);align-items:start}@media(max-width:860px){.split{grid-template-columns:1fr}}
.box{background:var(--graf2);border:1px solid var(--linha);padding:24px}
.sum{display:flex;justify-content:space-between;padding:8px 0}.sum.total{border-top:1px solid var(--linha);margin-top:8px;padding-top:16px;font:800 20px var(--f-titulo)}

/* galeria */
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.filters a{padding:9px 16px;border:1px solid var(--linha);text-decoration:none;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--mudo)}.filters a.on,.filters a:hover{border-color:var(--neon);color:var(--neon)}
.mosaic{columns:3 260px;column-gap:16px}.mosaic figure{break-inside:avoid;margin-bottom:16px;background:var(--graf2);border:1px solid var(--linha);position:relative}
.mosaic img,.mosaic video{width:100%;height:auto;cursor:zoom-in}.mosaic figcaption{padding:10px 12px;font-size:14px;color:var(--mudo)}
.lb{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:200;display:none;align-items:center;justify-content:center;padding:24px}.lb.open{display:flex}.lb img{max-height:90vh;object-fit:contain;cursor:zoom-out}

/* rodapé */
.foot{border-top:1px solid var(--linha);padding:56px 0 34px;background:var(--graf2);margin-top:0}
.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}@media(max-width:760px){.foot .cols{grid-template-columns:1fr}}
.foot h4{font:600 12px var(--f-corpo);letter-spacing:.2em;text-transform:uppercase;color:var(--neon);margin-bottom:14px}.foot a{color:var(--mudo);text-decoration:none;display:block;padding:3px 0}.foot a:hover{color:var(--marfim)}
.foot .marca-rod{width:min(100%,300px);height:auto;display:block}.foot .escudo{height:34px;width:auto;opacity:.55;margin-top:18px;display:block}.foot small{display:block;margin-top:34px;color:var(--mudo);font-size:13px}
.wpp{position:fixed;right:18px;bottom:18px;z-index:60;background:var(--neon);color:#10140a;text-decoration:none;font:700 12px/1 var(--f-corpo);letter-spacing:.12em;text-transform:uppercase;padding:14px 18px;box-shadow:0 8px 28px rgba(0,0,0,.5)}

/* HERO (vídeo guiado pela rolagem) */
.hero{position:relative;height:100vh;height:100svh;overflow:hidden;background:#050605}
.hero .vids video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;background:#050605}
.hero .poster{position:absolute;inset:0;background:#050605 center/cover no-repeat}
.hero .scrim{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,rgba(4,5,4,.66) 0%,rgba(4,5,4,.25) 42%,rgba(4,5,4,0) 64%)}
.hero .chap{position:absolute;left:clamp(24px,5vw,76px);top:clamp(100px,19vh,190px);z-index:5;pointer-events:none;width:min(92vw,1200px)}
.hero .ch{position:absolute;left:0;top:0;visibility:hidden;transition:visibility 0s .7s}.hero .ch.on{visibility:visible;transition:none}
.hero .ch>*{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.hero .ch.on>*{opacity:1;transform:none}.hero .ch.on>*:nth-child(2){transition-delay:.08s}.hero .ch.on>*:nth-child(3){transition-delay:.16s}.hero .ch.on>*:nth-child(4){transition-delay:.28s}
.hero .bar{display:block;width:36px;height:4px;background:var(--neon);margin-bottom:18px}
.hero .ch .eb{margin-bottom:clamp(12px,2vw,24px)}
.hero .ch h2{font-size:clamp(40px,7vw,108px);line-height:.94;text-shadow:0 2px 40px rgba(0,0,0,.55)}
.hero .ch p{margin-top:clamp(12px,2vw,24px);font-size:clamp(15px,1.6vw,22px);color:rgba(244,242,234,.85);text-shadow:0 1px 20px rgba(0,0,0,.7)}
.hero .rail{position:absolute;right:clamp(14px,3vw,40px);top:50%;transform:translateY(-50%);height:44vh;width:2px;background:rgba(240,238,230,.16);z-index:5}
.hero .rail i{position:absolute;left:0;top:0;width:100%;height:0;background:linear-gradient(var(--neon2),var(--neon))}
.hero .rail b{position:absolute;left:50%;width:9px;height:9px;border-radius:50%;transform:translate(-50%,-50%);background:#1a1c1b;border:1px solid rgba(240,238,230,.4);transition:.4s}.hero .rail b.on{background:var(--neon);border-color:var(--neon)}
.hero .rail em{position:absolute;left:50%;width:7px;height:16px;border-radius:4px 4px 2px 2px;transform:translate(-50%,-50%);background:linear-gradient(#d1f69d,#729c35)}
.hero .hint{position:absolute;left:50%;bottom:30px;transform:translateX(-50%);z-index:5;text-align:center;font-size:11px;letter-spacing:.42em;text-transform:uppercase;color:rgba(240,238,230,.75);transition:opacity .5s;pointer-events:none;width:max-content;max-width:90vw}
.hero .hint span{display:block;margin:12px auto 0;width:1px;height:44px;background:linear-gradient(var(--neon),transparent);animation:drip 1.6s infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.hero .final{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:0 clamp(24px,5vw,76px);opacity:0;pointer-events:none;background:linear-gradient(90deg,rgba(4,5,4,.9) 0%,rgba(4,5,4,.62) 48%,rgba(4,5,4,.15) 100%)}
.hero .final .marca{width:min(calc(100vw - 76px),820px);height:auto;display:block;filter:drop-shadow(0 6px 30px rgba(0,0,0,.6))}
.hero .final p{margin-top:clamp(20px,3vw,34px);font-size:clamp(15px,1.6vw,22px);color:rgba(244,242,234,.9);max-width:46ch}
.hero .final .btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:clamp(22px,3vw,38px)}
.hero.live .final.on{pointer-events:auto}.hero .final .btn{pointer-events:auto}
.hero-static .vids,.hero-static .rail,.hero-static .hint,.hero-static .chap{display:none}.hero-static .final{opacity:1;pointer-events:auto}
body.lock{overflow:hidden;overscroll-behavior:none}
.hero-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:6;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:rgba(240,238,230,.7);transition:opacity .5s}
@media(max-width:640px){.hero .rail{height:32vh}.hero .ch h2{font-size:clamp(38px,12vw,60px)}}
/* celular em pé: mostra o vídeo inteiro (16:9) logo abaixo do topo e põe o texto embaixo dele */
@media(max-width:820px) and (orientation:portrait){
.hero{--vt:max(76px,calc((100svh - 56.25vw - 150px)/2))}
.hero .vids video{inset:auto;left:0;top:var(--vt);width:100%;height:56.25vw;object-fit:contain}
.hero .poster{background-size:100% auto;background-position:center var(--vt)}
.hero .scrim{display:none}
.hero .chap{top:calc(var(--vt) + 56.25vw + 30px)}
.hero .ch h2{font-size:clamp(24px,8vw,40px)}
}
@media(prefers-reduced-motion:reduce){.hero .ch>*{transition:none}html{scroll-behavior:auto}}
.eventos li{list-style:none;display:grid;grid-template-columns:110px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid var(--linha)}
.eventos .data{font:800 20px/1 var(--f-titulo);color:var(--neon);text-transform:uppercase}
.map iframe{width:100%;height:380px;border:0;filter:grayscale(.6) contrast(1.05)}
/* home: topo sobreposto ao hero */
body.home .top{position:fixed;left:0;right:0;background:linear-gradient(rgba(5,6,5,.78),rgba(5,6,5,0));border-bottom-color:transparent;backdrop-filter:none;transition:background .3s}
body.home.scrolled .top{background:rgba(11,13,12,.92);border-bottom-color:var(--linha);backdrop-filter:blur(12px)}
@media(max-width:900px){body.home .nav{background:var(--graf)}}
.hero-chips{display:flex;gap:10px;flex-wrap:wrap}
.numbers{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin-top:36px}
.numbers div{border-left:3px solid var(--neon);padding-left:16px}.numbers b{display:block;font:800 24px/1 var(--f-titulo);text-transform:uppercase}

.page-head.has-cover{position:relative;background:linear-gradient(180deg,rgba(10,12,11,.55),rgba(10,12,11,.94)),var(--cover) center/cover no-repeat;padding:clamp(90px,16vw,190px) 0 clamp(24px,4vw,44px)}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* vídeos de TikTok / Instagram / YouTube: o player ocupa a largura disponível e mantém a proporção */
.mosaic .embed{position:relative;width:100%;margin:0 auto;background:#0b0d0c;overflow:hidden}
.embed img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.embed .play{position:absolute;inset:0;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:linear-gradient(160deg,#101412,#050605);border:0;color:var(--marfim);cursor:pointer;font:700 15px var(--f-corpo);letter-spacing:.1em;text-transform:uppercase}
.embed img+.play{background:transparent}
.embed .play i{width:64px;height:64px;border-radius:50%;background:var(--neon);position:relative;box-shadow:0 0 30px rgba(185,255,59,.35)}
.embed .play i:after{content:"";position:absolute;left:25px;top:19px;border-left:19px solid #10140a;border-top:13px solid transparent;border-bottom:13px solid transparent}
.embed .play span{display:flex;flex-direction:column;gap:4px;align-items:center}.embed .play small{font-weight:400;color:var(--mudo);letter-spacing:.14em;font-size:12px}
.embed .play:hover i,.embed .play:focus-visible i{transform:scale(1.07)}

/* contas */
.err{color:#ff8a6b;font-size:14px;margin-top:4px}
.field input[type=password],.field input[type=email]{width:100%}
