/* ============ Base ============ */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
:root{
  /* Paleta baseada na logo (azul / amarelo / vermelho) */
  --blue:#2FA7E1;
  --yellow:#F2D15B;
  --red:#E53935;

  --ink:#0E1116;
  --muted:#5F6B7A;
  --paper:#F6F7F9;
  --paper-2:#FFFFFF;

  --line:rgba(14,17,22,.10);
  --shadow:0 24px 70px rgba(14,17,22,.14);

  --radius:16px;
  --radius-2:22px;

  --ease:cubic-bezier(.2,.8,.2,1);
}

body{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Helvetica Neue", sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.5;
  overflow-x:hidden;
}

.container{
  width:min(1180px, 100% - 48px);
  margin-inline:auto;
}

a{color:inherit}
button{font:inherit}

/* ============ Header ============ */
.header{
  position:sticky; top:0; z-index:50;
  background:rgba(246,247,249,.82);
  backdrop-filter: blur(16px);
  border-bottom:1px solid var(--line);
}
.header.is-scrolled{
  background:rgba(246,247,249,.94);
  box-shadow:0 10px 40px rgba(14,17,22,.08);
}
.header__inner{
  display:flex; align-items:center; justify-content:space-between;
  padding:0;              /* era 16px 0 */
  min-height:18px;        /* controla a altura sem depender de padding */
  gap:16px;
}


.brand{display:flex; align-items:center; text-decoration:none}
.brand__logo{
  height:92px;            /* era 44px */
  width:auto;
  display:block;
}


.nav{display:flex; align-items:center; gap:18px}
.nav__list{
  display:flex; align-items:center; gap:18px;
  list-style:none;
}
.nav__link{
  text-decoration:none;
  font-size:14px;
  font-weight:650;
  color:rgba(14,17,22,.72);
  padding:10px 10px;
  border-radius:10px;
  transition:background .2s var(--ease), color .2s var(--ease);
}
.nav__link:hover{
  background:rgba(47,167,225,.10);
  color:rgba(14,17,22,.92);
}
.nav__cta{margin-left:10px}

