/* =========================================================
   ABC Software — responsive.css (ABC-28)
   ========================================================= */

@media (max-width: 1100px) {
    .hero__title { font-size: 2.4rem; }
    .section__title,
    .distributor-cta__title { font-size: 2.2rem; }
}

/* Tablet */
@media (max-width: 900px) {
    :root { --sidebar-w: 0px; }

    /* La columna se apila como barra superior */
    .site-shell { display: block; }
    .site-content { flex: none; margin-left: 0; }

    /* Sidebar → barra superior colapsable */
    .site-sidebar {
        position: sticky; top: 0; width: 100%; height: auto; flex: none; inset: auto;
        flex-direction: row; align-items: center; justify-content: space-between;
        padding: .75rem 1rem; border-right: 0; border-bottom: 1px solid var(--color-border);
    }
    .site-sidebar__brand { margin: 0; }
    .menu-toggle { display: flex; order: 3; }
    .site-nav {
        order: 4; flex-basis: 100%; display: none;
    }
    .site-nav.is-open { display: block; }
    .site-nav__menu { flex-direction: column; gap: .25rem; padding-top: .75rem; }
    .site-nav__menu a { display: block; padding: .65rem .25rem; font-size: .8rem; }
    .site-sidebar__social { margin: 0; padding: 0; order: 2; }

    .site-topbar { position: static; justify-content: flex-end; padding: .5rem 1rem;
        background: var(--color-primary); }
    .lang-switcher__toggle { color: #fff; }

    .hero { min-height: auto; padding: 3rem 0; }
    .hero__inner,
    .home-about__inner,
    .about-leaders__inner,
    .product-hero__top,
    .distributor-cta__inner,
    .home-contact__grid,
    .about-philosophy__grid,
    .about-values__grid,
    .contact-directory__grid,
    .distributors__grid,
    .site-footer__inner { grid-template-columns: 1fr; }

    .hero__media { order: -1; }
    .hero__img { margin: 0 auto; }
    .hero__badge { position: static; margin-top: 1rem; }
    .product-hero .feature-list { flex-direction: column; }

    .site-footer__inner { flex-direction: column; gap: 2rem; }
    .site-footer__brand { margin-right: 0; }
}

/* Mobile */
@media (max-width: 560px) {
    :root { --space-2xl: 3.5rem; --space-xl: 2.5rem; }
    .hero__title { font-size: 2rem; }
    .page-banner__title { font-size: 1.9rem; }
    .section__title,
    .distributor-cta__title { font-size: 1.7rem; }
    .hero__actions { flex-direction: column; align-items: stretch; }
    .hero__actions .btn { justify-content: center; }
    .abc-form__row { flex-direction: column; }
    .abc-form__actions { flex-direction: column; }
    .abc-form__actions .btn { justify-content: center; }
    .about-values__grid { grid-template-columns: 1fr; }
    .site-footer__bar-inner { flex-direction: column; gap: .5rem; text-align: center; }
    .carousel__slide { flex-basis: 82%; }
}
