@media (max-width: 1100px) {
    .footer-main {
        grid-template-columns: 1fr 1fr;
    }

    .footer-brand-block {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .nav {
        gap: 6px;
    }

    .nav a {
        min-height: 38px;
        padding: 0 12px;
        font-size: 13px;
    }

    .hero {
        padding: 64px 0 52px;
    }

    .search-shell {
        flex-direction: column;
        align-items: stretch;
        border-radius: 18px;
    }

    .search-submit {
        min-width: 0;
        width: 100%;
    }

    .search-trust-bar {
        flex-direction: column;
    }

    .trust-pill,
    .recaptcha-badge-home {
        justify-content: center;
    }

    .cards-grid,
    .features-grid,
    .diferenciais-grid {
        grid-template-columns: 1fr 1fr;
    }

    .footer-newsletter {
        grid-template-columns: 1fr;
    }

    .footer-newsletter-form {
        grid-template-columns: 1fr 1fr;
    }

    .footer-newsletter-button {
        grid-column: 1 / -1;
    }

    .contato-hero {
        grid-template-columns: 1fr;
    }

    .contato-faq-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .header .container {
        min-height: auto;
        padding: 12px 0;
        flex-direction: column;
        gap: 12px;
    }

    .logo-text {
        font-size: 30px;
    }

    .nav {
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px;
    }

    .hero-content > p {
        font-size: 15px;
    }

    .search-input-wrap {
        min-height: 64px;
    }

    .search-input-wrap input {
        font-size: 22px;
    }

    .search-input-wrap input::placeholder {
        font-size: 18px;
    }

    .stats {
        gap: 14px;
    }

    .stat {
        min-width: 140px;
    }

    .servicos,
    .features,
    .diferenciais,
    .cta-final,
    .faq {
        padding: 56px 0;
    }

    .subtitle {
        margin-bottom: 32px;
        font-size: 16px;
    }

    .cards-grid,
    .features-grid,
    .diferenciais-grid {
        grid-template-columns: 1fr;
    }

    .card,
    .feature-item,
    .difer-item,
    .faq-item {
        border-radius: 12px;
    }

    .price {
        font-size: 30px;
    }

    .btn-large {
        width: 100%;
    }

    .footer-main {
        grid-template-columns: 1fr;
        gap: 26px;
        padding: 34px 0;
    }

    .footer-newsletter {
        padding: 34px 0 24px;
    }

    .footer-newsletter-form {
        grid-template-columns: 1fr;
    }

    .footer-newsletter-button {
        grid-column: auto;
    }

    .footer-brand-text strong {
        font-size: 22px;
    }

    .contato-page {
        padding: 34px 0 46px;
    }

    .contato-form-card {
        padding: 18px;
    }

    .contato-copy h1,
    .contato-faq-block h2 {
        font-size: 30px;
    }

    .contato-form .btn {
        width: 100%;
    }

    .relatorio-header {
        padding: 20px;
    }

    .relatorio-placa {
        font-size: 20px;
    }

    .info-grid {
        grid-template-columns: 1fr;
    }

    .relatorio-actions {
        flex-direction: column;
    }

    .relatorio-actions .btn {
        width: 100%;
    }
}
