/* =============================================================
   BCS GRADATION — Redesign CSS v3
   Sélecteurs exacts calqués sur le CSS généré par Elementor
   ID page : 1170101
   ============================================================= */

@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=Barlow:wght@300;400;500;600&display=swap');

:root {
  --bcs-night:      #0f1228;
  --bcs-navy:       #161b3a;
  --bcs-indigo:     #1e2556;
  --bcs-violet:     #2d1f6e;
  --bcs-violet-acc: #6a4fc8;
  --bcs-blue:       #3a7bd5;
  --bcs-blue-light: #5a9ae8;
  --bcs-white-off:  #f7f6f2;
  --bcs-white-warm: #efeee9;
  --bcs-text-dark:  #1a1f3a;
  --bcs-text-muted: #5a6070;
  --bcs-border:     rgba(26,31,58,0.1);
}

/* ── HEADER — restreint à la page d'accueil uniquement ───────── */
body.page-index #header {
  background-color: var(--bcs-night) !important;
}
body.page-index #header .container { width: auto !important; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
body.page-index #header a:hover,
body.page-index #header a:focus,
body.page-index #header .top-menu a:hover {
  color: var(--bcs-blue-light) !important;
}

/* ── TYPO GLOBALE PAGE INDEX ─────────────────────────────────
   Surcharge la règle existante dans 1170101.css qui impose Outfit  */
body.page-index,
body.page-index p,
body.page-index li,
body.page-index a,
body.page-index span,
body.page-index div,
body.page-index .elementor-widget-text-editor,
body.page-index .elementor-widget-text-editor p {
  font-family: 'Barlow', sans-serif !important;
}

/* Tous les titres heading de la page index */
.elementor-widget-heading .elementor-heading-title {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: -0.5px !important;
  line-height: 1.0 !important;
}

/* ── HERO (17522b52) — fond dégradé nuit/violet ──────────────*/
.elementor-1170101 .elementor-element.elementor-element-17522b52:not(.elementor-motion-effects-element-type-background),
.elementor-1170101 .elementor-element.elementor-element-17522b52 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: var(--bcs-night) !important;
  background-image: linear-gradient(135deg, var(--bcs-night) 0%, var(--bcs-navy) 40%, var(--bcs-violet) 100%) !important;
}
.elementor-1170101 .elementor-element.elementor-element-17522b52 > .elementor-background-overlay {
  background-color: transparent !important;
  opacity: 0 !important;
}

/* Titre principal hero — 2395a404 — Montserrat 40px → Barlow Condensed grand */
.elementor-1170101 .elementor-element.elementor-element-2395a404 .elementor-heading-title {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: clamp(52px, 7vw, 80px) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: -1px !important;
  line-height: 0.95 !important;
  color: #ffffff !important;
}

/* Texte sous-titre hero — 300031a4 — Roboto 27px */
.elementor-1170101 .elementor-element.elementor-element-300031a4 {
  font-family: 'Barlow', sans-serif !important;
  font-size: 15px !important;
  font-weight: 300 !important;
  color: rgba(247,246,242,0.65) !important;
  line-height: 1.65 !important;
}

/* Boutons hero — 696ce1f2 et 42d16b18 */
.elementor-element-696ce1f2 .elementor-button,
.elementor-element-42d16b18 .elementor-button {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  border-radius: 4px !important;
  transition: all 0.2s !important;
}
.elementor-element-696ce1f2 .elementor-button {
  background-color: var(--bcs-blue) !important;
  border-color: var(--bcs-blue) !important;
  color: #ffffff !important;
}
.elementor-element-696ce1f2 .elementor-button:hover {
  background-color: var(--bcs-blue-light) !important;
}
.elementor-element-42d16b18 .elementor-button {
  background-color: transparent !important;
  border-color: rgba(247,246,242,0.3) !important;
  color: rgba(247,246,242,0.8) !important;
}
.elementor-element-42d16b18 .elementor-button:hover {
  border-color: rgba(247,246,242,0.6) !important;
  color: #ffffff !important;
}

/* ── SECTION "NOTRE APPROCHE" (527f1e82) — blanc cassé ───────*/
.elementor-1170101 .elementor-element.elementor-element-527f1e82:not(.elementor-motion-effects-element-type-background),
.elementor-1170101 .elementor-element.elementor-element-527f1e82 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: var(--bcs-white-off) !important;
  background-image: none !important;
}

/* Titre "Notre approche" — clamp(3rem,7vw,6rem) Bebas Neue → Barlow Condensed */
.elementor-element-527f1e82 h2.elementor-heading-title {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: clamp(2.5rem, 5vw, 5rem) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  color: var(--bcs-text-dark) !important;
  letter-spacing: -0.5px !important;
  line-height: 1.0 !important;
}

