/* ============================================================
   Landing page do MeuErp
   Usa os mesmos tokens do produto (Inter, azul #2F6FED, radius
   0.6rem) com a display Gabarito nos títulos. Tudo com prefixo
   .lp- para não colidir com site.css / bootstrap.
   ============================================================ */

:root {
    --lp-blue: #2F6FED;
    --lp-blue-dark: #2557BE;
    --lp-blue-deep: #16295C;
    --lp-blue-soft: #EAF1FE;
    --lp-green: #1FA97A;
    --lp-whats: #25D366;
    --lp-warning: #F2A93B;
    --lp-danger: #E5484D;
    --lp-ink: #1B2330;
    --lp-muted: #5B6472;
    --lp-bg: #F5F7FA;
    --lp-surface: #FFFFFF;
    --lp-border: #E3E7EC;
    --lp-radius: 0.6rem;
    --lp-radius-lg: 1.1rem;
    --lp-shadow: 0 10px 30px rgba(27, 35, 48, .08);
    --lp-shadow-soft: 0 4px 14px rgba(27, 35, 48, .06);
    --lp-display: 'Gabarito', 'Inter', sans-serif;
    --lp-body: 'Inter', sans-serif;
}

.lp-page {
    font-family: var(--lp-body);
    color: var(--lp-ink);
    background: var(--lp-surface);
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}

.lp-page ::selection { background: var(--lp-blue-soft); }

.lp-container {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 1.25rem;
}

/* ---------- Navbar ---------- */

.lp-nav {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(255, 255, 255, .85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--lp-border);
}

.lp-nav-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    height: 64px;
}

.lp-brand {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-family: var(--lp-display);
    font-weight: 700;
    font-size: 1.25rem;
    color: var(--lp-ink);
    text-decoration: none;
}

.lp-brand i { color: var(--lp-blue); font-size: 1.35rem; }

.lp-brand img { height: 34px; width: auto; display: block; }

.lp-nav-links {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.lp-nav-links a {
    color: var(--lp-muted);
    text-decoration: none;
    font-size: .925rem;
    font-weight: 500;
    transition: color .15s ease;
}

.lp-nav-links a:hover { color: var(--lp-ink); }

.lp-nav-cta { display: flex; align-items: center; gap: .625rem; }

@media (max-width: 860px) {
    .lp-nav-links { display: none; }
}

/* ---------- Botões ---------- */

.lp-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    font-family: var(--lp-body);
    font-weight: 600;
    font-size: .95rem;
    padding: .7rem 1.4rem;
    border-radius: var(--lp-radius);
    border: 1px solid transparent;
    text-decoration: none;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
    white-space: nowrap;
}

.lp-btn:focus-visible,
.lp-tema-chip:focus-visible,
.lp-nav-links a:focus-visible {
    outline: 3px solid rgba(47, 111, 237, .4);
    outline-offset: 2px;
}

.lp-btn-primary {
    background: var(--lp-blue);
    color: #fff;
    box-shadow: 0 6px 16px rgba(47, 111, 237, .3);
}

.lp-btn-primary:hover {
    background: var(--lp-blue-dark);
    color: #fff;
    transform: translateY(-2px);
}

.lp-btn-outline {
    background: var(--lp-surface);
    color: var(--lp-ink);
    border-color: var(--lp-border);
}

.lp-btn-outline:hover {
    border-color: var(--lp-blue);
    color: var(--lp-blue);
    transform: translateY(-2px);
}

.lp-btn-whats {
    background: var(--lp-whats);
    color: #fff;
    box-shadow: 0 6px 16px rgba(37, 211, 102, .35);
}

.lp-btn-whats:hover {
    background: #1eb857;
    color: #fff;
    transform: translateY(-2px);
}

.lp-btn-light {
    background: #fff;
    color: var(--lp-blue-deep);
}

.lp-btn-light:hover { background: var(--lp-blue-soft); color: var(--lp-blue-deep); transform: translateY(-2px); }

.lp-btn-sm { padding: .5rem 1rem; font-size: .875rem; }

/* ---------- Tipografia ---------- */

