/* Passe de Batalha - Reino de Gelo (pagina propria) */
@property --ang{syntax:'<angle>';inherits:false;initial-value:0deg}
:root{--bg:#040c18;--bg2:#071a2e;--navy:#0b2644;--card:#0a1f38cc;--linha:#7fd6ff33;--gelo:#7fd6ff;--gelo2:#bfeaff;--ouro:#f5cf64;--ouro2:#ffb02e;--vio:#b66bff;--txt:#e6f3ff;--mudo:#9db8d0;font-family:Georgia,"Times New Roman",serif;color-scheme:dark}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:74px}
body{background:var(--bg);color:var(--txt);line-height:1.55;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
#neve{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:50}

/* botoes */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 14px Georgia,serif;letter-spacing:.04em;padding:10px 18px;border-radius:6px;border:1.5px solid transparent;cursor:pointer;color:#fff;transition:transform .2s,box-shadow .25s,filter .2s;position:relative;overflow:hidden}
.btn::after{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(100deg,transparent,#fff7,transparent);transform:skewX(-20deg);transition:left .6s}
.btn:hover{transform:translateY(-2px)}.btn:hover::after{left:130%}
.btn.gelo{background:linear-gradient(180deg,#2f8be0,#124a8f);border-color:#8fd2ff;box-shadow:0 4px 16px #1c6cc055,inset 0 1px 0 #ffffff55}
.btn.ouro{background:linear-gradient(180deg,#f5cf64,#b97f1b);border-color:#ffe39a;color:#2a1a02;box-shadow:0 4px 16px #d79a2455,inset 0 1px 0 #fff8}
.btn.contorno{background:#061426b0;border-color:var(--gelo);color:var(--gelo2)}
.btn.grande{font-size:16px;padding:14px 26px}
.btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--ouro);outline-offset:3px}

/* topo */
.topo{position:fixed;top:0;left:0;right:0;z-index:60;display:flex;align-items:center;gap:22px;padding:10px clamp(14px,3vw,36px);background:linear-gradient(180deg,#040c18ee,#040c1800);transition:background .3s,box-shadow .3s}
.topo.solido{background:#040c18f2;box-shadow:0 6px 24px #000a;backdrop-filter:blur(8px)}
.marca img{height:42px;width:auto}
.menu{display:flex;gap:6px;margin:0 auto}
.menu a{padding:8px 13px;border-radius:6px;font-size:14px;color:var(--gelo2);letter-spacing:.03em;position:relative}
.menu a::after{content:"";position:absolute;left:50%;bottom:2px;width:0;height:2px;background:linear-gradient(90deg,var(--gelo),var(--ouro));transition:.3s;transform:translateX(-50%)}
.menu a:hover::after{width:70%}
.acoes{display:flex;gap:8px}

/* selo em breve (neon com luz correndo na borda) */
.breve{display:inline-block;color:#fff1c2;font:700 11px Georgia,serif;letter-spacing:.2em;text-transform:uppercase;padding:5px 12px;border:2px solid transparent;border-radius:4px;text-shadow:0 0 3px #ffe7a6,0 0 9px #ffb02e,0 0 16px #ff9a00;background:linear-gradient(#1a1004,#1a1004) padding-box,conic-gradient(from var(--ang),#ff9a00 0deg,#fff6c8 26deg,#ffb02e 60deg,#ff9a0055 130deg,#ff9a0033 250deg,#ff9a0055 330deg,#ff9a00 360deg) border-box;box-shadow:0 0 8px #ffb02e99,0 0 20px #ff9a0055;animation:volta 3.2s linear infinite,pulsa 2.8s ease-in-out infinite}
.breve.grande{font-size:14px;padding:8px 20px}
@keyframes volta{to{--ang:360deg}}
@keyframes pulsa{0%,100%{box-shadow:0 0 8px #ffb02ebb,0 0 22px #ff9a0077}50%{box-shadow:0 0 4px #ffb02e88,0 0 12px #ff9a0044}}

/* hero */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:110px clamp(16px,5vw,70px) 70px;overflow:hidden}
.hero-fundo{position:absolute;inset:-4%;background:#061a30 url('/assets/elfaria-option-a/r01/assets/banners/battle-pass-rewards.webp') 18% 40%/cover no-repeat;transform:translate3d(0,var(--py,0px),0) scale(1.06);will-change:transform}
.hero-vinheta{position:absolute;inset:0;background:radial-gradient(120% 90% at 25% 40%,#040c1800 0%,#040c18cc 70%,#040c18 100%),linear-gradient(180deg,#040c1899,#040c1800 30%,#040c18 100%)}
.hero-miolo{position:relative;z-index:2;width:100%;max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:36px;align-items:center}
.eyebrow{display:flex;gap:14px;align-items:center;margin-bottom:14px;color:var(--gelo2);letter-spacing:.3em;text-transform:uppercase;font-size:13px}
h1{display:flex;flex-direction:column;gap:2px;margin-bottom:18px}
.neon{font:700 clamp(28px,4.6vw,56px)/1.1 Georgia,serif;letter-spacing:.14em;text-transform:uppercase;color:#f4fbff;animation:abre 1.5s cubic-bezier(.2,.7,.2,1) both,vegas 5.5s 1.5s ease-in-out infinite}
@keyframes abre{from{letter-spacing:.6em;opacity:0}to{letter-spacing:.14em;opacity:1}}
@keyframes vegas{0%,100%{opacity:1;text-shadow:0 0 2px #fff,0 0 8px #4fc3ff,0 0 18px #4fc3ff,0 0 38px #2b8cff,0 3px 4px #000}38%{opacity:.9}50%{opacity:.75;text-shadow:0 0 2px #fff,0 0 6px #b66bff,0 0 14px #b66bff,0 0 30px #8a3cff,0 3px 4px #000}62%{opacity:.96}80%{opacity:1;text-shadow:0 0 2px #fff,0 0 9px #ff9ad8,0 0 20px #ff6ec7,0 0 40px #d63cff,0 3px 4px #000}}
.gelo-caixa{display:block;position:relative;isolation:isolate;font:700 clamp(46px,8.6vw,118px)/1 Georgia,serif;text-transform:uppercase;letter-spacing:.03em}
.gelo-titulo{display:block;position:relative;z-index:1;font:inherit;letter-spacing:inherit;background:linear-gradient(105deg,#58b8f5 0%,#bfeaff 22%,#fff 40%,#8fd8ff 55%,#3fa6ec 75%,#bfeaff 100%) 0 0/300% 100% no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;clip-path:inset(-40px 100% -40px -20px);animation:congela 2.6s .5s cubic-bezier(.25,.6,.2,1) both,brilho-gelo 5s 3.2s ease-in-out infinite alternate}
.gelo-caixa::before{content:attr(data-texto);position:absolute;left:0;top:0;z-index:0;color:#4fc3ff;text-shadow:0 5px 0 #000;filter:blur(14px);opacity:.55;animation:pulsa-halo 3.4s 3.2s ease-in-out infinite}
.gelo-caixa::after{content:attr(data-texto);position:absolute;left:0;top:0;z-index:0;color:#000;text-shadow:0 5px 0 #000;opacity:0;animation:aparece-sombra 1s 2.2s forwards}
@keyframes aparece-sombra{to{opacity:1}}
@keyframes pulsa-halo{0%,100%{opacity:.4}50%{opacity:.85}}
@keyframes congela{0%{clip-path:inset(-40px 100% -40px -20px);opacity:.2}100%{clip-path:inset(-40px -20px -40px -20px);opacity:1}}
@keyframes brilho-gelo{from{background-position:0 0}to{background-position:100% 0}}
.lead{font-size:clamp(16px,1.5vw,19px);color:#d6e9f8;max-width:640px;margin-bottom:26px;text-shadow:0 2px 6px #000}
.lead strong{color:var(--ouro)}
.hero-botoes{display:flex;gap:12px;flex-wrap:wrap}
.numeros{display:flex;gap:clamp(14px,3vw,34px);margin-top:34px;flex-wrap:wrap}
.numeros li{display:flex;flex-direction:column;border-left:2px solid var(--gelo);padding-left:12px}
.numeros b{font:700 clamp(26px,3vw,38px)/1 Georgia,serif;color:var(--gelo2);text-shadow:0 0 14px #4fc3ff88}
.numeros span{font-size:12px;color:var(--mudo);letter-spacing:.08em;text-transform:uppercase}

/* vitrine do hero */
.hero-vitrine{position:relative;height:min(560px,62vh)}
.vit{position:absolute;margin:0;border-radius:12px;padding:8px;background:linear-gradient(160deg,#10365fcc,#06142acc);border:1.5px solid #8fd2ff88;box-shadow:0 18px 40px #000a,0 0 28px #3fa6ec44;animation:flutua 6s ease-in-out infinite}
.vit img{border-radius:7px;width:100%}
.vit figcaption{text-align:center;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gelo2);padding-top:6px}
.v1{left:0;top:0;width:43%;transform:rotate(-4deg)}
.v2{right:0;top:3%;width:43%;transform:rotate(3deg);animation-delay:-2s}
.v3{left:24%;bottom:2%;width:52%;transform:rotate(-1deg);animation-delay:-4s}
@keyframes flutua{0%,100%{translate:0 0}50%{translate:0 -12px}}
.role{position:absolute;bottom:20px;left:50%;width:26px;height:44px;border:2px solid var(--gelo);border-radius:14px;transform:translateX(-50%);z-index:3}
.role i{position:absolute;left:50%;top:7px;width:4px;height:8px;border-radius:2px;background:var(--gelo);transform:translateX(-50%);animation:rola 1.8s infinite}
@keyframes rola{0%{opacity:1;top:7px}100%{opacity:0;top:24px}}

/* secoes */
.secao{position:relative;padding:clamp(60px,9vw,110px) clamp(16px,5vw,70px);max-width:1380px;margin:0 auto}
.secao.escura{max-width:none;background:linear-gradient(180deg,var(--bg),var(--bg2) 12%,var(--bg2) 88%,var(--bg))}
.secao.escura>*{max-width:1280px;margin-left:auto;margin-right:auto}
.secao-cab{text-align:center;margin-bottom:44px}
.sobre{color:var(--ouro);letter-spacing:.34em;text-transform:uppercase;font-size:12px;margin-bottom:8px}
h2{font:700 clamp(30px,4.4vw,52px)/1.1 Georgia,serif;color:#fff;text-shadow:0 0 22px #4fc3ff55}
.sub{color:var(--mudo);margin-top:10px}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--d,0)*120ms)}
.reveal.visto{opacity:1;transform:none}

/* passos */
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;position:relative}
.passos::before{content:"";position:absolute;top:36px;left:16%;right:16%;height:3px;background:linear-gradient(90deg,var(--gelo),var(--ouro),var(--gelo));transform-origin:left;transform:scaleX(var(--linha,0));transition:transform 1.6s .3s cubic-bezier(.3,.6,.2,1);opacity:.6;box-shadow:0 0 12px var(--gelo)}
.passos.visto::before{--linha:1}
.passo{background:var(--card);border:1px solid var(--linha);border-radius:14px;padding:30px 24px 26px;text-align:center;position:relative}
.orbe{display:grid;place-items:center;width:72px;height:72px;margin:-62px auto 14px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#7fd6ff,#1c5da8 70%);border:3px solid #0a1f38;box-shadow:0 0 0 2px var(--gelo),0 0 26px #4fc3ffaa;position:relative;z-index:1}
.orbe svg{width:34px;height:34px;fill:#fff}
.passo h3{font-size:21px;color:#fff;margin-bottom:8px}
.passo p{color:#c2d7e8}
.missoes{margin-top:14px;display:grid;gap:8px;text-align:left}
.missoes li{background:#0a2a4c;border:1px solid var(--linha);border-radius:8px;padding:8px 12px;font-size:14px}
.missoes b{color:var(--ouro);margin-right:6px}

/* progressao */
.painel-prog{background:linear-gradient(160deg,#0c2c52cc,#061630e6);border:1px solid #8fd2ff55;border-radius:18px;padding:clamp(16px,3vw,32px);box-shadow:0 24px 60px #000a,0 0 40px #2b8cff22}
.controles{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-bottom:22px}
.troca{position:relative;display:inline-flex;background:#061a30;border:1.5px solid var(--linha);border-radius:10px;padding:4px}
.troca button{position:relative;z-index:1;background:none;border:0;color:var(--gelo2);font:700 14px Georgia,serif;padding:9px 18px;cursor:pointer;transition:color .3s}
.troca button.ativo{color:#fff}
.troca .indicador{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:7px;background:linear-gradient(180deg,#2f8be0,#124a8f);box-shadow:0 0 14px #2b8cffaa;transition:transform .4s cubic-bezier(.3,.7,.2,1),background .4s}
.troca.premium .indicador{transform:translateX(100%);background:linear-gradient(180deg,#f5cf64,#b97f1b)}
.troca.premium button.ativo{color:#2a1a02}
.deslize{flex:1;min-width:220px;display:grid;gap:6px;font-size:14px;color:var(--gelo2)}
.deslize b{color:var(--ouro);font-size:18px}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:8px;border-radius:6px;background:linear-gradient(90deg,var(--gelo) var(--p,0%),#0a2a4c var(--p,0%));outline-offset:6px;cursor:pointer}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,var(--gelo));border:2px solid #fff;box-shadow:0 0 14px var(--gelo)}
input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--gelo);border:2px solid #fff;box-shadow:0 0 14px var(--gelo)}
.barra{position:relative;margin:6px 0 34px}
.barra-fundo{height:22px;border-radius:12px;background:#04101f;border:1.5px solid var(--linha);overflow:hidden;box-shadow:inset 0 3px 8px #000}
.barra-cheia{position:relative;height:100%;width:0;border-radius:12px;background:linear-gradient(90deg,#1c6cc0,#4fc3ff 60%,#bfeaff);box-shadow:0 0 20px #4fc3ff;transition:width .7s cubic-bezier(.3,.7,.2,1);overflow:hidden}
.barra-cheia::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,#ffffff00 0 14px,#ffffff30 14px 28px);animation:corre 1.2s linear infinite}
@keyframes corre{to{background-position:56px 0}}
.barra-cheia .ponta{position:absolute;right:0;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:radial-gradient(circle,#fff 0 25%,#bfeaff88 45%,transparent 70%);animation:pisca .9s ease-in-out infinite alternate}
@keyframes pisca{to{transform:scale(1.5);opacity:.6}}
.marcos li{position:absolute;top:30px;left:var(--p);transform:translateX(-50%);font-size:12px;color:var(--ouro);background:#0a1f38;border:1px solid var(--ouro);border-radius:10px;padding:1px 8px}
.contadores{display:flex;gap:clamp(18px,4vw,50px);justify-content:center;margin-bottom:26px;flex-wrap:wrap}
.contadores li{text-align:center}
.contadores b{display:block;font:700 clamp(30px,4vw,46px)/1 Georgia,serif;color:var(--gelo2);text-shadow:0 0 16px #4fc3ff88;transition:transform .3s}
.contadores b.pulo{transform:scale(1.25);color:#fff}
.contadores span{font-size:12px;color:var(--mudo);letter-spacing:.1em;text-transform:uppercase}
.trilha-grade{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
.dias{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
.dia{position:relative;aspect-ratio:1;border-radius:12px;background:#07182e;border:1.5px solid #17406b;display:grid;place-items:center;cursor:pointer;padding:6px;transition:transform .25s,border-color .4s,box-shadow .4s,background .4s;overflow:hidden;isolation:isolate}
.dia:hover{transform:translateY(-3px) scale(1.04)}
.dia .n{position:absolute;top:4px;left:7px;font-size:12px;color:var(--mudo);font-weight:700;z-index:2}
.dia img{width:72%;max-height:72%;object-fit:contain;image-rendering:pixelated;filter:grayscale(1) brightness(.5);transition:filter .5s,transform .5s;z-index:1}
.dia.mostra-print img{image-rendering:auto}
.dia .vazio{color:#27507c;font-size:22px}
.dia .extra{position:absolute;bottom:4px;right:4px;width:30%;height:auto!important;max-height:none;filter:none;opacity:.55;z-index:2;transition:opacity .4s}
.dia .cadeado{position:absolute;top:4px;right:6px;font-size:12px;opacity:.7;z-index:2}
.dia.marco{border-color:#c79a3a99}
.dia.marco .n{color:var(--ouro)}
.dia.aceso{background:radial-gradient(circle at 50% 40%,#16508f,#0a2a4c 75%);border-color:var(--gelo);box-shadow:0 0 18px #4fc3ff88,inset 0 0 16px #4fc3ff44}
.dia.aceso img{filter:none;transform:scale(1.04)}
.dia.aceso .extra{opacity:1}
.dia.aceso .cadeado{display:none}
.dia.aceso.marco{border-color:var(--ouro);box-shadow:0 0 22px #f5cf6499,inset 0 0 16px #f5cf6455}
.dia.aceso::after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(100deg,transparent,#ffffff66,transparent);transform:skewX(-20deg);z-index:3;pointer-events:none}
.dia.novo{animation:estoura .9s cubic-bezier(.2,.8,.3,1.3)}
.dia.novo::after{animation:varre .9s .1s}
@keyframes estoura{0%{transform:scale(.7)}45%{transform:scale(1.22);box-shadow:0 0 40px #fff}100%{transform:scale(1)}}
@keyframes varre{to{left:140%}}
.dia.sel{outline:2px solid var(--ouro);outline-offset:2px}
.detalhe{position:sticky;top:90px;background:#06162cf0;border:1.5px solid var(--linha);border-radius:14px;padding:18px;min-height:300px;text-align:center}
.detalhe .grande-img{height:132px;display:grid;place-items:center;margin-bottom:8px}
.detalhe .grande-img img{max-height:130px;width:auto;image-rendering:pixelated;animation:flutua 4s ease-in-out infinite}
.detalhe .grande-img img.print{image-rendering:auto;border-radius:8px}
.detalhe h4{font-size:12px;letter-spacing:.3em;color:var(--ouro);text-transform:uppercase;margin-bottom:6px}
.detalhe .linha{font-size:14px;color:#cfe3f4;margin-top:8px;text-align:left;padding:8px 10px;border-radius:8px;background:#0a2442}
.detalhe .linha b{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gelo)}
.detalhe .linha.pre b{color:var(--ouro)}
.detalhe .status{margin-top:10px;font-size:13px;color:var(--mudo)}
.detalhe .status.ok{color:#8dffb4}

/* destaques */
.vitrine-grade{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.carta{position:relative;grid-column:span 1;background:linear-gradient(165deg,#0f3560cc,#06142ae6);border:1.5px solid var(--linha);border-radius:18px;padding:22px;overflow:hidden;transform-style:preserve-3d;transition:border-color .3s,box-shadow .3s}
.carta.grande{grid-row:span 2}
.carta.meia{grid-column:span 2}
.carta.larga{grid-column:span 3}
.carta:hover{border-color:var(--gelo);box-shadow:0 20px 50px #000a,0 0 34px #4fc3ff44}
.carta::before{content:"";position:absolute;inset:-1px;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),#7fd6ff2e,transparent 45%);opacity:0;transition:opacity .3s;pointer-events:none}
.carta:hover::before{opacity:1}
.etiqueta{display:inline-block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#2a1a02;background:linear-gradient(180deg,#f5cf64,#c48a22);padding:3px 11px;border-radius:12px;margin-bottom:14px;font-weight:700}
.carta h3{font-size:24px;color:#fff;margin:12px 0 6px}
.carta p{color:#c2d7e8;font-size:15px}
.carta p b{color:var(--gelo2)}
.visual{height:170px;display:grid;place-items:center;margin-bottom:6px}
.visual img{max-height:160px;width:auto;border-radius:8px;animation:flutua 5s ease-in-out infinite}
.visual.pixel img{image-rendering:pixelated;height:140px}
.visual.duplo{display:flex;gap:6px;justify-content:center;align-items:center}
.visual.duplo img{height:150px;animation-delay:0s}.visual.duplo img+img{animation-delay:-2.5s}
.troca-visual{position:relative;height:300px;margin-bottom:6px}
.troca-visual img{position:absolute;left:50%;top:50%;height:280px;width:auto;max-width:90%;border-radius:12px;transform:translate(-50%,-46%) scale(.86);opacity:0;transition:opacity .6s,transform .6s;filter:drop-shadow(0 10px 22px #000b);border:2px solid #8fd2ff66}
.troca-visual img.ativo{opacity:1;transform:translate(-50%,-50%) scale(1)}
.seletor{display:flex;gap:8px;margin-top:14px}
.seletor button{flex:1;background:#06182e;border:1.5px solid var(--linha);color:var(--gelo2);font:700 14px Georgia,serif;padding:9px;border-radius:8px;cursor:pointer;transition:.3s}
.seletor button.ativo{background:linear-gradient(180deg,#2f8be0,#124a8f);border-color:#8fd2ff;color:#fff;box-shadow:0 0 14px #2b8cff88}
.faixa-decor{display:flex;gap:14px;overflow:hidden;margin-top:16px;mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.faixa-decor .trilho{display:flex;gap:14px;animation:desliza 40s linear infinite;flex:none}
.faixa-decor li{flex:none;width:84px;height:84px;display:grid;place-items:center;background:#07182e;border:1px solid var(--linha);border-radius:12px}
.faixa-decor img{max-width:68px;max-height:68px;image-rendering:pixelated}
@keyframes desliza{to{transform:translateX(-50%)}}

/* planos */
.planos{display:grid;grid-template-columns:1fr 1.15fr;gap:26px;align-items:stretch}
.plano{position:relative;background:var(--card);border:1.5px solid var(--linha);border-radius:18px;padding:30px 28px;display:flex;flex-direction:column;gap:12px}
.plano h3{font-size:26px;color:#fff}
.preco{font:700 54px/1 Georgia,serif;color:var(--gelo2)}.preco small{font-size:18px;color:var(--mudo)}
.plano li{padding-left:24px;position:relative;color:#cfe3f4;margin:6px 0}
.plano li::before{content:"✦";position:absolute;left:0;color:var(--gelo)}
.plano.premium{border:2px solid transparent;background:linear-gradient(#0a2142,#06142a) padding-box,conic-gradient(from var(--ang),#f5cf64,#7fd6ff,#b66bff,#f5cf64) border-box;animation:volta 7s linear infinite;box-shadow:0 0 36px #f5cf6422}
.plano.premium .preco{color:var(--ouro);text-shadow:0 0 20px #f5cf6488}
.plano.premium li::before{color:var(--ouro)}
.devolve{color:#8dffb4;font-weight:700}
.fita{position:absolute;top:-13px;right:22px;background:linear-gradient(180deg,#f5cf64,#c48a22);color:#2a1a02;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:4px 14px;border-radius:12px}
.plano .breve{align-self:flex-start;margin-top:auto}

/* faq */
.faq{max-width:860px;margin:0 auto;display:grid;gap:10px}
.faq details{background:var(--card);border:1.5px solid var(--linha);border-radius:12px;overflow:hidden;transition:border-color .3s}
.faq details[open]{border-color:var(--gelo)}
.faq summary{cursor:pointer;list-style:none;padding:16px 50px 16px 20px;font-weight:700;font-size:17px;position:relative;color:#fff}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:26px;color:var(--gelo);transition:transform .3s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{padding:0 20px 18px;color:#c2d7e8;animation:abre-faq .4s ease}
@keyframes abre-faq{from{opacity:0;transform:translateY(-6px)}}
.aviso{text-align:center;color:var(--mudo);font-size:13px;margin-top:22px}

/* final */
.final{position:relative;padding:clamp(70px,10vw,130px) 16px;text-align:center;background:radial-gradient(70% 90% at 50% 100%,#1d5cb055,transparent),var(--bg)}
.final-miolo{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:700px;margin:0 auto}
.final p{color:#c2d7e8;font-size:18px}
.rodape{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:20px clamp(16px,5vw,70px);border-top:1px solid var(--linha);color:var(--mudo);font-size:14px}
.rodape a{color:var(--gelo2)}.rodape a:hover{color:#fff}

/* responsivo */
@media(max-width:1000px){
  .menu{display:none}.topo{justify-content:space-between}
  .hero-miolo{grid-template-columns:1fr}.hero-vitrine{height:360px;order:-1;margin-top:10px}
  .passos{grid-template-columns:1fr;gap:56px}.passos::before{display:none}
  .trilha-grade{grid-template-columns:1fr}.detalhe{position:static;min-height:0}
  .vitrine-grade{grid-template-columns:1fr 1fr}.carta.grande{grid-column:span 2;grid-row:auto}.carta.meia,.carta.larga{grid-column:span 2}
  .planos{grid-template-columns:1fr}
}
@media(max-width:640px){
  .acoes .btn:first-child{display:none}.marca img{height:34px}
  .dias{grid-template-columns:repeat(4,1fr);gap:8px}
  .hero{padding-top:90px}.hero-vitrine{height:300px}
  .vitrine-grade{grid-template-columns:1fr}.carta,.carta.grande,.carta.meia,.carta.larga{grid-column:auto}
  .troca-visual{height:240px}.troca-visual img{height:220px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}.gelo-titulo{clip-path:none}#neve{display:none}
}

/* clareza das coins */
.dia .marcas{position:absolute;left:4px;bottom:4px;display:flex;gap:3px;z-index:3}
.m-livre,.m-devolve{font:700 11px/1 Georgia,serif;font-style:normal;padding:2px 5px;border-radius:8px;white-space:nowrap}
.m-livre{background:#2b7de0;color:#fff;border:1px solid #bfe0ff}
.m-devolve{background:linear-gradient(180deg,#f5cf64,#c48a22);color:#2a1a02;border:1px solid #fff0b0}
.dia:not(.aceso) .marcas{opacity:.55}
.conta{text-align:center;color:#cfe3f4;font-size:15px;margin:-8px 0 6px}
.conta b{color:var(--ouro)}
.conta.custo{color:var(--mudo);font-size:14px;margin:0 0 22px}
.legenda{display:flex;gap:10px 26px;flex-wrap:wrap;justify-content:center;margin-top:18px;font-size:13px;color:var(--mudo)}
.legenda li{display:flex;align-items:center;gap:7px}
.legenda b{color:#fff}
.legenda .mini{display:inline-block;width:16px;height:16px;border-radius:50%;background:#2f8be0;border:1.5px solid #fff}
.detalhe .linha.dev{background:#2a2108;border:1px solid #c48a2288}
.detalhe .linha.dev b{color:var(--ouro)}
