/* ============================================================================
   FIELDWORK — responsive
   Desktop-first. Breakpoints: 1080 · 900 · 760 · 600 · 420
   ========================================================================== */

/* ===== 1080px ===== */
@media (max-width: 1080px) {
    .proj-grid { grid-template-columns: repeat(2, 1fr); }
    .team-grid { grid-template-columns: repeat(2, 1fr); gap: 2.2rem; }
    .process-grid { grid-template-columns: repeat(2, 1fr); }
    .journal-grid { grid-template-columns: repeat(2, 1fr); }
    .specs-strip { grid-template-columns: repeat(3, 1fr); }
    .index-wrap { grid-template-columns: 1fr; }
    .index-preview { display: none; }
    /* Mobile rows get inline thumbnails instead */
    .index-row { grid-template-columns: 3.2rem 1fr auto; }
    .index-row .ir-thumb {
        display: block !important;
        grid-column: 1 / -1;
        width: 100%;
        aspect-ratio: 16 / 9;
        object-fit: cover;
        border: 1px solid var(--color-line);
    }
}

/* ===== 900px ===== */
@media (max-width: 900px) {
    :root { --space-xl: 4.5rem; }
    .main-nav { display: none; }
    .nav-toggle { display: inline-flex; }
    .header-actions .btn { display: none; }

    .hero { min-height: 80svh; }
    .hero-content { padding-bottom: 3.2rem; }
    .hero-spec { min-width: 7rem; }

    .values-grid { grid-template-columns: 1fr; gap: 1.3rem; }
    .contact-grid { grid-template-columns: 1fr; }
    .notes-grid { grid-template-columns: 1fr; gap: 1.8rem; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 2.2rem; }

    .project-nav { grid-template-columns: 1fr; }
    .project-nav a:last-child { text-align: left; border-top: 1px solid var(--color-line-strong); }
    .strip-grid { grid-template-columns: 1fr; }
}

/* ===== 760px ===== */
@media (max-width: 760px) {
    :root { --space-xl: 3.5rem; }
    .proj-grid, .project-grid { grid-template-columns: 1fr; }
    .journal-grid { grid-template-columns: 1fr; }
    .form-grid { grid-template-columns: 1fr; }
    .form-field--full { grid-column: auto; }
    .specs-strip { grid-template-columns: repeat(2, 1fr); }
    .block-head { flex-direction: column; align-items: flex-start; gap: 0.9rem; }
    .hero-actions .btn, .cover-actions .btn { width: 100%; }
    .notes-row { flex-direction: column; }
    .notes-row .btn { width: 100%; }
    .stats-row { grid-template-columns: repeat(2, 1fr); }
    .process-grid { grid-template-columns: 1fr; }
}

/* ===== 600px ===== */
@media (max-width: 600px) {
    .hero { min-height: 74svh; padding-top: 6rem; }
    .hero-specs { gap: 0; }
    .hero-spec { min-width: 6.5rem; padding-right: 1.2rem; margin-right: 1.2rem; }

    .index-row { grid-template-columns: 2.4rem 1fr; }
    .index-row .ir-meta { grid-column: 2; text-align: left; }
    .index-row .ir-thumb { grid-column: 1 / -1; aspect-ratio: 16 / 9; object-fit: cover; width: 100%; border: 1px solid var(--color-line); }

    .footer-grid { grid-template-columns: 1fr; gap: 2rem; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .footer-demo { margin-inline: auto; }

    .accordion-btn { font-size: 1.1rem; }
    .team-grid { grid-template-columns: 1fr; max-width: 380px; margin-inline: auto; }
    .stats-row { grid-template-columns: 1fr 1fr; }
}

/* ===== 420px ===== */
@media (max-width: 420px) {
    .specs-strip { grid-template-columns: 1fr 1fr; }
    .project-hero h1 { font-size: 2.2rem; }
}
