/*
Theme Name:     Dance Child
Theme URI: 		http://wedesignthemes.com/themes/dance/
Author: 		the DesignThemes team
Author URI: 	http://themeforest.net/user/designthemes
Description:    Child theme for the Movers theme powered by DesignThemes
Template:       dance
Version:        1.0
*/


/* 1. Déclaration de la police */
@font-face {
    font-family: 'Avenir';
    src: url('fonts/Avenir.ttc') format('collection'),
        url('fonts/Avenir.ttc') format('truetype');
    font-weight: normal;
    font-style: normal;
}

/* 2. Variables de marque XZOTIK */
:root {
    --xzotik-orange: #EF7D00;
    --xzotik-gris: #575756;
    --xzotik-noir: #1D1D1B;
}

.white-color {
    color: #fff !important;
    background-color: #fff !important;
}

#header-wrapper.light #main-menu ul.menu>li>a {
    color: #fff !important;
}

#main-menu ul.menu>li>a {
    color: #fff !important;
}

#main-menu>ul.menu>li.current_page_item>a,
#main-menu>ul.menu>li.current_page_ancestor>a,
#main-menu>ul.menu>li.current-menu-item>a {
    color: var(--xzotik-orange) !important;
}

/* 3. Forcer la police sur tout le site */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video,
button,
input,
select,
textarea {
    font-family: 'Avenir', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

/* Correction pour les icônes FontAwesome (ne pas forcer Avenir dessus) */
.fa,
.fas,
.far,
.fab,
.fa-solid,
.fa-regular,
.fa-brands,
[class^="fa-"],
[class*=" fa-"] {
    font-family: 'FontAwesome' !important;
}


.pe-icon {
    font-family: 'Pe-icon-7-stroke' !important;
}

.icon {
    font-family: 'Stroke-Gap-Icons' !important;
}

header .is-sticky .main-header-wrapper,
.fullwidth-header.transparent-header .is-sticky .main-header-wrapper {
    background: var(--xzotik-noir) !important;
    border-bottom: 1px solid var(--xzotik-orange) !important;
}

/* Overlay sombre permanent sur tous les fonds (Images et Vidéos) du Slider Revolution */
#rev_slider_1_1_wrapper {
    background-color: #000 !important;
    /* Évite le flash blanc au chargement */
}

#rev_slider_1_1 rs-sbg-px {
    position: relative;
}

#rev_slider_1_1 rs-sbg-px::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7) !important;
    /* Opacité réglée à 80% pour un effet très sombre */
    z-index: 100;
    /* Au-dessus de l'image/vidéo de fond */
    pointer-events: none;
    display: block !important;
}

/* Ajustements visuels fins */
/* --- Design Épuré & Compact des Compteurs --- */
.dt-sc-counter.type1 {
    background: #ffffff;
    padding: 30px 20px;
    /* Réduit pour diminuer la hauteur */
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);
    border: 1px solid rgba(0, 0, 0, 0.05);
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.dt-sc-counter.type1:hover {
    transform: translateY(-10px);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.1);
}

.dt-sc-counter.type1:after {
    background: var(--xzotik-orange);

}


/* Icône plus compacte */
.dt-sc-counter.type1 .icon-wrapper {
    width: 70px;
    height: 70px;
    background: #ef7d0021;
    border-radius: 18px;
    margin-bottom: 15px;
    /* Réduit */
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease;
    border: 1px solid rgba(0, 0, 0, 0.03);
}

