/* ============================================================
   CORNERHOUSE RESPONSIVE — responsive-cornerhouse.css
   Breakpoints: 1024px (tablet landscape), 768px (tablet), 480px (phone)
   ============================================================ */

/* ---- Tablet landscape ---- */
@media (max-width: 1024px) {
    :root { --section-pad: 64px; }

    .ch-container { padding: 0 32px; }

    .ch-editorial { grid-template-columns: 1fr; gap: 48px; }

    .ch-hero-street-v { font-size: 38px; letter-spacing: 3px; }
    .ch-hero-price    { font-size: 48px; }

    .ch-contact-layout { grid-template-columns: 1fr; gap: 48px; }

    .ch-specs-grid { grid-template-columns: 1fr 1fr; }
}

/* ---- Tablet portrait ---- */
@media (max-width: 768px) {
    :root { --section-pad: 48px; --nav-height: 60px; }

    .ch-container { padding: 0 20px; }

    /* Nav */
    .ch-nav { padding: 0 20px; }
    .ch-nav-links { display: none; }
    .ch-nav-hamburger { display: flex; }

    /* Hero: hide the desktop rotated vertical text block */
    .ch-hero-left { display: none; }

    /* Show address in horizontal bar below hero instead of left vertical */
    .ch-hero-right {
        top: auto;
        bottom: 60px; /* just above bar */
        right: 20px;
        transform: none;
        text-align: right;
    }
    .ch-hero-price    { font-size: 36px; }
    .ch-hero-stat-item{ font-size: 10px; }

    /* Mobile: show address in address bar more prominently */
    .ch-address-bar { padding: 14px 20px; }
    .ch-address-bar-text { font-size: 10px; letter-spacing: 2px; }

    /* Gallery */
    .ch-gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 4px; }

    /* Editorial */
    .ch-editorial { grid-template-columns: 1fr; gap: 32px; }

    .ch-section-title { font-size: 30px; }
    .ch-section-label { font-size: 28px; }

    /* Specs */
    .ch-specs-grid { grid-template-columns: 1fr 1fr; }

    /* Contact */
    .ch-contact-layout { grid-template-columns: 1fr; gap: 40px; }
    .ch-form-row       { grid-template-columns: 1fr; }

    /* Floor plan */
    .ch-fp-preview { flex-direction: column; }
    .ch-fp-preview-img { max-width: 100%; }

    /* Map — static image + card stack vertically */
    .ch-map-container { height: auto; }
    .ch-map-container img { height: 260px; }
    .ch-map-card {
        position: static;
        transform: none;
        width: 100%;
        box-shadow: none;
        border: 1px solid var(--ch-border);
        padding: 24px 20px;
    }

    /* Lightbox */
    .ch-lb-thumbs { display: none; }
    .ch-lb-grid-view { grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); }
}

/* ---- Phone ---- */
@media (max-width: 480px) {
    :root { --section-pad: 40px; }

    .ch-gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 3px; }

    .ch-hero-price    { font-size: 28px; }
    .ch-hero-bar      { padding: 10px 16px; }

    .ch-section-title { font-size: 26px; }
    .ch-section-label { font-size: 24px; }

    .ch-specs-grid { grid-template-columns: 1fr; }

    .ch-btn-outline { padding: 12px 24px; }
    .ch-form-submit { padding: 14px; }

    .ch-agent-photo { width: 90px; height: 90px; }

    .ch-lb-grid-view { grid-template-columns: repeat(auto-fill, minmax(80px, 1fr)); }
}
