:root{
  /* base institucional — manual de marca */
  --base:#100C0A;
  --surface:#1C1614;
  --text:#F2F2F0;
  --text-2:#8A8078;
  --brasa:#C44348;   /* urgência */
  --laranja:#D9704D; /* marca, detalhe */
  --ambar:#D8974F;   /* ação */
  --rule:rgba(138,128,120,.28);
  --max:1240px;

  /* FUNDO DO HERO — para trocar a capa, troque o arquivo assets/capa.webp.
     Sem pessoas em primeiro plano, terços de cima e de baixo limpos. */
  --hero-img:url("data:image/webp;base64,UklGRhABAABXRUJQVlA4IAQBAABQBgCdASooABcAPrlOnksnJCKhqqwA4BcJagC7M1pDsBwtfrGwQjhHoaE4Pbv6CmSkqKXKGIuxjlcAAAD++ElCKHZllbS9+f/HDDdqzTYlGZdiSmdPv4hLhtZhm9VkLZu5FR+HJjuBjuUGTbAPY7pfxHy7oMiqTdP7+DVVZoLzEyg0Qu6JWt3qlX2fBH5OtLxYBNUDrjv+GEJgsaTe9QnaE734PmCvfqyFCf3A5FOqZnUO9NY16ZPuQ9POQqAlUFOGeSmr65HSgZAnh5kvD6oR+/EcNswlki3fqnrTMi5l+lUDnr2WKsOT1J4oBXgWPoAGVUTrw2XGDpwQP5S1sdKE2ygAAA==");
  --logo:url("logo.webp");
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--base)}
body{
  background:var(--base);color:var(--text);
  font-family:'Azo Sans',system-ui,sans-serif;font-weight:400;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
:focus-visible{outline:1px solid var(--text);outline-offset:4px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* entrada suave da página (CSS puro, não depende de JS) */
@keyframes pagina-entra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
body{animation:pagina-entra .55s cubic-bezier(.16,1,.3,1) both}
/* saída suave ao navegar pra outra página (JS liga a classe antes de trocar de URL) */
html.saindo body{opacity:0!important;transform:translateY(-8px);transition:opacity .28s ease,transform .28s ease;animation:none}

/* revelar seções ao rolar — só ativa se o JS confirmar suporte; sem JS, tudo fica visível normalmente */
html.reveal-ativo .blk,html.reveal-ativo .manifesto,html.reveal-ativo .ponte{
  opacity:0;transform:translateY(26px);
  transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);
}
html.reveal-ativo .blk.visivel,html.reveal-ativo .manifesto.visivel,html.reveal-ativo .ponte.visivel{
  opacity:1;transform:none;
}

/* caixa alta com tracking largo — obrigatório em tagline, cidade e assinatura */
.tag{font-weight:300;font-size:11px;letter-spacing:.34em;text-transform:uppercase}
.lbl{font-weight:400;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase}
.dado{font-weight:500;letter-spacing:.06em;font-variant-numeric:tabular-nums}
.prosa{font-family:'Azo Sans',sans-serif;font-weight:300;letter-spacing:0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.oculto{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pular{position:absolute;left:-999px;top:0;z-index:200;background:var(--text);color:var(--base);padding:12px 20px;font-size:12px;letter-spacing:.1em;border-radius:6px}
.pular:focus{left:12px;top:12px}

/* ---------- HEADER ---------- */
header{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 28px;background:var(--base);
  border-bottom:.5px solid var(--rule);
}
.selo{height:20px;width:auto;display:block}
nav{display:flex;gap:26px}
nav a{font-weight:400;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-2);transition:color .25s}
nav a:hover{color:var(--text)}
nav a.avidd{color:var(--laranja)}
.burger{display:none;background:none;border:0;color:var(--text);cursor:pointer}
@media(max-width:900px){
  nav{position:fixed;inset:0;background:var(--base);flex-direction:column;justify-content:center;align-items:center;gap:30px;transform:translateY(-100%);transition:transform .4s cubic-bezier(.6,0,.2,1)}
  nav.open{transform:translateY(0)}
  nav a{font-size:13px}
  .burger{display:block;z-index:101}
}

/* ---------- HERO ---------- */
/* ---------- PRELOADER ---------- */
#preloader{
  position:fixed;inset:0;z-index:500;
  width:100vw;height:100vh;height:100dvh;
  background:#0A0807;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
}
#preloader .pre-grao{
  position:absolute;inset:0;opacity:.05;background-size:200px 200px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");
}
#preloader .pre-glow{
  position:absolute;width:min(70vw,560px);height:min(70vw,560px);border-radius:50%;
  background:radial-gradient(circle, rgba(190,75,30,.16), transparent 65%);
}
#preloader .pre-logo{
  position:relative;width:210px;height:auto;display:block;
  opacity:0;transform:scale(.86);filter:blur(8px);
  animation:pre-entra 800ms cubic-bezier(.16,1,.3,1) forwards,
            pre-respira 500ms ease-in-out 850ms 1;
}
@keyframes pre-entra{
  0%{opacity:0;transform:scale(.86);filter:blur(8px)}
  40%{opacity:1;transform:scale(1.025);filter:blur(0)}
  100%{opacity:1;transform:scale(1);filter:blur(0)}
}
@keyframes pre-respira{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.015)}
}
#preloader.sai .pre-logo{
  animation:none;
  opacity:0;transform:scale(.94);filter:blur(5px);
  transition:opacity 380ms ease, transform 380ms ease, filter 380ms ease;
}
#preloader.sai{
  clip-path:inset(0 0 0 0);
  transition:clip-path 620ms cubic-bezier(.76,0,.24,1) 160ms;
}
#preloader.sai.cortina{clip-path:inset(0 0 100% 0)}
#preloader.pronto{pointer-events:none}
@media(max-width:640px){
  #preloader .pre-logo{width:155px}
}
@media (prefers-reduced-motion:reduce){
  #preloader .pre-logo{animation:none;opacity:1;transform:none;filter:none}
  #preloader.sai{transition:opacity 200ms linear}
  #preloader.sai.cortina{opacity:0;clip-path:none}
}

