/*
 * PS Nails — Moda-inspired colour system
 * Colour overrides only: no layout, type scale, spacing or content changes.
 */
:root {
  --jd-primary: #9e7a4f;
  --jd-primary-hover: #7a6a5d;
  --jd-primary-soft: #ebe6df;
  --jd-secondary: #151515;
  --jd-accent: #9e7a4f;
  --jd-accent-soft: #ded5ca;
  --jd-gold: #9e7a4f;
  --jd-gold-bright: #c6a46a;
  --jd-champagne: #f3ede4;
  --jd-bg: #ded5ca;
  --jd-bg-deep: #ddd3c8;
  --jd-surface: #ffffff;
  --jd-surface-2: #f3ede4;
  --jd-text: #4f4946;
  --jd-text-muted: #7a6a5d;
  --jd-text-inverse: #ffffff;
  --jd-border: rgba(62, 50, 40, .10);
  --jd-border-strong: rgba(158, 122, 79, .22);
  --jd-shadow-sm: 0 3px 12px rgba(62, 50, 40, .06);
  --jd-shadow-md: 0 18px 46px rgba(62, 50, 40, .10);
  --jd-shadow-lg: 0 32px 90px rgba(62, 50, 40, .16);
  --jd-shadow-glow: 0 18px 52px rgba(158, 122, 79, .22);
}

body.jd-body {
  color: #4f4946;
  background-color: #ded5ca;
}

body.jd-body .jd-header__bar,
body.jd-body .jd-header.is-scrolled .jd-header__bar {
  background: rgba(255, 255, 255, .96);
  border-color: rgba(158, 122, 79, .12);
}

body.jd-body .jd-logo__text,
body.jd-body .jd-nav a,
body.jd-body .jd-menu-toggle,
body.jd-body .jd-menu-toggle span,
body.jd-body .jd-menu-toggle span::before,
body.jd-body .jd-menu-toggle span::after {
  color: #4f4946;
}

body.jd-body .jd-nav a::after,
body.jd-body .jd-menu-toggle span,
body.jd-body .jd-menu-toggle span::before,
body.jd-body .jd-menu-toggle span::after {
  background: #9e7a4f;
}

body.jd-body .jd-logo__text span,
body.jd-body .jd-nav a.is-active,
body.jd-body .jd-nav a:hover,
body.jd-body .jd-eyebrow,
body.jd-body .mnb-reviews-eyebrow,
body.jd-body .svc-hero__badge {
  color: #9e7a4f;
}

body.jd-body .jd-promo-bar,
body.jd-body .jd-drawer__panel {
  color: #fff;
  background: #0a0a0a;
}

body.jd-body .jd-section:not(.jd-cta):not(.jd-footer),
body.jd-body #about,
body.jd-body .svc-menu,
body.jd-body .jd-news-notes,
body.jd-body .vv-invite,
body.jd-body .jd-legal {
  background-color: #ded5ca !important;
  background-image: none !important;
}

body.jd-body .jd-section--deep,
body.jd-body .jd-services,
body.jd-body .mnb-reviews-section,
body.jd-body .jd-menu-home,
body.jd-body .jd-page-overview main,
body.jd-body .jd-page-services main {
  background-color: #ddd3c8 !important;
}

body.jd-body .jd-card,
body.jd-body .mnb-review-card,
body.jd-body .svc-preview__card,
body.jd-body .jd-service-card,
body.jd-body .jd-contact__panel,
body.jd-body .jd-connect__item,
body.jd-body .jd-hours-card,
body.jd-body .jd-menu-home__shell,
body.jd-body .jd-menu-group,
body.jd-body .svc-card {
  background-color: #fff;
  border-color: rgba(158, 122, 79, .14);
}

body.jd-body h1,
body.jd-body h2,
body.jd-body h3,
body.jd-body h4,
body.jd-body .jd-display,
body.jd-body .jd-menu-home__display,
body.jd-body .jd-menu-card__title,
body.jd-body .svc-card__title {
  color: #4f4946;
}

