/* Site do Cifra. Tudo vem deste servidor: nenhuma fonte, script ou imagem de fora. */
@font-face{font-family:"Geist";src:url("/fontes/Geist-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Geist";src:url("/fontes/Geist-Medium.ttf") format("truetype");font-weight:500;font-display:swap}
@font-face{font-family:"Geist";src:url("/fontes/Geist-SemiBold.ttf") format("truetype");font-weight:600;font-display:swap}
/* O app só embute o peso regular da Geist Mono; o site usa o mesmo arquivo. */
@font-face{font-family:"Geist Mono";src:url("/fontes/GeistMono-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
[hidden]{display:none!important}
body{margin:0;background:#0B0C0B;color-scheme:dark}
a{color:#C6F432}a:hover{color:#E9EBE4}
.pagina{background:#0B0C0B;color:#E9EBE4;font-family:Geist,system-ui,sans-serif;overflow-x:clip;-webkit-font-smoothing:antialiased}
.wrap{max-width:1200px;margin:0 auto;padding:0 20px;box-sizing:border-box}
.rotulo{font:400 11px/1.4 "Geist Mono",ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:#8D9289}
.h1{margin:0;font:500 46px/1 Geist,sans-serif;letter-spacing:-.035em;color:#E9EBE4;text-wrap:balance}
.lead{margin:0;font:400 18px/1.45 Geist,sans-serif;color:#E9EBE4;max-width:560px;text-wrap:pretty}
.titulo{margin:0;font:500 32px/1.08 Geist,sans-serif;letter-spacing:-.03em;color:#E9EBE4;text-wrap:balance}
.sub{margin:0;font:500 22px/1.2 Geist,sans-serif;letter-spacing:-.02em;color:#E9EBE4;text-wrap:balance}
.texto{margin:0;font:400 16px/1.55 Geist,sans-serif;color:#8D9289;text-wrap:pretty}
.forte{font:500 17px/1.3 Geist,sans-serif;color:#E9EBE4}
.card{background:#151715;border:1px solid #151715;border-radius:22px;padding:22px;box-sizing:border-box;transition:border-color .35s}
.card:hover{border-color:#2C312C}
.mono{font:400 12.5px/1.6 "Geist Mono",ui-monospace,monospace;color:#8D9289}
.codigo{display:block;background:#0B0C0B;border:1px solid #262A26;border-radius:12px;padding:12px 14px;font:400 13px/1.5 "Geist Mono",ui-monospace,monospace;color:#E9EBE4;word-break:break-all}
.celular{flex-shrink:0;padding:10px;border:1px solid #262A26;border-radius:44px;background:#050605;box-shadow:0 40px 80px rgba(0,0,0,.45)}
.tela{overflow:hidden;border-radius:34px;width:273px;height:591px}
.tela>div{width:390px;height:844px;transform:scale(.7);transform-origin:top left}
.botao{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 22px;border:0;border-radius:18px;font:600 15.5px Geist,sans-serif;text-decoration:none;box-sizing:border-box;cursor:pointer;transition:transform .25s,background .25s,color .25s,border-color .25s}
.botao:active{transform:scale(.98)}
.botao-acento{background:#C6F432;color:#0B0C0B}.botao-acento:hover{background:#D7FF4F;color:#0B0C0B;transform:translateY(-1px)}
.botao-linha{background:transparent;border:1px solid #262A26;color:#E9EBE4}.botao-linha:hover{background:#151715;color:#E9EBE4;border-color:#3A403A}
.compacto{height:40px;padding:0 16px;font-size:14px;border-radius:13px}
.seg{display:inline-flex;gap:3px;padding:3px;border-radius:12px;background:#151715;border:1px solid #262A26}
.seg a{display:inline-grid;place-items:center;box-sizing:border-box;text-decoration:none;height:32px;min-width:40px;padding:0 10px;border:0;border-radius:9px;font:500 12.5px "Geist Mono",ui-monospace,monospace;cursor:pointer;transition:background .25s,color .25s}
.topo{position:sticky;top:0;z-index:30;background:rgba(11,12,11,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(38,42,38,.7)}
.nav-links{display:none}
.nav-links a{color:#8D9289;text-decoration:none;transition:color .25s}.nav-links a:hover{color:#E9EBE4}
.secao{padding-top:80px;padding-bottom:8px;display:flex;flex-direction:column;gap:32px}
.cabecalho{display:flex;flex-direction:column;gap:14px;max-width:760px}
.grade-2,.grade-3,.grade-4{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.lista{display:flex;flex-direction:column;gap:14px}
.linha{display:flex;flex-direction:column;gap:4px}
.item{display:flex;gap:10px;align-items:flex-start;font:400 15px/1.5 Geist,sans-serif;color:#E9EBE4}
.item::before{content:"";flex-shrink:0;width:7px;height:7px;margin-top:8px;border-radius:2px;background:#C6F432}
.item-neutro::before{background:#8D9289}
.so-largo{display:none}
.cit{margin:0;font:500 22px/1.28 Geist,sans-serif;letter-spacing:-.02em;color:#E9EBE4;text-wrap:balance}
.rota{position:relative;padding-left:28px}
.trilho{position:absolute;left:7px;top:14px;bottom:14px;width:2px;background:#262A26;border-radius:1px}
.pacote{position:absolute;left:-5px;top:0;width:12px;height:12px;border-radius:3px;background:#C6F432;box-shadow:0 0 0 4px rgba(198,244,50,.16);animation:viajarY 9s cubic-bezier(.45,0,.55,1) infinite}
.rota-cards{display:flex;flex-direction:column;gap:10px}
.no{flex:1 1 0;padding:20px;display:flex;flex-direction:column;gap:8px}
.no-tor{flex:.78 1 0;background:#0B0C0B;border-color:#262A26}
.panico-demo{position:relative;height:52px;max-width:340px;border:1px solid #FF5A43;border-radius:18px;overflow:hidden;display:grid;place-items:center}
.panico-enche{position:absolute;left:0;top:0;bottom:0;width:38%;background:#FF5A43;animation:encher 4.2s cubic-bezier(.22,.9,.24,1) infinite}
.panico-txt{position:relative;font:600 15px Geist,sans-serif;color:#FF5A43;animation:branquear 4.2s infinite}
.ponto{display:inline-block;width:7px;height:7px;border-radius:50%;background:#C6F432;box-shadow:0 0 0 3px rgba(198,244,50,.22);animation:pulso 2.4s ease-in-out infinite}
.conf-caixa{background:#0B0C0B;border:1px solid #262A26;border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:14px;min-width:0}
details.card>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px}
details.card>summary::-webkit-details-marker{display:none}
details.card>summary svg{flex-shrink:0;transition:transform .3s}
details.card[open]>summary svg{transform:rotate(180deg)}
details.card>summary:hover .forte{color:#C6F432}
.entra{animation:subir .9s cubic-bezier(.22,.9,.24,1) both;animation-delay:var(--d,0ms)}
.flutua{animation:flutuar 7s ease-in-out infinite;animation-delay:var(--f,0s)}
.reveal{transition:opacity .7s cubic-bezier(.22,.9,.24,1),transform .7s cubic-bezier(.22,.9,.24,1)}
.reveal.oculto{opacity:0;transform:translateY(22px)}
.grade-2>.reveal:nth-child(2),.grade-3>.reveal:nth-child(2),.grade-4>.reveal:nth-child(2){transition-delay:70ms}
.grade-2>.reveal:nth-child(3),.grade-3>.reveal:nth-child(3),.grade-4>.reveal:nth-child(3){transition-delay:140ms}
.grade-2>.reveal:nth-child(4),.grade-3>.reveal:nth-child(4),.grade-4>.reveal:nth-child(4){transition-delay:210ms}
.grade-3>.reveal:nth-child(5){transition-delay:280ms}.grade-3>.reveal:nth-child(6){transition-delay:350ms}
.grade-3>.reveal:nth-child(7){transition-delay:420ms}.grade-3>.reveal:nth-child(8){transition-delay:490ms}.grade-3>.reveal:nth-child(9){transition-delay:560ms}
.veu{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.45);display:flex;align-items:flex-end;justify-content:center;padding:8px;box-sizing:border-box;animation:esmaecer .35s both}
.painel{width:100%;max-width:480px;background:#151715;border:1px solid #262A26;border-radius:34px;padding:12px 20px 22px;display:flex;flex-direction:column;gap:16px;box-sizing:border-box;animation:subirPainel .45s cubic-bezier(.22,.9,.24,1) both}
.alca{align-self:center;width:40px;height:4px;border-radius:2px;background:#262A26}
details.miudo summary{cursor:pointer;font:400 14px Geist,sans-serif;color:#8D9289}
@keyframes subir{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes flutuar{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes pulso{0%,100%{box-shadow:0 0 0 3px rgba(198,244,50,.22)}50%{box-shadow:0 0 0 7px rgba(198,244,50,.06)}}
@keyframes viajarY{0%{top:0}100%{top:calc(100% - 12px)}}
@keyframes viajarX{0%{left:0}100%{left:calc(100% - 12px)}}
@keyframes encher{0%,8%{width:0}46%{width:100%}78%{width:100%}90%,100%{width:0}}
@keyframes branquear{0%,18%{color:#FF5A43}26%,80%{color:#FFFFFF}90%,100%{color:#FF5A43}}
@keyframes esmaecer{from{opacity:0}to{opacity:1}}
@keyframes subirPainel{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}
@media (min-width:720px){.wrap{padding:0 32px}.h1{font-size:64px}.lead{font-size:21px}.titulo{font-size:40px}.cit{font-size:26px}.secao{padding-top:108px;gap:44px}.card{padding:28px}.grade-2,.grade-3,.grade-4{gap:18px}.grade-2,.grade-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grade-3{grid-template-columns:repeat(3,minmax(0,1fr))}.so-largo{display:block}}
@media (min-width:1040px){.h1{font-size:80px}.titulo{font-size:46px}.secao{padding-top:128px}.nav-links{display:flex;gap:26px;font:400 14px Geist,sans-serif}.grade-4{grid-template-columns:repeat(4,minmax(0,1fr))}.rota{padding-left:0;padding-top:34px}.trilho{left:12px;right:12px;top:10px;bottom:auto;width:auto;height:2px}.pacote{top:-5px;left:0;animation-name:viajarX}.rota-cards{flex-direction:row;align-items:stretch}}
@media (prefers-reduced-motion:reduce){.entra,.flutua,.pacote,.panico-enche,.panico-txt,.ponto,.veu,.painel{animation:none}.panico-enche{width:55%}.panico-txt{color:#FFFFFF}.reveal,.reveal.oculto{transition:none;opacity:1;transform:none}}
