/* ==========================================================
   DimosTV F2.0-R01.5 — Canonical Broadcast Responsive Layer
   Authoritative responsive geometry for Hero + Number Navigation + Editorial Rail.
   Data/state/interaction contracts remain owned by their existing runtime layers.
========================================================== */

/* Desktop / compact desktop */
@media (max-width: 1180px) {
    .dtv-broadcast-stage { --dtv-broadcast-gap: 20px; }
    .dtv-broadcast-stage .dtv-broadcast-grid { grid-template-columns: minmax(0, 64fr) minmax(290px, 36fr); }
    .dtv-broadcast-stage .dtv-front-slider-track { height: 540px; }
    .dtv-broadcast-stage .dtv-broadcast-safe-zone { left: 64px; width: min(68%, 620px); }
    .dtv-broadcast-stage .dtv-front-hero-content h1 { font-size: clamp(31px, 2.75vw, 36px); }
    .dtv-broadcast-rail-card { grid-template-columns: minmax(96px, 32%) minmax(0, 1fr); }
}

/* Tablet: single Hero row followed by a two-column Editorial Rail. */
@media (max-width: 960px) {
    .dtv-broadcast-stage .dtv-broadcast-grid { grid-template-columns: 1fr; }
    .dtv-broadcast-stage .dtv-front-slider-track { height: clamp(470px, 62vw, 560px); min-height: 470px; }
    .dtv-broadcast-rail { padding: 18px; }
    .dtv-broadcast-stage .dtv-broadcast-rail__items { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(112px, auto)); }
}

/* R01.5 Correction 01: dedicated tablet safe-zone and type scale.
   Keep navigation controls outside the editorial text column without altering
   the accepted desktop (>=961px) or mobile (<=768px) compositions. */
@media (min-width: 769px) and (max-width: 960px) {
    .dtv-broadcast-stage .dtv-broadcast-safe-zone {
        left: 82px;
        right: 72px;
        width: auto;
        max-width: 560px;
    }

    .dtv-broadcast-stage .dtv-front-hero-content h1 {
        max-width: 17ch;
        font-size: clamp(27px, 3.65vw, 31px);
        line-height: 1.03;
    }

    .dtv-broadcast-stage .dtv-front-hero-content p {
        max-width: 42ch;
        font-size: 14px;
    }
}

/* Mobile: one canonical geometry for Hero, Numbers and Editorial Rail. */
@media (max-width: 768px) {
    .dtv-broadcast-stage { width: 100%; margin-top: 0; }

    .dtv-front-hero-slider.dtv-broadcast-stage .dtv-front-slider-track {
        height: clamp(540px, 142vw, 610px) !important;
        min-height: 540px !important;
        max-height: none !important;
        border-radius: 0;
    }

    .dtv-front-hero-slider.dtv-broadcast-stage .dtv-front-hero-content {
        left: 20px !important;
        right: 20px !important;
        bottom: 100px !important;
    }

    .dtv-front-hero-slider.dtv-broadcast-stage .dtv-front-hero-content p {
        -webkit-line-clamp: 2 !important;
    }

    .dtv-broadcast-stage .dtv-broadcast-safe-zone { left: 22px; right: 22px; bottom: 82px; width: auto; max-width: 440px; }
    .dtv-broadcast-stage .dtv-front-hero-content h1 { max-width: 18ch; font-size: clamp(26px, 7.4vw, 36px); }
    .dtv-broadcast-stage .dtv-front-hero-content p { display: none; }

    .dtv-broadcast-pagination {
        min-height: 44px;
        padding: 0 18px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scrollbar-width: none;
    }
    .dtv-broadcast-pagination::-webkit-scrollbar { display: none; }
    .dtv-broadcast-pagination__item { min-height: 44px; }
    .dtv-broadcast-pagination__item i { width: 72px; }

    .dtv-broadcast-rail { margin: 0 14px; border-radius: 18px; }
    .dtv-broadcast-stage .dtv-broadcast-rail__items {
        display: flex;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }
    .dtv-broadcast-stage .dtv-broadcast-rail__items::-webkit-scrollbar { display: none; }
    .dtv-front-hero-slider.dtv-broadcast-stage .dtv-broadcast-rail .dtv-broadcast-rail__items > button.dtv-broadcast-rail__item,
    .dtv-front-hero-slider.dtv-broadcast-stage .dtv-broadcast-rail .dtv-broadcast-rail__items > button.dtv-broadcast-rail__item.is-active,
    .dtv-front-hero-slider.dtv-broadcast-stage .dtv-broadcast-rail .dtv-broadcast-rail__items > a.dtv-broadcast-rail__item {
        flex: 0 0 88% !important;
        width: auto !important;
        min-height: 118px;
        scroll-snap-align: start;
    }
}

@media (max-width: 359px) {
    .dtv-front-hero-slider.dtv-broadcast-stage .dtv-front-slider-track {
        height: 530px !important;
        min-height: 530px !important;
    }

    .dtv-front-hero-slider.dtv-broadcast-stage .dtv-front-hero-content p {
        display: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dtv-broadcast-stage .dtv-front-hero-card img { transition: none; transform: none; }
    .dtv-broadcast-stage .dtv-broadcast-rail__items,
    .dtv-broadcast-stage .dtv-broadcast-pagination { scroll-behavior: auto; }
}