/* ============ Buttons ============ */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  gap:10px;
  padding:12px 16px;
  border-radius:12px;
  border:1px solid transparent;
  text-decoration:none;
  font-weight:750;
  font-size:14px;
  transition:transform .18s var(--ease), box-shadow .18s var(--ease), background .18s var(--ease);
  user-select:none;
}
.btn:active{transform:translateY(1px)}
.btn--primary{
  background:linear-gradient(135deg, var(--blue), #1B6EEA);
  color:white;
  box-shadow:0 14px 35px rgba(27,110,234,.22);
}
.btn--primary:hover{transform:translateY(-1px); box-shadow:0 18px 45px rgba(27,110,234,.28)}
.btn--ghost{
  background:transparent;
  border-color:rgba(14,17,22,.14);
  color:rgba(14,17,22,.86);
}
.btn--ghost:hover{background:rgba(14,17,22,.04); transform:translateY(-1px)}

/* ============ Hamburger + Drawer (mobile) ============ */
.hamburger{
  display:none;
  width:44px; height:44px;
  border:1px solid rgba(14,17,22,.12);
  border-radius:12px;
  background:var(--paper-2);
  cursor:pointer;
  align-items:center; justify-content:center;
  gap:5px;
  flex-direction:column;
}
.hamburger span{
  width:18px; height:2px; border-radius:2px;
  background:rgba(14,17,22,.80);
  transition:transform .22s var(--ease), opacity .22s var(--ease);
}
.hamburger.is-active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger.is-active span:nth-child(2){opacity:0}
.hamburger.is-active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.drawer{display:none}
.drawer.is-open{display:block}
.drawer__backdrop{
  position:fixed; inset:0;
  background:rgba(14,17,22,.38);
}
.drawer__panel{
  position:fixed; top:0; right:0; height:100vh; width:min(420px, 92vw);
  background:var(--paper-2);
  box-shadow:-30px 0 80px rgba(14,17,22,.18);
  padding:18px;
  border-left:1px solid rgba(14,17,22,.10);
  display:flex; flex-direction:column;
  gap:10px;
}
.drawer__top{display:flex; align-items:center; justify-content:space-between; margin-bottom:8px}
.drawer__logo{height:52px;width:auto} /* era 40px */
.drawer__close{
  width:44px;height:44px;border-radius:12px;
  border:1px solid rgba(14,17,22,.12);
  background:var(--paper);
  cursor:pointer;
  font-size:22px; line-height:1;
}
.drawer__link{
  text-decoration:none;
  padding:14px 12px;
  border-radius:12px;
  font-weight:750;
  color:rgba(14,17,22,.86);
  background:rgba(14,17,22,.02);
  border:1px solid rgba(14,17,22,.06);
}
.drawer__link:hover{background:rgba(47,167,225,.10); border-color:rgba(47,167,225,.18)}
.drawer__cta{margin-top:6px}
.drawer__note{
  margin-top:auto;
  font-size:13px;
  color:rgba(14,17,22,.62);
  border-top:1px solid rgba(14,17,22,.08);
  padding-top:12px;
}

/* ============ Hero ============ */
.hero{
  position:relative;
  padding:46px 0 70px;
}
.hero__bg{position:absolute; inset:0; pointer-events:none}
.hero__grain{
  position:absolute; inset:-50px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.07'/%3E%3C/svg%3E");
  opacity:.45;
  mix-blend-mode:multiply;
}
.hero__lines{
  position:absolute; inset:0;
  background:
    radial-gradient(900px 480px at 12% 18%, rgba(47,167,225,.14), transparent 60%),
    radial-gradient(700px 420px at 90% 20%, rgba(242,209,91,.14), transparent 60%),
    radial-gradient(900px 520px at 55% 88%, rgba(229,57,53,.10), transparent 65%),
    linear-gradient(to bottom, rgba(255,255,255,.70), rgba(246,247,249,1));
  border-bottom:1px solid rgba(14,17,22,.08);
}

/* Faz os filhos de .hero__copy virarem itens diretos do grid */
.hero__copy{ 
  display: contents; 
}

.hero__grid{
  position:relative;
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:28px;
  align-items:start;

  grid-template-areas:
    "copyTop vsl"
    "copyBottom vsl";
}

.hero__copyTop{ grid-area: copyTop; }
.hero__copyBottom{ grid-area: copyBottom; }
.hero__vsl{ grid-area: vsl; }



.eyebrow{
  display:flex; align-items:center; gap:10px;
  font-size:13px;
  font-weight:760;
  color:rgba(14,17,22,.72);
  letter-spacing:.2px;
  margin-bottom:14px;
}
.eyebrow__dot{
  width:10px; height:10px; border-radius:999px;
  background:linear-gradient(135deg, var(--blue), var(--yellow));
  box-shadow:0 0 0 6px rgba(47,167,225,.10);
}

.hero__title{
  font-size: clamp(34px, 3.2vw, 52px);
  line-height:1.08;
  letter-spacing:-.02em;
  font-weight:860;
  margin-bottom:14px;
}
.u-accent{
  background:linear-gradient(135deg, var(--blue), var(--red));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.hero__lead{
  font-size:16px;
  color:rgba(14,17,22,.72);
  max-width:56ch;
  margin-bottom:20px;
}

.hero__bullets{
  display:grid;
  grid-template-columns: 1fr;
  gap:10px;
  margin-bottom:22px;
}
.bullet{
  display:grid;
  grid-template-columns: 90px 1fr;
  gap:12px;
  padding:12px 12px;
  background:rgba(255,255,255,.70);
  border:1px solid rgba(14,17,22,.08);
  border-radius:14px;
  box-shadow:0 10px 30px rgba(14,17,22,.06);
}
.bullet__k{
  font-weight:900;
  color:rgba(14,17,22,.85);
  letter-spacing:.3px;
}
.bullet__t{
  font-size:14px;
  color:rgba(14,17,22,.70);
}

.hero__actions{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:16px;
}
.hero__trust{
  font-size:13px;
  color:rgba(14,17,22,.58);
}
.trust__item{display:flex; align-items:center; gap:10px; flex-wrap:wrap}
.trust__sep{opacity:.45}

/* ============ VSL (CRT formal) ============ */
.vsl{
  background:rgba(255,255,255,.72);
  border:1px solid rgba(14,17,22,.10);
  border-radius:var(--radius-2);
  box-shadow:var(--shadow);
  padding:16px;
}
.vsl__top{
  display:flex; align-items:center; justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.vsl__badge{
  display:inline-flex; align-items:center; gap:10px;
  font-size:13px;
  font-weight:820;
  color:rgba(14,17,22,.74);
}
.rec{
  width:10px;height:10px;border-radius:999px;
  background:var(--red);
  box-shadow:0 0 0 6px rgba(229,57,53,.12);
  animation:recPulse 1.4s ease-in-out infinite;
}
.vsl__meta{
  font-size:12px;
  color:rgba(14,17,22,.55);
}

.vsl__frame{
  position:relative;
  border-radius:18px;
  overflow:hidden;
  background:
    radial-gradient(1200px 540px at 50% 0%, rgba(47,167,225,.20), transparent 60%),
    linear-gradient(180deg, rgba(14,17,22,.95), rgba(14,17,22,.88));
  border:1px solid rgba(14,17,22,.18);
  aspect-ratio: 16 / 9;
}

.vsl__video{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  filter: contrast(1.03) saturate(1.02);
}

/* overlay play */
.vsl__overlay{
  position:absolute; inset:0;
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  gap:12px;
  background:linear-gradient(180deg, rgba(14,17,22,.40), rgba(14,17,22,.72));
  border:none;
  cursor:pointer;
  transition:opacity .2s var(--ease), transform .2s var(--ease);
}
.vsl__overlay.is-hidden{opacity:0; pointer-events:none}
.vsl__play{
  width:68px;height:68px;border-radius:999px;
  background:linear-gradient(135deg, var(--blue), #1B6EEA);
  box-shadow:0 18px 40px rgba(27,110,234,.28);
  display:grid; place-items:center;
  border:1px solid rgba(255,255,255,.12);
}
.vsl__triangle{
  width:0;height:0;
  border-left:16px solid #fff;
  border-top:10px solid transparent;
  border-bottom:10px solid transparent;
  margin-left:3px;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.35));
}
.vsl__overlayText{
  font-size:13px;
  font-weight:850;
  letter-spacing:.6px;
  text-transform:uppercase;
  color:rgba(255,255,255,.92);
}

/* CRT layers (subtle) */
.crt{
  position:absolute; inset:0;
  pointer-events:none;
  z-index:2;
}
.crt::before{
  content:"";
  position:absolute; inset:0;
  background:
    repeating-linear-gradient(
      to bottom,
      rgba(255,255,255,.07) 0px,
      rgba(255,255,255,.07) 1px,
      transparent 2px,
      transparent 4px
    );
  opacity:.12;
  mix-blend-mode:overlay;
}
.crt::after{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(120% 80% at 50% 20%, rgba(255,255,255,.12), transparent 55%),
    radial-gradient(140% 90% at 50% 110%, rgba(47,167,225,.14), transparent 60%);
  opacity:.55;
}
.crt--soft{opacity:.55; filter: blur(.2px)}

/* controls (minimal, formal) */
.vsl__controls{
  position:absolute; left:12px; right:12px; bottom:12px;
  z-index:3;
  display:flex; align-items:center; gap:10px;
  padding:10px 10px;
  border-radius:14px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(10px);
  opacity:0;
  transform:translateY(6px);
  transition:opacity .18s var(--ease), transform .18s var(--ease);
}
.vsl__frame.is-active .vsl__controls{
  opacity:1;
  transform:translateY(0);
}
.ctl{
  width:38px; height:34px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.18);
  color:rgba(255,255,255,.92);
  cursor:pointer;
}
.ctl:hover{background:rgba(0,0,0,.26)}
.time{
  font-size:12px;
  color:rgba(255,255,255,.84);
  font-variant-numeric: tabular-nums;
  white-space:nowrap;
}
.bar{
  flex:1;
  height:8px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.10);
  overflow:hidden;
  cursor:pointer;
}
.bar__fill{
  height:100%;
  width:0%;
  background:linear-gradient(90deg, var(--yellow), var(--blue));
}
.vsl__note{
  margin-top:10px;
  font-size:13px;
  color:rgba(14,17,22,.62);
}

