/* Do Gesto à Fala — CInCo
   Paleta e fontes da versão aprovada (teal #318182, estrela #f4c24f, Baloo 2 + Lexend).
   Movimento: palavras flutuando, reticências "digitando", ondas de som, faixa corrida,
   caminho que se desenha ao rolar. Tudo desliga com "reduzir movimento". */
:root{
  --teal:#318182; --teal-deep:#1d5657; --teal-ink:#123c3d; --teal-lite:#7cc6c2;
  --mint:#e5f1ef; --paper:#fbfdfc; --ink:#173233; --muted:#4f6b6b;
  --line:#cfe2df; --star:#f4c24f; --star-ink:#5a4208; --coral:#f28c74; --sky:#9fd3e6; --rose:#f2a7b8;
  --c-rosa:#ff9ad8; --c-roxo:#5b4ced; --c-laranja:#feaa72; --c-amarelo:#fafb98; --c-verde:#2f8281;
  --wa:#1fae55; --wa-hover:#18994a; --card:#ffffff; --on-teal:#ffffff; --on-teal-soft:#d6ecea;
  --display:"Baloo 2","Trebuchet MS",system-ui,sans-serif;
  --body:"Lexend",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:20px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --mint:#14292a; --paper:#0d1c1d; --ink:#e3f0ee; --muted:#9dbab7; --line:#24413f;
  --card:#132627; --teal-ink:#bfe3df; color-scheme:dark;
}}
:root[data-theme="dark"]{
  --mint:#14292a; --paper:#0d1c1d; --ink:#e3f0ee; --muted:#9dbab7; --line:#24413f;
  --card:#132627; --teal-ink:#bfe3df; color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3{font-family:var(--display);line-height:1.02;margin:0;text-wrap:balance;font-weight:800}
p{margin:0}
a{color:inherit}
img{max-width:100%}
.wrap{max-width:1160px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--star);outline-offset:3px;border-radius:8px}
.ico{width:1em;height:1em;flex:none}

