/* Ampla Contabilidade - v2 · conceito: contabilidade de gente, motor de fintech
   Paleta da marca real: indigo #303098 (logo) · cinza #909898 · neutros frios */

@font-face{font-family:'Lora';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/lora-500.woff2') format('woff2')}
@font-face{font-family:'Lora';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/lora-600.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/inter-400.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/inter-500.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/inter-600.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/inter-700.woff2') format('woff2')}

:root{
  --bg:#F6F7FB;           /* off-white frio da base */
  --paper:#FFFFFF;
  --ink:#181A2E;          /* texto escuro com fundo de indigo */
  --muted:#5A5E75;
  --forest:#12123B;       /* tom escuro das seções (indigo profundo da marca) */
  --forest-deep:#0B0B28;
  --terra:#3A3AB0;        /* acento vivo: o indigo da logo (#303098 clareado p/ AA) */
  --terra-deep:#28288A;
  --gold:#C9CDF2;         /* "ice": azul-gelo p/ botões em fundo escuro */
  --line:#E2E4F0;
  --line-dark:rgba(201,205,242,.18);
  --ease:cubic-bezier(.22,.61,.21,1);
  --shadow:0 24px 60px -28px rgba(18,18,59,.35);
  --radius:18px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:86px}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.65;font-size:16.5px;overflow-x:clip}
img,video{max-width:100%;display:block}
a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px;min-width:0}
em{font-style:italic}

/* tipografia display */
h1,h2{font-family:'Lora',Georgia,serif;font-weight:600;line-height:1.14;letter-spacing:-.01em}
h1{font-size:clamp(2.2rem,4.6vw,3.55rem)}
h2{font-size:clamp(1.75rem,3.4vw,2.6rem)}
h1 em,h2 em{color:var(--terra)}
.h2--light{color:#F4F5FF}
.h2--light em{color:var(--gold)}
h3{font-size:1.08rem;font-weight:600;letter-spacing:-.005em}
.kicker{font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--terra);margin-bottom:14px}
.kicker--light{color:var(--gold)}
.lead{font-size:1.11rem;color:var(--muted);max-width:54ch}
.section-lead{color:var(--muted);max-width:64ch;margin:14px 0 8px}