body.jd-body p,
body.jd-body li,
body.jd-body .jd-text-muted,
body.jd-body .jd-menu-home__lead,
body.jd-body .jd-overview-new__head > p {
  color: #7a6a5d;
}

body.jd-body h1 em,
body.jd-body h2 em,
body.jd-body .jd-display em,
body.jd-body .jd-menu-home__display em,
body.jd-body .jd-footer__brand span {
  color: #9e7a4f;
}

body.jd-body .jd-btn,
body.jd-body .button-primary,
body.jd-body .online-booking:not(.jd-btn--light):not(.jd-btn--ghost) {
  color: #fff !important;
  -webkit-text-fill-color: #fff;
  background: #9e7a4f;
  border-color: #9e7a4f;
}

body.jd-body .jd-btn:hover,
body.jd-body .button-primary:hover {
  color: #fff !important;
  background: #7a6a5d;
  border-color: #7a6a5d;
}

body.jd-body .jd-btn--ghost {
  color: #4f4946 !important;
  -webkit-text-fill-color: #4f4946;
  background: transparent;
  border-color: rgba(158, 122, 79, .35);
}

body.jd-body .jd-btn--light,
body.jd-body .jd-btn.jd-btn--light.booking-link.online-booking {
  color: #4f4946 !important;
  -webkit-text-fill-color: #4f4946 !important;
  background: #fff;
  border-color: #fff;
}

body.jd-body .jd-menu-home__filter.is-active,
body.jd-body .svc-tabs button.is-active,
body.jd-body .blanc-menu-filter .is-active {
  color: #fff;
  background: #9e7a4f;
}

body.jd-body .jd-menu-home__filter small,
body.jd-body .jd-menu-group__head > span,
body.jd-body .jd-menu-row__price,
body.jd-body .svc-card__price,
body.jd-body .jd-experience__number {
  color: #9e7a4f;
}

body.jd-body .jd-page-hero,
body.jd-body .svc-hero,
body.jd-body .jd-cta,
body.jd-body .jd-overview-new__ritual,
body.jd-body .jd-footer {
  background-color: #151515;
}

body.jd-body .jd-page-hero h1,
body.jd-body .jd-page-hero p,
body.jd-body .svc-hero h1,
body.jd-body .svc-hero p,
body.jd-body .jd-cta h2,
body.jd-body .jd-cta p,
body.jd-body .jd-overview-new__ritual h3,
body.jd-body .jd-overview-new__ritual p {
  color: #fff;
}

body.jd-body .jd-hero h1 em,
body.jd-body .jd-page-hero h1 em,
body.jd-body .svc-hero h1 em,
body.jd-body .jd-cta h2 em,
body.jd-body .jd-overview-new__ritual h3 em {
  color: #c6a46a !important;
  -webkit-text-fill-color: #c6a46a;
}

body.jd-body .jd-footer {
  color: #fff;
  background: #151515;
  border-top-color: rgba(158, 122, 79, .22);
}

body.jd-body .jd-footer p,
body.jd-body .jd-footer li,
body.jd-body .jd-footer address,
body.jd-body .jd-footer a,
body.jd-body .jd-footer .rights,
body.jd-body .jd-footer .rights a,
body.jd-body .jd-footer__links a,
body.jd-body .jd-footer__bottom,
body.jd-body .jd-footer__bottom p,
body.jd-body .jd-footer__bottom a {
  color: #ddd5ca !important;
  -webkit-text-fill-color: #ddd5ca;
}

body.jd-body .jd-footer__brand,
body.jd-body .jd-footer h2,
body.jd-body .jd-footer h3,
body.jd-body .jd-footer h4 {
  color: #fff !important;
  -webkit-text-fill-color: #fff;
}

body.jd-body .jd-footer a:hover,
body.jd-body .jd-footer a:focus-visible,
body.jd-body .jd-footer__brand span {
  color: #c6a46a !important;
  -webkit-text-fill-color: #c6a46a;
}

body.jd-body .jd-footer__bottom {
  border-top-color: rgba(255, 255, 255, .12);
}