.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:96px 0 84px;overflow:hidden;
  transition:opacity 900ms cubic-bezier(.16,1,.3,1), transform 900ms cubic-bezier(.16,1,.3,1)}
html.carregando .hero{opacity:0;transform:scale(1.02)}
@media (prefers-reduced-motion:reduce){
  html.carregando .hero{opacity:1;transform:none}
}

/* camadas de fundo */
.hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.hero-bg i{position:absolute;inset:0;display:block}
.hero-bg::after{content:'';position:absolute;inset:0;
  background:linear-gradient(to bottom, transparent 0%, transparent 45%, var(--base) 96%)}

/* a foto é montada em duas metades para cada lado reagir sozinho */
.hero-bg .foto{top:0;bottom:0;left:auto;right:auto;width:50%;overflow:hidden}
.hero-bg .fl{left:0}
.hero-bg .fr{right:0}
.hero-bg.lqip .foto b{filter:blur(16px) saturate(.8) contrast(1.05);transform:scale(1.06)}
.hero-bg .foto b{
  position:absolute;top:0;bottom:0;width:200%;display:block;
  background:var(--hero-img) center 42%/cover no-repeat;
  opacity:.38;filter:saturate(1) contrast(1.02);
  transition:transform 1s cubic-bezier(.2,.8,.2,1),filter .9s ease,opacity .9s ease;will-change:filter;
}
.hero-bg .fl b{left:0;transform-origin:25% 50%}
.hero-bg .fr b{right:0;transform-origin:75% 50%}
.hero:has(.half-l:hover) .hero-bg .fl b,
.hero:has(.half-r:hover) .hero-bg .fr b{transform:scale(1.14);filter:saturate(.95) contrast(1.05) blur(6px);opacity:.5}
.hero:has(.half-l:hover) .hero-bg .fr b,
.hero:has(.half-r:hover) .hero-bg .fl b{opacity:.18}
.hero-bg .facetas{
  opacity:.035;background-size:170px 170px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cg fill='none' stroke='%238A8078' stroke-width='1'%3E%3Cpath d='M0 170L85 0L170 170'/%3E%3Cpath d='M0 85h170'/%3E%3Cpath d='M85 85L0 170M85 85L170 170'/%3E%3C/g%3E%3C/svg%3E");
}
.hero-bg .grao{
  opacity:.05;background-size:200px 200px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");
}
.halves{position:absolute;inset:0;display:flex;z-index:2}
.half{flex:1;display:flex;align-items:center;padding:0 40px}
.half-r{justify-content:flex-end}
.half span{
  color:var(--text);opacity:.62;font-size:11px;
  display:inline-flex;align-items:center;gap:12px;
  transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1);
}
.half span::before{content:'';width:5px;height:5px;background:currentColor;transform:rotate(45deg);flex-shrink:0}
.half:hover span{opacity:1}
.half-l:hover span{transform:translateX(-6px)}
.half-r:hover span{transform:translateX(6px)}
@media(max-width:1100px){.half{padding:0 26px}.half span{font-size:10px;gap:9px}}

