/* Généré automatiquement — demo — ne pas éditer à la main */
:root {
  --brand-primary:        #9e9e9e;
  --brand-primary-rgb:    158, 158, 158;
  --brand-primary-dark:   #2a2a2a;
  --brand-primary-light:  #585858;

  --brand-secondary:      #616161;
  --brand-dark:           #111111;
  --brand-dark-rgb:       17, 17, 17;
  --brand-dark-soft:      #2e2e2e;
  --brand-dark-2:         #3c3c3c;

  --brand-bg-soft:        #fbfbfb;
  --brand-bg-softer:      #f5f5f5;
  --brand-bg-white:       #ffffff;

  --brand-text-heading:   #333333;
  --brand-text-body:      #333333;
  --brand-text-muted:     #666666;
  --brand-text-soft:      #919191;
  --brand-text-on-dark:   rgba(255, 255, 255, 0.85);

  --brand-border:         #bababa;
  --brand-border-dark:    #323232;
  --brand-border-on-dark: rgba(255, 255, 255, 0.20);

  --brand-glow-05:        rgba(158, 158, 158, 0.05);
  --brand-glow-15:        rgba(158, 158, 158, 0.15);
  --brand-glow-25:        rgba(158, 158, 158, 0.25);
  --brand-glow-30:        rgba(158, 158, 158, 0.3);
  --brand-glow-35:        rgba(158, 158, 158, 0.35);
  --brand-glow-45:        rgba(158, 158, 158, 0.45);

  --brand-hero-overlay:     rgba(17, 17, 17, 0.7);
  --brand-hero-overlay-mid: rgba(17, 17, 17, 0.5);
  --brand-hero-overlay-soft:rgba(17, 17, 17, 0.2);

  --brand-nav-text:         #ffffff;
  --brand-nav-text-hover:   #ffdd02;
  --brand-nav-text-active:  #ffdd00;
  --brand-nav-bg:           rgba(255, 255, 255, 0.1);
  --brand-nav-bg-opacity:   10;
  --brand-nav-bg-blur:      15px;

  --brand-font-body:      'Roboto', system-ui, sans-serif;
  --brand-font-heading:   'Montserrat', system-ui, sans-serif;
  --brand-font-display:   'Montserrat', system-ui, sans-serif;

  /* Mapping Bexon (écrase brand-tokens.css section 2 par installateur) */
  --tj-color-theme-primary:    var(--brand-primary);
  --tj-color-theme-bg:         var(--brand-bg-soft);
  --tj-color-theme-bg-2:       var(--brand-bg-soft);
  --tj-color-theme-bg-3:       var(--brand-dark-2);
  --tj-color-theme-dark:       var(--brand-dark);
  --tj-color-theme-dark-2:     var(--brand-dark-soft);
  --tj-color-theme-dark-3:     var(--brand-text-body);
  --tj-color-theme-dark-4:     var(--brand-text-muted);
  --tj-color-heading-primary:  var(--brand-text-heading);
  --tj-color-text-body:        var(--brand-text-body);
  --tj-color-text-body-2:      var(--brand-text-soft);
  --tj-color-text-body-3:      var(--brand-text-muted);
  --tj-color-text-body-4:      var(--brand-dark-soft);
  --tj-color-text-body-5:      var(--brand-text-on-dark);
  --tj-color-grey-1:           var(--brand-bg-softer);
  --tj-color-grey-2:           var(--brand-text-soft);
  --tj-color-common-white:     var(--brand-bg-white);
  --tj-color-border-1:         var(--brand-border);
  --tj-color-border-2:         var(--brand-border-dark);
  --tj-color-border-4:         var(--brand-border-on-dark);
  --tj-ff-body:                var(--brand-font-body);
  --tj-ff-heading:             var(--brand-font-heading);
}

body {
  background-color: var(--brand-bg-softer);
  color: var(--brand-text-body);
}

/* Lueurs & dégradés — pilotés par la palette installateur (remplace le vert Bexon #7D9674) */
[class*="bg-shape"] img[src*="shape-blur"] {
  opacity: 0;
}

.bg-shape-3::after,
.bg-shape-4::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background: radial-gradient(
    ellipse 72% 78% at 38% 88%,
    var(--brand-glow-35) 0%,
    transparent 68%
  );
}

