/*
  RPTips - Direção visual "Placar Dourado"
  Conceito: placar de estádio à noite + talão de aposta. O dourado vem do logótipo.
  Paleta: fundo #0e0d0b (preto quente), superfície #191713, linha #2e2a22,
          texto #efeae0, secundário #a39d8f, acento #e3b341 (dourado),
          verde #3fcf72 só para o estado "GREEN" (semântico, nunca decorativo).
  Tipografia: Barlow Condensed 700 (títulos/números), Manrope 400/600 (texto),
              JetBrains Mono 500 (odds, datas, etiquetas).
  Grelha: 1 coluna até 959px; 12 colunas a partir de 960px; conteúdo máx. 1160px.
*/

@font-face{font-family:"Barlow Condensed";src:url("../fonts/barlow-condensed-latin-700-normal.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Manrope";src:url("../fonts/manrope-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Manrope";src:url("../fonts/manrope-latin-600-normal.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("../fonts/jetbrains-mono-latin-500-normal.woff2") format("woff2");font-weight:500;font-display:swap}

:root{
  --bg:#0e0d0b;
  --surface:#191713;
  --line:#2e2a22;
  --text:#efeae0;
  --muted:#a39d8f;
  --gold:#e3b341;
  --gold-hover:#f0c65c;
  --gold-dim:#b98f2c;
  --green:#3fcf72;
  --red:#f0705f;
  --on-gold:#16130c;

  --f-display:"Barlow Condensed","Arial Narrow",system-ui,sans-serif;
  --f-body:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;

  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:72px;--s9:112px;
  --radius:4px;
  --wrap:1160px;
  --t:.15s ease;
  --ease-out:cubic-bezier(.2,.7,.2,1);
  --ease-in-out:cubic-bezier(.6,0,.3,1);
}

*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px;interpolate-size:allow-keywords}
body{background:var(--bg);color:var(--text);font:400 1.0625rem/1.6 var(--f-body);-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit;text-underline-offset:4px}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--s4)}
.skip{position:absolute;left:var(--s4);top:-100px;background:var(--gold);color:var(--on-gold);padding:var(--s2) var(--s4);z-index:100}
.skip:focus{top:var(--s2)}

/* Botões */
.btn{display:inline-flex;align-items:center;gap:var(--s2);background:var(--gold);color:var(--on-gold);font:600 1.0625rem/1 var(--f-body);text-decoration:none;padding:var(--s4) var(--s5);border:0;border-radius:var(--radius);cursor:pointer;white-space:nowrap;transition:background-color var(--t)}
.btn:hover{background:var(--gold-hover)}
.btn--sm{padding:var(--s2) var(--s4);font-size:.9375rem}

/* Header */
.site-header{position:sticky;top:0;z-index:40;background:var(--bg);border-bottom:1px solid var(--line);transition:box-shadow .2s var(--ease-out)}
.site-header.is-scrolled{box-shadow:0 10px 24px -14px rgba(0,0,0,.9)}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding-block:var(--s3)}
.brand{display:flex;align-items:center;gap:var(--s3);text-decoration:none;border-radius:var(--radius)}
.brand__logo{position:relative;display:block;flex:none}
.brand__logo img{display:block;width:auto;height:40px}
.brand__word{font:700 1.125rem/1 var(--f-display);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.brand__word b{color:var(--gold);font-weight:700}
@media (max-width:399px){.brand{gap:var(--s2)}.brand__logo img{height:34px}.brand__word{font-size:1rem;letter-spacing:.05em}}
@media (max-width:339px){.brand__word{display:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.icon{flex:none}
.mono{font-family:var(--f-mono);font-weight:500}
.label{font:500 .75rem/1.4 var(--f-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.kicker{display:flex;align-items:center;gap:var(--s2);font:500 .8125rem/1.3 var(--f-mono);color:var(--gold);text-transform:uppercase;letter-spacing:.06em}
.live-dot{position:relative;width:8px;height:8px;margin-left:1px;border-radius:50%;background:var(--green);flex:none}
.sec-n{font:500 .8125rem/1 var(--f-mono);color:var(--muted)}
.sec-title{font:700 clamp(1.875rem,6vw,2.75rem)/1 var(--f-display);text-transform:uppercase;letter-spacing:.01em;margin:var(--s2) 0 var(--s5);max-width:22ch;text-wrap:balance}
.btn--lg{padding:var(--s4) var(--s6);font-size:1.125rem}
.link-quiet{display:inline-flex;align-items:center;gap:var(--s2);color:var(--muted);text-decoration:underline;text-decoration-color:var(--line);transition:color var(--t),text-decoration-color var(--t)}
.link-quiet:hover{color:var(--text);text-decoration-color:var(--muted)}

/* Hero */
.hero{padding-block:var(--s6) var(--s7)}
.hero__title{font:700 clamp(2.75rem,11vw,5.75rem)/.92 var(--f-display);text-transform:uppercase;letter-spacing:.005em;margin:var(--s3) 0 var(--s4);max-width:13ch}
.hero__title em{font-style:normal;color:var(--gold)}
.line{display:block;overflow:hidden;padding-block:.1em;margin-block:-.1em}
.line>*{display:inline-block}
.hero__lead{color:var(--muted);max-width:46ch}
.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s4) var(--s5);margin-top:var(--s5)}
.hero__fine{margin-top:var(--s4);font-size:.8125rem;color:var(--muted)}

/* Placar split-flap (hero) */
.hero__board{margin-top:var(--s7)}
.flapboard{--cell:#1f1c17;position:relative;padding:var(--s4);background:#141210;border:1px solid var(--line);border-radius:6px;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
.flapboard__top,.flapboard__status{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);font:500 .6875rem/1.3 var(--f-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.flapboard__top{margin-bottom:var(--s3)}
.flap-row{display:grid;grid-template-columns:repeat(16,1fr);gap:2px}
.flap-row+.flap-row{margin-top:3px}
.flap{position:relative;display:grid;place-items:center;aspect-ratio:5/7;background:var(--cell);border-radius:2px;font:700 clamp(.9375rem,4.6vw,1.375rem)/1 var(--f-display);text-transform:uppercase;color:var(--text);overflow:hidden;transform-origin:50% 50%}
.flap::before{content:"";position:absolute;inset:0 0 50%;background:rgba(255,255,255,.035)}
.flap::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(0,0,0,.6)}
.flap.is-flip{animation:flap .09s linear}
@keyframes flap{50%{transform:scaleY(.12);filter:brightness(.55)}}
.flapboard__foot{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s4);margin-block:var(--s4);padding-top:var(--s3);border-top:1px dashed var(--line)}
.flapboard__market{font-size:.9375rem;color:var(--muted);transition:opacity .25s}
.flapboard__market.is-fading{opacity:0}
.flapboard__odd{display:flex;flex-direction:column;align-items:flex-end;gap:var(--s1);font:500 .6875rem/1 var(--f-mono);text-transform:uppercase;color:var(--muted)}
.flap-row--odd{grid-template-columns:repeat(4,1.6rem)}
.flap-row--odd .flap{color:var(--gold)}
.flapboard__pips{display:flex;gap:4px}
.flapboard__pips i{width:14px;height:3px;background:var(--line);border-radius:1px;transition:background-color .3s}
.flapboard__pips i.is-on{background:var(--gold)}
.flapboard__example{color:var(--gold);border:1px solid var(--gold-dim);padding:2px 6px;border-radius:2px}
.flapboard__example[hidden]{display:none}
.flapboard .stamp{font-size:.875rem}
.flapboard__right{display:flex;align-items:center;gap:var(--s3)}
.flapboard__pause{display:grid;place-items:center;width:24px;height:24px;margin:-6px -6px -6px 0;padding:0;background:none;border:1px solid var(--line);border-radius:2px;color:var(--muted);cursor:pointer;transition:color var(--t),border-color var(--t)}
.flapboard__pause:hover{color:var(--text);border-color:var(--muted)}
.flapboard__pause[hidden]{display:none}
.flapboard__pause svg{fill:currentColor}
.flapboard__pause .i-play,.flapboard__pause[aria-pressed="true"] .i-pause{display:none}
.flapboard__pause[aria-pressed="true"] .i-play{display:block}
.stamp{--rot:-6deg}

/* Faixa de resultados */
.ticker{position:relative;display:flex;align-items:center;border-top:1px solid var(--line);background:var(--bg);overflow:hidden}
.ticker__track{display:flex;flex:none;width:max-content}
.ticker__list{display:flex;list-style:none;margin:0;padding:0}
.ticker__list li{display:flex;align-items:baseline;gap:var(--s2);padding:var(--s3) var(--s5);border-right:1px solid var(--line);white-space:nowrap;font:500 .8125rem/1.2 var(--f-mono);color:var(--muted)}
.ticker__match{font:700 1rem/1 var(--f-display);text-transform:uppercase;letter-spacing:.03em;color:var(--text)}
.ticker__odd{color:var(--text)}
.ticker__res{font:700 .8125rem/1 var(--f-display);letter-spacing:.12em;text-transform:uppercase;color:var(--green)}
.ticker__res.is-red{color:var(--red)}
.ticker__pause{position:relative;z-index:2;flex:none;display:grid;place-items:center;align-self:stretch;width:40px;padding:0;background:var(--bg);border:0;border-right:1px solid var(--line);color:var(--muted);cursor:pointer;transition:color var(--t)}
.ticker__pause:hover{color:var(--text)}
.ticker__pause[hidden]{display:none}
.ticker__pause svg,.flapboard__pause svg{fill:currentColor}
.ticker__pause .i-play,.ticker__pause[aria-pressed="true"] .i-pause{display:none}
.ticker__pause[aria-pressed="true"] .i-play{display:block}

/* Números (placar) */
.board{border-block:1px solid var(--line);padding-block:var(--s7);background:var(--surface)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.stat{background:var(--bg);padding:var(--s4);display:flex;flex-direction:column}
.stat dt{order:3}
.stat--main{grid-column:1/-1}
.stat dt{margin-top:var(--s2);font-size:.9375rem;color:var(--muted)}
.stat dd{font:700 clamp(1.875rem,8vw,3.5rem)/.9 var(--f-display);font-variant-numeric:tabular-nums}
.stat--main dd{font-size:clamp(3.5rem,16vw,6rem);color:var(--gold)}
.stat .meter{order:2;display:grid;grid-template-columns:repeat(20,1fr);gap:3px;margin-top:var(--s4);max-width:360px}
.meter i{height:6px;background:var(--line);border-radius:1px}
.meter i.is-on{background:var(--gold)}
.digits{display:inline-flex}
.digit{display:inline-block}
.board__note{margin-top:var(--s4);font-size:.875rem;color:var(--muted);max-width:65ch}
.board__note strong{color:var(--text);font-weight:600}

/* Greens (talões) */
.greens{padding-block:var(--s8) var(--s7)}
.tickets{display:grid;gap:var(--s5) var(--s4);list-style:none;padding:0}
.ticket{position:relative;height:100%;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--s4)}
.ticket__head{display:flex;justify-content:space-between;gap:var(--s2);font:500 .75rem/1.3 var(--f-mono);color:var(--muted);padding-bottom:var(--s3);border-bottom:1px dashed var(--line)}
.ticket__match{font:700 1.5rem/1.1 var(--f-display);text-transform:uppercase;margin:var(--s3) 0 var(--s1)}
.ticket__market{font-size:.9375rem;color:var(--muted)}
.ticket__foot{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;padding-top:var(--s3);border-top:1px dashed var(--line)}
.ticket__market{margin-bottom:var(--s4)}
.ticket__odd{font:500 1.5rem/1 var(--f-mono)}
.ticket__odd span{display:block;font-size:.6875rem;color:var(--muted);text-transform:uppercase;margin-bottom:var(--s1)}
.stamp{font:700 1rem/1 var(--f-display);letter-spacing:.12em;text-transform:uppercase;color:var(--green);border:2px solid var(--green);padding:var(--s1) var(--s2);border-radius:2px;transform:rotate(var(--rot,-6deg))}
.stamp--red{--rot:4deg;color:var(--red);border-color:var(--red)}
.ticket__example{position:absolute;top:-9px;right:var(--s3);background:var(--bg);font:500 .6875rem/1 var(--f-mono);text-transform:uppercase;color:var(--gold);padding:3px 6px;border:1px solid var(--gold-dim);border-radius:2px}
/* Boletins têm alturas muito diferentes: colunas (tipo "masonry") em vez de grelha */
.tickets--slips{display:block;columns:1;column-gap:var(--s4)}
.tickets--slips li{break-inside:avoid;margin-bottom:var(--s4)}
.slip{padding:var(--s3)}
.slip .ticket__head{padding-inline:var(--s1)}
.slip__img{position:relative;display:block;max-height:440px;margin-block:var(--s3);border-radius:2px;overflow:hidden;background:#000}
.slip__img::after{content:"";position:absolute;left:0;right:0;bottom:0;height:56px;background:linear-gradient(transparent,var(--surface));opacity:0;pointer-events:none}
.slip__img.is-tall::after{opacity:1}
.slip__img img{width:100%;height:auto}
.slip__foot{padding-inline:var(--s1);margin-top:0}
.slip__foot a{display:inline-flex;align-items:center;gap:var(--s2);font:500 .8125rem/1 var(--f-mono);text-transform:uppercase;letter-spacing:.04em;color:var(--gold);text-decoration:none}
.slip__foot a:hover{color:var(--gold-hover)}
.slip__foot .icon{width:16px;height:16px}
.greens__more{margin-top:var(--s5);font-size:.9375rem;color:var(--muted)}
.greens__more a{color:var(--text)}

/* Quem somos */
.about{border-top:1px solid var(--line);padding-block:var(--s7)}
.about__text{max-width:62ch}
.about__text p+p{margin-top:var(--s4)}
.about__lead{font:700 clamp(1.5rem,4.5vw,2rem)/1.15 var(--f-display);text-transform:uppercase;color:var(--text);max-width:24ch}
.about__lead+p{margin-top:var(--s5)}
.facts{margin-top:var(--s6);border-top:1px solid var(--line)}
.facts div{display:grid;grid-template-columns:7rem 1fr;gap:var(--s4);padding-block:var(--s3);border-bottom:1px solid var(--line);font-size:.9375rem}
.facts dt{font:500 .75rem/1.9 var(--f-mono);color:var(--muted);text-transform:uppercase}

/* Como funciona */
.steps{padding-block:var(--s7)}
.steps__list{list-style:none;padding:0;display:grid;gap:var(--s5)}
.steps__list li{position:relative;padding-left:var(--s8);max-width:52ch}
.steps__n{position:absolute;left:0;top:-4px;font:700 3rem/1 var(--f-display);color:var(--gold);font-variant-numeric:tabular-nums}
.steps__list h3{font:700 1.5rem/1.1 var(--f-display);text-transform:uppercase;margin-bottom:var(--s2)}
.steps__list p{color:var(--muted)}

/* FAQ */
.faq{padding-block:var(--s7) var(--s8)}
.faq__list{max-width:70ch;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:var(--s4);padding-block:var(--s4);font-weight:600}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:500 1.25rem/1 var(--f-mono);color:var(--gold);transition:transform var(--t)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding-bottom:var(--s4);color:var(--muted)}
.faq details a{color:var(--text)}

/* CTA final */
.cta-final{background:var(--gold);color:var(--on-gold)}
.cta-final__inner{padding-block:var(--s8);display:flex;flex-direction:column;align-items:flex-start;gap:var(--s5)}
.cta-final__title{font:700 clamp(2.25rem,9vw,4.5rem)/.95 var(--f-display);text-transform:uppercase;max-width:16ch}
.cta-final .btn{background:var(--on-gold);color:var(--gold)}
.cta-final .btn:hover{background:#000}
.cta-final :focus-visible{outline-color:var(--on-gold)}

/* Páginas legais */
.legal{padding-block:var(--s7) var(--s8);max-width:calc(68ch + 2 * var(--s4))}
.legal__title,.notfound__title{font:700 clamp(2.25rem,8vw,3.5rem)/1 var(--f-display);text-transform:uppercase;margin:var(--s2) 0 var(--s3)}
.legal__meta{font:500 .8125rem/1.4 var(--f-mono);color:var(--muted);margin-bottom:var(--s6)}
.legal h2{font:700 1.5rem/1.15 var(--f-display);text-transform:uppercase;margin:var(--s6) 0 var(--s3)}
.legal p,.legal li{color:#d6d0c4}
.legal p+p{margin-top:var(--s3)}
.legal ul{padding-left:1.25em;margin-top:var(--s3)}
.legal li+li{margin-top:var(--s2)}
.legal a{color:var(--gold)}
.legal code{font:500 .875em var(--f-mono);color:var(--text)}
.table-wrap{overflow-x:auto;margin-block:var(--s4)}
.legal table{width:100%;min-width:520px;border-collapse:collapse;font-size:.9375rem}
.legal th,.legal td{text-align:left;vertical-align:top;padding:var(--s3);border-bottom:1px solid var(--line)}
.legal th{font:500 .75rem/1.4 var(--f-mono);text-transform:uppercase;color:var(--muted)}

/* 404 */
.notfound{padding-block:var(--s9)}
.notfound__title{font-size:clamp(3rem,14vw,6rem);color:var(--gold)}
.notfound p{color:var(--muted)}


/* Aviso de cookies */
.cookie-note{position:fixed;left:var(--s3);right:var(--s3);bottom:var(--s3);z-index:50;display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3) var(--s4);max-width:560px;padding:var(--s4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 12px 32px -12px rgba(0,0,0,.8);font-size:.875rem;color:var(--muted)}
.cookie-note[hidden]{display:none}
.cookie-note p{flex:1 1 260px}
.cookie-note a{color:var(--text)}

/* Footer */
.site-footer{border-top:1px solid var(--line);padding-block:var(--s6) var(--s7);font-size:.875rem;color:var(--muted)}
.site-footer a{color:var(--text)}
.site-footer__warning{max-width:65ch}
.badge-18{display:inline-block;border:1px solid var(--text);color:var(--text);font:500 .75rem/1.5 var(--f-mono);padding:0 6px;margin-right:var(--s2);border-radius:2px}
.site-footer__nav ul{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);list-style:none;padding:0;margin-block:var(--s5)}
.site-footer__copy{font-family:var(--f-mono);font-size:.75rem}

@media (min-width:600px){
  .tickets--slips{columns:2}
  .tickets{grid-template-columns:repeat(2,1fr)}
  .stats{grid-template-columns:2fr 1fr 1fr 1fr}
  .stat--main{grid-column:auto}
  .stat{padding:var(--s5)}
}

@media (min-width:960px){
  .hero{display:grid;grid-template-columns:7fr 5fr;gap:var(--s7);align-items:end;padding-block:var(--s8) var(--s8)}
  .hero__board{margin-top:0;align-self:center;transform:rotate(.8deg)}
  .flap{font-size:1.25rem}
  .tickets{grid-template-columns:repeat(4,1fr)}
  .tickets--slips{columns:3}
  .about__grid{display:grid;grid-template-columns:5fr 7fr;gap:var(--s7)}
  .steps__list{grid-template-columns:repeat(3,1fr);gap:var(--s6)}
  .steps__list li{padding:var(--s8) 0 0;border-top:1px solid var(--line)}
  .steps__n{top:var(--s4)}
  .steps__list li::after{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left}
  .cta-final__inner{flex-direction:row;align-items:flex-end;justify-content:space-between}
}

/* ==========================================================================
   Movimento - ver .claude/skills/motion-design. Tudo aqui dentro: com
   reduced motion o site fica 100% estático. As classes .is-pending/.is-in
   são postas pelo JS só em elementos que ainda não estão no ecrã.
   ========================================================================== */
@media (prefers-reduced-motion:no-preference){
  @keyframes rise{from{transform:translateY(105%)}}
  @keyframes lift{from{opacity:0;transform:translateY(12px)}}
  @keyframes stamp{
    0%{opacity:0;transform:rotate(calc(var(--rot) - 10deg)) scale(2.4)}
    55%{opacity:1;transform:rotate(var(--rot)) scale(.97)}
    100%{opacity:1;transform:rotate(var(--rot)) scale(1)}
  }
  @keyframes thud{40%{transform:translateY(2px)}}
  @keyframes draw{to{transform:scaleX(1)}}

  /* Hero: o título sobe por detrás da linha, depois o resto */
  .hero__title .line>*{animation:rise .75s var(--ease-out) both}
  .hero__title .line:nth-child(2)>*{animation-delay:.09s}
  .hero__title .line:nth-child(3)>*{animation-delay:.18s}
  .hero__lead,.hero__actions,.hero__fine{animation:lift .6s var(--ease-out) both}
  .hero__lead{animation-delay:.35s}
  .hero__actions{animation-delay:.45s}
  .hero__fine{animation-delay:.55s}

  /* Talões: o carimbo cai sobre o papel, um a um */
  .tickets.is-pending .stamp{opacity:0}
  .tickets.is-in .stamp{animation:stamp .42s var(--ease-out) both}
  .tickets.is-in .ticket{animation:thud .18s ease-out both}
  .tickets.is-in li:nth-child(1) .stamp{animation-delay:.45s}
  .tickets.is-in li:nth-child(2) .stamp{animation-delay:.63s}
  .tickets.is-in li:nth-child(3) .stamp{animation-delay:.81s}
  .tickets.is-in li:nth-child(4) .stamp{animation-delay:.99s}
  .tickets.is-in li:nth-child(1) .ticket{animation-delay:.62s}
  .tickets.is-in li:nth-child(2) .ticket{animation-delay:.8s}
  .tickets.is-in li:nth-child(3) .ticket{animation-delay:.98s}
  .tickets.is-in li:nth-child(4) .ticket{animation-delay:1.16s}

  /* Números: dígitos viram como no placar; a barra acende segmento a segmento */
  .digit.is-flip{animation:flap .09s linear}

  .stats.is-in .meter i.is-on{animation:led .25s var(--ease-out) both;animation-delay:calc(.35s + var(--n) * 45ms)}
  @keyframes led{from{background:var(--line)}60%{background:var(--gold-hover)}to{background:var(--gold)}}

  /* Passos: a linha dourada desenha-se por cima da divisória */
  .steps__list.is-in li::after{animation:draw .7s var(--ease-in-out) forwards}
  .steps__list.is-in li:nth-child(2)::after{animation-delay:.12s}
  .steps__list.is-in li:nth-child(3)::after{animation-delay:.24s}

  /* CTA final */
  .cta-final__inner.is-pending .line>*{transform:translateY(105%)}
  .cta-final__inner.is-in .line>*{animation:rise .75s var(--ease-out) both}
  .cta-final__inner.is-in .line:nth-child(2)>*{animation-delay:.1s}


  /* Logótipo: um brilho de luz passa pelo metal dourado (ao abrir e de vez em quando) */
  .brand__logo::after{content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(105deg,transparent 35%,rgba(255,248,225,.95) 50%,transparent 65%) no-repeat;
    background-size:300% 100%;background-position:130% 0;
    -webkit-mask:url("../img/logo-small.webp") center/contain no-repeat;mask:url("../img/logo-small.webp") center/contain no-repeat;
    animation:glint 9s 1.1s var(--ease-in-out) infinite}
  .brand:hover .brand__logo::after{animation:glint-once .8s var(--ease-in-out)}
  .brand__logo img{transition:transform .3s var(--ease-out)}
  .brand:hover .brand__logo img{transform:rotate(-3deg) scale(1.04)}
  @keyframes glint{0%{background-position:130% 0}11%,100%{background-position:-30% 0}}
  @keyframes glint-once{from{background-position:130% 0}to{background-position:-30% 0}}

  /* Ponto "ao vivo" */
  .live-dot::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--green);animation:ping 2.4s var(--ease-out) infinite}
  @keyframes ping{0%{transform:scale(1);opacity:.7}70%,100%{transform:scale(2.8);opacity:0}}

  /* Faixa de resultados: só anda quando o JS a liga (e há botão de pausa) */
  .ticker.is-running .ticker__track{animation:ticker 48s linear infinite}
  .ticker.is-running:hover .ticker__track,.ticker.is-paused .ticker__track{animation-play-state:paused}
  @keyframes ticker{to{transform:translateX(-50%)}}

  /* Revelação discreta ao scroll (títulos e blocos de texto) */
  [data-reveal="up"].is-pending{opacity:0;transform:translateY(18px)}
  [data-reveal="up"].is-in{animation:lift .7s var(--ease-out) both}
  .sec-title[data-reveal].is-in{animation-delay:.08s}
  .stats.is-pending{opacity:0;transform:translateY(18px)}
  .stats.is-in{animation:lift .6s var(--ease-out) both}
  .tickets.is-pending li{opacity:0;transform:translateY(24px)}
  .tickets.is-in li{animation:lift .6s var(--ease-out) both}
  .tickets.is-in li:nth-child(2){animation-delay:.1s}
  .tickets.is-in li:nth-child(3){animation-delay:.2s}
  .tickets.is-in li:nth-child(4){animation-delay:.3s}
  .steps__list.is-pending li{opacity:0;transform:translateY(18px)}
  .steps__list.is-in li{animation:lift .6s var(--ease-out) both}
  .steps__list.is-in li:nth-child(2){animation-delay:.1s}
  .steps__list.is-in li:nth-child(3){animation-delay:.2s}

  /* Placar do hero a flutuar, muito ligeiro */
  .hero__board .flapboard{animation:float 6s ease-in-out infinite}
  @keyframes float{50%{transform:translateY(-6px)}}

  /* Aviso de cookies: sobe do fundo, sai a descer */
  .cookie-note{animation:lift .5s .8s var(--ease-out) both}
  .cookie-note.is-leaving{animation:drop .25s ease-in forwards}
  @keyframes drop{to{opacity:0;transform:translateY(16px)}}

  /* Microinterações */
  .btn{transition:background-color var(--t),transform var(--t)}
  .btn:active{transform:translateY(1px)}
  .btn .icon{transition:transform .2s var(--ease-out)}
  .btn:hover .icon{transform:translate(2px,-2px)}
  .ticket{transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out),border-color .2s}
  .ticket:hover{transform:translateY(-3px);box-shadow:0 3px 0 var(--line);border-color:#3b362c}
  .slip__img img{transition:transform .4s var(--ease-out)}
  .slip:hover .slip__img img{transform:scale(1.02)}
  .slip__foot a .icon{transition:transform .2s var(--ease-out)}
  .slip__foot a:hover .icon{transform:translateX(3px)}

  /* FAQ: resposta abre suavemente (browsers sem suporte abrem de imediato) */
  .faq details::details-content{block-size:0;overflow:hidden;transition:block-size .3s var(--ease-out),content-visibility .3s allow-discrete}
  .faq details[open]::details-content{block-size:auto}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:0s;animation-duration:0s}
  .btn,.link-quiet,.faq summary::after,.flapboard__market,.flapboard__pips i{transition:none}
}
