:root {
    --landing-header-height: var(--site-header-height, 90px);
    --landing-bar-height: 84px;
}

@media (max-width: 991px) {
    html {
        scroll-behavior: smooth;
    }

    body.home-landing.has-conversion-bar {
        padding-bottom: calc(var(--landing-bar-height) + env(safe-area-inset-bottom, 0px));
    }

    body.home-landing.conversion-bar-hidden.has-conversion-bar {
        padding-bottom: 0;
    }

    body.home-landing .conversion-bar {
        transition: transform 0.28s ease, opacity 0.28s ease;
        will-change: transform;
    }

    body.home-landing.conversion-bar-hidden .conversion-bar {
        transform: translateY(110%);
        opacity: 0;
        pointer-events: none;
    }

    body.home-landing #formulario {
        scroll-margin-top: var(--landing-header-height);
        scroll-margin-bottom: calc(var(--landing-bar-height) + env(safe-area-inset-bottom, 0px));
    }

    body.home-landing.conversion-bar-hidden #formulario {
        scroll-margin-bottom: 1.25rem;
    }

    body.home-landing #formulario .formulario-page__shell {
        padding-top: 1.5rem;
        padding-bottom: 0.5rem;
    }

    body.home-landing #formulario .formulario-page__card {
        margin: 0.75rem auto 0;
        border-radius: 14px;
    }

    body.home-landing #formulario .formulario-page__body {
        padding-bottom: calc(1.35rem + var(--landing-bar-height) + env(safe-area-inset-bottom, 0px));
    }

    body.home-landing.conversion-bar-hidden #formulario .formulario-page__body {
        padding-bottom: 1.35rem;
    }

    body.home-landing .landing-section.py-5 {
        padding-top: 2.35rem !important;
        padding-bottom: 2.35rem !important;
    }

    body.home-landing .landing-section .container.py-lg-4,
    body.home-landing .landing-section .container.py-3 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    body.home-landing .landing-section__header {
        margin-bottom: 1.75rem !important;
    }

    body.home-landing .landing-section__title {
        font-size: clamp(1.35rem, 5.5vw, 1.75rem);
        line-height: 1.25;
    }

    body.home-landing .landing-section__lead,
    body.home-landing .formulario-lead {
        font-size: 0.95rem;
        line-height: 1.6;
    }

    body.home-landing .landing-card,
    body.home-landing .landing-service-card,
    body.home-landing .landing-trust-item,
    body.home-landing .landing-audience-card {
        padding: 1.1rem 1rem;
    }

    body.home-landing .landing-card__text,
    body.home-landing .landing-service-card p,
    body.home-landing .landing-checklist li {
        font-size: 0.92rem;
        line-height: 1.55;
    }

    body.home-landing .landing-close__box {
        padding: 1.35rem 1rem;
    }

    body.home-landing .landing-close__title {
        font-size: 1.35rem;
    }

    body.home-landing .formulario-page__title {
        font-size: clamp(1.3rem, 5vw, 1.65rem);
        line-height: 1.25;
        margin-bottom: 0.65rem;
    }

    body.home-landing .form-benefits {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.55rem;
        margin-bottom: 1rem;
    }

    body.home-landing .form-benefits li {
        font-size: 0.9rem;
    }

    body.home-landing .contact-shortcuts--form {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.55rem;
        margin-bottom: 1.1rem;
    }

    body.home-landing .contact-shortcuts--form .contact-shortcuts__item {
        width: 100%;
        min-height: 48px;
        padding: 0.65rem 0.5rem;
        font-size: 0.82rem;
    }

    body.home-landing .formulario--commercial .form-group-formulario {
        margin-bottom: 1rem;
    }

    body.home-landing .formulario--commercial .form-group-formulario label {
        margin-bottom: 0.4rem;
        font-size: 0.95rem;
        line-height: 1.35;
    }

    body.home-landing .formulario--commercial .form-group-formulario input:not([type="checkbox"]),
    body.home-landing .formulario--commercial .form-group-formulario textarea,
    body.home-landing .formulario--commercial .form-group-formulario select {
        min-height: 52px;
        padding: 0.85rem 0.9rem;
        font-size: 16px;
        line-height: 1.4;
        border-radius: 10px;
    }

    body.home-landing .formulario--commercial .form-group-formulario textarea {
        min-height: 132px;
    }

    body.home-landing .formulario--commercial .form-group-formulario select {
        padding-right: 2rem;
    }

    body.home-landing .formulario--commercial .privacy {
        align-items: flex-start;
        gap: 0.65rem;
        margin-top: 0.25rem;
    }

    body.home-landing .formulario--commercial .privacy input[type="checkbox"],
    body.home-landing .formulario--commercial .privacy .form-privacy-checkbox {
        width: 22px;
        height: 22px;
        min-width: 22px;
        min-height: 22px;
        margin-top: 0.1rem;
        flex-shrink: 0;
    }

    body.home-landing .formulario--commercial .privacy label {
        font-size: 0.92rem;
        line-height: 1.45;
        font-weight: 600;
    }

    body.home-landing .formulario--commercial .form-submit-btn {
        min-height: 56px;
        margin-top: 0.35rem;
        font-size: 1.05rem;
        border-radius: 999px;
    }

    body.home-landing .form-submit-spacer {
        display: block;
        height: 0;
    }

    body.home-landing:not(.conversion-bar-hidden) .form-submit-spacer {
        height: calc(0.5rem + env(safe-area-inset-bottom, 0px));
    }

    body.home-landing .form-alert {
        padding: 0.9rem;
    }

    body.home-landing .form-alert strong {
        display: block;
        font-size: 0.98rem;
    }

    body.home-landing .hero-home__title {
        font-size: clamp(1.45rem, 6.5vw, 1.85rem);
    }

    body.home-landing .hero-home__lead {
        font-size: 0.94rem;
    }

    body.home-landing .hero-home__cta,
    body.home-landing .hero-home__cta-outline,
    body.home-landing .hero-home__cta-whatsapp {
        min-height: 52px;
    }

    body.home-landing.has-conversion-bar:not(.conversion-bar-hidden) #movetop {
        bottom: calc(var(--landing-bar-height) + 14px + env(safe-area-inset-bottom, 0px));
    }
}

@media (max-width: 575px) {
    body.home-landing .contact-shortcuts--form {
        grid-template-columns: 1fr;
    }

    body.home-landing .landing-close__actions {
        flex-direction: column;
        width: 100%;
    }

    body.home-landing .landing-close__actions .btn,
    body.home-landing .landing-close__actions .hero-home__cta-whatsapp {
        width: 100%;
        min-height: 52px;
    }

    body.home-landing .hero-home__stack {
        max-height: 4.5rem;
        overflow: hidden;
    }
}

@media (max-width: 991px) and (min-height: 700px) {
    body.home-landing #cta-final {
        scroll-margin-bottom: 1rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    body.home-landing .conversion-bar {
        transition: none;
    }
}