.dt-sc-counter.type1 .icon-wrapper span {
    font-size: 28px !important;
    /* Légèrement réduit */
    background: var(--xzotik-orange);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.dt-sc-counter.type1:hover .icon-wrapper {
    background: var(--xzotik-gris);
    transform: scale(1.05);
}

.dt-sc-counter.type1:hover .icon-wrapper span {
    background: linear-gradient(135deg, #ffffff 0%, #f0f0f0 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Typographie ajustée */
.dt-sc-counter.type1 .dt-sc-counter-number {
    font-size: 48px !important;
    /* Réduit pour gagner de la hauteur */
    font-weight: 900 !important;
    color: var(--xzotik-gris);
    margin-bottom: 5px;
    /* Réduit */
    letter-spacing: -2px;
    line-height: 1;
    font-family: 'Avenir', sans-serif !important;
}

.dt-sc-counter.type1 h4 {
    font-size: 14px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    color: var(--xzotik-gris) !important;
    font-weight: normal !important;
    line-height: 1.5 !important;
    margin: 10px 0 0;
    max-width: 100%;
}

/* Réduire l'espacement entre les cartes (colonnes) */
.vc_row.wpb_row.vc_row-fluid>.wpb_column.vc_col-sm-3 {
    padding-left: 7px !important;
    padding-right: 7px !important;
}

.vc_row.wpb_row.vc_row-fluid>.wpb_column.vc_col-sm-3 .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Boutons : Comportement Hover spécial */
.dt-sc-button.filled:hover,
input[type="submit"]:hover,
button:hover {
    background-color: var(--xzotik-gris) !important;
    border-color: var(--xzotik-gris) !important;
}

.dt-sc-title.with-sub-title h3 {
    font-size: 40px;
    text-transform: uppercase;
    letter-spacing: 0;
    font-weight: bold;
    background: linear-gradient(to bottom, #EF7D00, #643503);
    background: -webkit-linear-gradient(to bottom, #EF7D00, #643503);
    background: -ms-linear-gradient(to bottom, #EF7D00, #643503);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.vc_img-with-border:before,
.vc_img-with-border:after {
    position: absolute;
    content: "";
    height: 0;
    width: 7px;
    background: linear-gradient(to bottom, #EF7D00, #EF7D00) !important;
    background: -webkit-linear-gradient(to bottom, #EF7D00, #EF7D00) !important;
    background: -ms-linear-gradient(to bottom, #EF7D00, #EF7D00) !important;
}

.vc_img-with-border:before,
.vc_img-with-border:after {
    position: absolute;
    content: "";
    height: 0;
    width: 7px;
    background: linear-gradient(to bottom, #EF7D00, #EF7D00) !important;
    background: -webkit-linear-gradient(to bottom, #EF7D00, #EF7D00) !important;
    background: -ms-linear-gradient(to bottom, #EF7D00, #EF7D00) !important;
}

.main-title-section h1 {
    font-size: 50px !important;
    font-weight: 700;
    /* color: #2b2b2b; */
    text-transform: uppercase !important;
    margin-bottom: 0;
    font-weight: bold !important;
    background: linear-gradient(to bottom, #ef7d00, #ef7d00) !important;
    background: -webkit-linear-gradient(to bottom, #ef7d00, #ef7d00) !important;
    background: -ms-linear-gradient(to bottom, #ef7d00, #ef7d00) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

.dt-sc-outer-frame-border:after {
    border: 10px dotted #EF7D00 !important;

}

ul.dt-sc-fancy-list.arrow.long-arrow li:before {
    color: #EF7D00 !important;
}

/* Style des icônes du footer */
.footer-icon {
    position: absolute;
    left: 0;
    top: 5px;
    /* Ajustement vertical */
    color: var(--xzotik-orange);
    font-size: 18px !important;
    width: 30px;
    text-align: center;
}

/* Mise en valeur des labels */
.footer-label {
    font-weight: bold;
    color: var(--xzotik-orange);
    margin-right: 5px;
}

/* Style de l'email au survol */
.footer-email {
    color: inherit;
    transition: color 0.3s ease;
}

.footer-email:hover {
    color: var(--xzotik-orange) !important;
}

.footer-copyright {
    padding: 10px !important;
}

#footer .footer-copyright .container {
    padding-top: 0 !important;
}

#toTop {
    width: 50px !important;
    height: 50px !important;
    bottom: 20px !important;
    right: 20px !important;
    background: url(/wp-content/themes/dance-child/images/icon1.png) no-repeat center center !important;
    background-size: contain !important;
    z-index: 999;
}

/* --- Section "Pourquoi choisir XZOTIK ?" (Design Artistique) --- */

/* Conteneur de texte (Colonne sombre) */
.dt-sc-dark-bg.vc_column_container {
    background-image: url('http://xzotik.test/wp-content/uploads/2026/04/MOTIF-XZOTIK-BLANC.jpg') !important;
    background-size: 50% !important;
    /* Motif répété subtilement */
    background-repeat: repeat !important;
    background-blend-mode: luminosity !important;
    background-color: var(--xzotik-gris) !important;
    position: relative;
    display: flex !important;
    align-items: center !important;
}

/* Voile de dégradé pour la profondeur */
.dt-sc-dark-bg.vc_column_container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, var(--xzotik-gris) 0%, var(--xzotik-noir) 100%);
    z-index: 0;
}

.dt-sc-dark-bg.vc_column_container .vc_column-inner {
    padding: 20px 40px !important;
    /* Réduit pour laisser le texte s'étaler */
    z-index: 1;
}

.dt-sc-contact-info.type4 {
    border: 1px solid var(--xzotik-orange) !important;
}

/* Titre monumental */
.qui-sn h2.vc_custom_heading {
    font-family: 'Avenir', sans-serif !important;
    font-weight: 900 !important;
    font-size: 58px !important;
    line-height: 1 !important;
    text-transform: uppercase;
    letter-spacing: -3px;
    margin-bottom: 30px !important;
    color: #ffffff !important;
    position: relative;
    display: block;
    max-width: 100%;
}

/* Accent orange sur le titre */
.dt-sc-dark-bg h2.vc_custom_heading::after {
    content: "";
    display: block;
    width: 80px;
    height: 8px;
    background: var(--xzotik-orange);
    margin-top: 15px;
    border-radius: 4px;
}

/* Paragraphe stylisé style "Manifeste" */
.dt-sc-dark-bg .wpb_text_column p {
    font-size: 19px !important;
    line-height: 1.6 !important;
    color: rgba(255, 255, 255, 0.85) !important;
    font-weight: 300 !important;
    border-left: 2px solid var(--xzotik-orange);
    padding-left: 25px;
    /* Réduit légèrement */
    position: relative;
    max-width: 100%;
    /* S'étale sur toute la largeur */
}

/* Image artistique (Colonne de gauche) */
.dt-equal-height-image-override .wpb_column:first-child img {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
    filter: saturate(1.1) contrast(1.1);
    transition: all 0.8s cubic-bezier(0.23, 1, 0.32, 1);
    border-radius: 0;
}

.dt-equal-height-image-override:hover .wpb_column:first-child img {
    transform: scale(1.05);
    filter: saturate(1.2) contrast(1.2);
}

/* Responsive */
@media (max-width: 767px) {
    .dt-sc-dark-bg h2.vc_custom_heading {
        font-size: 38px !important;
    }

    .dt-sc-dark-bg.vc_column_container .vc_column-inner {
        padding: 40px 20px !important;
    }
}

/* --- Section "NOTRE PRESENCE" (Carte d'Afrique) --- */

/* Mise en valeur de la carte */
.vc_custom_1776876467862 img {
    filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.1));
    transition: all 0.6s cubic-bezier(0.23, 1, 0.32, 1);
}

.vc_custom_1776876467862:hover img {
    transform: scale(1.03) translateY(-10px);
    filter: drop-shadow(0 20px 40px rgba(239, 125, 0, 0.25));
}

/* Titre de section "Notre Présence" */
.vcr_res-align-bottom h2.vc_custom_heading {
    font-family: 'Avenir', sans-serif !important;
    font-weight: 900 !important;
    font-size: 50px !important;
    color: var(--xzotik-gris) !important;
    letter-spacing: -2px;
    margin-bottom: 20px !important;
    position: relative;
}

.vcr_res-align-bottom h2.vc_custom_heading::after {
    content: "";
    display: block;
    width: 60px;
    height: 6px;
    background: var(--xzotik-orange);
    margin-top: 10px;
    border-radius: 3px;
}

/* Blocs de localisation (Burkina / Sénégal) style "Cards" */
.vcr_res-align-bottom .dt-sc-icon-box.type3 {
    background: #ffffff;
    padding: 20px !important;
    border-radius: 20px;
    border: 1px solid rgba(0, 0, 0, 0.04);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
    transition: all 0.4s ease;
    text-align: center;
}

.vcr_res-align-bottom .dt-sc-icon-box.type3:hover {
    transform: translateY(-8px);
    border-color: var(--xzotik-orange);
    box-shadow: 0 20px 40px rgba(239, 125, 0, 0.12);
}

.vcr_res-align-bottom .dt-sc-icon-box.type3 .icon-wrapper {
    margin-bottom: 15px;
    overflow: hidden;
    border-radius: 12px;
    height: 120px;
}

.vcr_res-align-bottom .dt-sc-icon-box.type3 .icon-wrapper img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.6s ease;
}

.vcr_res-align-bottom .dt-sc-icon-box.type3:hover .icon-wrapper img {
    transform: scale(1.1);
}

.vcr_res-align-bottom .dt-sc-icon-box.type3 .icon-content h4 {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: var(--xzotik-gris) !important;
    margin: 0 !important;
    text-transform: uppercase;
    letter-spacing: 1px;
}

#footer li a {
    font-weight: 800 !important;
}

#footer li a:hover {
    transform: translateY(-8px);
    color: #ccc !important;
}