/**
 * Landing, termos e privacidade — mesma linguagem visual do painel: fundo
 * claro, cinzas neutros, azul #0B57D0, botões em pílula, cartões com contorno
 * e sem sombra. A fonte (Google Sans Flex) vem do style.bundle.css.
 */

:root {
    --lp-bg: #FFFFFF;
    --lp-surface: #F8FAFD;
    --lp-surface-2: #F0F4F9;
    --lp-border: #E1E5EA;
    --lp-border-strong: #C4C7C5;
    --lp-text: #1F1F1F;
    --lp-text-2: #444746;
    --lp-text-muted: #5F6368;
    --lp-primary: #0B57D0;
    --lp-primary-hover: #0842A0;
    --lp-primary-soft: #E8F0FE;
    --lp-primary-tonal: #D3E3FD;
    --lp-green: #188038;
    --lp-green-soft: #E6F4EA;
    --lp-radius: 12px;
    --lp-radius-lg: 24px;
    --lp-shadow-float: 0 1px 3px rgba(60, 64, 67, .3), 0 4px 8px 3px rgba(60, 64, 67, .15);

    /* Âncoras (#planos, #faq…) não ficam escondidas sob o cabeçalho fixo */
    scroll-padding-top: 80px;
    scroll-behavior: smooth;
}

.landing-page {
    background: var(--lp-bg);
    color: var(--lp-text);
    font-size: 16px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

.landing-page h1,
.landing-page h2,
.landing-page h3 {
    color: var(--lp-text);
    font-weight: 400;
    letter-spacing: -0.01em;
}

/* h1 e h2 com mais peso: a 400 a página ficava "sem graça" de longe. */
.landing-page h1,
.landing-page h2 {
    font-weight: 500;
    letter-spacing: -0.03em;
}

.landing-page a {
    color: var(--lp-primary);
}

.landing-page section {
    padding: 96px 0;
}

.landing-page [x-cloak] {
    display: none !important;
}

/* ── Botões ─────────────────────────────────────────────────────────────── */
.lp-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 48px;
    padding: 0 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
    transition: background-color .15s, border-color .15s, color .15s, box-shadow .15s;
}

.lp-btn--primary {
    background: var(--lp-primary);
    color: #fff !important;
}

.lp-btn--primary:hover {
    background: var(--lp-primary-hover);
    box-shadow: 0 1px 2px rgba(60, 64, 67, .3), 0 1px 3px 1px rgba(60, 64, 67, .15);
}

.lp-btn--outline {
    background: transparent;
    border-color: var(--lp-border-strong);
    color: var(--lp-primary) !important;
}

.lp-btn--outline:hover {
    background: var(--lp-primary-soft);
    border-color: var(--lp-primary-tonal);
}

.lp-btn--text {
    background: transparent;
    color: var(--lp-primary) !important;
    padding: 0 16px;
}

.lp-btn--text:hover {
    background: var(--lp-primary-soft);
}

.lp-btn--sm {
    height: 40px;
    padding: 0 20px;
    font-size: 14px;
}

/* ── Cabeçalho ──────────────────────────────────────────────────────────── */
.lp-navbar {
    position: sticky;
    top: 0;
    z-index: 1030;
    background: rgba(255, 255, 255, .92);
    backdrop-filter: saturate(180%) blur(12px);
    border-bottom: 1px solid transparent;
    transition: border-color .2s;
}

.lp-navbar.scrolled {
    border-bottom-color: var(--lp-border);
}

.lp-navbar__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 64px;
}

.lp-navbar .nav-link {
    padding: 8px 14px;
    border-radius: 999px;
    color: var(--lp-text-2);
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    transition: background-color .15s, color .15s;
}

.lp-navbar .nav-link:hover {
    background: var(--lp-surface-2);
    color: var(--lp-text);
}

.lp-navbar__toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--lp-text-2);
}

.lp-navbar__toggle:hover {
    background: var(--lp-surface-2);
}

.lp-navbar__mobile {
    border-top: 1px solid var(--lp-border);
    padding: 12px 0 16px;
}

/* Marca (o mesmo partial do painel) */
.landing-page .app-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 22px;
    font-weight: 500;
    line-height: 1;
    color: var(--lp-text-2);
    text-decoration: none;
    white-space: nowrap;
}

.landing-page .app-brand img {
    width: 30px;
    height: 30px;
}

.landing-page .app-brand-accent {
    color: var(--lp-primary);
}

/* ── Hero ───────────────────────────────────────────────────────────────── */
.landing-page .lp-hero {
    padding: 72px 0 96px;
}

.lp-eyebrow {
    display: inline-block;
    margin-bottom: 20px;
    color: var(--lp-primary);
    font-size: 15px;
    font-weight: 500;
}

.lp-hero h1 {
    margin-bottom: 24px;
    font-size: clamp(40px, 6vw, 72px);
    line-height: 1.05;
    letter-spacing: -0.035em;
}

.lp-hero .lead {
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 36px;
    color: var(--lp-text-2);
    font-size: 19px;
    line-height: 1.6;
}

.lp-checks {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 24px;
    margin-top: 28px;
    padding: 0;
    list-style: none;
    color: var(--lp-text-muted);
    font-size: 14px;
}

.lp-checks li {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.lp-checks svg {
    color: var(--lp-green);
    flex-shrink: 0;
}

/* Demonstração da conversa */
.lp-demo {
    position: relative;
    max-width: 440px;
    margin: 0 auto;
    padding: 28px;
    border-radius: 32px;
    background: var(--lp-surface-2);
}

.lp-chat {
    overflow: hidden;
    border-radius: 20px;
    background: #fff;
    box-shadow: var(--lp-shadow-float);
}

.lp-chat__header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--lp-border);
}

.lp-chat__avatar {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--lp-primary-soft);
}

.lp-chat__avatar img {
    width: 26px;
    height: 26px;
}

.lp-chat__name {
    color: var(--lp-text);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.2;
}

.lp-chat__status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--lp-text-muted);
    font-size: 13px;
}

.lp-chat__status::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #1E8E3E;
}

.lp-chat__body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    height: 380px;
    padding: 18px;
    overflow: hidden;
    background: var(--lp-surface);
}

.lp-bubble {
    max-width: 82%;
    padding: 9px 14px;
    border-radius: 18px;
    font-size: 14.5px;
    line-height: 1.45;
    white-space: pre-line;
    animation: lp-bubble-in .25s ease both;
}

.lp-bubble--in {
    align-self: flex-start;
    background: #fff;
    border: 1px solid var(--lp-border);
    border-bottom-left-radius: 6px;
    color: var(--lp-text);
}

