/*
 Theme Name:  Salon Berlin Ultra Child (Clean)
 Theme URI:   https://salon-berlin.hamburg/
 Description: Clean & elegant child theme for Themify Ultra. Fresh slug to avoid conflicts.
 Author:      ChatGPT
 Version:     1.0.0
 Template:    themify-ultra
 Text Domain: sbh-clean-child
*/

:root{
  --black:#0F1113; --graphite:#2B2E32; --concrete:#B6B8BC;
  --white:#FFFFFF; --steel:#C9CCD1; --copper:#B87333;
}
/* Scope styles so they win against other child styles */
body.sbh-clean{
  color:var(--black);
}
body.sbh-clean a{ text-decoration:none; border-bottom:1px solid transparent; }
body.sbh-clean a:hover{ border-bottom:1px solid var(--copper); }

body.sbh-clean .btn, 
body.sbh-clean .button, 
body.sbh-clean .module-button a, 
body.sbh-clean .menu-item.book a, 
body.sbh-clean .sbp-booking-cta{
  background:var(--copper); color:#fff !important;
  border-radius:8px; padding:.85rem 1.25rem; letter-spacing:.02em; display:inline-block;
}
body.sbh-clean .btn:hover, 
body.sbh-clean .button:hover, 
body.sbh-clean .module-button a:hover, 
body.sbh-clean .menu-item.book a:hover, 
body.sbh-clean .sbp-booking-cta:hover{
  filter:brightness(0.92);
}

body.sbh-clean.scrolled #headerwrap{ background:#fff; box-shadow:0 6px 20px rgba(0,0,0,.06); }

body.sbh-clean .hero-title h1{ font-family:"Playfair Display",serif; font-weight:600; letter-spacing:-.02em; }
body.sbh-clean .hero-sub{ font-family:Inter,system-ui; font-size:1.1rem; opacity:.9; }

body.sbh-clean .card{
  background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:12px;
  box-shadow:0 6px 18px rgba(0,0,0,.05);
}

body.sbh-clean .gallery img{ transition:filter .3s ease, transform .3s ease; filter:saturate(.75); }
body.sbh-clean .gallery a:hover img{ filter:saturate(1); transform:scale(1.02); }

body.sbh-clean #footer{ background:var(--graphite); color:#fff; }
body.sbh-clean #footer a{ color:#fff; border-bottom:1px solid rgba(255,255,255,.25); }

/* Mobile booking bar */
.sbp-booking-bar{ display:none; }
@media (max-width:980px){
  body{ padding-bottom:74px; }
  .sbp-booking-bar{
    position:fixed; left:0; right:0; bottom:0; z-index:9999; display:flex;
    background:#fff; border-top:1px solid rgba(0,0,0,.08);
    padding:.6rem .9rem; gap:.6rem; align-items:center;
  }
  .sbp-booking-cta{
    flex:1; text-align:center; background:var(--copper);
    color:#fff; padding:.9rem 1rem; border-radius:10px;
    font-weight:600; box-shadow:0 6px 14px rgba(184,115,51,.25);
  }
}
