/* =========================================================
   INFLUENCER BRASIL — UI (página: Vendas/Influencers)
   Baseado em Materialize. Todas as classes são prefixadas
   com ib-* para evitar conflitos no projeto.
   ========================================================= */

/* -------- TIPOGRAFIA (mantive seu trecho) -------- */
@font-face {
  font-family: 'Kanit';
  src: url('../fonts/kanit/Kanit-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Kanit Medium';
  src: url('../fonts/kanit/Kanit-Medium.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Kanit Bold';
  src: url('../fonts/kanit/Kanit-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'Ubuntu';
  src: url('../fonts/ubuntu/Ubuntu-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Ubuntu Bold';
  src: url('../fonts/ubuntu/Ubuntu-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

html, body { overflow-x: hidden; position: relative; max-width: 100%; }
* { box-sizing: border-box; }
button { cursor: pointer !important; }
.row { margin-bottom: 0 !important; }
nav { color:#000 !important; background-color:transparent !important; width:initial !important; height:initial !important; line-height:initial !important; box-shadow:none !important; }
address, cite { font-style: normal; }
strong { font-weight: bold !important; }
figcaption { display:none !important; }
figure { margin:0 !important; }
fieldset { border:none !important; margin:0 !important; padding:0 !important; }

/* =========================================================
   TOKENS
   ========================================================= */
:root{
  --ib-rosa:#E1306C; --ib-rosa-100:#FF7A85;
  --ib-roxo:#833AB4; --ib-roxo-100:#B263D9;
  --ib-ama:#FCAF45;  --ib-ama-100:#FFD77F;

  --ib-ink:#ffffff;
  --ib-ink-dark:#111827;
  --ib-muted:#9CA3AF;
  --ib-line:#2B2F3A;
  --ib-surface:#13161D;
  --ib-surface-2:#171B24;
  --ib-surface-3:#0D0F15;
  --ib-bg:#0B0D12;
  --ib-bg-clean:#f7f8fb;

  --ib-grad: linear-gradient(135deg, #833AB4 0%, #E1306C 55%, #FCAF45 100%);

  --ib-radius:16px;
  --ib-radius-lg:22px;
  --ib-shadow: 0 16px 40px rgba(0,0,0,.28);
  --ib-shadow-soft: 0 10px 20px rgba(0,0,0,.16);
  --ib-space-1:8px; --ib-space-2:12px; --ib-space-3:16px; --ib-space-4:24px;
  --ib-space-5:32px; --ib-space-6:48px; --ib-space-7:72px;
  --ib-container:1200px;
}

/* =========================================================
   TIPOGRAFIA / UTILITARIOS
   ========================================================= */
.ib-page{
  color:var(--ib-ink-dark);
  font-family: 'Kanit', system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
  background:#fff;
}

.ib-h1{
  font-family:'Kanit Bold', 'Kanit', sans-serif;
  font-weight:800; letter-spacing:-.02em;
  font-size: clamp(28px, 5.8vw, 3em);
  line-height:1.05; color:#fff;
}
.ib-h2{
  font-family:'Kanit Bold','Kanit',sans-serif;
  font-weight:800; letter-spacing:-.01em;
  font-size: clamp(22px, 3.6vw, 36px);
  line-height:1.12; color:var(--ib-ink-dark);
}
.ib-h3{
  font-family:'Kanit Medium','Kanit',sans-serif;
  font-size: clamp(18px, 2.8vw, 22px);
  line-height:1.2; color:#fff;
}
.ib-lead{ font-size: clamp(16px, 2.6vw, 20px); line-height:1.5; color:#fff; opacity:.95 }
.ib-muted{ color:#9aa3ad }
.ib-small{ font-size:12px }
.ib-tiny{     font-size: 10px;
    margin-top: 20px !important; }

.ib-section{ padding: clamp(40px, 6.8vw, 88px) 0 }
.ib-section .container{ max-width: var(--ib-container); }

.btn.ib-btn{ border-radius:999px; font-weight:800; text-transform:none; letter-spacing:.2px; }
.btn.ib-btn,
.ib-btn--ghost{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  text-align:center;
  white-space:normal;
}
.ib-btn--primary{ background: var(--ib-ama) !important; color:#111 !important; }
.ib-btn--primary:hover{ filter: brightness(1.05); box-shadow:0 10px 24px rgba(0,0,0,.25) }
.btn-block{ width:100% }

/* Foco acessível */
.ib-btn:focus, .ib-chip:focus, .ib-card:focus-within, .ib-faq-item:focus-within{
  outline: 3px solid rgba(252,175,69,.6); outline-offset: 2px;
}

/* List check */
.ib-list-check{ list-style:none; padding-left:0; margin: var(--ib-space-3) 0; }
.ib-list-check li{ position:relative; padding-left:26px; color:#D1D5DB; }
.ib-list-check li::before{ content:"✓"; position:absolute; left:0; top:0; color:var(--ib-ama); font-weight:900 }

/* =========================================================
   HERO — fundo, logo, chips, plataformas e form (Materialize)
   ========================================================= */

/* Fundo + vídeo + overlay */
.ib-hero{ position:relative; color:#fff; background:var(--ib-grad); overflow:hidden; isolation:isolate; padding: clamp(40px, 6.8vw, 60px) 0 !important; }
.ib-hero::after{ content:""; position:absolute; inset:0; background: radial-gradient(1200px 600px at 20% 20%, rgba(0,0,0,.25), rgba(0,0,0,.55)); z-index:0; }
.ib-hero--vh{ min-height:calc(100vh - 60px); }
.ib-hero .container{ position:relative; z-index:1; }
.ib-hero-row{ display:flex; align-items:center; flex-wrap:wrap; }
.ib-hero-video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:0; opacity:.35; filter:saturate(1.05) contrast(1.05); pointer-events:none; }

/* Logo compacto com fundo escuro */
.ib-hero-logo{ display:inline-block; background: rgba(13,15,21,.9); border:1px solid rgba(255,255,255,.12); border-radius:14px; padding:8px 12px; margin-bottom:10px; box-shadow:0 10px 24px rgba(0,0,0,.28); }
.ib-hero-logo img{ display:block; max-height:60px; width:150px; object-fit: contain; padding: 2px; }

/* Chips (kicker) */
.ib-chips-kicker{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:10px; }
.ib-chip{ display:inline-flex; align-items:center; gap:6px; padding:7px 10px; border-radius:999px; background: rgba(17,24,39,.85); color:#fff; border:1px solid rgba(255,255,255,.08); box-shadow:0 8px 18px rgba(0,0,0,.18); }
.ib-chip svg,
.ib-chip i{ font-size:11px; opacity:.95; margin-right:0 !important; }
.ib-chips-kicker--compact{ gap:6px; }
.ib-chips-kicker--compact .ib-chip{
  padding:5px 9px;
  font-size:.78rem;
  line-height:1.1;
}

/* Subtítulo das plataformas */
.ib-hero .ib-h1 {
    font-family: 'Kanit Bold', 'Kanit', sans-serif;
    font-weight: 800;
    letter-spacing: -.02em;
    font-size: clamp(30px, 5.2vw, 2.2em);
    line-height: 1.08;
    color: #fff;
}
.ib-hero .ib-hero-lead{
  font-size: clamp(1rem, 2.1vw, 1.16rem);
  line-height: 1.5;
}
.brands .ib-hero .ib-h1 span {
    color: #FCAF45;
    font-weight: 900;
    text-shadow: 0 3px 0px rgba(0, 0, 0, 1);
}
.brands .ib-step.ib-card.ib-neon-card {
    display: flex !important;
    flex-direction: column !important;
  min-height: 100%;
  height: 100%;
}
.brands .ib-ugc-title span {
    background: linear-gradient(135deg, #833AB4 0%, #E1306C 50%, #FCAF45 100%);
    background-clip: text;
    color: transparent;
}
.ib-platforms-subtitle{ margin:12px 0 8px; font-weight:800; letter-spacing:.2px; color:#f3f4f6; font-size: 1.25em; }
.ib-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:22px;
}
.ib-whatsapp-cta{
  position:relative;
  margin-top:20px;
  padding:18px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  background:
    radial-gradient(circle at top right, rgba(37,211,102,.18), transparent 34%),
    linear-gradient(145deg, rgba(6,12,23,.92) 0%, rgba(15,23,42,.88) 52%, rgba(8,34,28,.88) 100%);
  box-shadow:
    0 26px 54px rgba(2,6,23,.32),
    inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(14px);
  overflow:hidden;
}
.ib-whatsapp-cta::before{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:26px;
  background:linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(255,255,255,0) 34%);
  pointer-events:none;
}
.ib-whatsapp-cta__signal{
  position:relative;
  z-index:1;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:16px;
}
.ib-whatsapp-cta__signal-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(37,211,102,.22);
  background:rgba(37,211,102,.12);
  color:#dcfce7;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ib-whatsapp-cta__signal-pill--soft{
  border-color:rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  color:rgba(226,232,240,.9);
}
.ib-whatsapp-cta__signal-pill i{
  font-size:.82rem;
}
.ib-whatsapp-cta__body{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(250px, 310px);
  gap:18px;
  align-items:center;
}
.ib-whatsapp-cta__identity{
  display:flex;
  align-items:flex-start;
  gap:14px;
  min-width:0;
}
.ib-whatsapp-cta__avatar{
  position:relative;
  width:68px;
  height:68px;
  border-radius:22px;
  overflow:hidden;
  flex:0 0 68px;
  background:linear-gradient(135deg, rgba(37,211,102,.18) 0%, rgba(255,255,255,.08) 100%);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.12),
    0 14px 28px rgba(2,6,23,.26);
}
.ib-whatsapp-cta__avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ib-whatsapp-cta__fallback{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  background:linear-gradient(135deg, #0f172a 0%, #166534 100%);
  color:#fff;
  font-size:1.1rem;
  font-weight:800;
}
.ib-whatsapp-cta__initials{
  font-size:1rem;
  letter-spacing:.08em;
}
.ib-whatsapp-cta__avatar-badge{
  position:absolute;
  right:5px;
  bottom:5px;
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:999px;
  background:#25d366;
  color:#fff;
  box-shadow:0 6px 16px rgba(37,211,102,.38);
  font-size:.72rem;
}
.ib-whatsapp-cta__copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.ib-whatsapp-cta__eyebrow{
  font-size:.68rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#fcd34d;
  font-weight:800;
}
.ib-whatsapp-cta__label{
  color:#fff;
  font-size:1.04rem;
  font-weight:800;
  line-height:1.2;
}
.ib-whatsapp-cta__number{
  color:rgba(226,232,240,.88);
  font-size:.9rem;
  line-height:1.4;
}
.ib-whatsapp-cta__microcopy{
  max-width:44ch;
  color:rgba(226,232,240,.82);
  font-size:.92rem;
  line-height:1.56;
}
.ib-btn--whatsapp{
  display:inline-flex !important;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  width:100%;
  min-height:76px;
  padding:14px 18px !important;
  border-radius:22px !important;
  background:linear-gradient(135deg, #25d366 0%, #16a34a 100%) !important;
  color:#fff !important;
  box-shadow:0 18px 34px rgba(22,163,74,.28) !important;
}
.ib-btn--whatsapp:hover{
  background:linear-gradient(135deg, #2dd96f 0%, #15803d 100%) !important;
  box-shadow:0 22px 38px rgba(21,128,61,.32) !important;
}
.ib-btn--whatsapp__icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:14px;
  background:rgba(255,255,255,.16);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}
.ib-btn--whatsapp__icon i{
  font-size:1.2rem;
}
.ib-btn--whatsapp__copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
}
.ib-btn--whatsapp__label{
  color:#fff;
  font-size:.98rem;
  font-weight:800;
  line-height:1.2;
  text-align:left;
}
.ib-btn--whatsapp__meta{
  margin-top:2px;
  color:rgba(236,253,245,.88);
  font-size:.78rem;
  font-weight:600;
  line-height:1.3;
  text-align:left;
}
.ib-form-alt-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:12px;
  color:#f3f4f6;
  font-size:.92rem;
  text-decoration:underline;
}
.ib-form-alt-link:hover{ color:#fff; }
.ib-hero-note{
  max-width:560px;
  margin:14px 0 0;
  line-height:1.5;
}
.ib-btn--ghost{
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 10px 26px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.06) !important;
}
.ib-btn--ghost:hover{
  background:rgba(255,255,255,.14) !important;
  box-shadow:0 14px 32px rgba(0,0,0,.24), inset 0 0 0 1px rgba(255,255,255,.12) !important;
}

/* Ícones das plataformas (brand look) */
.ib-brand-icons{ display:flex; flex-wrap:wrap; gap:12px; padding:0; margin:0; list-style:none; }
.ib-brand-icons li{ width:56px; height:56px; border-radius:14px; display:grid; place-items:center; color:#fff; box-shadow: inset 0 0 0 1px rgba(255,255,255,.10), 0 8px 18px rgba(0,0,0,.25); }
.ib-brand-icons svg,
.ib-brand-icons i{ font-size:26px; color:#fff; }
/* fundos oficiais (aprox.) */
.ib-brand-icons .brand-ig{ background: linear-gradient(135deg,#833AB4 0%, #E1306C 50%, #FCAF45 100%); }
.ib-brand-icons .brand-fb{ background:#1877F2; }
.ib-brand-icons .brand-yt{ background:#FF0000; }
.ib-brand-icons .brand-tt{ background:#000; }

/* Card do formulário */
.ib-hero-form .ib-card{ background: rgba(13,15,21,.82); border-radius:24px; border:1px solid rgba(255,255,255,.12); box-shadow:0 18px 40px rgba(0,0,0,.30); backdrop-filter: blur(6px); }
.ib-card--form .card-title, .ib-card--form .ib-small{ color:#cfd6df; text-align:center; }
.ib-card--form .ib-small strong{ color:#cfd6df; text-align:center; font-size: 1.5em; }
.ib-card--form .card-title{ color:#fff; }

/* Campos Materialize — compactos */
/* Ajuste UX: card com respiro interno premium e CTA único sem poluição visual. */
.ib-card--form .card-content{ padding: 26px 24px 20px !important; }
#form-hero .input-field{ margin-bottom: 9px; margin-top: 0 !important; }
#form-hero .input-field input,
#form-hero .input-field textarea,
#form-hero select{ background: rgba(255,255,255,.06) !important; color:#fff !important; border-radius:12px !important; padding-left:1em !important; width: calc(100% - 1em) !important; box-shadow:none !important; }
#form-hero .select-wrapper input.select-dropdown{ background: rgba(255,255,255,.06) !important; color:#fff !important; border-radius:12px !important; padding-left:1em !important; width: calc(100% - 1em) !important; box-shadow:none !important; }
#form-hero .input-field.col label{ left:1.25rem; }
#form-hero .input-field .helper-text{ display: none; }
#form-hero .input-field small{ top: -6px !important; position: relative; display:block; margin-top:4px; }
.ib-consent{ margin-top: 2px; }
.ib-consent label{ display:block; }
.ib-consent label span{
  display:inline-block;
  min-height:0;
  padding-left:34px;
  color:#cfd6df;
  font-size:.92rem;
  line-height:1.52;
  text-wrap:pretty;
}
.ib-consent--inline{ padding-top:4px; }
.ib-consent--inline label{ margin:0; }
.ib-consent--inline label span{ max-width:56ch; }
.ib-consent--light label span{ color:#334155; }
.ib-consent--light a{ color:#0f766e; text-decoration:underline; }
.ib-consent--light a:hover{ color:#0f2b46; }
.ib-consent--modal{ margin-top: 6px; }
.ib-consent-card{
  display:grid;
  gap:10px;
  margin-top:4px;
  padding:14px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  background:rgba(2,6,23,.24);
}
.ib-consent-card__title{
  margin:0;
  color:#f8fafc;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:.82;
}
.ib-consent-card__copy{
  margin:0;
  color:#cfd6df;
  font-size:.88rem;
  line-height:1.55;
}
.ib-consent-card .ib-consent{ margin:0; }
.ib-consent-card .ib-consent label{ display:block; }
.ib-consent-card .ib-consent label span{ display:inline-block; padding-left:34px; line-height:1.55; color:#e5e7eb; }
.ib-form-actions{ margin-top: 8px; }
.ib-form-actions .btn{ min-width:220px; margin-top:6px; }
.ib-form-actions .ib-tiny{ margin-top:6px; display:inline-block; }

/* Foco/validação (marca em vez do verde) */
.ib-card--form .input-field input:focus,
.ib-card--form .input-field textarea:focus{ border-bottom:2px solid var(--ib-rosa) !important; box-shadow:0 1px 0 0 var(--ib-rosa) !important; }
.ib-card--form .input-field input:focus + label,
.ib-card--form .input-field textarea:focus + label,
.ib-card--form .input-field > label.active{ color:var(--ib-rosa) !important; }
.ib-card--form .input-field input.valid,
.ib-card--form .input-field textarea.valid,
.ib-card--form .select-wrapper input.select-dropdown.valid{ border-bottom:2px solid var(--ib-rosa) !important; box-shadow:0 1px 0 0 var(--ib-rosa) !important; }
.ib-card--form .input-field input.invalid,
.ib-card--form .input-field textarea.invalid,
.ib-card--form .select-wrapper input.select-dropdown.invalid{ border-bottom:2px solid var(--ib-rosa-100) !important; box-shadow:0 1px 0 0 var(--ib-rosa-100) !important; }
.ib-card--form .ib-consent a{ color:var(--ib-rosa) !important; text-decoration:underline; }
.ib-card--form .ib-consent a:hover{ color:var(--ib-rosa-100) !important; }
.ib-card--form .ib-consent label span{ color:rgba(229,231,235,.9); }
.ib-card--form .ib-consent [type="checkbox"]+span:not(.lever):before, .ib-card--form .ib-consent [type="checkbox"]:not(.filled-in)+span:not(.lever):after { top: 4px; }
.ib-card--form .ib-consent-card .ib-consent [type="checkbox"]+span:not(.lever):before,
.ib-card--form .ib-consent-card .ib-consent [type="checkbox"]:not(.filled-in)+span:not(.lever):after { top: 2px; }
.ib-consent--light [type="checkbox"]+span:not(.lever):before,
.ib-consent--light [type="checkbox"]:not(.filled-in)+span:not(.lever):after { top: 3px; }

/* SELECT escuro */
.ib-card--form .select-wrapper .caret{ fill:#fff !important; color:#fff !important; opacity:.9; }
.ib-card--form .dropdown-content.select-dropdown{ background:#0f1116 !important; border:1px solid #232834 !important; border-radius:12px !important; box-shadow:0 18px 40px rgba(0,0,0,.35) !important; max-height:280px !important; }
.ib-card--form .dropdown-content.select-dropdown li > span{ color:#e5e7eb !important; padding:10px 14px !important; }
.ib-card--form .dropdown-content.select-dropdown li:hover > span,
.ib-card--form .dropdown-content.select-dropdown li.active > span,
.ib-card--form .dropdown-content.select-dropdown li.selected > span{ color:#fff !important; background:var(--ib-grad) !important; border-radius:8px !important; }
.ib-card--form .input-field .select-wrapper + label{ color:#cfd6df !important; }
.ib-card--form .input-field .select-wrapper + label.active{ color:var(--ib-rosa) !important; }
.ib-card--form #whatsapp.invalid {
  border-bottom: 2px solid var(--ib-rosa-100) !important;
  box-shadow: 0 1px 0 0 var(--ib-rosa-100) !important;
}

.brands .ib-hero .ib-h1 strong {
    color: #fff;
    font-weight: 900;
    text-shadow: 0 3px 0px rgba(0, 0, 0, 1);
    text-transform: uppercase;
    margin-bottom: 10px !important;
    width: 100% !important;
    float: left;
}

.brands #form-hero .card-title.ib-h3 {
  margin-bottom: -10px !important;
}

/* Responsivo */
@media (max-width:600px){
    .ib-hero .container{ width: 100%; }
  .ib-section .container{ max-width: 100% !important; width: 100% !important; }
  .ib-hero-logo{ width:150px; display: block; margin: 0 auto; margin-bottom: 20px; }
  .ib-hero-logo img{ width:100%; height:80px; }
  .ib-brand-icons li{ width:50px; height:50px; border-radius:12px; }
  .ib-brand-icons i{ font-size:24px; }
  .ib-hero--vh{ min-height: calc(100vh - 20px); }
  .ib-chips-kicker, .ib-brand-icons{ justify-content:center; }
  .ib-chips-kicker{
    gap: 6px !important;
    padding: 0 !important;
    margin: 0 0 8px !important;
    width: 100% !important;
    overflow-x: visible !important;
  }
  .ib-h1, .ib-lead, .ib-platforms-subtitle{ text-align:center; }
  .ib-hero .ib-h1 { font-size: clamp(1.42rem, 7.2vw, 2rem) !important; }
  .ib-hero .ib-platforms-subtitle { font-size: .98rem !important; }
  .ib-hero-actions{ justify-content:center; }
  .ib-whatsapp-cta{
    padding:14px;
    border-radius:24px;
  }
  .ib-whatsapp-cta__signal{
    justify-content:center;
    margin-bottom:14px;
  }
  .ib-whatsapp-cta__body{
    grid-template-columns:1fr;
    gap:14px;
  }
  .ib-whatsapp-cta__identity{
    align-items:center;
    text-align:left;
  }
  .ib-whatsapp-cta__avatar{
    width:62px;
    height:62px;
    flex-basis:62px;
    border-radius:18px;
  }
  .ib-btn--whatsapp{
    width:100%;
    min-width:0;
    min-height:70px;
    padding:13px 16px !important;
  }
  .ib-hero-note{ margin-left:auto; margin-right:auto; text-align:center; }
  .brands .ib-hero .ib-h1 strong {
    font-size: 1.25em !important;
}
}

/* =========================================================
   MICROBAR (CTA fina) — versão “gordinha”
   ========================================================= */
.ib-microbar{
  background:#0F1320;
  color:#fff;
  padding:14px 0;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.ib-microbar-row{ gap:10px; }

.ib-microbar--fat{               /* +gordinha, sem exagero */
  padding: 24px 0;
}
.ib-microbar-title{
  margin:0 0 2px;
  font-weight: 900;
  letter-spacing:.2px;
  font-size: clamp(1rem, 2.2vw, 1.25rem);
}
.ib-microbar-sub{
  margin:0;
  color:#cfd6df;
  font-size: clamp(.9rem, 1.9vw, 1rem);
}

@media (max-width: 600px){
  .ib-microbar .right-align{ text-align:center !important; }
  .ib-microbar .btn{ width:100%; margin-top:10px; }
  .ib-microbar-title,
  .ib-microbar-sub{ text-align:center; }
  .ib-microbar-row{ flex-wrap: wrap; }
  .ib-microbar-text {
    text-align: center !important;
    margin-bottom: 0 !important;
  }
  .ib-microbar .ib-how-chips {
    justify-content: center !important;
  }
  .brands .ib-how-chips .chip {
    margin-right: 0 !important;
  }
}

/* =========================================================
   COMO FUNCIONA — seção escura + neon
   ========================================================= */
.ib-how{
  background:
    radial-gradient(900px 380px at 15% 0%, rgba(131,58,180,.08), transparent 55%),
    radial-gradient(900px 380px at 85% 20%, rgba(225,48,108,.08), transparent 55%),
    #0b1020 !important;
  padding-top: clamp(36px, 5vw, 64px);
  padding-bottom: clamp(36px, 5vw, 72px);
}

.ib-how .ib-btn--neon{
  margin-top: 2em;
}

/* Título */
.ib-how-title{ color:#fff; text-align:center; margin:0 0 12px; }
.ib-how-title span{
  background: var(--ib-grad); -webkit-background-clip:text; background-clip:text; color:transparent; font-weight:900;
}

/* Chips central + neon */
.ib-how-chips{ margin:12px auto 28px; display:flex; flex-wrap:wrap; gap:10px; justify-content:center; }
.ib-chip--neon{
  display:inline-flex; align-items:center; gap:8px;
  padding:0px 15px !important; height:auto;
  border-radius:999px; border:1px solid transparent;
  background: linear-gradient(#0b1020, #0b1020) padding-box, var(--ib-grad) border-box;
  color:#e7eaf1;
  box-shadow: 0 0 16px rgba(225,48,108,.18), inset 0 1px 0 rgba(255,255,255,.06) !important;
  height: 35px !important;
}
.ib-chip--neon i{ font-size:12px; opacity:.95; }

/* Cards com borda arredondada + borda gradiente e glow suave */
.ib-step.ib-card.ib-neon-card{
  border: 2px solid transparent;
  border-radius: 20px !important;
  background: linear-gradient(#0f1116, #0f1116) padding-box,
              linear-gradient(135deg, rgba(131,58,180,.85), rgba(225,48,108,.85), rgba(252,175,69,.85)) border-box !important;
  box-shadow:
    0 14px 36px rgba(0,0,0,.48),
    0 0 22px rgba(131,58,180,.16),
    0 0 34px rgba(225,48,108,.12) !important;
  transition: transform .18s ease, box-shadow .18s ease;
}
.ib-step.ib-card.ib-neon-card:hover{
  transform: translateY(-3px);
  box-shadow:
    0 20px 48px rgba(0,0,0,.52),
    0 0 28px rgba(131,58,180,.22),
    0 0 44px rgba(225,48,108,.18) !important;
}

/* Conteúdo do card */
.ib-step .card-content{ padding: 24px; }
.ib-step .ib-step-num{
  width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center;
  border-radius:12px; font-weight:900; color:#fff; margin-bottom:12px;
  background: var(--ib-grad);
  box-shadow: 0 6px 18px rgba(225,48,108,.25), inset 0 1px 0 rgba(255,255,255,.25) !important;
}
.ib-step .card-title.ib-h3{ color:#fff; margin:0 0 8px; letter-spacing:.2px; }
.ib-step p{ color:#cfd6df; line-height:1.6; margin:0; }

/* CTA — botão neon (preenchido, diferente dos cards) */
.ib-btn--neon{
  background: var(--ib-grad) !important;
  color:#fff !important;
  border-radius: 999px !important;
  border: none !important;
  box-shadow:
    0 10px 26px rgba(131,58,180,.35),
    0 14px 40px rgba(225,48,108,.30),
    0 0 0 2px rgba(255,255,255,.12) inset !important;
  font-weight: 900;
  letter-spacing: .25px;
  transform: translateZ(0);
  min-height: 52px;
  height: auto !important;
  line-height: 1.2 !important;
  padding: 10px 24px !important;
}
.ib-btn--neon:hover{
  filter: saturate(1.05) contrast(1.03);
  box-shadow:
    0 14px 32px rgba(131,58,180,.42),
    0 20px 50px rgba(225,48,108,.36),
    0 0 0 2px rgba(255,255,255,.18) inset !important;
}
.ib-btn--xl{ min-height:54px; padding: 14px 28px !important; font-size: 1rem !important; }

/* Responsivo */
@media (max-width: 600px){
  .ib-step .card-content{ padding:20px; }
  .ib-step .ib-step-num{ width:40px; height:40px; }
  .ib-btn--xl{ width:100%; }
}

.ib-cards-how{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
  margin:28px 0 0 !important;
}
.ib-cards-how .col {            /* cada coluna vira um item estável do grid */
  display: flex;
  float:none !important;
  width:auto !important;
  margin-left:0 !important;
  padding:0 !important;
  min-width:0;
}
.ib-cards-how .ib-card {        /* o card ocupa 100% da coluna */
  display: flex;
  flex-direction: column;
  width: 100%;
  height:100%;
}
.ib-cards-how .ib-card .card-content { /* conteúdo expande e equaliza */
  flex: 1;
  display: flex;
  flex-direction: column;
}
.ib-section-eyebrow{
  margin:0 0 10px;
  color:#fbd38d;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.82rem;
}
.ib-section-intro{
  max-width: 880px;
  margin: 14px auto 0;
  color:#d7dbe3;
}
.ib-grid-cards{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
  grid-auto-rows:1fr;
  margin-top:28px;
}
.ib-grid-card{ min-width:0; }
.ib-grid-surface,
.ib-grid-surface .card-content{
  height:100%;
}

/* =========================================================
   ELEGIBILIDADE — fundo, cópia e lista “check”
   ========================================================= */
.ib-eligibility{
  background:
    radial-gradient(1200px 600px at 20% 0%, rgba(131,58,180,.55), rgba(225,48,108,.42)),
    #1a1130 !important;
  color:#fff !important;
  padding-top: 150px !important;
  padding-bottom: 150px !important;
}
.ib-elig-copy .ib-h2{ color:#fff !important; margin:0 0 10px !important; }
.ib-elig-copy .ib-h2 span{
  background: var(--ib-grad); -webkit-background-clip:text; background-clip:text; color:transparent;
  font-weight:900;
}
.ib-elig-lead{ color:#e7eaf0 !important; margin: 6px 0 14px !important; }

/* Lista com “check” neon */
.ib-list-check{ list-style:none; padding:0; margin:0 0 16px; }
.ib-list-check--neon li{
  position:relative; padding-left:34px; margin:10px 0; color:#dbe2ea;
}
.ib-list-check--neon li::before{
  content:"\f00c"; /* Font Awesome check */
  font-family:"Font Awesome 6 Free"; font-weight:900;
  position:absolute; left:0; top:2px;
  width:22px; height:22px; line-height:22px; text-align:center;
  border-radius:50%;
  color:#111; font-size:12px;
  background: var(--ib-grad);
  box-shadow: 0 0 14px rgba(225,48,108,.35);
}

.ib-list-check--neon li svg,
.ib-list-check--neon li i{
   font-weight:900;
  position:absolute; left:0; top:2px;
  width:22px; height:22px; line-height:22px; text-align:center;
  border-radius:50%;
  color:#111; font-size:12px;
  background: var(--ib-grad);
  box-shadow: 0 0 14px rgba(225,48,108,.35);
  padding: 10px;
  transform: scale(.5);
  margin-left: -10px;
  margin-top: -10px;
}

/* Botão da coluna de copy */
.ib-elig-copy .btn{ margin-top: 8px !important; }

/* =========================================================
   DEMO DE PERFIL — card escuro com borda gradiente
   ========================================================= */
.ib-profile-demo{
  background:#0f1116 !important;
  border: 2px solid transparent !important;
  border-radius: 20px !important;
  background:
    linear-gradient(#0f1116, #0f1116) padding-box,
    linear-gradient(135deg, rgba(131,58,180,.9), rgba(225,48,108,.9), rgba(252,175,69,.9)) border-box !important;
  box-shadow: 0 20px 50px rgba(0,0,0,.45), 0 10px 26px rgba(131,58,180,.18) !important;
  padding: 20px !important;
  color:#e5e7eb !important;
}

/* Topo do card */
.ib-profile-demo .top{
  display:flex; align-items:center; gap:12px;
}
.ib-profile-demo .avatar{
  width:56px; height:56px; border-radius:50%; object-fit:cover; object-position: top;
  box-shadow: 0 6px 16px rgba(0,0,0,.35);
}
.ib-profile-demo .who .name{ color:#fff; font-weight:800; line-height:1; }
.ib-profile-demo .who .handle{ color:#9fb2c8; font-size:.9rem; }

/* Estrelas maiores e alinhadas à direita */
.ib-profile-demo .stars{
  margin-left:auto; display:flex; gap:3px; color:#FFD77F; filter: drop-shadow(0 0 6px rgba(252,175,69,.35));
  font-size: 16px;
}

/* Pílulas de métricas */
.ib-profile-demo .metrics{
  display:flex; flex-wrap:wrap; gap:8px; margin: 12px 0 10px;
}
.ib-profile-demo .pill{
  display:inline-flex; align-items:center; padding:6px 10px; border-radius:999px;
  background: rgba(255,255,255,.06); color:#e7eaf1; border:1px solid rgba(255,255,255,.12);
  font-size:.9rem;
}

/* Ofertas de publi (preços e entregáveis) */
.ib-profile-demo .rates{ display:grid; gap:8px; margin:8px 0 10px; }
.ib-profile-demo .rate-item{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:10px 12px; border-radius:12px;
  background: rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.10);
}
.ib-profile-demo .rate-title{ color:#dbe2ea; font-weight:700; display:flex; align-items:center; gap:8px; }
.ib-profile-demo .rate-title i{ opacity:.9; }
.ib-profile-demo .rate-price{
  font-weight:900; letter-spacing:.2px;
  background: var(--ib-grad);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

/* KPIs (jobs, faturamento) */
.ib-profile-demo .kpis{
  display:grid; grid-template-columns: repeat(2,1fr); gap:8px; margin-bottom:10px;
}
.ib-profile-demo .kpi{
  background: rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.10);
  border-radius:12px; padding:10px 12px;
}
.ib-profile-demo .kpi-label{ color:#9fb2c8; font-size:.8rem; }
.ib-profile-demo .kpi-value{ color:#fff; font-weight:900; display:block; }

/* CTA do card + rodapé */
.ib-profile-demo .actions{ display:flex; justify-content:center; margin: 6px 0 0; }
.ib-profile-demo .actions .btn{ min-width: 260px; }
.ib-profile-demo .disclaimer{ color:#9fb2c8; font-size:.75rem; text-align:center; margin:8px 0 0; }

/* Responsivo */
@media (max-width: 600px){
  .ib-profile-demo{ margin-top:16px !important; }
  .ib-profile-demo .kpis{ grid-template-columns: 1fr; }
  .ib-eligibility{
    background:
      radial-gradient(1200px 600px at 20% 0%, rgba(131,58,180,.55), rgba(225,48,108,.42)),
      #1a1130 !important;
    color:#fff !important;
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }
  .ib-eligibility .valign-wrapper { flex-wrap: wrap; }
  .ib-profile-demo .rate-price { min-width: 60px; }
}

/* =========================================================
   PERFIL DA MARCA (antiga Elegibilidade) — fundo e tipografia
   ========================================================= */
.ib-eligibility{
  background:
    radial-gradient(1200px 600px at 20% 0%, rgba(131,58,180,.55), rgba(225,48,108,.42)),
    #1a1130 !important;
  color:#fff !important;
  padding-top: 150px !important;
  padding-bottom: 150px !important;
}
.ib-elig-copy .ib-h2{ color:#fff !important; margin:0 0 10px !important; }
.ib-elig-copy .ib-h2 span{
  background: var(--ib-grad);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  font-weight:900;
}
.ib-elig-lead{ color:#e7eaf0 !important; margin: 6px 0 14px !important; }

/* =========================================================
   Lista com “check” neon
   ========================================================= */
.ib-list-check{ list-style:none; padding:0; margin:0 0 16px; }
.ib-list-check--neon li{
  position:relative; padding-left:34px; margin:10px 0; color:#dbe2ea;
}
.ib-list-check--neon li::before{
  content:"\f00c"; /* Font Awesome check */
  font-family:"Font Awesome 5"; font-weight:900;
  position:absolute; left:0; top:2px;
  width:22px; height:22px; line-height:22px; text-align:center;
  border-radius:50%;
  color:#111; font-size:12px;
  background: var(--ib-grad);
  box-shadow: 0 0 14px rgba(225,48,108,.35);
}

/* Botão da coluna de copy */
.ib-elig-copy .btn{ margin-top: 8px !important; }

/* =========================================================
   CARD DA MARCA — base aproveitando o demo anterior
   ========================================================= */
.ib-profile-demo{
  background:#0f1116 !important;
  border: 2px solid transparent !important;
  border-radius: 20px !important;
  background:
    linear-gradient(#0f1116, #0f1116) padding-box,
    linear-gradient(135deg, rgba(131,58,180,.9), rgba(225,48,108,.9), rgba(252,175,69,.9)) border-box !important;
  box-shadow: 0 20px 50px rgba(0,0,0,.45), 0 10px 26px rgba(131,58,180,.18) !important;
  padding: 20px !important;
  color:#e5e7eb !important;
}

/* Topo do card (logo + nome + verificação) */
.ib-profile-demo .top{ display:flex; align-items:center; gap:12px; }
.ib-profile-demo .brand-logo{
  width:56px; height:56px; border-radius:12px; object-fit:cover; background:#12141b;
  box-shadow: 0 6px 16px rgba(0,0,0,.35);
  padding: 10px;
}
.ib-profile-demo .who .name{ color:#fff; font-weight:800; line-height:1; }
.ib-profile-demo .who .handle{ color:#9fb2c8; font-size:.9rem; }
.ib-profile-demo .verify{
  margin-left:auto; display:inline-flex; gap:6px; align-items:center;
  color:#A7F3D0; font-weight:800; font-size:.85rem;
  background: rgba(16,185,129,.14); border:1px solid rgba(16,185,129,.35);
  padding:6px 10px; border-radius:999px;
}
.ib-profile-demo .verify i{ color:#34D399; }

/* Pílulas de métricas */
.ib-profile-demo .metrics{
  display:flex; flex-wrap:wrap; gap:8px; margin: 12px 0 10px;
}
.ib-profile-demo .pill{
  display:inline-flex; align-items:center; padding:6px 10px; border-radius:999px;
  background: rgba(255,255,255,.06); color:#e7eaf1; border:1px solid rgba(255,255,255,.12);
  font-size:.9rem;
}

/* Briefs / oportunidades (reaproveita “rates”) */
.ib-profile-demo .rates{ display:grid; gap:8px; margin:8px 0 10px; }
.ib-profile-demo .rate-item{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:10px 12px; border-radius:12px;
  background: rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.10);
}
.ib-profile-demo .rate-title{
  color:#dbe2ea; font-weight:700; display:flex; align-items:center; gap:8px;
}
.ib-profile-demo .rate-title i{ opacity:.9; }
.ib-profile-demo .rate-price{
  font-weight:900; letter-spacing:.2px;
  background: var(--ib-grad);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

/* KPIs (campanhas/ROAS) */
.ib-profile-demo .kpis{
  display:grid; grid-template-columns: repeat(2,1fr); gap:8px; margin-bottom:10px;
}
.ib-profile-demo .kpi{
  background: rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.10);
  border-radius:12px; padding:10px 12px;
}
.ib-profile-demo .kpi-label{ color:#9fb2c8; font-size:.8rem; }
.ib-profile-demo .kpi-value{ color:#fff; font-weight:900; display:block; }

/* CTA do card + rodapé */
.ib-profile-demo .actions{ display:flex; justify-content:center; margin: 6px 0 0; }
.ib-profile-demo .actions .btn{ min-width: 260px; }
.ib-profile-demo .disclaimer{ color:#9fb2c8; font-size:.75rem; text-align:center; margin:8px 0 0; }

/* =========================================================
   Responsivo
   ========================================================= */
@media (max-width: 600px){
  .ib-profile-demo{ margin-top:16px !important; }
  .ib-profile-demo .kpis{ grid-template-columns: 1fr; }
  .ib-eligibility{
    background:
      radial-gradient(1200px 600px at 20% 0%, rgba(131,58,180,.55), rgba(225,48,108,.42)),
      #1a1130 !important;
    color:#fff !important;
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }
  .ib-eligibility .valign-wrapper { flex-wrap: wrap; }
  .ib-profile-demo .rate-price { min-width: 80px; text-align:right; }
}

/* =========================================================
   MICROBAR encorpada (gradiente)
   ========================================================= */
.ib-microbar--fat{
  padding: clamp(18px, 3.2vw, 28px) 0 !important;
}
.ib-microbar--gradient{
  background: var(--ib-grad) !important;
  color:#111 !important;
  border:0 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 10px 22px rgba(0,0,0,.25);
}
.ib-microbar--gradient .ib-microbar-text{ color:#fff !important; }

/* =========================================================
   BENEFÍCIOS — fundo escuro com "nebulosa" + cards soft glow
   ========================================================= */
.ib-benefits{
  background:
    radial-gradient(900px 380px at 12% 0%, rgba(131,58,180,.08), transparent 52%),
    radial-gradient(900px 380px at 88% 18%, rgba(225,48,108,.08), transparent 52%),
    #0b1020 !important;
  padding-top: clamp(32px, 5vw, 64px);
  padding-bottom: clamp(32px, 5vw, 64px);
}

.ib-benefits .btn{
  margin-top: 20px !important;
}

.ib-benefits-title{
  color:#fff; margin-bottom: 14px; text-align:center;
}
.ib-benefits-title span{
  background: var(--ib-grad);
  -webkit-background-clip:text; background-clip:text;
  color:transparent; font-weight:900;
}

/* Igualar altura dos cards (sem height fixo) */
.ib-cards-benefits .col {       /* garante colunas flex */
  display: flex;
}
.ib-cards-benefits .card {      /* card preenche a coluna e equaliza */
  display: flex;
  flex-direction: column;
  width: 100%;
}
.ib-cards-benefits .card-content {
  flex: 1;
  display: flex;
  flex-direction: column;
}

/* Card — superfície escura + glow suave (diferente do "Como funciona") */
.ib-card--softglow{
  background:#0f1116 !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:18px !important;
  box-shadow:
    0 0 0 1px rgba(131,58,180,.10),
    0 14px 34px rgba(0,0,0,.45),
    0 28px 68px rgba(225,48,108,.18) !important;
  transition: transform .18s ease, box-shadow .18s ease;
  min-height: 300px;
  display: flex;
  align-content: center;
  flex-wrap: wrap;
}
.ib-card--softglow:hover{
  transform: translateY(-3px);
  box-shadow:
    0 0 0 1px rgba(131,58,180,.18),
    0 22px 54px rgba(0,0,0,.55),
    0 36px 90px rgba(225,48,108,.24) !important;
}

/* Conteúdo do card — centralizado e equalizado */
.ib-cards-benefits .card-content{
  padding: 28px !important;
  display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px;
}
.ib-grid-cards--value .card-content{
  justify-content:flex-start;
}
.ib-cards-benefits .ib-h3{ color:#fff !important; margin: 2px 0 4px; }
.ib-cards-benefits p{ color:#cfd6df !important; margin:0; line-height:1.55; }

/* Ícone grande em cápsula — 100% centralizado */
.ib-benef-ico{
  width:56px; height:56px; border-radius:14px;
  display:grid; place-items:center; text-align:center;
  background: var(--ib-grad); color:#fff;
  box-shadow: 0 10px 26px rgba(225,48,108,.30), inset 0 1px 0 rgba(255,255,255,.35);
}
.ib-benef-ico svg,
.ib-benef-ico i{ font-size:24px; line-height:1; display:block; }

/* CTA da sessão */
.ib-benefits .btn.ib-btn--primary{ margin-top: 10px; }

/* Responsivo */
@media (max-width:600px){
  .ib-benef-ico{ width:50px; height:50px; border-radius:12px; }
  .ib-benef-ico i{ font-size:22px; }
  .ib-cards-benefits .card-content{ padding:22px !important; }
}

/* =========================================================
   PLANOS — gradiente de fundo + cards longos e alinhados
   ========================================================= */
.ib-plans--gradient{
  background: var(--ib-grad) !important;
  padding-top: clamp(32px, 5vw, 68px);
  padding-bottom: clamp(36px, 5vw, 72px);
}
.ib-plans--gradient .container{ width: 90% !important; }
.ib-plans-title{ color:#fff; margin-bottom:6px; }
.ib-plans-title span{
  background: var(--ib-bg);
  -webkit-background-clip:text; background-clip:text;
  color:transparent; font-weight:900;
}
.ib-plans .ib-sub{ color:#e7eaf1; margin:0 auto 18px; max-width:820px; }

/* Row/cols: mesma altura e sem quebra “estranha” */
.ib-plans-row{ display:flex; flex-wrap:wrap; gap:24px; }
.ib-plans-row > .col{ display:flex; }
.ib-plan-col{ flex:1 1 320px; }
.ib-plan{ flex:1; display:flex; flex-direction:column; position:relative; }

/* Card base */
.ib-plan{
  background:#0f1116 !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:20px !important;
  box-shadow:
    0 0 0 1px rgba(131,58,180,.10),
    0 14px 34px rgba(0,0,0,.45),
    0 28px 68px rgba(225,48,108,.18) !important;
  transition: transform .18s ease, box-shadow .18s ease;
}
.ib-plan:hover{
  transform: translateY(-3px);
  box-shadow:
    0 0 0 1px rgba(131,58,180,.18),
    0 22px 54px rgba(0,0,0,.55),
    0 36px 90px rgba(225,48,108,.24) !important;
}
.ib-plan .card-content{ display:flex; flex-direction:column; height:100%; padding: 60px 40px !important; }
.ib-plan .btn-block{ width:100% !important; margin-top:10px !important; }

.ib-plan__topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom: 6px;
}

.ib-plan__cycle-pill{
  display:inline-flex;
  align-items:center;
  padding:4px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
  border:1px solid transparent;
}

.ib-plan__cycle-pill.is-semiannual{
  background: rgba(59,130,246,.16);
  border-color: rgba(96,165,250,.34);
  color: #bfdbfe;
}

.ib-plan__cycle-pill.is-quarterly{
  background: rgba(244,114,182,.16);
  border-color: rgba(244,114,182,.34);
  color: #fbcfe8;
}

.ib-plan__cycle-pill.is-monthly{
  background: rgba(168,85,247,.16);
  border-color: rgba(196,181,253,.34);
  color: #ddd6fe;
}

.ib-plan__cycle-pill.is-annual{
  background: rgba(20,184,166,.16);
  border-color: rgba(45,212,191,.34);
  color: #99f6e4;
}

.ib-plan__cycle-pill.is-default{
  background: rgba(71,85,105,.22);
  border-color: rgba(148,163,184,.3);
  color: #cbd5e1;
}

/* Barra superior colorida */
.ib-plan__bar{
  position:absolute; left:0; top:0; right:0; height:6px;
  background: var(--ib-grad);
  border-top-left-radius:20px; border-top-right-radius:20px;
}
.ib-plan__bar--thick{ height:10px; }

/* Ribbon (igual estilo do “Mais inteligente”) */
.ib-tag-ribbon{
  position: static;
  background: linear-gradient(90deg,#ffb347,#ff5b84);
  color:#111; font-weight:800; font-size:12px;
  padding:6px 10px; border-radius:10px;
  box-shadow: 0 8px 18px rgba(252,175,69,.25);
}
.ib-tag--waitlist{
  background: linear-gradient(90deg,#a78bfa,#8b5cf6) !important;
  color:#111 !important;
  box-shadow: 0 8px 18px rgba(167,139,250,.30);
}

/* Título e textos */
.ib-plan .ib-h3{ color:#fff !important; margin:0 0 8px; }
.ib-plan-desc{ color:#cfd6df !important; }

/* Preço */
.ib-price{ margin: 6px 0 12px; color:#E5E7EB !important; }
.ib-price-main{
  font-size: clamp(26px, 3.2vw, 34px); line-height:1;
  display:block; color:#fff;
}

.ib-price-installments{
  font-size: .48em;
  font-weight: 800;
  color: inherit;
  margin-right: 4px;
}

.ib-price-period{
  margin-left: 4px;
  font-size: .44em;
  font-weight: 700;
  color: inherit;
}
.ib-payline{ display:block; margin-top:7px; color:#9fb0c9; font-size: .79rem; font-weight:700; line-height: 1.3; }

.ib-plan .ib-price{
  min-height: 66px;
}

.ib-price-compare{
  margin: 4px 0 0;
  color:#94a3b8;
  font-size: .92rem;
  text-decoration: line-through;
  min-height: 1.2em;
}

.ib-price-compare.is-empty{
  visibility: hidden;
}

/* Economia (chip) */
.ib-chip--savings{
  background: linear-gradient(90deg,#ffb347,#ff5b84) !important;
  color:#111 !important; border:none !important;
  border-radius:999px !important; height:28px; line-height:28px;
  padding:0 12px; margin-top:8px; display:inline-block; font-weight:800;
}

/* PIX destacado abaixo do preço */
.ib-price-aux{ margin: 6px 0 10px; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.ib-pix-pill{
  margin: 4px 0 0;
  padding: 7px 10px;
  border-radius: 10px;
  border: 1px solid rgba(34, 197, 94, 0.32);
  background: rgba(22, 163, 74, 0.16);
  color: #dcfce7;
  font-size: 0.72rem;
  line-height: 1.42;
  font-weight: 700;
}

.ib-pix-pill strong{
  color: #bbf7d0;
  font-size: 0.78rem;
}

/* Lista */
.ib-plan-list{ list-style:none; padding:0; margin:10px 0 12px; }
.ib-plan-list li{
  position:relative; padding-left:26px; color:#cfd6df; margin:8px 0;
}
.ib-plan-list li::before{
  content:""; position:absolute; left:0; top:7px;
  width:16px; height:16px; border-radius:50%;
  background: var(--ib-grad);
  box-shadow: 0 6px 14px rgba(225,48,108,.30), inset 0 1px 0 rgba(255,255,255,.35);
}

/* Bônus */
.ib-bonus{ color:#E5E7EB !important; margin: 6px 0 14px; }

/* Destaque central (outline laranja + boost) */
.ib-plan--center{
  outline:2px solid rgba(252,175,69,.60) !important;
  box-shadow:
    0 0 0 1px rgba(252,175,69,.25),
    0 22px 60px rgba(0,0,0,.6),
    0 44px 120px rgba(252,175,69,.30) !important;
}
.ib-plan--orange .ib-plan__bar{ background: linear-gradient(90deg,#ffb347,#ff5b84); }

.ib-plans-row .btn{
  position: relative;
  top: 20px;
}

.ib-plans .ib-muted{
  color: #fff !important;
  margin-top: 30px !important;
}

/* Responsivo fino */
@media (max-width:600px){
  .ib-plan .card-content{ padding: 40px 20px !important; }
  .ib-tag-ribbon{ top: 12px; right:10px; }
  .ib-price-main{ font-size:28px; }
}

/* --- CARROSSEL (Materialize) --- */
.ib-plans-carousel { margin-top: 6px; height: 800px !important; }
.ib-plans-carousel .carousel-item { width: 420px !important; margin-top: -14em !important; }          /* desktop */
@media (max-width: 600px){
  .ib-plans .container { width: 100% !important; }
  .ib-plans-carousel .carousel-item{ width: 75vw !important; }
  .ib-plans-carousel { width: calc(100% + 40px) !important; margin-left: -20px !important;  }
  .ib-plans-carousel .carousel-item { margin-top: -16em !important; }          /* moblie */
}

/* efeito de profundidade */
.ib-plans-carousel .carousel-item .ib-plan{
  transform: scale(.92);
  opacity: .9;
  transition: transform .22s ease, opacity .22s ease, box-shadow .22s ease;
}
.ib-plans-carousel .carousel-item.active .ib-plan{
  transform: scale(1);
  opacity: 1;
  box-shadow: 0 26px 60px rgba(0,0,0,.45);
}

/* overlay de bloqueio (planos pagos “atrás”) */
.ib-plan--locked{ position:relative; overflow:hidden; }
.plan-locked{
  position:absolute; inset:0;
  z-index: 2;
  background: rgba(18,20,27,.56);
  backdrop-filter: blur(3.5px);
  border-radius: 20px;
  display:flex; align-items:center; justify-content:center;
  pointer-events:none;
}
.lock-wrap{ text-align:center; }
.lock-circle{
  width:64px; height:64px; border-radius:50%;
  display:grid; place-items:center; margin:0 auto 8px;
  background: radial-gradient(circle at 30% 30%, #f9e7b0, #c0901c 70%);
  box-shadow: 0 10px 22px rgba(192,144,28,.5), inset 0 2px 0 rgba(255,255,255,.45);
}
.lock-circle svg,
.lock-circle i{ color:#111; font-size:20px }
.lock-text{ color:#f3d892; font-weight:800; letter-spacing:.2px }

/* botões prev/next */
.ib-plans-nav{ position:relative; width:100%; margin-top:10px; }
.ib-car-prev, .ib-car-next{
  position:absolute; top:-250px; /* alinhado ao meio “visual” dos cards; ajuste se quiser */
  background:#0f1116; border:1px solid rgba(255,255,255,.12);
  box-shadow:0 10px 24px rgba(0,0,0,.35); color:#fff;
}
.ib-car-prev{ left: -6px; }
.ib-car-next{ right: -6px; }
@media (max-width: 992px){
  .ib-car-prev, .ib-car-next{ top: -210px; }
}
@media (max-width: 600px){
  .ib-car-prev, .ib-car-next{ top: -190px; }
}

/* =========================================================
   PROVA SOCIAL (OWL) — ajustes de layout, nav e cartões
   ========================================================= */
.ib-social--owl{ background:#0A0B0F !important; padding-top: clamp(28px,4.5vw,56px); }
.ib-social-title{ color:#fff; margin-bottom:6px; }
.ib-social-title span{
  background: var(--ib-grad);
  -webkit-background-clip:text; background-clip:text; color:transparent; font-weight:900;
}
.ib-social-lead{ color:#e7eaf1; max-width:820px; margin:0 auto 18px; }

/* Wrapper p/ posicionar os botões nas pontas no desktop */
.ib-owl-wrap{ position: relative; }

/* Owl básico */
.ib-owl .item{ padding: 10px 8px; }
.ib-owl .owl-stage-outer{ padding: 8px 0 18px; } /* sem overflow visível, glow fica dentro do card */
.ib-owl.owl-theme .owl-dots{ display:none !important; } /* esconder dots */

/* NAV — por padrão, no mobile fica central embaixo */
.ib-owl-nav{ margin-top: 4px; display:flex; gap:10px; justify-content:center; }
.ib-owl-prev,.ib-owl-next{
  width:40px;height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.16);
  background:#121621;color:#fff;display:grid;place-items:center;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
  z-index: 1;
}
.ib-owl-prev:hover,.ib-owl-next:hover{
  border-color: transparent; background: var(--ib-grad) !important; color:#111 !important; font-weight:900;
}

/* No desktop, os botões vão para as pontas, verticalmente centralizados */
@media (min-width: 992px){
  .ib-owl-nav{ margin:0; }
  .ib-owl-prev,.ib-owl-next{
    position:absolute; top:50%; transform:translateY(-50%);
  }
  .ib-owl-prev{ left:-50px; }
  .ib-owl-next{ right:-50px; }
}

/* Card (glow CONTIDO no próprio card) */
.ib-testi-card{
  background:#121621 !important; border-radius:20px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  padding: 18px; position:relative; overflow:hidden;
  padding-top: 60px !important;
  display: flex;
  align-content: center;
  flex-wrap: wrap;
}
.ib-testi-card::before{
  content:""; position:absolute; inset:0; /* NÃO vaza do card */
  border-radius:22px;
  background: radial-gradient(140px 80px at 15% 0%, rgba(131,58,180,.18), transparent 55%),
              radial-gradient(140px 80px at 85% 0%, rgba(225,48,108,.16), transparent 55%);
  z-index:0;
}

/* Cabeçalho */
.ib-testi-head{ position:relative; z-index:1; display:flex; gap:14px; align-items:center; }
.ib-avatar{ width:90px !important; height:90px !important; border-radius:50%; object-fit:cover; object-position: top; background:#1b2130; border:1px solid rgba(255,255,255,.08); flex:0 0 90px; }
@media (max-width: 600px){ .ib-avatar{ width:90px; height:90px; flex-basis:90px; } }

.ib-avatar-link{ display:inline-flex; }
.ib-testi-meta{ flex:1; min-width:100px; }
.ib-handle{ color:#fff; font-weight:800; text-decoration:none; display:inline-block; }
.ib-handle:hover{ text-decoration:underline; }
.ib-muted{ color:#98a3b3 !important; }
.ib-testi-chips{ display:flex; flex-wrap: nowrap; gap:6px; margin-top:6px; width: 100%;
float: left; }

.ib-chip.ib-chip--thin{
  background: rgba(255,255,255,.06) !important; color:#e7eaf1 !important;
  border:1px solid rgba(255,255,255,.14) !important;
  height:28px; line-height:28px; padding:0 10px; border-radius:999px;
}

/* Rating (nota + 5 estrelas) no topo direito, sem quebrar layout */
.ib-rating{ margin-left:auto; display:flex; align-items:center; gap:8px; position: absolute;
top: -40px; right: 0; color: #FFD77F;
    filter: drop-shadow(0 0 6px rgba(252, 175, 69, .35)); }

.ib-rating-num{ color:#fff; font-weight:900; font-size:18px; letter-spacing:.2px; }
.ib-rating-stars .fa-star, .ib-rating-stars .fa-star-half-stroke{
  color: transparent !important;
  background: var(--ib-grad);
  -webkit-background-clip:text; background-clip:text;
  font-size:18px; line-height:1;
}

/* Texto + métricas */
.ib-testi-text{ position:relative; z-index:1; color:#dce2ea; margin:12px 0 12px; line-height:1.55; }
.ib-testi-stats{ position:relative; z-index:1; list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:12px 18px; }
.ib-testi-stats li{ color:#cfd6df; display:flex; align-items:center; gap:8px; }
.ib-dot{ width:10px;height:10px;border-radius:50%; background: var(--ib-grad); display:inline-block;
  box-shadow: 0 6px 14px rgba(225,48,108,.30), inset 0 1px 0 rgba(255,255,255,.35);
}

/* =========================================================
   FAQ — 2 colunas, headers com ícone à direita, +/– e transições
   ========================================================= */
.ib-faq{ background:#fff; padding: 40px 20px; }
.ib-faq .ib-h2{ color:#111; }
.ib-faq-lead{ color:#4B5563; max-width:900px; margin:6px auto 18px; }

/* grid gap */
.ib-faq-grid .col{ padding-left:12px !important; padding-right:12px !important; }

/* Collapsible (Materialize) skin escura dentro do fundo branco */
.ib-faq .collapsible{ border:none; box-shadow:none; }
.ib-faq .collapsible li{ margin-bottom:12px; border:none; }
.ib-faq .collapsible-header{
  display:flex; align-items:center; justify-content:space-between;
  background:#121621; color:#eaf0f7; border-radius:14px;
  padding:14px 16px; line-height:1.25; font-weight:800;
  border:1px solid rgba(255,255,255,.08);
  box-shadow: 0 12px 28px rgba(0,0,0,.25);
  transition: background .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.ib-faq .collapsible-header:hover{
  border-color: rgba(252,175,69,.35);
  box-shadow: 0 16px 36px rgba(0,0,0,.32);
}
.ib-faq .collapsible-body{
  background:#0f1116; color:#cfd6df; border-radius:0 0 14px 14px;
  border:1px solid rgba(255,255,255,.10); border-top:none;
  padding:16px 18px;
}
.ib-faq .collapsible-body p{ margin:0; line-height:1.6; }

/* Header ativo: aro/grad leve */
.ib-faq .collapsible li.active .collapsible-header{
  background:#161b24;
  box-shadow:
    0 0 0 1px rgba(131,58,180,.18),
    0 20px 48px rgba(0,0,0,.35),
    0 26px 70px rgba(225,48,108,.14);
}

/* Ícone à direita com + / –  */
.ib-faq .faq-toggle{ margin-left:16px; flex:0 0 auto; }
.ib-faq .faq-toggle {
  width: 15px !important;
  height: 15px !important;
  font-size: 1em !important;
  color: white;
}

.ib-faq .faq-toggle path {
  fill: #fff;
}

/* Links no texto */
.ib-faq .collapsible-body a{ color:#fff; text-decoration:underline; }

/* Responsivo: mantém legível */
@media (max-width: 600px){
  .ib-faq .collapsible-header{ padding:12px 14px; }
  .ib-faq .collapsible-body{ padding:14px 16px; }
  .ib-faq .container { width: 100% !important; padding: 0 !important; }
}

/* =========================================================
   CTA FINAL — card escuro sobre fundo em degradê
   Mantém o visual atual com CSS organizado
   ========================================================= */
.ib-cta-final{
  background: var(--ib-grad) !important;
  padding: clamp(56px, 8vw, 120px) 0;
}
.ib-cta-final .container{ max-width: 1000px; }

/* Card */
.ib-cta-final .cta-box{
  margin: 0 auto;
  text-align: center;
  background:#12141b;
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  padding: clamp(24px, 3.6vw, 40px);
  box-shadow: 0 18px 42px rgba(0,0,0,.35);
}

/* Tipografia */
.ib-cta-final .ib-h2{
  color:#fff;
  letter-spacing:.2px;
  margin: 0 auto .35em;
  max-width: 820px;
  line-height: 1.2;
  text-wrap: balance;
  text-shadow: 0 2px 18px rgba(0,0,0,.25);
}
.ib-cta-final .ib-lead{
  color:#F1F5F9;
  max-width: 760px;
  margin: 0 auto;
  font-size: 1em;
}

/* Ação */
.ib-cta-final .ib-btn{
  margin-top:16px;
  min-width: 240px;
}
/* Ajuste UX: CTA final com ação única centralizada. */
.ib-cta-final__actions{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}
.ib-cta-final__actions .ib-btn{
  min-width: clamp(220px, 34vw, 360px);
}

/* Nota de confiança */
.ib-cta-final .ib-cta-note{
  display:block;
  margin-top:10px;
  color:#9fb2c8;
}

/* =========================================================
   Brand/B2B LP refinements
   ========================================================= */
.brands .ib-hero .ib-h1{ max-width: 100% !important; text-wrap: balance; font-size: 1.5em !important; }
.brands .ib-hero .ib-lead{ max-width: 58ch; margin: 0 !important; margin-top: 20px !important; }
.brands .ib-hero .ib-h1 .ib-hero-highlight {
    margin-bottom: 20px !important;
    width: fit-content !important;
    text-transform: uppercase !important;
    text-align: center !important;
    padding: 10px 16px !important;
}

.brands .ib-hero .ib-hero-highlight, .ib-hero .ib-hero-highlight {
    width: 100% !important;
    font-size: 2em  !important;
    font-weight: 900 !important;
    text-align: center !important;
    line-height: 1em !important;
    text-transform: uppercase !important;
    display: inline-block !important;
    color: rgb(255, 255, 255) !important;
    text-shadow: rgba(0, 0, 0, 0.45) 0px 1px 0px !important;
    box-shadow: 0 10px 24px rgba(236, 72, 153, .35), 0 18px 36px rgba(251, 191, 36, .18) !important;
    padding: 12px !important;
    margin: 0.04em 0.06em 0px 0.12em !important;
    border-radius: 0.55em !important;
    background: linear-gradient(135deg, #833AB4 0%, #E1306C 50%, #FCAF45 100%) !important;
    font-family: "Kanit Bold", Kanit, sans-serif;
}

.ib-playbook-spotlight{
  background: linear-gradient(180deg, #0f1628 0%, #121a2f 100%);
  padding: clamp(34px, 5.2vw, 62px) 0;
}
.ib-playbook-box{
  max-width: 980px;
  margin: 0 auto;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(10,14,24,.86);
  box-shadow: 0 16px 42px rgba(0,0,0,.32);
  padding: clamp(20px, 3.8vw, 34px);
  text-align: center;
}
.ib-playbook-eyebrow{
  margin:0 0 8px;
  text-transform: uppercase;
  letter-spacing:.08em;
  font-size: .78rem;
  font-weight: 800;
  color: #f5c36f;
}
.ib-playbook-box .ib-h2{ color:#fff; margin-bottom: 10px; }
.ib-playbook-lead{ color:#d7deea; max-width: 74ch; margin: 0 auto 12px; line-height: 1.6; }
.ib-playbook-list{ max-width: 760px; margin: 0 auto 16px; text-align: left; }

.ib-preview-caption{
  margin: 0 0 10px;
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #9fb2c8;
  font-weight: 800;
}

.ib-ugc-brand{
  background:
    radial-gradient(120% 120% at 80% 0%, rgba(255, 255, 255, 0.04), transparent 60%), radial-gradient(120% 120% at 0% 100%, rgba(255, 255, 255, 0.04), transparent 60%), rgb(11, 13, 19);
}
.ib-ugc-brand .ib-h2{ color:#fff; margin-bottom: 0 !important; }
.ib-ugc-brand-row{
  display:grid !important;
  grid-template-columns:minmax(0, 1.08fr) minmax(320px, 0.92fr);
  gap:32px;
  align-items: stretch;
  margin-left:0 !important;
  margin-right:0 !important;
  width:100%;
  max-width:100%;
}
.ib-ugc-brand-row > .col{
  float:none !important;
  width:auto !important;
  margin-left:0 !important;
  padding:0 !important;
  min-width:0;
}
.ib-ugc-brand-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}
.ib-ugc-brand-copy > .ib-btn{
  align-self:flex-start;
  min-width: 0;
  width: auto;
  padding-left: 22px !important;
  padding-right: 22px !important;
}

.ib-brand-card .actions .btn{ width: 100%; }

.ib-ugc-brand-lead{
  max-width: 820px;
  margin: 12px 0 0;
  .brands .ib-hero-highlight{ display:block; text-align:center; }
  color:#d6deea;
  line-height:1.62;
}
.ib-ugc-brand-chips,
.ib-ugc-chips{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:8px;
  margin: 6px;
  margin-bottom: -12px !important;
}
.ib-ugc-brand-chips .ib-chip,
.ib-ugc-chips .ib-chip{
  border-color: rgba(255,255,255,.24);
  background: rgba(255,255,255,.06);
}
.ib-ugc-chips .ib-chip i{
  font-size: 12px;
  opacity: .95;
}
.ib-ugc-brand-value-list{
  max-width: 920px;
  margin: 12px 0 14px;
  text-align: left;
}
.ib-ugc-brand-compare-title{
  margin: 0 0 12px;
  color:#fff;
  font-weight: 800;
  letter-spacing: .01em;
}
.ib-ugc-compare-card{
  min-height:100%;
  border-color: rgba(255,255,255,.14) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.34);
  width:100%;
}
.ib-ugc-compare-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 14px;
}
.ib-ugc-compare-col .ib-h3{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom: 8px;
  font-size: 32px  !important;
}
.ib-ugc-compare-col .ib-h3 i{
  font-size: 1.08em;
}
.ib-ugc-compare-col .ib-list-check li{
  margin: 6px 0;
}
.ib-ugc-brand-side,
.ib-ugc-card{
  min-width:0;
}
.ib-ugc-card{
  min-height: 100%;
  border-color: rgba(255,255,255,.12) !important;
}
.ib-ugc-card .card-content p{ color:#d6deea; }
.ib-ugc-brand-note{
  margin-top: 12px;
  color:#c0cad9 !important;
  max-width: 860px;
}

@media (max-width: 992px){
  .ib-cards-how{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .ib-ugc-brand-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:24px;
  }

  .ib-ugc-compare-grid{
    grid-template-columns:1fr;
    gap:10px;
  }
}

@media (max-width: 600px){
  .brands .ib-hero .ib-h1,
  .brands .ib-hero .ib-lead{ text-align: center; margin-left:auto; margin-right:auto; }
  .ib-playbook-box{ padding: 18px 14px; }
  .ib-playbook-list{ text-align: left; }
  .ib-cards-how{ grid-template-columns:1fr; gap:18px; }
  .ib-ugc-brand-lead{ margin-left:auto; margin-right:auto; }
  .ib-ugc-brand-chips,
  .ib-ugc-chips{ justify-content:center; }
  .ib-ugc-brand-value-list{ margin-top: 10px; }
  .ib-ugc-brand-copy > .ib-btn{ align-self:center; width:100%; }
  .ib-ugc-compare-grid{ grid-template-columns: 1fr; gap: 8px; }
}

/* =========================================================
   UGC landing refinements (sister visual of Creator LP)
   ========================================================= */
.ugc .ib-hero-copy{ max-width: 720px; }
.ugc .ib-hero .ib-h1{
  max-width: 100%;
  margin: 0;
  font-size: clamp(2rem, 4.3vw, 3.1rem);
  line-height: 1.04;
  text-wrap: balance;
}
.ugc .ib-hero .ib-hero-lead{
  max-width: 58ch;
  margin: 14px 0 0;
  font-size: clamp(1rem, 2vw, 1.16rem);
  line-height: 1.58;
  color:#eef2f7;
}
.ugc .ib-platforms-subtitle{
  margin: 14px 0 0;
  font-size: .98rem;
  font-weight: 700;
  color:#d8e0ea;
}

.ugc .ib-chips-kicker--compact .ib-chip{
  padding: 4px 10px;
  font-size: .76rem;
  border-color: rgba(255,255,255,.16);
  background: rgba(15,19,32,.78);
}
.ugc .ib-chips-kicker--compact .ib-chip i{ font-size: 10px; }

.ugc .ib-card--form-clean{
  border-radius: 20px;
  border-color: rgba(255,255,255,.18);
  box-shadow: 0 22px 46px rgba(0,0,0,.34);
}
.ugc .ib-card--form-clean .card-content{ padding: 24px 22px 18px !important; }
.ugc .ib-card--form-clean .card-title{
  margin-bottom: 2px;
  font-size: clamp(1.06rem, 1.65vw, 1.32rem);
}
.ugc #form-hero .input-field{ margin-bottom: 8px; }
.ugc #form-hero .input-field input,
.ugc #form-hero .select-wrapper input.select-dropdown{
  border: 1px solid rgba(255,255,255,.14) !important;
}

.ugc .ib-grid-cards--ugc{
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.ugc .ib-grid-cards--ugc .ib-step{
  min-height: 100%;
}
.ugc .ib-grid-cards--ugc .ib-step .card-content{
  display:flex;
  flex-direction:column;
  gap: 8px;
}

.ugc .ib-profile-demo .top{ align-items: flex-start; }
.ugc .ib-status-badge{
  margin-left: auto;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 10px;
  border-radius:999px;
  font-size:.78rem;
  font-weight:800;
  color:#b9f8d8;
  background: rgba(16,185,129,.16);
  border:1px solid rgba(16,185,129,.35);
}
.ugc .ib-preview-niche{
  margin: 10px 0 2px;
  font-size:.82rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#9fb2c8;
}
.ugc .ib-profile-demo .rate-item{
  justify-content:flex-start;
  gap:8px;
  color:#e6ebf3;
  line-height:1.45;
}
.ugc .ib-profile-demo .actions .ib-btn{ min-width: 240px; }

.ugc .ib-benefits-intro{
  max-width: 760px;
  margin: 14px auto 0;
  color:#d3dae5;
  font-size: 1.02rem;
  line-height: 1.62;
}
.ugc .ib-cards-benefits{ margin-top: 26px; }
.ugc .ib-cards-benefits .card-title{ margin-top: 2px; }

.ugc .ib-plans-title{
  max-width: 17ch;
  margin: 0 auto;
  line-height: 1.08;
  text-wrap: balance;
}
.ugc .ib-plans-intro{
  max-width: 720px;
  margin: 12px auto 0;
  color:#f8fafc;
  font-size: 1.04rem;
  line-height: 1.62;
}

.ugc .ib-faq--compact{ padding: 34px 0 30px; }
.ugc .ib-faq--compact .ib-faq-lead{ margin: 8px auto 14px; max-width: 760px; }
.ugc .ib-faq--compact .collapsible li{ margin-bottom: 8px; }
.ugc .ib-faq--compact .collapsible-header{
  padding: 12px 14px;
  border-radius: 12px;
  font-size: .95rem;
  font-weight: 700;
}
.ugc .ib-faq--compact .collapsible-body{
  padding: 12px 14px;
  border-radius: 0 0 12px 12px;
  font-size: .93rem;
  line-height: 1.56;
}

.ugc .ib-cta-final .ib-h2{
  max-width: 22ch;
  margin: 0 auto .4em;
  font-size: clamp(1.62rem, 3.2vw, 2.24rem);
  line-height: 1.1;
  text-wrap: balance;
}
.ugc .ib-cta-final__lead{
  max-width: 58ch;
  margin: 0 auto;
  font-size: 1.03rem;
  line-height: 1.58;
  color:#e7edf6;
}
.ugc .ib-cta-final .ib-btn{
  margin-top: 18px;
  min-width: clamp(230px, 36vw, 340px);
}

@media (min-width: 601px) and (max-width: 992px){
  .ugc .ib-grid-cards--ugc{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ugc .ib-hero .ib-h1{ max-width: 18ch; }
}

@media (max-width: 600px){
  .ugc .ib-hero-row{ align-items: flex-start; }
  .ugc .ib-hero .ib-h1,
  .ugc .ib-hero .ib-hero-lead,
  .ugc .ib-platforms-subtitle,
  .ugc .ib-hero-note{ text-align:center; margin-left:auto; margin-right:auto; }
  .ugc .ib-hero .ib-h1{ max-width: 13ch; }
  .ugc .ib-hero .ib-hero-lead{ max-width: 34ch; }
  .ugc .ib-hero-actions{ justify-content: center; margin-top: 16px; }
  .ugc .ib-card--form-clean{ margin-top: 14px; }
  .ugc .ib-grid-cards--ugc{ grid-template-columns: 1fr; gap: 14px; }
  .ugc .ib-profile-demo .actions .ib-btn{ min-width: 0; width: 100%; }
  .ugc .ib-plans-intro{ font-size: .98rem; line-height: 1.54; }
  .ugc .ib-faq-grid .col{ padding-left:0 !important; padding-right:0 !important; }
  .ugc .ib-faq--compact .collapsible-header{ font-size: .93rem; }
}

@media (max-width: 420px){
  .ugc .ib-hero .ib-h1{ font-size: clamp(1.58rem, 8vw, 1.92rem); }
  .ugc .ib-chips-kicker--compact .ib-chip{ font-size: .72rem; }
  .ugc .ib-card--form-clean .card-content{ padding: 18px 14px 14px !important; }
}

/* Responsivo fino */
@media (max-width:600px){
  .ib-cta-final .ib-h2{ font-size: 1.8rem; }
  .ib-cta-final .ib-lead{ font-size: 1rem; }
  .ib-grid-cards{ grid-template-columns:1fr; }
  .ib-cta-final__actions{ flex-direction:column; }
}

@media (min-width: 601px) and (max-width: 992px){
  .ib-grid-cards{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

/* ========= MODAL: estilo geral ========= */
.ib-modal--waitlist.modal{
  width: 96%;
  max-width: 980px;
  border-radius: 24px;
  overflow: visible;                    /* não cortar sombras */
  top: 20px !important;
}
.ib-modal--waitlist .modal-content{
  padding: 0 !important;
  border-radius: 24px;
  overflow: hidden;
  background: transparent;
}

.ib-modal--waitlist.modal .modal-content{
  height: 95vh;
  overflow: auto;
}

/* Card interno com grid 2 colunas */
.ib-modal-card{ background: transparent; }
.ib-modal-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  background: transparent;
}

/* Esquerda: imagem + grad overlay para casar com a página */
.ib-modal-left{
  position: relative;
  min-height: 100%;
  background: radial-gradient(900px 380px at 15% 0%, rgba(131,58,180,.18), transparent 60%),
              radial-gradient(900px 380px at 85% 20%, rgba(225,48,108,.20), transparent 60%),
              #0b1020;
}
.ib-modal-hero{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: .1;
}
.ib-modal-left-copy{
  position: absolute; inset: 0;
  display: grid; align-content: center;
  padding: clamp(20px, 4vw, 38px);
  color: #eaf0ff;
}
.ib-modal-left-copy h3{ color:#fff; margin:0 0 8px; font-size: 4em; font-weight: 900; }
.ib-modal-left-copy p{ margin:0 0 6px; }
.ib-modal--waitlist.modal small { color: white !important; }

/* Direita: formulário em “cartão branco” */
.ib-modal-right{
  background: var(--ib-surface-2);
  padding: clamp(20px, 3.6vw, 36px);
}
.ib-modal-title{ margin: 0 0 6px !important; }

/* Close */
.ib-modal-close{
  position: absolute; right: 12px; top: 10px;
  border: 0; background: transparent; color:#fff; font-size:20px;
  z-index: 5; cursor: pointer;
  background-color: #1f2530;
  border-radius: 10px;
}

.ib-modal-close svg,
.ib-modal-close i{
  color:#fff; font-size:20px;
}

/* Form em branco (variações Materialize) */
#form-waitlist .input-field input,
#form-waitlist .select-wrapper input.select-dropdown{
  background: rgba(15,23,42,.06) !important;
  border-radius: 12px !important;
  padding-left: 1em !important;
}
#form-waitlist .input-field.col label{ left:1.25rem; }

/* Select dropdown escuro-claro */
.ib-modal-right .dropdown-content.select-dropdown{
  background: #0f1116 !important;
  border: 1px solid #232834 !important;
  border-radius: 12px !important;
}
.ib-modal-right .dropdown-content.select-dropdown li > span{
  color:#e5e7eb !important; padding:10px 14px !important;
}
.ib-modal-right .dropdown-content.select-dropdown li:hover > span,
.ib-modal-right .dropdown-content.select-dropdown li.active > span{
  color:#fff !important; background: var(--ib-grad) !important; border-radius:8px !important;
}

/* Responsivo: empilha */
@media (max-width: 900px){
  .ib-modal-grid{ grid-template-columns: 1fr; }
  .ib-modal-left{ min-height: 180px; }
  .ib-modal-left-copy{ align-content: end; padding: 20px; }
  .ib-modal-left-copy h3{ font-size: 3em; font-weight: 900; }
  .ib-consent label span { font-size: .88rem !important; line-height: 1.48 !important; }
  .ib-card--form .ib-consent [type="checkbox"]+span:not(.lever):before, .ib-card--form .ib-consent [type="checkbox"]:not(.filled-in)+span:not(.lever):after{
    top: 3px !important;
  }
  .ib-consent-card{ padding:12px; }
  .ib-consent-card .ib-consent label span{ padding-left:32px; }
}

/* =========================================================
   MODAL CHECKOUT — redesign premium
   ========================================================= */
.ib-modal--checkout.modal {
  width: 96%;
  max-width: 960px;
  border-radius: 24px;
  overflow: visible;
  top: 50% !important;
  transform: translateY(-50%) !important;
}
.ib-modal--checkout .modal-content,
.ib-modal-inner {
  padding: 0 !important;
  border-radius: 24px;
  overflow: hidden;
  background: #0b1020;
}

.ib-modal--checkout .modal-content {
  height: auto !important;
  max-height: min(88vh, 760px);
  overflow: auto;
}
.ib-modal-inner { position: relative; }

/* Botão fechar  */
.ib-modal-x {
  position: absolute;
  top: 12px; right: 14px;
  z-index: 20;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 10px;
  width: 36px; height: 36px;
  cursor: pointer;
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 15px;
  transition: background .2s;
}
.ib-modal-x:hover { background: rgba(255,255,255,.16); }

/* Overlay de loading */
.ib-modal-loading {
  position: absolute; inset: 0;
  z-index: 30;
  background: rgba(11,16,32,.9);
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  gap: 16px;
  backdrop-filter: blur(6px);
  border-radius: 24px;
}
.ib-modal-loading__spinner {
  width: 44px; height: 44px;
  border: 3px solid rgba(255,255,255,.12);
  border-top-color: #a855f7;
  border-radius: 50%;
  animation: ib-checkout-spin .7s linear infinite;
}
.ib-modal-loading__text { color: #e2e8f0; font-size: .95rem; margin: 0; }

/* Grid principal */
.ib-modal-body {
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  min-height: 0;
}

/* Painel esquerdo — pitch */
.ib-modal-pitch {
  position: relative;
  padding: clamp(28px,4vw,44px);
  background:
    radial-gradient(ellipse 110% 75% at 20% -5%,  rgba(168,85,247,.22),  transparent 55%),
    radial-gradient(ellipse  90% 70% at 85% 105%, rgba(236,72,153,.16),  transparent 55%),
    #0b1020;
  display: flex; flex-direction: column; justify-content: center;
  border-right: 1px solid rgba(255,255,255,.05);
}
.ib-modal-pitch__kicker {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: .72rem; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase;
  color: #a855f7;
  background: rgba(168,85,247,.12);
  border: 1px solid rgba(168,85,247,.22);
  border-radius: 100px;
  padding: 4px 12px;
  margin-bottom: 18px;
  width: fit-content;
}
.ib-modal-pitch__title {
  font-size: clamp(1.25rem,2.5vw,1.8rem);
  font-weight: 800;
  color: #f1f5f9;
  line-height: 1.22;
  margin: 0 0 20px;
}
.ib-modal-pitch__list {
  list-style: none;
  margin: 0 0 24px; padding: 0;
  display: flex; flex-direction: column; gap: 10px;
}
.ib-modal-pitch__list li {
  color: #94a3b8;
  font-size: .875rem;
  padding-left: 22px;
  position: relative;
  line-height: 1.45;
}
.ib-modal-pitch__list li::before {
  content: '';
  position: absolute; left: 0; top: 6px;
  width: 9px; height: 9px;
  border-radius: 50%;
  background: linear-gradient(135deg, #a855f7, #ec4899);
}
.ib-modal-pitch__plan {
  display: flex; gap: 12px; align-items: center;
  background: rgba(168,85,247,.1);
  border: 1px solid rgba(168,85,247,.25);
  border-radius: 14px;
  padding: 12px 16px;
  margin-top: 4px;
}
.ib-modal-pitch__plan-icon { color: #a855f7; font-size: 1.1rem; flex-shrink: 0; }
.ib-modal-pitch__plan-info { display: flex; flex-direction: column; gap: 2px; }
.ib-modal-pitch__plan-label { color: #a855f7; font-size: .7rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.ib-modal-pitch__plan-name  { color: #f1f5f9; font-size: .92rem; font-weight: 700; }
.ib-modal-pitch__plan-cycle { color: #94a3b8; font-size: .78rem; }

/* Painel direito — formulário */
.ib-modal-form-panel {
  background: #111827;
  padding: clamp(28px,4vw,44px);
  display: flex; flex-direction: column; justify-content: center;
}
.ib-modal-form-head { margin-bottom: 22px; }
.ib-modal-form-head__title { font-size: 1.3rem; font-weight: 700; color: #f1f5f9; margin: 0 0 4px; }
.ib-modal-form-head__sub   { color: #64748b; font-size: .82rem; margin: 0; }

.ib-modal-fields { display: flex; flex-direction: column; gap: 12px; }
.ib-modal-field  { display: flex; flex-direction: column; gap: 5px; }
.ib-modal-field__label {
  font-size: .775rem; font-weight: 600;
  color: #cbd5e1; letter-spacing: .03em;
}
.ib-modal-field__input {
  background: linear-gradient(180deg, rgba(15,23,42,.62), rgba(15,23,42,.45));
  border: 1px solid rgba(148,163,184,.28);
  border-radius: 14px;
  padding: 13px 16px;
  font-size: .935rem;
  color: #f1f5f9;
  width: 100%; box-sizing: border-box;
  transition: border-color .2s, box-shadow .2s;
  outline: none;
  min-height: 46px;
  height: auto !important;
  box-shadow: none !important;
  margin-bottom: 0 !important;
}
.ib-modal-field__input::placeholder { color: #64748b; }
.ib-modal-field__input:hover {
  border-color: rgba(168,85,247,.45);
  background: linear-gradient(180deg, rgba(15,23,42,.74), rgba(15,23,42,.55));
}
.ib-modal-field__input:focus {
  border-color: rgba(168,85,247,.75);
  box-shadow: 0 0 0 3px rgba(168,85,247,.16) !important;
  background: linear-gradient(180deg, rgba(15,23,42,.82), rgba(15,23,42,.64));
}
.ib-modal-field__input:-webkit-autofill,
.ib-modal-field__input:-webkit-autofill:hover,
.ib-modal-field__input:-webkit-autofill:focus {
  -webkit-text-fill-color: #f1f5f9;
  -webkit-box-shadow: 0 0 0 1000px #162033 inset;
  transition: background-color 9999s ease-out 0s;
}

/* Força visual premium nos inputs da modal (override Materialize legado) */
.ib-modal--checkout .ib-modal-form .ib-modal-field__input,
.ib-modal--checkout .ib-modal-form input[type="text"],
.ib-modal--checkout .ib-modal-form input[type="email"],
.ib-modal--checkout .ib-modal-form input[type="tel"] {
  background: linear-gradient(180deg, rgba(15,23,42,.62), rgba(15,23,42,.45)) !important;
  border: 1px solid rgba(148,163,184,.28) !important;
  border-radius: 14px !important;
  color: #f1f5f9 !important;
  min-height: 46px !important;
  height: 46px !important;
  padding: 0 16px !important;
  margin: 0 !important;
  box-shadow: none !important;
  width: calc(100% - 2em) !important;
}
.ib-modal--checkout .ib-modal-form .ib-modal-field__input::placeholder,
.ib-modal--checkout .ib-modal-form input[type="text"]::placeholder,
.ib-modal--checkout .ib-modal-form input[type="email"]::placeholder,
.ib-modal--checkout .ib-modal-form input[type="tel"]::placeholder {
  color: #64748b !important;
}
.ib-modal--checkout .ib-modal-form .ib-modal-field__input:hover,
.ib-modal--checkout .ib-modal-form input[type="text"]:hover,
.ib-modal--checkout .ib-modal-form input[type="email"]:hover,
.ib-modal--checkout .ib-modal-form input[type="tel"]:hover {
  border-color: rgba(168,85,247,.45) !important;
}
.ib-modal--checkout .ib-modal-form .ib-modal-field__input:focus,
.ib-modal--checkout .ib-modal-form input[type="text"]:focus,
.ib-modal--checkout .ib-modal-form input[type="email"]:focus,
.ib-modal--checkout .ib-modal-form input[type="tel"]:focus {
  border-color: rgba(168,85,247,.75) !important;
  box-shadow: 0 0 0 3px rgba(168,85,247,.16) !important;
  background: linear-gradient(180deg, rgba(15,23,42,.82), rgba(15,23,42,.64)) !important;
}

/* Spinner inline no botão submit */
.ib-modal-submit-spinner {
  display: inline-block;
  width: 15px; height: 15px;
  border: 2px solid rgba(255,255,255,.3);
  border-top-color: #fff;
  border-radius: 50%;
  animation: ib-checkout-spin .6s linear infinite;
  vertical-align: middle; margin-left: 6px;
}

/* Aviso de privacidade */
.ib-modal-privacy {
  text-align: center; margin-top: 11px;
  font-size: .74rem; color: #475569;
  display: flex; align-items: center; justify-content: center; gap: 5px;
}
.ib-modal-privacy i { color: #64748b; }

/* Responsivo modal checkout */
@media (max-width: 760px) {
  .ib-modal--checkout.modal {
    top: 50% !important;
    transform: translateY(-50%) !important;
  }
  .ib-modal-body { grid-template-columns: 1fr; min-height: auto; }
  .ib-modal-pitch {
    padding: 24px 20px 20px;
    border-right: 0; border-bottom: 1px solid rgba(255,255,255,.05);
    justify-content: flex-start;
  }
  .ib-modal-pitch__title { font-size: 1.2rem; }
  .ib-modal-pitch__list  { margin-bottom: 16px; }
  .ib-modal-form-panel   { padding: 24px 20px; }
}

/* =========================================================
   FOOTER — 4 colunas + posts compactos + barra inferior
   ========================================================= */
.ib-footer{
  background:#0F131A;
  color:#cfd6df;
  padding:40px 0 0;
  border-top:1px solid #1f2530;
}
.ib-footer-row {
  padding: 0 5%;
}
.ib-footer-row .col{ margin-bottom:24px }
.ib-foot-sub{ color:#fff; font-weight:800; margin:0 0 10px }
.ib-foot-links{ list-style:none; padding:0; margin:0 }
.ib-foot-links li{ margin:6px 0 }
.ib-foot-links a{ color:#d7dce4; text-decoration:none }
.ib-foot-links a:hover{ color:#fff }

/* Logo */
.ib-foot-logo img{ display:block; height: 80px; width: 100%; object-fit: contain; object-position: left; }

/* Redes (mesmo look da Hero, versão compacta) */
.ib-foot-brand-icons{
  display:flex; gap:10px; margin:14px 0 0; padding:0; list-style:none;
}
.ib-foot-brand-icons li a{
  display:grid; place-items:center; width:36px; height:36px; border-radius:10px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 8px 18px rgba(0,0,0,.25);
}
.ib-foot-brand-icons svg,
.ib-foot-brand-icons i{ color:#fff; font-size:18px; line-height:1; }
/* fundos oficiais (aprox.) */
.ib-foot-brand-icons .brand-ig a{ background: linear-gradient(135deg,#833AB4 0%, #E1306C 50%, #FCAF45 100%); }
.ib-foot-brand-icons .brand-fb a{ background:#1877F2; }
.ib-foot-brand-icons .brand-yt a{ background:#FF0000; }
.ib-foot-brand-icons .brand-tt a{ background:#000; }

/* Últimos posts — card mini */
.ib-post-mini{
  display:grid; grid-template-columns:56px 1fr; gap:10px;
  align-items:center; background:#151A22; border:1px solid #2A3140;
  border-radius:12px; padding:8px; text-decoration:none; color:#e5e7eb;
  margin:8px 0;
  transition: border-color .18s ease, transform .18s ease;
}
.ib-post-mini:hover{ border-color: rgba(252,175,69,.55); transform: translateY(-1px); }
.ib-post-mini img,
.ib-post-mini__ph{
  width:56px; height:56px; border-radius:8px; object-fit:cover; background:#222;
}
.ib-post-mini__title{ display:block; color:#fff; line-height:1.25; font-size: .8em !important; }
.ib-post-mini__date{ display:block; color:#aab2be; font-size:12px; margin-top:2px }

/* Barra inferior sólida (roxo neutro) */
.ib-footer-bottom{
  background: #23143b; /* roxo sólido, sem degradê */
  border-top:1px solid rgba(255,255,255,.06);
  margin-top:24px;
}
.ib-footer-bottom .container{ padding:15px 0; }
.ib-footer-bottom p{ color:#e6e8ee; margin:0; text-align: center; }

/* Responsivo */
@media (max-width: 600px){
  .ib-foot-logo img{ max-width:160px; }
  .ib-foot-brand-icons li a{ width:34px; height:34px; }
  .ib-post-mini{ grid-template-columns:52px 1fr; }
  .ib-post-mini img, .ib-post-mini__ph{ width:52px; height:52px; }
  .ib-post-mini__title { font-size: .9em !important; }
}

/* =========================================================
   PLATAFORMAS/SEÇÕES DE FUNDO
   ========================================================= */
.ib-how, .ib-benefits, .ib-plans, .ib-faq{ background:#fff }
.ib-eligibility, .ib-microbar, .ib-social, .ib-hero{ color:#fff }

/* =========================================================
   MISC / AJUSTES
   ========================================================= */
.ib-step .card, .ib-card{ transition: transform .12s ease, box-shadow .12s ease }
.ib-step .card:hover, .ib-card:hover{ transform: translateY(-2px); box-shadow: 0 18px 40px rgba(0,0,0,.25) }

.ib-platform-icons li:hover{ transform: translateY(-1px); }
.ib-platform-icons li{ transition: transform .12s ease }

.ib-hero-copy{ margin-bottom: 24px }
.ib-hero .ib-h1{ margin: 10px 0 12px }
.ib-hero .ib-lead{ margin: 0 0 14px }

/* Responsividade fina */
@media (max-width: 992px){
  .ib-platform-icons{ gap:10px }
  .ib-platform-icons li{ width:32px; height:32px }
  .ib-hero .ib-h1{ font-size: clamp(26px, 7vw, 40px) }
  .ib-hero-form{ margin-top:18px }
}

/* ===== IB PATCH v1 — AJUSTES CIRÚRGICOS ===== */

/* BOTÕES: degradê da marca em todos os CTAs */
.ib-btn--primary,
.btn-prime-primary,
.btm-prime-primary,
.btn-primary {
  background: var(--ib-grad) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  text-transform: none !important;
  font-weight: 800 !important;
  border-radius: 999px !important;
  transition: transform .15s ease, box-shadow .2s ease;
}
.ib-btn--primary:hover,
.btn-prime-primary:hover,
.btm-prime-primary:hover,
.btn-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 30px rgba(0,0,0,.28);
}

/* CHIPS: sempre escuros */
.ib-chip,
.chip.ib-chip,
.chip-dark {
  background: #12141b !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.14) !important;
}
.ib-chip--badge { background: #0e1118 !important; }

/* HERO: vídeo de fundo (só colocar o <video> no HTML) */
.ib-hero { position: relative; overflow: hidden; }
.ib-hero-video {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center;
  opacity: .18; z-index: 0; pointer-events: none;
}
.brands .ib-hero-video {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center;
  opacity: .25; z-index: 0; pointer-events: none;
}
.ib-hero .container { position: relative; z-index: 1; }

/* ÍCONES de plataformas: apenas ícone, em cápsula escura */
.platform-icons, .ib-platform-icons { gap: 12px !important; }
.platform-icons li, .ib-platform-icons li {
  width: 36px; height: 36px; border-radius: 50%;
  display: grid; place-items: center;
  background: rgba(0,0,0,.35);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.12);
}
.platform-icons span, .ib-platform-icons span { display: none !important; }

/* FORM: padding-left 1em + width calc(100% - 1em) */
#form-hero .input-field input,
#form-hero .input-field textarea,
#form-hero select {
  padding-left: 1em !important;
  background: rgba(255,255,255,.06) !important;
  color: #fff !important;
  border-radius: 12px !important;
}
#form-hero .select-wrapper input.select-dropdown {
  padding-left: 1em !important;
  color: #fff !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.06) !important;
}

/* MICROBAR: #1 escura / #2 colorida (gradiente) */
.ib-microbar { background: #0f1320 !important; color: #fff !important; }
.ib-microbar--color { background: var(--ib-grad) !important; }
.ib-microbar--color .ib-microbar-text { color: #111 !important; }

/* BENEFÍCIOS: mais cor (ícone com gradiente) e centralização */
.ib-cards-benefits .ib-card {
  background: #111318 !important; border: 1px solid #242a36 !important; text-align: center;
}
.ib-cards-benefits .card-content { padding: 24px !important; }
.ib-cards-benefits .ib-h3 { color: #fff !important; }
.ib-cards-benefits p { color: #d5dbea !important; }
.ib-cards-benefits .ib-ico,
.benefit .icon {
  width: 56px; height: 56px; border-radius: 14px; margin: 0 auto 10px;
  background: var(--ib-grad); display: grid; place-items: center; color: #fff;
}

/* PLANOS: escuros + destaque no Anual; botões em degradê */
.ib-plans .card.ib-plan, .ib-plan {
  background: #0f1116 !important; border: 1px solid #232834 !important; margin: 0 !important; padding: 0 !important;
}
.ib-plan .ib-h3 { color: #fff !important; }
.ib-plan .ib-price { color: #e8edf6 !important; }
.ib-plan .ib-plan-desc, .ib-bonus { color: #cfd6df !important; }
.ib-plan a.btn { background: var(--ib-grad) !important; color: #fff !important; }
.ib-plan--highlight { box-shadow: 0 18px 42px rgba(0,0,0,.35) !important; }
.ib-plan--highlight::after {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px;
  background: var(--ib-grad);
}

/* PROVA SOCIAL: carousel + cards */
.ib-social { background: #0a0b0f !important; }
.ib-carousel .carousel-item { width: 86% !important; }
@media (min-width: 992px){ .ib-carousel .carousel-item { width: 46% !important; } }
.ib-testimonial.ib-card {
  background: #171b24 !important; border: 1px solid #242b39 !important;
}
.ib-testi-head { display: flex; gap: 12px; align-items: center; margin-bottom: 8px; width: 100%; float: left; }
.ib-avatar { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; }

/* FAQ: usar Materialize collapsible com skin escura */
.ib-faq .collapsible { border: 0 !important; box-shadow: none !important; }
.ib-faq .collapsible-header {
  background: #161a22 !important; color: #fff !important;
  border: 1px solid #2a3140 !important; border-radius: 14px; margin-bottom: 10px;
}
.ib-faq .collapsible-body {
  background: #0f1116 !important; color: #cfd6df !important;
  border: 1px solid #2a3140 !important; border-radius: 14px; padding: 16px 18px;
}

/* PREVIEW DE PERFIL (elegibilidade - coluna direita) */
.ib-elig-media .ib-profile-demo{
  background:#0f1116; border:1px solid #232834; border-radius:20px;
  padding:16px; color:#e5e7eb; box-shadow:0 10px 24px rgba(0,0,0,.3);
}
.ib-profile-demo .top { display:flex; align-items:center; gap:12px; margin-bottom:10px; }
.ib-profile-demo .avatar { width:56px; height:56px; border-radius:50%; background:#222; }
.ib-profile-demo .name { font-weight:800; color:#fff; line-height:1.1; }
.ib-profile-demo .handle { font-size:12px; color:#9aa3ad; }
.ib-profile-demo .stars { color: #ffd166; font-size:14px; }
.ib-profile-demo .metrics { display:flex; gap:10px; margin:8px 0 12px; }
.ib-profile-demo .pill {
  background:#151922; border:1px solid #2a3140; color:#cfd6df;
  padding:6px 10px; border-radius:999px; font-size:12px; font-weight:700;
}
.ib-profile-demo .actions .btn { width:100%; }
.ib-profile-demo .actions .btn:hover { transform: translateY(-1px); box-shadow:0 12px 30px rgba(0,0,0,.28); }
/* Navegação do carousel (simples) */
.ib-carousel-nav{ display:flex; gap:10px; justify-content:center; margin-top:12px; }
.ib-carousel-nav .btn--ghost{ background:transparent !important; color:#fff !important; border:1px solid rgba(255,255,255,.6) !important; }
.ib-carousel-nav .btn--ghost:hover{ background:rgba(255,255,255,.1) !important; border-color:rgba(255,255,255,.9) !important; }

/* Fallback de estilo para matching premium (se este CSS estiver ativo na pagina app) */
.ib-brand-matching-loading {
  border: 1px solid rgba(148, 163, 184, .32);
  border-radius: 18px;
  background: linear-gradient(140deg, rgba(248, 250, 252, .98) 0%, rgba(239, 246, 255, .98) 52%, rgba(255, 255, 255, .98) 100%);
  display: grid;
  justify-items: center;
  text-align: center;
  gap: 10px;
  padding: 28px 24px;
}

.ib-brand-matching-loading__steps {
  width: min(720px, 100%);
  margin: 6px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.ib-brand-matching-loading__steps li {
  min-height: 38px;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, .42);
  background: rgba(255, 255, 255, .74);
  color: #64748b;
  display: grid;
  place-items: center;
  padding: 6px 8px;
  font-size: .72rem;
  line-height: 1.25;
  font-weight: 600;
}

.ib-brand-matching-loading__steps li.is-active {
  border-color: rgba(37, 99, 235, .48);
  color: #1d4ed8;
  background: rgba(219, 234, 254, .68);
}

.ib-brand-match-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.ib-brand-match-reasons {
  border: 1px solid rgba(191, 219, 254, .86);
  border-radius: 12px;
  background: rgba(239, 246, 255, .78);
  padding: 10px 12px;
}

.ib-brand-more-creators {
  margin-top: 16px;
  display: grid;
  justify-items: start;
  gap: 8px;
  padding: 18px;
  border: 1px solid rgba(59, 130, 246, .24);
  background: linear-gradient(145deg, rgba(248, 250, 252, .95) 0%, rgba(239, 246, 255, .72) 100%);
}

@media (max-width: 768px) {
  .ib-brand-matching-loading {
    padding: 20px 14px;
  }
  .ib-brand-matching-loading__steps {
    grid-template-columns: 1fr;
  }
  .ib-brand-match-grid {
    grid-template-columns: 1fr;
  }
}

/* Waitlist submission */
.ib-submission-page{
  min-height:100vh;
  background:
    radial-gradient(circle at top left, rgba(131,58,180,.18), transparent 34%),
    radial-gradient(circle at top right, rgba(252,175,69,.2), transparent 28%),
    linear-gradient(180deg, #0b0d12 0%, #13161d 38%, #f5f7fb 38%, #f5f7fb 100%);
}
.ib-submission-shell{
  min-height:100vh;
  padding-top:48px !important;
}
.ib-submission-hero{
  display:grid;
  grid-template-columns:minmax(0, 1.4fr) minmax(320px, .9fr);
  gap:24px;
  align-items:stretch;
  margin-bottom:24px;
}
.ib-submission-hero__copy,
.ib-submission-hero__status{
  position:relative;
  z-index:1;
}
.ib-submission-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fef3c7;
  border:1px solid rgba(255,255,255,.12);
  margin-bottom:14px;
  font-size:.84rem;
  font-weight:700;
  letter-spacing:.02em;
}
.ib-submission-meta{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-top:24px;
}
.ib-submission-meta__item{
  padding:14px 16px;
  border-radius:18px;
  background:rgba(10,12,18,.42);
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 12px 24px rgba(0,0,0,.14);
}
.ib-submission-meta__item strong{
  display:block;
  color:#fff;
  font-size:1.05rem;
  margin-top:4px;
}
.ib-submission-meta__label{
  display:block;
  color:rgba(255,255,255,.72);
  font-size:.76rem;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.ib-submission-status-card{
  height:100%;
  background:rgba(13,15,21,.88) !important;
}
.ib-submission-inline-note{
  margin-top:16px;
  padding:14px 16px;
  border-radius:16px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}
.ib-submission-inline-note p,
.ib-submission-inline-note small{
  color:#d7dde6;
}
.ib-submission-inline-note--accent{
  background:linear-gradient(145deg, rgba(225,48,108,.15), rgba(252,175,69,.12));
  border-color:rgba(252,175,69,.26);
}
.ib-submission-inline-note--soft{
  background:#f8fafc;
  border-color:rgba(148,163,184,.18);
}
.ib-submission-flash{
  margin:0 0 24px;
  padding:14px 18px;
  border-radius:16px;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 12px 24px rgba(15,23,42,.06);
}
.ib-submission-flash--success{
  background:rgba(220,252,231,.9);
  color:#166534;
}
.ib-submission-flash--danger{
  background:rgba(254,226,226,.94);
  color:#991b1b;
}
.ib-submission-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.3fr) minmax(280px, .85fr);
  gap:24px;
  align-items:start;
}
.ib-submission-main,
.ib-submission-side{
  display:grid;
  gap:20px;
}
.ib-submission-card{
  border-radius:24px;
  box-shadow:0 22px 50px rgba(15,23,42,.08);
  border:1px solid rgba(148,163,184,.14);
  background:rgba(255,255,255,.96);
}
.ib-submission-card .ib-h2{
  font-size:clamp(22px, 3vw, 31px);
  margin:0 0 8px;
}
.ib-submission-card__header{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:18px;
}
.ib-submission-card__eyebrow{
  display:inline-block;
  margin-bottom:8px;
  color:#833AB4;
  font-size:.8rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ib-submission-summary{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
  margin-bottom:20px;
}
.ib-submission-summary__item{
  padding:14px 16px;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.18);
}
.ib-submission-summary__item span{
  display:block;
  font-size:.76rem;
  color:#64748b;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.ib-submission-summary__item strong{
  display:block;
  margin-top:6px;
  color:#0f172a;
}
.ib-submission-form-steps{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-bottom:18px;
}
.ib-submission-step{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:12px;
  padding:16px 18px;
  border-radius:18px;
  border:1px solid rgba(148,163,184,.18);
  background:#f8fafc;
}
.ib-submission-step span{
  width:32px;
  height:32px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, rgba(131,58,180,.18), rgba(252,175,69,.18));
  color:#0f172a;
  font-weight:800;
}
.ib-submission-step strong{
  display:block;
  color:#0f172a;
  margin-bottom:4px;
}
.ib-submission-step p{
  margin:0;
  color:#475569;
}
.ib-submission-block + .ib-submission-block{
  margin-top:18px;
}
.ib-submission-block h3{
  font-size:1rem;
  margin:0 0 10px;
  color:#0f172a;
}
.ib-submission-link-list,
.ib-submission-asset-list{
  display:grid;
  gap:12px;
}
.ib-submission-link-card,
.ib-submission-asset-card{
  display:grid;
  gap:4px;
  padding:14px 16px;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.18);
  color:#0f172a;
  text-decoration:none;
}
.ib-submission-link-card__label{
  font-size:.76rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#64748b;
}
.ib-submission-form{
  display:grid;
  gap:18px;
}
.ib-submission-form__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
}
.ib-submission-form .field{
  display:grid;
  gap:8px;
}
.ib-submission-upload-head{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.ib-submission-form label{
  color:#0f172a;
  font-weight:700;
}
.ib-submission-form input[type="url"],
.ib-submission-form textarea,
.ib-submission-form .browser-default{
  width:100%;
  border:1px solid rgba(148,163,184,.28);
  border-radius:16px;
  background:#fff;
  padding:14px 16px;
  box-shadow:none;
  min-height:54px;
}
.ib-submission-form textarea{
  min-height:120px;
  resize:vertical;
}
.ib-submission-file-input{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0, 0, 0, 0);
  white-space:nowrap;
  border:0;
}
.ib-submission-upload-trigger{
  display:grid;
  gap:6px;
  padding:18px 20px;
  border-radius:18px;
  border:1px dashed rgba(131,58,180,.34);
  background:linear-gradient(145deg, rgba(248,250,252,.96), rgba(255,255,255,.98));
  cursor:pointer;
  transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.ib-submission-upload-trigger:hover,
.ib-submission-upload-trigger:focus-within{
  border-color:rgba(131,58,180,.56);
  box-shadow:0 16px 28px rgba(15,23,42,.08);
  transform:translateY(-1px);
}
.ib-submission-upload-trigger__title{
  color:#0f172a;
  font-size:1rem;
  font-weight:800;
}
.ib-submission-upload-trigger__copy{
  color:#64748b;
  font-size:.94rem;
  font-weight:500;
}
.ib-submission-upload-list{
  display:grid;
  gap:10px;
}
.ib-submission-upload-item{
  display:grid;
  gap:4px;
  padding:14px 16px;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.18);
}
.ib-submission-upload-item strong{
  color:#0f172a;
}
.ib-submission-upload-item small{
  color:#64748b;
}
.ib-submission-upload-item.is-warning{
  background:rgba(254,242,242,.9);
  border-color:rgba(239,68,68,.24);
}
.ib-submission-field-note{
  margin:0;
  color:#64748b;
  font-size:.86rem;
  line-height:1.5;
}
.ib-submission-consent{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:16px 18px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.18);
}
.ib-submission-consent span{
  color:#0f172a;
  font-weight:600;
  line-height:1.5;
}
.ib-submission-form__footer{
  display:grid;
  gap:12px;
}
.ib-submission-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}
.ib-submission-list li{
  color:#334155;
  padding-left:28px;
  margin-bottom:10px;
}
.ib-submission-timeline{
  display:grid;
  gap:12px;
}
.ib-submission-timeline__item{
  padding:14px 16px;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.18);
}
.ib-submission-timeline__item small{
  display:block;
  margin-top:4px;
  color:#64748b;
}
.ib-submission-timeline__item p{
  margin:8px 0 0;
  color:#334155;
}
@media (max-width: 992px){
  .ib-submission-hero,
  .ib-submission-grid{
    grid-template-columns:1fr;
  }
  .ib-submission-form-steps,
  .ib-submission-meta,
  .ib-submission-summary{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px){
  .ib-submission-shell{
    padding-top:28px !important;
  }
  .ib-submission-card{
    border-radius:20px;
  }
  .ib-submission-form__grid,
  .ib-submission-form-steps,
  .ib-submission-meta,
  .ib-submission-summary{
    grid-template-columns:1fr;
  }
  .ib-submission-card__header{
    flex-direction:column;
  }
  .ib-submission-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .ib-submission-actions .ib-btn{
    width:100%;
  }
  .ib-submission-upload-head{
    flex-direction:column;
  }
}

/* =========================================================
   LP CREATOR — TIPOGRAFIA & LEGIBILIDADE v2
   Refinamentos de escala, entrelinha, contraste, bullets e grid
   ========================================================= */

/* 1. Escala de títulos — limitar extremos e melhorar entrelinha */
.ib-h1{
  font-size: clamp(28px, 5.0vw, 2.6em) !important;   /* era 3em — excessivo */
  line-height: 1.1 !important;                        /* era 1.05 — muito apertado */
}
.ib-h2{
  font-size: clamp(22px, 3.2vw, 33px) !important;    /* era 36px */
  line-height: 1.22 !important;                       /* era 1.12 */
}
.ib-h3{
  line-height: 1.28 !important;                       /* era 1.2 */
}

/* text-wrap: balance previne quebras de linha feias em títulos */
.ib-h1, .ib-h2, .ib-h3{ text-wrap: balance; }

/* Hero H1: pode ser marginalmente mais generoso pois está isolado */
.ib-hero .ib-h1{
  font-size: clamp(28px, 5.2vw, 2.4em) !important;
  line-height: 1.08 !important;
}

/* 2. Headings de seção: centralizar + limitar largura para evitar linhas longas */
.ib-how-title,
.ib-benefits-title,
.ib-plans-title{
  max-width: 800px;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 14px !important;
}

/* 3. Texto de suporte das seções: mais brilho e entrelinha relaxada */
.ib-section-intro{
  line-height: 1.65 !important;
  color: #dce1ea !important;   /* era #d7dbe3 — levemente mais brilhante */
}

/* 4. Cards de transformação — equalizar altura e distribuição interna */
/* O card precisa ser flex-column para que o parágrafo expanda e equalize */
.ib-step.ib-card.ib-neon-card{
  display: flex !important;
  flex-direction: column !important;
}
.ib-step .card-content{
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.ib-step p{
  flex: 1 !important;   /* empurra o parágrafo para preencher o espaço restante */
  margin: 0 !important;
}
/* Número do passo: fonte explícita e alinhamento consistente */
.ib-step .ib-step-num{
  font-size: 1rem !important;
  font-weight: 900 !important;
  flex-shrink: 0 !important;
}
/* H3 dentro dos cards de passo: ligeiramente menor para caber sem truncar */
.ib-step .card-title.ib-h3{
  font-size: clamp(16px, 2.2vw, 19px) !important;
  line-height: 1.3 !important;
  margin-bottom: 8px !important;
  flex-shrink: 0 !important;
  font-weight: 800 !important;
}

/* 5. Bullets neon: corrigir dupla renderização pseudo-element + ícone real */
/* O HTML usa <i class="fa-solid fa-check">, então o ::before causa duplicação */
.ib-list-check--neon li::before{
  display: none !important;
}
/* Ícone real: posicionamento limpo sem transform de escala */
.ib-list-check--neon li i,
.ib-list-check--neon li svg{
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 22px !important;
  height: 22px !important;
  line-height: 22px !important;
  text-align: center !important;
  border-radius: 50% !important;
  color: #fff !important;
  font-size: 11px !important;
  background: var(--ib-grad) !important;
  box-shadow: 0 0 10px rgba(225,48,108,.28) !important;
}

/* 6. Chips do hero: ícones ligeiramente maiores, compact bem ajustado */
.ib-chips-kicker{
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
}
.ib-chip i, .ib-chip svg{
  font-size: 12px !important;
  margin-right: 2px !important;
  flex-shrink: 0;
}
.ib-chips-kicker--compact .ib-chip{
  padding: 5px 11px !important;
  font-size: .77rem !important;
  line-height: 1.18 !important;
  gap: 5px !important;
}

/* Hero: sem ação abaixo dos ícones */
.ib-hero-actions{ display:none !important; }

/* 7. Contraste de parágrafos em fundos escuros da LP */
.ib-how p,
.ib-eligibility p:not(.disclaimer):not(.ib-elig-lead),
.ib-benefits p{ color: #dbe2ea !important; }

/* 8. Value cards: flex interno para equalização de altura */
.ib-grid-cards--value .ib-grid-surface .card-content{
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: 10px !important;
}
.ib-grid-cards--value .ib-grid-surface p{ flex: 1 !important; }

/* Valor: evita cards "esticados" e garante ícone/título bem distribuídos */
.ib-grid-cards--value .ib-card--softglow{
  min-height: 0 !important;
  display: block !important;
}
.ib-grid-cards--value .ib-benef-ico{
  margin-bottom: 4px !important;
}
.ib-grid-cards--value .card-title.ib-h3{
  margin-top: 2px !important;
  margin-bottom: 6px !important;
}

/* 9. FAQ: melhor legibilidade no header e corpo */
.ib-faq .collapsible-header{
  font-size: clamp(13.5px, 1.7vw, 15px) !important;
  line-height: 1.45 !important;
}
.ib-faq .collapsible-body p{
  font-size: .9rem !important;
  line-height: 1.65 !important;
}

/* 10. Mobile: ajuste de escala em telas pequenas */
@media (max-width: 600px){
  .ib-h2{ font-size: clamp(20px, 7vw, 28px) !important; }
  .ib-step .card-title.ib-h3{ font-size: 15px !important; }
  .ib-hero-copy .ib-chips-kicker { justify-content: center !important; }
}

/* =========================================================
   LP CREATOR — Perfil Demo v2 (extensão aspiracional)
   ========================================================= */

/* Badge "Creator verificado" */
.ib-pd-badge{
  display:inline-flex; align-items:center; gap:6px;
  padding:4px 12px; border-radius:999px;
  background:rgba(0,210,130,.12); border:1px solid rgba(0,210,130,.3);
  color:#4dffa6; font-size:.78rem; font-weight:700; letter-spacing:.5px;
  margin-bottom:14px;
}
.ib-pd-badge i{ font-size:.85rem; }

/* Perfil: badge alinhado acima das estrelas no mesmo eixo à direita */
.ib-pd-meta{
  margin-left:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
}
.ib-profile-demo .ib-pd-badge{
  margin:0 !important;
}
.ib-profile-demo .stars{
  margin-left:0 !important;
}

/* Nicho abaixo do @arroba */
.ib-profile-demo .who .niche{
  color:#b8c4d0; font-size:.75rem; margin-top:2px; letter-spacing:.2px;
}

/* Linha de stats: 3 colunas igualadas */
.ib-pd-stats{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  text-align:center; margin:14px 0 12px;
  border-radius:12px; overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
}
.ib-pd-stat{
  padding:10px 8px;
  background:rgba(255,255,255,.04);
  border-right:1px solid rgba(255,255,255,.10);
}
.ib-pd-stat:last-child{ border-right:none; }
.ib-pd-stat__value{
  display:block; font-size:1.15rem; font-weight:900; line-height:1.1;
  background:var(--ib-grad); -webkit-background-clip:text; background-clip:text; color:transparent;
}
.ib-pd-stat__label{
  display:block; color:#9fb2c8; font-size:.72rem; margin-top:2px;
}

/* Separador visual antes das propostas */
.ib-profile-demo .rates{
  border-top:1px solid rgba(255,255,255,.07); padding-top:10px;
}

/* KPIs: sempre em 2 colunas dentro do card */
.ib-profile-demo .kpis{ grid-template-columns:repeat(2,1fr) !important; }

/* CTA aspiracional do card: largura total */
.ib-profile-demo .actions{ margin-top:10px !important; }
.ib-profile-demo .actions .btn{ min-width:0 !important; width:100% !important; }

/* Botões: reduzir sensação de gigantismo mantendo presença premium */
.ib-btn--xl{
  min-height: 48px !important;
  padding: 11px 22px !important;
  font-size: .95rem !important;
}
.ib-form-actions .btn{ min-width: 0 !important; }
.ib-cta-final__actions .ib-btn{ min-width: 0 !important; }

/* Plano: evita título comprimido pelo max-width global */
.ib-plans-title{
  max-width: none !important;
}

/* Mobile: compactar stats */
@media (max-width:480px){
  .ib-pd-stat{ padding:8px 4px; }
  .ib-pd-stat__value{ font-size:1rem; }
}

/* =========================================================
   LP CREATOR — HOTFIX VISUAL v3 (ajustes finos via feedback)
   ========================================================= */

/* Hero badges: alinhados a esquerda no desktop e centralizados no mobile */
.ib-hero-copy .ib-chips-kicker{
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 8px !important;
}
.ib-hero-copy .ib-chip{
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.ib-hero-copy .ib-chip i,
.ib-hero-copy .ib-chip svg{
  margin-right: 0 !important;
  line-height: 1 !important;
  transform: translateY(0) !important;
}

/* Check da elegibilidade: evita vazamento para fora da bolha */
.ib-list-check--neon li{
  min-height: 24px;
  display: flex;
  align-items: center;
}
.ib-list-check--neon li i,
.ib-list-check--neon li svg{
  width: 20px !important;
  height: 20px !important;
  line-height: 20px !important;
  font-size: 10px !important;
  overflow: hidden;
  box-shadow: 0 0 8px rgba(225,48,108,.24) !important;
}

/* Valor: título menos compactado e cards mais legíveis */
.ib-benefits-title{
  max-width: 980px !important;
  line-height: 1.18 !important;
  margin-bottom: 10px !important;
}
.ib-grid-cards--value .card-title.ib-h3{
  font-size: clamp(20px, 2.4vw, 30px) !important;
  line-height: 1.2 !important;
}
.ib-grid-cards--value .ib-grid-surface p{
  font-size: .98rem !important;
  line-height: 1.62 !important;
}
.ib-grid-cards--value .ib-benef-ico i,
.ib-grid-cards--value .ib-benef-ico svg{
  font-size: 22px !important;
}

/* FAQ: dar mais presença visual sem mudar estrutura */
.ib-faq{
  background:
    radial-gradient(1200px 380px at 10% -5%, rgba(131,58,180,.08), transparent 55%),
    radial-gradient(1200px 380px at 90% 0%, rgba(225,48,108,.07), transparent 58%),
    #f8fafc !important;
  padding: 56px 20px !important;
}
.ib-faq .ib-h2{
  font-size: clamp(22px, 2.6vw, 30px) !important;
  line-height: 1.24 !important;
  margin-bottom: 6px !important;
}
.ib-faq .collapsible-header{
  font-size: clamp(14px, 1.35vw, 16px) !important;
}

/* CTA final: impacto mais premium e menos "gritado" */
.ib-cta-final .cta-box{
  position: relative;
  overflow: hidden;
}
.ib-cta-final .cta-box::before{
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(720px 180px at 50% -20%, rgba(252,175,69,.14), transparent 70%);
  pointer-events: none;
}
.ib-cta-final .ib-h2{
  max-width: 820px !important;
  font-size: clamp(22px, 2.6vw, 34px) !important;
  line-height: 1.22 !important;
}

/* Botões: menos "gigante" mas ainda premium */
.ib-btn--xl{
  min-height: 44px !important;
  padding: 10px 20px !important;
  font-size: .93rem !important;
}

/* =========================================================
   HOTFIX VISUAL v4 — FAQ lead + CTA final premium
   ========================================================= */

/* FAQ: subtítulo logo abaixo do título */
.ib-faq .ib-faq-lead{
  color: #555 !important;
  font-size: 1rem !important;
  max-width: 560px !important;
  margin: 0 auto 28px !important;
  line-height: 1.5 !important;
}

/* CTA final: sombra glow para sensação premium como o card de projeto */
.ib-cta-final .cta-box{
  box-shadow:
    0 0 50px rgba(153, 51, 255, .18),
    0 0 100px rgba(225, 48, 108, .10),
    0 20px 48px rgba(0, 0, 0, .40) !important;
  border: 1px solid rgba(153, 51, 255, .22) !important;
}

/* Value CTA button icon alinhado */
.ib-btn--neon .fa-arrow-right{
  font-size: .82em;
  vertical-align: middle;
  position: relative;
  top: -1px;
}

/* =========================================================
   LEGAL PUBLIC PAGES — Premium reading experience
   ========================================================= */


.ib-legal-page{
  background:
    radial-gradient(circle at top left, rgba(201,154,96,.13), transparent 30%),
    radial-gradient(circle at top right, rgba(15,118,110,.08), transparent 26%),
    linear-gradient(180deg, #f7f1e7 0%, #fbfaf7 18%, #f5f3ee 54%, #faf9f6 100%);
  color:#182230;
}

.ib-legal-page .site-header{
  position:relative;
  z-index:6;
}

.ib-legal-main{
  position:relative;
}

.ib-legal-hero{
  position:relative;
  overflow:visible;
  padding:0 0 clamp(22px, 3vw, 34px);
  background:none;
  color:inherit;
}

.ib-legal-hero::before,
.ib-legal-hero::after{
  display:none;
}

.ib-legal-hero::before{
  content:none;
}

.ib-legal-hero::after{
  content:none;
}

.ib-legal-hero__panel{
  position:relative;
  max-width:980px;
  margin:0 auto;
  padding:0 0 clamp(22px, 3vw, 32px);
  border-radius:0;
  background:none;
  border:0;
  border-bottom:1px solid rgba(177,149,112,.2);
  box-shadow:none;
  backdrop-filter:none;
  animation:ib-legal-rise .45s ease both;
}

.ib-legal-breadcrumb{
  margin:0 0 18px;
}

.ib-legal-breadcrumb ol{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

.ib-legal-breadcrumb li{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,.76);
}

.ib-legal-breadcrumb li:not(:last-child)::after{
  content:"";
  width:24px;
  height:1px;
  background:rgba(255,255,255,.28);
}

.ib-legal-breadcrumb__link,
.ib-legal-breadcrumb__current{
  font-size:.78rem;
  line-height:1.2;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:700;
}

.ib-legal-breadcrumb__link{
  color:rgba(255,255,255,.82);
  text-decoration:none;
}

.ib-legal-breadcrumb__link:hover,
.ib-legal-breadcrumb__link:focus-visible{
  color:#fff;
  outline:none;
}

.ib-legal-breadcrumb__current{
  color:#f8fafc;
}

.ib-legal-hero__content{
  max-width:860px;
  display:grid;
  gap:16px;
}

.ib-legal-hero__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-self:start;
  padding:7px 12px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,249,239,.96) 0%, rgba(255,244,225,.94) 100%);
  border:1px solid rgba(201,154,96,.24);
  color:#8b5e1a;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.ib-legal-hero__title{
  margin:0;
  font-family:'Kanit Bold', 'Kanit', sans-serif;
  font-size:clamp(2.45rem, 5.6vw, 4.9rem);
  line-height:.94;
  letter-spacing:-.045em;
  text-wrap:balance;
  color:#101828;
}

.ib-legal-hero__lead{
  margin:0;
  max-width:62ch;
  font-family:'Ubuntu', Tahoma, Geneva, Verdana, sans-serif;
  font-size:clamp(1rem, 2vw, 1.18rem);
  line-height:1.78;
  color:#475467;
}

.ib-legal-shell{
  padding:clamp(38px, 6vw, 72px) 0 clamp(72px, 10vw, 124px);
}

.ib-legal-shell .container{
  width:min(100% - 32px, 1120px);
  margin:0 auto;
}

.ib-legal-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:24px;
  align-items:start;
}

.ib-legal-layout--with-rail{
  grid-template-columns:minmax(0, 1fr) minmax(260px, 300px);
}

.ib-legal-article{
  position:relative;
  min-width:0;
  max-width:1020px;
  margin:0 auto;
  border-radius:34px;
  background:linear-gradient(180deg, #fffdfa 0%, #ffffff 100%);
  border:1px solid rgba(186,169,141,.3);
  box-shadow:0 24px 68px rgba(15,23,42,.08), 0 4px 14px rgba(15,23,42,.04);
  overflow:hidden;
  animation:ib-legal-rise .55s ease both;
}

.ib-legal-article__inner{
  position:relative;
  padding:clamp(38px, 5vw, 72px) clamp(24px, 4vw, 68px);
}

.ib-legal-article__inner::before{
  content:"";
  position:absolute;
  inset:18px;
  border-radius:26px;
  border:1px solid rgba(186,171,144,.16);
  pointer-events:none;
}

.ib-legal-rail{
  position:sticky;
  top:24px;
}

.ib-legal-card{
  padding:24px 22px;
  border-radius:26px;
  background:linear-gradient(180deg, #fff8ed 0%, #fff 100%);
  border:1px solid rgba(201,147,61,.18);
  box-shadow:0 18px 40px rgba(15,23,42,.06);
}

.ib-legal-card__eyebrow{
  display:inline-flex;
  align-items:center;
  color:#8b5e1a;
  font-size:.74rem;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ib-legal-card__title{
  margin:10px 0 0;
  color:#0f172a;
  font-family:'Kanit Bold', 'Kanit', sans-serif;
  font-size:1.65rem;
  line-height:1.08;
}

.ib-legal-card__copy{
  margin:14px 0 0;
  color:#475569;
  font-family:'Ubuntu', Tahoma, Geneva, Verdana, sans-serif;
  font-size:.96rem;
  line-height:1.72;
}

.ib-legal-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  margin-top:20px;
  padding:14px 18px;
  border-radius:999px;
  background:linear-gradient(135deg, #0f2b46 0%, #115e59 100%);
  color:#fff;
  text-decoration:none;
  font-weight:800;
  font-size:.94rem;
  letter-spacing:.02em;
  box-shadow:0 16px 32px rgba(15,23,42,.16);
  transition:transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.ib-legal-cta:hover,
.ib-legal-cta:focus-visible{
  transform:translateY(-1px);
  filter:brightness(1.04);
  box-shadow:0 20px 36px rgba(15,23,42,.18);
  outline:none;
}

.ib-legal-content{
  max-width:72ch;
  margin:0 auto;
  color:#344054;
  font-family:'Ubuntu', Tahoma, Geneva, Verdana, sans-serif;
  font-size:1.06rem;
  line-height:1.92;
  letter-spacing:.002em;
}

/* =========================================================
   VITRINES DE MARCAS E PROJETOS — LPs Creator, UGC e B2B
   ========================================================= */
.ib-showcase{
  position:relative;
  overflow:hidden;
  padding: clamp(52px, 7vw, 92px) 0;
}
.ib-showcase--brands{
  background:
    radial-gradient(1100px 460px at 10% 0%, rgba(244,114,182,.14), transparent 58%),
    radial-gradient(980px 420px at 88% 12%, rgba(59,130,246,.12), transparent 54%),
    linear-gradient(180deg, #f8fafc 0%, #eef3f8 100%);
}
.ib-showcase--projects{
  background:
    radial-gradient(1100px 460px at 88% 0%, rgba(251,191,36,.12), transparent 56%),
    radial-gradient(940px 400px at 0% 20%, rgba(99,102,241,.10), transparent 54%),
    linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%);
}
.ib-showcase__shell{
  position:relative;
  padding: clamp(24px, 3.6vw, 38px);
  border-radius: 32px;
  border:1px solid rgba(148,163,184,.18);
  background:
    linear-gradient(180deg, rgba(255,255,255,.92) 0%, rgba(248,250,252,.98) 100%);
  box-shadow:
    0 24px 70px rgba(15,23,42,.10),
    inset 0 1px 0 rgba(255,255,255,.78);
}
.ib-showcase__shell::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(135deg, rgba(255,255,255,.52) 0%, rgba(255,255,255,0) 36%),
    linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 22%);
}
.ib-showcase__header{
  position:relative;
  z-index:1;
  max-width: 820px;
  margin: 0 auto 26px;
}
.ib-showcase__eyebrow{
  margin-bottom: 10px !important;
  color:#b45309;
}
.ib-showcase__title{
  margin:0;
  color:#0f172a;
  text-wrap:balance;
}
.ib-showcase__intro{
  margin: 12px auto 0 !important;
  max-width: 68ch;
  color:#475569;
  line-height:1.7;
}
.ib-showcase__grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.ib-showcase__footer{
  position:relative;
  z-index:1;
  margin-top: 30px;
}
.ib-showcase-card{
  min-width:0;
  min-height:100%;
  margin:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius: 26px !important;
  border:1px solid rgba(148,163,184,.22) !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
  box-shadow:
    0 18px 44px rgba(15,23,42,.10),
    0 6px 18px rgba(15,23,42,.05) !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.ib-showcase-card:hover{
  transform: translateY(-5px);
  border-color: rgba(99,102,241,.26) !important;
  box-shadow:
    0 28px 62px rgba(15,23,42,.14),
    0 10px 24px rgba(15,23,42,.08) !important;
}
.ib-showcase-card__media{
  position:relative;
  aspect-ratio: 16 / 10;
  overflow:hidden;
  padding: 18px;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.28), rgba(255,255,255,0) 34%),
    linear-gradient(135deg, #1e293b 0%, #334155 40%, #0f172a 100%);
  background-size:cover;
  background-position:center;
}
.ib-showcase-card__media::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.10) 0%, rgba(15,23,42,.44) 100%);
}
.ib-showcase-card__media-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(15,23,42,.08) 0%, rgba(15,23,42,.54) 100%),
    radial-gradient(circle at top right, rgba(255,255,255,.16), rgba(255,255,255,0) 34%);
}
.ib-showcase-card__media-top{
  position:relative;
  z-index:1;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 14px;
}
.ib-showcase-card__identity{
  width: 72px;
  height: 72px;
  padding: 12px;
  border-radius: 20px;
  display:grid;
  place-items:center;
  background: rgba(255,255,255,.94);
  border:1px solid rgba(255,255,255,.86);
  box-shadow: 0 14px 30px rgba(15,23,42,.20);
  backdrop-filter: blur(12px);
}
.ib-showcase-card__logo{
  width:100%;
  height:100%;
  object-fit:contain;
}
.ib-showcase-card__monogram{
  color:#0f172a;
  font-size:1.05rem;
  font-weight:900;
  letter-spacing:.08em;
}
.ib-showcase-card__status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(15,23,42,.64);
  border:1px solid rgba(255,255,255,.18);
  color:#f8fafc;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  backdrop-filter: blur(12px);
  box-shadow: 0 10px 24px rgba(15,23,42,.24);
}
.ib-showcase-card__body{
  display:flex;
  flex:1;
  flex-direction:column;
  gap: 18px;
  padding: 24px 24px 26px !important;
}
.ib-showcase-card__headline{
  display:grid;
  gap: 8px;
}
.ib-showcase-card__kicker{
  margin:0;
  color:#64748b;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ib-showcase-card__title{
  margin:0;
  color:#0f172a !important;
  font-size: clamp(1.14rem, 1.9vw, 1.42rem) !important;
  line-height:1.18;
  text-wrap:balance;
}
.ib-showcase-card__summary{
  margin:0;
  color:#475569;
  line-height:1.65;
  min-height: 4.9em;
}
.ib-showcase-card__facts{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.ib-showcase-card__fact{
  display:grid;
  gap: 6px;
  padding: 13px 14px;
  border-radius: 18px;
  border:1px solid rgba(148,163,184,.20);
  background: linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
}
.ib-showcase-card__fact-label{
  color:#64748b;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ib-showcase-card__fact-value{
  color:#0f172a;
  font-size:.96rem;
  font-weight:800;
  line-height:1.35;
}
.ib-showcase-card__actions{
  margin-top:auto;
}
.ib-showcase-card__cta{
  width:100%;
}
.ib-brand-showcase__status{
  background: rgba(15,23,42,.68);
}
.ib-project-showcase__status{
  background: rgba(30,41,59,.72);
}

@media (max-width: 1100px){
  .ib-showcase__grid,
  .ib-brand-showcase__grid,
  .ib-project-showcase__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px){
  .ib-showcase{
    padding: 42px 0;
  }
  .ib-showcase__shell{
    padding: 18px;
    border-radius: 24px;
  }
  .ib-showcase__header{
    margin-bottom: 20px;
  }
  .ib-showcase__grid,
  .ib-brand-showcase__grid,
  .ib-project-showcase__grid{
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .ib-showcase-card{
    border-radius: 22px !important;
  }
  .ib-showcase-card__media{
    padding: 14px;
  }
  .ib-showcase-card__identity{
    width: 62px;
    height: 62px;
    border-radius: 18px;
    padding: 10px;
  }
  .ib-showcase-card__status{
    padding: 8px 12px;
    font-size: .7rem;
  }
  .ib-showcase-card__body{
    padding: 20px 18px 20px !important;
    gap: 16px;
  }
  .ib-showcase-card__summary{
    min-height: 0;
  }
  .ib-showcase-card__facts{
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

.ib-legal-content > h1:first-child,
.ib-legal-content > h1:first-child + hr{
  display:none;
}

.ib-legal-content > h1:first-child + *,
.ib-legal-content > h1:first-child + hr + *{
  margin-top:0;
}

.ib-legal-content > :first-child{
  margin-top:0;
}

.ib-legal-content > p:first-of-type{
  max-width:60ch;
  color:#1f2937;
  font-size:1.14rem;
  line-height:1.9;
}

.ib-legal-content h2,
.ib-legal-content h3,
.ib-legal-content h4{
  text-wrap:balance;
}

.ib-legal-content h2{
  margin:3.4rem 0 1.15rem;
  padding-top:0;
  border-top:0;
  color:#101828;
  font-family:'Kanit Bold', 'Kanit', sans-serif;
  font-size:clamp(1.55rem, 2.5vw, 2.18rem);
  line-height:1.08;
  letter-spacing:-.03em;
}

.ib-legal-content h2::before{
  content:"";
  display:block;
  width:56px;
  height:1px;
  margin:0 0 1rem;
  background:linear-gradient(90deg, rgba(201,154,96,.78) 0%, rgba(201,154,96,0) 100%);
}

.ib-legal-content h3{
  margin:2.15rem 0 .9rem;
  color:#182230;
  font-family:'Kanit Medium', 'Kanit', sans-serif;
  font-size:1.22rem;
  line-height:1.32;
}

.ib-legal-content h4{
  margin:1.5rem 0 .7rem;
  color:#243041;
  font-family:'Kanit Medium', 'Kanit', sans-serif;
  font-size:1.05rem;
  line-height:1.35;
}

.ib-legal-content p,
.ib-legal-content ul,
.ib-legal-content ol,
.ib-legal-content blockquote,
.ib-legal-content hr{
  margin:1.15rem 0;
}

.ib-legal-content p{
  text-wrap:pretty;
}

.ib-legal-content ul,
.ib-legal-content ol{
  padding-left:1.45rem;
}

.ib-legal-content li{
  margin:.7rem 0;
  padding-left:.12rem;
}

.ib-legal-content ul + p,
.ib-legal-content ol + p{
  margin-top:1.35rem;
}

.ib-legal-content ul li::marker{
  color:#b7791f;
}

.ib-legal-content ol li::marker{
  color:#0f766e;
  font-weight:700;
}

.ib-legal-content strong{
  color:#101828;
}

.ib-legal-content a{
  color:#0f5d73;
  text-decoration:underline;
  text-decoration-color:rgba(15,93,115,.26);
  text-decoration-thickness:2px;
  text-underline-offset:.18em;
}

.ib-legal-content a:hover,
.ib-legal-content a:focus-visible{
  color:#0f2b46;
  outline:none;
}

.ib-legal-content blockquote{
  padding:1.3rem 1.45rem 1.3rem 1.55rem;
  border-left:3px solid #c59a60;
  border-radius:0 24px 24px 0;
  background:linear-gradient(180deg, rgba(250,246,239,.96) 0%, rgba(255,252,247,.98) 100%);
  color:#625145;
  font-size:.98rem;
  line-height:1.8;
  box-shadow:inset 0 0 0 1px rgba(197,154,96,.1);
}

.ib-legal-content hr{
  height:1px;
  border:0;
  background:linear-gradient(90deg, transparent 0%, rgba(181,161,133,.42) 20%, rgba(181,161,133,.42) 80%, transparent 100%);
  margin:2.35rem 0 2.5rem;
}

.ib-legal-content table{
  width:100%;
  margin:1.6rem 0;
  border-collapse:separate;
  border-spacing:0;
  border:1px solid rgba(148,163,184,.18);
  border-radius:20px;
  background:rgba(255,255,255,.92);
  box-shadow:0 8px 24px rgba(15,23,42,.04);
}

.ib-legal-content th,
.ib-legal-content td{
  padding:.92rem 1rem;
  border-bottom:1px solid rgba(148,163,184,.14);
  text-align:left;
  vertical-align:top;
}

.ib-legal-content thead th{
  background:#f7f3ea;
  color:#344054;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.ib-legal-content tbody tr:last-child td{
  border-bottom:0;
}

@keyframes ib-legal-rise{
  from{
    opacity:0;
    transform:translateY(12px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@media (max-width: 992px){
  .ib-legal-layout--with-rail{
    grid-template-columns:1fr;
  }

  .ib-legal-rail{
    position:static;
  }
}

@media (max-width: 640px){
  .ib-legal-shell .container{
    width:min(100% - 20px, 1120px);
  }

  .ib-legal-hero{
    padding:0 0 22px;
  }

  .ib-legal-hero__panel{
    padding-bottom:20px;
  }

  .ib-legal-breadcrumb li:not(:last-child)::after{
    width:14px;
  }

  .ib-legal-article,
  .ib-legal-card{
    border-radius:24px;
  }

  .ib-legal-article__inner{
    padding:26px 20px;
  }

  .ib-legal-article__inner::before{
    inset:12px;
    border-radius:18px;
  }

  .ib-legal-card{
    padding:20px 18px;
  }

  .ib-legal-content{
    font-size:.98rem;
    line-height:1.82;
  }

  .ib-legal-content > p:first-of-type{
    font-size:1.03rem;
  }

  .ib-legal-content h2{
    margin-top:2.6rem;
    font-size:1.42rem;
  }

  .ib-legal-content table{
    display:block;
    overflow-x:auto;
    white-space:nowrap;
    -webkit-overflow-scrolling:touch;
  }
}

@media (max-width: 420px){
  .ib-legal-hero__title{
    font-size:clamp(1.95rem, 10.5vw, 3rem);
  }

  .ib-legal-hero__lead{
    font-size:.98rem;
  }
}


/* =====================================================================
   WhatsApp FAB (flutuante simples e premium)
   ===================================================================== */
.ib-wa-fab{
  position:fixed;
  bottom:18px;
  right:18px;
  z-index:2147483646 !important;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
}
.ib-wa-fab__btn{
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none !important;
  position:relative;
  z-index:2147483001;
}
.ib-wa-fab__bubble{
  position:relative;
  background:#fff;
  color:#0f172a;
  padding:8px 10px 8px 12px;
  border-radius:12px;
  box-shadow:0 12px 32px rgba(0,0,0,.24), 0 4px 12px rgba(0,0,0,.12);
  border:1px solid rgba(15,23,42,.06);
  display:flex;
  align-items:center;
  gap:6px;
  font-size:.74rem;
  font-weight:700;
  line-height:1.2;
  white-space:normal;
  animation:ib-wa-bubble-in .35s cubic-bezier(.34,1.56,.64,1);
  transform-origin:right bottom;
  max-width:150px;
}
.ib-wa-fab__bubble--hidden{
  opacity:0;
  transform:scale(.7);
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
}
@keyframes ib-wa-bubble-in{
  from{
    opacity:0;
    transform:scale(.6);
  }
  to{
    opacity:1;
    transform:scale(1);
  }
}
.ib-wa-fab__bubble::after{
  content:'';
  position:absolute;
  bottom:-5px;
  right:18px;
  width:10px;
  height:10px;
  background:#fff;
  border:1px solid rgba(15,23,42,.06);
  border-top-width:0;
  border-left-width:0;
  transform:rotate(45deg);
  pointer-events:none;
}
.ib-wa-fab__bubble-text{
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  display:-webkit-box;
  line-clamp:2;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.ib-wa-fab__close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:14px;
  height:14px;
  padding:0;
  margin:0;
  border:none;
  background:transparent;
  color:#0f172a;
  cursor:pointer;
  flex-shrink:0;
  transition:transform .15s ease, color .15s ease;
  font-size:.75rem;
  line-height:1;
}
.ib-wa-fab__close:hover{
  transform:scale(1.15);
  color:#0f172a;
}
.ib-wa-fab__close-icon{
  font-size:.95rem;
  font-weight:bold;
  line-height:1;
}
.ib-wa-fab__avatar{
  position:relative;
  width:58px;
  height:58px;
  border-radius:50%;
  overflow:visible;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, #25d366 0%, #16a34a 100%);
  box-shadow:0 8px 24px rgba(37,211,102,.48), 0 2px 8px rgba(0,0,0,.14);
  transition:transform .25s ease, box-shadow .25s ease;
  flex-shrink:0;
}
.ib-wa-fab__avatar-img{
  width:100%;
  height:100%;
  border-radius:50%;
  object-fit:cover;
  object-position:center;
  display:block;
}
.ib-wa-fab__avatar--fallback{
  background:linear-gradient(135deg, #25d366 0%, #16a34a 100%);
  display:grid;
  place-items:center;
}
.ib-wa-fab__btn:hover .ib-wa-fab__avatar{
  transform:scale(1.1);
  box-shadow:0 12px 36px rgba(37,211,102,.6), 0 4px 14px rgba(0,0,0,.18);
}
.ib-wa-fab__initials{
  color:#fff;
  font-size:1rem;
  font-weight:900;
  letter-spacing:.05em;
}
.ib-wa-fab__icon{
  position:absolute;
  bottom:-3px;
  right:-3px;
  width:24px;
  height:24px;
  border-radius:50%;
  background:#25d366;
  border:2px solid #fff;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:.85rem;
  box-shadow:0 4px 12px rgba(37,211,102,.42);
  flex-shrink:0;
}

@media (max-width:600px){
  .ib-wa-fab{
    bottom:14px;
    right:12px;
    gap:5px;
  }
  .ib-wa-fab__avatar{
    width:52px;
    height:52px;
  }
  .ib-wa-fab__bubble{
    font-size:.7rem;
    padding:7px 9px 7px 10px;
    max-width:130px;
  }
  .ib-wa-fab__close{
    width:14px;
    height:14px;
  }
  .ib-wa-fab__icon{
    width:22px;
    height:22px;
    font-size:.75rem;
  }
}

/* =====================================================================
   Landing Pages: responsive hardening for narrow/tablet widths
   ===================================================================== */
@media (max-width: 860px){
  .ib-hero-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:24px;
    align-items:start !important;
  }

  .ib-hero-row > .col,
  .ib-hero-form,
  .ib-hero-copy{
    float:none !important;
    width:100% !important;
    margin-left:0 !important;
    max-width:100%;
  }

  .ib-hero-copy{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    margin-bottom:0;
  }

  .ib-hero-form .ib-card,
  .ib-hero-form .ib-card--form{
    max-width:560px;
    margin:0 auto;
  }

  .ib-hero-logo{
    display:block;
    margin:0 auto 18px;
  }

  .ib-hero-copy .ib-chips-kicker,
  .ib-hero .ib-brand-icons,
  .ib-hero-actions{
    width:100%;
    justify-content:center !important;
  }

  .ib-hero .ib-h1,
  .ib-hero .ib-lead,
  .ib-hero .ib-hero-highlight,
  .ib-hero .ib-hero-lead,
  .ib-hero .ib-platforms-subtitle,
  .ib-hero .ib-hero-note{
    text-align:center;
    margin-left:auto;
    margin-right:auto;
  }

  .ib-microbar-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:16px;
  }

  .ib-microbar-row > .col,
  .ib-eligibility .row.valign-wrapper > .col,
  .ib-cards-benefits > .col{
    float:none !important;
    width:100% !important;
    margin-left:0 !important;
    min-width:0;
  }

  .ib-microbar .right-align{
    text-align:left !important;
  }

  .ib-eligibility .row.valign-wrapper{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:24px;
    align-items:stretch;
  }

  .ib-elig-copy,
  .ib-elig-media{
    max-width:100%;
  }

  .ib-profile-demo .top,
  .brands .ib-profile-demo .top,
  .ugc .ib-profile-demo .top{
    flex-wrap:wrap;
    align-items:flex-start;
  }

  .ib-profile-demo .verify,
  .ib-profile-demo .stars,
  .ib-profile-demo .ib-pd-meta,
  .ugc .ib-status-badge{
    margin-left:0 !important;
  }

  .ib-profile-demo .ib-pd-meta{
    align-items:flex-start;
  }

  .ib-profile-demo .rate-item{
    flex-wrap:wrap;
    align-items:flex-start;
  }

  .ib-profile-demo .rate-price{
    min-width:0 !important;
    text-align:left !important;
  }

  .ib-grid-cards--value{
    grid-template-columns:1fr !important;
    gap:18px;
  }

  .ib-cards-benefits{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px;
    margin-top:26px;
  }

  .ib-cards-benefits > .col{
    padding:0 !important;
  }

  .ib-microbar .ib-btn,
  .ib-benefits .row.center .ib-btn,
  .ib-how .row.center .ib-btn,
  .ib-elig-copy > .ib-btn,
  .ib-ugc-brand .ib-btn,
  .ib-cta-final__actions .ib-btn{
    width:min(100%, 360px) !important;
    max-width:100%;
    white-space:normal;
  }

  .ib-profile-demo .actions .ib-btn{
    width:100% !important;
    max-width:none !important;
  }
}

@media (max-width: 720px){
  .ib-microbar .right-align,
  .ib-benefits .row.center,
  .ib-how .row.center,
  .ib-cta-final__actions{
    text-align:center !important;
    justify-content:center;
  }

  .ib-microbar .ib-btn,
  .ib-benefits .row.center .ib-btn,
  .ib-how .row.center .ib-btn,
  .ib-elig-copy > .ib-btn,
  .ib-ugc-brand .ib-btn,
  .ib-cta-final__actions .ib-btn{
    width:100% !important;
  }
}

/* =====================================================================
   Project Carousel — premium, dark, só logos
   ===================================================================== */
.ib-proj-carousel-section{
  position:relative;
  padding: clamp(52px, 7vw, 88px) 0;
  background:
    radial-gradient(1100px 460px at 80% 0%, rgba(139,92,246,.14), transparent 55%),
    radial-gradient(840px 380px at 10% 30%, rgba(251,191,36,.10), transparent 52%),
    linear-gradient(180deg, #0a0d1a 0%, #080b18 100%);
  overflow:hidden;
}
.ib-proj-carousel-section__header{
  margin-bottom:40px;
  padding:0 16px;
}
.ib-proj-carousel-section__eyebrow{
  color:#fbbf24 !important;
  margin-bottom:10px !important;
}
.ib-proj-carousel-section__title{
  color:#f8fafc !important;
  text-wrap:balance;
}
.ib-proj-carousel-section__intro{
  max-width:72ch;
  margin:12px auto 0;
  color:rgba(226,232,240,.82);
  line-height:1.7;
}
.ib-proj-carousel-wrap{
  position:relative;
  width:100%;
  overflow:hidden;
}
.ib-proj-carousel{
  display:flex;
  justify-content:center;
  align-items:flex-start;
  gap:24px;
  overflow-x:auto;
  overflow-y:visible;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:var(--ib-proj-edge-padding, 20px);
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  padding:24px var(--ib-proj-edge-padding, 20px) 34px;
  width:100%;
  box-sizing:border-box;
}
.ib-proj-carousel.is-overflow{
  justify-content:flex-start;
}
.ib-proj-carousel__slide{
  flex:0 0 clamp(320px, calc((100vw - 168px) / 2.6), 430px);
  scroll-snap-align:center;
  display:flex;
  align-self:stretch;
  opacity:.72;
  transform:translateY(10px) scale(.982);
  transition:transform .32s cubic-bezier(.22,.68,0,1.12), opacity .24s ease;
}
.ib-proj-carousel__slide.is-active{
  opacity:1;
  transform:translateY(0) scale(1);
}
.ib-proj-carousel__card{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  position:relative;
  height:100%;
  min-height:392px;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.07), transparent 50%),
    linear-gradient(160deg, rgba(30,41,59,.92) 0%, rgba(15,23,42,.98) 100%);
  box-shadow:
    0 20px 50px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.07);
  backdrop-filter:blur(18px);
  transition:transform .3s cubic-bezier(.22,.68,0,1.2), border-color .3s ease, box-shadow .3s ease;
  text-decoration:none;
  cursor:pointer;
  overflow:hidden;
  padding:24px;
}
.ib-proj-carousel__slide.is-active .ib-proj-carousel__card{
  border-color:rgba(168,85,247,.42);
  box-shadow:
    0 30px 72px rgba(0,0,0,.5),
    0 0 0 1px rgba(168,85,247,.18),
    inset 0 1px 0 rgba(255,255,255,.10);
}
.ib-proj-carousel__card:hover,
.ib-proj-carousel__card:focus-visible{
  transform:translateY(-8px) scale(1.03);
  border-color:rgba(139,92,246,.42);
  box-shadow:
    0 32px 70px rgba(0,0,0,.48),
    0 0 0 1px rgba(139,92,246,.22),
    inset 0 1px 0 rgba(255,255,255,.10);
  outline:none;
}
.ib-proj-carousel__glow{
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(circle at 50% 40%, rgba(139,92,246,.18), transparent 60%);
  opacity:0;
  transition:opacity .3s ease;
  pointer-events:none;
  z-index:0;
}
.ib-proj-carousel__card:hover .ib-proj-carousel__glow{
  opacity:1;
}
.ib-proj-carousel__slide.is-active .ib-proj-carousel__glow{
  opacity:1;
}
.ib-proj-carousel__header{
  display:flex;
  align-items:flex-start;
  gap:18px;
  position:relative;
  z-index:1;
  margin-bottom:22px;
}
.ib-proj-carousel__logo-wrap{
  position:relative;
  z-index:1;
  width:78px;
  height:78px;
  min-width:78px;
  border-radius:50%;
  background:rgba(255,255,255,.94);
  display:grid;
  place-items:center;
  padding:12px;
  box-shadow:0 14px 36px rgba(0,0,0,.32), inset 0 0 0 1px rgba(255,255,255,.5);
}
.ib-proj-carousel__logo-wrap--fallback{
  display:grid;
  place-items:center;
}
.ib-proj-carousel__logo{
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:50%;
}
.ib-proj-carousel__monogram{
  color:#0f172a;
  font-size:1.4rem;
  font-weight:900;
  letter-spacing:.06em;
}
.ib-proj-carousel__header-info{
  flex:1;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.ib-proj-carousel__type{
  margin:0;
  color:#fbbf24;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ib-proj-carousel__name{
  margin:0;
  color:#f8fafc;
  font-size:1.24rem;
  font-weight:800;
  line-height:1.25;
  text-wrap:balance;
}
.ib-proj-carousel__badge{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(139,92,246,.22);
  border:1px solid rgba(139,92,246,.38);
  color:#e9d5ff;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
  width:fit-content;
  margin-top:6px;
}
.ib-proj-carousel__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  position:relative;
  z-index:1;
  margin-bottom:16px;
}
.ib-proj-carousel__pill{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  color:#e2e8f0;
  font-size:.76rem;
  font-weight:600;
  white-space:nowrap;
}
.ib-proj-carousel__slide.is-active .ib-proj-carousel__pill{
  border-color:rgba(148,163,184,.34);
  background:rgba(15,23,42,.46);
}
.ib-proj-carousel__pill--vacancies{
  background:rgba(139,92,246,.22);
  border-color:rgba(139,92,246,.38);
  color:#e9d5ff;
}
.ib-proj-carousel__pill--money{
  background:rgba(16,185,129,.18);
  border-color:rgba(16,185,129,.38);
  color:#6ee7b7;
}
.ib-proj-carousel__summary{
  position:relative;
  z-index:1;
  margin:0 0 12px;
  color:rgba(226,232,240,.80);
  font-size:.85rem;
  line-height:1.55;
  flex:1;
}
.ib-proj-carousel__slide.is-active .ib-proj-carousel__type{
  color:#fde68a;
}
.ib-proj-carousel__slide.is-active .ib-proj-carousel__summary{
  color:rgba(241,245,249,.9);
}
.ib-proj-carousel__footer{
  position:relative;
  z-index:1;
  margin-top:auto;
  display:flex;
  justify-content:center;
}
.ib-proj-carousel__cta{
  min-width:140px !important;
  text-align:center;
}
.ib-proj-carousel__controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  margin-top:20px;
}
.ib-proj-carousel__nav{
  position:static;
  transform:none;
  z-index:auto;
  width:44px;
  height:44px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(15,23,42,.82);
  color:#f8fafc;
  display:grid;
  place-items:center;
  cursor:pointer;
  backdrop-filter:blur(12px);
  box-shadow:0 6px 18px rgba(0,0,0,.24);
  transition:background .2s ease, box-shadow .2s ease;
  flex-shrink:0;
}
.ib-proj-carousel__nav:hover{
  background:rgba(139,92,246,.95);
  transform:none;
  box-shadow:0 10px 28px rgba(139,92,246,.40), 0 0 0 2px rgba(139,92,246,.28);
  border-color:rgba(139,92,246,.52);
}
.ib-proj-carousel__nav--prev{ left:auto; }
.ib-proj-carousel__nav--next{ right:auto; }
.ib-proj-carousel__dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.ib-proj-carousel__dot{
  width:8px;
  height:8px;
  border-radius:999px;
  background:rgba(255,255,255,.24);
  border:none;
  cursor:pointer;
  transition:width .3s ease, background .3s ease;
  padding:0;
}
.ib-proj-carousel__dot--active{
  width:28px;
  background:linear-gradient(90deg, #8b5cf6, #a78bfa);
}

@media (max-width: 1180px){
  .ib-proj-carousel{
    gap:20px;
    padding-bottom:28px;
  }

  .ib-proj-carousel__slide{
    flex:0 0 min(70vw, 390px);
  }

  .ib-proj-carousel__card{
    min-height:384px;
  }
}

@media (max-width: 720px){
  .ib-proj-carousel{
    padding:14px var(--ib-proj-edge-padding, 20px) 22px;
    gap:14px;
  }
  .ib-proj-carousel__slide{
    flex:0 0 min(86vw, 348px);
    opacity:.88;
    transform:translateY(6px) scale(.992);
  }
  .ib-proj-carousel__nav{
    display:none;
  }
  .ib-proj-carousel__card{
    min-height:408px;
    padding:20px;
  }
  .ib-proj-carousel__header{
    margin-bottom:16px;
  }
  .ib-proj-carousel__logo-wrap{
    width:64px;
    height:64px;
    min-width:64px;
  }
  .ib-proj-carousel__name{
    font-size:1.1rem;
  }
  .ib-proj-carousel__summary{
    font-size:.88rem;
  }
}