/* ---------- botões ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6em;font-family:var(--body);font-weight:600;font-size:1.05rem;text-decoration:none;border-radius:999px;padding:1em 1.6em;border:0;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease;line-height:1.2;text-align:center;min-height:48px}
.btn svg{width:1.35em;height:1.35em;flex:none}
.btn-wa{background:var(--wa);color:#fff;box-shadow:0 12px 28px -10px rgba(16,90,45,.75);overflow:hidden}
.btn-wa:hover{background:var(--wa-hover);transform:translateY(-2px)}
.btn-wa::after,.btn-pay::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.35) 50%,transparent 60%) no-repeat;background-size:300% 100%;background-position:100% 0;animation:brilho 4.5s ease-in-out infinite 1.5s}
.btn-pay::after{background-image:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.6) 50%,transparent 60%);animation-delay:.6s}
@keyframes brilho{0%,55%{background-position:100% 0}80%,100%{background-position:0 0}}
.btn-pay{background:var(--star);color:var(--star-ink);box-shadow:0 14px 30px -12px rgba(120,84,0,.75);overflow:hidden}
.btn-pay:hover{background:#ffd264;transform:translateY(-2px)}
.btn-duas{text-align:left;padding-block:.75em}
.btn-duas > span{display:flex;flex-direction:column;line-height:1.15}
.btn-duas small{font-size:.78rem;font-weight:500;opacity:.85;margin-top:3px}
.wa-link{align-self:flex-start;display:inline-flex;align-items:center;gap:.5em;min-height:44px;color:var(--on-teal-soft);font-size:.92rem;text-decoration:none}
.wa-link svg{width:22px;height:22px;color:#4fe08a;flex:none}
.wa-link b{color:#fff;text-decoration:underline;text-underline-offset:3px;font-weight:600}
.wa-link:hover b{color:var(--star)}
.wa-link.escuro{color:var(--muted);align-self:center}
.wa-link.escuro svg{color:var(--wa)}
.wa-link.escuro b{color:var(--teal-ink)}
.btn-ghost{background:transparent;color:var(--on-teal);box-shadow:inset 0 0 0 2px rgba(255,255,255,.55)}
.btn-ghost:hover{background:rgba(255,255,255,.1)}
.btn-outline{background:transparent;color:var(--teal-ink);box-shadow:inset 0 0 0 2px var(--teal)}
.btn-outline:hover{background:var(--mint)}
.btn-outline .wa-ico{color:var(--wa)}
.btn-block{width:100%}
.btn-big{font-size:1.15rem;padding:1.1em 2em}

/* ---------- topo ---------- */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:41;background:var(--teal-deep)}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:rgba(29,86,87,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--on-teal);border-bottom:1px solid rgba(255,255,255,.08)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:10px}
.top .marca{width:140px;height:auto;display:block}
.top-marcas{display:flex;align-items:center;gap:14px;min-width:0}
.top-sep{width:1px;height:34px;background:rgba(255,255,255,.3)}
.top .cinco-logo{width:118px;height:auto;display:block}
.top-meta{font-size:.85rem;color:var(--on-teal-soft);display:flex;gap:16px;align-items:center}
.top-meta strong{color:#fff;font-weight:600}
.top .btn{padding:.55em 1.1em;font-size:.9rem;min-height:44px}

/* ---------- herói ---------- */
.hero{position:relative;overflow:hidden;color:var(--on-teal);background:radial-gradient(110% 90% at 80% 15%,#46a3a3 0%,var(--teal) 42%,var(--teal-deep) 100%)}
.hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.12) 1.4px,transparent 1.6px);background-size:26px 26px;-webkit-mask:linear-gradient(to bottom,#000 0%,transparent 85%);mask:linear-gradient(to bottom,#000 0%,transparent 85%);pointer-events:none}
.hero-bigword{position:absolute;left:-2%;bottom:-.18em;font-family:var(--display);font-weight:800;font-size:clamp(7rem,19vw,17rem);line-height:1;color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.09);white-space:nowrap;pointer-events:none;animation:deriva 38s linear infinite alternate;user-select:none}
@keyframes deriva{to{transform:translateX(-18%)}}
.hero .wrap{display:grid;grid-template-columns:1.02fr .98fr;gap:20px;align-items:end;position:relative;z-index:1}
.hero-copy{padding-block:56px 76px;display:flex;flex-direction:column;gap:22px;min-width:0}
.tag{display:inline-flex;align-self:flex-start;align-items:center;gap:10px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);padding:.5em 1em;border-radius:999px}
.nome-marca{text-transform:none;letter-spacing:.03em}
.nw{white-space:nowrap}
.tag .dots{display:inline-flex;gap:3px}
.dots i{width:6px;height:6px;border-radius:50%;background:var(--star);display:block;animation:pulo 1.2s ease-in-out infinite}
.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}
@keyframes pulo{0%,60%,100%{transform:translateY(0);opacity:.55}30%{transform:translateY(-5px);opacity:1}}
.hero h1{margin:2px 0}
.hero h1 img{display:block;width:min(100%,560px);height:auto;filter:drop-shadow(0 10px 24px rgba(8,40,40,.3))}
.lead{font-size:1.18rem;max-width:36ch;color:var(--on-teal-soft)}
.lead strong{color:#fff;font-weight:600}
.facts{display:grid;grid-template-columns:repeat(3,auto);gap:10px 26px;justify-content:start;padding:18px 0;border-top:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22)}
.fact small{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--on-teal-soft)}
.fact b{font-family:var(--display);font-size:1.45rem;font-weight:700;line-height:1.1;display:block}
.fact em{font-style:normal;font-size:.85rem;color:var(--on-teal-soft)}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}
.micro{font-size:.88rem;color:var(--on-teal-soft);display:flex;align-items:center;gap:8px}
.micro svg{width:18px;height:18px;flex:none}

/* palco da foto */
.stage{position:relative;align-self:end;display:flex;justify-content:center;min-width:0;min-height:560px}
.stage .foto{position:relative;z-index:2;width:min(100%,500px);height:auto;display:block;filter:drop-shadow(0 26px 40px rgba(8,36,36,.45));transition:transform .4s ease-out}
.ondas{position:absolute;z-index:0;left:50%;top:38%;width:min(92%,470px);aspect-ratio:1;transform:translate(-50%,-50%)}
.ondas span{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(255,255,255,.22);animation:onda 4.8s ease-out infinite}
.ondas span:nth-child(2){animation-delay:1.6s}.ondas span:nth-child(3){animation-delay:3.2s}
@keyframes onda{0%{transform:scale(.55);opacity:0}15%{opacity:1}100%{transform:scale(1.25);opacity:0}}
.disco{position:absolute;z-index:1;left:50%;top:40%;width:min(80%,400px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.22),rgba(255,255,255,.06) 60%);border:2px dashed rgba(255,255,255,.28);animation:gira 60s linear infinite}
@keyframes gira{to{transform:translate(-50%,-50%) rotate(360deg)}}

