/* ============================================= */
/* 8. MOBILE OPTIMIERUNG & MEDIA QUERIES         */
/* ============================================= */
@media (min-width: 576px) {
    .radio-card-group {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 768px) {
    .form-group-row {
        flex-direction: row;
    }
    .footer-grid {
        grid-template-columns: repeat(4, 1fr);
    }
    .sub-header-content {
        justify-content: flex-start;
        gap: var(--space-xl);
    }
    .sub-header-icons a .icon-label {
        display: inline;
    }
    .sub-header-theme {
        margin-left: auto;
    }
    .vehicle-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 992px) {
    .features-grid-condensed {
        grid-template-columns: repeat(4, 1fr);
    }
    /* Die alte Regel für .booking-layout-grid wurde hier entfernt */
    .vehicle-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .nav-menu {
        display: none;
    }
    h1 { font-size: 2.2rem; }
    h2 { font-size: 1.8rem; }
    #sub-header {
        top: 73px;
    }
    .footer-menu-button {
        display: block;
        color: var(--light-color);
        font-weight: 600;
        font-size: 0.9rem;
        background-color: var(--primary-color);
        padding: 5px 15px;
        border-radius: var(--border-radius);
        text-decoration: none;
    }
}

@media (max-width: 992px) {
    .trust-grid-container {
        grid-template-columns: 1fr;
        gap: var(--space-lg);
        text-align: center;
    }
    .trust-logo {
        margin-left: auto;
        margin-right: auto;
    }
}

@media (max-width: 576px) {
    .modal-content {
        padding: var(--space-md);
    }
    .modal-content h3 {
        font-size: 1.3rem;
    }
    .modal-content ul {
        flex-direction: column;
        gap: var(--space-sm);
        align-items: flex-start;
    }
}