/* botões */
.btn{display:inline-block;padding:15px 28px;border-radius:999px;font-weight:600;font-size:.98rem;text-decoration:none;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s}
.btn--solid{background:var(--terra);color:#fff;box-shadow:0 14px 30px -14px rgba(58,58,176,.65)}
.btn--solid:hover{transform:translateY(-2px);background:var(--terra-deep)}
.btn--ghost{border:1.5px solid var(--line);color:var(--ink);background:var(--paper)}
.btn--ghost:hover{transform:translateY(-2px);border-color:var(--terra);color:var(--terra)}
.btn--ice{background:var(--gold);color:var(--forest-deep);box-shadow:0 16px 34px -16px rgba(201,205,242,.55)}
.btn--ice:hover{transform:translateY(-2px);background:#fff}

/* nav */
.nav{position:sticky;top:0;z-index:60;background:rgba(246,247,251,.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav__inner{max-width:1180px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center}
.nav__links{display:flex;align-items:center;gap:26px;font-size:.94rem;font-weight:500}
.nav__links a{text-decoration:none;color:var(--muted);transition:color .2s}
.nav__links a:hover{color:var(--terra)}
.nav__cta{background:var(--terra);color:#fff!important;padding:10px 20px;border-radius:999px;font-weight:600}
.nav__cta:hover{background:var(--terra-deep)}
.nav__burger{display:none;background:none;border:0;cursor:pointer;padding:8px}
.nav__burger span{display:block;width:24px;height:2.5px;background:var(--ink);margin:5px 0;border-radius:3px;transition:.3s var(--ease)}

/* hero */
.hero{position:relative;padding:84px 0 72px;background:
  radial-gradient(880px 460px at 18% -10%, rgba(58,58,176,.10), transparent 60%),
  radial-gradient(720px 420px at 96% 8%, rgba(48,48,152,.07), transparent 62%),
  var(--bg)}
.hero__grid{display:grid;grid-template-columns:1.06fr .94fr;gap:56px;align-items:center}
.hero__copy h1{margin:0 0 20px}
.hero__ctas{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 18px}
.hero__proof{font-size:.92rem;color:var(--muted)}
.stars{color:#E8A93C;letter-spacing:2px}
.hero__media{position:relative;aspect-ratio:4/5;min-height:480px;max-height:660px}
.hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 28%;border-radius:var(--radius);box-shadow:var(--shadow)}
.hero__media::before{content:"";position:absolute;inset:auto -16px -16px auto;width:62%;height:62%;border:1.5px solid rgba(58,58,176,.35);border-radius:var(--radius);z-index:-1}

/* faixa de confianca */
.trust{background:
  radial-gradient(760px 420px at 50% -8%, rgba(88,92,220,.18), transparent 62%),
  linear-gradient(180deg, var(--forest), var(--forest-deep));color:#E8EAF8;padding:52px 0}
.trust__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.trust__item strong{display:block;font-family:'Lora',serif;font-size:1.32rem;color:#fff;margin-bottom:6px}
.trust__item span{font-size:.88rem;color:rgba(232,234,248,.75);line-height:1.5}

/* servicos */
.services{padding:92px 0}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:44px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.card__num{font-family:'Lora',serif;font-size:.95rem;color:var(--terra);display:block;margin-bottom:14px;letter-spacing:.06em}
.card h3{margin-bottom:10px}
.card p{font-size:.94rem;color:var(--muted)}

/* como funciona */
.steps{background:
  radial-gradient(820px 440px at 50% -6%, rgba(88,92,220,.16), transparent 62%),
  linear-gradient(180deg, var(--forest), var(--forest-deep));color:#E8EAF8;padding:92px 0}
.steps__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:44px}
.step{border:1px solid var(--line-dark);border-radius:var(--radius);padding:30px 26px;background:rgba(255,255,255,.025)}
.step span{font-family:'Lora',serif;font-size:2rem;color:var(--gold);display:block;margin-bottom:12px}
.step h3{color:#fff;margin-bottom:10px}
.step p{font-size:.94rem;color:rgba(232,234,248,.78)}

/* digital + humano */
.human{padding:92px 0}
.human__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.human__media{position:relative;aspect-ratio:4/5;min-height:440px;max-height:620px}
.human__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}
.human__copy h2{margin-bottom:16px}
.human__copy>p{color:var(--muted)}
.checks{list-style:none;margin:22px 0 28px}
.checks li{padding:9px 0 9px 34px;position:relative;font-size:.98rem}
.checks li::before{content:"✓";position:absolute;left:0;top:9px;width:21px;height:21px;border-radius:50%;background:var(--terra);color:#fff;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center}

/* quem lidera */
.leader{background:
  radial-gradient(760px 420px at 82% -8%, rgba(88,92,220,.17), transparent 62%),
  linear-gradient(180deg, var(--forest-deep), var(--forest));color:#E8EAF8;padding:96px 0}
.leader__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:start}
.leader__sub{color:var(--gold);font-weight:600;font-size:.95rem;margin-bottom:14px}
.leader__copy>p{color:rgba(232,234,248,.82)}
.leader__creds{list-style:none;margin-top:24px;border-top:1px solid var(--line-dark)}
.leader__creds li{padding:13px 0;border-bottom:1px solid var(--line-dark);font-size:.95rem;color:rgba(232,234,248,.88)}
.leader__media{display:grid;gap:18px}
.leader__media figure{position:relative}
.leader__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}
.leader__media figure:first-child{aspect-ratio:4/4.4;min-height:380px;max-height:560px}
.leader__press{aspect-ratio:16/10;min-height:260px;max-height:420px}
.leader__press img{object-position:center 40%}
.leader__press figcaption{position:absolute;top:100%;left:0;font-size:.84rem;color:rgba(232,234,248,.62);margin-top:10px}
.leader__press{margin-bottom:34px}

/* migracao */
.switch{padding:92px 0}
.switch__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:40px}
.switch__item{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px}
.switch__item h3{margin-bottom:10px;color:var(--terra)}
.switch__item p{font-size:.94rem;color:var(--muted)}
.switch__cta{margin-top:34px}

/* sobre */
.about{padding:92px 0}
.about__grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.about__copy>p{color:var(--muted);margin-top:14px}
.about__video video{border-radius:var(--radius);box-shadow:var(--shadow);width:100%;background:#000}
.about__video figcaption{font-size:.86rem;color:var(--muted);margin-top:10px}
.about__quote{font-family:'Lora',serif;font-style:italic;font-size:1.18rem;line-height:1.55;color:var(--terra-deep);border-left:3px solid var(--terra);padding-left:20px;margin-top:22px}

/* plano personalizado */
.plan{background:
  radial-gradient(720px 420px at 16% 0%, rgba(88,92,220,.18), transparent 62%),
  linear-gradient(180deg, var(--forest), var(--forest-deep));color:#E8EAF8;padding:92px 0}
.plan__inner{max-width:820px}
.plan__inner>p{color:rgba(232,234,248,.82);margin-top:16px;max-width:62ch}
.plan__cta{margin-top:32px}

/* blog */
.blog{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:92px 0}
.blog__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:44px}
.bpost{display:flex;flex-direction:column;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px;text-decoration:none;color:var(--ink);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bpost:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.bpost__date{font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--terra);margin-bottom:12px}
.bpost h3{font-size:1.1rem;line-height:1.4;margin-bottom:10px}
.bpost p{font-size:.93rem;color:var(--muted);flex:1}
.bpost__more{margin-top:18px;font-weight:600;font-size:.92rem;color:var(--terra)}
.blog__cta{margin-top:38px;text-align:center}

/* faq */
.faq{padding:92px 0}
.faq__list{margin-top:36px;max-width:820px}
.faq details{background:var(--paper);border:1px solid var(--line);border-radius:14px;margin-bottom:12px;overflow:hidden}
.faq summary{cursor:pointer;padding:19px 22px;font-weight:600;font-size:1rem;list-style:none;position:relative;padding-right:52px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:1.35rem;color:var(--terra);transition:transform .3s var(--ease)}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{padding:0 22px 20px;color:var(--muted);font-size:.96rem}

/* cta final */
.cta{background:
  radial-gradient(820px 460px at 50% 0%, rgba(88,92,220,.20), transparent 62%),
  linear-gradient(180deg, var(--forest), var(--forest-deep));color:#E8EAF8;padding:96px 0}
.cta__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:start}
.cta__copy p{color:rgba(232,234,248,.8);margin:16px 0 28px;max-width:50ch}
.cta__where{border:1px solid var(--line-dark);border-radius:var(--radius);padding:30px 28px;background:rgba(255,255,255,.03)}
.cta__where h3{color:#fff;margin-bottom:12px}
.cta__where p{font-size:.94rem;color:rgba(232,234,248,.8);line-height:1.7}
.cta__phone{margin-top:12px;font-weight:600;color:#fff!important}
.cta__map{display:inline-block;margin-top:16px;color:var(--gold);font-weight:600;font-size:.95rem;text-decoration:none}
.cta__map:hover{text-decoration:underline}

/* footer */
.foot{background:var(--forest-deep);color:rgba(232,234,248,.75);padding:56px 0 26px}
.foot__grid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;padding-bottom:36px;border-bottom:1px solid var(--line-dark)}
.foot__tag{font-size:.9rem;margin-top:14px}
.foot__links{display:flex;flex-direction:column;gap:10px;font-size:.92rem}
.foot__links a{text-decoration:none;color:rgba(232,234,248,.75)}
.foot__links a:hover{color:#fff}
.foot__legalbar{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:22px;font-size:.84rem}
.foot__legalbar a{color:inherit;text-decoration:underline;text-underline-offset:2px}

/* whatsapp flutuante (padrao fixo) */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:80;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 16px 34px -12px rgba(37,211,102,.65);transition:transform .25s var(--ease)}
.wa-float:hover{transform:scale(1.08)}

/* reveal (gate .js) */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .reveal.d1{transition-delay:.09s}
.js .reveal.d2{transition-delay:.18s}
.js .reveal.d3{transition-delay:.27s}
.js .reveal.d4{transition-delay:.36s}
.js .reveal.is-visible{opacity:1!important;transform:none!important}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}}

/* mobile */
@media (max-width:960px){
  .hero__grid,.human__grid,.leader__grid,.about__grid,.cta__grid{grid-template-columns:1fr;gap:40px}
  .cards,.steps__grid,.switch__grid,.blog__grid{grid-template-columns:1fr 1fr}
  .trust__grid{grid-template-columns:1fr 1fr;gap:24px}
  .hero{padding:56px 0 56px}
  .hero__media{max-width:480px;min-height:0;height:min(58vh,520px)}
  .human__media{min-height:0;height:min(56vh,500px)}
  .leader__media figure:first-child{min-height:0;height:min(58vh,480px)}
  .leader__press{min-height:0;height:min(40vh,320px)}
  /* height fixa + aspect-ratio gera largura intrinseca (transferred size) e estoura o grid: no mobile a altura governa sozinha */
  .hero__media,.human__media,.leader__media figure:first-child,.leader__press{aspect-ratio:auto;width:100%;min-width:0}
}
@media (max-width:720px){
  body{font-size:16px}
  .cards,.steps__grid,.switch__grid,.blog__grid{grid-template-columns:1fr}
  h1 br{display:none}
  .nav__links{position:fixed;inset:73px 0 auto 0;background:var(--bg);flex-direction:column;align-items:flex-start;gap:0;max-height:0;overflow:hidden;visibility:hidden;transition:max-height .42s var(--ease),visibility .42s var(--ease);z-index:55;border-bottom:1px solid var(--line)}
  .nav__links.open{max-height:80vh;visibility:visible;box-shadow:var(--shadow)}
  .nav__links a{padding:15px 24px;width:100%;border-top:1px solid var(--line)}
  .nav__cta{margin:14px 24px 20px;width:auto;border-radius:999px}
  .nav__burger{display:block}
  .nav__burger.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
  .nav__burger.open span:nth-child(2){opacity:0}
  .nav__burger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
  .foot__grid{flex-direction:column}
}
@media (max-width:400px){
  .btn{padding:14px 22px;font-size:.93rem}
  .trust__grid{grid-template-columns:1fr}
}