.microcards{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:12px;
}
.microcard{
  padding:12px 12px;
  background:rgba(255,255,255,.65);
  border:1px solid rgba(14,17,22,.08);
  border-radius:14px;
}
.microcard__k{
  font-size:12px;
  font-weight:900;
  color:rgba(14,17,22,.60);
  text-transform:uppercase;
  letter-spacing:.7px;
  margin-bottom:6px;
}
.microcard__t{
  font-size:13px;
  color:rgba(14,17,22,.78);
}

@keyframes recPulse{
  0%,100%{transform:scale(1); opacity:1}
  50%{transform:scale(.86); opacity:.55}
}


/* ========== Bloco 2 (Adobe-like) ========== */
.section--adobe{
  padding:72px 0 78px;
  background:linear-gradient(to bottom, rgba(246,247,249,1), rgba(255,255,255,.82));
  border-top:1px solid rgba(14,17,22,.06);
}

.s-head{max-width:860px;margin:0 auto 18px;}
.s-head--center{text-align:center;}
.s-eyebrow{
  font-size:12px;
  font-weight:820;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(14,17,22,.58);
  margin-bottom:10px;
}
.s-title{
  font-size: clamp(22px, 2.1vw, 34px);
  line-height:1.2;
  letter-spacing:-.02em;
  font-weight:860;
  margin-bottom:10px;
}
.s-lead{
  font-size:14px;
  color:rgba(14,17,22,.70);
  max-width:72ch;
  margin:0 auto;
}

/* segmented control */
.seg{
  width:min(720px, 100%);
  margin:18px auto 16px;
  display:flex;
  gap:8px;
  padding:8px;
  border-radius:999px;
  background:rgba(14,17,22,.04);
  border:1px solid rgba(14,17,22,.08);
}
.seg__btn{
  flex:1;
  border:none;
  border-radius:999px;
  padding:10px 12px;
  cursor:pointer;
  background:transparent;
  font-weight:820;
  font-size:13px;
  color:rgba(14,17,22,.70);
  transition:background .2s var(--ease), color .2s var(--ease), box-shadow .2s var(--ease);
}
.seg__btn:hover{background:rgba(255,255,255,.70)}
.seg__btn.is-active{
  background:rgba(255,255,255,.95);
  color:rgba(14,17,22,.92);
  box-shadow:0 10px 24px rgba(14,17,22,.08);
}