.service-item .service-icon {
  background: linear-gradient(
    -45deg,
    var(--brand-glow-30) 0%,
    transparent 50%,
    var(--brand-glow-30) 100%
  ) !important;
  border-color: var(--brand-glow-15) !important;
}

.tj-working-process--boreal .working-process-area--five .process-item .process-step {
  background: linear-gradient(
    -45deg,
    var(--brand-glow-30) 0%,
    transparent 50%,
    var(--brand-glow-30) 100%
  ) !important;
  border-color: var(--brand-glow-15) !important;
}

.tj-working-process--boreal .working-process-area--five .process-item:hover .process-step {
  background: linear-gradient(
    -45deg,
    var(--brand-glow-45) 0%,
    var(--brand-glow-05) 50%,
    var(--brand-glow-45) 100%
  ) !important;
  border-color: var(--brand-glow-25) !important;
}

.tj-working-process--boreal .working-process-area--five .process-item__num {
  color: var(--brand-primary) !important;
  background-color: var(--brand-glow-15) !important;
}

.tj-slider-item::after {
  background: linear-gradient(
    90deg,
    var(--brand-hero-overlay) 10%,
    var(--brand-hero-overlay-mid) 30%,
    var(--brand-hero-overlay-soft) 60%
  ) !important;
}


/* Titres de section — une seule couleur (accent span = couleur du titre) */
.sec-heading .sec-title span,
.sec-heading.style-2 .sec-title span {
  color: inherit !important;
}


/* Boutons CTA — pilotés par la palette installateur */
:root {
  --brand-btn-bg:         var(--brand-primary);
  --brand-btn-icon-bg:    var(--brand-primary-dark);
  --brand-btn-text:       var(--brand-bg-white);
  --brand-btn-radius:     24px;
  --brand-btn-padding:    5px;
  --brand-btn-padding-lg: 7px;
  --brand-btn-icon-radius: max(0px, calc(var(--brand-btn-radius) - var(--brand-btn-padding)));
  --brand-btn-icon-radius-lg: max(0px, calc(var(--brand-btn-radius) - var(--brand-btn-padding-lg)));
  --brand-btn-hover-fill: var(--brand-dark);
}

.tj-primary-btn:not(.btn-dark):not(.transparent-btn):not(.no-btn-fill),
.tj-primary-btn-lg:not(.btn-dark):not(.transparent-btn):not(.no-btn-fill) {
  background-color: var(--brand-btn-bg) !important;
  border-radius: var(--brand-btn-radius);
}

.tj-primary-btn:not(.btn-dark):not(.transparent-btn):not(.no-btn-fill) .btn-icon,
.tj-primary-btn-lg:not(.btn-dark):not(.transparent-btn):not(.no-btn-fill) .btn-icon {
  background-color: var(--brand-btn-icon-bg) !important;
  border-radius: var(--brand-btn-icon-radius) !important;
}

.tj-primary-btn-lg:not(.btn-dark):not(.transparent-btn):not(.no-btn-fill) .btn-icon {
  border-radius: var(--brand-btn-icon-radius-lg) !important;
}

.tj-primary-btn.btn-dark:not(.no-btn-fill) .btn-icon,
.tj-primary-btn-lg.btn-dark:not(.no-btn-fill) .btn-icon {
  border-radius: var(--brand-btn-icon-radius) !important;
}

.tj-primary-btn-lg.btn-dark:not(.no-btn-fill) .btn-icon {
  border-radius: var(--brand-btn-icon-radius-lg) !important;
}

.tj-primary-btn:not(.btn-dark):not(.transparent-btn):not(.no-btn-fill) .btn-text,
.tj-primary-btn:not(.btn-dark):not(.transparent-btn):not(.no-btn-fill) .btn-text span,
.tj-primary-btn-lg:not(.btn-dark):not(.transparent-btn):not(.no-btn-fill) .btn-text,
.tj-primary-btn-lg:not(.btn-dark):not(.transparent-btn):not(.no-btn-fill) .btn-text span {
  color: var(--brand-btn-text);
}

.tj-primary-btn:not(.no-btn-fill)::before,
.tj-primary-btn-lg:not(.no-btn-fill)::before {
  background-color: var(--brand-btn-hover-fill) !important;
}

.tj-primary-btn.btn-dark:not(.no-btn-fill),
.tj-primary-btn-lg.btn-dark:not(.no-btn-fill) {
  background-color: var(--brand-dark) !important;
}