.hero-core{position:relative;z-index:3;text-align:center;pointer-events:none;display:flex;flex-direction:column;align-items:center}

/* 1. tagline conceitual */
.hero .eyebrow{color:var(--text-2);margin-bottom:38px}

/* 2. bloco de marca — logotipo original, nunca redesenhado */
.logo-stage{position:relative;width:clamp(112px,13.5vw,172px);opacity:1;animation:enter 1.1s cubic-bezier(.2,.8,.2,1)}
.logo-stage img{width:100%;height:auto;display:block}
.shine{
  position:absolute;inset:0;overflow:hidden;pointer-events:none;display:none;
  -webkit-mask-image:var(--logo);mask-image:var(--logo);
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
}
@supports (-webkit-mask-image:url(x)) or (mask-image:url(x)){ .shine{display:block} }
.shine::after{
  content:'';position:absolute;top:-25%;bottom:-25%;left:-45%;width:38%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);
  animation:sweep 7s cubic-bezier(.4,0,.6,1) 1.4s infinite;
  will-change:transform;
}
@keyframes enter{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
@keyframes sweep{0%{transform:translate3d(0,0,0)}38%,100%{transform:translate3d(400%,0,0)}}

/* 3. ação + data · 4. cidade */
.ticket-block{position:relative;z-index:4;margin-top:38px;text-align:center;pointer-events:auto;display:flex;flex-direction:column;align-items:center}
.ticket-block::before{
  content:'';position:absolute;top:50%;left:50%;width:clamp(260px,34vw,420px);height:clamp(260px,34vw,420px);
  border:1px solid var(--text);opacity:.16;transform:translate(-50%,-50%) rotate(45deg);
  pointer-events:none;z-index:-1;
}
.node-mark{color:var(--text-2);font-size:10px;font-weight:400;letter-spacing:.32em;text-transform:uppercase;margin-bottom:14px;opacity:.55}
.btn{
  display:inline-block;padding:15px 44px;border-radius:6px;border:0;cursor:pointer;
  background:var(--text);color:var(--base);
  font-family:'Azo Sans',sans-serif;font-weight:500;font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  transition:opacity .25s;
}
.btn:hover{opacity:.85}

/* variante quente: ações secundárias que ainda precisam ser vistas */
.btn-laranja{
  background:rgba(217,112,77,.09);color:var(--laranja);
  border:.5px solid rgba(217,112,77,.45);
  transition:background .3s,border-color .3s,color .3s;
}
.btn-laranja:hover{background:rgba(217,112,77,.16);border-color:var(--laranja);opacity:1}

.next-date{font-family:'Azo Sans',sans-serif;font-size:clamp(34px,5.4vw,54px);font-weight:900;letter-spacing:.01em;margin-bottom:14px;line-height:1}
.next-city{color:var(--laranja);opacity:.9;margin-bottom:26px}
.frideiros{color:var(--text-2);opacity:.75;margin-top:16px}

.mouse-scroll{width:22px;height:36px;margin-top:34px;border:1.4px solid var(--text-2);border-radius:12px;position:relative;opacity:.65}
.mouse-scroll::before{
  content:'';position:absolute;top:6px;left:50%;width:3px;height:7px;border-radius:2px;
  background:var(--text-2);transform:translateX(-50%);
  animation:roda-desce 1.8s cubic-bezier(.4,0,.2,1) infinite;
}
@keyframes roda-desce{
  0%{opacity:0;transform:translate(-50%,0)}
  20%{opacity:1}
  70%{opacity:0;transform:translate(-50%,11px)}
  100%{opacity:0;transform:translate(-50%,0)}
}
@media (prefers-reduced-motion:reduce){
  .mouse-scroll::before{animation:none;opacity:1}
}

/* 5. assinatura */
.signature{position:relative;z-index:3;margin-top:52px;color:var(--text-2)}

.hero-foot{position:absolute;bottom:24px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:0 28px;z-index:5;color:var(--text-2)}
.hero-redes{display:flex;gap:12px}
.hero-redes a{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--rule);border-radius:50%;color:var(--text);opacity:.85;
  transition:opacity .25s,border-color .25s,transform .25s}
