/* Fresh lotus pink: bold editorial titles with a handwritten accent. */
body.jd-body {
  --rose: #a64d5f;
  --rose-hover: #873c4b;
  --rose-ink: #412b2e;
  --rose-muted: #75565b;
  --rose-petal: #f3b4bd;
  --rose-paper: #fff9f7;
  --jd-primary: var(--rose);
  --jd-primary-hover: var(--rose-hover);
  --jd-text: var(--rose-ink);
  --jd-text-muted: var(--rose-muted);
  --jd-font-display: "Outfit", sans-serif;
  --flyer-coral: var(--rose);
  --flyer-coral-deep: var(--rose-hover);
  --flyer-espresso: var(--rose-ink);
  --focus-bg: var(--rose-paper);
  --focus-bg-alt: #fbe8e8;
  --focus-ink: var(--rose-ink);
  --focus-muted: var(--rose-muted);
  --focus-accent: var(--rose);
  --focus-accent-deep: var(--rose-hover);
  background: var(--rose-paper) !important;
}
body.jd-body .jd-display {
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  font-size: clamp(2.5rem, 4.5vw, 4.6rem);
  line-height: 1.06;
  letter-spacing: -.045em;
  text-wrap: balance;
  overflow: visible;
  padding-bottom: .2em;
}
body.jd-body .jd-display em {
  font-family: "Great Vibes", cursive;
  font-weight: 400;
  font-style: normal;
  font-size: 1.19em;
  letter-spacing: -.015em;
  line-height: 1.18;
  color: var(--rose) !important;
  -webkit-text-fill-color: var(--rose) !important;
  padding: .04em .08em .1em 0;
}
body.jd-body h3 { font-family: "Outfit", sans-serif; font-weight: 600; }
body.jd-body .jd-header .jd-header__bar,
body.jd-body .jd-header.is-scrolled .jd-header__bar {
  background: rgba(255,249,247,.98) !important;
  border-bottom-color: #edc6d4;
  box-shadow: none;
}
body.jd-body .lotus-lang button.is-active,
body.jd-body .jd-menu-toggle,
body.jd-body .jd-hero--film .jd-hero__actions .online-booking {
  background: var(--rose) !important;
  border-color: var(--rose) !important;
}
body.jd-body .jd-btn { transition: background .2s, transform .2s; }
body.jd-body .jd-btn:hover { transform: translateY(-2px); }
body.jd-body .jd-btn:active { transform: translateY(0); }
body.jd-body a:focus-visible, body.jd-body button:focus-visible {
  outline: 3px solid var(--rose); outline-offset: 4px;
}
body.jd-body .jd-hero--film .jd-hero__video-overlay {
  background: linear-gradient(270deg,rgba(73,20,44,.85),rgba(73,20,44,.47) 38%,rgba(73,20,44,.04) 78%),linear-gradient(0deg,rgba(73,20,44,.65),transparent 50%) !important;
}
body.jd-body .jd-hero--film .jd-hero__title-love,
body.jd-body .jd-hero--film .jd-hero__title-nails {
  font-family: "Outfit",sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: clamp(3.8rem,7.2vw,6.5rem);
  letter-spacing: -.055em;
  line-height: .98;
}
body.jd-body .jd-hero--film .jd-hero__title-nails { color: #ffb5bf !important; }
body.jd-body .jd-hero--film .jd-hero__center h1 em { color: #ffe1e1 !important; }
body.jd-body .jd-brand-interlude { background: #f3b4bd; border-block: 1px solid #efbacd; }
body.jd-body #overview { background: var(--rose-petal) !important; }
body.jd-body #overview .jd-overview-new__head { padding-bottom: 1.5rem; }
body.jd-body .jd-overview-new__ritual { background: #fff3f1 !important; border-color: #dda5ae !important; }
body.jd-body #services { background: #fff9f7 !important; }
body.jd-body #why-us { background: #f9d9dc !important; }
body.jd-body .mnb-reviews-section { background: #fff9f7 !important; }
body.jd-body #gallery { background: #fbe8e8 !important; }
body.jd-body #gallery .jd-gallery-section__bg { display: none; }
body.jd-body .jd-cta { background: #a64d5f !important; }
body.jd-body .jd-cta__bg { opacity: .12; }
body.jd-body .jd-cta__bg::after { background: #a64d5f !important; }
body.jd-body .jd-cta .jd-display,
body.jd-body .jd-cta .jd-display em,
body.jd-body .jd-cta p { color: #fff9f7 !important; -webkit-text-fill-color: #fff9f7 !important; }
body.jd-body .jd-cta .jd-btn { background: #fff9f7 !important; color: #873c4b !important; border-color: #fff9f7 !important; }
body.jd-body .jd-cta .jd-btn span { color: inherit !important; }
body.jd-body #contact.jd-section--deep { background: #f3b4bd !important; }
body.jd-body #contact .jd-contact__card { background: #fff9f7 !important; border: 0 !important; box-shadow: none !important; }
body.jd-body #contact .jd-display,
body.jd-body #contact.jd-section--deep h2 { color: #412b2e !important; -webkit-text-fill-color: #412b2e !important; }
body.jd-body #connect.jd-connect { background: #fff9f7 !important; }
body.jd-body .jd-footer { background: #914454 !important; }
body.jd-body .jd-footer :is(p,a,h4,.jd-footer__brand) { color: #fff5f9 !important; }
body.jd-body .jd-footer__brand span { color: #ffd9dd !important; }
@media(max-width:600px) {
  body.jd-body .jd-display { font-size: clamp(2.2rem,8.8vw,3.2rem); }
  body.jd-body .jd-display em { font-size: 1.13em; }
  body.jd-body .jd-hero--film .jd-hero__title-love,
  body.jd-body .jd-hero--film .jd-hero__title-nails { font-size: clamp(3.7rem,15vw,5rem); }
}
@media(prefers-reduced-motion:reduce) {
  body.jd-body .jd-btn { transition: none; }
}

/* Live menu: clean pink paper, without floral or gold ornament. */
body.jd-body #menu.svc-menu {
  background: #fbe4e5 !important;
  border-block: 1px solid #e9bec4;
}
body.jd-body #menu .svc-menu__stage {
  border-radius: 12px;
  box-shadow: none;
}
body.jd-body #menu .svc-menu__intro h2::after {
  width: 3rem;
  height: 4px;
  background: var(--rose);
  border-radius: 0;
}
body.jd-body #menu .svc-card.blanc-service-api-card {
  background: #fdfafa !important;
  border-color: #e9bec4 !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}
body.jd-body #menu .svc-card.blanc-service-api-card:hover {
  background: #fff !important;
  border-color: #bd7884 !important;
  box-shadow: 0 6px 18px rgba(116,39,68,.06) !important;
}
body.jd-body #menu .lotus-search input {
  background: #fdfafa;
  border-color: #dfafb7;
}
body.jd-body #menu .blanc-menu-tab.active {
  color: var(--rose) !important;
  border-bottom-color: var(--rose) !important;
}
body.jd-body #menu .svc-note {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid #dfafb7 !important;
  border-radius: 0;
  box-shadow: none !important;
}

/* Readable text on the light ritual panel, including inherited span colors. */
body.jd-body #overview .jd-overview-new__ritual :is(h3,p,span,small) {
  color: var(--rose-ink) !important;
  -webkit-text-fill-color: var(--rose-ink) !important;
}
body.jd-body #overview .jd-overview-new__ritual :is(.jd-eyebrow,.jd-overview-new__seal small) {
  color: var(--rose-hover) !important;
  -webkit-text-fill-color: var(--rose-hover) !important;
}
body.jd-body #overview .jd-overview-new__seal,
body.jd-body #overview .jd-overview-new__sensory { border-color: #dfafb7 !important; }
body.jd-body #overview .jd-overview-new__ritual .jd-btn--ghost {
  background: transparent !important;
  border-color: #bd7884 !important;
  color: var(--rose-ink) !important;
}
body.jd-body #overview .jd-overview-new__ritual .jd-btn--ghost .jd-btn__icon {
  background: #f3b4bd !important;
}
body.jd-body #overview .jd-overview-new__ritual .online-booking span {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.jd-body #overview .jd-overview-new__ritual .jd-btn--ghost:hover { background: #f3b4bd !important; }
body.jd-body .jd-cta .jd-btn,
body.jd-body .jd-cta .jd-btn span {
  color: var(--rose-hover) !important;
  -webkit-text-fill-color: var(--rose-hover) !important;
}
body.jd-body .jd-cta__bg { display: none; }
body.jd-body .jd-hero--film .jd-hero__video-overlay {
  background: linear-gradient(270deg,rgba(48,29,39,.88),rgba(48,29,39,.55) 42%,rgba(48,29,39,.12) 80%),linear-gradient(0deg,rgba(48,29,39,.8),transparent 60%) !important;
}

/* Keep photo captions readable over light areas of photography. */
body.jd-body #overview .jd-experience__shade {
  background: linear-gradient(180deg,transparent 15%,rgba(38,25,32,.72) 55%,rgba(38,25,32,.97) 100%);
}
body.jd-body #overview .jd-experience__number {
  color: #ffe0e4 !important;
  -webkit-text-fill-color: #ffe0e4 !important;
}
body.jd-body #connect .jd-connect-card { background: #653e46; }
body.jd-body #connect .jd-connect-card__handle { color: #ffe0e4 !important; }
body.jd-body .jd-header .jd-logo__text em,
body.jd-body .jd-header .jd-logo__text span {
  color: var(--rose-hover) !important;
  -webkit-text-fill-color: var(--rose-hover) !important;
}
