/**
 * Styles pour les icônes globales (Social & Utilitaires)
 * Version 2.0
 */

.facebook-logo::before, 
.youtube-logo::before, 
.instagram-logo::before, 
.x-logo::before, 
.linkedin-logo::before, 
.map-pin-logo::before, 
.phone-logo::before,
.email-logo::before,
.facebook-logo a::before, 
.youtube-logo a::before, 
.instagram-logo a::before, 
.x-logo a::before, 
.linkedin-logo a::before, 
.map-pin-logo a::before, 
.phone-logo a::before,
.email-logo a::before {
    content: '';
    display: inline-block;
    width: 1em; /* S'adapte à la taille de la police */
    height: 1em;
    vertical-align: -0.125em; /* Ajustement vertical */
    margin-right: 0.5em; /* Espace entre le logo et le texte */
    background-color: currentColor; /* Le logo prend la couleur du texte */
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
}

/* --- Icônes Utilitaires --- */

.map-pin-logo a::before, .map-pin-logo::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z'/%3E%3C/svg%3E");
}

.phone-logo a::before, .phone-logo::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.62,10.79C8.06,13.62 10.38,15.94 13.21,17.38L15.41,15.18C15.69,14.9 16.08,14.82 16.43,14.93C17.55,15.3 18.75,15.5 20,15.5A1,1 0 0,1 21,16.5V20A1,1 0 0,1 20,21A17,17 0 0,1 3,4A1,1 0 0,1 4,3H7.5A1,1 0 0,1 8.5,4C8.5,5.25 8.7,6.45 9.07,7.57C9.18,7.92 9.1,8.31 8.82,8.59L6.62,10.79Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.62,10.79C8.06,13.62 10.38,15.94 13.21,17.38L15.41,15.18C15.69,14.9 16.08,14.82 16.43,14.93C17.55,15.3 18.75,15.5 20,15.5A1,1 0 0,1 21,16.5V20A1,1 0 0,1 20,21A17,17 0 0,1 3,4A1,1 0 0,1 4,3H7.5A1,1 0 0,1 8.5,4C8.5,5.25 8.7,6.45 9.07,7.57C9.18,7.92 9.1,8.31 8.82,8.59L6.62,10.79Z'/%3E%3C/svg%3E");
}

.email-logo a::before , .email-logo::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z'/%3E%3C/svg%3E");
}

/* --- Icônes Réseaux Sociaux --- */

.facebook-logo a::before, .facebook-logo::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 13.5h2.5l1-4H14v-2c0-1.03 0-2 2-2h1.5V2.14c-.326-.043-1.557-.14-2.857-.14C11.928 2 10 3.657 10 6.7v2.8H7v4h3V22h4v-8.5z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 13.5h2.5l1-4H14v-2c0-1.03 0-2 2-2h1.5V2.14c-.326-.043-1.557-.14-2.857-.14C11.928 2 10 3.657 10 6.7v2.8H7v4h3V22h4v-8.5z'/%3E%3C/svg%3E");
}

.youtube-logo a::before, .youtube-logo::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.582 7.124a2.783 2.783 0 0 0-1.956-1.96C17.864 4.5 12 4.5 12 4.5s-5.864 0-7.626.664A2.783 2.783 0 0 0 2.418 7.124c-.664 1.762-.664 5.426-.664 5.426s0 3.664.664 5.426a2.783 2.783 0 0 0 1.96 1.96c1.762.664 7.626.664 7.626.664s5.864 0 7.626-.664a2.783 2.783 0 0 0 1.956-1.96c.664-1.762.664-5.426.664-5.426s0-3.664-.664-5.426zM9.75 15.5V9.05l5.717 3.225L9.75 15.5z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.582 7.124a2.783 2.783 0 0 0-1.956-1.96C17.864 4.5 12 4.5 12 4.5s-5.864 0-7.626.664A2.783 2.783 0 0 0 2.418 7.124c-.664 1.762-.664 5.426-.664 5.426s0 3.664.664 5.426a2.783 2.783 0 0 0 1.96 1.96c1.762.664 7.626.664 7.626.664s5.864 0 7.626-.664a2.783 2.783 0 0 0 1.956-1.96c.664-1.762.664-5.426.664-5.426s0-3.664-.664-5.426zM9.75 15.5V9.05l5.717 3.225L9.75 15.5z'/%3E%3C/svg%3E");
}