.lp-bubble--out {
    align-self: flex-end;
    background: var(--lp-primary-tonal);
    border-bottom-right-radius: 6px;
    color: #041E49;
}

.lp-typing {
    display: inline-flex;
    align-self: flex-end;
    gap: 4px;
    padding: 12px 14px;
    border-radius: 18px;
    background: var(--lp-primary-soft);
}

.lp-typing span {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--lp-primary);
    opacity: .4;
    animation: lp-typing 1.2s infinite;
}

.lp-typing span:nth-child(2) { animation-delay: .2s; }
.lp-typing span:nth-child(3) { animation-delay: .4s; }

@keyframes lp-bubble-in {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: none; }
}

@keyframes lp-typing {
    0%, 60%, 100% { opacity: .35; }
    30% { opacity: 1; }
}

/* ── Títulos de seção ───────────────────────────────────────────────────── */
.lp-section-head {
    max-width: 680px;
    margin: 0 auto 56px;
    text-align: center;
}

.lp-section-head h2 {
    margin-bottom: 12px;
    font-size: clamp(30px, 3.6vw, 44px);
    line-height: 1.2;
}

.lp-section-head p {
    margin: 0;
    color: var(--lp-text-2);
    font-size: 18px;
}

/* ── Como funciona ──────────────────────────────────────────────────────── */
.landing-page .lp-how {
    background: var(--lp-surface);
}

.lp-step {
    height: 100%;
    padding: 32px;
    border-radius: var(--lp-radius-lg);
    background: #fff;
}

.lp-step__number {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    margin-bottom: 20px;
    border-radius: 50%;
    background: var(--lp-primary-soft);
    color: var(--lp-primary);
    font-size: 17px;
    font-weight: 500;
}

.lp-step h3,
.lp-feature h3 {
    margin-bottom: 8px;
    font-size: 20px;
    font-weight: 500;
}

.lp-step p,
.lp-feature p {
    margin: 0;
    color: var(--lp-text-2);
    font-size: 16px;
}

/* ── Recursos ───────────────────────────────────────────────────────────── */
.lp-feature {
    padding: 8px 8px 8px 0;
}

.lp-feature__icon {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    margin-bottom: 20px;
    border-radius: 14px;
    background: var(--lp-primary-soft);
    color: var(--lp-primary);
}

/* ── Planos ─────────────────────────────────────────────────────────────── */
.landing-page .lp-pricing {
    background: var(--lp-surface);
}

.lp-plan {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 32px;
    border: 1px solid var(--lp-border);
    border-radius: var(--lp-radius-lg);
    background: #fff;
}

.lp-plan--popular {
    border: 2px solid var(--lp-primary);
    padding: 31px;
}

.lp-plan__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}

.lp-plan__name {
    margin: 0;
    font-size: 22px;
    font-weight: 500;
}

.lp-plan__badge {
    padding: 4px 12px;
    border-radius: 999px;
    background: var(--lp-primary-soft);
    color: var(--lp-primary);
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
}

.lp-plan__tagline {
    min-height: 4.8em;
    margin: 0 0 20px;
    color: var(--lp-text-muted);
    font-size: 15px;
}

.lp-plan__price {
    display: flex;
    align-items: baseline;
    gap: 4px;
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--lp-border);
    color: var(--lp-text);
}

.lp-plan__price .currency {
    font-size: 18px;
    color: var(--lp-text-2);
}

.lp-plan__price .amount {
    font-size: 44px;
    line-height: 1;
    letter-spacing: -0.02em;
}

.lp-plan__price .period {
    font-size: 15px;
    color: var(--lp-text-muted);
}

.lp-plan__features {
    flex: 1;
    margin: 0 0 28px;
    padding: 0;
    list-style: none;
}

.lp-plan__features li {
    position: relative;
    padding: 6px 0 6px 30px;
    color: var(--lp-text-2);
    font-size: 15px;
}

.lp-plan__features li::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 10px;
    width: 18px;
    height: 18px;
    background: var(--lp-green);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.lp-pricing__note {
    margin: 40px 0 0;
    text-align: center;
    color: var(--lp-text-muted);
    font-size: 14px;
}

/* ── Dúvidas ────────────────────────────────────────────────────────────── */
.lp-faq-list {
    max-width: 800px;
    margin: 0 auto;
    border-top: 1px solid var(--lp-border);
}

.lp-faq-item {
    border-bottom: 1px solid var(--lp-border);
}

.lp-faq-question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    padding: 22px 4px;
    border: 0;
    background: transparent;
    color: var(--lp-text);
    font-size: 18px;
    text-align: left;
    cursor: pointer;
}

.lp-faq-question svg {
    flex-shrink: 0;
    color: var(--lp-text-muted);
    transition: transform .2s;
}

.lp-faq-item.active .lp-faq-question svg {
    transform: rotate(180deg);
}

.lp-faq-answer {
    padding: 0 48px 24px 4px;
    color: var(--lp-text-2);
    font-size: 16px;
}

/* ── Chamada final ──────────────────────────────────────────────────────── */
.landing-page .lp-cta {
    padding: 0 0 96px;
}

.lp-cta__box {
    padding: 72px 32px;
    border-radius: 32px;
    background: var(--lp-primary-soft);
    text-align: center;
}

.lp-cta__box h2 {
    max-width: 720px;
    margin: 0 auto 12px;
    font-size: clamp(28px, 3.4vw, 40px);
    line-height: 1.2;
}

.lp-cta__box p {
    margin: 0 auto 32px;
    color: var(--lp-text-2);
    font-size: 18px;
}

/* ── Rodapé ─────────────────────────────────────────────────────────────── */
.lp-footer {
    padding: 32px 0;
    border-top: 1px solid var(--lp-border);
    color: var(--lp-text-muted);
    font-size: 14px;
}

.lp-footer a {
    color: var(--lp-text-muted);
    text-decoration: none;
}

.lp-footer a:hover {
    color: var(--lp-text);
}

.lp-footer .app-brand {
    font-size: 18px;
}

.lp-footer .app-brand img {
    width: 24px;
    height: 24px;
}

/* ── Termos e privacidade ───────────────────────────────────────────────── */
.landing-page .lp-legal {
    padding: 56px 0 96px;
}

.lp-legal__header {
    max-width: 760px;
    margin: 0 auto 40px;
    padding-bottom: 32px;
    border-bottom: 1px solid var(--lp-border);
}

.lp-legal__header .section-badge {
    margin-bottom: 12px;
    color: var(--lp-primary);
    font-size: 15px;
    font-weight: 500;
}

