
/* __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 */
/* ==========================================================================
   sex-treffen-privat.de — direction « éditorial sombre »
   Encre anthracite, filet or en double ligne (comme un journal), footer en
   colonnes serrées et séparées. Ne touche que la barre latérale (le header
   de ce gabarit Astro), le bandeau mobile et le footer.
   ========================================================================== */

/* --- Palette locale, scopée aux trois zones (ne fuit pas vers le contenu) */
html:not(#_) .sidebar, html:not(#_) .mobile-guest-top, html:not(#_) footer.footer-v3{
  --ed-fond: #16161c;
  --ed-fond-clair: #1e1e26;
  --ed-texte: #e9e6df;
  --ed-att: #a9a4b0;
  --ed-filet: #c9a24b;
}

/* ============================ BARRE LATÉRALE (desktop) ================= */
html:not(#_) .sidebar{
  background: var(--ed-fond);
  border-right: 1px solid #2a2a33;
}
html:not(#_) .sidebar-inner{
  animation: ed-glisse-x .5s ease both;}

/* Logo + double filet, signature de la direction */
html:not(#_) .sb-logo{
  border-bottom: 3px double var(--ed-filet);
  padding-bottom: 14px;
  margin-bottom: 6px;
}
html:not(#_) .sb-logo-text{
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing: .05em;
  color: var(--ed-texte);
  font-weight: 600;
}
html:not(#_) .sb-logo-dot svg{ color: var(--ed-filet); }

html:not(#_) .sb-section-title span{
  display: inline-block;
  font-family: Georgia, serif;
  font-size: .72rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--ed-att);
  border-bottom: 1px solid #34343e;
  padding-bottom: 6px;
}

