/* PRAX Studios - pagina de parcerias com marcas
   Reaproveita tokens.css e styles.css. Numeros SEMPRE em DM Sans
   (Cookie Supply nao tem os glifos 4, 5, % e +). */

/* ============ Hero com video ============ */
.b-hero{position:relative;min-height:100dvh;display:flex;align-items:center;
  padding:140px 0 90px;overflow:hidden;isolation:isolate}
.b-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:-2}
.b-hero-veil{position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(100% 80% at 15% 40%,rgba(4,3,58,.94),rgba(4,3,58,.70) 55%,rgba(4,3,58,.55)),
    linear-gradient(180deg,rgba(4,3,58,.92),rgba(4,3,58,.55) 35%,rgba(4,3,58,.96))}
.b-hero-inner{max-width:820px}
.b-hero h1{margin:20px 0 24px;font-size:clamp(2.1rem,4.5vw,3.8rem)}
.b-hero .accent{color:var(--cyan)}
.b-hero .lead{max-width:56ch}

/* ============ Numeros ============ */
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md)}
.stat{padding:34px 30px 32px;border-radius:var(--r-lg);
  background:rgba(255,255,255,.035);border:1px solid var(--hair)}
.stat-n{font-family:var(--font-body);font-weight:700;letter-spacing:-.02em;
  font-size:clamp(2.9rem,6vw,4.4rem);line-height:1;color:var(--cyan);
  font-variant-numeric:tabular-nums;margin-bottom:14px}
.stat-l{font-weight:600;font-size:1.02rem;color:var(--text);margin-bottom:4px}
.stat-s{font-size:.9rem;color:var(--text-dim)}
.stats--proof .stat-n{color:var(--lavender)}
.source{margin-top:var(--space-md);font-size:.82rem;color:var(--text-dim);max-width:76ch}

/* ============ Pilares ============ */
.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg)}
.pillar{border-top:2px solid var(--cyan);padding-top:22px}
.pillar h3{margin-bottom:10px}
.pillar p{color:var(--text-soft);font-size:.98rem}

/* ============ Ofertas ============ */
.offers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}
.offer{padding:34px 32px 30px;border-radius:var(--r-lg);
  background:var(--panel-navy-2);border:1px solid var(--hair);
  display:flex;flex-direction:column;gap:10px;
  transition:transform var(--dur-2) var(--ease-out),border-color var(--dur-2)}
.offer:hover{transform:translateY(-5px);border-color:var(--hair-strong)}
.offer-n{font-family:var(--font-body);font-weight:700;font-size:.8rem;letter-spacing:.14em;color:var(--cyan)}
.offer-for{color:var(--text);font-weight:600;font-size:1rem}
.offer-inc{color:var(--text-dim);font-size:.92rem;line-height:1.55}
.offer-cta{margin-top:auto;padding-top:14px;color:var(--cyan);font-weight:700;font-size:.95rem;
  display:inline-flex;align-items:center;gap:8px;align-self:flex-start}
.offer-cta .arrow{transition:transform var(--dur-2) var(--ease-out)}
.offer-cta:hover .arrow{transform:translate(3px,-3px)}

/* ============ Funil (tabela) ============ */
.funnel table{width:100%;border-collapse:collapse;font-size:.96rem}
.funnel thead th{text-align:left;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--blue);padding:0 16px 14px 0;font-weight:700}
.funnel tbody th{text-align:left;font-weight:700;color:var(--blue);
  font-size:1.02rem;padding:18px 16px 18px 0;vertical-align:top;white-space:nowrap}
.funnel tbody td{padding:18px 16px 18px 0;color:var(--text-on-light-soft);vertical-align:top}
.funnel tbody tr + tr{border-top:1px solid rgba(10,8,102,.14)}
.disclaimer{margin-top:var(--space-md);font-size:.88rem;color:var(--text-on-light-soft);
  max-width:82ch;padding-top:18px;border-top:1px solid rgba(10,8,102,.14)}

/* ============ Fluxo de trabalho ============ */
.flow{list-style:none;padding:0;margin:0;display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg) var(--space-md)}
.flow li{position:relative;padding-top:20px;border-top:1px solid var(--hair)}
.flow-n{font-family:var(--font-body);font-weight:700;font-size:.78rem;letter-spacing:.14em;
  color:var(--text-dim);display:block;margin-bottom:12px}
.flow h3{margin-bottom:8px}
.flow p{color:var(--text-soft);font-size:.95rem}

/* ============ Banda da prova ============ */
.band-proof{background:linear-gradient(180deg,var(--bg-deep),var(--bg))}

/* ============ Para quem ============ */
.audience{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-lg)}
.aud h3{margin-bottom:10px;color:var(--cyan)}
.aud p{color:var(--text-soft);font-size:.95rem}

/* ============ Conversa / formulario ============ */
.talk{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xl);align-items:start}
.talk-note{margin-top:18px;font-size:.9rem;color:var(--text-dim)}
.talk-form{display:flex;flex-direction:column;gap:16px;
  background:var(--panel-navy);border:1px solid var(--hair);border-radius:var(--r-lg);padding:32px 30px}
.talk-form label{display:flex;flex-direction:column;gap:7px;font-size:.85rem;font-weight:600;color:var(--text-soft)}
.talk-form input,.talk-form select,.talk-form textarea{
  font:inherit;font-size:.95rem;color:var(--text);background:rgba(255,255,255,.05);
  border:1px solid var(--hair-strong);border-radius:var(--r-sm);padding:13px 14px;
  transition:border-color var(--dur-2)}
.talk-form textarea{min-height:96px;resize:vertical}
.talk-form input:focus,.talk-form select:focus,.talk-form textarea:focus{outline:none;border-color:var(--cyan)}
.talk-form select option{color:#111}
.talk-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}
/* o rótulo "(opcional)" quebra em 2 linhas e empurraria o select pra baixo:
   ancora os dois selects no rodapé do rótulo pra ficarem alinhados */
.talk-form .row label{height:100%}
.talk-form .row select{margin-top:auto}
.talk-result{margin-top:var(--space-md);display:flex;flex-direction:column;gap:12px}

/* ============ Responsivo ============ */
@media(max-width:960px){
  .stats,.pillars,.offers,.flow{grid-template-columns:1fr 1fr}
  .audience{grid-template-columns:1fr 1fr}
  .talk{grid-template-columns:1fr;gap:var(--space-xl)}
}
@media(max-width:760px){
  .b-hero{min-height:auto;padding:120px 0 80px}
  .stats,.pillars,.offers,.flow,.audience{grid-template-columns:1fr}
  .talk-form .row{grid-template-columns:1fr}
  /* tabela vira lista legivel no celular */
  .funnel thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .funnel tbody tr{display:block;padding:18px 0;border-top:1px solid rgba(10,8,102,.14)}
  .funnel tbody th{display:block;padding:0 0 8px;white-space:normal}
  .funnel tbody td{display:block;padding:0 0 6px}
  .funnel tbody td::before{content:attr(data-l);display:block;font-size:.7rem;letter-spacing:.12em;
    text-transform:uppercase;color:var(--blue);opacity:.75;margin-bottom:2px}
}
