/* =====================================================
   THE BIOZYGOTIC FRAMEWORK™ — RESPONSIVE STYLES
   Breakpoints: 900px (tablet), 600px (mobile)
   ===================================================== */

/* ── TABLET (≤900px) ─────────────────────────────── */
@media (max-width: 900px) {

    /* Navigation */
    nav { padding: 0 5%; height: auto; padding-top: 1rem; padding-bottom: 1rem; flex-wrap: wrap; gap: 1rem; }
    .nav-toggle { display: flex; }

    .nav-links {
        display: none;
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        padding: 0.5rem 0 1rem;
        gap: 0;
    }
    .nav-links.open { display: flex; }
    .nav-links a { width: 100%; padding: 0.6rem 0.5rem; border-radius: 0; border-bottom: 1px solid var(--bg-cream); }

    /* Grids */
    .grid-2 { grid-template-columns: 1fr; gap: 2rem; }
    .card-grid { grid-template-columns: 1fr; }
    .vocab-grid { grid-template-columns: 1fr 1fr; }

    /* Contact page */
    .contact-content { grid-template-columns: 1fr; }
    .faq-grid { grid-template-columns: 1fr; }

    /* Hero */
    .hero { min-height: 70vh; padding: 5rem 5% 4rem; }
    .hero-header { padding: 3rem 5% 2rem; }

    /* Framework page */
    .eq-display { font-size: 2rem; gap: 8px; }

    /* Content blocks */
    .content-block { padding: 2rem; }
    .section { padding: 3rem 5%; }
    .cta-dark { padding: 3rem 2rem; }
}

/* ── MOBILE (≤600px) ─────────────────────────────── */
@media (max-width: 600px) {

    /* Typography scale down */
    h1 { font-size: clamp(1.6rem, 6vw, 2.2rem); }
    h2 { font-size: clamp(1.3rem, 5vw, 1.8rem); }

    /* Navigation */
    .nav-logo-text { font-size: 1.1rem; }
    .nav-logo img { height: 42px; }

    /* Hero */
    .hero { min-height: 60vh; }
    .compact-equation { font-size: 1.6rem; letter-spacing: 1px; }
    .equation-subtitle { flex-direction: column; gap: 0.75rem; }

    /* Cards */
    .card { padding: 1.75rem; }
    .content-block { padding: 1.5rem; }

    /* Vocab grid to 1 col */
    .vocab-grid { grid-template-columns: 1fr; }

    /* Table: allow horizontal scroll */
    .table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

    /* Tabs */
    .tab-buttons { gap: 6px; }
    .tab-btn { padding: 0.5rem 1rem; font-size: 0.82rem; }

    /* Footer */
    footer { padding: 3rem 5% 2rem; }

    /* Buttons */
    .btn { padding: 0.75rem 1.5rem; font-size: 0.9rem; }

    /* Contact */
    .contact-card { padding: 2rem 1.5rem; }
    .email-link { font-size: 1rem; padding: 0.75rem 1.25rem; }
    .social-card { padding: 2rem 1.5rem; }

    /* Coaching page profile */
    .coach-photo { width: 120px !important; height: 120px !important; }

    /* Calculator sliders */
    .slider-row { grid-template-columns: 1fr !important; }
    .param-box { flex: 1 1 40% !important; }
    .toggle-btn { min-width: 100% !important; }
}