/* panels */
.panels{
  width:min(980px, 100%);
  margin:0 auto 28px;
}
.panel{
  display:none;
  padding:16px;
  border-radius:22px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(14,17,22,.08);
  box-shadow:0 22px 60px rgba(14,17,22,.10);
}
.panel.is-active{display:block;}

.panel__grid{
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  gap:16px;
  align-items:stretch;
}
.panel__main{padding:8px 8px 10px}
.panel__title{
  font-size:18px;
  font-weight:860;
  letter-spacing:-.01em;
  margin-bottom:8px;
}
.panel__text{
  font-size:13px;
  color:rgba(14,17,22,.72);
  margin-bottom:12px;
}

.panel__points{
  display:grid;
  gap:8px;
}
.point{
  display:flex;
  gap:10px;
  padding:10px 10px;
  border-radius:14px;
  background:rgba(14,17,22,.03);
  border:1px solid rgba(14,17,22,.06);
  font-size:13px;
  color:rgba(14,17,22,.78);
}
.point__dot{
  width:9px;height:9px;border-radius:999px;
  margin-top:4px;
  background:rgba(14,17,22,.35);
  flex:0 0 auto;
}
.point__dot--blue{background:var(--blue);}
.point__dot--yellow{background:var(--yellow);}
.point__dot--red{background:var(--red);}

.panel__side{
  border-radius:18px;
  background:linear-gradient(135deg, rgba(47,167,225,.06), rgba(242,209,91,.12));
  border:1px solid rgba(47,167,225,.16);
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.mini__k{
  font-size:11px;
  font-weight:860;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(14,17,22,.58);
  margin-bottom:6px;
}
.mini__v{
  font-size:13px;
  color:rgba(14,17,22,.84);
  line-height:1.5;
}
.mini__cta{margin-top:auto}

/* How we act */
.how{
  width:min(1080px, 100%);
  margin:0 auto;
  padding-top:10px;
}
.how__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
  padding:0 2px;
}
.how__title{
  font-size:16px;
  font-weight:860;
  letter-spacing:-.01em;
}
.how__lead{
  font-size:13px;
  color:rgba(14,17,22,.62);
}

.how__grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:12px;
}
.hcard{
  background:rgba(255,255,255,.92);
  border:1px solid rgba(14,17,22,.08);
  border-radius:18px;
  padding:14px;
  box-shadow:0 18px 44px rgba(14,17,22,.08);
}
.hcard__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:10px;
}
.hcard__num{
  font-weight:900;
  color:rgba(14,17,22,.28);
  letter-spacing:.06em;
}
.hcard__cap{
  font-size:12px;
  font-weight:860;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(14,17,22,.60);
}
.hcard__text{
  font-size:13px;
  color:rgba(14,17,22,.78);
  line-height:1.55;
}

.how__cta{
  display:flex;
  gap:10px;
  justify-content:center;
  margin-top:14px;
  flex-wrap:wrap;
}



/* ========== Bloco 3 — Steps (Adobe-like) ========== */
.section--steps{
  padding:78px 0 86px;
  background:linear-gradient(to bottom, rgba(255,255,255,.82), rgba(246,247,249,1));
  border-top:1px solid rgba(14,17,22,.06);
}

.steps{
  width:min(1100px, 100%);
  margin:0 auto;
}

.steps__top{
  margin-top:16px;
}

.stepper{
  display:flex;
  gap:10px;
  padding:10px;
  border-radius:18px;
  background:rgba(14,17,22,.03);
  border:1px solid rgba(14,17,22,.08);
}

.stepper__btn{
  flex:1;
  min-width:0;
  border:none;
  cursor:pointer;
  border-radius:14px;
  padding:12px 12px;
  background:transparent;
  display:flex;
  flex-direction:column;
  gap:4px;
  align-items:flex-start;
  transition: background .2s var(--ease), box-shadow .2s var(--ease), transform .2s var(--ease);
  color:rgba(14,17,22,.80);
}
.stepper__btn:hover{background:rgba(255,255,255,.70)}
.stepper__btn.is-active{
  background:rgba(255,255,255,.95);
  box-shadow:0 18px 50px rgba(14,17,22,.10);
  transform:translateY(-1px);
}

