
/* __DESIGN_SITE__ */
html:not(#_) .sidebar-inner{background:transparent;box-shadow:none;}
/* ^ posé par design_site.py : le panneau blanc d'Astro recouvrait le fond du .sidebar */
/* ===== Direction : industriel — gris acier, angles vifs, liseré orange, footer à bandes ===== */
/* Palette : acier #24272b / #34383d, texte clair #e7e9ea, accent orange #ff6d1f */

/* --- Barre latérale desktop (le "header" de ce gabarit) --- */
html:not(#_) .sidebar{
  background: linear-gradient(180deg, #2b2f33 0%, #1e2124 100%);
  border-right: 3px solid #ff6d1f;
  overflow: hidden;
}
/* liseré orange qui glisse lentement le long du bord droit */
html:not(#_) aside.sidebar::after{
  content: "";
  position: absolute;
  top: 0; right: -1px; bottom: 0;
  width: 3px;
  background: linear-gradient(180deg, transparent 0%, #ffb066 45%, #ff6d1f 55%, transparent 100%);
  background-size: 100% 220%;
  animation: sib-liseret 6s linear infinite;
}
@keyframes sib-liseret {
  0%   { background-position: 0 0%; }
  100% { background-position: 0 100%; }
}

html:not(#_) .sb-logo{ gap: 10px; }
html:not(#_) .sb-logo-text{
  color: #f2f3f4;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
  font-size: .92em;
}
html:not(#_) .sb-logo-dot{
  background: #ff6d1f;
  border-radius: 0; /* angles vifs : pas de rond, la "vis" devient un boulon carré */
  box-shadow: 0 0 0 2px #1e2124, 0 0 0 3px #4a4f54;
}

html:not(#_) .sb-section-title span{
  color: #9aa1a7;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .72em;
}
html:not(#_) .sb-section-title::before{
  content: "";
  display: inline-block;
  width: 8px; height: 2px;
  background: #ff6d1f;
  margin-right: 6px;
  vertical-align: middle;
}

html:not(#_) .sb-link{
  color: #cfd3d6;
  border-radius: 0;
  border-left: 3px solid transparent;
  transition: color .18s ease, border-color .18s ease, background-color .18s ease;
}
html:not(#_) .sb-link:hover, html:not(#_) .sb-link.active{
  color: #ffffff;
  background: rgba(255, 109, 31, .12);
  border-left-color: #ff6d1f;
}
html:not(#_) .sb-ico{ color: #ff6d1f; }

html:not(#_) .sb-map-quick-link{
  border-radius: 0;
  border: 1px solid #4a4f54;
  color: #e7e9ea;
}
html:not(#_) .sb-map-quick-link:hover{ border-color: #ff6d1f; color: #ff6d1f; }

html:not(#_) .sb-silo-region{
  color: #d7dadc;
  border-radius: 0;
  transition: color .18s ease;
}
html:not(#_) .sb-silo-region:hover{ color: #ff6d1f; }
html:not(#_) .sb-silo-ville{ color: #9aa1a7; }
html:not(#_) .sb-silo-ville:hover{ color: #ffb066; }

/* --- Bandeau mobile (guest top) --- */
html:not(#_) .mobile-guest-top{
  background: linear-gradient(180deg, #2b2f33 0%, #1e2124 100%) !important;
  border-bottom: 3px solid #ff6d1f;
  overflow: hidden;
}
html:not(#_) .mobile-guest-top::after{
  content: "";
  position: absolute;
  left: -20%; right: -20%; bottom: -3px;
  height: 3px;
  background: linear-gradient(90deg, transparent 0%, #ffb066 45%, #ff6d1f 55%, transparent 100%);
  background-size: 220% 100%;
  animation: sib-liseret-h 6s linear infinite;
}
@keyframes sib-liseret-h {
  0%   { background-position: 0% 0; }
  100% { background-position: 100% 0; }
}

html:not(#_) .mobile-guest-brand{
  color: #f2f3f4 !important;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
html:not(#_) .mobile-guest-login{
  color: #d7dadc !important;
  border: 1px solid #4a4f54;
  border-radius: 0;
  padding: 6px 10px;
}
html:not(#_) .mobile-guest-login:hover{ border-color: #ff6d1f; color: #ff6d1f !important; }

html:not(#_) .mobile-guest-cta-offer{ color: #ffb066 !important; }
html:not(#_) .mobile-guest-cta-kw{ color: #f2f3f4 !important; font-weight: 700; }
html:not(#_) .mobile-guest-timer-label{ color: #9aa1a7 !important; }
html:not(#_) .mobile-guest-timer{
  color: #ff6d1f !important;
  font-variant-numeric: tabular-nums;
  letter-spacing: .04em;
}

html:not(#_) .mobile-guest-cta-btn{
  background: #ff6d1f !important;
  color: #1e2124 !important;
  border-radius: 0 !important; /* angles vifs */
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 3px 3px 0 #1e2124, 3px 3px 0 3px #4a4f54;
  transition: transform .15s ease, box-shadow .15s ease;
}
html:not(#_) .mobile-guest-cta-btn:hover{
  transform: translate(-1px, -1px);
  box-shadow: 4px 4px 0 #1e2124, 4px 4px 0 3px #4a4f54;
}

/* --- Pied de page : footer à bandes --- */
html:not(#_) footer.footer-v2{
  background:
    repeating-linear-gradient(
      135deg,
      #24272b 0px, #24272b 26px,
      #2b2f33 26px, #2b2f33 52px
    );
  border-top: 4px solid #ff6d1f;
  position: relative;
}
html:not(#_) footer.footer-v2::before{
  content: "";
  position: absolute;
  top: -4px; left: 0; right: 0; height: 4px;
  background: repeating-linear-gradient(90deg, #ff6d1f 0 24px, #ffb066 24px 28px);
  opacity: .9;
}

html:not(#_) .footer-logo{
  color: #f2f3f4 !important;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
html:not(#_) .footer-links a{
  color: #c7cbce;
  position: relative;
  padding-bottom: 2px;
}
html:not(#_) .footer-links a::after{
  content: "";
  position: absolute;
  left: 0; right: 100%; bottom: -2px;
  height: 2px;
  background: #ff6d1f;
  transition: right .2s ease;
}
html:not(#_) .footer-links a:hover{ color: #ffffff; }
html:not(#_) .footer-links a:hover::after{ right: 0; }

html:not(#_) .footer-copy{
  color: #8b9096;
  letter-spacing: .03em;
}

/* --- Accessibilité : on coupe toute animation si demandé --- */
@media (prefers-reduced-motion: reduce) {
  html:not(#_) aside.sidebar::after, html:not(#_) .mobile-guest-top::after{
    animation: none;
  }
  html:not(#_) .mobile-guest-cta-btn, html:not(#_) .footer-links a::after{
    transition: none;
  }
}
html:not(#_) .sidebar-inner{scrollbar-width:thin;scrollbar-color:rgba(128,128,128,.45) transparent;}
/* __END_DESIGN_SITE__ */
