/* ============================== */
/* 📱 MOBILE FIRST (default - tutto in colonna) */
/* ============================== */

.distributor-list-wrapper {
    max-width: 100%;
    /*margin: 0 auto;*/
    display: flex;
    flex-direction: column; /* Mobile: tutto in colonna */
    flex-wrap: nowrap;
    margin-top: 30px;
    padding: 0 15px; /* Aggiungi un po' di padding per i bordi su mobile */
}

/* Stile dei contenitori di bottoni */
.distributor-buttons {
    display: flex;
    padding: 10px 0; /* Rimosso padding-right 10px per mobile */
    border-radius: 8px;
    /*box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);*/
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    background-color: #ffffff;
    gap: 1vh;
    width: 100%; /* I bottoni occupano tutta la larghezza su mobile */
    margin-bottom: 15px;
	
    max-height: 500px;
    flex-wrap: nowrap;
    overflow: auto;
}

/* Stile dei pulsanti */
.distributor-btn {
    /* Mantenere la tua definizione di Flex container */
    display: flex;
    align-content: center;
    justify-content: center;
    
    /* Aggiungi 'position: relative' per posizionare la bandiera in modo assoluto al suo interno */
    position: relative; 
    
    /* Mantenere tutti gli altri stili... */
    width: 100%;
    max-width: 350px;
    background: white;
    padding: 15px;
    border-left: 5px solid #23bcae;
    box-shadow: 0 3px 16px rgb(33 33 33 / 10%);
    cursor: pointer;
    border-radius: 0;
    text-transform: uppercase;
    color: #000000;
    font-size: 1.3em;
    transition: background-color 0.3s ease, transform 0.1s;
	
    font-family: 'Intro Bold Alt';
}

.distributor-btn:hover {
    background-color: #23bbad; /* Ho unificato il colore hover/active per consistenza */
    color: white; 
}

.distributor-btn.active {
    background-color: #23bbad;
    color: white; 
}

/* Container per il raggruppamento (Paesi + Info) */
.distributor-layout {
    display: flex;
    flex-direction: column; /* Mobile: impilati */
    width: 100%;
}

/* Container Informazioni Distributore */
.distributor-info {
    width: 100%; /* Mobile: occupa tutta la larghezza */
    border-left: 5px solid #23bcae;
    padding: 25px;
    border-radius: 0;
    background-color: white;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    margin-top: 15px; /* Spazio tra Paesi e Info su mobile */
    height: fit-content;
}

/* ============================== */
/* 🖥️ TABLET (768px e oltre) */
/* ============================== */
@media (min-width: 768px) {
    .distributor-list-wrapper {
        flex-direction: row; /* Tablet/Desktop: Continents e Layout affiancati (se necessario, ma tipicamente i continent buttons restano in cima) */
        flex-wrap: wrap; 
        max-width: 1000px; /* Ristabilito un max-width per il contenuto */
        padding: 0;
    }

    .continent-buttons {
        /* I continenti restano in alto, occupando tutta la larghezza */
        flex-direction: row; 
        justify-content: start;
        width: 100%;
        gap: 10px;
        margin-bottom: 20px;
    }
    
    /* Il layout Paesi + Info si affianca */
    .distributor-layout {
        flex-direction: row; /* Tablet: Paesi a sinistra, Info a destra */
        gap: 20px;
        margin-top: 30px;
    }

    /* Paesi (Colonna Sinistra) */
    .country-buttons {
        flex: 0 0 300px; /* Larghezza fissa o definita */
        padding-right: 10px;
        border-right: 1px solid #eee;
        height: auto; /* Adatta l'altezza al contenuto */
    }

    /* Informazioni (Colonna Destra) */
    .distributor-info {
        flex: 1; /* Occupa lo spazio rimanente */
        margin-top: 0; /* Rimuovi margine superiore quando affiancato */
        border-left: none; /* Rimuovi il bordo sinistro se affiancato */
    }
}

/* ============================== */
/* 💻 DESKTOP (1024px e oltre) */
/* ============================== */
@media (min-width: 1024px) {
    
    /* Regola la larghezza dei bottoni continentali per schermi più grandi */
    .continent-buttons .distributor-btn {
        width: 100%;
        max-width: 200px;
    }

    .country-buttons {
        flex: 0 0 350px; /* Più spazio per la lista dei paesi */
    }
}

.distributor-card h3 {
    display: flex;
    align-items: center;
    color: #2c3e50;
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 1.8em;
	
    font-family: 'Intro Bold Alt';
}

.distributor-card .flag-icon{
    width: 50px;
    height: auto;
    object-fit: cover;
    margin-right: 10px;
    border: 1px solid #eee;
}

/* 🚩 Stile specifico per la bandiera all'interno del bottone */
.distributor-btn .flag-icon {
    /* Posiziona la bandiera in alto a sinistra del bottone */
    position: absolute;
    left: 15px; /* Spazio a sinistra (uguale al padding) */
    top: 50%;
    transform: translateY(-50%); /* Centra verticalmente */
    
    /* Mantenere le dimensioni che avevi definito */
    width: 50px;
    height: auto;
    object-fit: cover;
    margin-right: 0; /* Rimuovi il margine che non serve più con position: absolute */
}

.distributor-meta-row {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    color: #7f8c8d;
    flex-wrap: wrap;
}
.distributor-meta-row span {
    font-weight: 500;
    color: #34495e;
    margin-left: 5px;
    font-family: 'Intro Bold Alt';
	
		flex: 0 1 100%;
		text-align: start;
		margin-top: 4px;
		padding-left: 15px;
	}
.distributor-meta-row .distributor-meta-row-socials {
    display: flex;
    flex-direction: row;
    justify-content: start;
    gap: 20px;
    margin: 10px 0 0 10px;
}
.distributor-meta-row i.tb-me-8 {
    margin-right: 8px;
}

/* Icone (Font Awesome o simboli Unicode/Emoji) */
.icon::before {
    font-family: 'Font Awesome 5 Free'; /* Se usi Font Awesome */
    font-weight: 900;
    margin-right: 8px;
    color: #3498db;
}

/* Esempio senza Font Awesome (puoi usare emoji come fallback) */
.icon-location::before { content: "📍"; }
.icon-phone::before { content: "📞"; }
.icon-email::before { content: "📧"; }
.icon-website::before { content: "🔗"; }
.icon-social::before { content: "🌐"; }
.icon-countries::before { content: "🌍"; }

.hidden {
    display: none !important;
}

/* Stili per la lista dei paesi gestiti */
.countries-list {
    color: #95a5a6;
    margin-left: 10px;
    font-family: 'Intro Bold Alt';
	
		flex: 1 1 100%;
		text-align: start;
		font-size: 1rem;
		margin-top: 5px;
	}