@media (min-width: 560px) {
    .trust-strip,
    .stats-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .two-fields {
        grid-template-columns: 1fr 1fr;
    }

    .form-submit { width: auto; }
}

@media (min-width: 760px) {
    .card-grid.six-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .process-timeline {
        grid-template-columns: repeat(2, 1fr);
    }

    .legal-box {
        grid-template-columns: auto 1fr;
    }

    .footer-grid {
        grid-template-columns: 1.6fr 1fr 1fr 1fr;
    }
}

@media (min-width: 980px) {
    .hero-grid {
        grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr);
    }

    .two-column,
    .contact-grid {
        grid-template-columns: 1fr 1fr;
    }

    .international-card {
        grid-template-columns: 1.1fr .9fr;
    }

    .card-grid.six-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .process-timeline {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 1050px) {
    .header-cta { display: none; }

    .nav-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        position: relative;
        z-index: 1002;
    }

    .site-nav {
        position: fixed;
        inset: var(--header-height) 1rem auto 1rem;
        z-index: 1001;
        padding: var(--space-5);
        border: 1px solid var(--color-border);
        border-radius: var(--radius-xl);
        background: rgba(255, 255, 255, .96);
        box-shadow: var(--shadow-soft);
        opacity: 0;
        visibility: hidden;
        transform: translateY(-10px);
        transition: opacity var(--transition), visibility var(--transition), transform var(--transition);
    }

    .site-nav.is-open {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .site-nav ul {
        display: grid;
        gap: var(--space-2);
    }

    .site-nav a {
        display: block;
        padding: .85rem 1rem;
        border-radius: var(--radius-sm);
        background: var(--color-bg-soft);
        color: var(--color-navy);
    }
}

@media (max-width: 520px) {
    :root { --header-height: 70px; }

    .container { width: min(100% - 1.25rem, var(--container)); }

    .section { padding: 3.25rem 0; }

    .brand-mark {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
    }

    .brand-name { font-size: 1.12rem; }
    .brand-country { font-size: .9rem; }

    .hero-actions .btn { width: 100%; }

    .hero-card {
        position: static;
        margin-top: var(--space-3);
    }

    .contact-form,
    .legal-content,
    .international-card,
    .legal-box {
        padding: var(--space-5);
    }
}

@media (max-width: 520px) {
    .brand-logo-img {
        width: 132px;
    }

    .footer-logo .brand-logo-img {
        width: 150px;
    }
}