.lp-legal__header h1 {
    margin-bottom: 8px;
    font-size: clamp(32px, 4vw, 44px);
}

.lp-legal__meta {
    margin: 0;
    color: var(--lp-text-muted);
    font-size: 14px;
}

.lp-legal__content {
    max-width: 760px;
    margin: 0 auto;
    color: var(--lp-text-2);
    font-size: 16px;
    line-height: 1.75;
}

.lp-legal__content .lead {
    margin-bottom: 40px;
    padding: 20px 24px;
    border-radius: var(--lp-radius);
    background: var(--lp-surface-2);
    color: var(--lp-text);
    font-size: 16px;
}

.lp-legal__content h2 {
    margin: 48px 0 12px;
    font-size: 22px;
    font-weight: 500;
}

.lp-legal__content h2:first-child {
    margin-top: 0;
}

.lp-legal__content p,
.lp-legal__content ol,
.lp-legal__content ul {
    margin-bottom: 16px;
}

.lp-legal__content li {
    margin-bottom: 8px;
}

.lp-legal__content strong {
    color: var(--lp-text);
    font-weight: 500;
}

.lp-legal__content a {
    text-decoration: underline;
    text-underline-offset: 2px;
}

.lp-legal__footer-note {
    margin-top: 56px;
    padding-top: 24px;
    border-top: 1px solid var(--lp-border);
    color: var(--lp-text-muted);
    font-size: 14px;
}

/* ── Celular ────────────────────────────────────────────────────────────── */
@media (max-width: 991px) {
    .landing-page section {
        padding: 72px 0;
    }

    .landing-page .lp-hero {
        padding: 40px 0 72px;
    }

    .lp-section-head {
        margin-bottom: 40px;
    }
}

@media (max-width: 767px) {
    .lp-plan__tagline {
        min-height: 0;
    }
}

@media (max-width: 575px) {
    .landing-page section {
        padding: 56px 0;
    }

    .lp-hero .lead {
        font-size: 17px;
    }

    .lp-demo {
        padding: 16px;
        border-radius: 24px;
    }

    .lp-chat__body {
        height: 340px;
    }

    .lp-step,
    .lp-plan {
        padding: 24px;
    }

    .lp-plan--popular {
        padding: 23px;
    }

    .lp-cta__box {
        padding: 48px 20px;
        border-radius: 24px;
    }

    .lp-faq-question {
        font-size: 16px;
    }

    .lp-faq-answer {
        padding-right: 4px;
    }
}



/* ══════════════════════════════════════════════════════════════════════════
   Hero centralizado + janela do produto
   ══════════════════════════════════════════════════════════════════════════ */
/* O body é flex em coluna: seção com overflow cortado pode encolher até
   sumir. `clip` corta a faixa de fundo sem virar área de rolagem. */
.landing-page > section,
.landing-page > footer { flex-shrink: 0; }
.landing-page .lp-hero { padding: 72px 0 0; overflow-x: clip; }
.lp-hero__head { max-width: 900px; margin: 0 auto; text-align: center; }
.lp-hero h1, .lp-section-head h2, .lp-cta__box h2 { text-wrap: balance; }
.lp-hl { color: var(--lp-primary); }
.lp-hero .lp-btn--primary svg { margin-right: -4px; }

