/*
 Theme Name:   Alavion Child — Univers Tala
 Theme URI:    https://universtala.com
 Description:  Thème enfant d'Alavion pour Univers Tala. Ne jamais modifier Alavion directement.
 Author:       Imane Pluriel Entreprise
 Author URI:   https://universtala.com
 Template:     alavion
 Version:      1.0.0
 Text Domain:  alavion-child
*/

/* ═══════════════════════════════════════════════════════════════
   UNIVERS TALA — Charte graphique complète
   Thème enfant Alavion · v1.0
   ═══════════════════════════════════════════════════════════════

   TABLE DES MATIÈRES
   1.  Tokens (variables CSS)
   2.  Typographie globale
   3.  Header & Navigation Alavion
   4.  Hero / Slider Alavion
   5.  Boutons WPBakery + Alavion
   6.  Sections & rows WPBakery
   7.  Cartes compétitions
   8.  FAQ / Accordion
   9.  Compteurs & statistiques
  10.  Galerie & médias
  11.  Footer Alavion
  12.  Responsive mobile
   ═══════════════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────
   1. TOKENS — Variables CSS globales
   ───────────────────────────────────────────── */

:root {
  /* Palette */
  --ut-night-deep:   #0D0520;
  --ut-night:        #1A0A2E;
  --ut-night-mid:    #2D1B69;
  --ut-violet:       #7C3AED;
  --ut-violet-light: #9B5CF0;
  --ut-gold:         #F0B429;
  --ut-gold-hover:   #FFD060;
  --ut-terra:        #E8450A;
  --ut-green:        #1D9E75;
  --ut-cream:        #F9F6F0;
  --ut-white:        #FFFFFF;
  --ut-text-dark:    #1A1A1A;
  --ut-text-mid:     #4A4A4A;
  --ut-text-muted:   #8A8A8A;

  /* Polices */
  --ut-font-display: 'Playfair Display', Georgia, serif;
  --ut-font-ui:      'Outfit', system-ui, sans-serif;
  --ut-font-body:    'Nunito', system-ui, sans-serif;

  /* Rayons */
  --ut-radius-sm:   6px;
  --ut-radius-md:   10px;
  --ut-radius-lg:   16px;
  --ut-radius-xl:   22px;
  --ut-radius-full: 999px;

  /* Ombres */
  --ut-shadow-sm:     0 1px 4px rgba(13,5,32,.25);
  --ut-shadow-md:     0 4px 16px rgba(13,5,32,.35);
  --ut-shadow-lg:     0 10px 40px rgba(13,5,32,.50);
  --ut-shadow-gold:   0 4px 24px rgba(240,180,41,.35);
  --ut-shadow-violet: 0 4px 24px rgba(124,58,237,.30);

  /* Transitions */
  --ut-ease: cubic-bezier(0.4, 0, 0.2, 1);
  --ut-fast: 150ms;
  --ut-base: 220ms;
  --ut-slow: 400ms;
}


/* ─────────────────────────────────────────────
   2. TYPOGRAPHIE GLOBALE
   ───────────────────────────────────────────── */

body,
body.alavion {
  font-family: var(--ut-font-body) !important;
  font-size: 16px !important;
  line-height: 1.70 !important;
  color: var(--ut-text-mid) !important;
  background-color: var(--ut-white) !important;
  -webkit-font-smoothing: antialiased;
}

/* Titres H1 */
h1, .h1,
.wpb_content_element h1,
.entry-title,
.page-title {
  font-family: var(--ut-font-display) !important;
  font-size: clamp(36px, 5vw, 64px) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em !important;
  color: var(--ut-night) !important;
}

/* Titres H2 */
h2, .h2,
.wpb_content_element h2 {
  font-family: var(--ut-font-display) !important;
  font-size: clamp(26px, 3.5vw, 44px) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.01em !important;
  color: var(--ut-night) !important;
}

/* Titres H3 */
h3, .h3,
.wpb_content_element h3 {
  font-family: var(--ut-font-ui) !important;
  font-size: clamp(18px, 2.2vw, 26px) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: var(--ut-night) !important;
}

/* Titres H4–H6 */
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: var(--ut-font-ui) !important;
  font-weight: 600 !important;
  color: var(--ut-night) !important;
}