.lp-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    font-size: .8rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--lp-blue);
    background: var(--lp-blue-soft);
    border-radius: 999px;
    padding: .4rem .9rem;
    margin-bottom: 1.1rem;
}

.lp-h1 {
    font-family: var(--lp-display);
    font-weight: 700;
    font-size: clamp(2.2rem, 5vw, 3.4rem);
    line-height: 1.12;
    letter-spacing: -.015em;
    margin-bottom: 1.15rem;
}

.lp-h2 {
    font-family: var(--lp-display);
    font-weight: 700;
    font-size: clamp(1.7rem, 3.4vw, 2.35rem);
    line-height: 1.18;
    letter-spacing: -.01em;
    margin-bottom: .75rem;
}

.lp-lead {
    font-size: 1.1rem;
    line-height: 1.65;
    color: var(--lp-muted);
    max-width: 34rem;
}

.lp-section-head { max-width: 40rem; margin-bottom: 2.75rem; }
.lp-section-head.centered { margin-left: auto; margin-right: auto; text-align: center; }
.lp-section-head .lp-lead { margin-left: auto; margin-right: auto; }

/* Marca-texto no H1: pincelada azul atrás da palavra */
.lp-marca {
    position: relative;
    white-space: nowrap;
}

.lp-marca > span { position: relative; z-index: 1; }

.lp-marca::after {
    content: "";
    position: absolute;
    left: -.15em;
    right: -.15em;
    bottom: .04em;
    height: .42em;
    background: linear-gradient(100deg, rgba(47, 111, 237, .28), rgba(47, 111, 237, .16));
    border-radius: .2em .35em .25em .4em;
    transform: skewX(-8deg) rotate(-.6deg);
    z-index: 0;
}

/* ---------- Seções ---------- */

.lp-section { padding: 5.5rem 0; }
.lp-section-tinted { background: var(--lp-bg); }

@media (max-width: 768px) {
    .lp-section { padding: 3.5rem 0; }
}

/* Revelação no scroll */
.lp-reveal {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity .6s ease, transform .6s ease;
}

.lp-reveal.visivel { opacity: 1; transform: none; }

/* ---------- Hero ---------- */

.lp-hero {
    position: relative;
    padding: 4.5rem 0 5.5rem;
    background:
        radial-gradient(52rem 30rem at 85% -10%, rgba(47, 111, 237, .1), transparent 60%),
        radial-gradient(40rem 26rem at -10% 55%, rgba(31, 169, 122, .07), transparent 60%),
        var(--lp-bg);
    overflow: hidden;
}

.lp-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    gap: 3.5rem;
    align-items: center;
}

@media (max-width: 992px) {
    .lp-hero-grid { grid-template-columns: 1fr; gap: 3rem; }
}

.lp-hero-ctas {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin: 1.75rem 0 1.5rem;
}