.stepper__num{
  font-weight:900;
  font-size:12px;
  letter-spacing:.12em;
  color:rgba(14,17,22,.42);
}
.stepper__label{
  font-weight:860;
  font-size:13px;
  letter-spacing:-.01em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.steps__bar{
  height:8px;
  margin-top:10px;
  border-radius:999px;
  background:rgba(14,17,22,.07);
  overflow:hidden;
}
.steps__fill{
  height:100%;
  width:20%;
  border-radius:999px;
  background:linear-gradient(90deg, var(--blue), var(--yellow), var(--red));
  transition:width .35s var(--ease);
}

.steps__panelWrap{
  margin-top:14px;
}

.stepPanel{
  display:none;
  padding:16px;
  border-radius:22px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(14,17,22,.08);
  box-shadow:0 22px 60px rgba(14,17,22,.10);
}
.stepPanel.is-active{display:block;}

.stepPanel__grid{
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  gap:16px;
  align-items:stretch;
}

.kicker{
  display:flex; align-items:center; gap:10px;
  font-size:12px;
  font-weight:860;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(14,17,22,.56);
  margin-bottom:10px;
}
.kdot{
  width:9px;height:9px;border-radius:999px;
  background:rgba(14,17,22,.28);
}
.kdot--blue{background:var(--blue);}
.kdot--yellow{background:var(--yellow);}
.kdot--red{background:var(--red);}

.stepPanel__title{
  font-size:18px;
  font-weight:900;
  letter-spacing:-.01em;
  margin-bottom:8px;
}
.stepPanel__text{
  font-size:13px;
  color:rgba(14,17,22,.72);
  line-height:1.65;
  margin-bottom:12px;
  max-width:72ch;
}

.stepPanel__list{
  display:grid;
  gap:8px;
}
.sitem{
  display:flex;
  gap:10px;
  padding:10px 10px;
  border-radius:14px;
  background:rgba(14,17,22,.03);
  border:1px solid rgba(14,17,22,.06);
  font-size:13px;
  color:rgba(14,17,22,.78);
}
.sitem__dot{
  width:7px;height:7px;border-radius:999px;
  background:rgba(14,17,22,.35);
  margin-top:5px;
  flex:0 0 auto;
}

.stepPanel__side{
  border-radius:18px;
  background:linear-gradient(135deg, rgba(47,167,225,.06), rgba(242,209,91,.12));
  border:1px solid rgba(47,167,225,.16);
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.callout__k{
  font-size:11px;
  font-weight:860;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(14,17,22,.58);
  margin-bottom:6px;
}
.callout__v{
  font-size:13px;
  color:rgba(14,17,22,.84);
  line-height:1.55;
}

.steps__cta{
  margin-top:14px;
  display:flex;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
}


/* ========== Bloco — Fundador (v2) ========== */
.section--founder2{
  padding:86px 0 94px;
  background:
    radial-gradient(980px 520px at 18% 10%, rgba(47,167,225,.10), transparent 60%),
    radial-gradient(780px 440px at 90% 14%, rgba(242,209,91,.10), transparent 62%),
    linear-gradient(to bottom, rgba(255,255,255,.86), rgba(246,247,249,1));
  border-top:1px solid rgba(14,17,22,.06);
}

.founder2{
  width:min(1140px, 100%);
  margin:18px auto 0;
  display:grid;
  gap:14px;
  align-items:start;

  /* Editorial grid (diferente dos outros blocos) */
  grid-template-columns: 1fr .92fr;
  grid-template-areas:
    "head media"
    "card media";
}

.founder2__head{ grid-area: head; max-width: 720px; }
.founder2__media{ grid-area: media; margin:0; }
.founder2__card{ grid-area: card; }

.founder2__card{
  padding:18px;
  border-radius:22px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(14,17,22,.08);
  box-shadow:0 22px 60px rgba(14,17,22,.10);
}

.founder2__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}

.founder2__role{
  font-size:12px;
  font-weight:860;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(14,17,22,.58);
  margin-bottom:6px;
}
.founder2__name{
  font-size:20px;
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.2;
}

.founder2__toggle{
  display:flex;
  gap:6px;
  padding:6px;
  border-radius:999px;
  background:rgba(14,17,22,.04);
  border:1px solid rgba(14,17,22,.08);
}

.ftab{
  border:none;
  cursor:pointer;
  border-radius:999px;
  padding:9px 12px;
  background:transparent;
  font-weight:860;
  font-size:13px;
  color:rgba(14,17,22,.70);
  transition: background .2s var(--ease), box-shadow .2s var(--ease), color .2s var(--ease);
  white-space:nowrap;
}
.ftab:hover{ background:rgba(255,255,255,.72); }
.ftab.is-active{
  background:rgba(255,255,255,.95);
  color:rgba(14,17,22,.92);
  box-shadow:0 14px 34px rgba(14,17,22,.10);
}

.founder2__panels{ margin-top:2px; }
.fpanel{ display:none; }
.fpanel.is-active{ display:block; }

.fpanel__lead{
  font-size:13px;
  font-weight:820;
  color:rgba(14,17,22,.82);
  margin-bottom:10px;
}

.fpanel__list{
  display:grid;
  gap:8px;
}

.frow{
  display:flex;
  gap:10px;
  padding:10px 10px;
  border-radius:14px;
  background:rgba(14,17,22,.03);
  border:1px solid rgba(14,17,22,.06);
  font-size:13px;
  color:rgba(14,17,22,.78);
}

.frow__dot{
  width:8px; height:8px; border-radius:999px;
  margin-top:5px;
  background:linear-gradient(135deg, var(--blue), var(--red));
  flex:0 0 auto;
}
.frow__dot--muted{
  background:rgba(14,17,22,.28);
}

.founder2__cta{
  margin-top:14px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

/* ===== Foto: frame premium + tilt ===== */
.founder2__frame{
  position:relative;
  border-radius:26px;
  overflow:hidden;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(14,17,22,.10);
  box-shadow:0 24px 70px rgba(14,17,22,.14);
  transform: perspective(900px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));
  transition: transform .18s var(--ease);
  isolation:isolate;
}

.founder2__img{
  width:100%;
  height: clamp(340px, 42vw, 520px);
  object-fit:cover;
  display:block;
  filter: grayscale(1) contrast(1.05);
  transform: scale(1.01);
}

.founder2__shade{
  position:absolute; inset:0;
  background:
    radial-gradient(520px 360px at 70% 25%, rgba(47,167,225,.18), transparent 60%),
    radial-gradient(520px 360px at 40% 80%, rgba(242,209,91,.14), transparent 60%),
    linear-gradient(180deg, rgba(14,17,22,.10), rgba(14,17,22,.30));
  mix-blend-mode: soft-light;
  opacity:.95;
}

.founder2__shine{
  position:absolute; inset:0;
  background:
    radial-gradient(700px 420px at var(--sx, 20%) var(--sy, 20%), rgba(255,255,255,.22), transparent 55%);
  opacity:.65;
  pointer-events:none;
  transition: opacity .2s var(--ease);
}

.founder2__ring{
  position:absolute; inset:0;
  border-radius:26px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.18);
  pointer-events:none;
}