body.jd-body a:focus-visible,
body.jd-body button:focus-visible {
  outline-color: #9e7a4f;
}

/* Overview page only: shorter image hero, without affecting other inner pages. */
body.jd-page-overview .jd-overview-hero {
  min-height: clamp(30rem, 60vh, 38rem);
}

body.jd-page-overview .jd-overview-hero .jd-page-hero__content {
  padding-bottom: clamp(2.75rem, 5vw, 4.5rem);
}

@media (max-width: 900px) {
  body.jd-page-overview .jd-overview-hero {
    min-height: 35rem;
  }
}

@media (max-width: 640px) {
  body.jd-page-overview .jd-overview-hero {
    min-height: 34rem;
  }
}

@media (max-width: 420px) {
  body.jd-page-overview .jd-overview-hero {
    min-height: 32rem;
  }
}

/* Mobile navigation: full-width, compact and safe for long labels. */
@media (max-width: 700px) {
  body.jd-body .jd-drawer__backdrop {
    background: rgba(10, 10, 10, .5);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
  }

  body.jd-body .jd-drawer__panel {
    top: calc(var(--jd-header-h) + 44px);
    right: 0;
    width: 100%;
    height: calc(100dvh - var(--jd-header-h) - 44px);
    max-height: calc(100dvh - var(--jd-header-h) - 44px);
    padding: 1rem 1.35rem max(1.25rem, env(safe-area-inset-bottom, 0px));
    gap: 0;
    background: #151515;
    box-shadow: none;
  }

  body.jd-body .jd-drawer__head {
    display: none;
  }

  body.jd-body .jd-drawer__panel > a[data-nav] {
    display: flex;
    align-items: center;
    min-height: 3.25rem;
    padding: .72rem .15rem;
    border-bottom: 1px solid rgba(255, 255, 255, .09);
    color: #f3ede4;
    font-size: clamp(1.35rem, 6.2vw, 1.7rem);
    line-height: 1.08;
    letter-spacing: -.025em;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  body.jd-body .jd-drawer__panel > a[data-nav].is-active {
    color: #c6a46a;
  }

  body.jd-body .jd-drawer__meta {
    margin-top: auto;
    padding-top: 1rem;
    border-top: 1px solid rgba(198, 164, 106, .24);
    color: #b8aa9c;
    font-size: .82rem;
    line-height: 1.55;
  }

  body.jd-body .jd-drawer__meta p {
    margin: 0 0 .45rem;
    color: #b8aa9c;
  }

  body.jd-body .jd-drawer__meta .phone {
    color: #fff;
    font-size: .98rem;
  }

  body.jd-body .jd-drawer__meta .jd-btn {
    width: 100%;
    min-height: 3.25rem;
    margin-top: .75rem !important;
    justify-content: space-between;
    padding-left: 1.2rem;
    color: #fff !important;
    background: #9e7a4f;
    border-color: #9e7a4f;
  }
}

@media (max-height: 720px) and (max-width: 700px) {
  body.jd-body .jd-drawer__panel > a[data-nav] {
    min-height: 2.7rem;
    padding-block: .5rem;
    font-size: 1.25rem;
  }

  body.jd-body .jd-drawer__meta .address {
    display: none;
  }
}

/* Overview: restore dark copy where legacy dark sections now use the Moda beige. */
body.jd-page-overview #values .jd-services__head .jd-display,
body.jd-page-overview #team .jd-services__head .jd-display {
  color: #4f4946 !important;
  -webkit-text-fill-color: #4f4946;
}

body.jd-page-overview #values .jd-services__head > p,
body.jd-page-overview #team .jd-services__head > p,
body.jd-page-overview #team .jd-services__head > p .brand {
  color: #7a6a5d !important;
  -webkit-text-fill-color: #7a6a5d;
}

body.jd-page-overview #values .jd-services__head .jd-eyebrow,
body.jd-page-overview #team .jd-services__head .jd-eyebrow {
  color: #9e7a4f !important;
  -webkit-text-fill-color: #9e7a4f;
}