.hero-redes a:hover{opacity:1;border-color:var(--text);transform:translateY(-2px)}
@media(max-width:900px){
  .halves{display:none}
  .hero{padding-bottom:118px}
  .hero-foot{position:static;flex-direction:column-reverse;justify-content:center;gap:16px;margin-top:34px;padding:0 20px}
}

/* ---------- BOTÃO FLUTUANTE DA LINHA DO TEMPO ---------- */
/* ---------- HOJE + ENTRADA NA HISTÓRIA ---------- */
.ponte{position:relative;padding:104px 0 0;text-align:center}
.epigrafe{color:var(--text-2);opacity:.6}

/* ---------- CABEÇALHO DE SUBPÁGINA ---------- */
.pagina-cabeco{padding:150px 0 30px}
.pagina-cabeco .voltar{color:var(--text-2);display:inline-flex;align-items:center;gap:8px;margin-bottom:26px;transition:color .25s}
.pagina-cabeco .voltar:hover{color:var(--text)}
.pagina-cabeco h1{font-weight:700;font-size:clamp(32px,6vw,56px);letter-spacing:-.01em;line-height:1.05;text-transform:uppercase}
.pagina-cabeco .sub{font-weight:400;font-size:clamp(15px,1.9vw,19px);color:var(--text-2);margin-top:14px}
.subnav{margin-top:26px;display:flex;gap:24px}
.subnav a{color:var(--text-2);transition:color .25s}
.subnav a:hover{color:var(--laranja)}
@media(max-width:640px){.pagina-cabeco{padding:130px 0 20px}}

/* ---------- MANIFESTO ---------- */
.manifesto{padding:clamp(70px,12vw,140px) 0;text-align:center;position:relative;border-top:.5px solid var(--rule)}
.manifesto .epigrafe{margin-bottom:34px}
.manifesto-linha{font-family:'Azo Sans',sans-serif;font-weight:500;font-size:clamp(17px,2vw,21px);line-height:1.6;max-width:700px;margin:0 auto 18px;color:var(--text-2)}
.manifesto-linha.grande{font-weight:700;font-size:clamp(24px,3.6vw,40px);line-height:1.3;max-width:820px;color:var(--text)}
.manifesto-linha.destaque{font-weight:700;color:var(--laranja);margin-top:30px}
.manifesto-ass{margin-top:40px;color:var(--text-2)}
.ponte h2{font-weight:700;font-size:clamp(26px,4.6vw,50px);letter-spacing:-.01em;margin-top:30px}
.ponte .dica{color:var(--text-2);margin-top:15px}

.stats-grid{display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:10px 30px;margin-top:46px}
.stat{display:flex;align-items:baseline;gap:9px}
.stat .n{font-weight:500;font-size:20px;line-height:1;letter-spacing:.02em}
.stat .l{color:var(--text-2)}
.stat+.stat::before{content:'';width:3px;height:3px;background:var(--text-2);opacity:.5;transform:rotate(45deg) translateY(-4px);margin-right:21px}
@media(max-width:560px){.stats-grid{gap:8px 20px}.stat+.stat::before{margin-right:11px}}

/* ---------- LINHA CONTÍNUA ---------- */
.anos-secao{position:relative;padding:10px 0 96px}

