/* ========================================
   FIX MOBILE - OVERFLOW E TOGGLE MENU
   Caricare DOPO tutti gli altri CSS
   ======================================== */

/* Previeni overflow orizzontale su TUTTO il sito mobile */
@media (max-width: 991px) {
    html {
        overflow-x: hidden !important;
        max-width: 100vw !important;
    }
    
    body {
        overflow-x: hidden !important;
        max-width: 100vw !important;
        position: relative !important;
    }
    
    /* Top bar e suoi container */
    .top-bar,
    div.top-bar {
        width: 100% !important;
        max-width: 100vw !important;
        overflow-x: hidden !important;
        margin: 0 !important;
    }
    
    .top-bar .container,
    .top-bar > .container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    
    /* ROW - QUESTO È IL PROBLEMA PRINCIPALE */
    .top-bar .row,
    .top-bar .container .row,
    .top-bar > .container > .row {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    /* Colonne del logo */
    .top-bar .col-md-2,
    .top-bar .col-sm-3,
    .top-bar .col-xs-12,
    .top-bar .logo {
        padding-left: 0 !important;
        padding-right: 55px !important; /* Spazio per toggle */
        max-width: 100% !important;
    }
    
    /* Logo img */
    .top-bar .logo img,
    .top-bar img[alt="logo"] {
        max-width: calc(100vw - 70px) !important;
        height: auto !important;
    }
    
    /* Colonna social */
    .top-bar .col-md-10,
    .top-bar .top-social {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* Mobile piccolo - riduci numero icone social invece di nasconderle */
@media (max-width: 575px) {
    /* FORZA visualizzazione delle icone social (sovrascrive menu-responsive.css) */
    .top-bar .top-social,
    div.top-bar .top-social,
    .top-bar div.top-social {
        display: block !important;
    }
    
    /* Nascondi solo dalla 3a icona in poi */
    .top-bar .top-social ul li:nth-child(n+3) {
        display: none !important;
    }
    
    .top-bar .logo {
        width: auto !important;
        max-width: 50% !important;
        padding-right: 10px !important;
    }
    
    .top-bar .top-social {
        width: auto !important;
        max-width: 40% !important;
        padding-right: 55px !important; /* Spazio per toggle */
    }
    
    .top-bar .top-social ul {
        justify-content: flex-end !important;
    }
}

/* Mobile molto piccolo - rimpicciolisci icone invece di nasconderle */
@media (max-width: 400px) {
    /* FORZA visualizzazione anche sotto 400px */
    .top-bar .top-social,
    div.top-bar .top-social,
    .top-bar div.top-social {
        display: block !important;
    }
    
    /* Mostra solo 2 icone */
    .top-bar .top-social ul li:nth-child(n+3) {
        display: none !important;
    }
    
    /* Rimpicciolisci le icone */
    .top-bar .top-social ul li a {
        width: 32px !important;
        height: 32px !important;
        font-size: 14px !important;
    }
    
    .top-bar .logo {
        width: auto !important;
        max-width: 55% !important;
        padding-right: 5px !important;
    }
    
    .top-bar .top-social {
        width: auto !important;
        max-width: 35% !important;
        padding-right: 50px !important;
    }
    
    .top-bar .top-social ul {
        gap: 5px !important;
    }
}

/* Schermi molto piccoli (< 360px) - icone ancora più piccole */
@media (max-width: 360px) {
    .top-bar .top-social ul li a {
        width: 28px !important;
        height: 28px !important;
        font-size: 12px !important;
    }
    
    .top-bar .top-social ul {
        gap: 3px !important;
    }
}

/* ========================================
   FIX MAIN SLIDER SU MOBILE PICCOLO
   ======================================== */
@media (max-width: 400px) {
    /* Container interno dello slider - riduci padding */
    .slider ul li .inner,
    .main-slider .slider ul li .inner {
        width: calc(100% - 40px) !important; /* era 130px */
        margin: 0 auto !important;
        padding: 0 10px !important;
    }
    
    /* Box di testo dello slider */
    .slider ul li .text,
    .main-slider .slider ul li .text {
        width: 100% !important;
        max-width: 100% !important;
        padding: 15px !important; /* ridotto da 25px */
        box-sizing: border-box !important;
    }
    
    /* Titoli slider */
    .slider h2,
    .main-slider .slider h2 {
        font-size: 20px !important; /* ridotto da 34px */
        margin-bottom: 10px !important;
        line-height: 1.3 !important;
        word-wrap: break-word !important;
    }
    
    /* Paragrafi slider */
    .slider p,
    .main-slider .slider p {
        font-size: 14px !important; /* ridotto da 16px */
        line-height: 1.4 !important;
        word-wrap: break-word !important;
    }
    
    /* Contenitore principale */
    .slider ul li .content,
    .main-slider .slider ul li .content {
        padding: 0 10px !important;
    }
}

/* Mobile molto piccolo (< 360px) */
@media (max-width: 360px) {
    .slider ul li .inner,
    .main-slider .slider ul li .inner {
        width: calc(100% - 20px) !important;
        padding: 0 5px !important;
    }
    
    .slider ul li .text,
    .main-slider .slider ul li .text {
        padding: 10px !important;
    }
    
    .slider h2,
    .main-slider .slider h2 {
        font-size: 18px !important;
    }
    
    .slider p,
    .main-slider .slider p {
        font-size: 13px !important;
    }
}

/* Toggle menu - posizionamento sicuro */
@media (max-width: 991px) {
    .mobile-menu-toggle {
        position: fixed !important;
        top: 10px !important;
        right: 10px !important;
        z-index: 999999 !important;
    }
}

@media (max-width: 375px) {
    .mobile-menu-toggle {
        top: 8px !important;
        right: 8px !important;
        width: 40px !important;
        height: 40px !important;
    }
}