/*
 * Autoškola Senza — Responsive Breakpoints
 * Zachovány z prototypu + vylepšení
 */

/* ==============================
   TABLET (max 991px)
   ============================== */
@media (max-width: 991px) {
    :root {
        --container-pad: 24px;
    }

    .nav-hamburger-btn {
        display: flex !important;
    }

    .nav-desktop,
    .nav-cta-desktop {
        display: none !important;
    }

    .site-header-inner {
        padding: 14px 24px !important;
    }

    .home-overlap-container {
        margin-top: -56px;
    }

    .hero-content {
        padding: 64px 24px 88px !important;
    }

    .subpage-hero-content {
        padding: 48px 24px 52px !important;
    }

    .usp-grid {
        grid-template-columns: 1fr 1fr !important;
        padding: 24px 0 !important;
    }

    .usp-col {
        border-left: none !important;
        border-bottom: 1px solid var(--border-light);
        padding: 20px 24px !important;
    }

    .usp-col:nth-child(2n+1) {
        border-right: 1px solid var(--border-light);
    }

    .usp-col:nth-child(3),
    .usp-col:nth-child(4) {
        border-bottom: none !important;
    }

    .course-layout {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
        padding: 48px 24px !important;
    }

    .vyuka-layout {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
        padding: 48px 24px !important;
    }

    .three-col-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .cenik-layout {
        grid-template-columns: 1fr !important;
        padding: 48px 24px !important;
        gap: 40px !important;
    }

    .cenik-info-grid {
        grid-template-columns: 1fr !important;
    }

    .kontakt-layout {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
        padding: 48px 24px !important;
    }

    .footer-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 32px !important;
        padding: 48px 24px !important;
    }

    .cta-section-inner {
        padding: 48px 24px;
        flex-direction: column;
        align-items: flex-start;
    }

    .cta-section-actions {
        margin-left: 0;
    }

    .contact-form-grid {
        grid-template-columns: 1fr;
    }

    .contact-form-wrapper {
        padding: 32px 24px;
    }
}

/* ==============================
   MOBILE LANDSCAPE (max 767px)
   ============================== */
@media (max-width: 767px) {
    :root {
        --text-display: 900 36px/1.15 var(--font-sans);
        --text-h1: 800 30px/1.15 var(--font-sans);
        --text-h2: 700 26px/1.2 var(--font-sans);
    }

    .course-grid {
        grid-template-columns: 1fr !important;
    }

    .cenik-info-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .hero-title {
        font-size: 36px;
        line-height: 1.15;
    }

    .subpage-hero-title {
        font-size: 30px;
        line-height: 1.15;
    }

    .aside-image-card h3 {
        font-size: 24px;
    }

    .news-card {
        flex-direction: column;
        gap: 12px;
    }

    .aktualita-banner {
        flex-direction: column;
        text-align: center;
        gap: 12px;
    }

    .aktualita-link {
        margin-left: 0;
    }
}

/* ==============================
   MOBILE PORTRAIT (max 575px)
   ============================== */
@media (max-width: 575px) {
    :root {
        --container-pad: 16px;
    }

    .home-overlap-container {
        margin-top: -48px;
    }

    .usp-grid {
        grid-template-columns: 1fr !important;
    }

    .usp-col {
        border-right: none !important;
        border-bottom: 1px solid var(--border-light) !important;
    }

    .usp-col:last-child {
        border-bottom: none !important;
    }

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

    .footer-bottom-inner {
        flex-direction: column;
        gap: 6px;
        text-align: center;
    }

    .hero-actions {
        flex-direction: column;
    }

    .hero-actions .btn {
        justify-content: center;
    }

    .download-card {
        flex-direction: column;
        text-align: center;
    }

    .download-card-arrow {
        display: none;
    }
}

/* ==============================
   PRINT STYLES
   ============================== */
@media print {
    .nav-wrapper,
    .nav-mobile-overlay,
    .site-footer,
    .cta-section,
    .hero-actions,
    .aktualita-banner {
        display: none !important;
    }

    .hero {
        background: #fff !important;
        min-height: 0 !important;
    }

    .hero-image,
    .hero-overlay-radial,
    .hero-overlay-linear {
        display: none !important;
    }

    .hero-title,
    .subpage-hero-title {
        color: #000 !important;
    }

    body {
        background: #fff;
    }
}