/* Corps de texte */
p,
.wpb_text_column p,
.wpb_content_element p {
  font-family: var(--ut-font-body) !important;
  font-size: 16px !important;
  line-height: 1.70 !important;
  color: var(--ut-text-mid) !important;
}

/* Liens */
a {
  color: var(--ut-violet) !important;
  transition: color var(--ut-fast) var(--ut-ease) !important;
  text-decoration: none !important;
}
a:hover {
  color: var(--ut-gold) !important;
}

/* Titres blancs sur fonds sombres */
.vc_row-has-fill h1,
.vc_row-has-fill h2,
.vc_row-has-fill h3,
.vc_row-has-fill h4,
.vc_row-has-fill p,
.vc_row-has-fill .wpb_text_column p {
  color: var(--ut-white) !important;
}
.vc_row-has-fill a {
  color: var(--ut-gold) !important;
}


/* ─────────────────────────────────────────────
   3. HEADER & NAVIGATION ALAVION
   Sélecteurs spécifiques au thème Alavion
   ───────────────────────────────────────────── */

/* Barre principale du header */
#header,
.header-wrapper,
.alavion-header,
#site-header,
header#masthead,
.site-header {
  background-color: var(--ut-night) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 2px 20px rgba(13, 5, 32, 0.40) !important;
}

/* Header sticky au scroll */
#header.sticky,
.header-wrapper.sticky,
.sticky-header,
header.sticky {
  background-color: rgba(26, 10, 46, 0.95) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

/* Logo texte */
.site-title,
.site-title a,
#site-title,
.logo a,
.navbar-brand,
.alavion-logo-text {
  font-family: var(--ut-font-display) !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: var(--ut-white) !important;
  letter-spacing: -0.01em !important;
  text-decoration: none !important;
}

/* Menu principal */
#primary-navigation a,
#main-navigation a,
.alavion-menu a,
.nav-menu > li > a,
.main-navigation > div > ul > li > a,
ul.menu > li > a {
  font-family: var(--ut-font-ui) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.65) !important;
  padding: 8px 14px !important;
  transition: color var(--ut-fast) var(--ut-ease) !important;
  background: transparent !important;
  text-decoration: none !important;
}
#primary-navigation a:hover,
#main-navigation a:hover,
.alavion-menu a:hover,
.nav-menu > li > a:hover,
ul.menu > li > a:hover,
.current-menu-item > a,
.current-menu-ancestor > a {
  color: var(--ut-white) !important;
  background: transparent !important;
}
.current-menu-item > a {
  color: var(--ut-gold) !important;
}

/* Élément CTA dans le menu — ajouter classe "menu-item-cta" dans WP */
.menu-item-cta > a,
.menu-item-button > a {
  background-color: var(--ut-gold) !important;
  color: var(--ut-night) !important;
  padding: 9px 22px !important;
  border-radius: var(--ut-radius-full) !important;
  font-weight: 700 !important;
  margin-left: 8px !important;
}
.menu-item-cta > a:hover {
  background-color: var(--ut-gold-hover) !important;
  color: var(--ut-night) !important;
  transform: translateY(-1px) !important;
}

/* Sous-menu (dropdown) */
.nav-menu .sub-menu,
.main-navigation .sub-menu,
ul.menu .sub-menu {
  background-color: var(--ut-night) !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: var(--ut-radius-md) !important;
  box-shadow: var(--ut-shadow-lg) !important;
  min-width: 200px !important;
}
.sub-menu li a {
  font-size: 13px !important;
  padding: 10px 18px !important;
  color: rgba(255, 255, 255, 0.65) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}
.sub-menu li:last-child a {
  border-bottom: none !important;
}
.sub-menu li a:hover {
  color: var(--ut-gold) !important;
  background-color: rgba(124, 58, 237, 0.12) !important;
}

/* Menu hamburger mobile */
.menu-toggle,
.hamburger,
.alavion-menu-toggle {
  color: var(--ut-white) !important;
  background: transparent !important;
  border: 1.5px solid rgba(255, 255, 255, 0.25) !important;
  border-radius: var(--ut-radius-sm) !important;
  padding: 6px 10px !important;
}

