
/* LUMA Skin Atelier — editorial luxury identity */
:root {
  --lu-ink: #1d1b1b;
  --lu-cream: #f7f2ea;
  --lu-pearl: #fffdf9;
  --lu-gold: #c79a4b;
  --lu-rose: #cda89d;
  --lu-line: rgba(54,43,38,.13);
}

.header {
  min-height: 88px !important;
  background: rgba(29,27,27,.97) !important;
  border-bottom: 1px solid rgba(199,154,75,.24) !important;
  box-shadow: 0 10px 34px rgba(29,27,27,.18) !important;
  backdrop-filter: blur(18px);
}
.header__content { min-height: 88px !important; }
.header__content__primary__left__logo {
  width: 190px !important;
  min-width: 190px !important;
  height: 62px !important;
  display: flex !important;
  align-items: center !important;
}
.header__content__primary__left__logo img {
  width: 100% !important;
  height: 62px !important;
  max-width: 190px !important;
  object-fit: contain !important;
  object-position: left center !important;
}
.header a, .header button { color: var(--lu-cream) !important; }
.header a:hover { color: #e4c57f !important; }
.header .ui-button {
  border-color: rgba(199,154,75,.52) !important;
}

.hero {
  min-height: 570px !important;
  position: relative !important;
  isolation: isolate;
  overflow: hidden;
}
.hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(29,27,27,.88) 0%, rgba(29,27,27,.66) 43%, rgba(29,27,27,.16) 78%),
    linear-gradient(0deg, rgba(29,27,27,.62) 0%, transparent 55%) !important;
}
.hero__content-wrapper {
  position: relative !important;
  z-index: 2 !important;
  max-width: 800px !important;
  padding-top: 76px !important;
  padding-bottom: 76px !important;
}
.hero__title h1, .hero h1 {
  color: var(--lu-pearl) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(47px, 5.4vw, 76px) !important;
  font-weight: 500 !important;
  line-height: 1.02 !important;
  letter-spacing: -.035em !important;
  max-width: 790px !important;
  text-shadow: 0 4px 30px rgba(0,0,0,.34) !important;
}
.hero__content-wrapper p {
  color: rgba(255,253,249,.92) !important;
  font-size: clamp(17px, 1.45vw, 20px) !important;
  line-height: 1.65 !important;
  max-width: 690px !important;
  text-shadow: 0 2px 16px rgba(0,0,0,.34) !important;
}
.hero__cta .ui-button {
  min-height: 52px !important;
  padding: 0 30px !important;
  border-radius: 2px !important;
  background: linear-gradient(135deg, #d8b86b, #b88938) !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  color: #211d18 !important;
  font-weight: 700 !important;
  letter-spacing: .01em !important;
  box-shadow: 0 16px 36px rgba(80,55,20,.26) !important;
  transition: transform .22s ease, box-shadow .22s ease !important;
}
.hero__cta .ui-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 21px 44px rgba(80,55,20,.34) !important;
}

.services__wrapper {
  background: linear-gradient(180deg, #282629 0%, #201f21 100%) !important;
}
.service-card-grid {
  border: 1px solid rgba(199,154,75,.20) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.18) !important;
  transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease !important;
}
.service-card-grid:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(199,154,75,.65) !important;
  box-shadow: 0 26px 58px rgba(0,0,0,.28) !important;
}
.ui-filter__button, .services input {
  border-radius: 999px !important;
}
.footer-logo {
  width: 184px !important;
  max-width: 184px !important;
  height: auto !important;
}

@media (max-width: 768px) {
  .header, .header__content { min-height: 72px !important; }
  .header__content__primary__left__logo {
    width: 134px !important;
    min-width: 134px !important;
    height: 50px !important;
  }
  .header__content__primary__left__logo img {
    max-width: 134px !important;
    height: 50px !important;
  }
  .hero { min-height: 530px !important; }
  .hero::after {
    background: linear-gradient(90deg, rgba(29,27,27,.88), rgba(29,27,27,.48)), linear-gradient(0deg, rgba(29,27,27,.86), transparent 65%) !important;
  }
  .hero__content-wrapper {
    padding: 58px 22px !important;
    justify-content: flex-end !important;
  }
  .hero__title h1, .hero h1 {
    font-size: clamp(40px, 12vw, 56px) !important;
    line-height: 1.04 !important;
  }
  .hero__content-wrapper p { font-size: 17px !important; }
}

/* LUMA section contrast fix */
.services__wrapper h1,
.services__wrapper h2,
.services__wrapper h3,
.services__wrapper > * > h3 { color: var(--lu-pearl) !important; }

/* LUMA footer */
.footer {
  background: #1d1b1b !important;
  border-top: 1px solid rgba(199,154,75,.28) !important;
}
.footer, .footer h1, .footer h2, .footer h3, .footer h4, .footer h5, .footer p {
  color: var(--lu-cream) !important;
}
.footer a { color: #d8b86b !important; }

/* WOLFLOW v2 — clean canvas and calibrated footer */
body, #app, .services, .services__wrapper, .employees, .employees__wrapper, .locations, .locations__wrapper, .booking, .booking__wrapper { background-image: none !important; background-color: #282629 !important; }
.services::before, .services::after, .services__wrapper::before, .services__wrapper::after, .employees::before, .employees::after, .employees__wrapper::before, .employees__wrapper::after, .locations::before, .locations::after, .locations__wrapper::before, .locations__wrapper::after, .booking::before, .booking::after, .booking__wrapper::before, .booking__wrapper::after { background-image: none !important; }
[class*="pattern"] { display: none !important; background-image: none !important; }
.footer .footer-logo, .footer .footer-logo img, .footer img[alt="logo"] { width: auto !important; height: 34px !important; max-width: 150px !important; max-height: 34px !important; object-fit: contain !important; object-position: left center !important; transform: none !important; }

/* WOLFLOW v3 — remove Trafft decorative canvas */
.dl__wrapper__background, .dl__wrapper__fade { display: none !important; background: none !important; background-image: none !important; }
.dl__wrapper { background: #282629 !important; }
.footer .footer-logo.small { width: auto !important; height: 44px !important; max-width: 175px !important; max-height: 44px !important; opacity: 1 !important; }

/* Optical logo sizing: source assets contain transparent padding */
.footer .footer-logo.small { transform: scale(1.55) !important; transform-origin: left center !important; }
.footer__content__column:first-child { overflow: visible !important; }