/* ── SECTION FEATURES BOÎTIER (7839e02e) — bleu nuit ─────────*/
.elementor-1170101 .elementor-element.elementor-element-7839e02e:not(.elementor-motion-effects-element-type-background),
.elementor-1170101 .elementor-element.elementor-element-7839e02e > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: var(--bcs-night) !important;
  background-image: none !important;
}

/* Titres features h3 — Bebas Neue → Barlow Condensed */
.elementor-element-7839e02e h3.elementor-heading-title {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #ffffff !important;
  line-height: 1.2 !important;
}

/* Texte features — remplace Roboto 20px par Barlow lisible */
.elementor-1170101 .elementor-element.elementor-element-1fce541a .elementor-heading-title,
.elementor-1170101 .elementor-element.elementor-element-20132784 .elementor-heading-title,
.elementor-1170101 .elementor-element.elementor-element-75e7ea5e .elementor-heading-title {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  line-height: 1.2 !important;
}

/* Paragraphes features */
.elementor-1170101 .elementor-element.elementor-element-64f28241,
.elementor-1170101 .elementor-element.elementor-element-ae58118,
.elementor-1170101 .elementor-element.elementor-element-4bb3bed4 {
  font-family: 'Barlow', sans-serif !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: rgba(247,246,242,0.65) !important;
  line-height: 1.7 !important;
}

/* ── SECTION TARIFS TITRE (bf91ea4) — indigo ─────────────────*/
.elementor-1170101 .elementor-element.elementor-element-bf91ea4:not(.elementor-motion-effects-element-type-background),
.elementor-1170101 .elementor-element.elementor-element-bf91ea4 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: var(--bcs-indigo) !important;
  background-image: none !important;
}

.elementor-element-bf91ea4 h2.elementor-heading-title,
.elementor-element-bf91ea4 h3.elementor-heading-title {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: clamp(2rem, 4vw, 3.5rem) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  letter-spacing: -0.5px !important;
  line-height: 1.0 !important;
}

/* ── SECTION CARTES TARIFS (62879e73) — blanc chaud ──────────*/
.elementor-1170101 .elementor-element.elementor-element-62879e73:not(.elementor-motion-effects-element-type-background),
.elementor-1170101 .elementor-element.elementor-element-62879e73 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: var(--bcs-white-warm) !important;
  background-image: none !important;
}

.elementor-element-62879e73 h3.elementor-heading-title {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  color: var(--bcs-text-dark) !important;
  line-height: 1.1 !important;
}

/* Texte liste tarifs — Helvetica 17px/700 → Barlow */
.elementor-1170101 .elementor-element.elementor-element-ed5df4c .elementor-icon-list-item > * {
  font-family: 'Barlow', sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--bcs-text-muted) !important;
}

/* Bouton tarif — Helvetica 20px → Barlow Condensed */
.elementor-1170101 .elementor-element.elementor-element-01082d3 a.elementor-button {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  border-radius: 4px !important;
}

/* Boutons tarifs généraux */
.elementor-element-24614aa0 .elementor-button.elementor-button {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  background-color: var(--bcs-blue) !important;
  border-color: var(--bcs-blue) !important;
  color: #ffffff !important;
  border-radius: 4px !important;
}

/* ── SECTION GÉOGRAPHIE (4d690c8e) — dégradé nuit/violet ─────*/
.elementor-1170101 .elementor-element.elementor-element-4d690c8e:not(.elementor-motion-effects-element-type-background),
.elementor-1170101 .elementor-element.elementor-element-4d690c8e > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: var(--bcs-navy) !important;
  background-image: linear-gradient(135deg, var(--bcs-night) 0%, var(--bcs-indigo) 60%, var(--bcs-violet) 100%) !important;
}

/* Titre géo — Tahoma 40px → Barlow Condensed */
.elementor-1170101 .elementor-element.elementor-element-7cecde6e .elementor-heading-title {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: clamp(2rem, 4vw, 3.5rem) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  letter-spacing: -0.5px !important;
  line-height: 1.0 !important;
}
.elementor-1170101 .elementor-element.elementor-element-4d690c8e .elementor-counter-number-wrapper {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 900 !important;
  color: var(--bcs-blue-light) !important;
}
.elementor-1170101 .elementor-element.elementor-element-4d690c8e .elementor-counter-title {
  font-family: 'Barlow', sans-serif !important;
  color: rgba(247,246,242,0.5) !important;
}

/* ── SECTION TCG LOGOS (c2af9e7) — nuit ─────────────────────*/
.elementor-1170101 .elementor-element.elementor-element-c2af9e7:not(.elementor-motion-effects-element-type-background),
.elementor-1170101 .elementor-element.elementor-element-c2af9e7 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: var(--bcs-night) !important;
  background-image: none !important;
}