/* palavras flutuantes */
.flutua{position:absolute;z-index:3;pointer-events:none}
.palavra{display:inline-flex;align-items:center;gap:.4em;font-family:var(--display);font-weight:700;font-size:1.05rem;line-height:1;padding:.55em .95em .5em;border-radius:16px 16px 16px 4px;background:#fff;color:var(--teal-deep);box-shadow:0 14px 26px -14px rgba(0,0,0,.5);white-space:nowrap}
.palavra.am{background:var(--star);color:var(--star-ink)}
.palavra.vd{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.palavra.es{background:var(--teal-ink);color:#fff;border:1px solid rgba(255,255,255,.25)}
.palavra.dir{border-radius:16px 16px 4px 16px}
.boia{animation:boia 6s ease-in-out infinite}
.boia.b2{animation-duration:7.2s;animation-delay:-2s}
.boia.b3{animation-duration:5.4s;animation-delay:-3.5s}
.boia.b4{animation-duration:8s;animation-delay:-1s}
@keyframes boia{0%,100%{transform:translate(0,0) rotate(-1.5deg)}50%{transform:translate(4px,-12px) rotate(1.5deg)}}
.f1{left:0;top:16%}.f2{right:0;top:9%}.f3{left:3%;top:52%}.f4{right:1%;top:44%}.f5{right:10%;bottom:27%}.f6{left:14%;top:2%}
.fig{position:absolute;z-index:3;pointer-events:none;color:var(--star)}
.fig svg{display:block;width:100%;height:100%}
.g1{width:34px;height:34px;left:22%;top:30%}
.g2{width:48px;height:62px;right:5%;top:24%;color:var(--rose)}
.g3{width:58px;height:36px;left:8%;top:38%;color:#fff;opacity:.85}
.g4{width:26px;height:26px;right:22%;top:3%;color:var(--sky)}

/* balão digitando (reticências) */
.digita{position:absolute;z-index:4;left:6%;bottom:16%;background:#fff;color:var(--teal-deep);border-radius:18px 18px 18px 4px;padding:12px 18px;box-shadow:0 18px 34px -14px rgba(0,0,0,.5);min-width:150px}
.digita small{display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
.digita b{font-family:var(--display);font-size:1.35rem;font-weight:800;line-height:1.15;display:block;min-height:1.15em}
.digita .dots i{background:var(--teal)}
.name-card{position:absolute;z-index:4;right:2%;bottom:9%;background:var(--teal-ink);color:#fff;border-radius:14px;padding:12px 16px;box-shadow:0 14px 30px -12px rgba(0,0,0,.5);line-height:1.2;border:1px solid rgba(255,255,255,.18)}
.name-card b{font-family:var(--display);font-size:1.3rem;display:block;font-weight:800}
.name-card span{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--on-teal-soft)}

/* ---------- faixa corrida ---------- */
.faixa{background:var(--star);color:var(--star-ink);overflow:hidden;border-block:1px solid rgba(90,66,8,.15);position:relative;z-index:2}
.faixa .trilho{display:flex;width:max-content;animation:corre 32s linear infinite}
.faixa ul{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:14px 14px;font-family:var(--display);font-weight:800;font-size:1.35rem;white-space:nowrap}
.faixa li{display:flex;align-items:center;gap:28px}
.faixa li::after{content:"";width:12px;height:12px;background:var(--teal-deep);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
@keyframes corre{to{transform:translateX(-50%)}}

/* ---------- contagem ---------- */
.countbar{background:var(--teal-ink);color:#fff}
:root[data-theme="dark"] .countbar{background:#08292a}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .countbar{background:#08292a}}
.countbar .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 28px;padding-block:18px;text-align:center}
.count{display:flex;gap:8px;font-variant-numeric:tabular-nums}
.count div{min-width:60px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:7px 8px}
.count b{font-family:var(--display);font-size:1.7rem;display:block;line-height:1}
.count small{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;opacity:.75}
.count .seg b{color:var(--star)}
.countbar p{font-size:.95rem}
.countbar p strong{color:var(--star)}

/* ---------- seções ---------- */
section{padding-block:92px;position:relative}
.sec-head{display:flex;flex-direction:column;gap:14px;max-width:740px;margin-bottom:46px}
.sec-head .eyebrow{color:var(--teal)}
:root[data-theme="dark"] .sec-head .eyebrow,:root[data-theme="dark"] .eb{color:var(--teal-lite)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .sec-head .eyebrow,:root:not([data-theme="light"]) .eb{color:var(--teal-lite)}}
.sec-head h2{font-size:clamp(2.1rem,4.6vw,3.4rem);color:var(--teal-ink)}
.sec-head p{color:var(--muted);font-size:1.08rem;max-width:60ch}
.alt{background:var(--mint)}
.marca-texto{background:linear-gradient(transparent 62%,rgba(244,194,79,.55) 62%);padding:0 .08em}

/* figuras soltas nas seções */
.solta{position:absolute;pointer-events:none;color:var(--teal);opacity:.22}
.solta svg{display:block;width:100%;height:100%}
.s-a{width:120px;height:120px;right:4%;top:60px}
.s-b{width:70px;height:90px;left:3%;bottom:70px;color:var(--rose);opacity:.5}
.s-c{width:90px;height:56px;right:8%;bottom:40px;color:var(--sky);opacity:.6}

/* ---------- dores ---------- */
.pains{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.pain{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px 26px 24px;display:flex;flex-direction:column;gap:14px;min-width:0;transition:transform .25s ease,box-shadow .25s ease,border-color .25s}
.pain:hover{transform:translateY(-4px);box-shadow:0 26px 40px -30px rgba(29,86,87,.6);border-color:var(--teal)}
.pain .bal{width:44px;height:34px;color:var(--teal)}
.pain q{font-family:var(--display);font-weight:700;font-size:1.4rem;line-height:1.2;color:var(--teal-ink);quotes:"“" "”"}
.pain .ans{color:var(--teal);font-weight:600;font-size:.95rem;display:flex;gap:8px;align-items:flex-start}
:root[data-theme="dark"] .pain .ans{color:var(--teal-lite)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .pain .ans{color:var(--teal-lite)}}
.pain .ans svg{width:18px;height:18px;flex:none;margin-top:3px}
.bridge{margin-top:36px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;background:var(--teal);color:#fff;border-radius:var(--r);padding:30px 34px;position:relative;overflow:hidden}
.bridge::before{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;border:2px dashed rgba(255,255,255,.25)}
.bridge-cta{display:flex;flex-wrap:wrap;gap:12px;position:relative}
.bridge p{font-family:var(--display);font-size:1.6rem;font-weight:700;line-height:1.15;max-width:28ch;position:relative}

/* ---------- caminho (olhar → palavra) ---------- */
.caminho{background:var(--teal-deep);color:#fff;overflow:hidden}
.caminho .sec-head h2{color:#fff}
.caminho .sec-head .eyebrow{color:var(--star)}
.caminho .sec-head p{color:var(--on-teal-soft)}
.trilha{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.trilha .linha{position:absolute;left:12.5%;right:12.5%;top:58px;height:4px;border-radius:4px;background:rgba(255,255,255,.14);overflow:hidden}
.trilha .linha i{position:absolute;inset:0;background:linear-gradient(90deg,var(--teal-lite),var(--star));transform-origin:left;transform:scaleX(1)}
.passo{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;min-width:0}
.passo .disc{width:118px;height:118px;border-radius:50%;display:grid;place-items:center;background:var(--teal);border:3px solid rgba(255,255,255,.2);box-shadow:0 20px 40px -20px rgba(0,0,0,.6);transition:transform .4s ease,background .4s}
.passo .disc svg{width:58px;height:58px;color:#fff}
.passo:hover .disc{transform:scale(1.06) rotate(-4deg)}
.passo.fim .disc{background:var(--star);border-color:#fff}
.passo.fim .disc svg{color:var(--star-ink)}
.passo b{font-family:var(--display);font-size:1.7rem;font-weight:800;line-height:1}
.passo p{font-size:.92rem;color:var(--on-teal-soft);max-width:24ch}
.passo .n{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--star);font-weight:600}
@supports (animation-timeline: view()){
  .trilha .linha i{animation:enche linear both;animation-timeline:view();animation-range:entry 20% cover 55%}
  @keyframes enche{from{transform:scaleX(0)}to{transform:scaleX(1)}}
}

/* ---------- programação ---------- */
.prog{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.timeline li{display:grid;grid-template-columns:76px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}
.timeline li:first-child{border-top:1px solid var(--line)}
.timeline li.destaque{background:linear-gradient(90deg,rgba(244,194,79,.22),transparent 80%);border-radius:12px;padding-left:12px;margin-left:-12px}
.min{font-family:var(--display);font-weight:800;font-size:1.5rem;color:var(--teal);line-height:1;font-variant-numeric:tabular-nums}
.min small{display:block;font-family:var(--body);font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.timeline h3{font-family:var(--body);font-weight:600;font-size:1.05rem;line-height:1.35;color:var(--ink)}
.timeline p{color:var(--muted);font-size:.93rem;margin-top:4px}
.bar{display:flex;height:12px;border-radius:999px;overflow:hidden;margin-top:22px;gap:3px}
.bar span{background:var(--teal);opacity:.35;transform-origin:left}
.bar span:nth-child(3){opacity:1;background:var(--star)}
.bar .w20{flex:20}.bar .w35{flex:35}.bar .w25{flex:25}.bar .w10{flex:10}
.bar-cap{font-size:.82rem;color:var(--muted);margin-top:8px}
.daily{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:30px;display:flex;flex-direction:column;gap:18px;position:relative;overflow:hidden}
.daily h3{font-size:1.7rem;color:var(--teal-ink)}
.daily .muted{color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{display:inline-flex;align-items:center;gap:.45em;background:var(--mint);color:var(--teal-ink);padding:.5em 1em;border-radius:12px;font-weight:500;font-size:.95rem;transition:transform .2s,background .2s}
.chip svg{width:18px;height:18px;color:var(--teal)}
.chip:hover{transform:translateY(-3px) rotate(-1.5deg);background:var(--star);color:var(--star-ink)}
.forwho{border-top:1px dashed var(--line);padding-top:18px;color:var(--muted);font-size:.95rem}
.forwho strong{color:var(--ink);font-weight:600}

/* ---------- especialista ---------- */
.expert{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center}
.moldura{position:relative;max-width:460px;width:100%;justify-self:center}
.moldura .arco{border-radius:999px 999px 28px 28px;overflow:hidden;background:var(--teal);aspect-ratio:1200/1360;box-shadow:0 40px 70px -40px rgba(18,60,61,.7)}
.moldura .arco img{width:100%;height:100%;object-fit:cover;display:block}
.moldura::before{content:"";position:absolute;inset:-14px;border-radius:999px 999px 36px 36px;border:2px dashed var(--teal);opacity:.4;z-index:-1}
.moldura .fig{color:var(--star)}
.m1{width:44px;height:44px;left:-18px;top:22%}
.m2{width:54px;height:70px;right:-22px;top:12%;color:var(--rose)!important}
.m3{width:76px;height:46px;right:-30px;bottom:18%;color:var(--sky)!important}
.moldura .digita{left:auto;right:-10px;bottom:-18px}
.expert-copy{display:flex;flex-direction:column;gap:18px;min-width:0}
.expert-copy .eb{color:var(--teal)}
.expert-copy .btn-q{align-self:flex-start}
.expert-copy h2{font-size:clamp(2.4rem,5vw,3.6rem);color:var(--teal-ink)}
.expert-copy p{color:var(--muted);font-size:1.06rem;max-width:58ch}
.pull{font-family:var(--display);font-weight:700;font-size:1.6rem!important;line-height:1.2;color:var(--teal-ink)!important;border-left:4px solid var(--star);padding-left:18px}
.with{display:flex;gap:14px;align-items:center;background:var(--mint);border-radius:14px;padding:14px 18px;font-size:.95rem;color:var(--ink)}
.with svg{width:34px;height:34px;color:var(--teal);flex:none}
.with b{color:var(--ink)}

/* ---------- chamada on-line (início e fechamento) ---------- */
.online-chamada{display:flex;align-items:center;gap:14px;text-decoration:none;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);border-radius:18px;padding:12px 12px 12px 14px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .2s,transform .2s;max-width:620px}
.online-chamada:hover{background:rgba(255,255,255,.2);transform:translateY(-2px)}
.oc-ico{position:relative;flex:none;width:60px;height:52px;border-radius:14px;background:#fff;color:var(--teal-deep);display:grid;place-items:center}
.oc-ico svg{width:30px;height:30px}
.ao-vivo{position:absolute;bottom:-7px;left:0;right:0;margin:0 auto;width:max-content;font-style:normal;font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:#e04e29;color:#fff;border-radius:6px;padding:1px 5px;white-space:nowrap}
.oc-txt{flex:1;min-width:0;font-size:.92rem;line-height:1.4;color:var(--on-teal-soft)}
.oc-txt b{color:#fff;font-weight:600;display:block;font-size:1rem}
.oc-btn{flex:none;display:inline-flex;align-items:center;gap:.5em;background:var(--wa);color:#fff;font-weight:600;font-size:.9rem;border-radius:999px;padding:.75em 1.1em;min-height:44px;white-space:nowrap}
.oc-btn svg{width:1.25em;height:1.25em}
.online-chamada.fecho{margin-top:6px;text-align:left}

/* ---------- destaque on-line (faixa do meio) ---------- */
.online-faixa{background:var(--paper);overflow:hidden}
.of-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.of-tela{position:relative;display:flex;flex-direction:column;align-items:center}
.of-moldura{position:relative;width:100%;max-width:440px;aspect-ratio:16/10;border-radius:20px;background:radial-gradient(110% 90% at 80% 15%,#46a3a3 0%,var(--teal) 45%,var(--teal-deep) 100%);border:10px solid #16302f;box-shadow:0 40px 70px -40px rgba(18,60,61,.8);display:grid;place-items:center;overflow:hidden}
.of-moldura img{width:62%;height:auto;position:relative;z-index:1}
.of-vivo{position:absolute;top:12px;left:12px;z-index:2;display:inline-flex;align-items:center;gap:6px;background:#e04e29;color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.1em;border-radius:6px;padding:4px 8px}
.of-vivo i{width:7px;height:7px;border-radius:50%;background:#fff;animation:pisca 1.4s ease-in-out infinite}
@keyframes pisca{50%{opacity:.25}}
.of-ondas{position:absolute;inset:0;display:grid;place-items:center}
.of-ondas span{position:absolute;width:60%;aspect-ratio:1;border-radius:50%;border:2px solid rgba(255,255,255,.25);animation:onda 4.8s ease-out infinite}
.of-ondas span:nth-child(2){animation-delay:1.6s}.of-ondas span:nth-child(3){animation-delay:3.2s}
.of-pe{width:30%;max-width:130px;height:14px;background:#16302f;border-radius:0 0 10px 10px;margin-top:-2px}
.of-copy{display:flex;flex-direction:column;gap:18px;min-width:0}
.of-copy .eyebrow{color:#5b4ced}
:root[data-theme="dark"] .of-copy .eyebrow{color:#a99fff}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .of-copy .eyebrow{color:#a99fff}}
.of-copy h2{font-size:clamp(2rem,4.2vw,3rem);color:var(--teal-ink)}
.of-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.of-lista li{display:grid;grid-template-columns:24px 1fr;gap:10px;color:var(--ink)}
.of-lista svg{width:22px;height:22px;color:var(--teal);margin-top:2px}
.of-cta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.of-nota{font-size:.88rem;color:var(--muted);max-width:32ch}
.ribbon.ribbon-on{background:#5b4ced;color:#fff}

/* ---------- quem realiza (CInCo) ---------- */
.realiza{background:var(--c-verde);color:#fff;overflow:hidden}
.confete{position:absolute;inset:0;pointer-events:none}
.confete .rb{position:absolute;width:260px;height:150px;opacity:.55}
.rb1{left:-40px;top:30px;color:var(--c-rosa)}
.rb2{right:-30px;bottom:20px;color:var(--c-laranja);transform:scaleX(-1) rotate(8deg)}
.confete .cf{position:absolute;width:18px;height:18px}
.c1{left:8%;bottom:16%;color:var(--c-amarelo)}.c2{left:46%;top:9%;color:var(--c-rosa);width:14px!important;height:14px!important}
.c3{right:6%;top:14%;color:var(--c-laranja);width:12px!important;height:12px!important}.c4{right:42%;bottom:8%;color:#fff}
.c5{left:30%;bottom:6%;color:var(--c-amarelo)}.c6{right:14%;top:46%;color:#c9c3ff}
.realiza-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;position:relative;z-index:1}
.realiza-copy{display:flex;flex-direction:column;gap:18px;min-width:0}
.realiza .eyebrow{color:var(--c-amarelo)}
.realiza-logo{width:min(100%,360px);height:auto;display:block}
.realiza h2{font-size:clamp(2rem,4.2vw,3rem)}
.realiza-copy p{color:#e4f3f2;font-size:1.06rem;max-width:56ch}
.areas{display:flex;flex-wrap:wrap;gap:10px}
.areas span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:.45em 1em;font-weight:500;font-size:.92rem}
.realiza-card{background:var(--card);color:var(--ink);border-radius:24px;padding:30px;display:flex;flex-direction:column;gap:18px;box-shadow:0 40px 70px -40px rgba(0,0,0,.6);position:relative}
.realiza-card::before{content:"";position:absolute;left:28px;top:-7px;width:60px;height:14px;border-radius:999px;background:linear-gradient(90deg,var(--c-rosa),var(--c-roxo),var(--c-laranja))}
.realiza-card h3{font-size:1.5rem;color:var(--teal-ink)}
.realiza-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.realiza-card li{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:start;font-size:.98rem}
.realiza-card li svg{width:26px;height:26px;color:var(--teal)}
.realiza-cta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:4px}
.realiza-cta .wa-link{align-self:center}

/* ---------- ingressos ---------- */
.tickets{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:stretch}
.ticket{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:32px;display:flex;flex-direction:column;gap:20px;position:relative;min-width:0}
.ticket.feat{border:0;box-shadow:0 34px 70px -36px rgba(29,86,87,.7);isolation:isolate}
.ticket.feat::before{content:"";position:absolute;inset:0;border-radius:24px;padding:2.5px;background:conic-gradient(from var(--ang,0deg),var(--teal),var(--star),var(--teal-lite),var(--teal));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:borda 6s linear infinite;z-index:-1}
@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes borda{to{--ang:360deg}}
.ribbon{position:absolute;top:-14px;left:32px;background:var(--star);color:var(--star-ink);font-weight:600;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;padding:.35em .9em;border-radius:999px}
.ticket h3{font-size:2rem;color:var(--teal-ink)}
.ticket .where{color:var(--muted);font-size:.95rem;margin-top:-12px}
.prices{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.price{min-width:0;background:var(--mint);border-radius:14px;padding:16px}
.price small{display:block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.price b{font-family:var(--display);font-size:2.2rem;line-height:1.1;color:var(--teal-ink);font-variant-numeric:tabular-nums;display:block}
.price b sup{font-size:.5em;vertical-align:.7em;margin-right:2px}
.price em.parc{display:block;color:var(--teal-ink);font-weight:500;margin:2px 0 4px}
.nota-parcela{font-size:.8rem;color:var(--muted);margin-top:-8px}
.price em{font-style:normal;font-size:.8rem;color:var(--muted)}
.single{grid-template-columns:1fr}
.incl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.incl li{display:grid;grid-template-columns:24px 1fr;gap:10px;font-size:.98rem}
.incl svg{width:22px;height:22px;color:var(--teal);margin-top:2px}
.incl .opt svg{color:var(--muted)}
.incl b{font-weight:600}
.ticket > .btn{margin-top:auto}
.ticket.online{align-self:start}
.compra{display:flex;flex-direction:column;gap:10px;margin-top:auto}
.online-nota{font-size:.92rem;color:var(--muted);background:var(--mint);border-radius:14px;padding:14px 16px}
.seats{display:flex;align-items:center;gap:10px;font-size:.9rem;color:var(--muted)}
.seats i{display:block;width:10px;height:10px;border-radius:50%;background:#e0763a}

/* ---------- faq ---------- */
.faq{max-width:820px;display:flex;flex-direction:column;gap:12px}
details{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:4px 22px;transition:border-color .2s}
details[open]{border-color:var(--teal)}
summary{cursor:pointer;list-style:none;font-weight:600;font-size:1.05rem;padding:16px 0;display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:48px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:var(--display);font-size:1.6rem;color:var(--teal);line-height:1;transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{color:var(--muted);padding-bottom:18px;max-width:65ch}
.faq-cta{margin-top:26px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;color:var(--muted)}
.btn-q{background:transparent;color:var(--teal-ink);box-shadow:inset 0 0 0 2px var(--wa)}
.btn-q:hover{background:var(--mint)}
.btn-q svg{color:var(--wa)}

/* ---------- final ---------- */
.final{background:radial-gradient(90% 120% at 50% 0%,var(--teal) 0%,var(--teal-deep) 60%,var(--teal-ink) 100%);color:#fff;text-align:center;overflow:hidden}
.final .wrap{display:flex;flex-direction:column;align-items:center;gap:22px;position:relative;z-index:1}
.final .marca{width:min(100%,380px);height:auto}
.final h2{font-size:clamp(2.4rem,6vw,4.4rem)}
.final h2 span{color:var(--star)}
.final .facts{justify-content:center;border-color:rgba(255,255,255,.2)}
.final-cinco{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:6px}
.final-cinco small{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--on-teal-soft)}
.final-cinco .cinco-logo{width:190px;height:auto;display:block}
.final .note{font-size:.85rem;max-width:60ch;color:var(--on-teal-soft);opacity:.9}
.final .btn-ghost{font-size:1rem}
.final-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.nuvem{position:absolute;inset:0;pointer-events:none}
.nuvem .palavra{position:absolute;opacity:.9}
.n1{left:6%;top:14%}.n2{right:7%;top:20%}.n3{left:9%;bottom:22%}.n4{right:10%;bottom:16%}.n5{left:24%;top:4%}.n6{right:24%;bottom:4%}

footer{background:var(--teal-ink);color:var(--on-teal-soft);font-size:.85rem}
:root[data-theme="dark"] footer{background:#071f20}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) footer{background:#071f20}}
footer .wrap{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding-block:28px 110px}
footer .cinco-logo{width:200px;height:auto;display:block}
footer p{max-width:60ch;line-height:1.6}
footer p b{color:#fff;font-weight:600}

/* ---------- whatsapp flutuante e barra do celular ---------- */
.wa-float{position:fixed;z-index:30;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));width:62px;height:62px;border-radius:50%;background:var(--wa);color:#fff;display:grid;place-items:center;box-shadow:0 14px 30px -10px rgba(0,0,0,.45);text-decoration:none}
.wa-float svg{width:32px;height:32px}
.mbar{display:none}

/* ---------- entradas (só depois que o JS confirma html.anima) ---------- */
html.anima .anim{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
html.anima .anim.da-esq{transform:translateX(-30px)}
html.anima .anim.zoom{transform:scale(.92)}
html.anima .anim.ok{opacity:1;transform:none}
html.anima .bar.anim span{transform:scaleX(0);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
html.anima .bar.anim.ok span{transform:scaleX(1)}
.d1{transition-delay:.08s!important}.d2{transition-delay:.16s!important}.d3{transition-delay:.24s!important}.d4{transition-delay:.32s!important}.d5{transition-delay:.4s!important}.d6{transition-delay:.48s!important}

/* ---------- telas menores ---------- */
@media (max-width:980px){
  .hero .wrap{grid-template-columns:1fr;gap:0}
  .stage{order:-1;min-height:0;margin-top:14px;padding-top:40px}
  .stage .foto{width:min(70%,360px)}
  .ondas{width:min(86%,380px);top:45%}
  .disco{width:min(72%,320px);top:46%}
  .hero-copy{padding-block:22px 56px}
  .prog,.expert,.tickets,.realiza-grid,.of-grid{grid-template-columns:1fr}
  .of-grid{gap:36px}
  .top-meta .hide-m{display:none}
  .moldura{max-width:380px}
  .wa-float{display:none}
  .mbar{display:block;position:fixed;z-index:30;left:0;right:0;bottom:0;background:var(--paper);border-top:1px solid var(--line);padding:10px max(14px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));transform:translateY(110%);transition:transform .3s ease;box-shadow:0 -10px 30px -18px rgba(0,0,0,.4)}
  .mbar.vem{transform:none}
  .mbar{display:flex;gap:10px;justify-content:center}
  .mbar .btn-pay{flex:1;max-width:460px;padding:.9em 1em}
  .mbar .mbar-wa{flex:none;width:54px;padding:0}
  .mbar .mbar-wa svg{width:28px;height:28px}
  footer .wrap{padding-bottom:120px}
}
@media (max-width:760px){
  .trilha{grid-template-columns:1fr 1fr;gap:34px 14px}
  .trilha .linha{display:none}
}
@media (max-width:640px){
  body{font-size:16px}
  section{padding-block:66px}
  .pains{grid-template-columns:1fr}
  .facts{grid-template-columns:1fr 1fr;gap:14px 18px}
  .facts .fact:last-child{grid-column:1/-1}
  .cta-row .btn{width:100%;justify-content:center}
  .wa-link{align-self:stretch;justify-content:center}
  .online-chamada{flex-wrap:wrap;padding:14px}
  .oc-txt{flex:1 1 calc(100% - 78px)}
  .oc-btn{flex:1 1 100%;justify-content:center}
  .of-cta .btn{width:100%}
  .of-nota{max-width:none}
  .bridge-cta .btn,.final-cta .btn{width:100%}
  .expert-copy .btn-q{align-self:stretch}
  .top .btn{display:none}
  .top .marca{width:112px}
  .top .cinco-logo{width:96px}
  .top-marcas{gap:10px}
  .top-sep{height:28px}
  .realiza-card{padding:24px 20px}
  .realiza-cta .btn{width:100%}
  .realiza-cta .wa-link{align-self:stretch}
  .confete .rb{width:170px;height:100px}
  .stage .foto{width:min(74%,300px)}
  .palavra{font-size:.88rem}
  .f1{left:0;top:30%}.f2{right:0;top:12%}.f3{display:none}.f4{right:0;top:52%}.f5{display:none}.f6{left:4%;top:4%}
  .g1{left:20%;top:22%}.g3{display:none}
  .digita{left:0;bottom:6%;min-width:128px;padding:9px 13px}
  .digita b{font-size:1.1rem}
  .name-card{right:0;bottom:4%;padding:9px 12px}
  .name-card b{font-size:1.1rem}
  .ticket{padding:28px 22px}
  .bridge{padding:24px}
  .bridge p{font-size:1.35rem}
  .passo .disc{width:96px;height:96px}
  .passo .disc svg{width:46px;height:46px}
  .passo b{font-size:1.45rem}
  .faixa ul{font-size:1.1rem;padding-block:11px}
  .count div{min-width:52px}
  .n5,.n6{display:none}
  .n1{left:2%;top:2%}.n2{right:2%;top:4%}.n3,.n4{display:none}
  .c2{left:auto;right:8%;top:3%}
  .final .wrap{padding-block:30px}
  .solta{display:none}
  .moldura .digita{right:0}
  .m3{right:-6px}.m2{right:-6px}.m1{left:-6px}
}
@media (min-width:981px) and (max-height:820px){
  .hero-copy{padding-block:30px 56px;gap:16px}
  .hero h1 img{width:min(100%,430px)}
  .lead{font-size:1.05rem}
  .facts{padding:12px 0}
  .stage{min-height:0}
  .stage .foto{width:min(100%,430px)}
}
@media (max-width:420px){
  .prices{grid-template-columns:1fr}
}
@media (max-width:360px){
  .mbar .btn-pay{font-size:.86rem;padding:.7em .7em}
  .mbar .btn-pay > svg{display:none}
  .mbar .btn-duas small{font-size:.7rem}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
}
