/* =====================================
   RESPONSIVE DESIGN - MEDIA QUERIES
==================================== */

@media (max-width: 768px) {
    /* Header adjustments */
    header {
        padding: var(--space-md);
    }

    header h1 {
        font-size: var(--font-size-xl);
    }

    /* Show hamburger menu */
    .menu-toggle {
        display: block;
    }

    /* Hide nav by default on mobile */
    .nav-menu {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: var(--color-background);
        border-bottom: 1px solid var(--color-border);
        flex-direction: column;
        max-height: 0;
        overflow: hidden;
        transition: max-height var(--transition-base);
    }

    .nav-menu.active {
        max-height: 300px;
    }

    .nav-menu ul {
        flex-direction: column;
        gap: 0;
        padding: var(--space-lg);
    }

    .nav-menu li {
        width: 100%;
    }

    .nav-menu a {
        display: block;
        padding: var(--space-md);
        border-bottom: 1px solid var(--color-border);
    }

    /* Main content adjustments */
    main {
        margin-top: 80px;
    }

    .disclaimer {
        top: 100px;
        width: 75%;
        left: 12.5%;
    }

    /* Hero section */
    .hero {
        min-height: 50vh;
        padding: var(--space-2xl) var(--space-md);
    }

    .hero-title {
        font-size: var(--font-size-2xl);
    }

    .hero-description {
        font-size: var(--font-size-base);
    }

    /* Sections */
    .section {
        padding: var(--space-2xl) var(--space-md);
    }

    .section-title {
        font-size: var(--font-size-2xl);
    }

    /* Grids */
    .products-grid {
        grid-template-columns: 1fr;
        gap: var(--space-lg);
    }

    .reviews-grid {
        grid-template-columns: 1fr;
    }

    /* About section */
    .about-content {
        grid-template-columns: 1fr;
        gap: var(--space-2xl);
    }

    /* Contact section */
    .contact-wrapper {
        grid-template-columns: 1fr;
        gap: var(--space-2xl);
    }

    /* Typography */
    h1 {
        font-size: var(--font-size-2xl);
    }

    h2 {
        font-size: var(--font-size-xl);
    }

    h3 {
        font-size: var(--font-size-lg);
    }

    /* Buttons */
    .btn--lg {
        width: 40%;
    }

    .btn--sm {
        width: 50%;
    }

    /* Footer */
    footer {
        padding: var(--space-lg) var(--space-md);
    }
}

@media (max-width: 480px) {
    :root {
        font-size: 14px;
    }

    header {
        padding: var(--space-sm);
    }

    header h1 {
        font-size: var(--font-size-lg);
    }

    .hero {
        min-height: 40vh;
    }

    .hero-title {
        font-size: var(--font-size-xl);
    }

    .section {
        padding: var(--space-lg) var(--space-md);
    }

    .section-title {
        font-size: var(--font-size-xl);
    }

    .container {
        padding: 0 var(--space-md);
    }

    .card-image {
        height: 200px;
    }

    .disclaimer {
        padding: var(--space-md);
        width: 100%;
        left: 0;
    }

    .disclaimer strong {
        font-size: var(--font-size-base);
    }

    .disclaimer p {
        font-size: var(--font-size-xs);
    }
}

/* =====================================
   ACCESSIBILITY & PRINT
==================================== */

@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

@media print {
    header, footer, .disclaimer {
        display: none;
    }

    body {
        background: white;
        color: black;
    }

    a {
        color: blue;
    }
}

