/* ===== Cabecera móvil: fila 1 = logo · teléfono · idioma | fila 2 = menú ===== */
@media (max-width: 768px) {
    body { padding-top: 104px; }
    .sticky-header { padding: 8px 0 0; }
    .sticky-header .row { display: flex; flex-wrap: wrap; align-items: center; margin: 0; }
    .sticky-header .row > [class*="col-"]:first-child { flex: 0 0 auto; width: auto; padding: 0; order: 1; }
    .sticky-header .row > [class*="col-"]:last-child,
    .sticky-header .nav-menu { display: contents; }
    .sticky-header .logo { height: 48px; width: 48px; }
    .sticky-header .contact-buttons { order: 2; margin-left: auto; gap: 14px; }
    .sticky-header .contact-btn { font-size: 14px; font-weight: 600; color: #333; }
    .sticky-header .contact-btn i { font-size: 16px; }
    .sticky-header .language-selector { order: 3; margin-left: 12px; }
    .sticky-header .row::after { content: ""; flex-basis: 100%; order: 4; height: 6px; }
    .sticky-header .nav-link-custom {
        order: 5; flex: 1 1 0; text-align: center; white-space: nowrap;
        font-size: 14px; padding: 8px 2px; border-top: 1px solid #eee;
        border-bottom: 2px solid transparent;
    }
    .sticky-header .nav-link-custom.active { padding-bottom: 8px; border-bottom-color: var(--primary-color); }
}

/* ===== Hero móvil: título + botón visibles sin hacer scroll, foto debajo ===== */
@media (max-width: 768px) {
    .hero-section { min-height: 0; padding: 28px 0 36px; display: block; }
    .hero-content { flex-direction: column; gap: 22px; }
    .hero-title-small { font-size: 17px; margin-bottom: 2px; }
    .hero-title-large { font-size: 38px; margin-bottom: 18px; }
    .cta-button { padding: 14px 40px; font-size: 17px; }
    .hero-image { max-width: 78%; margin: 0 auto; padding-top: 0; }
    .hero-image img { max-height: 46vh; width: auto; max-width: 100%; }
}