/* Menu mobile ouvert */
.mobile-menu,
.responsive-menu {
  background-color: var(--ut-night) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}
.mobile-menu a,
.responsive-menu a {
  font-family: var(--ut-font-ui) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.75) !important;
  padding: 13px 20px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}


/* ─────────────────────────────────────────────
   4. HERO / SLIDER ALAVION
   ───────────────────────────────────────────── */

/* Slider principal Alavion */
.alavion-slider,
.rev_slider_wrapper,
#rev_slider,
.alavion-hero,
.hero-section {
  background: radial-gradient(
    ellipse 90% 70% at 65% 35%,
    var(--ut-night-mid) 0%,
    var(--ut-night) 52%,
    var(--ut-night-deep) 100%
  ) !important;
}

/* Contrôles du slider */
.tp-leftarrow,
.tp-rightarrow,
.tparrows {
  background-color: rgba(240, 180, 41, 0.15) !important;
  border: 1px solid rgba(240, 180, 41, 0.30) !important;
  border-radius: 50% !important;
  transition: background var(--ut-base) var(--ut-ease) !important;
}
.tp-leftarrow:hover,
.tp-rightarrow:hover,
.tparrows:hover {
  background-color: var(--ut-gold) !important;
}

/* Bullets du slider */
.tp-bullets .tp-bullet {
  background: rgba(255, 255, 255, 0.25) !important;
  border-radius: 50% !important;
}
.tp-bullets .tp-bullet.selected {
  background: var(--ut-gold) !important;
  transform: scale(1.3) !important;
}


/* ─────────────────────────────────────────────
   5. BOUTONS WPBAKERY + ALAVION
   ───────────────────────────────────────────── */