.lp-hero-chips {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.lp-chip {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-size: .82rem;
    font-weight: 500;
    color: var(--lp-muted);
    background: var(--lp-surface);
    border: 1px solid var(--lp-border);
    border-radius: 999px;
    padding: .35rem .8rem;
}

.lp-chip i { color: var(--lp-green); font-size: .8rem; }

/* Entrada orquestrada do hero */
.lp-hero-copy > * { opacity: 0; transform: translateY(18px); animation: lpSubir .65s ease forwards; }
.lp-hero-copy > *:nth-child(1) { animation-delay: .05s; }
.lp-hero-copy > *:nth-child(2) { animation-delay: .15s; }
.lp-hero-copy > *:nth-child(3) { animation-delay: .25s; }
.lp-hero-copy > *:nth-child(4) { animation-delay: .35s; }
.lp-hero-copy > *:nth-child(5) { animation-delay: .45s; }

@keyframes lpSubir {
    to { opacity: 1; transform: none; }
}

/* ---------- Composição hero: dashboard + celular + balão ---------- */

.lp-composicao {
    position: relative;
    min-height: 500px;
}

@media (max-width: 992px) {
    .lp-composicao { width: 100%; min-height: 460px; max-width: 560px; margin: 0 auto; }
}

/* janela do dashboard */
.lp-janela {
    position: absolute;
    top: 1.5rem;
    left: 0;
    width: min(72%, 400px);
    background: var(--lp-surface);
    border: 1px solid var(--lp-border);
    border-radius: var(--lp-radius-lg);
    box-shadow: var(--lp-shadow);
    overflow: hidden;
    opacity: 0;
    animation: lpSubir .7s ease .4s forwards;
}

.lp-janela-topo {
    display: flex;
    align-items: center;
    gap: .35rem;
    padding: .65rem .9rem;
    border-bottom: 1px solid var(--lp-border);
    background: #FBFCFE;
}

.lp-janela-topo span {
    width: 9px; height: 9px;
    border-radius: 50%;
    background: var(--lp-border);
}

.lp-janela-topo span:first-child { background: #F4B6B6; }
.lp-janela-topo span:nth-child(2) { background: #F6DCA8; }
.lp-janela-topo span:nth-child(3) { background: #B3E2C8; }

.lp-janela-titulo {
    margin-left: .5rem;
    font-size: .72rem;
    font-weight: 600;
    color: var(--lp-muted);
}

.lp-janela-corpo { padding: .9rem; display: grid; gap: .7rem; }

.lp-stat-hero {
    background: linear-gradient(135deg, var(--lp-blue), var(--lp-blue-dark));
    color: #fff;
    border-radius: var(--lp-radius);
    padding: .85rem 1rem;
}

.lp-stat-hero small { display: block; font-size: .68rem; opacity: .85; font-weight: 500; }
.lp-stat-hero strong { font-size: 1.35rem; font-weight: 700; letter-spacing: -.01em; }

.lp-stats-linha { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; }

.lp-stat {
    background: var(--lp-bg);
    border: 1px solid var(--lp-border);
    border-radius: var(--lp-radius);
    padding: .7rem .85rem;
}

.lp-stat small { display: block; font-size: .66rem; color: var(--lp-muted); font-weight: 500; }
.lp-stat strong { font-size: .98rem; font-weight: 700; }
.lp-stat strong.positivo { color: var(--lp-green); }
.lp-stat strong.alerta { color: var(--lp-warning); }

.lp-grafico {
    display: flex;
    align-items: flex-end;
    gap: .45rem;
    height: 64px;
    padding: .35rem .3rem 0;
}

.lp-grafico span {
    flex: 1;
    border-radius: 4px 4px 0 0;
    background: var(--lp-blue-soft);
    transform-origin: bottom;
    animation: lpBarra .8s ease .9s backwards;
}

.lp-grafico span.destaque { background: var(--lp-blue); }

@keyframes lpBarra {
    from { transform: scaleY(0); }
}

/* celular do catálogo */
.lp-fone {
    position: absolute;
    right: 0;
    bottom: 0;
    width: min(52%, 270px);
    background: #10141C;
    border-radius: 2rem;
    padding: .55rem;
    box-shadow: 0 24px 50px rgba(27, 35, 48, .22);
    opacity: 0;
    animation: lpSubir .7s ease .6s forwards;
    z-index: 2;
}

.lp-fone-tela {
    background: var(--tema-fundo, #f6f7fb);
    color: var(--tema-texto, #1c2333);
    border-radius: 1.55rem;
    overflow: hidden;
    transition: background .35s ease, color .35s ease;
}

.lp-fone-topo {
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: .8rem .85rem .6rem;
}

.lp-fone-logo {
    width: 30px; height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--tema-destaque, #2F6FED);
    color: var(--tema-destaque-texto, #fff);
    font-size: .8rem;
    flex-shrink: 0;
    transition: background .35s ease, color .35s ease;
}

.lp-fone-topo strong { font-size: .8rem; display: block; line-height: 1.15; }
.lp-fone-topo small { font-size: .62rem; color: var(--tema-texto-suave, #6c757d); transition: color .35s ease; }

.lp-fone-chips {
    display: flex;
    gap: .35rem;
    padding: 0 .85rem .6rem;
    overflow: hidden;
}

.lp-fone-chips span {
    font-size: .6rem;
    font-weight: 600;
    padding: .24rem .6rem;
    border-radius: 999px;
    border: 1px solid var(--tema-borda, #e7e9f0);
    background: var(--tema-superficie, #fff);
    color: var(--tema-texto-suave, #6c757d);
    white-space: nowrap;
    transition: all .35s ease;
}

.lp-fone-chips span.ativo {
    background: var(--tema-destaque, #2F6FED);
    color: var(--tema-destaque-texto, #fff);
    border-color: var(--tema-destaque, #2F6FED);
}

.lp-fone-grade {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .55rem;
    padding: 0 .85rem .9rem;
}

.lp-produto {
    background: var(--tema-superficie, #fff);
    border: 1px solid var(--tema-borda, #e7e9f0);
    border-radius: .65rem;
    overflow: hidden;
    transition: background .35s ease, border-color .35s ease;
}

.lp-produto-foto { height: 62px; }

.lp-produto-foto.f1 { background: linear-gradient(140deg, #C9D8F4, #8FAEE8); }
.lp-produto-foto.f2 { background: linear-gradient(140deg, #F4DCC9, #E8B98F); }
.lp-produto-foto.f3 { background: linear-gradient(140deg, #D6E9DC, #9CC9AC); }
.lp-produto-foto.f4 { background: linear-gradient(140deg, #EBD8EE, #C89FD0); }

.lp-produto-info { padding: .45rem .55rem .55rem; }
.lp-produto-info small { display: block; font-size: .6rem; line-height: 1.2; font-weight: 500; }
.lp-produto-info strong { font-size: .68rem; color: var(--tema-destaque, #2F6FED); transition: color .35s ease; }

.lp-fone-whats {
    position: absolute;
    right: .95rem;
    bottom: .95rem;
    width: 38px; height: 38px;
    border-radius: 50%;
    background: var(--lp-whats);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
    box-shadow: 0 6px 14px rgba(37, 211, 102, .45);
}

/* balão de pedido no WhatsApp */
.lp-balao {
    position: absolute;
    left: 4%;
    bottom: 7%;
    width: min(62%, 265px);
    background: #fff;
    border-radius: var(--lp-radius-lg);
    box-shadow: 0 16px 40px rgba(27, 35, 48, .18);
    overflow: hidden;
    z-index: 3;
    opacity: 0;
    animation: lpBalao .55s cubic-bezier(.2, 1.2, .4, 1) 1.5s forwards;
}

@keyframes lpBalao {
    from { opacity: 0; transform: translateY(26px) scale(.92); }
    to { opacity: 1; transform: none; }
}

.lp-balao-topo {
    display: flex;
    align-items: center;
    gap: .5rem;
    background: var(--lp-whats);
    color: #fff;
    padding: .55rem .8rem;
    font-size: .78rem;
    font-weight: 600;
}

.lp-balao-corpo { padding: .7rem .8rem .8rem; }

.lp-balao-msg {
    background: #E8F7EE;
    border-radius: .15rem .75rem .75rem .75rem;
    padding: .55rem .7rem;
    font-size: .7rem;
    line-height: 1.55;
    color: #23303E;
}

.lp-balao-msg strong { font-size: .72rem; }

.lp-balao-hora {
    display: block;
    text-align: right;
    font-size: .58rem;
    color: var(--lp-muted);
    margin-top: .3rem;
}

@media (max-width: 480px) {
    .lp-composicao { min-height: 480px; }
    .lp-janela { width: 82%; }
    .lp-fone { width: 56%; }
    .lp-balao { width: 74%; }
}

/* ---------- Fluxo do pedido (4 passos reais) ---------- */

.lp-fluxo {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
    counter-reset: passo;
}

@media (max-width: 992px) { .lp-fluxo { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .lp-fluxo { grid-template-columns: 1fr; } }

.lp-passo {
    position: relative;
    background: var(--lp-surface);
    border: 1px solid var(--lp-border);
    border-radius: var(--lp-radius-lg);
    padding: 1.5rem 1.35rem 1.4rem;
    counter-increment: passo;
    box-shadow: var(--lp-shadow-soft);
}

.lp-passo::before {
    content: counter(passo, decimal-leading-zero);
    display: inline-block;
    font-family: var(--lp-display);
    font-weight: 700;
    font-size: .8rem;
    color: var(--lp-blue);
    background: var(--lp-blue-soft);
    border-radius: 999px;
    padding: .25rem .7rem;
    margin-bottom: .9rem;
}

.lp-passo i {
    position: absolute;
    top: 1.35rem;
    right: 1.25rem;
    font-size: 1.3rem;
    color: var(--lp-blue);
    opacity: .85;
}

.lp-passo h3 {
    font-family: var(--lp-display);
    font-size: 1.05rem;
    font-weight: 700;
    margin-bottom: .4rem;
}

.lp-passo p {
    font-size: .875rem;
    color: var(--lp-muted);
    line-height: 1.55;
    margin: 0;
}

/* seta entre passos (só desktop) */
@media (min-width: 993px) {
    .lp-passo:not(:last-child)::after {
        content: "";
        position: absolute;
        top: 50%;
        right: -1.05rem;
        width: .85rem;
        height: 2px;
        background: var(--lp-border);
    }
}

/* ---------- Grade de funcionalidades ---------- */

.lp-func-grade {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
}

@media (max-width: 992px) { .lp-func-grade { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .lp-func-grade { grid-template-columns: 1fr; } }

.lp-func {
    background: var(--lp-surface);
    border: 1px solid var(--lp-border);
    border-radius: var(--lp-radius-lg);
    padding: 1.5rem 1.35rem;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.lp-func:hover {
    transform: translateY(-4px);
    box-shadow: var(--lp-shadow);
    border-color: rgba(47, 111, 237, .35);
}

.lp-func-icone {
    width: 44px; height: 44px;
    border-radius: var(--lp-radius);
    background: var(--lp-blue-soft);
    color: var(--lp-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    margin-bottom: 1rem;
}

.lp-func h3 {
    font-family: var(--lp-display);
    font-size: 1.05rem;
    font-weight: 700;
    margin-bottom: .45rem;
}

.lp-func p {
    font-size: .875rem;
    color: var(--lp-muted);
    line-height: 1.55;
    margin: 0;
}

/* ---------- Seção catálogo (tema interativo) ---------- */

.lp-split {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 4rem;
    align-items: center;
}

@media (max-width: 992px) {
    .lp-split { grid-template-columns: 1fr; gap: 2.75rem; }
}

.lp-lista { list-style: none; padding: 0; margin: 1.5rem 0 0; display: grid; gap: .85rem; }

.lp-lista li {
    display: flex;
    gap: .75rem;
    font-size: .95rem;
    line-height: 1.5;
    color: var(--lp-ink);
}

.lp-lista li i {
    color: var(--lp-green);
    font-size: 1.05rem;
    flex-shrink: 0;
    margin-top: .1rem;
}

.lp-lista li span strong { font-weight: 600; }
.lp-lista li span small { display: block; color: var(--lp-muted); font-size: .85rem; }

/* palco do celular com temas */
.lp-tema-palco {
    background:
        radial-gradient(24rem 18rem at 70% 20%, rgba(47, 111, 237, .12), transparent 65%),
        var(--lp-bg);
    border: 1px solid var(--lp-border);
    border-radius: 1.5rem;
    padding: 2.5rem 1.5rem 1.75rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
}

.lp-tema-palco .lp-fone {
    position: relative;
    inset: auto;
    width: min(100%, 280px);
    opacity: 1;
    animation: none;
}

.lp-tema-chips {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .5rem;
}

.lp-tema-chip {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    font-size: .82rem;
    font-weight: 600;
    font-family: var(--lp-body);
    color: var(--lp-muted);
    background: var(--lp-surface);
    border: 1px solid var(--lp-border);
    border-radius: 999px;
    padding: .45rem .95rem;
    cursor: pointer;
    transition: all .15s ease;
}

.lp-tema-chip .bolinha {
    width: 12px; height: 12px;
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, .12);
}

.lp-tema-chip:hover { border-color: var(--lp-blue); color: var(--lp-ink); }

.lp-tema-chip.ativo {
    background: var(--lp-ink);
    color: #fff;
    border-color: var(--lp-ink);
}

.lp-tema-legenda { font-size: .8rem; color: var(--lp-muted); text-align: center; margin: 0; }

/* ---------- Seção gestão (stats grandes) ---------- */

.lp-gestao-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

@media (max-width: 480px) { .lp-gestao-cards { grid-template-columns: 1fr; } }

.lp-gestao-card {
    background: var(--lp-surface);
    border: 1px solid var(--lp-border);
    border-radius: var(--lp-radius-lg);
    padding: 1.25rem 1.35rem;
    box-shadow: var(--lp-shadow-soft);
}

.lp-gestao-card small {
    display: flex;
    align-items: center;
    gap: .4rem;
    font-size: .75rem;
    font-weight: 500;
    color: var(--lp-muted);
    margin-bottom: .35rem;
}

.lp-gestao-card strong {
    font-family: var(--lp-display);
    font-size: 1.45rem;
    font-weight: 700;
    letter-spacing: -.01em;
}

.lp-gestao-card.azul {
    background: linear-gradient(135deg, var(--lp-blue), var(--lp-blue-dark));
    border: none;
    color: #fff;
}

.lp-gestao-card.azul small { color: rgba(255, 255, 255, .8); }

.lp-gestao-card .tendencia {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    font-size: .72rem;
    font-weight: 600;
    color: var(--lp-green);
    margin-left: .4rem;
}

.lp-gestao-card .tendencia.negativa { color: var(--lp-danger); }
.lp-gestao-card.azul .tendencia { color: #B8F5D9; }

/* ---------- FAQ ---------- */

.lp-faq { max-width: 46rem; margin: 0 auto; }

.lp-faq .accordion-item {
    border: 1px solid var(--lp-border);
    border-radius: var(--lp-radius) !important;
    margin-bottom: .75rem;
    overflow: hidden;
}

.lp-faq .accordion-button {
    font-family: var(--lp-body);
    font-weight: 600;
    font-size: .975rem;
    color: var(--lp-ink);
    background: var(--lp-surface);
    padding: 1.1rem 1.25rem;
    box-shadow: none;
}

.lp-faq .accordion-button:not(.collapsed) {
    color: var(--lp-blue);
    background: var(--lp-blue-soft);
}

.lp-faq .accordion-button:focus { box-shadow: 0 0 0 3px rgba(47, 111, 237, .25); }

.lp-faq .accordion-body {
    font-size: .925rem;
    color: var(--lp-muted);
    line-height: 1.65;
    padding: 1.1rem 1.25rem;
}

/* ---------- CTA final ---------- */

.lp-cta-final {
    background:
        radial-gradient(40rem 22rem at 80% -20%, rgba(47, 111, 237, .5), transparent 65%),
        radial-gradient(30rem 20rem at 5% 110%, rgba(31, 169, 122, .28), transparent 60%),
        var(--lp-blue-deep);
    color: #fff;
    border-radius: 1.5rem;
    padding: 4rem 2rem;
    text-align: center;
}

.lp-cta-final .lp-h2 { color: #fff; }

.lp-cta-final p {
    color: rgba(255, 255, 255, .82);
    max-width: 32rem;
    margin: 0 auto 1.9rem;
    font-size: 1.05rem;
    line-height: 1.65;
}

.lp-cta-final .lp-hero-ctas { justify-content: center; margin: 0; }

/* ---------- Rodapé ---------- */

.lp-rodape {
    border-top: 1px solid var(--lp-border);
    padding: 2.25rem 0;
}

.lp-rodape-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.lp-rodape small { color: var(--lp-muted); font-size: .85rem; }

.lp-rodape-links { display: flex; gap: 1.25rem; }

.lp-rodape-links a {
    color: var(--lp-muted);
    text-decoration: none;
    font-size: .85rem;
    font-weight: 500;
}

.lp-rodape-links a:hover { color: var(--lp-blue); }

/* ---------- Movimento reduzido ---------- */

@media (prefers-reduced-motion: reduce) {
    .lp-hero-copy > *,
    .lp-janela,
    .lp-fone,
    .lp-balao,
    .lp-grafico span,
    .lp-reveal {
        animation: none !important;
        transition: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}