.lp-product { position: relative; max-width: 1080px; margin: 64px auto 0; }
.lp-product::before {
    /* Faixa de fundo atrás da metade de baixo da janela, como uma "mesa". */
    content: ""; position: absolute; left: -100vw; right: -100vw; top: 40%; bottom: 0;
    background: var(--lp-surface); z-index: -1;
}
.lp-product__chips {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 8px;
    margin: 0 0 -18px; padding: 0; list-style: none; position: relative; z-index: 2;
}
.lp-product__chips li {
    display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px;
    border: 1px solid var(--lp-border); border-radius: 999px; background: #fff;
    color: var(--lp-text); font-size: 14px; font-weight: 500;
}
.lp-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--lp-primary); }
.lp-dot--0 { background: #1E8E3E; }
.lp-dot--1 { background: var(--lp-primary); }
.lp-dot--2 { background: #E37400; }
.lp-dot--3 { background: #1A73E8; }
.lp-dot--4 { background: #8430CE; }

.lp-window {
    overflow: hidden; border: 1px solid var(--lp-border); border-radius: 20px;
    background: #fff; box-shadow: 0 1px 2px rgba(60, 64, 67, .08), 0 24px 48px -12px rgba(60, 64, 67, .18);
}
.lp-window__bar {
    display: flex; align-items: center; gap: 16px; padding: 30px 18px 12px;
    border-bottom: 1px solid var(--lp-border); background: var(--lp-surface);
}
.lp-window__dots { display: inline-flex; gap: 6px; }
.lp-window__dots i { width: 10px; height: 10px; border-radius: 50%; background: var(--lp-border-strong); }
.lp-window__title { color: var(--lp-text-muted); font-size: 13px; }
.lp-window__body { display: grid; grid-template-columns: 1.15fr 1fr; min-height: 440px; }

.lp-window .lp-chat { border-radius: 0; box-shadow: none; border-right: 1px solid var(--lp-border); display: flex; flex-direction: column; }
.lp-window .lp-chat__body { flex: 1; height: 400px; }
.lp-chat__avatar--person { background: #FCE8E6; color: #A50E0E; font-size: 14px; font-weight: 500; }
.lp-chat__ai {
    display: inline-flex; align-items: center; gap: 5px; margin-left: auto; padding: 4px 10px;
    border-radius: 999px; background: var(--lp-primary-soft); color: var(--lp-primary); font-size: 12.5px; font-weight: 500;
}

.lp-agenda { display: flex; flex-direction: column; padding: 18px 20px; background: #fff; }
.lp-agenda__head { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 14px; color: var(--lp-text-muted); }
.lp-agenda__title { color: var(--lp-text); font-size: 15px; font-weight: 500; }
.lp-agenda__pro { display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; color: var(--lp-text-muted); font-size: 13px; }
.lp-agenda__pro-avatar { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: var(--lp-primary-tonal); color: #041E49; font-size: 11px; font-weight: 600; }
.lp-agenda__list { display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 0; list-style: none; }
.lp-slot { display: grid; grid-template-columns: 48px 1fr; align-items: center; gap: 10px; }
.lp-slot__time { color: var(--lp-text-muted); font-size: 12.5px; font-variant-numeric: tabular-nums; }
.lp-slot__card { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 42px; padding: 6px 12px; border-radius: 10px; transition: background-color .3s, border-color .3s; }
.lp-slot--busy .lp-slot__card { background: var(--lp-surface-2); border-left: 3px solid var(--lp-border-strong); }
.lp-slot--free .lp-slot__card { border: 1px dashed var(--lp-border); }
.lp-slot__free { color: #9AA0A6; font-size: 12.5px; }
.lp-slot__info { display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.lp-slot__info strong { color: var(--lp-text); font-size: 13px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lp-slot__info small { color: var(--lp-primary); font-size: 11.5px; }
.lp-slot--new .lp-slot__card { background: var(--lp-primary-soft); border-left: 3px solid var(--lp-primary); animation: lp-slot-in .45s ease both; }
.lp-slot__badge { padding: 2px 8px; border-radius: 999px; background: var(--lp-primary); color: #fff; font-size: 11px; font-weight: 500; }
@keyframes lp-slot-in { from { transform: scale(.96); opacity: .4; } to { transform: none; opacity: 1; } }
.lp-agenda__toast {
    display: flex; align-items: center; gap: 8px; margin-top: auto; padding: 10px 12px; border-radius: 10px;
    background: var(--lp-green-soft); color: #0D652D; font-size: 13px;
    opacity: 0; transform: translateY(6px); transition: opacity .35s, transform .35s;
}
.lp-agenda__toast.is-on { opacity: 1; transform: none; }

/* ── Faixa de tipos de negócio ──────────────────────────────────────────── */
.landing-page .lp-biz { padding: 48px 0 56px; background: var(--lp-surface); }
.lp-biz__title { margin-bottom: 20px; padding: 0 16px; color: var(--lp-text-muted); font-size: 13px; font-weight: 500; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.lp-marquee { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.lp-marquee__track { display: flex; width: max-content; animation: lp-marquee 40s linear infinite; }
.lp-marquee:hover .lp-marquee__track { animation-play-state: paused; }
.lp-marquee ul { display: flex; gap: 12px; margin: 0; padding: 0 6px; list-style: none; }
.lp-marquee li { padding: 10px 20px; border: 1px solid var(--lp-border); border-radius: 999px; background: #fff; color: var(--lp-text-2); font-size: 16px; white-space: nowrap; }
@keyframes lp-marquee { to { transform: translateX(-50%); } }

/* ── Recursos com ilustração ────────────────────────────────────────────── */
.lp-fcard { height: 100%; overflow: hidden; border: 1px solid var(--lp-border); border-radius: var(--lp-radius-lg); background: #fff; transition: border-color .2s, transform .2s; }
.lp-fcard:hover { border-color: var(--lp-border-strong); transform: translateY(-2px); }
.lp-fcard__art { display: grid; place-items: center; height: 200px; margin: 8px 8px 0; padding: 20px; border-radius: 18px; background: var(--lp-surface-2); overflow: hidden; }
.lp-fcard__body { padding: 22px 26px 28px; }
.lp-fcard h3 { margin-bottom: 8px; font-size: 20px; font-weight: 500; }
.lp-fcard p { margin: 0; color: var(--lp-text-2); font-size: 15.5px; }

.lp-art__phone { display: flex; flex-direction: column; gap: 8px; width: 100%; max-width: 280px; }
.lp-art__clock { align-self: center; padding: 2px 10px; border-radius: 999px; background: #fff; color: var(--lp-text-muted); font-size: 11.5px; }
.lp-art__b { max-width: 85%; padding: 8px 12px; border-radius: 14px; font-size: 13px; line-height: 1.35; }
.lp-art__b--in { align-self: flex-start; background: #fff; border-bottom-left-radius: 4px; }
.lp-art__b--out { align-self: flex-end; background: var(--lp-primary-tonal); color: #041E49; border-bottom-right-radius: 4px; }

.lp-art__week { display: flex; gap: 8px; }
.lp-art__col { display: flex; flex-direction: column; gap: 6px; align-items: center; }
.lp-art__day { color: var(--lp-text-muted); font-size: 12px; font-weight: 500; }
.lp-art__cell { display: grid; place-items: center; width: 40px; height: 26px; border-radius: 6px; background: #fff; border: 1px solid var(--lp-border); }
.lp-art__cell.is-on { background: var(--lp-primary-tonal); border-color: transparent; }
.lp-art__cell.is-new { background: var(--lp-primary); border-color: transparent; color: #fff; box-shadow: 0 0 0 4px rgba(11, 87, 208, .15); }

.lp-art__dash { width: 100%; max-width: 290px; }
.lp-art__kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin-bottom: 12px; }
.lp-art__kpis span { display: flex; flex-direction: column; padding: 6px 10px; border-radius: 10px; background: #fff; }
.lp-art__kpis small { color: var(--lp-text-muted); font-size: 11px; }
.lp-art__kpis b { color: var(--lp-text); font-size: 17px; font-weight: 500; }
.lp-art__bars { display: flex; align-items: flex-end; gap: 8px; height: 80px; padding: 0 4px; }
.lp-art__bars i { flex: 1; border-radius: 4px 4px 0 0; background: var(--lp-primary); opacity: .85; }
.lp-art__bars i:nth-child(odd) { opacity: .55; }

.lp-art__handoff { display: flex; flex-direction: column; align-items: center; gap: 14px; }
.lp-art__switch { display: inline-flex; padding: 4px; border-radius: 999px; background: #fff; border: 1px solid var(--lp-border); }
.lp-art__switch span { padding: 6px 18px; border-radius: 999px; color: var(--lp-text-muted); font-size: 13.5px; font-weight: 500; }
.lp-art__switch .is-on { background: var(--lp-primary); color: #fff; }
.lp-art__note { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px 6px 6px; border-radius: 999px; background: #fff; color: var(--lp-text-2); font-size: 12.5px; }
.lp-art__av { display: grid; place-items: center; flex: 0 0 auto; width: 26px; height: 26px; border-radius: 50%; background: var(--lp-green-soft); color: #0D652D; font-size: 12px; font-weight: 600; }
.lp-art__av--0 { background: var(--lp-primary-tonal); color: #041E49; }
.lp-art__av--1 { background: #FCE8E6; color: #A50E0E; }
.lp-art__av--2 { background: #FEF7E0; color: #8C4A00; }

.lp-art__notif { width: 100%; max-width: 280px; padding: 12px 14px; border-radius: 14px; background: #fff; box-shadow: 0 1px 2px rgba(60, 64, 67, .12), 0 4px 12px rgba(60, 64, 67, .08); }
.lp-art__notif-top { display: flex; align-items: center; gap: 6px; margin-bottom: 4px; color: var(--lp-primary); font-size: 12px; font-weight: 500; }
.lp-art__notif-text { color: var(--lp-text); font-size: 13.5px; line-height: 1.4; }
.lp-art__notif-actions { display: flex; gap: 6px; margin-top: 10px; }
.lp-art__notif-actions span { padding: 4px 12px; border-radius: 999px; border: 1px solid var(--lp-border); color: var(--lp-text-2); font-size: 12px; }
.lp-art__notif-actions .is-primary { border-color: transparent; background: var(--lp-primary); color: #fff; }

.lp-art__team { display: flex; flex-direction: column; gap: 8px; width: 100%; max-width: 240px; }
.lp-art__member { display: flex; align-items: center; gap: 10px; padding: 7px 10px; border-radius: 12px; background: #fff; }
.lp-art__member span:last-child { display: flex; flex-direction: column; line-height: 1.25; }
.lp-art__member b { color: var(--lp-text); font-size: 13px; font-weight: 500; }
.lp-art__member small { color: var(--lp-text-muted); font-size: 11.5px; }

/* ── Para o seu negócio ─────────────────────────────────────────────────── */
.landing-page .lp-sectors { background: var(--lp-surface); }
.lp-sectors .lp-eyebrow { margin-bottom: 12px; }
.lp-sectors__box { max-width: 1080px; margin: 0 auto; padding: 12px 12px 40px; border-radius: 28px; background: #fff; border: 1px solid var(--lp-border); }
.lp-tabs { display: flex; gap: 4px; margin-bottom: 36px; padding: 4px; border-radius: 999px; background: var(--lp-surface-2); overflow-x: auto; scrollbar-width: none; }
.lp-tab { flex: 1 0 auto; padding: 10px 18px; border: 0; border-radius: 999px; background: transparent; color: var(--lp-text-2); font-size: 15px; font-weight: 500; white-space: nowrap; transition: background-color .15s, color .15s; }
.lp-tab:hover { color: var(--lp-text); }
.lp-tab.is-active { background: #fff; color: var(--lp-primary); box-shadow: 0 1px 2px rgba(60, 64, 67, .15); }
.lp-sector { padding: 0 28px; animation: lp-bubble-in .3s ease both; }
.lp-sector h3 { margin-bottom: 22px; font-size: clamp(22px, 2.4vw, 28px); font-weight: 500; line-height: 1.25; letter-spacing: -0.02em; }
.lp-sector__checks { display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 0; list-style: none; }
.lp-sector__checks li { display: flex; align-items: flex-start; gap: 12px; color: var(--lp-text-2); font-size: 16px; }
.lp-sector__checks li > span { display: grid; place-items: center; flex: 0 0 24px; height: 24px; border-radius: 50%; background: var(--lp-green-soft); color: var(--lp-green); }
.lp-sector__chat { display: flex; flex-direction: column; gap: 10px; padding: 24px; border-radius: 20px; background: var(--lp-surface); }

/* ── Rodapé ─────────────────────────────────────────────────────────────── */
.landing-page .lp-footer { padding: 56px 0 28px; }
.lp-footer__tagline { max-width: 360px; margin: 14px 0 0; color: var(--lp-text-muted); font-size: 15px; line-height: 1.6; }
.lp-footer__head { margin-bottom: 12px; color: var(--lp-text); font-size: 14px; font-weight: 500; }
.lp-footer__top a { display: block; padding: 4px 0; font-size: 14.5px; }
.lp-footer__bottom { margin-top: 48px; padding-top: 22px; border-top: 1px solid var(--lp-border); font-size: 13.5px; }

/* ── Entrada ao rolar ───────────────────────────────────────────────────── */
.lp-js .lp-reveal { opacity: 0; transform: translateY(16px); transition: opacity .6s ease, transform .6s ease; }
.lp-js .lp-reveal.is-in { opacity: 1; transform: none; }

@media (max-width: 991px) {
    .landing-page .lp-hero { padding-top: 40px; }
    .lp-window__body { grid-template-columns: 1fr; }
    .lp-agenda { display: none; }
    .lp-window .lp-chat { border-right: 0; }
    .lp-sector { padding: 0 12px; }
}

@media (max-width: 575px) {
    .lp-product { margin-top: 40px; }
    .lp-product__chips li:nth-child(n+4) { display: none; }
    .lp-window .lp-chat__body { height: 360px; }
    .lp-chat__ai { display: none; }
    .lp-sectors__box { padding: 8px 8px 28px; border-radius: 22px; }
    .lp-tabs { margin-bottom: 24px; }
    .lp-sector__chat { padding: 16px; }
}

@media (prefers-reduced-motion: reduce) {
    .lp-bubble,
    .lp-typing span,
    .lp-slot--new .lp-slot__card,
    .lp-sector { animation: none; }
    .lp-marquee__track { animation: none; flex-wrap: wrap; width: auto; justify-content: center; }
    .lp-marquee ul[aria-hidden] { display: none; }
    .lp-marquee ul { flex-wrap: wrap; justify-content: center; }
    .lp-marquee { -webkit-mask-image: none; mask-image: none; }
}

/* ══════════════════════════════════════════════════════════════════════════
   Animações (anime.js) e seções novas. O estado sem JS é o final: o script
   só esconde o que vai animar. Mesma linguagem do painel: claro, cinzas,
   azul, cores do Google só em pontos pequenos — sem degradê.
   ══════════════════════════════════════════════════════════════════════════ */

/* Título do hero palavra a palavra */
.lp-w { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .08em; margin-bottom: -.08em; }
.lp-w > span { display: inline-block; will-change: transform; }

/* Janela do produto em 3D (o JS controla o rotateX ao rolar) */
.lp-window { transform-origin: 50% 0; will-change: transform; }

/* Avisos flutuando em volta da janela */
.lp-floats { position: absolute; inset: 0; pointer-events: none; z-index: 3; }
.lp-float {
    position: absolute; display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px 8px 8px;
    border: 1px solid var(--lp-border); border-radius: 999px; background: #fff; color: var(--lp-text);
    font-size: 13.5px; font-weight: 500; white-space: nowrap; box-shadow: var(--lp-shadow-float);
}
.lp-float i { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; }
.lp-float--0 { top: 34%; left: -150px; }
.lp-float--0 i { background: #F3E8FD; color: #8430CE; }
.lp-float--1 { top: 58%; right: -170px; }
.lp-float--1 i { background: var(--lp-primary-soft); color: var(--lp-primary); }
.lp-float--2 { bottom: 10%; left: -190px; }
.lp-float--2 i { background: #FEF7E0; color: #B06000; }
.lp-float--3 { top: 30%; right: -160px; }
.lp-float--3 i { background: var(--lp-green-soft); color: var(--lp-green); }
.lp-anim .lp-float { opacity: 0; }

/* ── Um dia com a IA ───────────────────────────────────────────────────── */
.landing-page .lp-day { background: var(--lp-surface); }
.lp-day .lp-eyebrow, .lp-int .lp-eyebrow { margin-bottom: 12px; }
.lp-day__grid { display: grid; grid-template-columns: 340px 1fr; gap: 64px; max-width: 1040px; margin: 0 auto; }
.lp-day__clock-wrap { position: relative; }
.lp-clock { position: sticky; top: 112px; display: flex; flex-direction: column; align-items: center; gap: 18px; padding: 32px 24px; border: 1px solid var(--lp-border); border-radius: 28px; background: #fff; }
.lp-clock__face { width: 220px; height: 220px; }
.lp-clock__rim { fill: var(--lp-surface); stroke: var(--lp-border); stroke-width: 2; }
.lp-clock__tick { stroke: var(--lp-border-strong); stroke-width: 2; stroke-linecap: round; }
.lp-clock__tick.is-major { stroke: var(--lp-text-muted); stroke-width: 3; }
.lp-clock__progress { fill: none; stroke: var(--lp-primary-tonal); stroke-width: 6; stroke-dasharray: 100; stroke-dashoffset: 100; stroke-linecap: round; transform: rotate(-90deg); transform-origin: 100px 100px; }
.lp-clock__hour, .lp-clock__min { stroke-linecap: round; transform-box: view-box; transform-origin: 100px 100px; }
.lp-clock__hour { stroke: var(--lp-text); stroke-width: 7; }
.lp-clock__min { stroke: var(--lp-primary); stroke-width: 4; }
.lp-clock__pin { fill: var(--lp-text); stroke: #fff; stroke-width: 2; }
.lp-clock__digital { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.lp-clock__digital b { color: var(--lp-text); font-size: 44px; font-weight: 500; line-height: 1; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.lp-clock__digital span { display: inline-block; padding: 4px 12px; border-radius: 999px; background: var(--lp-primary-soft); color: var(--lp-primary); font-size: 13px; font-weight: 500; }

.lp-day__list { position: relative; margin: 0; padding: 0 0 0 36px; list-style: none; }
.lp-day__list::before { content: ""; position: absolute; left: 11px; top: 8px; bottom: 8px; width: 2px; background: var(--lp-border); }
.lp-moment { position: relative; padding: 0 0 28px; }
.lp-moment:last-child { padding-bottom: 0; }
.lp-moment__dot { position: absolute; left: -31px; top: 24px; width: 14px; height: 14px; border-radius: 50%; background: #fff; border: 2px solid var(--lp-border-strong); transition: background-color .3s, border-color .3s, box-shadow .3s; }
.lp-moment__card { padding: 22px 24px; border: 1px solid var(--lp-border); border-radius: 20px; background: #fff; transition: border-color .3s, box-shadow .3s, opacity .3s, transform .3s; }
.lp-moment__meta { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.lp-moment__meta time { color: var(--lp-text-muted); font-size: 14px; font-variant-numeric: tabular-nums; }
.lp-moment__tag { padding: 2px 10px; border-radius: 999px; font-size: 12.5px; font-weight: 500; }
.lp-moment__tag--0 { background: var(--lp-primary-soft); color: var(--lp-primary); }
.lp-moment__tag--1 { background: var(--lp-green-soft); color: #0D652D; }
.lp-moment__tag--2 { background: #FEF7E0; color: #8C4A00; }
.lp-moment__tag--3 { background: #F3E8FD; color: #681DA8; }
.lp-moment__tag--4 { background: #FCE8E6; color: #A50E0E; }
.lp-moment h3 { margin-bottom: 6px; font-size: 19px; font-weight: 500; }
.lp-moment p { margin: 0; color: var(--lp-text-2); font-size: 15.5px; }
/* Com animação, o momento do relógio fica em destaque e os outros recuam. */
.lp-anim .lp-moment .lp-moment__card { opacity: .55; }
.lp-anim .lp-moment.is-active .lp-moment__card { opacity: 1; border-color: var(--lp-primary-tonal); box-shadow: var(--lp-shadow-float); transform: translateX(4px); }
.lp-anim .lp-moment.is-active .lp-moment__dot { background: var(--lp-primary); border-color: var(--lp-primary); box-shadow: 0 0 0 5px var(--lp-primary-soft); }

/* ── Destaques ─────────────────────────────────────────────────────────── */
.lp-spots .lp-spot { display: grid; grid-template-columns: 1fr 1.05fr; align-items: center; gap: 72px; max-width: 1080px; margin: 0 auto; }
.lp-spots .lp-spot + .lp-spot { margin-top: 120px; }
.lp-spot--flip .lp-spot__text { order: 2; }
.lp-spot__text .lp-eyebrow { margin-bottom: 12px; }
.lp-spot__text h2 { margin-bottom: 16px; font-size: clamp(28px, 3.2vw, 40px); line-height: 1.15; text-wrap: balance; }
.lp-spot__text > p { margin-bottom: 24px; color: var(--lp-text-2); font-size: 17px; }
.lp-spot__stage { padding: 28px; border-radius: 28px; background: var(--lp-surface-2); }
.lp-scene { position: relative; display: flex; flex-direction: column; gap: 12px; min-height: 320px; justify-content: center; }
.lp-scene__tag { align-self: flex-end; display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; border-radius: 999px; background: #fff; color: var(--lp-primary); font-size: 12.5px; font-weight: 500; }

/* Áudio */
.lp-audio { display: inline-flex; align-items: center; gap: 10px; max-width: 86%; padding: 10px 14px 10px 10px; border-radius: 18px; }
.lp-audio--in { align-self: flex-start; background: #fff; border: 1px solid var(--lp-border); border-bottom-left-radius: 6px; }
.lp-audio--out { align-self: flex-end; background: var(--lp-primary-tonal); border-bottom-right-radius: 6px; }
.lp-audio__play { display: grid; place-items: center; flex: 0 0 32px; height: 32px; border-radius: 50%; background: var(--lp-primary); color: #fff; }
.lp-audio--in .lp-audio__play { background: var(--lp-text-2); }
.lp-audio__bars { display: flex; align-items: center; gap: 3px; height: 28px; }
.lp-audio__bars i { display: block; width: 3px; height: var(--h); border-radius: 2px; background: currentColor; color: var(--lp-text-muted); transform-origin: 50% 50%; }
.lp-audio--out .lp-audio__bars i { color: var(--lp-primary); }
.lp-audio small { color: var(--lp-text-muted); font-size: 12px; font-variant-numeric: tabular-nums; }
.lp-transcript { align-self: flex-start; max-width: 86%; padding: 12px 14px; border-radius: 14px; background: #fff; border: 1px dashed var(--lp-border-strong); color: var(--lp-text-2); font-size: 14px; line-height: 1.5; }
.lp-transcript__label { display: flex; align-items: center; gap: 4px; margin-bottom: 4px; color: #8430CE; font-size: 12px; font-weight: 500; }
.lp-transcript [data-s="text"] { display: block; min-height: 3em; }

/* Lista de espera */
.lp-wait__slot { display: grid; grid-template-columns: 48px 1fr; align-items: center; gap: 10px; }
.lp-wait__card { grid-area: 1 / 2; display: flex; flex-direction: column; justify-content: center; min-height: 54px; padding: 8px 14px; border-radius: 12px; line-height: 1.3; }
.lp-wait__card strong { font-size: 14px; font-weight: 500; color: var(--lp-text); }
.lp-wait__card--old { background: #fff; border-left: 3px solid var(--lp-border-strong); }
.lp-wait__card--old em { display: none; font-style: normal; font-size: 12px; color: #A50E0E; }
.lp-wait__card--new { background: var(--lp-primary-soft); border-left: 3px solid var(--lp-primary); }
.lp-wait__card--new small { color: var(--lp-primary); font-size: 12px; }
.lp-scene--wait.is-cancelled .lp-wait__card--old { background: #FCE8E6; border-left-color: #D93025; }
.lp-scene--wait.is-cancelled .lp-wait__card--old strong { text-decoration: line-through; color: var(--lp-text-muted); }
.lp-scene--wait.is-cancelled .lp-wait__card--old em { display: block; }
/* Sem animação, a cena mostra o fim: a vaga já preenchida. */
html:not(.lp-anim) .lp-wait__card--old { visibility: hidden; }
.lp-wait__row { display: grid; grid-template-columns: .8fr 1fr; gap: 12px; align-items: start; }
.lp-wait__queue { padding: 12px; border-radius: 16px; background: #fff; }
.lp-wait__queue-title { margin-bottom: 8px; color: var(--lp-text-muted); font-size: 12px; font-weight: 500; }
.lp-wait__queue ol { display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 0; list-style: none; }
.lp-wait__queue li { display: flex; align-items: center; gap: 8px; padding: 6px 8px; border-radius: 10px; color: var(--lp-text); font-size: 13.5px; transition: background-color .3s; }
.lp-wait__queue li b { margin-left: auto; color: var(--lp-text-muted); font-size: 12px; font-weight: 500; }
.lp-wait__queue li.is-next { background: var(--lp-primary-soft); }
.lp-wait__offer { padding: 14px; border-radius: 16px 16px 16px 6px; background: #fff; border: 1px solid var(--lp-border); }
.lp-wait__offer p { margin: 0 0 10px; color: var(--lp-text); font-size: 13.5px; line-height: 1.45; }
.lp-poll { display: flex; align-items: center; gap: 8px; margin-top: 6px; padding: 7px 10px; border-radius: 10px; border: 1px solid var(--lp-border); color: var(--lp-text-2); font-size: 13px; }
.lp-poll i { flex: 0 0 14px; height: 14px; border-radius: 50%; border: 2px solid var(--lp-border-strong); transition: background-color .2s, border-color .2s; }
.lp-poll.is-picked { border-color: var(--lp-green); color: var(--lp-text); }
.lp-poll.is-picked i { background: var(--lp-green); border-color: var(--lp-green); box-shadow: inset 0 0 0 2px #fff; }
.lp-wait__timer { display: flex; align-items: center; gap: 8px; margin-top: 10px; color: var(--lp-text-muted); font-size: 12px; }
.lp-wait__timer svg { width: 20px; height: 20px; transform: rotate(-90deg); }
.lp-wait__track { fill: none; stroke: var(--lp-surface-2); stroke-width: 4; }
.lp-wait__ring { fill: none; stroke: #E37400; stroke-width: 4; stroke-dasharray: 100; stroke-linecap: round; }

/* Fichas */
.lp-people__said { align-self: flex-start; }
.lp-person { padding: 18px; border-radius: 20px; background: #fff; box-shadow: 0 1px 2px rgba(60, 64, 67, .1), 0 8px 24px -8px rgba(60, 64, 67, .18); }
.lp-person__head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.lp-person__head strong { display: block; color: var(--lp-text); font-size: 16px; font-weight: 500; }
.lp-person__head small { display: inline-flex; align-items: center; gap: 4px; color: #188038; font-size: 12px; }
.lp-person__photo { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: #FEF7E0; color: #8C4A00; font-weight: 600; box-shadow: 0 0 0 3px #fff, 0 0 0 4px var(--lp-border); }
.lp-person__notes { display: flex; flex-direction: column; gap: 8px; margin: 0 0 14px; padding: 0; list-style: none; }
.lp-note-wrap { overflow: hidden; }
.lp-note { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; padding: 10px 12px; border-radius: 12px; background: var(--lp-surface); color: var(--lp-text); font-size: 13.5px; }
.lp-note__type { color: var(--lp-text-muted); font-size: 11.5px; font-weight: 500; text-transform: uppercase; letter-spacing: .04em; }
.lp-note--ai { background: var(--lp-primary-soft); }
.lp-note--ai em { display: inline-flex; align-items: center; gap: 4px; margin-left: auto; color: var(--lp-primary); font-size: 11.5px; font-style: normal; font-weight: 500; }
.lp-note-wrap.is-new .lp-note--ai { animation: lp-note-glow 1.6s ease; }
@keyframes lp-note-glow { 0% { box-shadow: 0 0 0 0 rgba(11, 87, 208, .35); } 100% { box-shadow: 0 0 0 10px rgba(11, 87, 208, 0); } }
.lp-person__toggle { display: flex; align-items: center; gap: 10px; padding-top: 12px; border-top: 1px solid var(--lp-border); color: var(--lp-text-2); font-size: 13px; }
.lp-switch { position: relative; flex: 0 0 34px; height: 20px; border-radius: 999px; background: var(--lp-border-strong); }
.lp-switch i { position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; border-radius: 50%; background: #fff; transition: transform .2s; }
.lp-switch.is-on { background: var(--lp-primary); }
.lp-switch.is-on i { transform: translateX(14px); }

/* Conhecimento e planilhas */
.lp-sheet { overflow: hidden; border-radius: 16px; background: #fff; border: 1px solid var(--lp-border); }
.lp-sheet__bar { display: flex; align-items: center; gap: 8px; padding: 10px 14px; border-bottom: 1px solid var(--lp-border); color: var(--lp-text); font-size: 13.5px; font-weight: 500; }
.lp-sheet__icon { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 6px; background: var(--lp-green-soft); color: var(--lp-green); }
.lp-sheet table { width: 100%; border-collapse: collapse; font-size: 13px; }
.lp-sheet th { padding: 7px 14px; background: var(--lp-surface); color: var(--lp-text-muted); font-size: 11.5px; font-weight: 500; text-align: left; }
.lp-sheet td { padding: 8px 14px; border-top: 1px solid var(--lp-border); color: var(--lp-text-2); transition: background-color .3s; }
.lp-sheet tr.is-hit td { background: var(--lp-green-soft); color: var(--lp-text); }
.lp-sheet tr.is-hit td:first-child { box-shadow: inset 3px 0 0 var(--lp-green); }
.lp-kb__chat { display: flex; flex-direction: column; gap: 8px; }
.lp-spot__stage .lp-bubble { animation: none; }

/* ── Mais recursos ─────────────────────────────────────────────────────── */
.lp-more__title { margin: 72px 0 28px; font-size: 22px; font-weight: 500; text-align: center; }
.lp-more { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; border: 1px solid var(--lp-border); border-radius: var(--lp-radius-lg); overflow: hidden; }
.lp-more__item { display: flex; gap: 16px; padding: 26px; border-right: 1px solid var(--lp-border); border-bottom: 1px solid var(--lp-border); background: #fff; }
.lp-more__item:nth-child(3n) { border-right: 0; }
.lp-more__item:nth-last-child(-n+3) { border-bottom: 0; }
.lp-more__item h4 { margin: 2px 0 4px; color: var(--lp-text); font-size: 16px; font-weight: 500; }
.lp-more__item p { margin: 0; color: var(--lp-text-2); font-size: 14.5px; }
.lp-more__icon { display: grid; place-items: center; flex: 0 0 40px; height: 40px; border-radius: 12px; }
.lp-more__icon--0 { background: #F3E8FD; color: #8430CE; }
.lp-more__icon--1 { background: var(--lp-primary-soft); color: var(--lp-primary); }
.lp-more__icon--2 { background: #FEF7E0; color: #B06000; }
.lp-more__icon--3 { background: var(--lp-green-soft); color: var(--lp-green); }
.lp-more__icon--4 { background: #FCE8E6; color: #C5221F; }
.lp-more__icon--5 { background: var(--lp-surface-2); color: var(--lp-text-2); }

/* ── Integrações ───────────────────────────────────────────────────────── */
.landing-page .lp-int { background: var(--lp-surface); }
.lp-int__map { position: relative; display: grid; grid-template-columns: 1fr 200px 1fr; grid-template-rows: auto auto; gap: 28px 80px; max-width: 1040px; margin: 0 auto; }
.lp-int__lines { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.lp-int__path { fill: none; stroke: var(--lp-border-strong); stroke-width: 2; stroke-dasharray: 0; }
.lp-int__pulse { fill: var(--lp-primary); }
.lp-int__hub { grid-column: 2; grid-row: 1 / 3; align-self: center; position: relative; display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 26px 18px; border-radius: 28px; background: #fff; border: 1px solid var(--lp-border); box-shadow: var(--lp-shadow-float); color: var(--lp-text); font-size: 15px; font-weight: 500; }
.lp-int__card { position: relative; display: flex; gap: 16px; padding: 22px; border: 1px solid var(--lp-border); border-radius: 20px; background: #fff; }
.lp-int__card--0 { grid-column: 1; grid-row: 1; }
.lp-int__card--1 { grid-column: 1; grid-row: 2; }
.lp-int__card--2 { grid-column: 3; grid-row: 1; }
.lp-int__card--3 { grid-column: 3; grid-row: 2; }
.lp-int__card h3 { margin: 2px 0 4px; font-size: 17px; font-weight: 500; }
.lp-int__card p { margin: 0; color: var(--lp-text-2); font-size: 14.5px; }
.lp-int__icon { display: grid; place-items: center; flex: 0 0 44px; height: 44px; border-radius: 14px; }
.lp-int__icon--whatsapp { background: #E6F4EA; color: #1E8E3E; }
.lp-int__icon--gcal { background: var(--lp-primary-soft); color: #1A73E8; }
.lp-int__icon--gsheets { background: var(--lp-green-soft); color: var(--lp-green); }
.lp-int__icon--easydental { background: #E8F0FE; color: #174EA6; }

/* ── Telas menores ─────────────────────────────────────────────────────── */
/* Só cabem do lado de fora da janela em telas largas. */
@media (max-width: 1399px) {
    .lp-floats { display: none; }
}
@media (max-width: 991px) {
    .lp-day__grid { grid-template-columns: 1fr; gap: 0; }
    .lp-day__clock-wrap { display: none; }
    .lp-anim .lp-moment .lp-moment__card { opacity: 1; }
    .lp-spots .lp-spot { grid-template-columns: 1fr; gap: 32px; }
    .lp-spots .lp-spot + .lp-spot { margin-top: 80px; }
    .lp-spot--flip .lp-spot__text { order: 0; }
    .lp-more { grid-template-columns: 1fr 1fr; }
    .lp-more__item:nth-child(3n) { border-right: 1px solid var(--lp-border); }
    .lp-more__item:nth-child(2n) { border-right: 0; }
    .lp-more__item:nth-last-child(-n+3) { border-bottom: 1px solid var(--lp-border); }
    .lp-more__item:nth-last-child(-n+2) { border-bottom: 0; }
    .lp-int__map { grid-template-columns: 1fr 1fr; grid-template-rows: none; gap: 16px; }
    .lp-int__hub { display: none; }
    .lp-int__card--0, .lp-int__card--1, .lp-int__card--2, .lp-int__card--3 { grid-column: auto; grid-row: auto; }
}
@media (max-width: 575px) {
    .lp-spot__stage { padding: 16px; border-radius: 22px; }
    .lp-scene { min-height: 0; }
    .lp-wait__row { grid-template-columns: 1fr; }
    .lp-more, .lp-int__map { grid-template-columns: 1fr; }
    .lp-more__item, .lp-more__item:nth-child(n) { border-right: 0; border-bottom: 1px solid var(--lp-border); }
    .lp-more__item:last-child { border-bottom: 0; }
    .lp-moment__card { padding: 18px; }
}