.instagram-logo a::before, .instagram-logo::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2c2.717 0 3.056.01 4.122.06 1.065.05 1.79.217 2.428.465.66.254 1.217.598 1.77.96.605.396 1.126.914 1.522 1.522.362.554.706 1.11.96 1.77.248.638.415 1.363.465 2.428.05 1.066.06 1.405.06 4.122s-.01 3.056-.06 4.122c-.05 1.065-.217 1.79-.465 2.428a4.881 4.881 0 0 1-.96 1.77c-.396.608-.916 1.127-1.522 1.522-.554.362-1.11.706-1.77.96-1.065.248-1.79.415-2.428.465-1.066.05-1.405.06-4.122.06s-3.056-.01-4.122-.06c-1.065-.05-1.79-.217-2.428-.465a4.881 4.881 0 0 1-1.77-.96c-.608-.396-1.127-.916-1.522-1.522-.362-.554-.706-1.11-.96-1.77-.248-.638-.415-1.363-.465-2.428C2.01 15.056 2 14.717 2 12s.01-3.056.06-4.122c.05-1.065.217-1.79.465-2.428.254-.66.598-1.217.96-1.77.396-.605.914-1.126 1.522-1.522.554-.362 1.11-.706 1.77-.96.638-.248 1.363-.415 2.428-.465C8.944 2.01 9.283 2 12 2zm0 1.8c-2.64 0-2.963.01-4.003.057-.96.046-1.502.207-1.9.37-.44.175-.747.383-1.08.717-.333.333-.542.64-.717 1.08-.163.398-.324.94-.37 1.9-.046 1.04-.057 1.363-.057 4.003s.01 2.963.057 4.003c.046.96.207 1.502.37 1.9.175.44.384.747.717 1.08.333.333.64.542 1.08.717.398.163.94.324 1.9.37 1.04.046 1.363.057 4.003.057s2.963-.01 4.003-.057c.96-.046 1.502-.207 1.9-.37.44-.175.747-.383 1.08-.717.333-.333-.542-.64.717-1.08.163-.398-.324-.94-.37-1.9.046-1.04.057-1.363.057-4.003s-.01-2.963-.057-4.003c-.046-.96-.207-1.502-.37-1.9-.175-.44-.383-.747-.717-1.08-.333-.333-.64-.542-1.08-.717-.398-.163-.94-.324-1.9-.37C14.963 3.81 14.64 3.8 12 3.8zm0 3.62c-2.42 0-4.38 1.96-4.38 4.38s1.96 4.38 4.38 4.38 4.38-1.96 4.38-4.38-1.96-4.38-4.38-4.38zm0 7.16c-1.533 0-2.78-1.247-2.78-2.78s1.247-2.78 2.78-2.78 2.78 1.247 2.78 2.78-1.247 2.78-2.78 2.78zm4.965-8.215a1.035 1.035 0 1 0 0-2.07 1.035 1.035 0 0 0 0 2.07z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2c2.717 0 3.056.01 4.122.06 1.065.05 1.79.217 2.428.465.66.254 1.217.598 1.77.96.605.396 1.126.914 1.522 1.522.362.554.706 1.11.96 1.77.248.638.415 1.363.465 2.428.05 1.066.06 1.405.06 4.122s-.01 3.056-.06 4.122c-.05 1.065-.217 1.79-.465 2.428a4.881 4.881 0 0 1-.96 1.77c-.396.608-.916 1.127-1.522 1.522-.554.362-1.11.706-1.77.96-1.065.248-1.79.415-2.428.465-1.066.05-1.405.06-4.122.06s-3.056-.01-4.122-.06c-1.065-.05-1.79-.217-2.428-.465a4.881 4.881 0 0 1-1.77-.96c-.608-.396-1.127-.916-1.522-1.522-.362-.554-.706-1.11-.96-1.77-.248-.638-.415-1.363-.465-2.428C2.01 15.056 2 14.717 2 12s.01-3.056.06-4.122c.05-1.065.217-1.79.465-2.428.254-.66.598-1.217.96-1.77.396-.605.914-1.126 1.522-1.522.554-.362 1.11-.706 1.77-.96.638-.248 1.363-.415 2.428-.465C8.944 2.01 9.283 2 12 2zm0 1.8c-2.64 0-2.963.01-4.003.057-.96.046-1.502.207-1.9.37-.44.175-.747.383-1.08.717-.333.333-.542.64-.717 1.08-.163.398-.324.94-.37 1.9-.046 1.04-.057 1.363-.057 4.003s.01 2.963.057 4.003c.046.96.207 1.502.37 1.9.175.44.384.747.717 1.08.333.333.64.542 1.08.717.398.163.94.324 1.9.37 1.04.046 1.363.057 4.003.057s2.963-.01 4.003-.057c.96-.046 1.502-.207 1.9-.37.44-.175.747-.383 1.08-.717.333-.333-.542-.64.717-1.08.163-.398-.324-.94-.37-1.9.046-1.04.057-1.363.057-4.003s-.01-2.963-.057-4.003c-.046-.96-.207-1.502-.37-1.9-.175-.44-.383-.747-.717-1.08-.333-.333-.64-.542-1.08-.717-.398-.163-.94-.324-1.9-.37C14.963 3.81 14.64 3.8 12 3.8zm0 3.62c-2.42 0-4.38 1.96-4.38 4.38s1.96 4.38 4.38 4.38 4.38-1.96 4.38-4.38-1.96-4.38-4.38-4.38zm0 7.16c-1.533 0-2.78-1.247-2.78-2.78s1.247-2.78 2.78-2.78 2.78 1.247 2.78 2.78-1.247 2.78-2.78 2.78zm4.965-8.215a1.035 1.035 0 1 0 0-2.07 1.035 1.035 0 0 0 0 2.07z'/%3E%3C/svg%3E");
}

.x-logo a::before, .x-logo::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 7.184L18.901 1.153zM17.61 20.644h2.039L6.486 3.24H4.298l13.312 17.404z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 7.184L18.901 1.153zM17.61 20.644h2.039L6.486 3.24H4.298l13.312 17.404z'/%3E%3C/svg%3E");
}

.linkedin-logo a::before, .linkedin-logo::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14zm-11 5H5v10h3V8zm-1.5-2a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zM18 8h-2.5c-1.93 0-3.5 1.57-3.5 3.5V18h3v-4.5c0-.28.22-.5.5-.5s.5.22.5.5V18h3V11.5C18.5 9.57 18 8 18 8z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14zm-11 5H5v10h3V8zm-1.5-2a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zM18 8h-2.5c-1.93 0-3.5 1.57-3.5 3.5V18h3v-4.5c0-.28.22-.5.5-.5s.5.22.5.5V18h3V11.5C18.5 9.57 18 8 18 8z'/%3E%3C/svg%3E");
}