.founder2__frame:hover .founder2__shine{ opacity:.9; }

.founder2__caption{
  margin-top:10px;
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:0 4px;
  color:rgba(14,17,22,.64);
}
.founder2__capK{
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(14,17,22,.55);
}
.founder2__capV{
  font-size:13px;
  color:rgba(14,17,22,.72);
}

/* Visual feedback do toggle mudando o acento (dá “vida” sem poluir) */
.section--founder2[data-mode="nao"] .frow__dot{
  background:rgba(14,17,22,.28);
}
.section--founder2[data-mode="nao"] .founder2__shade{
  opacity:.85;
}








/* Screen reader only */
.sr-only{
  position:absolute !important;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}

/* ===== Footer ===== */
.footer{
  position:relative;
  padding:44px 0 28px;
  background:
    radial-gradient(900px 520px at 18% 0%, rgba(47,167,225,.14), transparent 62%),
    radial-gradient(760px 420px at 86% 8%, rgba(242,209,91,.12), transparent 62%),
    radial-gradient(900px 520px at 50% 120%, rgba(229,57,53,.10), transparent 65%),
    linear-gradient(to bottom, rgba(246,247,249,1), rgba(255,255,255,.92));
  border-top:1px solid rgba(14,17,22,.06);
}

/* CTA band */
.footerCta{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:16px;
  align-items:center;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(14,17,22,.08);
  box-shadow:0 22px 60px rgba(14,17,22,.10);
  overflow:hidden;
  position:relative;
}

/* subtle color edge */
.footerCta::before{
  content:"";
  position:absolute; inset:-2px;
  border-radius:26px;
  padding:2px;
  background: linear-gradient(90deg, var(--blue), var(--yellow), var(--red));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity:.65;
  pointer-events:none;
}

.footerCta__eyebrow{
  font-size:12px;
  font-weight:860;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(14,17,22,.58);
  margin-bottom:8px;
}

.footerCta__title{
  font-size: clamp(20px, 2.1vw, 30px);
  line-height:1.15;
  font-weight:900;
  letter-spacing:-.02em;
  margin-bottom:8px;
}

.footerCta__lead{
  font-size:13px;
  color:rgba(14,17,22,.70);
}

.footerCta__form{
  display:grid;
  grid-template-columns: 1fr auto;
  gap:10px;
  align-items:center;
}

.input{
  height:44px;
  padding:0 14px;
  border-radius:14px;
  border:1px solid rgba(14,17,22,.12);
  background:rgba(246,247,249,1);
  outline:none;
  font-size:14px;
  transition: box-shadow .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease);
}

.input:focus{
  background:rgba(255,255,255,.95);
  border-color: rgba(47,167,225,.42);
  box-shadow:0 0 0 6px rgba(47,167,225,.12);
}

.footerCta__fineprint{
  grid-column: 1 / -1;
  font-size:12px;
  color:rgba(14,17,22,.55);
  margin-top:-2px;
}

/* Footer grid */
.footerGrid{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:18px;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(14,17,22,.06);
}

.footerBrand__logo img{
  height:54px;
  width:auto;
  display:block;
}

.footerBrand__text{
  margin-top:10px;
  max-width:52ch;
  font-size:13px;
  color:rgba(14,17,22,.70);
  line-height:1.7;
}

.footerBrand__stripe{
  margin:14px 0 12px;
  height:10px;
  border-radius:999px;
  background: linear-gradient(90deg, var(--blue), var(--yellow), var(--red));
  opacity:.7;
  filter: saturate(1.05);
}