html:not(#_) .sb-link{
  position: relative;
  color: var(--ed-att);
  transition: color .25s ease;
}
html:not(#_) .sb-link .sb-ico{ opacity: .75; transition: opacity .25s ease; }
html:not(#_) .sb-link::after{
  content: "";
  position: absolute;
  left: 14px; right: 14px; bottom: 4px;
  height: 1px;
  background: var(--ed-filet);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .3s ease;
}
html:not(#_) .sb-link:hover, html:not(#_) .sb-link.active{ color: var(--ed-texte); }
html:not(#_) .sb-link:hover::after, html:not(#_) .sb-link.active::after{ transform: scaleX(1); }
html:not(#_) .sb-link:hover .sb-ico, html:not(#_) .sb-link.active .sb-ico{ opacity: 1; }

html:not(#_) .sb-map-quick-link{
  color: var(--ed-att);
  border: 1px solid #33333d;
  transition: color .2s ease, border-color .2s ease;
}
html:not(#_) .sb-map-quick-link:hover{ color: var(--ed-texte); border-color: var(--ed-filet); }

html:not(#_) .sb-silo-region{ color: var(--ed-att); border-bottom: 1px solid #26262e; }
html:not(#_) .sb-silo-region:hover{ color: var(--ed-texte); }
html:not(#_) .sb-silo-ville{ color: var(--ed-att); transition: color .2s ease; }
html:not(#_) .sb-silo-ville:hover{ color: var(--ed-filet); }

@keyframes ed-glisse-x {
  from { opacity: 0; transform: translateX(-8px); }
  to   { opacity: 1; transform: translateX(0); }
}

/* ============================ BANDEAU MOBILE ============================ */
html:not(#_) .mobile-guest-top{
  background: var(--ed-fond) !important;
  border-bottom: 3px double var(--ed-filet);
  animation: ed-glisse-y .45s ease both;
}
html:not(#_) .mobile-guest-head{ padding-block: 10px; }
html:not(#_) .mobile-guest-brand{
  color: var(--ed-texte) !important;
  font-family: Georgia, serif;
  letter-spacing: .04em;
}
html:not(#_) .mobile-guest-login{
  color: var(--ed-att) !important;
  border: 1px solid #33333d;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  transition: color .2s ease, border-color .2s ease;
}
html:not(#_) .mobile-guest-login:hover{ color: var(--ed-texte) !important; border-color: var(--ed-filet); }

html:not(#_) .mobile-guest-cta{ background: var(--ed-fond-clair) !important; }
html:not(#_) .mobile-guest-cta-offer{ color: var(--ed-att) !important; }
html:not(#_) .mobile-guest-cta-kw{ color: var(--ed-texte) !important; font-family: Georgia, serif; }
html:not(#_) .mobile-guest-timer-label{ color: var(--ed-att) !important; }
html:not(#_) .mobile-guest-timer{ color: var(--ed-filet) !important; }
html:not(#_) .mobile-guest-cta-btn{
  background: var(--ed-filet) !important;
  color: #16161c !important;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  transition: transform .2s ease, box-shadow .2s ease;
}
html:not(#_) .mobile-guest-cta-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(201, 162, 75, .35);
}

@keyframes ed-glisse-y {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ============================ FOOTER : colonnes serrées ================= */
html:not(#_) footer.footer-v3{
  background: var(--ed-fond);
  border-top: 3px double var(--ed-filet);
  color: var(--ed-att);
}
html:not(#_) footer.footer-v3 .footer-top{
  border-bottom: 1px solid #262630;
  padding-bottom: 18px;
  margin-bottom: 18px;
}
html:not(#_) footer.footer-v3 .footer-brand h3{
  font-family: Georgia, serif;
  color: var(--ed-texte);
  letter-spacing: .03em;
}
html:not(#_) footer.footer-v3 .footer-brand p, html:not(#_) footer.footer-v3 .footer-newsletter p{ color: var(--ed-att); }
html:not(#_) footer.footer-v3 .btn-primary{
  background: var(--ed-filet);
  color: #16161c;
  border: none;
  transition: transform .2s ease;
}
html:not(#_) footer.footer-v3 .btn-primary:hover{ transform: translateY(-1px); }

html:not(#_) footer.footer-v3 .footer-grid{ gap: 10px 22px; }
html:not(#_) footer.footer-v3 .footer-col + .footer-col{
  border-left: 1px solid #24242e;
  padding-left: 22px;
}
html:not(#_) footer.footer-v3 .footer-col h4{
  font-family: Georgia, serif;
  font-size: .78rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--ed-texte);
  border-bottom: 1px solid #34343e;
  padding-bottom: 6px;
  margin-bottom: 8px;
}
html:not(#_) footer.footer-v3 .footer-col ul li{ line-height: 1.55; }
html:not(#_) footer.footer-v3 .footer-col a{
  color: var(--ed-att);
  transition: color .2s ease, padding-left .2s ease;
}
html:not(#_) footer.footer-v3 .footer-col a:hover{ color: var(--ed-filet); padding-left: 3px; }

html:not(#_) footer.footer-v3 .footer-bottom{
  border-top: 1px solid #24242e;
  color: var(--ed-att);
  margin-top: 14px;
  padding-top: 12px;
}
html:not(#_) footer.footer-v3 .footer-bottom a{ color: var(--ed-att); }

@media (max-width: 640px) {
  html:not(#_) footer.footer-v3 .footer-col + .footer-col{
    border-left: none;
    padding-left: 0;
    border-top: 1px solid #24242e;
    padding-top: 12px;
  }
}

/* --- Repli sans animation ni transition ------------------------------- */
@media (prefers-reduced-motion: reduce) {
  html:not(#_) .sidebar, html:not(#_) .mobile-guest-top, html:not(#_) .sb-link, html:not(#_) .sb-link::after, html:not(#_) .sb-map-quick-link, html:not(#_) .sb-silo-ville, html:not(#_) .mobile-guest-login, html:not(#_) .mobile-guest-cta-btn, html:not(#_) footer.footer-v3 .btn-primary, html:not(#_) footer.footer-v3 .footer-col a{
    animation: none !important;
    transition: none !important;
  }
}

@media (prefers-reduced-motion: reduce){html:not(#_) .sidebar-inner{animation:none !important;transition:none !important;}}
html:not(#_) .sidebar-inner{scrollbar-width:thin;scrollbar-color:rgba(128,128,128,.45) transparent;}
/* __END_DESIGN_SITE__ */