/* Tous les boutons WPBakery → base */
.vc_btn3,
.vc_general.vc_btn3,
.wpb_content_element .vc_btn3,
.alavion-btn,
.btn {
  font-family: var(--ut-font-ui) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  border-radius: var(--ut-radius-full) !important;
  padding: 13px 30px !important;
  letter-spacing: 0.02em !important;
  transition: transform var(--ut-base) var(--ut-ease),
              box-shadow var(--ut-base) var(--ut-ease),
              background var(--ut-fast) var(--ut-ease) !important;
  text-transform: none !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Bouton PRIMAIRE — Or Savane */
.vc_btn3-color-juicy_pink,
.vc_btn3-color-primary,
.vc_btn3-color-warning,
.vc_btn3-color-orange,
.vc_btn3-style-flat.vc_btn3-color-warning,
.alavion-btn-primary,
.btn-primary {
  background-color: var(--ut-gold) !important;
  border-color:     var(--ut-gold) !important;
  color:            var(--ut-night) !important;
  box-shadow:       var(--ut-shadow-gold) !important;
}
.vc_btn3-color-juicy_pink:hover,
.vc_btn3-color-primary:hover,
.vc_btn3-color-warning:hover,
.alavion-btn-primary:hover,
.btn-primary:hover {
  background-color: var(--ut-gold-hover) !important;
  border-color:     var(--ut-gold-hover) !important;
  color:            var(--ut-night) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 32px rgba(240, 180, 41, 0.50) !important;
}

/* Bouton SECONDAIRE — Contour violet */
.vc_btn3-style-outline,
.vc_btn3-style-outline-custom,
.alavion-btn-secondary,
.btn-secondary {
  background:    transparent !important;
  border:        1.5px solid var(--ut-violet) !important;
  color:         var(--ut-violet) !important;
  box-shadow:    none !important;
}
.vc_btn3-style-outline:hover,
.alavion-btn-secondary:hover {
  background:    rgba(124, 58, 237, 0.08) !important;
  transform:     translateY(-1px) !important;
}

/* Bouton contour BLANC (sur fond sombre) */
.vc_row-has-fill .vc_btn3-style-outline,
.vc_row-has-fill .btn-secondary {
  border-color: rgba(255, 255, 255, 0.30) !important;
  color:        var(--ut-white) !important;
}
.vc_row-has-fill .vc_btn3-style-outline:hover {
  border-color: rgba(255, 255, 255, 0.65) !important;
  background:   rgba(255, 255, 255, 0.06) !important;
}

/* Bouton VOTE — or + texte nuit */
.vc_btn3-color-success,
.vc_btn3-color-green,
.alavion-btn-vote {
  background-color: var(--ut-gold) !important;
  border-color:     var(--ut-gold) !important;
  color:            var(--ut-night) !important;
  box-shadow:       var(--ut-shadow-gold) !important;
  font-size: 12px !important;
  padding: 9px 22px !important;
}
.vc_btn3-color-success:hover,
.alavion-btn-vote:hover {
  background-color: var(--ut-gold-hover) !important;
  transform: scale(1.04) !important;
}


/* ─────────────────────────────────────────────
   6. SECTIONS & ROWS WPBAKERY
   ───────────────────────────────────────────── */

/* Espacement par défaut des sections */
.vc_row.wpb_row,
.vc_row-fluid {
  padding-top:    72px !important;
  padding-bottom: 72px !important;
}

/* Section avec fond Nuit (applique via couleur de fond WPBakery) */
.vc_row[style*="background-color: #1a0a2e"],
.vc_row[style*="background-color:#1a0a2e"],
.vc_row[style*="background-color: #1A0A2E"] {
  background-color: var(--ut-night) !important;
}

/* Section fond crème */
.vc_row.ut-cream {
  background-color: var(--ut-cream) !important;
}

/* Séparateur doré (widget WPBakery Separator) */
.vc_separator .vc_sep_holder .vc_sep_line,
.wpb_content_element .vc_separator hr {
  border-color: var(--ut-gold) !important;
  border-width: 2px !important;
}
.vc_sep_icon {
  color: var(--ut-gold) !important;
}

/* Inner columns */
.vc_column-inner {
  padding: 20px !important;
}


/* ─────────────────────────────────────────────
   7. CARTES COMPÉTITIONS
   (Alavion team member / pricing / icon box)
   ───────────────────────────────────────────── */

/* Carte team / pricing */
.vc_icon_box,
.wpb_content_element .vc_icon_box,
.alavion-card,
.wpb_content_element .vc_pricing_table {
  background: var(--ut-white) !important;
  border-radius: var(--ut-radius-lg) !important;
  border: 1px solid rgba(0, 0, 0, 0.07) !important;
  box-shadow: var(--ut-shadow-sm) !important;
  transition: transform var(--ut-base) var(--ut-ease),
              box-shadow var(--ut-base) var(--ut-ease) !important;
  overflow: hidden !important;
}
.vc_icon_box:hover,
.alavion-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--ut-shadow-md) !important;
}

/* Icône des icon boxes */
.vc_icon_element .vc_icon_element-icon,
.vc_icon_box .vc_icon_element-icon {
  color: var(--ut-gold) !important;
  border-color: var(--ut-gold) !important;
}
.vc_icon_element-size-xl .vc_icon_element-icon,
.vc_icon_element-size-lg .vc_icon_element-icon {
  background-color: var(--ut-night) !important;
  color: var(--ut-gold) !important;
}

/* Cartes sombres compétitions */
.alavion-comp-card,
.comp-card-dark {
  background: linear-gradient(148deg, var(--ut-night-mid) 0%, var(--ut-night) 100%) !important;
  border-radius: var(--ut-radius-xl) !important;
  overflow: hidden !important;
  border-top: 3px solid var(--ut-gold) !important;
}
.alavion-comp-card h3,
.comp-card-dark h3 {
  color: var(--ut-white) !important;
  text-transform: none !important;
  font-family: var(--ut-font-display) !important;
  font-size: 22px !important;
}
.alavion-comp-card p,
.comp-card-dark p {
  color: rgba(255, 255, 255, 0.60) !important;
}


/* ─────────────────────────────────────────────
   8. FAQ / ACCORDION ALAVION
   ───────────────────────────────────────────── */