.footerBrand__mini{
  display:grid;
  gap:8px;
  max-width: 420px;
}
.miniLine{
  display:flex;
  gap:10px;
  align-items:baseline;
}
.miniKey{
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(14,17,22,.55);
  min-width:66px;
}
.miniVal{
  font-size:13px;
  color:rgba(14,17,22,.74);
}

.footerNav{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:14px;
  align-content:start;
}

.footerCol__title{
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(14,17,22,.55);
  margin-bottom:10px;
}

.footerLink{
  display:block;
  text-decoration:none;
  padding:8px 10px;
  border-radius:12px;
  color:rgba(14,17,22,.74);
  font-size:13px;
  border:1px solid transparent;
  background:transparent;
  transition: background .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);
}

.footerLink:hover{
  background:rgba(14,17,22,.03);
  border-color:rgba(14,17,22,.08);
  transform:translateY(-1px);
}

/* Bottom line */
.footerBottom{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(14,17,22,.06);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.footerBottom__copy{
  font-size:12px;
  color:rgba(14,17,22,.58);
}

.toTop{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(14,17,22,.12);
  background:rgba(255,255,255,.80);
  cursor:pointer;
  transition: transform .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease);
}

.toTop:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.95);
  box-shadow:0 16px 40px rgba(14,17,22,.12);
}

.toTop__icon{
  width:22px;height:22px;
  display:grid; place-items:center;
  border-radius:999px;
  background:rgba(14,17,22,.06);
  font-weight:900;
}
.toTop__text{
  font-size:12px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(14,17,22,.72);
}


/* ========== Bloco — Prova Científica ========== */
.section--proof{
  padding:84px 0 90px;
  background:
    radial-gradient(900px 480px at 12% 8%, rgba(47,167,225,.12), transparent 60%),
    radial-gradient(760px 420px at 90% 12%, rgba(242,209,91,.12), transparent 62%),
    linear-gradient(to bottom, rgba(246,247,249,1), rgba(255,255,255,.88));
  border-top:1px solid rgba(14,17,22,.06);
}

.proof{
  width:min(1120px, 100%);
  margin:18px auto 0;
  display:grid;
  gap:18px;
}

/* Hero stat */
.proofHero{
  display:grid;
  grid-template-columns: 280px 1fr;
  gap:18px;
  align-items:center;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(14,17,22,.08);
  box-shadow:0 22px 60px rgba(14,17,22,.10);
  position:relative;
  overflow:hidden;
}

.proofHero__visual{
  position:relative;
  width:240px;
  height:240px;
  display:grid;
  place-items:center;
}

.proofCircle{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  transform: rotate(-90deg);
}

.proofCircle__fill{
  transition: stroke-dashoffset 2s cubic-bezier(.2,.8,.2,1);
}

.proofHero__stat{
  position:relative;
  z-index:2;
  display:flex;
  align-items:baseline;
  gap:4px;
}

.proofHero__num{
  font-size:78px;
  font-weight:900;
  line-height:1;
  letter-spacing:-.04em;
  background: linear-gradient(135deg, var(--blue), var(--red));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.proofHero__pct{
  font-size:42px;
  font-weight:900;
  color:rgba(14,17,22,.82);
}

.proofHero__title{
  font-size:20px;
  font-weight:860;
  letter-spacing:-.01em;
  margin-bottom:10px;
  line-height:1.3;
}

.proofHero__text{
  font-size:13px;
  color:rgba(14,17,22,.72);
  line-height:1.7;
  margin-bottom:10px;
}

.proofHero__text strong{
  font-weight:820;
  color:rgba(14,17,22,.88);
}

.proofHero__ref{
  display:flex;
  gap:10px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(14,17,22,.03);
  border:1px solid rgba(14,17,22,.06);
  align-items:baseline;
}

.proofHero__refK{
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(14,17,22,.55);
}

.proofHero__refV{
  font-size:12px;
  color:rgba(14,17,22,.72);
}

/* Cards */
.proofCards__title{
  font-size:16px;
  font-weight:860;
  letter-spacing:-.01em;
  margin-bottom:14px;
  padding:0 2px;
}

.proofCards__grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:12px;
}

.pcard{
  padding:16px;
  border-radius:20px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(14,17,22,.08);
  box-shadow:0 18px 44px rgba(14,17,22,.08);
  transition: transform .3s var(--ease), box-shadow .3s var(--ease);
  cursor:pointer;
}

.pcard:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 60px rgba(14,17,22,.14);
}

.pcard__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:10px;
}

.pcard__num{
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  color:rgba(14,17,22,.42);
}

.pcard__icon{
  font-size:28px;
  filter: grayscale(1) opacity(.7);
}

.pcard__title{
  font-size:16px;
  font-weight:900;
  letter-spacing:-.01em;
  margin-bottom:8px;
}

.pcard__text{
  font-size:13px;
  color:rgba(14,17,22,.72);
  line-height:1.65;
}

