/* Página de case — invertida no escuro. Laranja liberado só aqui. */
body.case{background:var(--ink);color:var(--paper)}
/* variante Fórmula Truck: accent verde de pista (cor da identidade) */
body.case.ft{--orange:#9ee94a}
/* variante Frota Lucrativa: laranja (cor do evento) */
body.case.fl{--orange:#ff6a00}
/* variante FolhArt: verde da marca */
body.case.fh{--orange:#3bbf63}
/* variante Formação Intensiva (FIG) */
body.case.fig{--orange:#1faa55}
/* variante Ecodiesel */
body.case.eco{--orange:#2fae5f}

/* LPs entregues (cards) */
.fl-links{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(14px,2vw,24px);margin-top:2.5rem}
.fl-link{display:block;border:1px solid rgba(243,241,236,.16);border-radius:12px;padding:clamp(22px,3vw,34px);transition:border-color .25s,transform .4s var(--ease)}
.fl-link:hover{border-color:var(--orange);transform:translateY(-3px)}
.fl-link__k{font-family:var(--mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--orange)}
.fl-link__t{font-size:1.2rem;font-weight:700;margin:.5rem 0 .3rem}
.fl-link__u{font-family:var(--mono);font-size:.72rem;color:rgba(243,241,236,.5);word-break:break-all}

/* criativos de tráfego em movimento (marquee, sem destaque) */
.fl-marquee{margin-top:2.5rem;overflow:hidden;border-block:1px solid rgba(243,241,236,.14);padding:18px 0}
.fl-track{display:inline-flex;gap:14px;white-space:nowrap;will-change:transform;animation:flscroll 45s linear infinite}
.fl-marquee:hover .fl-track{animation-play-state:paused}
@keyframes flscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.fl-tile{position:relative;flex:0 0 auto;height:300px;border-radius:10px;overflow:hidden;background:#0c0e14}
.fl-tile img{display:block;height:100%;width:auto}
.fl-tile img.missing{display:none}
.fl-tile span{position:absolute;left:0;right:0;bottom:0;padding:18px 10px 8px;font-family:var(--mono);font-size:.6rem;text-transform:uppercase;letter-spacing:.04em;color:rgba(243,241,236,.85);line-height:1.4;background:linear-gradient(transparent,rgba(0,0,0,.65))}

/* prévia do site (mockup de browser) */
.fl-frame{margin-top:2.5rem;border:1px solid rgba(243,241,236,.16);border-radius:12px;overflow:hidden;background:#0c0e14}
.fl-frame__bar{display:flex;gap:7px;align-items:center;padding:11px 15px;border-bottom:1px solid rgba(243,241,236,.12)}
.fl-frame__bar i{width:10px;height:10px;border-radius:50%;background:rgba(243,241,236,.22)}
.fl-frame__bar span{margin-left:10px;font-family:var(--mono);font-size:.66rem;color:rgba(243,241,236,.42)}
.fl-frame__view{max-height:560px;overflow-y:auto;background:#fff}
.fl-frame__view img{width:100%;display:block}

/* vídeos (assistíveis) */
.fl-videos{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,24px);margin-top:2.5rem}
.fl-video{position:relative;border-radius:12px;overflow:hidden;background:#0c0e14;aspect-ratio:9/16}
.fl-video video{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;display:block;background:transparent}
.fl-video__ph{position:absolute;inset:0;z-index:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;border:1px dashed rgba(243,241,236,.18);border-radius:12px;text-align:center;padding:1rem}
.fl-video__ph b{font-size:1.5rem;color:var(--orange)}
.fl-video__ph span{font-family:var(--mono);font-size:.64rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(243,241,236,.42);line-height:1.6}
@media(max-width:860px){.fl-videos{grid-template-columns:1fr 1fr}.fl-links{grid-template-columns:1fr}}

/* layouts de apresentação por projeto (caixa com a cor de fundo da marca) */
.art-stage{margin-top:2.5rem;padding:clamp(16px,3vw,42px);border-radius:14px}
.art-scroll{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,22px)}
.art-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(12px,1.6vw,22px);align-items:start}
.art-feature{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,22px)}
.art-feature__rest{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(12px,1.6vw,22px);align-items:start}
.art-stage img{width:100%;height:auto;display:block;border-radius:8px}
@media(max-width:760px){.art-grid,.art-feature__rest{grid-template-columns:1fr}}

/* visualizador tela por tela (carrossel) */
.deck{margin-top:2.5rem}
.deck__viewport{overflow:hidden;border-radius:12px;background:#0c0e14}
.deck__track{display:flex;transition:transform .6s var(--ease)}
.deck__slide{flex:0 0 100%;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center}
.deck__slide img{width:100%;height:100%;object-fit:contain;display:block}
.deck__nav{display:flex;align-items:center;gap:1.2rem;margin-top:1.1rem;justify-content:center}
.deck__btn{font-family:var(--mono);font-size:1rem;width:46px;height:46px;border-radius:50%;border:1px solid rgba(243,241,236,.25);background:none;color:var(--paper);cursor:pointer;transition:border-color .2s,color .2s}
.deck__btn:hover{border-color:var(--orange);color:var(--orange)}
.deck__count{font-family:var(--mono);font-size:.8rem;letter-spacing:.05em;color:rgba(243,241,236,.6);min-width:92px;text-align:center}

/* crédito de fotos */
.ft-credit{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--orange);margin-top:1rem}

/* galeria de aplicação (mockups) */
.ft-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,28px);margin-top:2.5rem;align-items:start}
.ft-gallery figure{border-radius:12px;overflow:hidden;background:#0c0e14}
.ft-gallery img{display:block;width:100%;height:auto;transition:transform .9s var(--ease)}
.ft-gallery figure:hover img{transform:scale(1.03)}
/* logos/selos: respiro num painel */
.ft-gallery figure.mark{background:#0b0d13;display:flex;align-items:center;justify-content:center;padding:12%}
.ft-gallery figure.mark img{width:100%;height:auto}
/* fotos do evento (slots) */
.ft-shots{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(14px,2vw,28px);margin-top:2.5rem}
.ft-slot{position:relative;overflow:hidden;border:1px dashed rgba(243,241,236,.2);border-radius:12px;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;text-align:center;padding:1.5rem}
.ft-slot span{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:rgba(243,241,236,.4)}
.ft-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ft-slot img.missing{display:none}
@media(max-width:860px){.ft-gallery{grid-template-columns:1fr}.ft-shots{grid-template-columns:1fr}}
body.case .nav{color:#fff}
.case .label{color:rgba(243,241,236,.55)}
.case .label span{color:var(--orange)}
.case a.back{border-bottom:1px solid currentColor}

.cs-hero{padding:160px 0 clamp(50px,8vh,100px)}
.cs-hero__meta{display:flex;gap:2rem;flex-wrap:wrap;font-family:var(--mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(243,241,236,.55);margin-bottom:2rem}
.cs-hero__meta b{color:var(--paper);font-weight:500}
.cs-title{font-size:clamp(2.6rem,9vw,8rem);font-weight:800;text-transform:uppercase;letter-spacing:-.03em;line-height:.92}
.cs-title .o{color:var(--orange)}
.cs-lead{max-width:50ch;font-size:clamp(1.1rem,2vw,1.6rem);color:rgba(243,241,236,.8);margin-top:2rem;font-weight:500}

.cs-section{padding:clamp(50px,8vh,110px) 0;border-top:1px solid rgba(243,241,236,.14)}
.cs-section__n{font-family:var(--mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--orange);margin-bottom:1.5rem}
.cs-h2{font-size:clamp(1.8rem,4.5vw,3.4rem);font-weight:800;letter-spacing:-.02em;line-height:1.02;max-width:20ch}
.cs-body{max-width:60ch;color:rgba(243,241,236,.78);font-size:1.15rem;margin-top:1.5rem}
.cs-body p{margin-bottom:1.1rem}
.cs-body strong{color:var(--paper)}

/* destaque oferta */
.cs-offer{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,48px);margin-top:2.5rem}
.cs-offer__box{border:1px solid rgba(243,241,236,.16);border-radius:14px;padding:clamp(28px,4vw,48px)}
.cs-offer__price{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;letter-spacing:-.03em;line-height:1}
.cs-offer__price s{color:rgba(243,241,236,.4);text-decoration-thickness:2px}
.cs-offer__price b{color:var(--orange)}
.cs-offer__lbl{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(243,241,236,.55);margin-top:1rem}

/* etapas do mecanismo */
.cs-steps{counter-reset:step;margin-top:2.5rem;display:grid;gap:1px;background:rgba(243,241,236,.14);border:1px solid rgba(243,241,236,.14);border-radius:14px;overflow:hidden}
.cs-step{background:var(--ink);padding:clamp(24px,3vw,40px);display:flex;gap:1.5rem;align-items:flex-start}
.cs-step::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:var(--mono);font-size:.85rem;color:var(--orange);padding-top:.3rem}
.cs-step h3{font-size:1.3rem;font-weight:700;letter-spacing:-.01em;margin-bottom:.4rem}
.cs-step p{color:rgba(243,241,236,.7)}

/* classificação quente/morno/frio */
.cs-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px);margin-top:2.5rem}
.cs-tier{border:1px solid rgba(243,241,236,.16);border-radius:14px;padding:clamp(24px,3vw,36px)}
.cs-tier__dot{width:12px;height:12px;border-radius:50%;display:inline-block;margin-bottom:1rem}
.cs-tier h4{font-size:1.2rem;font-weight:700;margin-bottom:.5rem}
.cs-tier p{color:rgba(243,241,236,.7);font-size:.98rem}
.cs-tier--hot .cs-tier__dot{background:var(--orange)}
.cs-tier--warm .cs-tier__dot{background:#ffd23c}
.cs-tier--cold .cs-tier__dot{background:#4b8bff}

/* prova */
.cs-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,48px);margin-top:2.5rem}
.cs-proof__num{font-size:clamp(2.2rem,5vw,4rem);font-weight:800;letter-spacing:-.03em;line-height:1}
.cs-proof__lbl{font-family:var(--mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(243,241,236,.55);margin-top:.6rem;max-width:24ch}

/* meu papel */
.cs-role{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2rem}
.cs-role span{font-family:var(--mono);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;border:1px solid rgba(243,241,236,.2);border-radius:100px;padding:.5em 1.1em}

/* foto flavio */
.cs-figure{margin-top:2.5rem;border-radius:14px;overflow:hidden;max-width:520px}
.cs-figure img{width:100%;height:auto}
.cs-figure figcaption{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(243,241,236,.5);margin-top:.8rem}

/* CTA final */
.cs-cta{padding:clamp(60px,10vh,140px) 0;text-align:center;border-top:1px solid rgba(243,241,236,.14)}
.cs-cta h2{font-size:clamp(2rem,6vw,5rem);font-weight:800;letter-spacing:-.03em;line-height:.95;margin-bottom:2rem}
.cs-cta__nav{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:clamp(50px,8vh,100px);font-family:var(--mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(243,241,236,.55)}
.cs-cta__nav a{color:var(--paper);border-bottom:1px solid currentColor;padding-bottom:3px}

.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal.in{opacity:1;transform:none}

@media (max-width:860px){
  .cs-offer,.cs-tiers,.cs-proof{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}