.tj-primary-btn.btn-dark:not(.no-btn-fill) .btn-icon,
.tj-primary-btn-lg.btn-dark:not(.no-btn-fill) .btn-icon {
  background-color: var(--brand-bg-white) !important;
}

.tj-primary-btn.btn-dark:not(.no-btn-fill)::before,
.tj-primary-btn-lg.btn-dark:not(.no-btn-fill)::before {
  background-color: var(--brand-primary) !important;
}

/* Bandeau CTA footer — teinte de la couleur primaire sur le fond photo */
.tj-footer-section.h5-footer .h5-footer-subscribe.boreal-footer-cta-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    105deg,
    var(--brand-glow-45) 0%,
    rgba(var(--brand-dark-rgb), 0.55) 52%,
    rgba(var(--brand-dark-rgb), 0.82) 100%
  );
}

.tj-footer-section.h5-footer .h5-footer-subscribe.boreal-footer-cta-banner .page-header-overlay {
  opacity: 0.35;
}


/* Simulateur « Estimez votre installation » — teintes pilotées par la palette */
.boreal-sim__step-num {
  background-color: var(--brand-glow-15) !important;
  border-color: var(--brand-glow-30) !important;
}

.boreal-sim__option:hover .boreal-sim__option-inner {
  border-color: var(--brand-glow-45) !important;
}

.boreal-sim__option input[type="radio"]:checked + .boreal-sim__option-inner {
  background-color: var(--brand-glow-15) !important;
  border-color: var(--brand-primary) !important;
}

.boreal-sim__option-icon {
  background-color: var(--brand-glow-15) !important;
}

.boreal-sim__option input[type="radio"]:checked + .boreal-sim__option-inner .boreal-sim__option-icon {
  background-color: var(--brand-primary) !important;
}

.boreal-sim__result {
  background: linear-gradient(135deg, var(--brand-glow-25) 0%, var(--brand-glow-05) 100%) !important;
  border-color: var(--brand-glow-35) !important;
}

.boreal-sim__result-estimate {
  background: linear-gradient(135deg, var(--brand-glow-30) 0%, var(--brand-glow-15) 100%) !important;
  border-color: var(--brand-glow-35) !important;
}


/* Page Installation — en-tête & dégradés pilotés par la palette installateur */
.tj-page-header--installation {
  background-color: var(--brand-dark) !important;
  background-blend-mode: normal !important;
}

.tj-page-header--installation::before {
  background: linear-gradient(
    105deg,
    rgba(var(--brand-dark-rgb), 0.9) 0%,
    rgba(var(--brand-dark-rgb), 0.62) 48%,
    rgba(var(--brand-primary-rgb), 0.22) 100%
  ) !important;
}

.tj-page-header--installation .page-header-overlay {
  display: none !important;
}

.tj-page-header .tj-page-kicker i,
.tj-page-header .tj-page-meta li i,
.tj-page-title span {
  color: var(--brand-primary) !important;
}

.boreal-issues-section .sec-heading .sub-title i {
  color: var(--brand-primary) !important;
}

.boreal-alu-rex-teaser-section .sec-heading .sub-title i {
  color: var(--brand-primary) !important;
}

.boreal-feature-card:hover .boreal-feature-card__icon {
  background-color: var(--brand-glow-15) !important;
}

.boreal-issue-card:hover {
  background-color: var(--brand-glow-05) !important;
  border-color: var(--brand-primary) !important;
}

.boreal-issue-card__icon {
  background-color: var(--brand-glow-15) !important;
  color: var(--brand-primary) !important;
}

.boreal-issue-card:hover .boreal-issue-card__icon {
  background-color: var(--brand-primary) !important;
  color: var(--brand-dark) !important;
}

.boreal-issues-cta {
  background-image: linear-gradient(90deg, var(--brand-glow-15) 0%, var(--brand-glow-05) 100%) !important;
  border-color: var(--brand-glow-25) !important;
}

.boreal-product-teaser__tag {
  background-color: var(--brand-glow-25) !important;
  color: var(--brand-dark) !important;
}

.boreal-install-section__badge-icon,
.boreal-install-section__list .list-items li i {
  background-color: var(--brand-primary) !important;
}

.boreal-install-section__badge-icon {
  color: var(--brand-dark) !important;
}

.boreal-install-section__list .list-items li i {
  color: var(--brand-bg-white) !important;
}
