/* ============================================================
   LLC nos EUA — Landing page
   Estilo: Clean claro + Azul Royal
   ============================================================ */

:root{
  --royal:        #1d4ed8;
  --royal-600:    #2563eb;
  --royal-700:    #1e40af;
  --royal-800:    #1e3a8a;
  --glow:         #3b82f6;

  --ink:          #0b1533;
  --body:         #384660;
  --muted:        #8893b0;

  --bg:           #ffffff;
  --bg-soft:      #f4f7fe;
  --bg-soft-2:    #eef3fd;
  --line:         #e4e9f6;
  --card:         #ffffff;

  --gold:         #c79a3a;

  --radius:       18px;
  --radius-sm:    12px;
  --shadow-sm:    0 2px 10px rgba(15,28,72,.06);
  --shadow:       0 18px 40px -18px rgba(20,40,110,.28);
  --shadow-lg:    0 40px 80px -28px rgba(20,40,110,.40);

  --max:          1160px;
  --ease:         cubic-bezier(.22,.61,.36,1);

  --font-head: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
  --font-body: 'Inter', system-ui, -apple-system, sans-serif;
}

/* ---------- Reset ---------- */
*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{
  margin:0; font-family:var(--font-body); color:var(--body); background:var(--bg);
  line-height:1.65; font-size:17px; -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
h1,h2,h3,h4{ font-family:var(--font-head); color:var(--ink); line-height:1.15; margin:0; letter-spacing:-.02em; }
p{ margin:0; }
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
ul,ol{ margin:0; padding:0; list-style:none; }
.ic{ width:20px; height:20px; flex:none; }

/* ---------- Layout ---------- */
.container{ width:100%; max-width:var(--max); margin:0 auto; padding:0 24px; }
.container--narrow{ max-width:780px; }
.section{ padding:96px 0; }
.section--soft{ background:linear-gradient(180deg,var(--bg-soft) 0%, #fbfcff 100%); }

.section__head{ max-width:680px; margin:0 auto 56px; text-align:center; }
.section__title{ font-size:clamp(1.8rem,4vw,2.7rem); font-weight:800; }
.section__lead{ margin-top:20px; font-size:1.1rem; font-weight:500; color:var(--body); }
.section__cta{ text-align:center; margin-top:48px; }

/* Acento premium sob o título das seções */
.section__head .section__title{ position:relative; }
.section__head .section__title::after{
  content:""; display:block; width:58px; height:4px; margin:20px auto 0;
  border-radius:100px; background:linear-gradient(90deg,var(--royal-600),var(--glow));
}

.eyebrow{
  display:inline-block; font-family:var(--font-head); font-weight:700;
  font-size:.82rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--royal); background:var(--bg-soft-2);
  padding:7px 14px; border-radius:100px; margin-bottom:18px;
}
.grad-text{
  background:linear-gradient(100deg,var(--royal-600),var(--glow));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  font-family:var(--font-head); font-weight:700; font-size:1rem;
  padding:14px 26px; border-radius:100px; border:1px solid transparent;
  cursor:pointer; transition:transform .25s var(--ease), box-shadow .25s var(--ease), background .25s;
  white-space:nowrap; line-height:1;
}
.btn--primary{
  color:#fff; background:linear-gradient(135deg,var(--royal-600),var(--royal-700));
  box-shadow:0 14px 28px -12px rgba(29,78,216,.7);
}
.btn--primary:hover{ transform:translateY(-2px); box-shadow:0 20px 34px -12px rgba(29,78,216,.8); }
.btn--ghost{ background:#fff; color:var(--ink); border-color:var(--line); box-shadow:var(--shadow-sm); }
.btn--ghost:hover{ transform:translateY(-2px); border-color:#c9d4f0; }
.btn--light{ background:#fff; color:var(--royal-700); box-shadow:0 16px 34px -14px rgba(0,0,0,.55); }
.btn--light:hover{ transform:translateY(-2px); box-shadow:0 22px 42px -14px rgba(0,0,0,.6); }
.btn--lg{ padding:17px 32px; font-size:1.05rem; }
.btn--sm{ padding:11px 20px; font-size:.92rem; }
.btn--block{ width:100%; }

/* ---------- Header ---------- */
.site-header{
  position:sticky; top:0; z-index:100;
  background:rgba(255,255,255,.82); backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid transparent; transition:border-color .3s, box-shadow .3s, background .3s;
}
.site-header.scrolled{ border-bottom-color:var(--line); box-shadow:var(--shadow-sm); }
.header__inner{ display:flex; align-items:center; justify-content:space-between; height:84px; gap:18px; }

.brand{ display:inline-flex; align-items:center; flex:none; }
.brand__logo{ height:48px; width:auto; max-width:none; }
.brand__text{ display:inline-flex; align-items:baseline; gap:.3em; font-family:var(--font-head); font-weight:800; font-size:1.3rem; color:var(--ink); letter-spacing:-.02em; }
.brand__mark{ background:linear-gradient(135deg,var(--royal-600),var(--glow)); color:#fff; padding:.1em .35em; border-radius:8px; font-weight:800; }

.nav{ display:flex; align-items:center; gap:26px; }
.nav__link{ font-family:var(--font-head); font-weight:600; font-size:.97rem; color:var(--ink); transition:color .2s; }
.nav__link:hover{ color:var(--royal); }
.nav__cta{ color:#fff; }

.header__right{ display:flex; align-items:center; gap:12px; }

/* Seletor de idioma — dropdown compacto (globo + bandeira) */
.lang{ position:relative; }
.lang > summary{
  list-style:none; cursor:pointer; display:inline-flex; align-items:center; gap:7px;
  padding:6px 9px; border-radius:10px; border:1px solid var(--line); background:#fff;
  transition:border-color .2s, box-shadow .2s;
}
.lang > summary::-webkit-details-marker{ display:none; }
.lang > summary:hover{ border-color:#c9d4f0; box-shadow:var(--shadow-sm); }
.lang__globe{ width:16px; height:16px; color:var(--muted); flex:none; }
.lang__caret{ width:12px; height:12px; color:var(--muted); transition:transform .25s; flex:none; }
.lang[open] .lang__caret{ transform:rotate(180deg); }
.lang__menu{
  position:absolute; right:0; top:calc(100% + 8px); min-width:142px;
  background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow);
  padding:6px; display:grid; gap:2px; z-index:120;
}
.lang__item{
  display:flex; align-items:center; gap:10px; padding:8px 10px; border-radius:8px;
  font-family:var(--font-head); font-weight:600; font-size:.9rem; color:var(--ink); transition:background .15s;
}
.lang__item:hover{ background:var(--bg-soft); }
.lang__item.is-active{ background:var(--bg-soft-2); color:var(--royal); }
.flag{ width:21px; height:21px; border-radius:5px; display:block; flex:none; box-shadow:0 0 0 1px rgba(11,21,51,.1); overflow:hidden; }

.nav-toggle{ display:none; flex-direction:column; gap:5px; background:none; border:0; cursor:pointer; padding:8px; }
.nav-toggle span{ width:26px; height:2px; background:var(--ink); border-radius:2px; transition:transform .3s, opacity .3s; }

/* ---------- Hero ---------- */
.hero{ position:relative; padding:72px 0 96px; overflow:hidden; }
.hero__bg{
  position:absolute; inset:0; z-index:-1;
  background:
    radial-gradient(900px 500px at 78% 8%, rgba(59,130,246,.16), transparent 60%),
    radial-gradient(700px 500px at 6% 90%, rgba(29,78,216,.10), transparent 55%),
    linear-gradient(180deg,#fbfcff 0%,#ffffff 100%);
}
.hero__inner{ display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center; }
.hero__title{ font-size:clamp(2.2rem,5.2vw,3.6rem); font-weight:800; margin-bottom:22px; }
.hero__sub{ font-size:1.16rem; max-width:560px; color:var(--body); }
.hero__sub strong{ color:var(--ink); font-weight:600; }
.hero__actions{ display:flex; flex-wrap:wrap; gap:14px; margin:34px 0 26px; }
.hero__trust{ display:flex; flex-wrap:wrap; gap:10px 22px; }
.hero__trust li{ display:flex; align-items:center; gap:8px; font-size:.95rem; font-weight:500; color:var(--ink); }
.ic-check{ width:18px; height:18px; flex:none; color:var(--royal); }

/* Hero visual: mapa dos EUA (fundo) + cartões flutuantes */
.hero__visual{ position:relative; height:470px; min-width:0; }
.hero__map{
  position:absolute; z-index:0; pointer-events:none;
  top:50%; left:53%; width:116%; height:auto; max-width:none; transform:translate(-50%,-50%);
  opacity:.92; filter:drop-shadow(0 26px 44px rgba(20,40,110,.20));
}
.hero__floats{ position:absolute; inset:0; z-index:2; }

.card{ position:absolute; background:var(--card); border:1px solid var(--line); border-radius:22px; box-shadow:var(--shadow-lg); }
.card--main{ width:316px; padding:22px 24px; top:14px; right:0; animation:floaty 6s ease-in-out infinite; }
.card__head{ display:flex; align-items:center; justify-content:space-between; }
.card__bank{ display:flex; align-items:center; gap:9px; font-family:var(--font-head); font-weight:700; color:var(--ink); font-size:.95rem; }
.card__dot{ width:10px; height:10px; border-radius:50%; background:var(--royal); box-shadow:0 0 0 4px rgba(29,78,216,.15); }
.card__badge{ font-size:.72rem; font-weight:700; color:#0a7d35; background:#e4f8ec; padding:5px 10px; border-radius:100px; }
.card__balance{ margin:20px 0 16px; display:flex; flex-direction:column; }
.card__label{ font-size:.82rem; color:var(--muted); }
.card__value{ font-family:var(--font-head); font-weight:800; font-size:2.1rem; color:var(--ink); letter-spacing:-.02em; }
.card__cents{ color:var(--muted); font-size:1.25rem; }
.card__chart svg{ width:100%; height:56px; display:block; }

.chip{
  position:absolute; display:flex; align-items:center; gap:12px;
  background:#fff; border:1px solid var(--line); border-radius:16px; padding:13px 16px; box-shadow:var(--shadow);
}
.chip strong{ display:block; font-family:var(--font-head); color:var(--ink); font-size:.9rem; }
.chip span{ font-size:.77rem; color:var(--muted); }
.chip--ein{ top:0; left:0; color:#0a7d35; animation:floaty 6s ease-in-out infinite .8s; }
.chip--ein .ic{ width:22px; height:22px; background:#e4f8ec; border-radius:8px; padding:3px; }
.chip--pay{ bottom:88px; left:0; animation:floaty 7s ease-in-out infinite .4s; }
.chip__icon{
  width:34px; height:34px; flex:none; border-radius:10px; display:grid; place-items:center;
  font-family:var(--font-head); font-weight:800; color:#fff; background:linear-gradient(135deg,var(--royal-600),var(--glow));
}

/* Cartão flutuante com as logos dos bancos/gateways */
.chip--logos{ flex-direction:column; align-items:flex-start; gap:11px; padding:15px 18px; bottom:6px; right:34px; animation:floaty 6.5s ease-in-out infinite .2s; }
.chip__logos-head{ font-family:var(--font-head); font-weight:700; font-size:.74rem; letter-spacing:.04em; color:var(--muted); text-transform:uppercase; }
.chip__logos{ display:flex; align-items:center; gap:16px; }
.bank-logo{ height:21px; width:auto; display:block; }
.bank-logo--stripe{ height:30px; }
.chip__logos-sep{ width:1px; height:22px; background:var(--line); }

@keyframes floaty{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-12px);} }

/* ---------- Stats (faixa com bandeira) ---------- */
.stats{ position:relative; background:var(--royal-800); overflow:hidden; }
.stats::before{ content:""; position:absolute; inset:0; background:url('assets/usa-flag.jpg') center 30%/cover no-repeat; opacity:.32; }
.stats::after{ content:""; position:absolute; inset:0; background:linear-gradient(135deg, rgba(30,58,138,.92) 0%, rgba(29,78,216,.82) 100%); }
.stats__inner{ position:relative; z-index:1; }
.stats__grid{ position:relative; z-index:1; display:grid; grid-template-columns:repeat(4,1fr); gap:24px; padding:56px 0; }
.stats__cta{ display:none; }
.stat{ text-align:center; color:#fff; }
.stat__num{ display:block; font-family:var(--font-head); font-weight:800; font-size:2.4rem; letter-spacing:-.02em; }
.stat__lbl{ display:block; font-size:.92rem; color:rgba(255,255,255,.82); margin-top:4px; }

/* ---------- Grid / Features ---------- */
.grid{ display:grid; gap:24px; }
.grid--3{ grid-template-columns:repeat(3,1fr); }
.feature{ background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:30px; transition:transform .3s var(--ease), box-shadow .3s, border-color .3s; }
.feature:hover{ transform:translateY(-6px); box-shadow:var(--shadow); border-color:#d4ddf5; }
.feature__icon{ width:54px; height:54px; border-radius:14px; display:grid; place-items:center; margin-bottom:18px; background:linear-gradient(135deg,var(--bg-soft-2),#dde7fb); color:var(--royal); }
.feature__icon svg{ width:28px; height:28px; }
.feature h3{ font-size:1.22rem; font-weight:700; margin-bottom:10px; }
.feature p{ font-size:.98rem; }

/* ---------- Steps ---------- */
.steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.step{ position:relative; background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:30px 26px; transition:transform .3s var(--ease), box-shadow .3s; }
.step:hover{ transform:translateY(-6px); box-shadow:var(--shadow); }
.step__num{ display:grid; place-items:center; width:46px; height:46px; border-radius:13px; margin-bottom:18px; font-family:var(--font-head); font-weight:800; font-size:1.25rem; color:#fff; background:linear-gradient(135deg,var(--royal-600),var(--royal-700)); box-shadow:0 10px 20px -8px rgba(29,78,216,.6); }
.step h3{ font-size:1.14rem; font-weight:700; margin-bottom:8px; }
.step p{ font-size:.95rem; }

/* ---------- Incluso ---------- */
.included{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.included__copy .btn{ margin-top:26px; }
.checklist{ display:grid; gap:16px; }
.checklist li{ display:flex; align-items:flex-start; gap:14px; background:#fff; border:1px solid var(--line); border-radius:var(--radius-sm); padding:18px 20px; font-weight:500; color:var(--ink); box-shadow:var(--shadow-sm); }
.checklist .ic-check{ width:22px; height:22px; margin-top:1px; }

/* ---------- Audience ---------- */
.audience{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; }
.audience__tag{ background:#fff; border:1px solid var(--line); border-radius:100px; padding:13px 24px; font-family:var(--font-head); font-weight:600; color:var(--ink); box-shadow:var(--shadow-sm); transition:transform .25s var(--ease), border-color .25s; }
.audience__tag:hover{ transform:translateY(-3px); border-color:var(--royal); color:var(--royal); }

/* ---------- Sobre nós ---------- */
.about__grid{ display:grid; grid-template-columns:1.02fr .98fr; gap:56px; align-items:center; }
.about__copy .section__title{ text-align:left; }
.about__copy .eyebrow{ margin-bottom:18px; }
.about__lead{ font-size:1.08rem; color:var(--body); margin-top:18px; }
.about__points{ display:grid; gap:14px; margin-top:26px; }
.about__points li{ display:flex; align-items:flex-start; gap:12px; font-weight:500; color:var(--ink); }
.about__points .ic-check{ width:20px; height:20px; margin-top:3px; }

.locations{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.location-card{ position:relative; background:#fff; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-sm); transition:transform .3s var(--ease), box-shadow .3s; }
.location-card:hover{ transform:translateY(-5px); box-shadow:var(--shadow); }
.location-card__art{ position:relative; height:128px; display:flex; align-items:flex-end; justify-content:center; background:linear-gradient(165deg,#eef3fd 0%, #dbe5fb 100%); border-bottom:1px solid var(--line); overflow:hidden; }
.location-card__art::before{ content:""; position:absolute; inset:0; background:radial-gradient(120px 80px at 50% 120%, rgba(29,78,216,.16), transparent 70%); }
.landmark{ display:block; width:auto; height:92px; color:var(--royal-700); position:relative; filter:drop-shadow(0 6px 10px rgba(20,40,110,.18)); }
.location-card__flag{ position:absolute; top:14px; left:14px; width:40px; height:28px; border-radius:6px; display:block; box-shadow:0 6px 16px -5px rgba(11,21,51,.5), 0 0 0 2px rgba(255,255,255,.9); overflow:hidden; }
.location-card__body{ padding:18px 22px 22px; }
.location-card__label{ font-family:var(--font-head); font-weight:700; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--royal); }
.location-card h3{ font-size:1.22rem; font-weight:700; margin:5px 0 6px; }
.location-card p{ font-size:.9rem; color:var(--muted); }

/* faixa fina decorativa (cores da bandeira) */
.flag-stripe{ height:4px; width:100%; background:linear-gradient(90deg,#b22234 0 33.33%,#fff 33.33% 66.66%,#3c3b6e 66.66% 100%); }

/* ---------- FAQ ---------- */
.faq{ display:grid; gap:14px; }
.faq__item{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-sm); padding:6px 24px; box-shadow:var(--shadow-sm); transition:box-shadow .25s; }
.faq__item[open]{ box-shadow:var(--shadow); }
.faq__item summary{ cursor:pointer; list-style:none; padding:18px 0; font-family:var(--font-head); font-weight:700; color:var(--ink); font-size:1.06rem; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.faq__item summary::-webkit-details-marker{ display:none; }
.faq__item summary::after{ content:"+"; font-size:1.5rem; font-weight:600; color:var(--royal); line-height:1; transition:transform .3s; }
.faq__item[open] summary::after{ transform:rotate(45deg); }
.faq__item p{ padding:0 0 20px; font-size:.98rem; }

/* ---------- CTA final ---------- */
.cta-final{ padding:96px 0; background: radial-gradient(700px 500px at 85% 0%, rgba(59,130,246,.18), transparent 60%), linear-gradient(135deg,var(--royal-800),var(--royal-700) 55%, var(--royal)); }
.cta-final__inner{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.cta-final__copy h2{ color:#fff; font-size:clamp(1.9rem,4vw,2.7rem); font-weight:800; }
.cta-final__copy p{ color:rgba(255,255,255,.85); margin-top:18px; font-size:1.08rem; }
.cta-final__list{ display:grid; gap:12px; margin-top:26px; }
.cta-final__list li{ display:flex; align-items:center; gap:12px; color:#fff; font-weight:500; }
.cta-final__list .ic-check{ color:#9ec1ff; }

/* Form */
.lead-form{ background:#fff; border-radius:24px; padding:34px; box-shadow:var(--shadow-lg); }
.lead-form__title{ font-size:1.4rem; font-weight:800; margin-bottom:22px; }
.field{ margin-bottom:16px; }
.field label{ display:block; font-family:var(--font-head); font-weight:600; font-size:.9rem; color:var(--ink); margin-bottom:7px; }
.field .opt{ color:var(--muted); font-weight:500; }
.field input,.field select,.field textarea{ width:100%; font-family:var(--font-body); font-size:1rem; color:var(--ink); padding:13px 15px; border:1.5px solid var(--line); border-radius:12px; background:#fbfcff; transition:border-color .2s, box-shadow .2s; outline:none; }
.field input:focus,.field select:focus,.field textarea:focus{ border-color:var(--royal); box-shadow:0 0 0 4px rgba(29,78,216,.12); background:#fff; }
.field textarea{ resize:vertical; }
.lead-form__note{ font-size:.82rem; color:var(--muted); text-align:center; margin-top:14px; }
.lead-form .btn{ margin-top:6px; }

/* ---------- Footer ---------- */
.site-footer{ background:#0b1533; color:#aeb8d6; padding:64px 0 30px; }
.footer__inner{ display:grid; grid-template-columns:1.6fr 1fr 1.2fr; gap:40px; padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,.1); }
.footer__logo{ height:50px; width:auto; max-width:none; margin-bottom:18px; filter:brightness(0) invert(1); opacity:.95; }
.footer__brand p{ font-size:.95rem; max-width:340px; }
.footer__col h4{ color:#fff; font-size:1rem; font-weight:700; margin-bottom:16px; }
.footer__col a{ display:block; padding:6px 0; font-size:.95rem; color:#aeb8d6; transition:color .2s; }
.footer__col a:hover{ color:#fff; }
.footer__bottom{ padding-top:26px; display:flex; flex-direction:column; gap:12px; }
.footer__bottom p{ font-size:.84rem; color:#8893b0; }
.footer__disclaimer{ max-width:760px; }

/* ---------- WhatsApp flutuante ---------- */
.wa-float{
  position:fixed; right:22px; bottom:22px; z-index:200;
  display:inline-flex; align-items:center; gap:10px; background:#25d366; color:#fff; border-radius:100px;
  padding:0 22px; height:56px; justify-content:center;
  box-shadow:0 14px 30px -8px rgba(37,211,102,.6); transition:transform .25s, box-shadow .25s;
}
.wa-float svg{ width:26px; height:26px; flex:none; }
.wa-float__label{ font-family:var(--font-head); font-weight:700; white-space:nowrap; }
.wa-float:hover{ transform:translateY(-2px); box-shadow:0 18px 36px -8px rgba(37,211,102,.7); }
.wa-float::after{ content:""; position:absolute; inset:0; border-radius:100px; box-shadow:0 0 0 0 rgba(37,211,102,.5); animation:pulse 2.4s infinite; }
@keyframes pulse{ 0%{ box-shadow:0 0 0 0 rgba(37,211,102,.5);} 70%{ box-shadow:0 0 0 16px rgba(37,211,102,0);} 100%{ box-shadow:0 0 0 0 rgba(37,211,102,0);} }

/* ---------- Reveal on scroll ---------- */
.reveal{ opacity:0; transform:translateY(26px); transition:opacity .7s var(--ease), transform .7s var(--ease); }
.reveal.is-visible{ opacity:1; transform:none; }

/* Bloco "Por que escolher" — visível só no mobile, dentro da faixa escura (regras na media query) */
.why-m{ display:none; }

/* ============================================================
   RESPONSIVO
   ============================================================ */
@media (max-width:980px){
  .hero__inner{ grid-template-columns:minmax(0,1fr); gap:36px; }
  .hero__copy{ min-width:0; }

  /* No mobile: sem cartões flutuantes; "Por que escolher" abre o bloco escuro consolidado */
  .hero__visual{ display:none; }
  .why-m{ display:block; position:relative; z-index:1; max-width:560px; padding:56px 0 0; }
  .why-m::before{
    content:""; display:block; width:56px; height:4px; border-radius:100px;
    margin-bottom:24px; background:linear-gradient(90deg,var(--gold),#e8bd51);
  }
  .why-m__title{ color:#fff; font-size:clamp(1.6rem,6.6vw,2.2rem); font-weight:800; letter-spacing:-.02em; text-wrap:balance; }
  .why-m .grad-text{
    background:linear-gradient(100deg,#cfe3ff,#7fb0ff);
    -webkit-background-clip:text; background-clip:text; color:transparent;
  }
  .why-m__text{ margin-top:16px; font-size:1.06rem; font-weight:500; line-height:1.7; color:#cdd9f6; max-width:480px; }
  .stats__grid{ padding:40px 0 32px; }

  /* CTA fechando o bloco escuro (WhatsApp primário + Calendly secundário) */
  .stats__cta{
    position:relative; z-index:1; display:grid; gap:15px; justify-items:center;
    max-width:560px; margin:0 auto; padding:4px 0 56px;
  }
  .stats__cta .btn{ width:100%; }
  .stats__sched{
    font-family:var(--font-head); font-weight:600; font-size:.93rem;
    color:#cfe0ff; text-align:center; transition:color .2s;
  }
  .stats__sched:hover{ color:#fff; }

  .about__grid{ grid-template-columns:1fr; gap:36px; }
  .included,.cta-final__inner{ grid-template-columns:1fr; gap:36px; }
  .grid--3{ grid-template-columns:repeat(2,1fr); }
  .steps{ grid-template-columns:repeat(2,1fr); }
  .footer__inner{ grid-template-columns:1fr 1fr; }
}

.hero__dots{ display:none; }
.hero__dot{ width:8px; height:8px; padding:0; border:0; border-radius:50%; background:var(--line); cursor:pointer; transition:width .25s var(--ease), background .25s, border-radius .25s; }
.hero__dot.is-active{ background:var(--royal); width:22px; border-radius:5px; }

@media (max-width:760px){
  body{ font-size:16px; }
  .section{ padding:64px 0; }
  .section__head{ margin-bottom:40px; }
  .section__lead{ font-size:1.02rem; margin-top:16px; }
  .section__cta{ margin-top:36px; }
  .header__inner{ height:72px; gap:10px; }
  .brand__logo{ height:36px; }
  .lang > summary{ padding:6px 8px; gap:6px; }
  .lang__caret{ display:none; }
  .nav{
    position:fixed; inset:72px 0 auto 0; flex-direction:column; align-items:stretch; gap:0;
    background:#fff; border-bottom:1px solid var(--line); padding:12px 24px 24px;
    transform:translateY(-130%); transition:transform .35s var(--ease); box-shadow:var(--shadow);
  }
  body.nav-open .nav{ transform:translateY(0); }
  .nav__link{ padding:15px 0; border-bottom:1px solid var(--line); font-size:1.05rem; }
  .nav__cta{ margin-top:14px; text-align:center; }
  .nav-toggle{ display:flex; }
  body.nav-open .nav-toggle span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
  body.nav-open .nav-toggle span:nth-child(2){ opacity:0; }
  body.nav-open .nav-toggle span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

  /* Hero mais compacto; lista de confiança limpa, com checks em medalhão */
  .hero{ padding:44px 0 52px; }
  .hero__actions{ margin:28px 0 24px; }
  .hero__actions .btn{ flex:1 1 100%; }
  .hero__trust{ display:grid; gap:13px; }
  .hero__trust li{ gap:12px; }
  .hero__trust .ic-check{ width:28px; height:28px; padding:6px; border-radius:50%; color:var(--royal); background:var(--bg-soft-2); box-shadow:inset 0 0 0 1px #dbe5fb; }

  /* Stats integrados ao bloco escuro — divisórias finas, sem caixas */
  .stats__grid{ grid-template-columns:repeat(2,1fr); gap:0; padding:36px 0 34px; }
  .stat{ padding:24px 8px; }
  .stat:nth-child(odd){ border-right:1px solid rgba(255,255,255,.16); }
  .stat:nth-child(-n+2){ border-bottom:1px solid rgba(255,255,255,.16); }
  .stat__num{ font-size:2.1rem; }
  .stat__lbl{ font-size:.84rem; color:rgba(255,255,255,.72); margin-top:5px; }

  .locations{ grid-template-columns:1fr; }
  .cta-final{ padding:64px 0; }
  .faq__item{ padding:4px 18px; }
  .about-lean__statement::before{
    content:""; display:block; width:52px; height:4px; border-radius:100px;
    margin-bottom:18px; background:linear-gradient(90deg,var(--royal-600),var(--glow));
  }
}

@media (max-width:480px){
  .grid--3,.steps,.footer__inner{ grid-template-columns:1fr; }
  .lead-form{ padding:26px 20px; }
  .wa-float{ padding:0 18px; height:52px; }
}

/* ---------- Pilares (Abrir uma LLC) ---------- */
.pillars{ display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
.pillar__icon{ width:56px; height:56px; border-radius:15px; display:grid; place-items:center; margin-bottom:20px; background:linear-gradient(135deg,var(--bg-soft-2),#dde7fb); color:var(--royal); }
.pillar__icon svg{ width:30px; height:30px; }
.pillar h3{ font-size:1.18rem; font-weight:700; margin-bottom:10px; }
.pillar p{ font-size:.98rem; }

/* Benefícios (sem caixas) — seção Abrir sua LLC */
.benefits{ display:grid; grid-template-columns:1fr 1fr; gap:36px 52px; max-width:940px; margin:0 auto 76px; }
.benefit{ display:flex; gap:18px; align-items:flex-start; }
.benefit__ic{ flex:none; width:56px; height:56px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(135deg,var(--royal-600),var(--royal-800)); color:#fff; box-shadow:0 12px 24px -10px rgba(29,78,216,.6); }
.benefit__ic svg{ width:27px; height:27px; }
.benefit h3{ font-size:1.14rem; font-weight:700; margin-bottom:6px; }
.benefit p{ font-size:.97rem; color:var(--body); }

.flow-sub{ text-align:center; max-width:620px; margin:0 auto 54px; }
.flow-sub h3{ font-size:clamp(1.4rem,2.6vw,1.9rem); font-weight:800; }
.flow-sub p{ margin-top:10px; color:var(--body); font-size:1.05rem; }

/* Passos como linha do tempo conectada */
.steps{ position:relative; display:grid; grid-template-columns:repeat(3,1fr); gap:40px; max-width:920px; margin:0 auto; }
.steps::before{ content:""; position:absolute; top:36px; left:16%; right:16%; height:3px; border-radius:3px; background:linear-gradient(90deg,var(--royal-600),var(--glow)); opacity:.30; }
.step{ position:relative; text-align:center; }
.step__num{ position:relative; z-index:1; width:72px; height:72px; border-radius:50%; margin:0 auto 22px; display:grid; place-items:center; background:linear-gradient(135deg,var(--royal-600),var(--royal-700)); color:#fff; font-family:var(--font-head); font-weight:800; font-size:1.7rem; border:5px solid var(--bg-soft); box-shadow:0 14px 28px -10px rgba(29,78,216,.65); }
.step h3{ font-size:1.12rem; font-weight:700; margin-bottom:8px; }
.step p{ font-size:.96rem; color:var(--body); }
.step strong{ color:var(--ink); font-weight:600; }

@media (max-width:760px){
  /* Benefícios editoriais — sem caixas, divisórias finas */
  .benefits{ grid-template-columns:1fr; gap:0; margin-bottom:52px; }
  .benefit{ padding:22px 0; gap:16px; border-bottom:1px solid var(--line); }
  .benefit:first-child{ padding-top:0; }
  .benefit:last-child{ border-bottom:0; }
  .benefit__ic{ width:48px; height:48px; }
  .benefit__ic svg{ width:24px; height:24px; }

  /* Passos como linha do tempo vertical — sem caixas */
  .flow-sub{ margin-bottom:36px; }
  .steps{ grid-template-columns:1fr; gap:0; max-width:480px; }
  .steps::before{ display:none; }
  .step{
    display:grid; grid-template-columns:52px 1fr; column-gap:18px; align-items:start; text-align:left;
    background:none; border:0; border-radius:0; box-shadow:none; padding:0 0 34px;
  }
  .step:last-child{ padding-bottom:0; }
  .step::after{
    content:""; position:absolute; left:24px; top:58px; bottom:6px; width:3px; border-radius:3px;
    background:linear-gradient(180deg,var(--royal-600),var(--glow)); opacity:.22;
  }
  .step:last-child::after{ display:none; }
  .step__num{ grid-row:1 / span 2; width:52px; height:52px; margin:0; border:0; font-size:1.25rem; }
  .step h3{ font-size:1.08rem; margin-bottom:6px; padding-top:2px; }
}

/* ---------- Como funciona (fluxo + expansíveis) ---------- */
.flow{ display:grid; grid-template-columns:repeat(3,1fr); gap:44px; margin-bottom:54px; }
.flow__art{ position:relative; width:88px; height:88px; border-radius:24px; display:grid; place-items:center; margin-bottom:22px; background:linear-gradient(135deg,var(--bg-soft-2),#dde7fb); color:var(--royal); }
.flow__art svg{ width:46px; height:46px; }
.flow__num{ position:absolute; top:-10px; right:-10px; width:30px; height:30px; border-radius:50%; display:grid; place-items:center; font-family:var(--font-head); font-weight:800; font-size:.9rem; color:#fff; background:linear-gradient(135deg,var(--royal-600),var(--royal-700)); box-shadow:0 8px 16px -6px rgba(29,78,216,.6); }
.flow h3{ font-size:1.16rem; font-weight:700; margin-bottom:8px; }
.flow p{ font-size:.96rem; }
.flow strong{ color:var(--ink); font-weight:600; }
.explainers{ display:grid; gap:14px; max-width:760px; margin:0 auto; }

/* ---------- Nossos preços ---------- */
.pricing{ display:grid; gap:22px; grid-template-columns:minmax(0,1fr); }
.price-card{ position:relative; min-width:0; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:44px; align-items:center; background:#fff; border:1px solid var(--line); border-radius:24px; padding:46px; box-shadow:var(--shadow); overflow:hidden; }
.price-card__left,.price-card__right{ min-width:0; }
.price-card::before{ content:""; position:absolute; top:0; left:0; right:0; height:5px; background:linear-gradient(90deg,var(--royal-600),var(--glow)); }
.price-card__title{ font-size:clamp(1.5rem,3vw,2.05rem); font-weight:800; margin-bottom:24px; line-height:1.18; }
.price-card__title span{ color:var(--royal); }
.price-incl{ display:grid; gap:13px; }
.price-incl li{ display:flex; align-items:flex-start; gap:12px; font-weight:500; color:var(--ink); font-size:1rem; }
.price-incl .ic-check{ width:21px; height:21px; margin-top:2px; }
.price-card__right{ text-align:center; }
.price-card__tag{ font-family:var(--font-head); font-weight:600; color:var(--muted); font-size:.98rem; }
.price-card__tag b{ color:var(--royal); font-weight:800; }
.price-card__value{ font-family:var(--font-head); font-weight:800; font-size:clamp(2.6rem,5vw,3.4rem); color:var(--ink); letter-spacing:-.02em; line-height:1; margin:6px 0 6px; }
.price-card__note{ font-size:.82rem; font-weight:600; color:var(--muted); letter-spacing:.03em; margin-bottom:22px; }
.price-card--alt{ display:flex; align-items:center; justify-content:space-between; gap:26px; background:var(--bg-soft); border:1px dashed #c2d0ef; border-radius:18px; padding:24px 32px; }
.price-card--alt h3{ font-size:1.1rem; font-weight:700; }
.price-card--alt p{ font-size:.95rem; color:var(--muted); margin-top:3px; }
.price-card--alt .btn{ flex:none; }

/* ---------- Preços: seção em destaque (fundo escuro) ---------- */
.section--pricing{
  position:relative; overflow:hidden;
  background:
    radial-gradient(900px 520px at 12% -10%, rgba(59,130,246,.30), transparent 60%),
    radial-gradient(760px 520px at 105% 110%, rgba(37,99,235,.26), transparent 55%),
    linear-gradient(160deg,#0a1430 0%, #14245c 55%, #1e3a8a 100%);
}
.section--pricing .section__title{ color:#fff; }
.section--pricing .section__lead{ color:#c4d2f2; }
.section--pricing .eyebrow{ color:#dbe7ff; background:rgba(255,255,255,.12); }

.section--pricing .price-card{
  border-color:rgba(255,255,255,.08);
  box-shadow:0 36px 80px -28px rgba(0,0,0,.65), 0 0 0 1px rgba(255,255,255,.05);
}

/* Selo de destaque (faixa diagonal) */
.price-card__ribbon{
  position:absolute; top:20px; right:-60px; width:210px; transform:rotate(45deg); z-index:3;
  background:linear-gradient(90deg,var(--gold),#e8bd51); color:#3a2b06;
  font-family:var(--font-head); font-weight:800; font-size:.62rem; letter-spacing:.04em;
  text-transform:uppercase; text-align:center; line-height:30px;
  box-shadow:0 8px 18px -6px rgba(0,0,0,.55);
}

/* CTA com pulso para chamar a atenção */
.section--pricing .price-card__right .btn--primary{
  background:linear-gradient(135deg,var(--royal-600),#1d4ed8);
  box-shadow:0 16px 34px -10px rgba(37,99,235,.75); animation:ctaPulse 2.2s var(--ease) infinite;
}
@keyframes ctaPulse{
  0%,100%{ transform:translateY(0); box-shadow:0 16px 34px -10px rgba(37,99,235,.75); }
  50%{ transform:translateY(-2px); box-shadow:0 24px 46px -10px rgba(37,99,235,1); }
}

/* Microcopy de reforço sob o CTA */
.price-card__reassure{
  margin-top:14px; font-size:.88rem; font-weight:600; color:var(--ink);
  display:flex; gap:7px; align-items:center; justify-content:center;
}
.price-card__reassure svg{ width:17px; height:17px; color:#16a34a; flex:none; }

/* Card alternativo legível sobre o fundo escuro */
.section--pricing .price-card--alt{
  background:rgba(255,255,255,.07); border:1px dashed rgba(255,255,255,.28);
}
.section--pricing .price-card--alt h3{ color:#fff; }
.section--pricing .price-card--alt p{ color:#c4d2f2; }

/* Planos (3 colunas) */
.plans{ display:grid; grid-template-columns:1fr 1.12fr 1fr; gap:20px; align-items:stretch; max-width:1080px; margin:0 auto; }
.plan{ position:relative; display:flex; flex-direction:column; background:#fff; border-radius:20px; padding:34px 28px; box-shadow:0 24px 60px -30px rgba(0,0,0,.55); }
.plan__name{ font-family:var(--font-head); font-size:1.2rem; font-weight:800; color:var(--ink); }
.plan__price{ font-family:var(--font-head); font-weight:800; font-size:2.4rem; color:var(--ink); line-height:1; margin:12px 0 2px; }
.plan__old{ display:block; font-size:1.05rem; font-weight:600; color:var(--muted); text-decoration:line-through; margin-bottom:2px; }
.plan__once{ font-size:.76rem; font-weight:600; letter-spacing:.04em; color:var(--muted); text-transform:uppercase; }
.plan__list{ display:grid; gap:12px; margin:22px 0 26px; flex:1; }
.plan__list li{ position:relative; padding-left:26px; font-size:.95rem; color:var(--ink); line-height:1.45; }
.plan__list li::before{ content:"\2713"; position:absolute; left:0; top:0; color:var(--royal); font-weight:800; }
.plan__sched{ display:block; text-align:center; margin-top:12px; font-size:.85rem; font-weight:600; color:var(--royal); }
.plan--featured{ transform:translateY(-12px); border:2px solid var(--gold); box-shadow:0 34px 80px -26px rgba(0,0,0,.7); }
.plan--featured .plan__price{ color:var(--royal); }
.plan__badge{ position:absolute; top:-13px; left:50%; transform:translateX(-50%); white-space:nowrap; background:linear-gradient(90deg,var(--gold),#e8bd51); color:#3a2b06; font-family:var(--font-head); font-weight:800; font-size:.72rem; letter-spacing:.06em; text-transform:uppercase; padding:7px 18px; border-radius:100px; box-shadow:0 8px 18px -6px rgba(0,0,0,.5); }
.plan--alt{ background:rgba(255,255,255,.06); border:1px dashed rgba(255,255,255,.28); box-shadow:none; }
.plan--alt .plan__name{ color:#fff; }
.plan--alt p{ color:#c4d2f2; font-size:.96rem; margin-top:12px; flex:1; }
.plans__note{ max-width:780px; margin:32px auto 0; text-align:center; font-size:.78rem; line-height:1.55; color:#9fb0d4; }
@media (max-width:900px){
  .plans{ grid-template-columns:1fr; gap:16px; max-width:440px; }
  /* Plano recomendado primeiro no mobile (conversão) */
  .plan--featured{ transform:none; margin-top:10px; }
  .plan{ padding:30px 24px; }
}

/* ---------- Sobre (enxuto) ---------- */
.about-lean{ position:relative; overflow:hidden; }
.about-lean__map{ position:absolute; right:-4%; top:50%; transform:translateY(-50%); width:540px; height:auto; max-width:52%; opacity:.10; pointer-events:none; }
.about-lean__inner{ position:relative; max-width:840px; }
.about-lean__statement{ font-family:var(--font-head); font-weight:700; font-size:clamp(1.5rem,3.3vw,2.25rem); line-height:1.32; color:var(--ink); letter-spacing:-.015em; }
.about-lean__statement strong{ color:var(--royal); font-weight:800; }
.about-lean__do{ margin-top:36px; padding-top:32px; border-top:1px solid var(--line); max-width:640px; }
.about-lean__do h3{ font-size:1.2rem; font-weight:800; margin-bottom:10px; }
.about-lean__do p{ font-size:1.06rem; color:var(--body); }

/* ---------- Footer: redes sociais ---------- */
.footer__social{ display:flex; gap:12px; margin-top:18px; }
.footer__social a{ width:40px; height:40px; border-radius:11px; display:grid; place-items:center; background:rgba(255,255,255,.08); color:#fff; transition:background .2s, transform .2s; padding:0; }
.footer__social a:hover{ background:var(--royal); transform:translateY(-2px); }
.footer__social svg{ width:20px; height:20px; }

@media (max-width:980px){
  .pillars{ grid-template-columns:1fr; gap:30px; max-width:520px; margin-inline:auto; }
  .flow{ grid-template-columns:1fr; gap:34px; max-width:520px; margin-inline:auto; }
  .price-card{ grid-template-columns:minmax(0,1fr); gap:30px; padding:34px; }
  .price-card__title{ padding-right:96px; }
  .price-card__right{ text-align:left; }
  .price-card--alt{ flex-direction:column; align-items:flex-start; }
  .price-card--alt .btn{ white-space:normal; width:100%; }
  .about-lean__map{ display:none; }
  .about-lean__statement{ font-size:clamp(1.4rem,5vw,1.9rem); }
}
@media (max-width:480px){
  .price-card{ padding:26px 22px; }
}

@media (prefers-reduced-motion:reduce){
  *{ animation:none !important; scroll-behavior:auto !important; }
  .reveal{ opacity:1; transform:none; }
}