/* Accordéon WPBakery */
.ui-accordion .ui-accordion-header,
.wpb_content_element .ui-accordion-header {
  font-family: var(--ut-font-ui) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--ut-night) !important;
  background-color: var(--ut-cream) !important;
  border: none !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
  border-radius: var(--ut-radius-md) !important;
  padding: 16px 20px !important;
  margin-bottom: 4px !important;
  transition: background var(--ut-fast) var(--ut-ease),
              color var(--ut-fast) var(--ut-ease) !important;
}
.ui-accordion .ui-accordion-header:hover {
  background-color: rgba(26, 10, 46, 0.06) !important;
}
.ui-accordion .ui-accordion-header.ui-state-active {
  background-color: var(--ut-night) !important;
  color: var(--ut-white) !important;
  border-left: 3px solid var(--ut-gold) !important;
  border-radius: var(--ut-radius-md) var(--ut-radius-md) 0 0 !important;
}

/* Icône accordéon */
.ui-accordion .ui-accordion-header .ui-icon {
  background-color: var(--ut-gold) !important;
  border-radius: 50% !important;
}

/* Contenu accordéon */
.ui-accordion .ui-accordion-content,
.wpb_content_element .ui-accordion-content {
  font-family: var(--ut-font-body) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: var(--ut-text-mid) !important;
  background-color: var(--ut-white) !important;
  border: 1px solid rgba(0, 0, 0, 0.07) !important;
  border-top: none !important;
  border-radius: 0 0 var(--ut-radius-md) var(--ut-radius-md) !important;
  padding: 20px 22px 24px !important;
}

/* Tabs WPBakery */
.wpb_tabs_nav li a {
  font-family: var(--ut-font-ui) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  color: var(--ut-text-mid) !important;
  padding: 10px 18px !important;
  border-bottom: 2px solid transparent !important;
  transition: color var(--ut-fast) var(--ut-ease) !important;
}
.wpb_tabs_nav li.ui-state-active a {
  color: var(--ut-violet) !important;
  border-bottom-color: var(--ut-gold) !important;
}
.wpb_tab {
  font-family: var(--ut-font-body) !important;
  font-size: 15px !important;
  line-height: 1.70 !important;
}


/* ─────────────────────────────────────────────
   9. COMPTEURS & STATISTIQUES ALAVION
   ───────────────────────────────────────────── */

/* Counter WPBakery */
.vc_counter_number,
[class*="vc_counter"] .vc_counter_number {
  font-family: var(--ut-font-display) !important;
  font-size: clamp(40px, 5vw, 60px) !important;
  font-weight: 700 !important;
  color: var(--ut-gold) !important;
  line-height: 1 !important;
}
.vc_counter_title {
  font-family: var(--ut-font-ui) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.10em !important;
  color: rgba(255, 255, 255, 0.50) !important;
  margin-top: 6px !important;
}

/* Progress bar */
.vc_progress_bar .vc_single_bar .vc_bar {
  background-color: var(--ut-violet) !important;
  border-radius: var(--ut-radius-full) !important;
}
.vc_progress_bar .vc_single_bar {
  background-color: rgba(255, 255, 255, 0.10) !important;
  border-radius: var(--ut-radius-full) !important;
}
.vc_progress_bar .vc_label span {
  font-family: var(--ut-font-ui) !important;
  font-weight: 700 !important;
  color: var(--ut-gold) !important;
}


/* ─────────────────────────────────────────────
   10. GALERIE & MÉDIAS
   ───────────────────────────────────────────── */

/* Images arrondies */
.wpb_single_image img,
.vc_single_image-img,
.wp-post-image,
article img {
  border-radius: var(--ut-radius-lg) !important;
}

/* Galerie WPBakery */
.wpb_gallery .wpb_gallery_slides img,
.vc_images_carousel img {
  border-radius: var(--ut-radius-md) !important;
  transition: transform var(--ut-base) var(--ut-ease) !important;
}
.wpb_gallery .wpb_gallery_slides img:hover,
.vc_images_carousel img:hover {
  transform: scale(1.03) !important;
}

/* Légendes */
.wpb_single_image .wpb_heading,
.vc_figure figcaption,
.gallery-caption {
  font-family: var(--ut-font-ui) !important;
  font-size: 12px !important;
  color: var(--ut-text-muted) !important;
  text-align: center !important;
  margin-top: 8px !important;
}