/* ── SECTION CTA FINALE (78acd632) — dégradé navy/violet ─────*/
.elementor-1170101 .elementor-element.elementor-element-78acd632:not(.elementor-motion-effects-element-type-background),
.elementor-1170101 .elementor-element.elementor-element-78acd632 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: var(--bcs-navy) !important;
  background-image: linear-gradient(135deg, var(--bcs-navy) 0%, var(--bcs-violet) 100%) !important;
}
.elementor-1170101 .elementor-element.elementor-element-78acd632 .elementor-heading-title {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
}
.elementor-1170101 .elementor-element.elementor-element-78acd632 .elementor-button {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  background-color: var(--bcs-blue) !important;
  border-color: var(--bcs-blue) !important;
  color: #ffffff !important;
  border-radius: 4px !important;
}

/* ── FOOTER — blanc cassé ────────────────────────────────────*/
#footer {
  background-color: var(--bcs-white-off) !important;
  background-image: none !important;
  border-top: 1px solid var(--bcs-border) !important;
}
#footer,
#footer *:not(i):not(.material-icons) {
  color: var(--bcs-text-dark) !important;
}
#footer .h3 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  font-size: 14px !important;
  color: var(--bcs-text-dark) !important;
}
#footer a {
  color: var(--bcs-text-muted) !important;
  font-size: 13px !important;
  transition: color 0.2s !important;
}
#footer a:hover,
#footer a:focus {
  color: var(--bcs-violet-acc) !important;
}
#footer p,
#footer li,
#footer span:not(.material-icons) {
  color: var(--bcs-text-muted) !important;
  font-size: 13px !important;
}

/* CORRECTION PLEINE LARGEUR — HOME BCS v3 */
body.page-index #wrapper { padding-top: 0 !important; }
body.page-index .container { 
  width: auto !important; 
  max-width: none !important; 
  margin-left: 0 !important; 
  margin-right: 0 !important; 
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.page-index .row { margin-left: 0 !important; margin-right: 0 !important; }
body.page-index #content-wrapper { padding: 0 !important; }
body.page-index .bcs-home { width: 100% !important; }
body.page-index #header .container { width: auto !important; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
/* Dégradé global toutes pages sauf home */
body:not(.page-index) #wrapper,
body:not(.page-index) #main {
  background: linear-gradient(135deg, #0f1228 0%, #161b3a 40%, #2d1f6e 100%) !important;
  min-height: 100vh;
}

body:not(.page-index) {
  background: #0f1228 !important;
}
/* Adresses tunnel de paiement */
body.page-checkout #order-summary-addresses,
body.page-checkout .address-item,
body.page-checkout .address-item p,
body.page-checkout .address-item span,
body.page-checkout .address-item div {
  color: white !important;
}
/* Texte adresses tunnel paiement */
body.page-order .card-block,
body.page-checkout .card-block {
  color: white !important;
}
/* ── PAGE CONFIRMATION DE COMMANDE ── */

/* Dégradé */
body.page-order-confirmation #wrapper {
  background: linear-gradient(135deg, #0f1228 0%, #161b3a 40%, #2d1f6e 100%) !important;
  min-height: 100vh;
}
body.page-order-confirmation {
  background: #0f1228 !important;
}

/* Cacher le fil d'Ariane */
body.page-order-confirmation nav.breadcrumb {
  display: none !important;
}

/* Footer dégradé */
body.page-order-confirmation #footer {
  background: linear-gradient(135deg, #161b3a 0%, #2d1f6e 100%) !important;
}
body.page-order-confirmation #footer *,
body.page-order-confirmation #footer a {
  color: white !important;
}

/* Texte blanc dans les cards */
body.page-order-confirmation .card,
body.page-order-confirmation .card-block,
body.page-order-confirmation .card p,
body.page-order-confirmation .card li,
body.page-order-confirmation .card td,
body.page-order-confirmation .card span,
body.page-order-confirmation .card h3,
body.page-order-confirmation .card h4 {
  color: white !important;
  background: transparent !important;
}
body.page-order-confirmation #content-wrapper,
body.page-order-confirmation #content.page-order-confirmation,
body.page-order-confirmation section#content,
body.page-order-confirmation #content-hook_order_confirmation,
body.page-order-confirmation .order-confirmation-table,
body.page-order-confirmation .total-value,
body.page-order-confirmation .total-value td {
  background: transparent !important;
}
/* Formatage nom produit récap commande */
body.page-order-confirmation .order-line .details span,
body.page-order .order-line .details span {
  white-space: pre-line !important;
  display: block !important;
  line-height: 1.8 !important;
}
body.page-order-confirmation #footer a:hover,
body.page-order-confirmation #footer a:focus {
  color: #5a9ae8 !important;
}
.geo-pill .geo-time,
.geo-pill .geo-city {
  color: white !important;
}
.section-boitiers .boitiers-inner {
  align-items: stretch !important;
}
.section-boitiers .boitiers-img {
  height: 100% !important;
  overflow: hidden !important;
}
.section-boitiers .boitiers-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}