/* =================================================================
   responsive.css — breakpoints
   Base = 320px (definida en style.css). Acá solo ampliamos.
   ================================================================= */

/* --- 380px: móviles medianos ------------------------------------ */
@media (min-width: 380px) {
    .hero__actions { flex-direction: row; flex-wrap: wrap; }
    .hero__actions .btn { flex: 1 1 auto; min-width: 11rem; }
    .cookiebar__actions .btn { flex: 0 1 auto; min-width: 8rem; }
}

/* --- 600px: móviles grandes / tablets chicas --------------------- */
@media (min-width: 600px) {
    :root { --section-y: 4.25rem; }
    .wrap { padding-inline: 1.6rem; }
    .hero__facts { grid-template-columns: repeat(2, 1fr); }
    .cards { grid-template-columns: repeat(2, 1fr); }
    .sitefooter__grid { grid-template-columns: repeat(2, 1fr); }
    .cookiebar__inner {
        grid-template-columns: 1fr auto;
        align-items: center;
        gap: 1.5rem;
    }
}

/* --- 768px: tablets --------------------------------------------- */
@media (min-width: 768px) {
    .offers { grid-template-columns: repeat(2, 1fr); }
    .hero { padding-block: 4.5rem 4rem; }
    .operator dl { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
    .sitefooter__grid { grid-template-columns: 1.5fr 1fr 1fr; }
    .sitefooter__brand { grid-column: 1 / -1; }
}

/* --- 960px: escritorio ------------------------------------------ */
@media (min-width: 960px) {
    :root { --section-y: 5.25rem; }

    .navtoggle { display: none; }

    .primarynav {
        display: flex !important;
        position: static;
        align-items: center;
        gap: 1.5rem;
        background: transparent;
        border: 0;
        padding: 0;
    }
    .primarynav__list {
        display: flex;
        align-items: center;
        gap: 1.35rem;
        margin: 0;
    }
    .primarynav__list a {
        padding: .3rem 0;
        border-bottom: 2px solid transparent;
        font-size: .92rem;
    }
    .primarynav__list a:hover { border-bottom-color: var(--line-strong); }
    .primarynav__list a[aria-current="page"] { border-bottom-color: var(--gold); }

    .offers { grid-template-columns: repeat(3, 1fr); }
    .cards { grid-template-columns: repeat(3, 1fr); }
    .hero__facts { grid-template-columns: repeat(3, 1fr); }

    .hero__inner { display: grid; grid-template-columns: 1.15fr .85fr; gap: 3rem; align-items: center; }
    .hero__facts { grid-template-columns: 1fr; margin-top: 0; }

    .sitefooter__grid { grid-template-columns: 1.6fr 1fr 1fr 1.2fr; }
    .sitefooter__brand { grid-column: auto; }

    .tablehint { display: none; }
    .ctable { min-width: 0; }
}

/* --- 1280px+: pantallas amplias ---------------------------------- */
@media (min-width: 1280px) {
    :root { --wrap: 1180px; --section-y: 6rem; }
    .hero h1 { max-width: 14ch; }
}

/* --- Impresión ---------------------------------------------------- */
@media print {
    .siteheader, .cookiebar, .agebar, .skip-link, .hero__actions { display: none !important; }
    body { background: #fff; color: #000; }
}