/* Flèches carousel */
.vc_carousel-control,
.vc_carousel-control .icon-prev,
.vc_carousel-control .icon-next {
  color: var(--ut-gold) !important;
  background: rgba(240, 180, 41, 0.12) !important;
  border-radius: 50% !important;
}

/* Lightbox overlay */
.pswp__bg { background: rgba(13, 5, 32, 0.96) !important; }
.pswp__button { color: var(--ut-white) !important; }


/* ─────────────────────────────────────────────
   11. FOOTER ALAVION
   ───────────────────────────────────────────── */

#footer,
.site-footer,
#colophon,
footer.site-footer,
.footer-wrapper,
.alavion-footer {
  background-color: var(--ut-night) !important;
  color: rgba(255, 255, 255, 0.60) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding-top: 64px !important;
  padding-bottom: 0 !important;
}

/* Titres des widgets footer */
.footer-widget-title,
.site-footer .widget-title,
#footer .widget-title,
.site-footer h3,
.site-footer h4 {
  font-family: var(--ut-font-ui) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: var(--ut-white) !important;
  margin-bottom: 20px !important;
}

/* Texte footer */
.site-footer p,
.site-footer .widget p,
#footer p,
#footer .textwidget {
  font-family: var(--ut-font-body) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: rgba(255, 255, 255, 0.50) !important;
}

/* Liens footer */
.site-footer a,
#footer a,
.footer-menu a {
  color: rgba(255, 255, 255, 0.55) !important;
  font-family: var(--ut-font-body) !important;
  font-size: 14px !important;
  transition: color var(--ut-fast) var(--ut-ease) !important;
  text-decoration: none !important;
}
.site-footer a:hover,
#footer a:hover {
  color: var(--ut-gold) !important;
}

/* Menu footer */
.site-footer .menu li,
.footer-navigation li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
  padding: 8px 0 !important;
}
.site-footer .menu li:last-child {
  border-bottom: none !important;
}

/* Barre de copyright */
.footer-bottom,
.site-info,
.copyright-bar,
#footer-bottom {
  background-color: rgba(0, 0, 0, 0.25) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
  padding: 18px 0 !important;
  margin-top: 48px !important;
  font-family: var(--ut-font-ui) !important;
  font-size: 12px !important;
  color: rgba(255, 255, 255, 0.30) !important;
  text-align: center !important;
}
.footer-bottom a,
.site-info a {
  color: var(--ut-gold) !important;
  font-size: 12px !important;
}

/* Icônes réseaux sociaux */
.social-links a,
.footer-social a,
.social-icons a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: rgba(255, 255, 255, 0.60) !important;
  transition: background var(--ut-fast) var(--ut-ease),
              color var(--ut-fast) var(--ut-ease) !important;
  margin-right: 6px !important;
}
.social-links a:hover,
.footer-social a:hover,
.social-icons a:hover {
  background: var(--ut-gold) !important;
  color: var(--ut-night) !important;
}


/* ─────────────────────────────────────────────
   12. RESPONSIVE MOBILE
   ───────────────────────────────────────────── */

@media (max-width: 991px) {
  .vc_row.wpb_row { padding-top: 48px !important; padding-bottom: 48px !important; }
  h1, .wpb_content_element h1 { font-size: 34px !important; }
  h2, .wpb_content_element h2 { font-size: 26px !important; }
}

@media (max-width: 767px) {
  .vc_row.wpb_row { padding-top: 40px !important; padding-bottom: 40px !important; }
  h1, .wpb_content_element h1 { font-size: 30px !important; }
  h2, .wpb_content_element h2 { font-size: 24px !important; }
  h3, .wpb_content_element h3 { font-size: 18px !important; letter-spacing: 0.04em !important; }
  .vc_btn3 { font-size: 13px !important; padding: 11px 24px !important; }
  .vc_counter_number { font-size: 38px !important; }
  .vc_column-inner { padding: 12px !important; }
  #footer, .site-footer { padding-top: 40px !important; }
  .footer-bottom { margin-top: 32px !important; }
}

@media (max-width: 480px) {
  h1, .wpb_content_element h1 { font-size: 26px !important; }
  h2, .wpb_content_element h2 { font-size: 22px !important; }
  p, .wpb_text_column p { font-size: 15px !important; }
}