/* fita de edições */
.fita-eds{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:8px 0 34px;scrollbar-width:none;scroll-behavior:smooth;
  -webkit-mask-image:linear-gradient(to right, transparent, #000 90px, #000 calc(100% - 90px), transparent);
  mask-image:linear-gradient(to right, transparent, #000 90px, #000 calc(100% - 90px), transparent)}
.fita-eds::-webkit-scrollbar{display:none}
.fita-eds::before,.fita-eds::after{content:'';flex:0 0 calc(50% - 130px)}
.carta{flex:0 0 240px;scroll-snap-align:center;display:block;
  opacity:.56;transform:scale(.9);transform-origin:center bottom;
  transition:opacity .5s cubic-bezier(.2,.8,.2,1),transform .5s cubic-bezier(.2,.8,.2,1)}
.carta.foco{opacity:1;transform:scale(1)}
.carta-foto{position:relative;aspect-ratio:1/1;border-radius:3px;overflow:hidden;background:#D8D2CC;
  border:9px solid var(--text);border-bottom-width:34px;box-sizing:content-box}
.carta-foto img{width:100%;height:100%;object-fit:cover;display:block}
.carta-num{color:var(--text-2);margin-top:20px}
.carta-nome{font-weight:700;font-size:18px;line-height:1.2;letter-spacing:-.01em;margin:8px 0 6px}
.carta-nome em{font-style:normal;font-weight:inherit;color:inherit}
.carta-cidade{color:var(--text-2)}
.carta-cidade .pin{font-size:.72em;margin-right:3px;opacity:.85}
@media(max-width:900px){
  .fita-eds{gap:18px;
    -webkit-mask-image:linear-gradient(to right, transparent, #000 40px, #000 calc(100% - 40px), transparent);
    mask-image:linear-gradient(to right, transparent, #000 40px, #000 calc(100% - 40px), transparent)}
  .fita-eds::before,.fita-eds::after{flex:0 0 calc(50% - 105px)}
  .carta{flex:0 0 200px}
  .carta-nome{font-size:16px}
}

/* régua do tempo, agora com clima de estradinha */
.estrada-legenda{margin-top:38px;margin-bottom:-6px;opacity:.55}
.regua{position:relative;height:90px;margin-top:22px;touch-action:pan-y;cursor:pointer}
.regua-linha{position:absolute;left:0;right:0;top:21px;height:10px;
  background-image:repeating-linear-gradient(to right, var(--text-2) 0 8px, transparent 8px 18px);
  background-position:center;background-size:100% 1.5px;background-repeat:repeat-x;opacity:.55}
.regua-linha::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:var(--text-2);opacity:.4}
.regua-linha::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--text-2);opacity:.4}
.regua-agulha{position:absolute;top:12px;width:30px;height:18px;color:var(--laranja);
  transform:translateX(-50%);transition:left .45s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}
.pontos{position:absolute;left:0;right:0;top:0;height:52px}
.pt{position:absolute;top:0;width:22px;height:30px;margin-left:-11px;padding:0;
  background:none;border:0;cursor:pointer}
.pt::before{content:'';position:absolute;left:50%;top:13px;width:1px;height:13px;
  background:var(--text-2);opacity:.45;transform:translateX(-50%);
  transition:background .35s,opacity .35s}
.pt::after{content:'';position:absolute;left:50%;top:10px;width:6px;height:6px;
  background:var(--text-2);transform:translate(-50%,-50%) rotate(45deg);
  transition:background .35s,width .35s,height .35s}
.pt:hover::after{background:var(--text)}
.pt.foco::after{background:var(--laranja);width:8px;height:8px}
.pt.foco::before{background:var(--laranja);opacity:.75}
.rotulos{position:absolute;left:0;right:0;top:44px;height:16px}
.rot{position:absolute;transform:translateX(-50%);font-family:'Azo Sans',sans-serif;
  font-size:10px;letter-spacing:.16em;color:var(--text-2);opacity:.55}
.regua-pontas{position:absolute;left:0;right:0;top:66px;display:flex;justify-content:space-between;
  color:var(--text-2);opacity:.5}
@media(max-width:900px){
  .regua{height:76px}
  .rot{font-size:9px;letter-spacing:.06em}
  .rot:nth-child(even){display:none}
  .regua-pontas{font-size:9px}
}

/* ---------- FITA DE SETS ---------- */
.fita-caixa{position:relative;margin-top:44px}
.fita{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:4px 2px 20px;scrollbar-width:none;scroll-behavior:smooth}
.fita::-webkit-scrollbar{display:none}
.set{flex:0 0 clamp(260px,32vw,380px);scroll-snap-align:start;display:block;
  transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.set:hover{transform:translateY(-6px)}
.set-capa{position:relative;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:var(--surface)}
.set-capa img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.set-capa::after{content:'';position:absolute;inset:0;background:rgba(16,12,10,.34);transition:background .35s}
.set:hover .set-capa img{transform:scale(1.06)}
.set:hover .set-capa::after{background:rgba(16,12,10,.14)}
.set-capa .play{position:absolute;left:50%;top:50%;z-index:2;width:0;height:0;transform:translate(-50%,-50%);
  border-left:17px solid var(--text);border-top:11px solid transparent;border-bottom:11px solid transparent}
.set-capa .dur{position:absolute;right:9px;bottom:9px;z-index:2;padding:4px 8px;border-radius:4px;
  background:rgba(16,12,10,.8);font-family:'Azo Sans',sans-serif;font-size:10.5px;
  letter-spacing:.08em;font-variant-numeric:tabular-nums}
.set-nome{font-weight:500;font-size:16.5px;line-height:1.3;margin:16px 0 8px}
.set-meta{color:var(--text-2)}
.set-selo{display:inline-block;margin-top:12px;padding:5px 10px;border:.5px solid var(--laranja);
  border-radius:5px;color:var(--laranja)}
.seta{position:absolute;top:calc(50% - 46px);z-index:5;width:42px;height:42px;border-radius:50%;
  background:rgba(16,12,10,.82);backdrop-filter:blur(6px);border:.5px solid var(--rule);
  color:var(--text);font-size:22px;line-height:1;cursor:pointer;transition:opacity .3s,border-color .3s}
.seta:hover{border-color:var(--text)}
.seta.esq{left:-18px}.seta.dir{right:-18px}
.seta[disabled]{opacity:0;pointer-events:none}
@media(max-width:900px){.seta{display:none}.fita{gap:14px}}

/* ---------- PRÉVIA DO SET DENTRO DA PRÓPRIA MINIATURA ---------- */
.set-player{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:3;display:none}
.set-capa.tocando .set-player{display:block}
.set-capa.tocando img,.set-capa.tocando .play,.set-capa.tocando .dur{opacity:0;pointer-events:none}
.set-parar{position:absolute;top:9px;right:9px;z-index:4;width:28px;height:28px;border-radius:50%;
  display:none;align-items:center;justify-content:center;
  background:rgba(16,12,10,.75);border:.5px solid rgba(242,242,240,.4);color:var(--text);
  font-size:13px;line-height:1;cursor:pointer;transition:border-color .3s}
.set-parar:hover{border-color:var(--text)}
.set-capa.tocando .set-parar{display:flex}

/* ---------- SEÇÕES ---------- */
section.blk{padding:118px 0;position:relative;border-top:.5px solid var(--rule)}
.blk .sub{font-weight:400;font-size:clamp(15px,1.9vw,19px);color:var(--text-2);margin-top:14px}
.blk h2{font-weight:700;font-size:clamp(26px,4.4vw,46px);letter-spacing:-.005em;line-height:1.05;text-transform:uppercase}
.blk .lead{color:var(--text-2);font-size:15px;line-height:1.85;max-width:470px;margin-top:22px}
.prox-txt p.prosa,.loja-txt p.prosa{color:var(--text-2);font-size:15px;line-height:1.85;max-width:470px;margin-top:16px}
.blk .cta{margin-top:38px}

/* ---------- LOJA: layout de duas colunas ---------- */
.loja-in{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(30px,7vw,90px)}
.loja-txt{min-width:0}
.loja-foto{width:clamp(280px,38vw,470px);border-radius:10px;overflow:hidden;line-height:0}
.loja-foto img{width:100%;height:auto;display:block}
.prox-arte{width:clamp(230px,26vw,330px);border-radius:10px;overflow:hidden;line-height:0}
.prox-arte img{width:100%;height:auto;display:block}
@media(max-width:900px){
  .loja-foto{width:100%;max-width:470px}
  .prox-arte{width:100%;max-width:330px}
}

/* blocos de duas colunas: próxima edição, playlist e comunidade */
.prox-in{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(30px,6vw,76px)}
.prox-txt{min-width:0}

/* player da playlist */
.spotify{width:clamp(280px,36vw,420px);border-radius:12px;overflow:hidden;line-height:0}
.spotify iframe{display:block;border:0;width:100%}

/* card da comunidade */
.zap{display:block;width:clamp(260px,30vw,340px);border:.5px solid var(--rule);border-radius:8px;padding:18px;background:var(--surface);transition:border-color .35s}
.zap:hover{border-color:var(--text)}
.zap-top{display:flex;align-items:center;gap:12px;padding-bottom:15px;border-bottom:.5px solid var(--rule)}
.zap-top img{width:38px;height:38px;border-radius:50%;object-fit:cover;flex-shrink:0}
.zap-nome{font-weight:500;font-size:13.5px;line-height:1.35}
.zap-sub{color:var(--text-2);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;margin-top:4px}
.bolha{background:var(--base);border-radius:8px;padding:13px 15px;margin-top:14px;font-size:13.5px;line-height:1.55;max-width:92%}
.bolha.destaque{border-left:2px solid var(--laranja)}

/* mobile: tudo empilhado e centralizado */
@media(max-width:900px){
  .loja-in,.prox-in{grid-template-columns:minmax(0,1fr);justify-items:center;gap:40px}
  .loja-txt,.prox-txt{justify-self:stretch}
  .gema{width:min(230px,62%)}
  .zap{width:100%;max-width:400px}
  .spotify{width:100%;max-width:440px}
  .reel{width:100%;max-width:340px}
  #comunidade .prox-in{gap:26px}
}
/* FAQ */
.sobre-txt{max-width:660px;margin-top:34px}
.sobre-txt p{color:var(--text-2);font-size:15.5px;line-height:1.9;margin-bottom:20px}
.sobre-txt strong{color:var(--text);font-weight:400}
.sobre-ass{color:var(--laranja);opacity:.9;margin:34px 0 30px}
.sobre-cidades{font-size:13.5px!important;line-height:1.8!important;opacity:.65}
.sobre-galeria{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:44px;max-width:900px}
.sobre-galeria img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;border-radius:6px;display:block}
@media(max-width:640px){.sobre-galeria{grid-template-columns:repeat(2,1fr)}}

/* casca de abacaxi = facetas de diamante */
.malha{
  position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.05;
  background-size:170px 170px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cg fill='none' stroke='%238A8078' stroke-width='1'%3E%3Cpath d='M0 170L85 0L170 170'/%3E%3Cpath d='M0 85h170'/%3E%3Cpath d='M85 85L0 170M85 85L170 170'/%3E%3C/g%3E%3C/svg%3E");
}
#abacaxi .wrap{position:relative;z-index:1}
.reel{width:clamp(280px,32vw,340px);border-radius:12px;overflow:hidden;line-height:0;background:var(--surface)}
.reel iframe{display:block;border:0;width:100%;height:600px}

.faq{max-width:760px;margin-top:46px}
.q{border-bottom:.5px solid var(--rule)}
.q button{width:100%;background:none;border:0;color:var(--text);text-align:left;padding:22px 0;font-family:'Azo Sans',sans-serif;font-weight:400;font-size:16px;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center}
.q .ic{color:var(--text-2);flex-shrink:0;transition:transform .35s;font-weight:300}
.q.open .ic{transform:rotate(45deg)}
.q .a{max-height:0;overflow:hidden;transition:max-height .4s ease;color:var(--text-2);font-size:14.5px;line-height:1.85}
.q.open .a{max-height:280px}
.q .a p{padding-bottom:24px}

/* FOOTER */
footer{border-top:.5px solid var(--rule);padding:58px 0 40px}
.fgrid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;color:var(--text-2)}
.fgrid a{transition:color .3s}
.fgrid a:hover{color:var(--text)}
.fcol{display:flex;flex-direction:column;gap:11px}
.fbottom{margin-top:56px;display:flex;justify-content:space-between;align-items:center;color:var(--text-2);flex-wrap:wrap;gap:18px}
.fselo{height:22px;width:auto;opacity:.5}