/* Connect */
.proofConnect{
  padding:18px;
  border-radius:24px;
  background:
    radial-gradient(600px 420px at 20% 10%, rgba(47,167,225,.08), transparent 60%),
    radial-gradient(520px 380px at 80% 90%, rgba(242,209,91,.10), transparent 62%),
    rgba(255,255,255,.88);
  border:1px solid rgba(14,17,22,.08);
  box-shadow:0 22px 60px rgba(14,17,22,.10);
}

.proofConnect__badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(14,17,22,.04);
  border:1px solid rgba(14,17,22,.08);
  font-size:12px;
  font-weight:860;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(14,17,22,.68);
  margin-bottom:12px;
}

.proofConnect__dot{
  width:8px;height:8px;border-radius:999px;
  background: linear-gradient(135deg, var(--blue), var(--yellow));
  box-shadow:0 0 0 6px rgba(47,167,225,.10);
}

.proofConnect__title{
  font-size:22px;
  font-weight:860;
  letter-spacing:-.02em;
  line-height:1.25;
  margin-bottom:14px;
}

.proofConnect__hl{
  background: linear-gradient(135deg, var(--blue), var(--red));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.proofConnect__grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-bottom:14px;
}

.proofConnect__item{
  padding:12px;
  border-radius:18px;
  background:rgba(14,17,22,.03);
  border:1px solid rgba(14,17,22,.06);
}

.proofConnect__k{
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(14,17,22,.58);
  margin-bottom:6px;
}

.proofConnect__v{
  font-size:13px;
  color:rgba(14,17,22,.76);
  line-height:1.6;
}

.proofConnect__cta{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}



/* ========== FAQ ========== */
.section--faq{
  padding:84px 0 90px;
  background:
    radial-gradient(900px 480px at 88% 8%, rgba(47,167,225,.12), transparent 60%),
    radial-gradient(760px 420px at 14% 14%, rgba(242,209,91,.12), transparent 62%),
    linear-gradient(to bottom, rgba(255,255,255,.88), rgba(246,247,249,1));
  border-top:1px solid rgba(14,17,22,.06);
}

.faq{
  width:min(920px, 100%);
  margin:18px auto 0;
}

.faqList{
  display:grid;
  gap:10px;
  margin-bottom:18px;
}

.faqItem{
  border-radius:20px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(14,17,22,.08);
  box-shadow:0 18px 44px rgba(14,17,22,.08);
  overflow:hidden;
  transition: box-shadow .3s var(--ease), transform .3s var(--ease);
}

.faqItem:hover{
  box-shadow:0 24px 60px rgba(14,17,22,.14);
}

.faqItem.is-open{
  box-shadow:0 24px 60px rgba(47,167,225,.18);
  transform:translateY(-2px);
}

.faqItem__trigger{
  width:100%;
  padding:18px 18px;
  border:none;
  background:transparent;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  text-align:left;
  transition: background .2s var(--ease);
}

.faqItem__trigger:hover{
  background:rgba(14,17,22,.02);
}

.faqItem__q{
  font-size:15px;
  font-weight:820;
  letter-spacing:-.01em;
  color:rgba(14,17,22,.88);
  line-height:1.4;
}

.faqItem__icon{
  width:32px;
  height:32px;
  flex-shrink:0;
  border-radius:999px;
  background:rgba(14,17,22,.05);
  display:grid;
  place-items:center;
  transition: transform .3s var(--ease), background .3s var(--ease);
}

.faqItem__icon svg{
  width:18px;
  height:18px;
  color:rgba(14,17,22,.68);
  transition: color .3s var(--ease);
}

.faqItem.is-open .faqItem__icon{
  transform:rotate(45deg);
  background: linear-gradient(135deg, var(--blue), var(--red));
}

.faqItem.is-open .faqItem__icon svg{
  color:white;
}

.faqItem__iconH{
  transition: opacity .3s var(--ease);
}

.faqItem.is-open .faqItem__iconH{
  opacity:0;
}

.faqItem__panel{
  max-height:0;
  overflow:hidden;
  transition: max-height .4s var(--ease), opacity .4s var(--ease);
  opacity:0;
}

.faqItem.is-open .faqItem__panel{
  max-height:600px;
  opacity:1;
}

.faqItem__content{
  padding:0 18px 18px;
  font-size:13px;
  color:rgba(14,17,22,.72);
  line-height:1.75;
}

.faqItem__content p{
  margin-bottom:12px;
}

.faqItem__content p:last-child{
  margin-bottom:0;
}

.faqItem__content strong{
  font-weight:820;
  color:rgba(14,17,22,.88);
}

/* CTA final */
.faqCta{
  padding:18px;
  border-radius:22px;
  background:
    radial-gradient(520px 360px at 30% 20%, rgba(47,167,225,.08), transparent 60%),
    rgba(255,255,255,.88);
  border:1px solid rgba(14,17,22,.08);
  box-shadow:0 22px 60px rgba(14,17,22,.10);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.faqCta__text{
  font-size:14px;
  font-weight:820;
  color:rgba(14,17,22,.82);
  max-width:56ch;
}
