/* Small additions on top of the original live-site CSS. */
.makeup-hero.makeup-hero--quote { padding-bottom: 7rem; }
.makeup-hero.makeup-hero--quote .makeup-hero__copy { bottom: 1.5rem; }
.makeup-hero.makeup-hero--quote picture { display: block; position: relative; overflow: hidden; background: #0a0a0a; isolation: isolate; }
.makeup-hero.makeup-hero--quote picture:before,
.makeup-hero.makeup-hero--quote picture:after { content: ""; inset: 0; z-index: 1; pointer-events: none; position: absolute; }
.makeup-hero.makeup-hero--quote picture:before { background: linear-gradient(108deg,transparent 28%,rgba(255,255,255,.02) 42%,rgba(255,255,255,.14) 50%,rgba(255,255,255,.025) 58%,transparent 72%); mix-blend-mode: screen; transform: translate3d(-105%,0,0); animation: hero-light-sweep 13s cubic-bezier(.55,.08,.42,.92) infinite; }
.makeup-hero.makeup-hero--quote picture:after { background: #fff; mix-blend-mode: screen; opacity: 0; animation: hero-camera-flash 13s linear infinite; }
.makeup-hero.makeup-hero--quote .makeup-hero__img { animation: hero-portrait-drift 16s ease-in-out infinite alternate; transform-origin: 50% 38%; will-change: transform,filter; }
.makeup-hero.makeup-hero--quote:after { z-index: 1; }
.makeup-hero.makeup-hero--makeup .makeup-hero__copy { transform: translateY(4.25rem); }
.makeup-hero.makeup-hero--makeup + .band { padding-top: 7.85rem; }
.home-h1 { clip: rect(0,0,0,0); white-space: nowrap; width: 1px; height: 1px; position: absolute; overflow: hidden; }
@keyframes hero-portrait-drift {
  0% { transform: scale(1.01) translate3d(-.18%,.12%,0); filter: brightness(.98) contrast(1.01); }
  48% { transform: scale(1.024) translate3d(.16%,-.18%,0); filter: brightness(1.015) contrast(1.025); }
  100% { transform: scale(1.014) translate3d(.3%,0,0); filter: brightness(.99) contrast(1.015); }
}
@keyframes hero-light-sweep {
  0%,12% { opacity: 0; transform: translate3d(-105%,0,0); }
  18% { opacity: .62; }
  34% { opacity: 0; transform: translate3d(105%,0,0); }
  100% { opacity: 0; transform: translate3d(105%,0,0); }
}
@keyframes hero-camera-flash {
  0%,57%,60%,100% { opacity: 0; }
  57.25% { opacity: .085; }
  57.7% { opacity: .008; }
  58.15% { opacity: .045; }
  58.7% { opacity: 0; }
}
@media (width>=800px) {
  .makeup-hero.makeup-hero--quote .makeup-hero__img {
    object-position: center;
    -webkit-mask-image: linear-gradient(180deg,#000 0%,#000 54%,rgba(0,0,0,.96) 61%,rgba(0,0,0,.72) 74%,rgba(0,0,0,.34) 87%,transparent 100%);
    mask-image: linear-gradient(180deg,#000 0%,#000 54%,rgba(0,0,0,.96) 61%,rgba(0,0,0,.72) 74%,rgba(0,0,0,.34) 87%,transparent 100%);
  }
  .makeup-hero.makeup-hero--quote:after { height: 60%; background: linear-gradient(180deg,rgba(10,10,10,0) 0%,rgba(10,10,10,.1) 34%,rgba(10,10,10,.42) 72%,#0a0a0a 100%); }
}
@media (width<=799px) {
  .makeup-hero.makeup-hero--quote .makeup-hero__img {
    -webkit-mask-image: linear-gradient(180deg,#000 0%,#000 56%,rgba(0,0,0,.94) 64%,rgba(0,0,0,.64) 77%,rgba(0,0,0,.26) 90%,transparent 100%);
    mask-image: linear-gradient(180deg,#000 0%,#000 56%,rgba(0,0,0,.94) 64%,rgba(0,0,0,.64) 77%,rgba(0,0,0,.26) 90%,transparent 100%);
  }
  .makeup-hero.makeup-hero--quote:after { height: 58%; background: linear-gradient(180deg,rgba(10,10,10,0) 0%,rgba(10,10,10,.12) 30%,rgba(10,10,10,.48) 72%,#0a0a0a 100%); }
}
@media (prefers-reduced-motion: reduce) {
  .makeup-hero.makeup-hero--quote .makeup-hero__img,
  .makeup-hero.makeup-hero--quote picture:before,
  .makeup-hero.makeup-hero--quote picture:after { animation: none; }
}
.edit-band { padding-top: 2.5rem; }
.edit-band .mgrid { margin-top: .75rem; }
.edit-band .mcard { min-height: 9rem; justify-content: space-between; }
.edit-band .mcard h3 { text-transform: none; letter-spacing: .02em; font-size: 1.05rem; }
.edit-band .mcard .meta { letter-spacing: .1em; text-transform: uppercase; font-size: .65rem; }
.edit-band .mcard p { color: #cfcbc6; }
.edit-band .mcard--light { color: #111; background: #f2f0ee; border-color: #f2f0ee; }
.edit-band .mcard--light h3, .edit-band .mcard--light p, .edit-band .mcard--light .meta { color: #111; }
.edit-band .mcard--light:hover { color: #111; background: #d9d5cf; border-color: #fff; }
.mini-link { color: #fff; text-underline-offset: .25em; margin-top: .55rem; font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; text-decoration: underline; }
.page-intro { padding-top: 2.2rem; }
.page-intro h1 { color: #fff; margin-bottom: .65rem; font-size: clamp(2rem,4vw,3.3rem); }
.page-intro p { color: #f2f0ee; line-height: 1.7; }
.live-prose { max-width: 39rem; margin: 0 auto; }
.live-prose h2 { margin-top: 2.5rem; font-size: 1.65rem; }
.live-prose p, .live-prose li { color: #f2f0ee; line-height: 1.58; }
.live-prose ul { padding-left: 1.2rem; }
.live-prose .guide-price { color: #fff; margin: .3rem 0; font-size: 2.4rem; }
.quiz { max-width: 42rem; min-height: 70vh; }
.reading-page .page-main { width: min(100%,72rem); max-width: 72rem; margin-inline: auto; padding-left: 1.25rem; padding-right: 1.25rem; box-sizing: border-box; }
.reading-page #reading-app { margin-inline: auto; }
.reading-page .quiz-intro { width: 100%; text-align: center; }
.quiz h1 { color: #fff; margin: .4rem 0 1rem; font-size: clamp(2rem,4vw,3rem); }
.quiz h2 { color: #fff; font-size: 1.7rem; }
.quiz h3 { color: #fff; font-size: 1.05rem; }
.quiz p { color: #f2f0ee; }
.quiz .eyebrow, .quiz__step { color: #cfcbc6; letter-spacing: .14em; text-transform: uppercase; font-size: .68rem; }
.quiz-intro__rules, .result-principles { grid-template-columns: repeat(3,1fr); gap: .55rem; margin: 1.5rem 0; display: grid; }
.quiz-intro__rules div, .result-principles div { border: 1px solid #ffffff59; padding: .8rem; }
.quiz-intro__rules strong, .result-principles strong { color: #fff; margin-bottom: .25rem; font-weight: 300; display: block; }
.quiz-intro__rules span, .result-principles span { color: #cfcbc6; font-size: .78rem; line-height: 1.45; }
.progress { background: #ffffff2e; height: 1px; margin: .8rem 0 1.5rem; }
.progress span { background: #fff; height: 1px; display: block; }
.quiz__question { margin: 0 0 .8rem; }
.choices { gap: .55rem; display: grid; }
.choice { color: #fff; text-align: left; background: transparent; border: 1px solid #ffffff59; min-height: 44px; padding: .75rem .9rem; }
.choice span { color: #cfcbc6; margin-top: .2rem; font-size: .78rem; display: block; }
.choice[aria-pressed=true] { color: #111; background: #fff; border-color: #fff; }
.choice[aria-pressed=true] span { color: #333; }
.choice[aria-pressed=true]:before { content: "✓"; float: right; }
.quiz__controls, .result-actions { flex-wrap: wrap; gap: .5rem; margin-top: 1rem; display: flex; }
.quiz .button { color: #fff; letter-spacing: .12em; text-transform: uppercase; background: transparent; border: 1px solid #ffffff59; min-height: 38px; padding: 0 .85rem; font-size: .68rem; }
.quiz .button:hover, .quiz .button--solid { color: #111; background: #fff; border-color: #fff; }
.quiz .button--quiet { border-color: transparent; color: #cfcbc6; }
.quiz__error, .notice { color: #cfcbc6; min-height: 1.2rem; margin-top: .5rem; font-size: .75rem; }
.resume-card, .save-edit, .save-panel { border: 1px solid #ffffff59; margin: 1.35rem 0; padding: 1rem; }
.reading-page .resume-card { width: min(100%,34rem); margin: .35rem auto 1rem; padding: clamp(1rem,3vw,1.5rem); display: flex; flex-direction: column; align-items: center; text-align: center; }
.reading-page .resume-card > p { max-width: 30rem; margin-inline: auto; }
.reading-page .resume-card .button { margin-top: .35rem; }
.reading-page.reading-resume-state .editorial-hero { padding-bottom: 1rem; }
.reading-page.reading-resume-state .editorial-hero .makeup-wall-hero__eyebrow { margin-bottom: .4rem; }
.reading-page.reading-resume-state .editorial-hero h1 { font-size: clamp(2.3rem,5vw,4.1rem); line-height: .9; }
.reading-page.reading-resume-state .editorial-hero .lede { margin-top: .75rem; font-size: clamp(.78rem,1.2vw,.92rem); line-height: 1.5; }
.reading-page.reading-resume-state .page-main { padding-top: 1rem; }

@media (width<=799px) and (height<=650px) {
  .reading-page.reading-resume-state .editorial-hero { padding-top: 5.75rem; padding-bottom: .65rem; }
  .reading-page.reading-resume-state .editorial-hero h1 { font-size: 2rem; }
  .reading-page.reading-resume-state .editorial-hero .lede { margin-top: .5rem; font-size: .74rem; line-height: 1.4; }
  .reading-page.reading-resume-state .page-main { padding-top: .65rem; }
}
.resume-card h2, .save-edit h2 { margin: .2rem 0 .45rem; }
.edit-progress { margin: .8rem 0 1.2rem; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
.edit-progress span { min-height: 3rem; border: 1px solid #ffffff59; padding: .7rem .8rem; color: #cfcbc6; font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; display: flex; align-items: center; gap: .6rem; }
.edit-progress span b { color: #fff; font-weight: 300; }
.edit-progress span.is-current { border-color: #fff; color: #fff; }
.edit-progress span.is-complete { border-color: #54777d; color: #fff; background: #54777d; }
.result-stage { scroll-margin-top: 1rem; }
.result-stage.is-complete { border-color: #54777d; box-shadow: inset 3px 0 0 #54777d; }
.stage-actions { display: flex; flex-wrap: wrap; gap: .5rem; padding-top: .8rem; border-top: 1px solid #ffffff2e; }
.save-edit { margin-top: 2rem; }
.save-status { color: #fff; margin: .75rem 0; padding: .65rem .75rem; border-left: 3px solid #54777d; background: #54777d24; font-size: .8rem; }
.save-panel > p { max-width: 36rem; }
.save-panel label { color: #fff; margin: 1.2rem 0 .4rem; display: block; font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
.save-email-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .5rem; }
.save-email-row input { min-height: 44px; border: 1px solid #ffffff59; border-radius: 0; padding: .6rem .75rem; color: #fff; background: transparent; font: inherit; }
.save-email-row input::placeholder { color: #9e9a95; }
.result-profile { color: #111; background: #f2f0ee; margin: 1.2rem 0 0; padding: 1rem; }
.result-profile p, .result-profile .eyebrow { color: #111; }
.result-shelf { border: 1px solid #ffffff59; margin-top: 1.3rem; padding: 1rem; }
.product { border-top: 1px solid #ffffff2e; padding: 1rem 0; }
.product:first-of-type { margin-top: .8rem; }
.routine { margin-top: 2rem; }
.routine ol { padding: 0; list-style: none; counter-reset: steps; }
.routine li { border-top: 1px solid #ffffff2e; padding: .9rem 0 .9rem 2.7rem; position: relative; counter-increment: steps; }
.routine li:before { content: counter(steps,decimal-leading-zero); color: #cfcbc6; position: absolute; left: 0; top: 1rem; font-size: .68rem; }
.quiz--result { width: min(100%,72rem); max-width: 72rem; }
.quiz--result > .eyebrow,.quiz--result > .notice { text-align: center; }
.quiz--result .result-profile { max-width: 54rem; margin-inline: auto; padding: clamp(1.1rem,3vw,2rem); }
.quiz--result .result-profile h2 { margin: .25rem 0 .65rem; color: #111; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2rem,4.8vw,3.65rem); font-weight: 400; letter-spacing: -.045em; line-height: .98; }
.quiz--result .result-principles { max-width: 54rem; margin-inline: auto; }
.result-plan { margin-top: clamp(2.8rem,7vw,5.5rem); text-align: left; }
.result-plan > header { max-width: 48rem; margin: 0 auto 1.2rem; text-align: center; }
.result-plan > header h2,.product-checklist h2,.routine-order h2,.verified-gaps h2 { margin: .2rem 0 .7rem; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.2rem,5.8vw,4.5rem); font-weight: 400; letter-spacing: -.05em; line-height: .94; }
.result-plan > header > p:not(.eyebrow) { max-width: 42rem; margin: .7rem auto 0; line-height: 1.7; }
.plan-gap-note { margin: .9rem auto 0!important; padding: .75rem .9rem; border: 1px solid rgba(255,255,255,.24); color: #d9d4cf!important; font-size: .78rem; }
.routine-exception { max-width: 42rem; margin: 1rem auto 0; padding: 1rem; border-left: 2px solid #9eb8bd; background: rgba(4,10,12,.58); }
.routine-exception strong { color: #fff; font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; }
.routine-exception p { margin: .45rem 0 0; color: #d5d1cc; font-size: .78rem; line-height: 1.55; }
.routine-product-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,15.5rem),1fr)); gap: .8rem; align-items: stretch; }
.complete-plan { margin-top: clamp(1.8rem,4vw,3rem); }
.complete-plan .routine-product-grid { grid-template-columns: repeat(var(--plan-count),minmax(0,1fr)); gap: .65rem; }
.complete-plan__finish { max-width: 54rem; margin: 1rem auto 0; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.22); color: #d9d4cf; font-size: .78rem; line-height: 1.65; text-align: center; }
.complete-plan__finish strong { color: #fff; font-weight: 400; }
.complete-plan__recommendation { margin: .65rem 0 0; color: #fff; text-align: center; }
.complete-plan__recommendation span { display: block; color: #d9d4cf; font-family: Georgia,"Times New Roman",serif; font-size: 1rem; line-height: 1.55; }
.complete-plan__recommendation a { margin-top: .55rem; color: #fff; display: inline-block; font-size: .62rem; letter-spacing: .1em; text-transform: uppercase; text-underline-offset: .2em; }
.complete-plan__blocker { max-width: 44rem; margin: 0 auto; padding: clamp(1.1rem,3vw,1.7rem); border: 1px solid rgba(255,255,255,.3); background: rgba(5,9,11,.76); text-align: center; }
.complete-plan__blocker strong { color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.5rem,3vw,2.2rem); font-weight: 400; }
.complete-plan__blocker p { margin: .7rem 0 0; color: #d9d4cf; font-size: .78rem; line-height: 1.65; }
.complete-plan__blocker .button { margin-top: 1rem; display: inline-flex; }
.complete-plan__context { max-width: 48rem; margin: 0 auto 1.2rem; padding: .95rem 1rem; border-left: 2px solid #9eb8bd; background: rgba(4,10,12,.58); }
.complete-plan__context > div + div { margin-top: .85rem; padding-top: .85rem; border-top: 1px solid rgba(255,255,255,.16); }
.complete-plan__context strong { color: #fff; font-size: .67rem; letter-spacing: .12em; text-transform: uppercase; }
.complete-plan__context p { margin: .35rem 0 0; color: #d5d1cc; font-size: .75rem; line-height: 1.55; }
.routine-product-grid:empty { display: none; }
.routine-product-card { min-width: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.25); background: #eee9e1; color: #171717; display: flex; flex-direction: column; text-align: left; text-shadow: none; }
.routine-product-card__image { min-height: 18rem; padding: 1.4rem; overflow: hidden; background: #fff; display: grid; place-items: center; }
.routine-product-card__image img { width: 100%; height: 16rem; object-fit: contain; transition: transform .25s ease; }
.routine-product-card__image:hover img,.routine-product-card__image:focus-visible img { transform: scale(1.025); }
.routine-product-card__copy { min-height: 100%; padding: 1rem; display: flex; flex: 1; flex-direction: column; }
.routine-product-card__meta { display: flex; align-items: center; justify-content: space-between; gap: .75rem; color: #5b5550; font-size: .56rem; letter-spacing: .14em; text-transform: uppercase; }
.routine-product-card__meta b { padding: .28rem .4rem; border: 1px solid #aaa198; font-weight: 400; }
.routine-product-card__family { margin: .85rem 0 .3rem; color: #6d665f!important; font-size: .61rem; letter-spacing: .08em; text-transform: uppercase; }
.routine-product-card h3 { margin: 0 0 .65rem; color: #171717; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.45rem,2.6vw,2rem); font-weight: 400; line-height: 1.03; }
.routine-product-card__copy > p:not(.routine-product-card__family) { margin: 0 0 .7rem; color: #3f3a36; font-size: .75rem; line-height: 1.55; }
.routine-product-card__copy small { margin-bottom: 1rem; color: #655f59; font-size: .68rem; line-height: 1.55; }
.routine-product-card__shop { min-height: 2.65rem; margin-top: auto; padding: .7rem; border: 1px solid #292723; color: #171717; display: flex; align-items: center; justify-content: space-between; gap: .75rem; font-size: .62rem; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; }
.routine-product-card__shop:hover,.routine-product-card__shop:focus-visible { background: #171717; color: #fff; }
.complete-plan .routine-product-card__image { min-height: clamp(11rem,17vw,15rem); padding: 1rem; }
.complete-plan .routine-product-card__image img { height: clamp(10rem,15vw,13.5rem); }
.complete-plan .routine-product-card__copy { padding: .85rem; }
.complete-plan .routine-product-card__family { margin-top: .7rem; }
.complete-plan .routine-product-card h3 { font-size: clamp(1.15rem,1.8vw,1.65rem); }
.routine-gap-card { min-width: 0; padding: 1.2rem; border: 1px dashed rgba(255,255,255,.42); background: rgba(5,9,11,.72); text-align: left; }
.routine-gap-card > div { display: flex; align-items: center; justify-content: space-between; gap: .75rem; color: #c8d9dc; font-size: .58rem; letter-spacing: .14em; text-transform: uppercase; }
.routine-gap-card > div b { font-weight: 400; }
.routine-gap-card h3 { margin: 1.1rem 0 .65rem; font-family: Georgia,"Times New Roman",serif; font-size: 1.85rem; font-weight: 400; }
.routine-gap-card p { color: #e2ded9; font-size: .78rem; line-height: 1.65; }
.routine-gap-card small { color: #bdb8b2; display: block; font-size: .7rem; line-height: 1.6; }
.routine-gap-card a { min-height: 2.65rem; margin-top: 1rem; padding: .7rem; border: 1px solid rgba(255,255,255,.42); color: #fff; display: flex; align-items: center; justify-content: center; font-size: .62rem; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; }
.product-checklist,.routine-order,.verified-gaps { margin-top: clamp(3rem,7vw,5.5rem); padding: clamp(1rem,3vw,1.6rem); border: 1px solid rgba(255,255,255,.28); background: rgba(5,9,11,.72); text-align: center; }
.product-checklist > div { margin-top: 1.2rem; }
.product-checklist article { min-width: 0; padding: .8rem 0; border-top: 1px solid rgba(255,255,255,.18); display: grid; grid-template-columns: 7rem minmax(0,1fr) auto; align-items: center; gap: .75rem; text-align: left; }
.product-checklist article span,.product-checklist article b { color: #aebdc0; font-size: .58rem; font-weight: 400; letter-spacing: .12em; text-transform: uppercase; }
.product-checklist article strong { color: #fff; font-size: .78rem; font-weight: 300; line-height: 1.45; }
.routine-order { text-align: left; }
.routine-order > .eyebrow,.routine-order > h2 { text-align: center; }
.routine-order li h3 { margin: 0 0 .35rem; font-family: Georgia,"Times New Roman",serif; font-size: 1.25rem; font-weight: 400; }
.routine-order li p { color: #d4d0cb; font-size: .75rem; line-height: 1.6; }
.routine-order li p strong { color: #fff; font-weight: 400; }
.verified-gaps p:not(.eyebrow) { max-width: 45rem; margin: .65rem auto 0; color: #d6d1cc; font-size: .78rem; line-height: 1.65; }
.result-training-callout { max-width: 54rem; margin: clamp(2.3rem,6vw,4.5rem) auto 0; padding: clamp(1.4rem,4vw,2.5rem); border: 1px solid rgba(255,255,255,.38); background: linear-gradient(145deg,rgba(8,14,16,.95),rgba(25,35,37,.88)); box-shadow: 0 1.25rem 3rem rgba(0,0,0,.28); text-align: center; }
.result-training-callout h2 { margin: .35rem 0 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2rem,5vw,3.6rem); font-weight: 400; line-height: 1; }
.result-training-callout > p:not(.eyebrow) { max-width: 46rem; margin: 1rem auto 0; color: #ddd8d2; font-size: clamp(.78rem,1.4vw,.9rem); line-height: 1.75; }
.result-training-callout .result-training-callout__review { color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(.95rem,1.8vw,1.15rem); }
.result-training-callout .button { min-height: 2.85rem; margin-top: 1.35rem; padding: .72rem 1.1rem; display: inline-flex; align-items: center; justify-content: center; text-align: center; line-height: 1.15; }
.result-training-callout .button > span { display: block; text-align: center; }
.result-cross-service { max-width: 42rem; margin: 1.25rem auto 0; padding: 1.1rem 0 0; border-top: 1px solid rgba(255,255,255,.24); text-align: center; }
.result-cross-service h3 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.25rem,2.4vw,1.75rem); font-weight: 400; line-height: 1.15; }
.result-cross-service p { margin: .45rem 0 0; color: #d5d0cb; font-size: .76rem; line-height: 1.6; }
.result-cross-service a { margin-top: .65rem; display: inline-block; color: #fff; border-bottom: 1px solid rgba(255,255,255,.58); font-size: .58rem; letter-spacing: .12em; line-height: 1.5; text-decoration: none; text-transform: uppercase; }
.result-cross-service a:hover,.result-cross-service a:focus-visible { border-bottom-color: #fff; outline: 2px solid #fff; outline-offset: 4px; }
@media (width<=799px) {
  .quiz--result { width: 100%; }
  .routine-product-grid { grid-template-columns: 1fr; }
  .complete-plan .routine-product-grid { grid-template-columns: 1fr; }
  .routine-product-card__image { min-height: 14rem; }
  .routine-product-card__image img { height: 12rem; }
  .product-checklist article { grid-template-columns: 5.3rem minmax(0,1fr); }
  .product-checklist article b { grid-column: 2; }
}
.faq { max-width: 42rem; margin: 2rem auto 0; text-align: left; }
.faq details { border-top: 1px solid #ffffff2e; }
.faq details:last-child { border-bottom: 1px solid #ffffff2e; }
.faq summary { color: #fff; cursor: pointer; padding: .9rem 0; }
.faq p { color: #cfcbc6; padding-bottom: .9rem; font-size: .88rem; }
.legal { max-width: 42rem; margin: 0 auto; padding: 6rem 1.2rem 2rem; }
.legal h1 { color: #fff; font-size: 2.4rem; }
.legal h2 { color: #fff; margin-top: 2rem; font-size: 1.35rem; }
.legal p { color: #f2f0ee; line-height: 1.65; }
.foot { padding-top: 2rem; padding-bottom: 5rem; }
.foot .sig__mark { width: 8.5rem; height: 4rem; }
.foot address { align-items: center; display: flex; flex-wrap: wrap; gap: .3rem 1rem; justify-content: center; margin-top: .35rem; }
.foot address span { flex: 0 0 100%; }
.foot address span { font-size: clamp(.67rem, 2.5vw, 1rem); white-space: nowrap; }
.foot address a, .foot address span { margin-top: 0; }
.foot address .ig { align-items: center; color: #fff; display: inline-flex; justify-content: center; transform: translateY(-.22rem); width: 1.65rem; height: 1.65rem; }
.foot address .ig svg { fill: none; stroke: currentColor; stroke-width: 1.5; width: 1.25rem; height: 1.25rem; }
.foot address .ig .ig__dot { fill: currentColor; stroke: none; }
.foot > .review-btn { margin-top: .75rem; }
.foot-privacy { margin: .65rem 0 0; }

/* unLTD. store */
.store-page { overflow-x: clip; background: #0a0a0a; color: #f6f1e8; }
.store-announcement { min-height: 2.65rem; padding: .42rem max(2.9rem,5vw) .42rem 5vw; border-bottom: 1px solid #ffffff26; background: #54777d; color: #f6f1e8; position: relative; z-index: 3; }
.store-announcement[hidden] { display: none; }
.store-announcement a { min-height: 1.8rem; display: flex; align-items: center; justify-content: center; gap: clamp(.6rem,2vw,1.8rem); color: inherit; text-align: center; }
.store-announcement span,.store-announcement em { font-size: .58rem; font-style: normal; letter-spacing: .18em; text-transform: uppercase; }
.store-announcement strong { font-family: "Cormorant Garamond",serif; font-size: clamp(1rem,2vw,1.35rem); font-weight: 600; letter-spacing: .01em; }
.store-announcement button { width: 2rem; height: 2rem; border: 0; background: transparent; color: inherit; position: absolute; top: 50%; right: 1rem; transform: translateY(-50%); font-size: 1.35rem; line-height: 1; cursor: pointer; }
.store-announcement--home { margin-top: 0; }
.store-hero { min-height: min(880px,92vh); overflow: hidden; position: relative; display: flex; align-items: flex-end; }
.store-hero__image { inset: 0; width: 100%; height: 100%; object-fit: cover; position: absolute; filter: saturate(.7) contrast(1.02); }
.store-hero__veil { inset: 0; position: absolute; background: linear-gradient(90deg,rgba(5,5,5,.9) 0%,rgba(5,5,5,.6) 38%,rgba(5,5,5,.12) 72%),linear-gradient(0deg,rgba(5,5,5,.76),transparent 58%); }
.store-hero__marks { top: clamp(6rem,10vw,9rem); left: 5vw; right: 5vw; z-index: 1; position: absolute; display: flex; align-items: center; justify-content: space-between; }
.store-hero__marks img { width: clamp(10rem,18vw,18rem); opacity: .9; }
.store-hero__marks span { font-size: clamp(2rem,6vw,5.8rem); font-weight: 200; letter-spacing: -.07em; }
.store-hero__copy { width: min(90%,42rem); z-index: 2; position: relative; padding: 0 0 clamp(3rem,7vw,6rem) 5vw; }
.store-kicker { color: #d6cfc4; margin: 0 0 .75rem; font-size: .64rem; letter-spacing: .22em; text-transform: uppercase; }
.store-hero h1 { font-size: clamp(3.3rem,8.5vw,8rem); font-weight: 200; line-height: .82; letter-spacing: -.07em; }
.store-hero h1 em { color: #f6f1e8; font-style: normal; }
.store-hero__copy > p:not(.store-kicker) { max-width: 33rem; margin: 1.35rem 0 0; color: #e3ded6; font-size: clamp(.95rem,1.5vw,1.15rem); line-height: 1.65; }
.store-cta { min-height: 44px; margin-top: 1.6rem; padding: .72rem 1rem; border: 1px solid #f6f1e8; display: inline-flex; align-items: center; color: #f6f1e8; font-size: .7rem; letter-spacing: .15em; text-transform: uppercase; }
.store-cta:hover { color: #111; background: #f6f1e8; }
.store-manifesto { width: min(90%,68rem); margin: 0 auto; padding: clamp(4rem,10vw,8rem) 0; text-align: center; }
.store-manifesto__line { margin: 1.2rem 0; display: flex; align-items: center; justify-content: center; gap: clamp(.7rem,2.5vw,2.5rem); }
.store-manifesto__line b { font-weight: 200; opacity: .55; }
.store-script { font-family: "Mrs Saint Delafield",cursive; font-size: clamp(3.5rem,10vw,8rem); line-height: .8; }
.store-stamp { font-size: clamp(2.4rem,8vw,6.7rem); font-weight: 200; letter-spacing: -.08em; }
.store-manifesto > p:last-child { max-width: 44rem; margin: 1.5rem auto 0; color: #c9c3ba; line-height: 1.7; }
.store-drop { padding: 0 0 clamp(4rem,10vw,8rem); }
.store-section-head { width: min(90%,68rem); margin: 0 auto 2rem; }
.store-section-head h2 { color: #f6f1e8; font-size: clamp(2.7rem,7vw,6rem); font-weight: 200; letter-spacing: -.06em; }
.store-section-head > p:last-child { max-width: 46rem; color: #bbb5ac; line-height: 1.65; }
.store-product { width: min(92%,78rem); margin: 0 auto 2rem; background: #efe8dc; color: #151412; display: grid; grid-template-columns: minmax(0,1.65fr) minmax(17rem,.72fr); }
.store-product--reverse { grid-template-columns: minmax(17rem,.72fr) minmax(0,1.65fr); }
.store-product--reverse img { grid-column: 2; }
.store-product--reverse .store-product__copy { grid-column: 1; grid-row: 1; }
.store-product img { width: 100%; height: 100%; min-height: 30rem; object-fit: cover; }
.store-product__copy { padding: clamp(1.6rem,4vw,3.6rem); display: flex; justify-content: center; flex-direction: column; }
.store-product__copy .store-kicker { color: #655f57; }
.store-product h3 { font-family: "Cormorant Garamond",serif; font-size: clamp(2.1rem,4.5vw,4rem); font-weight: 500; line-height: .95; }
.store-product__copy > p:not(.store-kicker) { margin-top: 1.2rem; color: #514c46; line-height: 1.65; }
.store-status { margin-top: 2rem; padding-top: .7rem; border-top: 1px solid #bdb3a5; color: #49443e; font-size: .63rem; letter-spacing: .16em; text-transform: uppercase; }
.store-campaigns { padding: clamp(4rem,9vw,7rem) 0; background: #f0e9de; color: #151412; }
.store-campaigns .store-section-head h2 { color: #151412; }
.store-campaigns .store-section-head > p:last-child { color: #5d574f; }
.store-campaigns .store-kicker { color: #655f57; }
.store-campaign-grid { width: min(90%,68rem); margin: 0 auto; display: grid; grid-template-columns: 1.1fr .9fr; gap: 1rem; }
.store-campaign { min-height: clamp(22rem,38vw,31rem); padding: clamp(1.5rem,4vw,3.2rem); display: flex; flex-direction: column; border: 1px solid #151412; }
.store-campaign span { font-size: .62rem; letter-spacing: .2em; text-transform: uppercase; }
.store-campaign h3 { max-width: 34rem; margin-top: auto; font-family: "Cormorant Garamond",serif; font-size: clamp(2.4rem,5vw,4.7rem); font-weight: 500; line-height: .9; }
.store-campaign p { max-width: 28rem; margin-top: 1.2rem; line-height: 1.65; }
.store-campaign b { margin-top: 1.6rem; font-size: .66rem; font-weight: 300; letter-spacing: .14em; text-transform: uppercase; }
.store-campaign--ink { color: #f5efe6; background: #0a0a0a; border-color: #0a0a0a; }
.store-campaign--ink p,.store-campaign--ink span { color: #c5beb4; }
.store-campaign--paper { color: #151412; background: transparent; }
.store-shelf { padding: clamp(4rem,9vw,7rem) 0; color: #151412; background: #e8e1d6; }
.store-shelf .store-section-head h2 { color: #151412; }
.store-shelf .store-section-head > p:last-child { color: #5d574f; }
.store-shelf .store-kicker { color: #54777d; }
.store-shelf__routine { width: min(90%,68rem); margin: 0 auto 1.6rem; padding: .9rem 0; border-top: 1px solid #aaa195; border-bottom: 1px solid #aaa195; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; color: #4c4842; font-size: .62rem; letter-spacing: .14em; text-transform: uppercase; }
.store-shelf__routine span:nth-child(2) { text-align: center; }
.store-shelf__routine span:last-child { text-align: right; }
.store-shelf__tabs { width: min(90%,68rem); margin: 0 auto 1rem; display: flex; flex-wrap: wrap; gap: .5rem; }
.store-shelf__tabs button { min-height: 42px; padding: .65rem .85rem; border: 1px solid #777067; color: #292724; background: transparent; cursor: pointer; font: inherit; font-size: .65rem; letter-spacing: .12em; text-transform: uppercase; }
.store-shelf__tabs button:hover,.store-shelf__tabs button:focus-visible,.store-shelf__tabs button.is-active { border-color: #54777d; color: #f6f1e8; background: #54777d; outline: none; }
.store-shelf__frame { width: min(94%,78rem); min-height: 43rem; margin: 0 auto; border: 1px solid #b7aea1; position: relative; overflow: hidden; background: #fff; }
.store-shelf__frame iframe { width: 100%; height: 48rem; border: 0; display: block; background: #fff; }
.store-shelf__loading { inset: 0; z-index: 1; position: absolute; display: grid; place-items: center; color: #655f57; background: #efe8dc; font-size: .65rem; letter-spacing: .14em; text-transform: uppercase; transition: opacity .2s ease; pointer-events: none; }
.store-shelf__frame.is-loaded .store-shelf__loading { opacity: 0; }
.store-shelf__foot { width: min(90%,68rem); margin: 1.25rem auto 0; display: flex; align-items: flex-start; justify-content: space-between; gap: 2rem; }
.store-shelf__foot p { max-width: 43rem; color: #5a554e; font-size: .76rem; line-height: 1.65; }
.store-shelf__foot strong { color: #2e2b27; font-weight: 400; }
.store-shelf__foot a { flex: 0 0 auto; color: #2e2b27; border-bottom: 1px solid #54777d; font-size: .65rem; letter-spacing: .12em; text-transform: uppercase; }
.store-links { padding: clamp(4rem,9vw,7rem) 0; background: #151515; }
.store-link-grid { width: min(90%,68rem); margin: 0 auto; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.store-link-card { min-height: 23rem; padding: clamp(1.4rem,4vw,3rem); border: 1px solid #ffffff40; display: flex; flex-direction: column; color: #f6f1e8; }
.store-link-card span { color: #aaa49b; font-size: .62rem; letter-spacing: .18em; }
.store-link-card h3 { margin-top: auto; font-family: "Cormorant Garamond",serif; font-size: clamp(2.2rem,4vw,3.8rem); font-weight: 500; line-height: 1; }
.store-link-card p { max-width: 26rem; margin-top: 1rem; color: #c9c3ba; line-height: 1.6; }
.store-link-card b { margin-top: 1.4rem; font-size: .68rem; font-weight: 300; letter-spacing: .14em; text-transform: uppercase; }
.store-link-card--light { background: #efe8dc; border-color: #efe8dc; color: #151412; }
.store-link-card--light span,.store-link-card--light p { color: #5e5850; }
.store-first-access { width: min(90%,68rem); margin: 0 auto; padding: clamp(4rem,9vw,7rem) 0; display: grid; grid-template-columns: minmax(12rem,.7fr) minmax(0,1fr); gap: 3rem; align-items: center; }
.store-first-access img { width: 100%; }
.store-first-access h2 { color: #f6f1e8; font-size: clamp(2.4rem,6vw,5rem); font-weight: 200; letter-spacing: -.06em; }
.store-first-access div > p:not(.store-kicker) { max-width: 32rem; margin-top: 1rem; color: #bbb5ac; line-height: 1.65; }
.store-cta--light { color: #111; background: #f6f1e8; }
.store-cta--light:hover { color: #f6f1e8; background: transparent; }

/* L’Oréal Professionnel is presented as a native unLTD edit; checkout stays on SalonInteractive. */
.shop-page { overflow-x: clip; background: #050505; }
.shop-page .site { z-index: 1; position: relative; background: transparent; }
.shop-motion-bg:after { background: linear-gradient(180deg,rgba(0,0,0,.76),rgba(3,8,11,.58) 34%,rgba(0,5,8,.72) 70%,rgba(0,0,0,.9)); }
.shop-motion-bg .home-wall-stage { inset: -13vh -2.5vw; gap: clamp(.15rem,.8vw,.7rem); filter: saturate(.72) contrast(1.08) brightness(.78); }
.shop-motion-bg .home-wall-column { overflow: visible; background: #071014; }
.shop-motion-bg .home-wall-track { animation-duration: 86s; }
.shop-motion-bg .home-wall-column:nth-child(2) .home-wall-track { animation-duration: 97s; }
.shop-motion-bg .home-wall-column:nth-child(3) .home-wall-track { animation-duration: 91s; }
.shop-motion-bg .home-wall-track img { width: 100%; height: clamp(10rem,17vw,16rem); min-height: 0; margin: 0 0 clamp(.4rem,.7vw,.7rem); padding: 0; position: relative; flex: none; display: block; object-fit: cover; object-position: 72% 50%; border: 1px solid rgba(194,221,229,.32); opacity: .7; background: linear-gradient(135deg,#829399,#c1cbcd); box-shadow: 0 .75rem 1.8rem rgba(0,0,0,.48); filter: saturate(.7) contrast(1.04) brightness(.82); }
.shop-motion-bg .home-wall-column:nth-child(1) .home-wall-track img { object-position: 70% 50%; }
.shop-motion-bg .home-wall-column:nth-child(2) .home-wall-track img { object-position: 73% 50%; }
.shop-motion-bg .home-wall-column:nth-child(3) .home-wall-track img { object-position: 68% 50%; }
.salon-shop { position: relative; z-index: 1; padding-bottom: clamp(2.5rem,6vw,5rem); }
.shop-hero { position: relative; z-index: 2; }
.shop-hero h1 { max-width: 15ch; }
.shop-hero .lede { max-width: 38rem; }
.shop-browse { width: min(92%,72rem); margin: 0 auto; padding: clamp(1rem,3vw,2.5rem) 0 clamp(3.25rem,7vw,6rem); position: relative; z-index: 2; color: #fff; }
.shop-browse__intro { width: min(100%,48rem); margin: 0 auto clamp(1.4rem,3vw,2.2rem); text-align: center; }
.shop-browse__intro > p { margin: 0 0 .5rem; color: #bcd0d6; font-size: .58rem; letter-spacing: .2em; text-transform: uppercase; }
.shop-browse__intro h2 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.4rem,5.5vw,5rem); font-weight: 400; letter-spacing: -.05em; line-height: .92; }
.shop-browse__intro > span { max-width: 39rem; margin: .9rem auto 0; display: block; color: #d2d5d6; font-size: .76rem; line-height: 1.65; }
.shop-browse__columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(.8rem,2vw,1.35rem); align-items: start; }
.browse-column { min-width: 0; }
.browse-column > h3 { margin: 0 0 .65rem; padding: 0 0 .55rem; border-bottom: 1px solid rgba(197,216,222,.4); color: #edf3f4; font-size: .64rem; font-weight: 300; letter-spacing: .19em; text-transform: uppercase; }
.browse-story-list { display: grid; gap: .6rem; }
.browse-story { min-height: 6.8rem; position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: flex-end; border: 1px solid rgba(214,229,233,.24); color: #fff; background: #12171a; text-decoration: none; box-shadow: 0 .85rem 2.3rem rgba(0,0,0,.18); transition: transform .22s ease,border-color .22s ease; }
.browse-story:before { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(180deg,rgba(3,8,11,.02) 0%,rgba(3,8,11,.06) 56%,rgba(0,3,5,.5) 100%); -webkit-backdrop-filter: none; backdrop-filter: none; }
.browse-story:after { content: none; }
.browse-story:nth-child(3n+2) { background: #182126; }
.browse-story:nth-child(3n) { background: #10171b; }
.browse-story__art { position: absolute; z-index: 0; inset: 0; overflow: hidden; background: linear-gradient(128deg,#11181c,#53636a); }
.browse-story__art img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .28s ease,filter .28s ease; }
.browse-story__art--product { background: linear-gradient(112deg,#10171b 0%,#4f6268 100%); }
.browse-story__art--product img { object-fit: contain; object-position: 76% 50%; mix-blend-mode: multiply; filter: saturate(.8) contrast(1.12) brightness(.92); transform: scale(.92); }
.browse-story__label { width: 100%; min-width: 0; padding: .4rem .8rem .6rem; position: relative; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; border: 0; color: #fff; background: transparent; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; text-shadow: 0 1px 10px rgba(0,0,0,.96); }
.browse-story__label strong { display: block; font-family: Poppins,"Century Gothic",Helvetica,sans-serif; font-size: .95rem; font-weight: 300; letter-spacing: 0; line-height: 1.25; text-transform: none; text-wrap: balance; }
.browse-story__label small { margin-top: .55rem; color: #d5e2e5; font-size: .49rem; letter-spacing: .13em; line-height: 1.4; text-transform: uppercase; }
.browse-story__label i { font-style: normal; }
.browse-story:hover,.browse-story:focus-visible { border-color: rgba(236,248,250,.88); transform: translateY(-2px); outline: 2px solid #fff; outline-offset: 3px; }
.browse-story:hover .browse-story__label,.browse-story:focus-visible .browse-story__label { border: 0; background: transparent; -webkit-backdrop-filter: none; backdrop-filter: none; }
.browse-story:hover .browse-story__art img,.browse-story:focus-visible .browse-story__art img { filter: brightness(1.04); transform: scale(1.025); }
.browse-story:hover .browse-story__art--product img,.browse-story:focus-visible .browse-story__art--product img { filter: saturate(.85) contrast(1.12) brightness(.96); transform: scale(.95); }
.shop-browse__utilities { margin-top: 1.1rem; display: flex; justify-content: center; flex-wrap: wrap; gap: .55rem; }
.shop-browse__utilities a { min-height: 2.75rem; padding: .7rem 1rem; display: inline-flex; align-items: center; justify-content: center; gap: .6rem; border: 1px solid rgba(219,233,237,.38); color: #f0f5f6; background: rgba(11,16,18,.5); font-size: .54rem; letter-spacing: .14em; text-decoration: none; text-transform: uppercase; }
.shop-browse__utilities a:hover,.shop-browse__utilities a:focus-visible { color: #101517; background: #eef5f6; outline: 2px solid #fff; outline-offset: 3px; }
.shop-full-store { margin-top: .65rem; }
.shop-full-store .browse-story__label { width: 100%; }
.shop-browse__assessment { margin: .95rem 0 0; color: #aeb9bc; font-size: .63rem; line-height: 1.6; text-align: center; }
.shop-browse__assessment a { color: #e8f0f1; text-underline-offset: .25em; }
.foot.foot--stacked { z-index: 1; position: relative; background: transparent; box-shadow: none; text-shadow: 0 2px 18px rgba(0,0,0,.92); }
.foot.foot--stacked:before { content: ""; inset: 0; z-index: -1; pointer-events: none; position: absolute; background: linear-gradient(180deg,rgba(4,4,4,0),rgba(4,4,4,.2)); }
.foot.foot--stacked { width: min(88%,42rem); margin: 0 auto; padding: 2.2rem 0 6rem; display: grid; grid-template-columns: 1fr; grid-template-areas: "signature" "contact" "signup" "privacy"; justify-items: center; row-gap: .25rem; text-align: center; }
.foot.foot--stacked .sig { grid-area: signature; justify-self: center; }
.foot.foot--stacked .sig__mark { width: 9.5rem; height: 4.25rem; }
.shop-page .foot.foot--stacked .sig { flex-direction: column; gap: 0; }
.shop-page .foot.foot--stacked .sig__suffix { margin-top: -.45rem; color: #fff; font-size: .72rem; letter-spacing: .2em; line-height: 1; }
.foot.foot--stacked address { grid-area: contact; margin: -.2rem 0 0; display: grid; justify-items: center; gap: .45rem; text-align: center; }
.foot.foot--stacked address a,.foot.foot--stacked address span { width: max-content; max-width: 100%; margin: 0; }
.foot.foot--stacked address .ig { width: 1.65rem; height: 1.65rem; margin: 0; transform: none; }
.foot.foot--stacked address .address-link { color: #cfcbc6; white-space: normal; text-decoration: none; border-bottom: 0; padding-bottom: 0; }
.foot.foot--stacked address .address-link:hover { color: #fff; text-shadow: 0 0 .08rem #fff,0 0 .42rem rgba(255,255,255,.58); }
.foot.foot--stacked address .address-link:focus-visible { color: #fff; outline: 1px solid rgba(255,255,255,.82); outline-offset: 3px; text-shadow: 0 0 .08rem #fff,0 0 .42rem rgba(255,255,255,.58); }
.foot.foot--stacked .foot-privacy { grid-area: privacy; margin: .65rem 0 0; display: flex; gap: .8rem; font-size: .5rem; letter-spacing: .08em; opacity: .48; }
.foot.foot--stacked .foot-privacy a { color: #fff; text-decoration: none; }
.foot.foot--stacked .text-signup { grid-area: signup; width: min(100%,31rem); margin: 1.55rem auto .45rem; padding: 1.2rem 1.25rem 1.1rem; border: 1px solid rgba(255,255,255,.2); border-radius: 1.15rem; background: rgba(8,8,8,.18); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); text-align: center; }
.text-signup__eyebrow { margin: 0 0 .35rem; color: #cfcbc6; font-size: .58rem; letter-spacing: .2em; text-transform: uppercase; }
.text-signup__offer { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.05rem,2.6vw,1.35rem); line-height: 1.3; }
.text-signup__offer strong { font-weight: 400; }
.text-signup__button { margin: .85rem auto .65rem; padding: .72rem 1rem; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.55); border-radius: 999px; color: #fff; font-size: .68rem; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; transition: background-color .2s ease,color .2s ease; }
.text-signup__button:hover,.text-signup__button:focus-visible { color: #080808; background: #fff; }
.text-signup__number { margin: 0; color: #e4e0db; font-size: .68rem; letter-spacing: .03em; }
.text-signup__number a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.text-signup__legal { max-width: 27rem; margin: .65rem auto 0; color: #c4bfb9; font-size: .5rem; line-height: 1.55; }
.shop-page > .site > .fixed { background: none; }
.shop-page > .site > .fixed .press { border: 1px solid rgba(255,255,255,.22); background: rgba(10,10,10,.34); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }

/* Location choices sit inside the existing service cards; only verified formats link out. */
.makeup-page .service-card-formats { cursor: default; }
.makeup-page .service-card-formats:hover,.makeup-page .service-card-formats:focus-within { color: #f4f1ed; background: rgba(8,8,8,.38); border-color: rgba(255,255,255,.72); }
.service-format { width: 100%; margin-top: 1rem; border-top: 1px solid rgba(255,255,255,.23); color: #fff; }
.service-format summary { min-height: 2.8rem; padding: .7rem .1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; list-style: none; color: #fff; font-size: .57rem; letter-spacing: .14em; text-transform: uppercase; cursor: pointer; }
.service-format summary::-webkit-details-marker { display: none; }
.service-format summary:after { content: "+"; color: #c8dde1; font-size: 1rem; font-weight: 200; line-height: 1; }
.service-format[open] summary:after { content: "−"; }
.service-format summary:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.service-format__options { padding: .2rem 0 .1rem; display: grid; gap: .45rem; }
.service-format__options > a,.service-format__pending { min-height: 3.25rem; padding: .7rem .8rem; display: flex; align-items: center; justify-content: space-between; gap: .8rem; border: 1px solid rgba(255,255,255,.38); color: #fff; background: rgba(255,255,255,.045); text-decoration: none; }
.service-format__options > a:hover,.service-format__options > a:focus-visible { color: #090909; background: #fff; outline: 2px solid #fff; outline-offset: 2px; }
.service-format__options > a > span,.service-format__pending > span { font-size: .68rem; letter-spacing: .04em; }
.service-format__options b { font-size: .49rem; font-weight: 300; letter-spacing: .12em; text-align: right; text-transform: uppercase; }
.service-format__pending { color: #aaa39c; border-color: rgba(255,255,255,.16); }
.service-format__pending b { color: #8f8882; }
.service-checkin { max-width: 48rem; margin: clamp(1.6rem,4vw,2.8rem) auto 0; padding: clamp(1rem,2.4vw,1.45rem) 0 0; border-top: 1px solid rgba(255,255,255,.24); color: #fff; text-align: center; }
.service-checkin h2 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.65rem,3.4vw,2.45rem); font-weight: 400; letter-spacing: -.035em; line-height: 1; text-transform: none; }
.service-checkin p { max-width: 40rem; margin: .75rem auto 0; color: #d9d3cc; font-size: .75rem; line-height: 1.65; }
.service-checkin__link { margin-top: .85rem; display: inline-block; color: #fff; border-bottom: 1px solid rgba(255,255,255,.6); font-size: .56rem; letter-spacing: .13em; text-decoration: none; text-transform: uppercase; }
.service-checkin__link:hover,.service-checkin__link:focus-visible { border-bottom-color: #fff; outline: 2px solid #fff; outline-offset: 4px; }
#makeup-teaching,#choose-how-we-meet,#product-routine-edit,#closet-edit,#complete-style-edit { scroll-margin-top: 5rem; }

/* Review-only on-demand check-in: two truthful paths, with no invented Square link. */
.now-offer { width: min(92%,70rem); margin: 0 auto; padding: clamp(2.5rem,6vw,5rem) 0 clamp(2.5rem,5vw,4rem); position: relative; z-index: 2; color: #fff; }
.now-offer__intro { width: min(100%,48rem); margin: 0 auto clamp(1.5rem,3vw,2.4rem); text-align: center; }
.now-offer__intro > p { margin: 0 0 .5rem; color: #c8dde1; font-size: .58rem; letter-spacing: .2em; text-transform: uppercase; }
.now-offer__intro h2 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.25rem,5vw,4.7rem); font-weight: 400; letter-spacing: -.05em; line-height: .94; text-transform: none; }
.now-offer__intro > span { max-width: 38rem; margin: .85rem auto 0; display: block; color: #d8d2cb; font-size: .75rem; line-height: 1.65; }
.now-choice-actions { width: min(100%,46rem); margin: 0 auto; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .85rem; }
.now-choice { min-width: 0; min-height: 21rem; padding: 1.25rem; display: grid; grid-template-rows: auto 1fr auto; align-content: start; border: 1px solid rgba(255,255,255,.28); background: rgba(8,8,8,.38); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); text-align: center; }
.now-choice h3 { margin: .2rem 0 1rem; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.55rem,3vw,2.15rem); font-weight: 400; letter-spacing: -.035em; line-height: 1; text-transform: none; }
.now-choice__actions { display: grid; grid-template-columns: 1fr; gap: .55rem; align-content: center; }
.now-choice__actions a,.now-choice__actions span { min-height: 3rem; padding: .55rem .35rem; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.58); color: #fff; background: rgba(255,255,255,.04); font-size: .52rem; letter-spacing: .12em; line-height: 1.35; text-decoration: none; text-transform: uppercase; }
.now-choice__actions a:hover,.now-choice__actions a:focus-visible { color: #080808; background: #fff; outline: 2px solid #fff; outline-offset: 2px; }
.now-choice__actions span { color: #8f8882; border-color: rgba(255,255,255,.18); cursor: not-allowed; }
.now-choice > small { margin-top: .75rem; color: #c7c1bb; font-size: .62rem; line-height: 1.55; }
.now-offer__payment { max-width: 38rem; margin: 1rem auto 0; color: #edf4f5; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.05rem,2.2vw,1.4rem); line-height: 1.35; text-align: center; }
.now-offer__note { max-width: 44rem; margin: 1rem auto 0; color: #aaa39c; font-size: .63rem; line-height: 1.65; text-align: center; }
.now-access-paths { width: min(92%,46rem); margin: clamp(1.4rem,4vw,2.5rem) auto 0; padding: 0; position: relative; z-index: 3; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
.now-access-paths a { min-width: 0; min-height: 6.5rem; padding: 1rem; display: grid; grid-template-columns: auto minmax(0,1fr); grid-template-rows: auto auto; column-gap: .75rem; align-content: center; border: 1px solid rgba(255,255,255,.35); color: #fff; background: rgba(8,8,8,.18); box-shadow: 0 .85rem 2.3rem rgba(0,0,0,.18); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); text-decoration: none; }
.now-access-paths a:hover,.now-access-paths a:focus-visible { border-color: #fff; color: #fff; background: rgba(8,8,8,.38); box-shadow: 0 1rem 2.6rem rgba(0,0,0,.24); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); outline: 2px solid #fff; outline-offset: 3px; }
.now-access-paths span { grid-row: 1 / 3; align-self: center; color: #91a9ae; font-size: .5rem; letter-spacing: .12em; }
.now-access-paths strong { min-width: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.2rem,2.5vw,1.7rem); font-weight: 400; letter-spacing: -.03em; line-height: 1; }
.now-access-paths small { margin-top: .35rem; color: #bdb9b4; font-size: .57rem; line-height: 1.35; }
#access-choice,#one-time-access,#monthly-membership { scroll-margin-top: 5rem; }
.now-membership { width: min(92%,70rem); margin: 0 auto; padding: 0 0 clamp(4rem,9vw,7rem); position: relative; z-index: 2; color: #fff; }
.now-membership__frame { padding: clamp(1.35rem,4vw,3rem); border: 1px solid rgba(223,235,238,.32); background: linear-gradient(135deg,rgba(8,11,13,.92),rgba(21,30,34,.72)); box-shadow: 0 1.8rem 5rem rgba(0,0,0,.28); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.now-membership__intro { max-width: 52rem; margin: 0 0 clamp(1.6rem,3vw,2.5rem); }
.now-membership__intro > p { margin: 0 0 .55rem; color: #bcd4d9; font-size: .56rem; letter-spacing: .2em; text-transform: uppercase; }
.now-membership__intro h2 { max-width: 15ch; margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.55rem,5.5vw,5rem); font-weight: 400; letter-spacing: -.055em; line-height: .92; }
.now-membership__intro > span { max-width: 40rem; margin-top: .8rem; display: block; color: #d7d4cf; font-size: .76rem; line-height: 1.65; }
.now-membership__grid { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(17rem,.8fr); gap: clamp(1.25rem,3vw,2.5rem); align-items: start; }
.now-membership__copy h3 { max-width: 17ch; margin: 0 0 1rem; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.55rem,3vw,2.4rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.02; }
.now-membership__copy > p { max-width: 45rem; margin: 0; color: #d5d1cc; font-size: .74rem; line-height: 1.75; }
.now-membership__copy > p + p { margin-top: 1.2rem; }
.now-membership__uses { margin: 1.4rem 0; padding: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; list-style: none; }
.now-membership__uses li { min-height: 3.25rem; padding: .7rem .85rem; display: flex; align-items: center; border: 1px solid rgba(222,235,239,.22); color: #edf4f5; background: rgba(255,255,255,.025); font-family: Georgia,"Times New Roman",serif; font-size: 1rem; line-height: 1.15; }
.now-membership__terms { min-width: 0; padding: 1.2rem; border: 1px solid rgba(221,234,238,.26); background: rgba(0,0,0,.28); }
.now-membership__terms > p { margin: 0 0 .8rem; color: #dbe9ec; font-size: .54rem; letter-spacing: .18em; text-transform: uppercase; }
.now-membership__terms dl { margin: 0; }
.now-membership__terms dl > div { padding: .8rem 0; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .8rem; border-top: 1px solid rgba(255,255,255,.13); }
.now-membership__terms dt,.now-membership__terms dd { margin: 0; font-size: .61rem; line-height: 1.45; }
.now-membership__terms dt { color: #dedbd6; }
.now-membership__terms dd { color: #8f9b9d; text-align: right; }
.now-membership__terms button { width: 100%; min-height: 3.15rem; margin-top: 1rem; padding: .7rem .8rem; border: 1px solid rgba(255,255,255,.2); color: #8f999b; background: rgba(255,255,255,.035); font: inherit; font-size: .5rem; letter-spacing: .12em; text-transform: uppercase; cursor: not-allowed; }
.now-membership__terms small { margin-top: .8rem; display: block; color: #9e9a95; font-size: .57rem; line-height: 1.55; }
.now-remote-scope { width: min(92%,70rem); margin: 0 auto; padding: clamp(2.25rem,5vw,4rem); position: relative; z-index: 2; border: 1px solid rgba(223,235,238,.28); color: #fff; background: linear-gradient(135deg,rgba(8,11,13,.9),rgba(21,30,34,.7)); }
.now-remote-scope header > p,.membership-remote-scope header > p { margin: 0 0 .55rem; color: #bcd4d9; font-size: .54rem; letter-spacing: .2em; text-transform: uppercase; }
.now-remote-scope h2,.membership-remote-scope h3 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2rem,4.5vw,3.6rem); font-weight: 400; letter-spacing: -.05em; line-height: .95; }
.now-remote-scope header > span,.membership-remote-scope header > span { max-width: 42rem; margin-top: .8rem; display: block; color: #d5d1cc; font-size: .7rem; line-height: 1.65; }
.now-remote-scope ul,.membership-remote-scope ul { margin: 1.35rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .55rem; list-style: none; }
.now-remote-scope li,.membership-remote-scope li { min-height: 3.4rem; padding: .75rem; display: flex; align-items: center; border: 1px solid rgba(222,235,239,.22); color: #edf4f5; background: rgba(255,255,255,.025); font-family: Georgia,"Times New Roman",serif; font-size: 1rem; line-height: 1.15; }
.now-remote-scope small,.membership-remote-scope small { margin-top: 1rem; display: block; color: #aaa6a1; font-size: .57rem; line-height: 1.6; }
.now-member-links { width: min(92%,46rem); margin: .65rem auto 0; position: relative; z-index: 3; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
.now-member-links a { min-height: 2.8rem; padding: .65rem .8rem; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(225,237,240,.25); color: #eef5f6; background: rgba(7,10,12,.66); font-size: .54rem; letter-spacing: .14em; text-align: center; text-decoration: none; text-transform: uppercase; }
.now-member-links a:hover,.now-member-links a:focus-visible { color: #111; background: #fff; outline: 2px solid #fff; outline-offset: 3px; }
#request-now,#plan-ahead,#member-access,#membership-options,#member-credit-checkout { scroll-margin-top: 5rem; }
.member-entry { width: min(92%,70rem); margin: 0 auto; padding: 0 0 clamp(4rem,9vw,7rem); position: relative; z-index: 2; color: #fff; }
.member-entry__frame { padding: clamp(1.35rem,4vw,3rem); border: 1px solid rgba(255,255,255,.35); background: rgba(8,8,8,.18); box-shadow: 0 .85rem 2.3rem rgba(0,0,0,.18); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.member-entry__frame > header { max-width: 48rem; }
.member-entry__frame > header > p,.membership-section-head > p,.membership-tier > p,.membership-access-grid article > p { margin: 0 0 .55rem; color: #bcd4d9; font-size: .54rem; letter-spacing: .2em; text-transform: uppercase; }
.member-entry__frame > header h2,.membership-section-head h2 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.45rem,5.5vw,4.8rem); font-weight: 400; letter-spacing: -.055em; line-height: .94; }
.member-entry__frame > header > span,.membership-section-head > span { max-width: 42rem; margin-top: .8rem; display: block; color: #d5d1cc; font-size: .73rem; line-height: 1.65; }
.member-preview-switch { margin: 1.6rem 0 1rem; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
.member-preview-switch button { min-height: 2.9rem; padding: .65rem; border: 1px solid rgba(255,255,255,.28); color: #c4c0bb; background: rgba(255,255,255,.025); font: inherit; font-size: .53rem; letter-spacing: .13em; text-transform: uppercase; cursor: pointer; }
.member-preview-switch button[aria-pressed="true"] { color: #101517; border-color: #eef5f6; background: #eef5f6; }
.member-preview-switch button:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.member-preview-view { padding: clamp(1rem,2.5vw,1.6rem); border: 1px solid rgba(222,235,239,.22); background: rgba(0,0,0,.24); }
.member-preview-view[hidden] { display: none; }
.member-preview-view__eyebrow { margin: 0 0 .5rem; color: #9eb9be; font-size: .52rem; letter-spacing: .17em; text-transform: uppercase; }
.member-preview-view h3,.membership-tier h3,.membership-access-grid h3,.membership-architecture h3 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.35rem,2.7vw,2rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.05; }
.member-preview-view > p:not(.member-preview-view__eyebrow),.membership-access-grid article > span,.membership-architecture p { max-width: 42rem; margin: .75rem 0 0; display: block; color: #d2cec9; font-size: .68rem; line-height: 1.65; }
.member-login-choices { margin-top: 1rem; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .55rem; }
.member-login-choices button { min-height: 3rem; padding: .65rem; border: 1px solid rgba(255,255,255,.18); color: #8f999b; background: rgba(255,255,255,.025); font: inherit; font-size: .48rem; letter-spacing: .1em; line-height: 1.35; text-transform: uppercase; cursor: not-allowed; }
.member-text-link { margin-top: 1rem; display: inline-block; color: #fff; border-bottom: 1px solid rgba(255,255,255,.6); font-size: .56rem; letter-spacing: .13em; text-decoration: none; text-transform: uppercase; }
.member-text-link:hover,.member-text-link:focus-visible { border-bottom-color: #fff; outline: 2px solid #fff; outline-offset: 4px; }
.member-direct-links { margin-top: 1rem; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
.member-direct-links a { min-height: 3.1rem; padding: .7rem; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.5); color: #fff; font-size: .53rem; letter-spacing: .13em; text-decoration: none; text-transform: uppercase; }
.member-direct-links a:hover,.member-direct-links a:focus-visible { color: #111; background: #fff; outline: 2px solid #fff; outline-offset: 3px; }
.member-preview-view > small { margin-top: .8rem; display: block; color: #9d9994; font-size: .56rem; }
.membership-hero { min-height: 78svh; }
.membership-concept-note { margin-top: 1rem; display: block; color: #bcd4d9; font-size: .55rem; letter-spacing: .1em; line-height: 1.55; text-transform: uppercase; }
.membership-hero__links { margin-top: 1.2rem; display: flex; flex-wrap: wrap; justify-content: center; gap: .55rem; }
.membership-hero__links a { min-height: 2.8rem; padding: .65rem 1rem; display: inline-flex; align-items: center; border: 1px solid rgba(255,255,255,.48); color: #fff; font-size: .53rem; letter-spacing: .14em; text-decoration: none; text-transform: uppercase; }
.membership-hero__links a:hover,.membership-hero__links a:focus-visible { color: #111; background: #fff; outline: 2px solid #fff; outline-offset: 3px; }
.membership-options,.membership-checkout-plan,.membership-access-plan { width: min(92%,74rem); margin: 0 auto; padding: clamp(2.5rem,6vw,5rem) 0; position: relative; z-index: 2; color: #fff; }
.membership-section-head { max-width: 52rem; margin-bottom: clamp(1.4rem,3vw,2.2rem); }
.membership-section-head h2 { font-size: clamp(2.25rem,5vw,4.4rem); }
.membership-tier-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; }
.membership-tier { min-width: 0; padding: clamp(1rem,2.2vw,1.5rem); display: flex; flex-direction: column; border: 1px solid rgba(255,255,255,.35); background: rgba(8,8,8,.2); box-shadow: 0 .85rem 2.3rem rgba(0,0,0,.18); }
.membership-tier h3 { min-height: 2.4em; }
.membership-tier > .membership-tier__summary { margin: .7rem 0 0; color: #dedbd6; font-size: .6rem; letter-spacing: 0; line-height: 1.55; text-transform: none; }
.membership-tier__current { width: fit-content; margin: .75rem 0 0; padding: .28rem .42rem; border: 1px solid rgba(255,255,255,.58); color: #fff; font-size: .48rem; letter-spacing: .08em; line-height: 1.3; text-transform: uppercase; }
.membership-tier--current { border-color: rgba(255,255,255,.92); background: rgba(24,31,33,.5); box-shadow: 0 0 0 1px rgba(255,255,255,.14),0 1rem 2.8rem rgba(0,0,0,.22); }
.membership-tier dl { margin: 1rem 0; }
.membership-tier dl > div { padding: .72rem 0; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .65rem; border-top: 1px solid rgba(255,255,255,.13); }
.membership-tier dt,.membership-tier dd { margin: 0; font-size: .58rem; line-height: 1.45; }
.membership-tier dt { color: #dedbd6; }
.membership-tier dd { color: #8f999b; text-align: right; }
.membership-tier > .membership-tier__note { margin: 0 0 1rem; padding: .7rem 0 0; border-top: 1px solid rgba(255,255,255,.13); color: #cecac5; font-size: .58rem; letter-spacing: 0; line-height: 1.55; text-transform: none; }
.membership-tier__note span { color: #8f999b; white-space: nowrap; }
.membership-tier__cta { width: 100%; min-height: 44px; margin-top: auto; padding: .65rem; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(244,239,230,.5); color: #f4efe6; background: transparent; box-shadow: none; font: inherit; font-size: .54rem; font-weight: 300; letter-spacing: .12em; line-height: 1.35; text-align: center; text-decoration: none; text-transform: uppercase; cursor: pointer; }
.membership-tier__cta:hover,.membership-tier__cta:focus-visible { color: #090909; border-color: #f4efe6; background: #f4efe6; outline: 2px solid #fff; outline-offset: 3px; }
.membership-tier__cta:is(button):disabled { color: #fff; border-color: rgba(255,255,255,.58); background: rgba(255,255,255,.09); cursor: default; opacity: 1; }
.membership-tier__cta:is(button):disabled:hover { outline: 0; }
.membership-stars-note,.membership-paid-note { max-width: 58rem; margin: .85rem auto 0; color: #cecac5; font-size: .62rem; line-height: 1.65; text-align: center; }
.membership-paid-note strong { color: #fff; font-weight: 400; }
.membership-remote-scope { margin-top: .75rem; padding: clamp(1rem,2.5vw,1.6rem); border: 1px solid rgba(255,255,255,.28); background: rgba(8,8,8,.2); box-shadow: 0 .85rem 2.3rem rgba(0,0,0,.14); }
.membership-remote-scope h3 { font-size: clamp(1.75rem,3.5vw,2.8rem); }
.membership-bridge { margin: 0 0 .75rem; padding: .85rem 1rem; display: grid; grid-template-columns: minmax(0,1.2fr) minmax(16rem,.8fr); gap: 1rem; align-items: center; border-left: 1px solid rgba(188,212,217,.74); background: rgba(8,10,11,.18); }
.membership-bridge p { margin: 0; color: #d3cec8; font-size: .62rem; line-height: 1.65; }
.membership-bridge a { justify-self: end; color: #cde5e8; font-size: .53rem; letter-spacing: .045em; line-height: 1.6; text-align: right; text-decoration: none; }
.membership-bridge a span { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.membership-bridge a:hover,.membership-bridge a:focus-visible { color: #fff; outline: 2px solid #fff; outline-offset: 4px; }
.membership-bridge--private { margin-top: 0; border-left-color: rgba(215,238,241,.82); background: rgba(255,255,255,.025); }
.private-style-hero h1 { max-width: 12ch; margin-inline: auto; font-size: clamp(3.7rem,8.5vw,7.8rem); line-height: .88; text-wrap: balance; }
.private-style-hero .lede { max-width: 50rem; }
#remote-style-direction { scroll-margin-top: 4.5rem; }
.remote-style-direction { width: min(92%,74rem); margin: clamp(1.5rem,4vw,3.5rem) auto 0; padding: clamp(1.35rem,3.5vw,2.6rem); position: relative; z-index: 2; border: 1px solid rgba(218,236,239,.52); color: #fff; background: linear-gradient(145deg,rgba(6,9,11,.95),rgba(20,29,33,.86)); box-shadow: 0 1.8rem 5rem rgba(0,0,0,.34); }
.remote-style-direction::before { width: 4.5rem; height: 1px; position: absolute; top: 0; left: clamp(1.35rem,3.5vw,2.6rem); content: ""; background: #d7eef1; }
.remote-style-direction__intro { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(14rem,.65fr); gap: clamp(1.2rem,4vw,3rem); align-items: end; }
.remote-style-direction__intro > div > p:first-child { margin: 0 0 .55rem; color: #bcd4d9; font-size: .56rem; letter-spacing: .2em; text-transform: uppercase; }
.remote-style-direction__intro h2 { max-width: 11ch; margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.8rem,6.4vw,5.7rem); font-weight: 400; letter-spacing: -.055em; line-height: .9; text-wrap: balance; }
.remote-style-direction__outcome { max-width: 38rem; margin: 1rem 0 0; color: #edf7f8; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.35rem,2.8vw,2.1rem); line-height: 1.08; }
.remote-style-direction__summary { max-width: 47rem; margin: .85rem 0 0; color: #d5d1cc; font-size: .7rem; line-height: 1.7; }
.remote-style-direction__delivery { min-width: 0; padding: clamp(1rem,2.5vw,1.5rem); border: 1px solid rgba(215,238,241,.46); background: rgba(255,255,255,.035); }
.remote-style-direction__delivery span,.remote-style-direction__delivery strong,.remote-style-direction__delivery small { display: block; }
.remote-style-direction__delivery span { font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.4rem,5vw,4rem); letter-spacing: -.045em; line-height: .9; }
.remote-style-direction__delivery strong { margin-top: 1rem; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.15rem,2.2vw,1.55rem); font-weight: 400; line-height: 1.15; }
.remote-style-direction__delivery small { margin-top: .75rem; color: #aaa49e; font-size: .57rem; line-height: 1.6; }
.remote-style-direction__delivery b { margin-top: .8rem; display: block; color: #fff; font-size: .58rem; font-weight: 400; letter-spacing: .1em; text-transform: uppercase; }
.remote-style-direction__steps { margin: clamp(1.5rem,3vw,2.3rem) 0 0; padding: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .65rem; list-style: none; counter-reset: remote-style-step; }
.remote-style-direction__steps li { min-width: 0; padding: 1rem; border-top: 1px solid rgba(215,238,241,.5); background: rgba(0,0,0,.18); counter-increment: remote-style-step; }
.remote-style-direction__steps li::before { content: "0" counter(remote-style-step); color: #a8c2c7; font-family: Georgia,"Times New Roman",serif; font-size: 1.15rem; }
.remote-style-direction__steps span { margin-top: .6rem; display: block; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.25rem,2.5vw,1.75rem); line-height: 1.05; }
.remote-style-direction__steps p { margin: .65rem 0 0; color: #c9c4be; font-size: .61rem; line-height: 1.6; }
.remote-style-direction__checkout { margin-top: .75rem; padding: clamp(1rem,2.5vw,1.5rem); display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .7rem 1.25rem; align-items: center; border: 1px solid rgba(255,255,255,.26); background: rgba(0,0,0,.25); }
.remote-style-direction__checkout > div { min-width: 0; }
.remote-style-direction__checkout span { display: block; color: #bcd4d9; font-size: .49rem; letter-spacing: .14em; text-transform: uppercase; }
.remote-style-direction__checkout strong { margin-top: .35rem; display: block; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.25rem,2.4vw,1.75rem); font-weight: 400; line-height: 1.1; }
.remote-style-direction__checkout p { max-width: 44rem; margin: .55rem 0 0; color: #c8c2bc; font-size: .6rem; line-height: 1.65; }
.remote-style-direction__checkout a { min-height: 3.2rem; padding: .75rem 1rem; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(215,238,241,.78); color: #071013; background: #d7eef1; font-size: .51rem; letter-spacing: .11em; line-height: 1.35; text-align: center; text-decoration: none; text-transform: uppercase; }
.remote-style-direction__checkout a:hover,.remote-style-direction__checkout a:focus-visible { color: #fff; background: transparent; outline: 2px solid #fff; outline-offset: 3px; }
.remote-style-direction__checkout > small { grid-column: 1 / -1; color: #99938d; font-size: .53rem; line-height: 1.55; }
.remote-style-direction__purchase { width: min(100%,29rem); min-height: 3.35rem; margin: .9rem auto 0; padding: .8rem 1.1rem; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(215,238,241,.78); color: #071013; background: #d7eef1; font-size: .53rem; letter-spacing: .11em; line-height: 1.35; text-align: center; text-decoration: none; text-transform: uppercase; }
.remote-style-direction__purchase:hover,.remote-style-direction__purchase:focus-visible { color: #fff; background: transparent; outline: 2px solid #fff; outline-offset: 3px; }
.remote-style-direction__boundary { margin-top: .75rem; padding: .9rem 1rem; display: grid; grid-template-columns: minmax(10rem,.4fr) minmax(0,1.6fr); gap: 1rem; align-items: center; border-left: 1px solid #bcd4d9; background: rgba(255,255,255,.025); }
.remote-style-direction__boundary strong { font-family: Georgia,"Times New Roman",serif; font-size: 1.15rem; font-weight: 400; }
.remote-style-direction__boundary span { color: #aaa49e; font-size: .58rem; line-height: 1.6; }
#private-style-foundations { scroll-margin-top: 4.5rem; }
.private-style-foundations { width: min(92%,74rem); margin: 0 auto; padding: clamp(3rem,7vw,6rem) 0 clamp(2rem,5vw,4rem); position: relative; z-index: 2; color: #fff; }
.private-style-foundations > header { max-width: 54rem; }
.private-style-foundations > header > p { margin: 0 0 .55rem; color: #bcd4d9; font-size: .56rem; letter-spacing: .2em; text-transform: uppercase; }
.private-style-foundations > header h2 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.8rem,6vw,5.4rem); font-weight: 400; letter-spacing: -.055em; line-height: .92; }
.private-style-foundations > header span { max-width: 42rem; margin-top: .85rem; display: block; color: #d7d2cc; font-size: .75rem; line-height: 1.7; }
.private-style-foundations__grid { margin-top: clamp(1.5rem,3vw,2.4rem); display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; }
.private-style-foundations__grid article { min-width: 0; padding: clamp(1rem,2.2vw,1.5rem); display: flex; flex-direction: column; border: 1px solid rgba(255,255,255,.32); background: rgba(8,8,8,.3); }
.private-style-foundations__grid h3 { min-height: 2.2em; margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.35rem,2.6vw,2rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.05; }
.private-style-foundations__price { margin: .9rem 0 0; color: #eef7f8; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.35rem,2.6vw,1.9rem); }
.private-style-foundations__price span { margin-top: .35rem; display: block; color: #bcd4d9; font-family: Poppins,sans-serif; font-size: .52rem; letter-spacing: .15em; text-transform: uppercase; }
.private-style-foundations__grid article > p:not(.private-style-foundations__price) { margin: .8rem 0 1rem; color: #cbc6c0; font-size: .64rem; line-height: 1.65; }
.private-style-foundations__grid article > .private-style-foundations__outcome { margin-bottom: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: .95rem; line-height: 1.3; }
.private-style-foundations__outcome + p { margin-top: .55rem!important; }
.private-style-foundations__boundary { margin: 0 0 1rem; display: block; color: #aaa49e; font-size: .58rem; line-height: 1.55; }
.private-style-priority-upsell { margin: 0 0 1rem; padding: .8rem 0 .75rem; border-top: 1px solid rgba(215,238,241,.32); border-bottom: 1px solid rgba(215,238,241,.18); }
.private-style-priority-upsell p { margin: 0; color: #d6d1cb; font-size: .58rem; line-height: 1.58; }
.private-style-priority-upsell p strong { color: #eef7f8; font-family: Georgia,"Times New Roman",serif; font-size: .78rem; font-weight: 400; }
.private-style-priority-upsell small { margin-top: .55rem; display: block; color: #bcd4d9; font-size: .53rem; line-height: 1.55; }
.private-style-foundations__grid a:not(.membership-tier__cta) { min-height: 3rem; margin-top: auto; padding: .65rem; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.45); color: #fff; font-size: .52rem; letter-spacing: .11em; line-height: 1.35; text-align: center; text-decoration: none; text-transform: uppercase; }
.private-style-foundations__grid a:not(.membership-tier__cta):hover,.private-style-foundations__grid a:not(.membership-tier__cta):focus-visible { color: #0a0a0a; background: #fff; outline: 2px solid #fff; outline-offset: 3px; }
.private-style-foundations__grid .private-style-priority-upsell a:not(.membership-tier__cta) { min-height: 0; margin-top: .6rem; padding: 0; display: inline-flex; justify-content: flex-start; border: 0; color: #d7eef1; background: transparent; font-size: .5rem; letter-spacing: .1em; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .22em; }
.private-style-foundations__grid .private-style-priority-upsell a:not(.membership-tier__cta):hover,.private-style-foundations__grid .private-style-priority-upsell a:not(.membership-tier__cta):focus-visible { color: #fff; background: transparent; outline: 2px solid #fff; outline-offset: 4px; }
.private-style-foundations > small { max-width: 52rem; margin: 1rem auto 0; display: block; color: #aaa49e; font-size: .6rem; line-height: 1.65; text-align: center; }
#private-style-membership { scroll-margin-top: 4.5rem; }
.private-style-membership { width: min(92%,74rem); margin: clamp(1rem,3vw,2rem) auto clamp(4rem,9vw,7rem); padding: clamp(2rem,5vw,4rem); position: relative; z-index: 2; border: 1px solid rgba(223,235,238,.35); color: #fff; background: linear-gradient(145deg,rgba(6,9,11,.94),rgba(20,29,33,.78)); box-shadow: 0 1.8rem 5rem rgba(0,0,0,.32); }
.private-style-membership::before { width: 4.5rem; height: 1px; position: absolute; top: 0; left: clamp(2rem,5vw,4rem); content: ""; background: #d7eef1; }
.private-style-membership__intro { max-width: 58rem; }
.private-style-membership__eyebrow { margin: 0 0 .65rem; color: #bcd4d9; font-size: .56rem; letter-spacing: .2em; text-transform: uppercase; }
.private-style-membership__intro h2 { max-width: 14ch; margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(3rem,6.4vw,6.2rem); font-weight: 400; letter-spacing: -.06em; line-height: .88; text-wrap: balance; }
.private-style-membership__declaration { margin: 1.2rem 0 0; color: #edf7f8; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.35rem,2.8vw,2.15rem); line-height: 1.05; }
.private-style-membership__summary { max-width: 51rem; margin: .9rem 0 0; color: #dfdbd6; font-size: .78rem; line-height: 1.75; }
.private-style-membership__distinction { max-width: 51rem; margin: .75rem 0 0; color: #a9a49e; font-size: .64rem; line-height: 1.65; }
.private-style-membership__value { margin: clamp(1.8rem,4vw,3rem) 0 1rem; padding: 1.2rem clamp(1rem,2.5vw,1.6rem); display: grid; grid-template-columns: minmax(14rem,.7fr) minmax(0,1.3fr); gap: 1rem; align-items: center; border: 1px solid rgba(216,235,238,.3); background: rgba(255,255,255,.035); }
.private-style-membership__value strong { font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.25rem,2.6vw,1.85rem); font-weight: 400; letter-spacing: -.03em; line-height: 1.05; }
.private-style-membership__value span { color: #cbc6c0; font-size: .65rem; line-height: 1.65; }
.private-style-membership__tiers { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; }
.private-style-tier { min-width: 0; padding: clamp(1rem,2.2vw,1.45rem); display: flex; flex-direction: column; border: 1px solid rgba(224,235,238,.34); background: linear-gradient(145deg,rgba(2,4,5,.22),rgba(9,13,15,.1)); box-shadow: inset 0 1px 0 rgba(255,255,255,.045), 0 1.2rem 3rem rgba(0,0,0,.12); }
.private-style-tier--priority { border-color: rgba(215,238,241,.62); background: linear-gradient(145deg,rgba(22,37,42,.32),rgba(8,13,15,.12)); box-shadow: inset 0 1px 0 rgba(224,244,247,.08), 0 1.2rem 3rem rgba(0,0,0,.14); }
.private-style-tier--priority { scroll-margin-top: 5rem; }
.private-style-tier--priority:target { outline: 2px solid rgba(215,238,241,.9); outline-offset: 4px; }
.private-style-tier--priority:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.private-style-tier :is(h3,header p,li,.private-style-tier__cta,small) { text-shadow: 0 .06em .08em rgba(0,0,0,.98), 0 0 .3em rgba(0,0,0,.88); }
.private-style-tier header { padding-bottom: .9rem; border-bottom: 1px solid rgba(255,255,255,.14); }
.private-style-tier h3 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.45rem,2.8vw,2.15rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
.private-style-tier header p { margin: .8rem 0 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.35rem,2.5vw,1.8rem); }
.private-style-tier header p span { color: #aaa49e; font-family: Poppins,sans-serif; font-size: .5rem; letter-spacing: .1em; text-transform: uppercase; }
.private-style-tier ul { margin: 1rem 0 1.2rem; padding: 0; display: grid; gap: .65rem; list-style: none; }
.private-style-tier li { padding-left: .8rem; position: relative; color: #d9d4ce; font-size: .62rem; line-height: 1.55; }
.private-style-tier li::before { width: .25rem; height: 1px; position: absolute; top: .72em; left: 0; content: ""; background: #bcd4d9; }
.private-style-tier__cta { width: 100%; min-height: 3rem; margin-top: auto; padding: .65rem; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.52); color: #fff; background: transparent; font-size: .52rem; letter-spacing: .11em; line-height: 1.35; text-align: center; text-decoration: none; text-transform: uppercase; }
.private-style-tier__cta:hover,.private-style-tier__cta:focus-visible { color: #0a0a0a; background: #fff; outline: 2px solid #fff; outline-offset: 3px; }
.private-style-tier > small { margin-top: .7rem; display: block; color: #97918b; font-size: .53rem; line-height: 1.5; text-align: center; }
.private-style-membership__commitment { max-width: 58rem; margin: clamp(1.5rem,3vw,2.4rem) auto 0; padding-top: 1.3rem; border-top: 1px solid rgba(255,255,255,.2); text-align: center; }
.private-style-membership__commitment p { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.2rem,2.5vw,1.7rem); line-height: 1.3; }
.private-style-membership__commitment span { max-width: 50rem; margin: .8rem auto 0; display: block; color: #a9a49e; font-size: .59rem; line-height: 1.7; }
.private-style-page :is(
  .private-style-hero .lede,
  .private-style-foundations > header > span,
  .private-style-foundations__grid article > p:not(.private-style-foundations__price),
  .private-style-foundations > small,
  .private-style-membership__summary,
  .private-style-membership__distinction,
  .private-style-membership__value span,
  .private-style-tier header p span,
  .private-style-tier li,
  .private-style-tier > small,
  .private-style-membership__commitment span
) {
  text-shadow: 0 .06em .08em rgba(0,0,0,.98), 0 0 .24em rgba(0,0,0,.9), 0 0 .72em rgba(0,0,0,.64);
}
.membership-checkout-steps { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .55rem; list-style: none; counter-reset: none; }
.membership-checkout-steps li { min-width: 0; padding: 1rem; display: grid; align-content: start; gap: .8rem; border: 1px solid rgba(222,235,239,.25); background: linear-gradient(145deg,rgba(7,10,12,.92),rgba(22,31,35,.76)); }
.membership-checkout-steps li > span { color: #a8c2c7; font-family: Georgia,"Times New Roman",serif; font-size: 1.35rem; }
.membership-checkout-steps h3,.membership-ledger-note h3 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.15rem,2vw,1.55rem); font-weight: 400; letter-spacing: -.03em; line-height: 1.05; }
.membership-checkout-steps p { margin: .65rem 0 0; color: #cecac5; font-size: .61rem; line-height: 1.65; }
.membership-checkout-steps strong { color: #fff; font-weight: 400; }
.membership-ledger-note { margin-top: .75rem; padding: clamp(1rem,2.5vw,1.6rem); border: 1px solid rgba(222,235,239,.22); background: rgba(14,21,24,.82); }
.membership-ledger-note > p { margin: 0 0 .55rem; color: #a8c2c7; font-size: .51rem; letter-spacing: .17em; text-transform: uppercase; }
.membership-ledger-note > span { max-width: 52rem; margin-top: .7rem; display: block; color: #cecac5; font-size: .65rem; line-height: 1.65; }
.membership-access-plan { padding-bottom: clamp(4rem,9vw,7rem); }
.membership-access-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.membership-access-grid article { min-width: 0; padding: clamp(1rem,2.5vw,1.6rem); border: 1px solid rgba(222,235,239,.27); background: rgba(6,9,11,.84); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.membership-architecture { margin-top: .75rem; padding: clamp(1rem,2.5vw,1.6rem); border: 1px solid rgba(222,235,239,.22); background: rgba(14,21,24,.82); }
.member-portal-main { width: min(92%,74rem); margin: 0 auto; padding: 0 0 clamp(4rem,9vw,7rem); position: relative; z-index: 2; color: #fff; }
.member-portal-hero { min-height: 58svh; padding: clamp(7rem,16vh,11rem) 0 clamp(2.5rem,7vw,5rem); display: flex; flex-direction: column; justify-content: flex-end; }
.member-portal-hero > p,.member-portal-shell > header > p,.member-portal-requirements > header > p { margin: 0 0 .55rem; color: #bcd4d9; font-size: .54rem; letter-spacing: .2em; text-transform: uppercase; }
.member-portal-hero h1,.member-portal-shell > header h2,.member-portal-requirements > header h2 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-weight: 400; letter-spacing: -.055em; line-height: .94; }
.member-portal-hero h1 { font-size: clamp(3.6rem,9vw,7.5rem); }
.member-portal-hero > span,.member-portal-shell > header > span { max-width: 44rem; margin-top: .9rem; color: #d5d1cc; font-size: .75rem; line-height: 1.7; }
.member-portal-shell { padding: clamp(1rem,3vw,2.2rem); scroll-margin-top: 4rem; border: 1px solid rgba(255,255,255,.35); background: rgba(8,8,8,.18); box-shadow: 0 .85rem 2.3rem rgba(0,0,0,.18); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.member-portal-shell > header h2 { max-width: 15ch; font-size: clamp(2.25rem,5vw,4.5rem); }
.member-login-actions { margin: 1.6rem 0 1rem; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
.member-login-actions button,.member-login-actions a { min-height: 2.9rem; padding: .65rem; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.35); color: #fff; background: rgba(8,8,8,.18); box-shadow: inset 0 1px 0 rgba(255,255,255,.04); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); font: inherit; font-size: .53rem; letter-spacing: .13em; text-align: center; text-decoration: none; text-transform: uppercase; cursor: pointer; }
.member-login-actions button:hover,.member-login-actions button:focus-visible,.member-login-actions a:hover,.member-login-actions a:focus-visible { border-color: #fff; color: #fff; background: rgba(8,8,8,.38); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); outline: 2px solid #fff; outline-offset: 3px; }
.member-portal-view { padding: clamp(1rem,2.5vw,1.6rem); border: 1px solid rgba(222,235,239,.22); background: rgba(0,0,0,.28); }
.member-portal-view[hidden] { display: none; }
.member-portal-view h3 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.7rem,3.4vw,2.8rem); font-weight: 400; letter-spacing: -.04em; line-height: 1.02; }
.member-portal-view > p:not(.member-preview-view__eyebrow) { max-width: 46rem; margin: .75rem 0 0; color: #d2cec9; font-size: .68rem; line-height: 1.65; }
.member-portal-view > small { margin-top: .8rem; display: block; color: #9d9994; font-size: .56rem; line-height: 1.6; }
.member-portal-summary { margin-top: 1.25rem; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .55rem; }
.member-portal-summary article { min-width: 0; padding: 1rem; border: 1px solid rgba(222,235,239,.22); background: rgba(255,255,255,.025); }
.member-portal-summary span,.member-portal-summary small { display: block; color: #a8c2c7; font-size: .5rem; letter-spacing: .12em; line-height: 1.45; text-transform: uppercase; }
.member-portal-summary strong { margin: .65rem 0 .5rem; display: block; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.2rem,2.4vw,1.8rem); font-weight: 400; line-height: 1.05; }
.member-portal-summary small { color: #9d9994; letter-spacing: 0; line-height: 1.55; text-transform: none; }
.member-portal-actions { margin-top: .65rem; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
.member-portal-actions a,.member-portal-actions button { min-height: 3.1rem; padding: .7rem; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.34); color: #fff; background: rgba(255,255,255,.025); font: inherit; font-size: .52rem; letter-spacing: .11em; line-height: 1.35; text-align: center; text-decoration: none; text-transform: uppercase; }
.member-portal-actions a:hover,.member-portal-actions a:focus-visible { color: #111; background: #fff; outline: 2px solid #fff; outline-offset: 3px; }
.member-portal-actions button { color: #8f999b; border-color: rgba(255,255,255,.16); cursor: not-allowed; }
.member-portal-session-note { padding-top: .75rem; border-top: 1px solid rgba(255,255,255,.12); }
.member-portal-requirements { padding-top: clamp(3rem,7vw,5rem); }
.member-portal-requirements > header h2 { font-size: clamp(2.4rem,5.5vw,4.6rem); }
.member-portal-requirements > div { margin-top: 1.4rem; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .55rem; }
.member-portal-requirements article { min-width: 0; padding: 1rem; border: 1px solid rgba(222,235,239,.22); background: rgba(8,12,14,.82); }
.member-portal-requirements h3 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: 1.3rem; font-weight: 400; line-height: 1.05; }
.member-portal-requirements p { margin: .7rem 0 0; color: #cecac5; font-size: .62rem; line-height: 1.65; }

@media (width<=1050px) {
  .private-style-foundations__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .private-style-foundations__grid h3 { min-height: 0; }
}

@media (width<=799px) {
  .makeup-page .makeup-services--stacked .mgrid { grid-template-columns: 1fr; }
  .makeup-page .makeup-services--stacked .mcard--wide { grid-column: auto; }
  .shop-browse { width: min(96%,42rem); }
  .shop-browse__columns { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .6rem; }
  .browse-column > h3 { font-size: .5rem; letter-spacing: .13em; }
  .browse-story-list { gap: .48rem; }
  .browse-story { min-height: 5.45rem; }
  .browse-story__label { width: 100%; padding: .4rem .8rem .6rem; }
  .browse-story__label strong { font-size: .95rem; }
  .browse-story__label small { margin-top: .28rem; font-size: .38rem; letter-spacing: .09em; }
  .shop-full-store .browse-story__label { width: 100%; }
  .foot.foot--stacked { width: min(88%,28rem); padding-top: 1.5rem; justify-items: center; text-align: center; row-gap: .55rem; }
  .foot.foot--stacked,.foot.foot--stacked * { box-sizing: border-box; min-width: 0; }
  .foot.foot--stacked .sig { justify-self: center; }
  .foot.foot--stacked address { width: 100%; justify-items: center; text-align: center; }
  .foot.foot--stacked address a,.foot.foot--stacked address span { width: auto; max-width: 100%; overflow-wrap: anywhere; }
  .foot.foot--stacked .text-signup { width: 100%; max-width: 31rem; }
  .now-membership__grid { grid-template-columns: 1fr; }
  .membership-tier-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .45rem; align-items: stretch; }
  .private-style-foundations__grid { grid-template-columns: 1fr; }
  .private-style-foundations__grid h3 { min-height: 0; }
  .membership-bridge { grid-template-columns: 1fr; gap: .5rem; }
  .membership-bridge a { justify-self: start; text-align: left; }
  .remote-style-direction__intro { grid-template-columns: 1fr; }
  .remote-style-direction__steps { grid-template-columns: 1fr; }
  .remote-style-direction__checkout { grid-template-columns: 1fr; }
  .remote-style-direction__checkout a { justify-self: stretch; }
  .remote-style-direction__boundary { grid-template-columns: 1fr; gap: .45rem; }
  .private-style-membership__tiers { grid-template-columns: 1fr; }
  .private-style-membership__value { grid-template-columns: 1fr; }
  .membership-tier { padding: .72rem .58rem; }
  .membership-tier h3 { min-height: 2.5em; font-size: clamp(.95rem,3vw,1.2rem); }
  .membership-tier > .membership-tier__summary { margin-top: .55rem; font-size: .53rem; line-height: 1.45; }
  .membership-tier dl { margin: .65rem 0; }
  .membership-tier dl > div { padding: .5rem 0; display: block; }
  .membership-tier dt,.membership-tier dd { font-size: .5rem; line-height: 1.4; overflow-wrap: anywhere; }
  .membership-tier dd { margin-top: .2rem; text-align: left; }
  .membership-tier > .membership-tier__note { margin-bottom: .65rem; padding-top: .5rem; font-size: .5rem; line-height: 1.4; }
  .membership-page .membership-tier__cta { min-height: 2.75rem; padding: .4rem .25rem; font-size: .46rem; letter-spacing: .06em; }
  .now-remote-scope ul,.membership-remote-scope ul { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .membership-checkout-steps { grid-template-columns: 1fr; }
  .membership-access-grid { grid-template-columns: 1fr; }
  .member-portal-summary { grid-template-columns: 1fr; }
  .member-portal-requirements > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (width<=430px) {
  .shop-browse { width: calc(100% - .75rem); }
  .shop-browse__columns { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .42rem; }
  .shop-browse__intro > span { font-size: .71rem; }
  .browse-story { min-height: 5.2rem; }
  .browse-story__label { width: 100%; padding: .4rem .8rem .6rem; }
  .browse-story__label strong { font-size: .95rem; }
  .browse-story__art img { width: 100%; }
  .shop-browse__utilities { display: grid; grid-template-columns: 1fr 1fr; }
  .shop-browse__utilities a { padding-inline: .55rem; text-align: center; }
  .now-offer { width: calc(100% - 1rem); padding-top: 1.5rem; }
  .now-choice-actions { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .42rem; }
  .now-choice { min-height: 19rem; padding: .65rem; }
  .now-choice h3 { margin-bottom: .7rem; font-size: clamp(1.2rem,6vw,1.55rem); }
  .now-choice__actions { gap: .45rem; }
  .now-choice__actions a,.now-choice__actions span { min-height: 2.8rem; padding-inline: .2rem; font-size: .48rem; letter-spacing: .08em; }
  .now-choice > small { font-size: .56rem; }
  .now-access-paths { width: calc(100% - 1rem); gap: .42rem; }
  .now-access-paths a { min-height: 6rem; padding: .7rem .6rem; column-gap: .45rem; }
  .now-access-paths strong { font-size: clamp(1rem,5.2vw,1.32rem); }
  .now-access-paths small { font-size: .51rem; }
  .now-member-links { width: calc(100% - 1rem); gap: .42rem; }
  .member-entry { width: calc(100% - 1rem); }
  .member-entry__frame { padding: 1rem; }
  .member-preview-switch { gap: .42rem; }
  .member-preview-switch button { padding-inline: .3rem; font-size: .47rem; letter-spacing: .08em; }
  .member-login-choices { grid-template-columns: 1fr; }
  .member-portal-main { width: calc(100% - 1rem); }
  .member-portal-hero { min-height: 52svh; }
  .member-login-actions { grid-template-columns: 1fr; }
  .member-portal-actions { grid-template-columns: 1fr; }
  .member-portal-requirements > div { grid-template-columns: 1fr; }
  .membership-options,.membership-checkout-plan,.membership-access-plan { width: calc(100% - 1rem); }
  .private-style-foundations { width: calc(100% - 1rem); }
  .remote-style-direction { width: calc(100% - 1rem); padding: 1.1rem .9rem; }
  .remote-style-direction::before { left: .9rem; }
  .remote-style-direction__intro h2 { font-size: clamp(2.65rem,13vw,3.9rem); }
  .remote-style-direction__summary { font-size: .69rem; }
  .remote-style-direction__delivery { padding: 1rem; }
  .remote-style-direction__checkout { padding: .85rem; }
  .private-style-hero h1 { font-size: clamp(3.15rem,14vw,4.7rem); }
  .private-style-membership { width: calc(100% - 1rem); padding: 1.1rem .9rem; }
  .private-style-membership::before { left: .9rem; }
  .private-style-membership__intro h2 { font-size: clamp(2.7rem,13vw,4rem); }
  .private-style-membership__summary { font-size: .71rem; }
  .private-style-membership__value { padding: 1rem .85rem; }
  .private-style-tier { padding: 1rem; }
  .membership-tier-grid { gap: .28rem; }
  .membership-tier { padding: .58rem .38rem; }
  .membership-tier > p { margin-bottom: .38rem; font-size: .44rem; letter-spacing: .07em; }
  .membership-tier h3 { min-height: 2.55em; font-size: clamp(.78rem,3.6vw,.94rem); line-height: 1.08; }
  .membership-tier > .membership-tier__summary { margin-top: .48rem; font-size: .52rem; line-height: 1.4; }
  .membership-tier dl { margin: .52rem 0; }
  .membership-tier dl > div { padding: .42rem 0; }
  .membership-tier dt,.membership-tier dd { font-size: .5rem; line-height: 1.35; }
  .membership-tier > .membership-tier__note { margin-bottom: .48rem; padding-top: .42rem; font-size: .5rem; line-height: 1.35; }
  .membership-page .membership-tier__cta { min-height: 2.75rem; padding: .35rem .12rem; font-size: .5rem; letter-spacing: .01em; line-height: 1.25; }
  .membership-hero h1 { font-size: clamp(3rem,15vw,4.4rem); }
  .now-remote-scope { width: calc(100% - 1rem); padding: 1rem; }
  .now-remote-scope ul,.membership-remote-scope ul { grid-template-columns: 1fr; }
  .now-membership { width: calc(100% - 1rem); }
  .now-membership__frame { padding: 1rem; }
  .now-membership__intro h2 { font-size: clamp(2.35rem,12vw,3.25rem); }
  .now-membership__intro > span { font-size: .7rem; }
  .now-membership__copy > p { font-size: .68rem; }
  .now-membership__uses { gap: .42rem; }
  .now-membership__uses li { min-height: 3rem; padding: .6rem; font-size: .92rem; }
  .now-membership__terms { padding: .9rem; }
}
.membership-nudge { max-width: 38rem; margin: 1rem auto 0; padding-top: .85rem; border-top: 1px solid rgba(255,255,255,.18); color: #bdb8b2; font-size: .62rem; line-height: 1.6; }
.membership-nudge span { color: #e7e0d9; }
.membership-nudge a { color: #fff; text-underline-offset: .23em; }
@media (prefers-reduced-motion: reduce) {
  .shop-motion-bg .home-wall-track { animation: none!important; transform: none!important; }
  .browse-story,.browse-story__art img { animation: none!important; transition: none; }
}
@media (width<=799px) {
  .shop-motion-bg .home-wall-stage { inset: -7vh -3vw; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .25rem; }
  .shop-motion-bg .home-wall-track img { height: 7.25rem; }
  .makeup-hero.makeup-hero--quote { padding-bottom: 8rem; }
  .makeup-hero.makeup-hero--quote .makeup-hero__copy { bottom: 3.25rem; }
  .hero-quote-lockup { width: min(38rem,84%); }
  .edit-band .mgrid, .quiz-intro__rules, .result-principles { grid-template-columns: 1fr; }
  .edit-progress, .save-email-row { grid-template-columns: 1fr; }
  .edit-band .mcard--wide { grid-column: auto; }
  .page-main { padding-right: 1.25rem; padding-top: 6.5rem; }
  .reading-page .page-bar { background: #0a0a0a; min-height: 15.5rem; position: relative; }
  .reading-page .page-main { padding-top: 1.5rem; }
  .foot { padding-top: 1.6rem; padding-bottom: 4.5rem; }
  .foot .sig__mark { width: 7.5rem; height: 3.4rem; }
  .store-hero { min-height: 760px; }
  .store-hero__image { object-position: 62% center; }
  .store-hero__veil { background: linear-gradient(0deg,rgba(5,5,5,.94) 0%,rgba(5,5,5,.58) 52%,rgba(5,5,5,.28) 100%); }
  .store-hero__marks { top: 11.5rem; }
  .store-hero__marks img { width: 8rem; }
  .store-hero__copy { width: 92%; padding-left: 4vw; padding-bottom: 3.2rem; }
  .store-product,.store-product--reverse { width: min(94%,38rem); grid-template-columns: 1fr; }
  .store-product img,.store-product--reverse img { min-height: 0; grid-column: 1; grid-row: 1; }
  .store-product .store-product__copy,.store-product--reverse .store-product__copy { grid-column: 1; grid-row: 2; }
  .store-link-grid,.store-first-access { grid-template-columns: 1fr; }
  .store-campaign-grid { grid-template-columns: 1fr; }
  .store-campaign { min-height: 22rem; }
  .store-shelf__routine { grid-template-columns: 1fr; }
  .store-shelf__routine span:nth-child(2),.store-shelf__routine span:last-child { text-align: left; }
  .store-shelf__frame { min-height: 38rem; }
  .store-shelf__frame iframe { height: 42rem; }
  .store-shelf__foot { flex-direction: column; gap: 1rem; }
  .store-link-card { min-height: 18rem; }
  .store-first-access { gap: 1.5rem; }
  .store-first-access img { width: min(16rem,72%); }
}

@media (max-width: 560px) {
  .store-announcement { padding-left: .7rem; padding-right: 2.7rem; }
  .store-announcement a { align-items: flex-start; flex-direction: column; gap: .05rem; text-align: left; }
  .store-announcement em { margin-top: .2rem; }
  .store-announcement button { right: .45rem; }
}

/* Remote Style Direction verified intake */
.remote-style-intake-page { min-height: 100%; color: #f7f5f1; background: radial-gradient(circle at 15% 0,rgba(109,143,149,.18),transparent 34rem),#090c0e; }
.remote-style-intake-page .site { min-height: 100vh; background: transparent; }
.remote-intake-shell { width: min(100% - 2rem,58rem); margin: 0 auto; padding: clamp(2rem,7vw,6.5rem) 0; }
.remote-intake-card { padding: clamp(1.25rem,4vw,3rem); border: 1px solid rgba(215,238,241,.4); background: linear-gradient(145deg,rgba(6,9,11,.96),rgba(20,29,33,.9)); box-shadow: 0 2rem 6rem rgba(0,0,0,.4); }
.remote-intake-card > header { max-width: 46rem; }
.remote-intake-eyebrow { margin: 0 0 .65rem; color: #bcd4d9; font-size: .58rem; letter-spacing: .18em; text-transform: uppercase; }
.remote-intake-card h1 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.65rem,8vw,5.8rem); font-weight: 400; letter-spacing: -.055em; line-height: .92; }
.remote-intake-card > header > p:last-child,.remote-intake-card--confirmation > p { max-width: 45rem; color: #d5d1cc; font-size: .72rem; line-height: 1.8; }
.remote-intake-status { margin: 1.5rem 0; padding: .9rem 1rem; border-left: 2px solid #bcd4d9; color: #dfeff1; background: rgba(255,255,255,.045); font-size: .65rem; line-height: 1.55; }
.remote-intake-status[data-state="error"] { border-left-color: #d9a8a0; color: #ffe5df; }
.remote-intake-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .85rem; }
.remote-intake-grid label { min-width: 0; display: flex; flex-direction: column; gap: .45rem; }
.remote-intake-grid label > span { color: #bcd4d9; font-size: .55rem; letter-spacing: .12em; text-transform: uppercase; }
.remote-intake-grid input,.remote-intake-grid select,.remote-intake-grid textarea { width: 100%; min-width: 0; padding: .85rem; border: 1px solid rgba(255,255,255,.32); border-radius: 0; color: #fff; background: rgba(0,0,0,.36); font: inherit; font-size: .7rem; line-height: 1.45; }
.remote-intake-grid input:focus-visible,.remote-intake-grid select:focus-visible,.remote-intake-grid textarea:focus-visible,.remote-intake-submit:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.remote-intake-grid input[readonly] { color: #c8c3bc; background: rgba(255,255,255,.035); }
.remote-intake-grid small,.remote-intake-grid output { color: #a9a39c; font-size: .55rem; line-height: 1.5; }
.remote-intake-grid output[data-state="error"] { color: #ffe0da; }
.remote-intake-full { grid-column: 1/-1; }
.remote-intake-photos { padding: 1rem; border: 1px solid rgba(215,238,241,.25); background: rgba(255,255,255,.025); }
.remote-intake-honeypot { position: absolute!important; width: 1px!important; height: 1px!important; overflow: hidden!important; clip-path: inset(50%)!important; }
.remote-intake-consent { margin: 1.2rem 0; padding: 1rem; border-left: 1px solid #bcd4d9; color: #c9c4be; background: rgba(255,255,255,.025); font-size: .6rem; line-height: 1.65; }
.remote-intake-consent p { margin: 0 0 .4rem; color: #fff; }
.remote-intake-consent ul { margin: 0; padding-left: 1.1rem; }
.remote-intake-submit { min-height: 3.25rem; padding: .8rem 1.15rem; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.72); color: #fff; background: rgba(255,255,255,.08); font: inherit; font-size: .55rem; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; cursor: pointer; }
.remote-intake-submit:hover { background: #fff; color: #0b0e10; }
.remote-intake-submit:disabled { cursor: wait; opacity: .58; }
.remote-intake-complete,.remote-intake-next { margin: 1.5rem 0; padding: clamp(1rem,3vw,1.5rem); border: 1px solid rgba(215,238,241,.35); background: rgba(255,255,255,.045); }
.remote-intake-complete strong,.remote-intake-next strong { font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.4rem,4vw,2.1rem); font-weight: 400; }
.remote-intake-complete p,.remote-intake-next p { color: #d5d1cc; font-size: .68rem; line-height: 1.7; }
.remote-intake-complete a,.remote-intake-card footer a { color: #d7eef1; text-underline-offset: .25em; }
.remote-intake-card footer { margin-top: 1.5rem; color: #aaa49e; font-size: .57rem; }
.remote-intake-card--confirmation { max-width: 48rem; margin: 0 auto; }
@media (max-width: 640px) { .remote-intake-shell { width: calc(100% - 1rem); padding: 1rem 0 3rem; } .remote-intake-card { padding: 1.1rem .9rem; } .remote-intake-grid { grid-template-columns: 1fr; } .remote-intake-full { grid-column: auto; } }

/* Shared navigation: the primary choices span the full top edge on every page. */
.page-bar {
  display: block;
  position: relative;
  z-index: 30;
  padding: .55rem clamp(1.25rem,5vw,5rem) .35rem;
  background: transparent;
}
.page-bar:after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0 0 auto;
  height: clamp(8rem,18vh,12rem);
  pointer-events: none;
  background: linear-gradient(180deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.66) 38%,rgba(0,0,0,.18) 76%,rgba(0,0,0,0) 100%);
}
.page-bar .site-head {
  position: relative;
  z-index: 1;
  width: 100%;
  margin: 0;
  flex: auto;
}
.page-bar .site-head:before { display: none; }
.page-bar .site-nav {
  width: 100%;
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: repeat(6,minmax(0,1fr));
  align-items: center;
  justify-content: stretch;
  column-gap: clamp(.5rem,1.4vw,1.4rem);
}
.page-bar .site-nav > a,
.page-bar .nav-drop,
.page-bar .site-search,
.page-bar .site-nav__utilities,
.page-bar .site-nav__account-tools { justify-self: stretch; }
.page-bar .site-nav > a,
.page-bar .nav-drop > button {
  width: 100%;
  height: 38px;
  padding: 0 .2rem;
  font-size: .84rem;
  letter-spacing: .18em;
}
.page-bar .member-login-nav { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .12rem; line-height: 1; text-decoration: none; }
.page-bar .member-login-nav:not([data-member-login-ready="true"]) { display: none!important; }
.page-bar .member-login-nav span { font-size: .68rem; letter-spacing: .12em; white-space: nowrap; }
.page-bar .member-login-nav span { font: inherit; font-size: inherit; font-weight: inherit; letter-spacing: inherit; line-height: inherit; text-transform: inherit; }
.page-bar .member-login-nav small { color: #9eb9be; font-size: .36rem; letter-spacing: .13em; line-height: 1; text-transform: uppercase; white-space: nowrap; }
.page-bar .member-login-nav[data-preview-state="active"] small { color: #fff; }
.page-bar .floating-account-card { position: relative; z-index: auto; width: 8.1rem; padding: .16rem 0; display: grid; justify-items: end; gap: .1rem; border: 0; color: #fff; background: transparent; box-shadow: none; font-family: inherit; text-align: right; text-decoration: none; }
.page-bar .floating-account-card__name { font-family: inherit; font-size: 1.08rem; font-weight: 300; letter-spacing: .035em; line-height: 1; text-transform: none; white-space: nowrap; }
.page-bar .floating-account-card__details { width: 100%; display: grid; justify-items: end; gap: .12rem; border: 0; padding: 0; }
.page-bar .floating-account-card__level { font-family: inherit; font-size: .47rem; font-weight: 300; letter-spacing: .055em; line-height: 1.1; text-transform: none; white-space: nowrap; }
.page-bar .floating-account-card__points { display: flex; align-items: center; justify-content: flex-end; gap: .22rem; font-family: inherit; line-height: 1; }
.page-bar .floating-account-card__points-number { font-size: .72rem; font-weight: 300; font-variant-numeric: tabular-nums; }
.page-bar .floating-account-card__star { width: .52rem; height: .52rem; display: inline-block; color: #fff; font-size: .52rem; line-height: .52rem; }
.page-bar .floating-account-card__star:before { content: "\2605"; }
.page-bar .floating-account-card__points-label { margin-left: -.2rem; font-size: .47rem; font-weight: 300; letter-spacing: .055em; text-transform: none; white-space: nowrap; }
.page-bar .floating-account-card__appointment { color: rgba(255,255,255,.84); font-size: .43rem; font-weight: 300; letter-spacing: .035em; line-height: 1.15; text-transform: none; white-space: nowrap; }
.page-bar .floating-account-card:hover,.page-bar .floating-account-card:focus-visible { color: #fff; text-shadow: 0 0 16px rgba(255,255,255,.42); outline: 1px solid rgba(255,255,255,.58); outline-offset: .25rem; }
.page-bar .nav-drop { justify-content: center; }
.page-bar .site-search {
  width: 100%;
  margin: 0;
  justify-content: center;
}
.page-bar .site-search[data-open=true] { width: 100%; }
.page-bar .site-search__field { max-width: 10.5rem; margin: 0 auto; }
.page-bar .site-nav__utilities {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-bar .site-nav__utilities .site-search {
  width: 44px;
  flex: 0 0 44px;
  height: 38px;
  overflow: visible;
}
.page-bar .site-nav__utilities .site-search[data-open=true] { width: 44px; }
.page-bar .site-nav__account-tools { min-width: 0; display: flex; align-items: center; justify-content: center; gap: .08rem; }
.page-bar .site-nav__account-tools .member-login-nav { width: auto; min-width: 0; height: 38px; padding: 0 .2rem; border-radius: .25rem; font-size: .84rem; letter-spacing: .18em; transition: letter-spacing .2s,text-shadow .2s ease; }
.page-bar .site-nav__account-tools .appointment-nav-cart { width: 44px; flex: 0 0 44px; }
.page-bar .site-nav__utilities .site-search__field {
  max-width: none;
  margin: 0;
  justify-content: center;
}
.page-bar .site-nav__utilities .site-search[data-open=true] .site-search__field {
  position: absolute;
  top: 50%;
  right: 0;
  width: min(10.5rem,calc(100vw - 7rem));
  justify-content: flex-end;
  transform: translateY(-50%);
}
.page-bar .nav-menu {
  top: calc(100% - 3px);
  left: 50%;
  right: auto;
  transform: translateX(-50%);
}
.page-bar > a:first-child:has(.ibe-logo) {
  z-index: 2;
  position: absolute;
  top: 3.1rem;
  left: .55rem;
}

@media (width>=800px) {
  .page-bar .site-nav.site-nav--member-profile {
    position: relative;
    grid-auto-flow: unset;
    grid-template-columns: max-content max-content max-content max-content 4.85rem;
    justify-content: space-between;
    column-gap: 0;
    padding-right: 8.75rem;
  }
  .page-bar .site-nav.site-nav--member-profile > .site-nav__wordmark { margin-left: clamp(-3.25rem,-4vw,-2rem); transform: none; }
  .page-bar .site-nav.site-nav--member-profile .site-nav__utilities { width: 4.85rem; min-width: 4.85rem; display: grid; grid-template-columns: 0 2.3rem 2.3rem; gap: .25rem; }
  .page-bar .site-nav.site-nav--member-profile .site-nav__account-tools { display: contents; }
  .page-bar .site-nav.site-nav--member-profile .site-search { width: 2.3rem; height: 2.3rem; margin: 0; flex: 0 0 2.3rem; }
  .page-bar .site-nav.site-nav--member-profile .site-search__field { width: 100%; height: 100%; max-width: none; margin: 0; justify-content: center; }
  .page-bar .site-nav.site-nav--member-profile .site-search__mark,
  .page-bar .site-nav.site-nav--member-profile .appointment-nav-cart { width: 2.3rem; height: 2.3rem; display: grid; place-items: center; flex: 0 0 2.3rem; }
  .page-bar .site-nav.site-nav--member-profile .site-search[data-open=true] .site-search__field { width: 8.5rem; right: 0; left: auto; justify-content: flex-end; transform: translateY(-50%); }
  .page-bar .site-nav.site-nav--member-profile .site-search__list { width: 8.5rem; right: 0; left: auto; }
  .page-bar .site-nav.site-nav--member-profile .floating-account-card { position: absolute; top: 50%; right: -.25rem; transform: translateY(-.72rem); }
}

/* Homepage: a continuous monochrome photo wall behind the complete page. */
.home-page { overflow-x: clip; background: #050505; }
.home-page .site { z-index: 1; position: relative; background: transparent; }
.home-motion-bg {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  background: #050505;
}
.home-motion-bg:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg,rgba(0,0,0,.48),rgba(0,0,0,.18) 31%,rgba(0,0,0,.36) 70%,rgba(0,0,0,.68));
}
.home-wall-stage {
  position: absolute;
  inset: -18vh 0;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 0;
  filter: grayscale(1) contrast(1.08) brightness(.88);
}
.home-wall-column { min-width: 0; overflow: hidden; background: #050505; }
.home-wall-track {
  width: 100%;
  display: flex;
  flex-direction: column;
  will-change: transform;
  animation: home-wall-up 62s linear infinite;
}
.home-wall-column:nth-child(2) .home-wall-track {
  transform: translateY(-50%);
  animation-name: home-wall-down;
  animation-duration: 71s;
}
.home-wall-column:nth-child(3) .home-wall-track { animation-duration: 67s; }
.home-wall-track img {
  width: 100%;
  height: 56vh;
  min-height: 390px;
  flex: none;
  display: block;
  object-fit: cover;
  object-position: center 24%;
}
.private-style-page .private-style-wall-column--wardrobe .home-wall-track { animation-duration: 89s; }
.private-style-page .private-style-wall-column--wardrobe .home-wall-track img,
.private-style-page .private-style-wall-column--mixed .home-wall-track img[data-wall-kind="wardrobe"] { object-position: center; }
.home-wall-hero {
  min-height: 82svh;
  padding: 3.75rem 1rem 3rem;
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  text-align: center;
  overflow: hidden;
}
.home-wall-hero__lockup { display: flex; flex-direction: column; align-items: center; transform: translateY(-8vh); }
.home-wall-quote { width: min(39rem,82vw); height: auto; filter: drop-shadow(0 2px 12px #000); }
.home-signoff-stamp {
  width: max-content;
  max-width: 58vw;
  margin-top: clamp(.15rem,.45vw,.4rem);
  display: flex;
  align-items: center;
  gap: .38rem;
  align-self: center;
  color: rgba(255,255,255,.82);
}
.home-signoff-stamp span {
  flex: none;
  font-size: clamp(.48rem,.65vw,.6rem);
  font-weight: 300;
  letter-spacing: 0;
  line-height: 1;
}
.home-signoff-stamp img {
  width: clamp(6.5rem,9vw,8.5rem);
  height: auto;
  display: block;
  opacity: .92;
}
.home-page .about,
.home-page .band,
.home-page .foot { position: relative; z-index: 2; text-shadow: 0 2px 18px rgba(0,0,0,.95); }
.home-page .about { padding-top: 2.4rem; text-align: center; }
.home-page .home-method-heading { margin: 0 0 1.2rem; color: #fff; font-size: 1rem; font-weight: 300; letter-spacing: .18em; line-height: 1.4; text-transform: uppercase; }
.home-page .triad {
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: clamp(.45rem,1vw,.85rem);
  white-space: nowrap;
}
.home-page .triad .triad__phrase {
  display: inline;
  font-size: clamp(1.1rem,1.8vw,1.7rem);
  line-height: 1.25;
}
.home-page .bio { margin-left: auto; margin-right: auto; text-align: center; }
.home-page .credential { text-align: center; }
.home-page .mcard { background: rgba(8,8,8,.16); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
.home-page > .site > .fixed { background: none; }
.home-page > .site > .fixed .press { border: 1px solid rgba(255,255,255,.22); background: rgba(10,10,10,.34); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
@keyframes home-wall-up { to { transform: translateY(-50%); } }
@keyframes home-wall-down { to { transform: translateY(0); } }

@media (width<=799px) {
  .page-bar { padding: .35rem .25rem .2rem; }
  .page-bar .site-nav {
    grid-template-columns: repeat(6,minmax(0,1fr));
    column-gap: .1rem;
  }
  .page-bar .site-nav > a,
  .page-bar .nav-drop > button {
    height: 34px;
    padding: 0 .05rem;
    font-size: .64rem;
    letter-spacing: .1em;
  }
  .page-bar .member-login-nav span { font-size: inherit; letter-spacing: inherit; }
  .page-bar .member-login-nav small { font-size: .29rem; letter-spacing: .06em; }
  .page-bar .site-search { height: 34px; }
  .page-bar .site-nav__utilities .site-search,
  .page-bar .site-nav__utilities .site-search[data-open=true] { width: 34px; flex-basis: 34px; }
  .page-bar .site-nav__account-tools { gap: .04rem; }
  .page-bar .site-nav__account-tools .member-login-nav { padding-inline: .05rem; font-size: .64rem; letter-spacing: .1em; }
  .page-bar .site-nav__account-tools .appointment-nav-cart { width: 34px; flex-basis: 34px; }
  .page-bar .site-nav__utilities .site-search[data-open=true] .site-search__field { width: min(9.25rem,calc(100vw - 4.75rem)); }
  .page-bar .site-search__mark { width: 34px; height: 34px; flex-basis: 34px; }
  .page-bar .nav-menu { left: auto; right: 0; transform: none; max-width: calc(100vw - .5rem); }
  .page-bar > a:first-child:has(.ibe-logo) { top: 2.8rem; }
  .reading-page .page-bar { min-height: 3.7rem; position: relative; background: linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,0)); }
  .home-wall-stage { inset: -10vh 0; }
  .home-wall-track img { height: 42vh; min-height: 310px; }
  .home-wall-hero { min-height: 78svh; padding: 2.5rem .75rem 2rem; }
  .home-wall-hero__lockup { transform: translateY(-7vh); }
  .home-wall-quote { width: min(34rem,91vw); }
  .home-signoff-stamp {
    max-width: 64vw;
    margin-top: .2rem;
    gap: .25rem;
  }
  .home-signoff-stamp span { font-size: .45rem; }
  .home-signoff-stamp img { width: min(7rem,31vw); }
  .home-page .about { padding-top: 1.2rem; }
  .home-page .triad { gap: clamp(.18rem,1.15vw,.3rem); }
  .home-page .triad .triad__phrase {
    font-size: clamp(.7rem,3.35vw,.88rem);
    font-weight: 300;
    letter-spacing: -.025em;
  }
}

@media (width<=430px) {
  .page-bar .site-nav > a,
  .page-bar .nav-drop > button { font-size: .5rem; letter-spacing: .035em; }
  .page-bar .member-login-nav span { font-size: inherit; }
}

@media (prefers-reduced-motion: reduce) {
  .home-wall-track { animation: none!important; transform: none!important; }
}

/* Makeup, Taught: keep the photography moving continuously behind the complete page. */
.makeup-page { overflow-x: clip; background: #050505; }
.makeup-page .site { z-index: 1; position: relative; background: transparent; }
.makeup-motion-bg:after { background: linear-gradient(180deg,rgba(0,0,0,.67),rgba(0,0,0,.35) 34%,rgba(0,0,0,.52) 72%,rgba(0,0,0,.78)); }
.makeup-wall-hero {
  min-height: 100svh;
  padding: 5rem 1rem 7vh;
  position: relative;
  z-index: 2;
  display: grid;
  place-items: end center;
  text-align: center;
}
.makeup-wall-hero:after,
.extension-wall-hero:after {
  content: none;
  position: absolute;
  z-index: 0;
  inset: 0 0 auto;
  height: clamp(12rem,38svh,26rem);
  pointer-events: none;
  background: linear-gradient(180deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.58) 28%,rgba(0,0,0,.24) 64%,rgba(0,0,0,0) 100%);
}
.makeup-wall-hero__copy {
  z-index: 1;
  width: min(92%,56rem);
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  isolation: isolate;
  text-shadow: 0 2px 18px #000;
}
.makeup-wall-hero__copy:before {
  content: none;
}
.makeup-wall-hero__eyebrow { margin: 0 0 .75rem; color: #d4cfca; font-size: .65rem; letter-spacing: .23em; text-transform: uppercase; }
.makeup-wall-hero h1 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(4.2rem,10vw,9rem); font-weight: 400; letter-spacing: -.06em; line-height: .78; }
.makeup-wall-hero .lede { max-width: 45rem; margin: 1.45rem auto 0; color: #f4f1ed; font-size: clamp(.88rem,1.45vw,1.08rem); line-height: 1.7; }
.makeup-wall-hero .makeup-sign { margin-top: 1.45rem; }
.makeup-page .makeup-services,
.makeup-page .foot { position: relative; z-index: 2; text-shadow: 0 2px 18px rgba(0,0,0,.95); }
.makeup-page .makeup-services { margin-top: 0; padding-top: clamp(3rem,7vw,6rem); }
.makeup-page .mcard { background: rgba(8,8,8,.18); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.makeup-page .makeup-services--stacked .mgrid { max-width: 48rem; grid-template-columns: repeat(2,minmax(0,1fr)); }
.makeup-page .makeup-services--stacked .mcard--wide { grid-column: 1 / -1; text-align: center; }
.makeup-page .note { max-width: 48rem; margin-left: auto; margin-right: auto; }
.makeup-page > .site > .fixed { background: none; }
.makeup-page > .site > .fixed .press { border: 1px solid rgba(255,255,255,.22); background: rgba(10,10,10,.34); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }

/* Extensions: installation details move continuously behind the page. */
.extension-page { overflow-x: clip; background: #050505; }
.extension-page .site { z-index: 1; position: relative; background: transparent; }
.extension-motion-bg:after { background: linear-gradient(180deg,rgba(0,0,0,.67),rgba(0,0,0,.35) 34%,rgba(0,0,0,.52) 72%,rgba(0,0,0,.78)); }
.extension-wall-stage .home-wall-track img { object-position: center; }
.extension-wall-hero {
  min-height: 100svh;
  padding: 5rem 1rem 8vh;
  position: relative;
  z-index: 2;
  display: grid;
  place-items: end center;
  text-align: center;
}
.extension-wall-hero__copy {
  z-index: 1;
  width: min(92%,58rem);
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  isolation: isolate;
  text-shadow: 0 2px 18px #000;
}
.extension-wall-hero__copy:before {
  content: none;
}
.extension-brand-logo { width: 5rem; margin: 0 0 1rem; display: block; }
.extension-brand-logo--below { width: 5.25rem; margin: 1.15rem 0 0; }
.extension-brand-logo--below + .lede { margin-top: 1rem; }
.extension-brand-logo .ibe-logo { width: 100%; height: auto; display: block; filter: drop-shadow(0 2px 14px rgba(0,0,0,.92)); }
.extension-wall-hero__eyebrow { margin: 0 0 .75rem; color: #d4cfca; font-size: .65rem; letter-spacing: .23em; text-transform: uppercase; }
.extension-wall-hero h1 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(3.8rem,8.8vw,8rem); font-weight: 400; letter-spacing: -.06em; line-height: .82; }
.extension-wall-hero h1 .registered { margin-left: .04em; font-size: .45em; letter-spacing: 0; vertical-align: super; }
.extension-wall-hero .lede { max-width: 44rem; margin: 1.45rem auto 0; color: #f4f1ed; font-size: clamp(.88rem,1.45vw,1.08rem); line-height: 1.7; }
.extension-wall-hero .makeup-sign { margin-top: 1.45rem; }
.extension-page .extension-services,
.extension-page .foot { position: relative; z-index: 2; text-shadow: 0 2px 18px rgba(0,0,0,.95); }
.extension-page .extension-services { padding-top: clamp(3rem,7vw,6rem); }
.extension-page .mcard,
.extension-page .faq details { background: rgba(8,8,8,.2); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.extension-page > .site > .fixed { background: none; }
.extension-page > .site > .fixed .press { border: 1px solid rgba(255,255,255,.22); background: rgba(10,10,10,.34); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }

/* Guide + Reading: centered words over the same continuous monochrome wall. */
.guide-page,
.reading-page { overflow-x: clip; background: #050505; }
.guide-page .site,
.reading-page .site { z-index: 1; position: relative; background: transparent; }
.guide-motion-bg:after,
.reading-motion-bg:after { background: linear-gradient(180deg,rgba(0,0,0,.6),rgba(0,0,0,.34) 31%,rgba(0,0,0,.5) 70%,rgba(0,0,0,.78)); }
.guide-page .page-main,
.reading-page .page-main,
.guide-page .foot,
.reading-page .foot { position: relative; z-index: 2; text-shadow: 0 2px 18px rgba(0,0,0,.95); }
.guide-page .page-main,
.reading-page .page-main { margin-inline: auto; text-align: center; }
.guide-page .page-main { padding-top: clamp(5.6rem,9vw,8rem); }
.guide-page .page-main > *,
.reading-page .quiz { margin-left: auto; margin-right: auto; }
.guide-page .page-main ul { padding-left: 0; list-style: none; text-align: center; }
.guide-page .svc { margin-left: auto; margin-right: auto; text-align: center; background: rgba(8,8,8,.2); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.reading-page .page-main { padding-top: clamp(5.6rem,9vw,8rem); }
.reading-page .quiz { text-align: center; }
.reading-page .reading-intro span { display: block; }
.reading-page .reading-intro span + span { margin-top: .28rem; }
.reading-page .profile-choices { grid-template-columns: repeat(2,minmax(0,1fr)); }
.reading-page .profile-choice { min-height: 7rem; text-align: center; }
.reading-page .profile-choice--wide { grid-column: 1 / -1; }
.reading-page .choices,
.reading-page .quiz__controls,
.reading-page .result-actions,
.reading-page .actions,
.reading-page .stage-actions { justify-content: center; }
.reading-page .choice,
.reading-page .product,
.reading-page .result-profile,
.reading-page .result-shelf,
.reading-page .routine,
.reading-page .save-edit { text-align: center; background: rgba(8,8,8,.2); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.guide-page > .site > .fixed,
.reading-page > .site > .fixed { background: none; }
.guide-page > .site > .fixed .press,
.reading-page > .site > .fixed .press { border: 1px solid rgba(255,255,255,.22); background: rgba(10,10,10,.34); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }

/* Booking: Square stays live inside the same continuous monochrome world. */
.booking-page { overflow-x: clip; background: #050505; }
.booking-page .site { z-index: 1; position: relative; background: transparent; }
.booking-motion-bg:after { background: linear-gradient(180deg,rgba(0,0,0,.68),rgba(0,0,0,.42) 32%,rgba(0,0,0,.58) 72%,rgba(0,0,0,.82)); }
.booking-wall-stage .home-wall-track img { object-position: center; }
.booking-main { max-width: 70rem; padding-top: clamp(5.6rem,9vw,8rem); position: relative; z-index: 2; text-align: center; text-shadow: 0 2px 18px rgba(0,0,0,.95); }
.booking-intro { width: min(100%,46rem); margin: 0 auto 1.75rem; }
.booking-intro h1 { margin: .3rem 0 .8rem; font-family: Georgia,"Times New Roman",serif; font-size: clamp(3.4rem,8vw,7.2rem); font-weight: 400; letter-spacing: -.055em; line-height: .88; }
.booking-intro p:last-child { color: #e7e2dc; line-height: 1.7; }
.booking-frame { width: min(100%,62rem); min-height: 760px; margin: 0 auto; overflow: hidden; border: 0; background: transparent; box-shadow: 0 24px 80px rgba(0,0,0,.2); -webkit-mask-image: linear-gradient(to bottom,transparent 0,#000 3.2rem,#000 calc(100% - 3.2rem),transparent 100%),linear-gradient(to right,transparent 0,#000 1.8rem,#000 calc(100% - 1.8rem),transparent 100%); -webkit-mask-composite: source-in; mask-image: linear-gradient(to bottom,transparent 0,#000 3.2rem,#000 calc(100% - 3.2rem),transparent 100%),linear-gradient(to right,transparent 0,#000 1.8rem,#000 calc(100% - 1.8rem),transparent 100%); mask-composite: intersect; }
.booking-frame iframe { width: 100%; min-height: 760px; display: block; border: 0; background: #f7f4ef; }
.booking-fallback { margin: 1rem auto 0; color: #e7e2dc; font-size: .78rem; }
.booking-fallback a { text-decoration: underline; text-underline-offset: .3em; }
.booking-page .foot { position: relative; z-index: 2; text-shadow: 0 2px 18px rgba(0,0,0,.95); }
.booking-page > .site > .fixed { background: none; }
.booking-page > .site > .fixed .press { border: 1px solid rgba(255,255,255,.22); background: rgba(10,10,10,.34); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }

@media (width<=799px) {
  .booking-main { padding-inline: .75rem; }
  .booking-frame { min-height: 720px; }
  .booking-frame iframe { min-height: 720px; }
}

/* Booking becomes one on-site collection of every appointment family. */
.booking-collective-hero { min-height: auto; }
.booking-collective { width: min(94%,58rem); margin: 0 auto; padding: 2.5rem 0 clamp(3rem,7vw,6rem); position: relative; z-index: 2; }
.booking-category-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; align-items: start; }
.booking-category { min-width: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.22); background: rgba(8,8,8,.18); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); transition: border-color .2s ease,background .2s ease; }
.booking-category--wide,
.booking-category[open] { grid-column: 1 / -1; }
.booking-category:hover,
.booking-category[open] { border-color: rgba(255,255,255,.78); background: rgba(255,255,255,.12); }
.booking-category > summary { min-height: 8.25rem; padding: .85rem 1rem; display: flex; align-items: flex-end; cursor: pointer; list-style: none; text-align: left; }
.booking-category > summary::-webkit-details-marker { display: none; }
.booking-category > summary h2 { min-width: 0; margin: 0; color: #fff; font-family: Poppins,"Century Gothic",Helvetica,sans-serif; font-size: .98rem; font-weight: 300; letter-spacing: 0; line-height: 1.25; }
.booking-category > summary:after { content: "Details +"; margin-left: auto; padding-left: .75rem; flex: none; color: #eee9e3; font-size: .48rem; letter-spacing: .12em; text-transform: uppercase; }
.booking-category[open] > summary:after { content: "Hide \2212"; }
.booking-category > summary:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.booking-category__body { padding: .8rem; display: grid; grid-template-columns: repeat(auto-fit,minmax(14rem,1fr)); gap: .7rem; border-top: 1px solid rgba(255,255,255,.22); background: rgba(0,0,0,.18); }
.booking-category__body--single { grid-template-columns: 1fr; }
.booking-service-section { min-width: 0; padding: .85rem 1rem 1rem; border: 1px solid rgba(255,255,255,.16); background: rgba(8,8,8,.16); }
.booking-service-section h3 { margin: 0 0 .65rem; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: 1.35rem; font-weight: 400; letter-spacing: -.025em; }
.booking-service-section ul { margin: 0; padding: 0; list-style: none; }
.booking-service-section li { padding: .48rem 0; border-top: 1px solid rgba(255,255,255,.14); color: #d7d1cb; font-size: .78rem; line-height: 1.45; }
.booking-collective__note { width: min(92%,39rem); margin: 1.4rem auto 0; color: #d8d2cb; font-size: .74rem; line-height: 1.65; text-align: center; text-shadow: 0 2px 18px rgba(0,0,0,.95); }

@media (width<=799px) {
  .booking-collective { width: 96%; padding-top: 2rem; }
  .booking-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .booking-category > summary { min-height: 7rem; padding: .75rem .8rem; }
  .booking-category > summary h2 { font-size: .9rem; }
  .booking-category__body { grid-template-columns: 1fr; padding: .65rem; }
}

/* Site-wide readability: soft contrast, never an opaque panel. */
.makeup-hero--ibe { isolation: isolate; overflow: hidden; }
.makeup-hero--ibe:before { content: ""; inset: 0; z-index: 1; pointer-events: none; position: absolute; background: rgba(0,0,0,.16); }
.makeup-hero--ibe:after { z-index: 1; }
.makeup-hero--ibe .makeup-hero__copy,
.site-pages .page-main,
.site-pages .legal,
.site > .page-main,
.site > main > .band { text-shadow: 0 2px 18px rgba(0,0,0,.82); }

@media (width<=799px) {
  .makeup-wall-hero { min-height: 84svh; padding: clamp(4.75rem,11vh,6.5rem) .75rem 2.25rem; place-items: start center; }
  .makeup-wall-hero h1 { font-size: clamp(3.8rem,18vw,6rem); }
  .makeup-wall-hero .lede { width: min(95%,37rem); margin-top: 1.1rem; line-height: 1.6; }
  .makeup-wall-hero .makeup-sign { margin-top: 1rem; }
  .makeup-page .makeup-services { padding-top: 2rem; }
  .makeup-page .makeup-services--stacked .mgrid { grid-template-columns: 1fr; }
  .makeup-page .makeup-services--stacked .mcard--wide { grid-column: auto; text-align: center; }
  .extension-wall-hero { padding-bottom: 9vh; }
  .extension-wall-hero h1 { font-size: clamp(3.15rem,15vw,5.4rem); }
  .extension-wall-hero .lede { width: min(95%,37rem); line-height: 1.6; }
}
@media print {
  .page-bar, .foot, .fixed, .result-actions { display: none!important; }
  .site { color: #111; background: #fff; }
  .quiz p, .quiz h1, .quiz h2, .quiz h3 { color: #111; }
  .result-shelf, .product, .routine li { border-color: #bbb; }
}

/* Hair service-family landing page. */
.hair-page { background: #0a0a0a; }
.hair-hero { min-height: min(100svh,960px); position: relative; display: grid; align-items: end; overflow: hidden; isolation: isolate; }
.hair-hero:after { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.04) 34%,rgba(0,0,0,.82) 84%,#0a0a0a 100%); }
.hair-hero__image { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 52% 25%; filter: contrast(1.04); }
.hair-hero__copy { position: relative; z-index: 2; width: min(92%,72rem); margin: 0 auto; padding: 0 0 clamp(3.8rem,8vw,7rem); text-align: center; text-shadow: 0 2px 24px rgba(0,0,0,.9); }
.hair-eyebrow { margin: 0 0 .75rem; color: #d9d2ca; font-size: .63rem; letter-spacing: .23em; text-transform: uppercase; }
.hair-hero h1 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(5rem,15vw,12rem); font-weight: 400; letter-spacing: -.075em; line-height: .78; }
.hair-hero__copy > p:not(.hair-eyebrow) { max-width: 40rem; margin: 1.5rem auto 0; color: #f2f0ee; font-size: clamp(.9rem,1.4vw,1.08rem); line-height: 1.7; }
.hair-link { display: inline-flex; min-height: 42px; margin-top: 1.4rem; align-items: center; border-bottom: 1px solid rgba(255,255,255,.72); color: #fff; font-size: .65rem; letter-spacing: .16em; text-decoration: none; text-transform: uppercase; }
.hair-services { width: min(92%,78rem); margin: 0 auto; padding: clamp(3.5rem,8vw,7rem) 0 1rem; }
.hair-services__intro { max-width: 55rem; margin: 0 auto clamp(2rem,5vw,4.25rem); text-align: center; }
.hair-services__intro h2 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.35rem,6vw,5.5rem); font-weight: 400; letter-spacing: -.045em; line-height: .95; }
.hair-family-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(.75rem,1.6vw,1.3rem); }
.hair-family { min-width: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.035); }
.hair-family img { width: 100%; aspect-ratio: 4/5; object-fit: cover; display: block; filter: grayscale(1) contrast(1.05); transition: filter .45s ease,transform .65s cubic-bezier(.22,1,.36,1); }
.hair-family:nth-child(2) img,.hair-family:nth-child(6) img { object-position: center; }
.hair-family:hover img { filter: grayscale(.25) contrast(1.02); transform: scale(1.025); }
.hair-family > div { padding: 1rem 1rem 1.25rem; }
.hair-family span { color: #9f9993; font-size: .58rem; letter-spacing: .18em; }
.hair-family h3 { margin: .35rem 0 .55rem; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.55rem,2.7vw,2.35rem); font-weight: 400; letter-spacing: -.035em; line-height: .96; }
.hair-family p { margin: 0; color: #d7d1cb; font-size: .82rem; line-height: 1.58; }
.hair-book { max-width: 47rem; margin: clamp(3rem,7vw,6rem) auto 0; padding: clamp(2rem,5vw,4rem); border: 1px solid rgba(255,255,255,.3); text-align: center; }
.hair-book p { max-width: 32rem; margin: 0 auto 1.25rem; color: #e0dad4; line-height: 1.65; }
.hair-book__button { display: inline-flex; min-height: 44px; padding: 0 1.25rem; align-items: center; justify-content: center; border: 1px solid #fff; color: #111; background: #fff; font-size: .68rem; letter-spacing: .16em; text-decoration: none; text-transform: uppercase; }
.hair-book__secondary { display: block; width: max-content; margin: 1rem auto 0; color: #fff; border-bottom: 1px solid rgba(255,255,255,.64); font-size: .62rem; letter-spacing: .14em; text-decoration: none; text-transform: uppercase; }

@media (width<=799px) {
  .hair-hero { min-height: 88svh; }
  .hair-hero__image { object-position: 52% 18%; }
  .hair-hero__copy { padding-bottom: 3.1rem; }
  .hair-family-grid { grid-template-columns: 1fr 1fr; gap: .65rem; }
  .hair-family > div { padding: .8rem .75rem 1rem; }
  .hair-family h3 { font-size: clamp(1.25rem,6.5vw,1.75rem); }
  .hair-family p { font-size: .72rem; line-height: 1.5; }
}

@media (width<=520px) {
  .hair-services { width: 94%; }
  .hair-family-grid { grid-template-columns: 1fr; gap: .9rem; }
  .hair-family { display: grid; grid-template-columns: 43% 1fr; min-height: 13rem; }
  .hair-family img { width: 100%; height: 100%; aspect-ratio: auto; }
  .hair-family > div { display: flex; flex-direction: column; justify-content: center; padding: .9rem; }
  .hair-family h3 { font-size: 1.65rem; }
}

@media (prefers-reduced-motion: reduce) {
  .hair-family img { transition: none; }
}

.hair-hold { min-height: 100svh; position: relative; display: grid; place-items: center; overflow: hidden; isolation: isolate; }
.hair-hold:after { content: ""; position: absolute; z-index: 1; inset: 0; background: rgba(6,6,6,.78); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
.hair-hold__image { position: absolute; inset: -3%; width: 106%; height: 106%; object-fit: cover; object-position: center 22%; filter: grayscale(1); }
.hair-hold__copy { position: relative; z-index: 2; width: min(88%,42rem); padding: 7rem 1rem; text-align: center; }
.hair-hold__copy h1 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(3rem,8vw,6.5rem); font-weight: 400; letter-spacing: -.055em; line-height: .92; }
.hair-hold__copy > p:not(.hair-eyebrow) { max-width: 36rem; margin: 1.25rem auto 1.6rem; color: #ddd7d0; line-height: 1.7; }

.hair-family-grid--text { grid-template-columns: repeat(2,minmax(0,1fr)); }
.hair-family-grid--text .hair-family { min-height: 15rem; display: flex; align-items: flex-end; background: linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.018)); }
.hair-family-grid--text .hair-family > div { width: 100%; padding: clamp(1.25rem,3vw,2.25rem); }
.hair-family-grid--text .hair-family h3 { font-size: clamp(2rem,4.2vw,3.6rem); }
.hair-family-grid--text .hair-family p { max-width: 29rem; }

@media (width<=799px) {
  .hair-family-grid--text { grid-template-columns: 1fr; }
  .hair-family-grid--text .hair-family { min-height: 12.5rem; display: flex; }
}

.hair-page { overflow-x: clip; background: #050505; }
.hair-page .site { z-index: 1; position: relative; background: transparent; }
.hair-motion-bg:after { background: linear-gradient(180deg,rgba(0,0,0,.67),rgba(0,0,0,.35) 34%,rgba(0,0,0,.52) 72%,rgba(0,0,0,.78)); }
.hair-services { position: relative; z-index: 2; text-shadow: 0 2px 18px rgba(0,0,0,.96); }
.hair-family-grid--text .hair-family { background: rgba(8,8,8,.34); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.hair-book { background: rgba(8,8,8,.42); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }

.hair-hero--wall { min-height: 72svh; }
.hair-hero--wall:after { content: none; }
.hair-hero--wall .hair-hero__copy { text-shadow: none; }

/* One vertical title anchor across every focused page. */
:root { --service-copy-top: clamp(11.5rem,31svh,19rem); --service-copy-lift: 7.35rem; }
.home-wall-hero {
  min-height: 72svh;
  padding: calc(var(--service-copy-top) - var(--service-copy-lift) + clamp(3.25rem,6.2svh,4.25rem)) 1rem 3rem;
  place-items: start center;
}
.home-wall-hero__lockup { transform: none; }
.hair-hero--wall { align-items: start; }
.hair-hero--wall .hair-hero__copy { padding-top: calc(var(--service-copy-top) - var(--service-copy-lift)); padding-bottom: 3rem; }
.makeup-wall-hero,
.extension-wall-hero {
  min-height: 72svh;
  padding: calc(var(--service-copy-top) - var(--service-copy-lift)) 1rem 3rem;
  place-items: start center;
}
.guide-page .page-main,
.reading-page .page-main,
.booking-main { padding-top: var(--service-copy-top); }
.hair-hero h1 { font-size: clamp(3.65rem,10.2vw,8.1rem); }
.makeup-wall-hero h1 { font-size: clamp(3.1rem,6.9vw,6rem); }
.extension-wall-hero h1 { font-size: clamp(2.9rem,6.2vw,5.5rem); }

@media (width<=799px) {
  :root { --service-copy-lift: 6.1rem; }
  .home-wall-hero {
    padding-top: calc(var(--service-copy-top) - var(--service-copy-lift) + clamp(2.5rem,5.6svh,3rem));
  }
  .hair-hero h1 { font-size: clamp(3.3rem,13vw,4.3rem); }
  .makeup-wall-hero h1 { font-size: clamp(2.75rem,12vw,4rem); }
  .extension-wall-hero h1 { font-size: clamp(2.45rem,10.8vw,3.7rem); }
}

/* A feathered reading halo lifts hero copy without looking like a panel. */
.home-wall-hero__lockup,
.hair-hero__copy,
.makeup-wall-hero__copy,
.extension-wall-hero__copy,
.store-hero__copy,
.routine-wall__copy {
  position: relative;
  isolation: isolate;
}
.home-wall-hero__lockup:before,
.hair-hero__copy:before,
.makeup-wall-hero__copy:before,
.extension-wall-hero__copy:before,
.store-hero__copy:before,
.routine-wall__copy:before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -1.4rem -3rem;
  border-radius: 50%;
  pointer-events: none;
  background: radial-gradient(ellipse at center,rgba(0,0,0,.28) 0%,rgba(0,0,0,.16) 52%,rgba(0,0,0,.05) 73%,rgba(0,0,0,0) 100%);
  filter: blur(12px);
}
.home-wall-hero__lockup:before {
  inset: -2.6rem -5rem -2.8rem;
  border-radius: 50%;
  background: radial-gradient(ellipse at center,rgba(0,0,0,.4) 0%,rgba(0,0,0,.24) 34%,rgba(0,0,0,.11) 52%,rgba(0,0,0,.035) 66%,rgba(0,0,0,0) 76%,rgba(0,0,0,0) 100%);
  filter: none;
}

@media (width<=799px) {
  .home-wall-hero__lockup:before,
  .hair-hero__copy:before,
  .makeup-wall-hero__copy:before,
  .extension-wall-hero__copy:before,
  .store-hero__copy:before,
  .routine-wall__copy:before {
    inset: -1rem -.9rem;
    background: radial-gradient(ellipse at center,rgba(0,0,0,.31) 0%,rgba(0,0,0,.17) 54%,rgba(0,0,0,.04) 76%,rgba(0,0,0,0) 100%);
    filter: blur(10px);
  }
  .home-wall-hero__lockup:before {
    inset: -2rem -1.8rem -2.25rem;
    background: radial-gradient(ellipse at center,rgba(0,0,0,.42) 0%,rgba(0,0,0,.25) 35%,rgba(0,0,0,.1) 53%,rgba(0,0,0,.03) 66%,rgba(0,0,0,0) 76%,rgba(0,0,0,0) 100%);
    filter: none;
  }
}
.hair-booking-guide { width: min(94%,58rem); margin: 0 auto clamp(2rem,5vw,4rem); text-align: center; }
.hair-booking-guide h2 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.7rem,6.5vw,5.8rem); font-weight: 400; letter-spacing: -.05em; line-height: .94; }
.hair-booking-guide > p:last-child { max-width: 42rem; margin: 1rem auto 0; color: #ddd7d0; line-height: 1.7; }
.hair-family-grid--text details.hair-family { min-height: 0; display: block; }
.hair-family summary { cursor: pointer; list-style: none; }
.hair-family summary::-webkit-details-marker { display: none; }
.hair-family-grid--text .hair-family > summary > div { min-height: 15rem; padding: clamp(1.25rem,3vw,2.25rem); display: flex; flex-direction: column; justify-content: flex-end; }
.hair-family__cue { width: max-content; margin-top: 1.1rem; padding-bottom: .2rem; border-bottom: 1px solid rgba(255,255,255,.58); color: #eee9e3!important; font-size: .56rem!important; letter-spacing: .14em!important; text-transform: uppercase; }
.hair-family[open] .hair-family__cue { font-size: 0!important; }
.hair-family[open] .hair-family__cue:after { content: "Close"; font-size: .56rem; }
.hair-family__details { border-top: 1px solid rgba(255,255,255,.22); background: rgba(0,0,0,.22); }
.hair-family-grid--text .hair-family > .hair-family__details { padding: 1.2rem clamp(1.25rem,3vw,2.25rem) 1.5rem; }
.hair-family__details > p { margin: 0 0 .9rem; color: #fff; line-height: 1.6; }
.hair-family__details ul { margin: 0; padding: 0; list-style: none; }
.hair-family__details li { padding: .42rem 0; border-top: 1px solid rgba(255,255,255,.15); color: #d7d1cb; font-size: .78rem; line-height: 1.45; }
.hair-family[open] { border-color: rgba(255,255,255,.52); }

@media (width<=799px) {
  .hair-hero--wall { min-height: 68svh; }
  .hair-family-grid--text .hair-family > summary > div { min-height: 12.5rem; }
}

.hair-services { padding-top: clamp(1.2rem,3vw,2.5rem); }
.hair-family-grid--text { max-width: 42rem; margin: 0 auto; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; }
.hair-family-grid--text details.hair-family { background: rgba(8,8,8,.18); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.hair-family-grid--text .hair-family > summary { min-height: 8.25rem; display: flex; align-items: flex-end; justify-content: flex-start; padding: .85rem 1rem; text-align: left; transition: background .2s,border-color .2s; }
.hair-family-grid--text .hair-family > summary h3 { min-width: 0; margin: 0; color: #fff; font-family: Poppins,"Century Gothic",Helvetica,sans-serif; font-size: .95rem; font-weight: 300; letter-spacing: 0; line-height: 1.25; }
.hair-family-grid--text .hair-family > summary:after { content: "Details +"; margin-left: auto; padding-left: .75rem; flex: none; color: #eee9e3; font-size: .48rem; letter-spacing: .12em; text-transform: uppercase; }
.hair-family-grid--text .hair-family[open] > summary:after { content: "Hide \2212"; }
.hair-family-grid--text .hair-family > summary:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.hair-family-grid--text .hair-family > .hair-family__details { padding: .8rem 1rem 1rem; }
.hair-link--plain { cursor: default; border-bottom: 0; }
.hair-family-grid--text details.hair-family { transition: border-color .2s ease,background .2s ease; }
.hair-family-grid--text details.hair-family:hover,
.hair-family-grid--text details.hair-family[open] { border-color: #fff; background: rgba(255,255,255,.14); }
.hair-service-choice { display: flex; align-items: center; justify-content: space-between; gap: .8rem; color: #eee8e1; text-decoration: none; }
.hair-service-choice b { flex: none; border: 1px solid rgba(255,255,255,.42); border-radius: 999px; padding: .18rem .48rem; color: #fff; font-size: .54rem; font-weight: 400; letter-spacing: .12em; text-transform: uppercase; transition: background .18s ease,color .18s ease,border-color .18s ease; }
.hair-service-choice:hover b,.hair-service-choice:focus-visible b { border-color: #fff; background: #fff; color: #090909; }
.hair-service-choice:focus-visible { outline: 1px solid #fff; outline-offset: 3px; }

@media (width<=799px) {
  .hair-family-grid--text { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hair-family-grid--text .hair-family > summary { min-height: 7rem; }
}

/* The face landing page has two stable, touch-friendly service groups at every width. */
.hair-family-grid--face { max-width: 52rem; }
.hair-family-grid--face .hair-family > summary { cursor: pointer; }
.hair-family-grid--face .hair-service-choice { min-height: 2.75rem; }
.hair-family-grid--face .hair-service-choice span { min-width: 0; color: #eee8e1; font-size: .68rem; letter-spacing: .02em; line-height: 1.4; }

@media (width<=520px) {
  .hair-family-grid--face { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
  .hair-family-grid--face .hair-family { display: block; min-height: 0; }
  .hair-family-grid--face .hair-family > summary { min-height: 6rem; padding: .7rem; }
  .hair-family-grid--face .hair-family > summary h3 { font-size: .82rem; }
  .hair-family-grid--face .hair-family > .hair-family__details { padding: .55rem .65rem .75rem; }
  .hair-family-grid--face .hair-service-choice { min-height: 2.75rem; gap: .35rem; }
  .hair-family-grid--face .hair-service-choice span { font-size: .7rem; letter-spacing: 0; line-height: 1.35; }
  .hair-family-grid--face .hair-service-choice b { padding: .2rem .35rem; font-size: .5rem; letter-spacing: .06em; }
}

/* Shared appointment tray and secure Square booking flow. */
.page-bar .appointment-nav-cart { position: relative; width: 100%; height: 38px; display: inline-grid; place-items: center; justify-self: stretch; border: 0; padding: 0; color: #fff; background: transparent; cursor: pointer; }
.page-bar .appointment-nav-cart:hover,
.page-bar .appointment-nav-cart:focus-visible,
.page-bar .appointment-nav-cart[aria-expanded="true"] { background: rgba(255,255,255,.14); outline: 0; }
.appointment-nav-cart__icon { width: 1.42rem; height: 1.08rem; fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }
.appointment-nav-cart__icon circle { fill: currentColor; stroke: none; }
.appointment-nav-cart__count { position: absolute; top: calc(100% - .3rem); left: 50%; min-height: 1.1rem; display: flex; align-items: center; gap: .28rem; border: 1px solid rgba(255,255,255,.38); border-radius: 999px; padding: .18rem .42rem; color: #fff; background: rgba(8,8,8,.82); box-shadow: 0 .3rem .9rem rgba(0,0,0,.28); font-size: .44rem; font-weight: 300; line-height: 1.15; font-variant-numeric: tabular-nums; white-space: nowrap; transform: translateX(-50%); }
.appointment-nav-cart__count[hidden]{display:none!important}.appointment-nav-cart__count span{display:inline-flex;align-items:baseline;gap:.16rem}.appointment-nav-cart__count b{font-size:.55rem;font-weight:500}.appointment-nav-cart__count i{font-style:normal;opacity:.6}
.appointment-nav-cart[data-empty="true"] .appointment-nav-cart__count { color: #2a2a2a; background: rgba(255,255,255,.78); }
.appointment-tray { position: relative; z-index: 45; width: 100%; display: flex; flex-direction: column; padding-top: 3.4rem; color: #f5f1ec; background: rgba(10,10,10,.68); border-bottom: 1px solid rgba(255,255,255,.24); box-shadow: 0 1.2rem 3rem rgba(0,0,0,.28); -webkit-backdrop-filter: none; backdrop-filter: none; text-shadow: none; }
.appointment-tray[hidden] { display: none; }
.appointment-tray__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1.4rem 1.35rem 1.15rem; border-bottom: 1px solid rgba(255,255,255,.18); }
.appointment-tray__header { width: min(100%,72rem); margin-inline: auto; }
.appointment-book-account { width: min(100%,72rem); margin-inline: auto; padding: 1rem 1.35rem .2rem; }
.appointment-book-account-status { min-height: 4.4rem; display: grid; align-items: center; border: 1px solid rgba(255,255,255,.18); padding: .85rem 1rem; color: #aaa39c; background: rgba(255,255,255,.04); font-size: .58rem; line-height: 1.55; }
.appointment-book-account-status p { margin: 0; }
.appointment-book-account-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
.appointment-book-account-actions a,
.appointment-book-account-card__actions a { min-height: 2.9rem; border: 1px solid rgba(255,255,255,.58); padding: .65rem 1rem; display: grid; place-items: center; color: #f5f1ec; background: rgba(255,255,255,.08); font: inherit; font-size: .58rem; font-weight: 300; letter-spacing: .14em; text-align: center; text-decoration: none; text-transform: uppercase; }
.appointment-book-account-actions a:hover,
.appointment-book-account-actions a:focus-visible,
.appointment-book-account-card__actions a:hover,
.appointment-book-account-card__actions a:focus-visible { color: #090909; background: #fff; border-color: #fff; outline: 0; }
.appointment-book-account-card { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 1rem; align-items: center; border: 1px solid rgba(255,255,255,.28); padding: 1rem; background: rgba(255,255,255,.06); }
.appointment-book-account-card__identity { min-width: 0; }
.appointment-book-account-card__eyebrow { margin: 0 0 .28rem; color: #aaa39c; font-size: .5rem; letter-spacing: .16em; text-transform: uppercase; }
.appointment-book-account-card__name { margin: 0; color: #f5f1ec; font: 400 1.35rem/1.15 Georgia,"Times New Roman",serif; letter-spacing: -.02em; }
.appointment-book-account-card__details { margin: .45rem 0 0; display: flex; flex-wrap: wrap; gap: .3rem .85rem; color: #bdb6af; font-size: .55rem; line-height: 1.45; }
.appointment-book-account-card__details span + span { position: relative; }
.appointment-book-account-card__details span + span:before { content: "·"; position: absolute; right: calc(100% + .38rem); color: #7f7871; }
.appointment-book-account-card__actions { display: grid; grid-template-columns: repeat(2,minmax(8.5rem,1fr)); gap: .55rem; }
.appointment-book-account-card__actions .appointment-book-manage-link { background: transparent; }
.appointment-book-sections { width: min(100%,72rem); margin-inline: auto; display: block; border-top: 1px solid rgba(255,255,255,.08); }
.appointment-book-section { min-width: 0; padding-bottom: .65rem; }
.appointment-book-section + .appointment-book-section { margin-top: .75rem; border-top: 1px solid rgba(255,255,255,.28); padding-top: .65rem; }
.appointment-book-section:last-child { padding-bottom: .9rem; }
.appointment-book-section__heading { padding: 1.15rem 1.35rem .72rem; }
.appointment-book-section--selections .appointment-book-section__heading { padding-right: 1.35rem; padding-left: 1.35rem; }
.appointment-book-section:not(.appointment-book-section--selections) .appointment-book-section__heading { padding-top: 1.35rem; padding-bottom: .65rem; }
.appointment-book-section__heading h3 { margin: 0; color: #f5f1ec; font-family: Georgia,"Times New Roman",serif; font-size: 1.72rem; font-weight: 400; letter-spacing: -.03em; }
.appointment-book-section--selections .appointment-book-section__heading h3 { color: #aaa39c; font-family: "Century Gothic",CenturyGothic,Poppins,Helvetica,sans-serif; font-size: .55rem; font-weight: 300; letter-spacing: .16em; text-transform: uppercase; }
.appointment-book-section__note { margin: 0; padding: 0 1.35rem .9rem; color: #938c85; font-size: .55rem; line-height: 1.55; }
.appointment-book-section .appointment-tray__body,
.appointment-book-section .appointment-tray__footer { width: 100%; margin: 0; }
.appointment-book-member-state { padding: .1rem 1.35rem 1.4rem; color: #bdb6af; font-size: .62rem; line-height: 1.65; }
.appointment-book-member-state p { margin: 0 0 .85rem; }
.appointment-book-member-state > a { min-height: 2.45rem; display: inline-flex; align-items: center; border: 1px solid rgba(255,255,255,.42); padding: .55rem .75rem; color: #f5f1ec; font-size: .55rem; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; }
.appointment-book-member-state > a:hover,
.appointment-book-member-state > a:focus-visible { color: #090909; background: #fff; border-color: #fff; }
.appointment-book-member-state .appointment-book-login-link { min-height: 0; display: inline; border: 0; padding: 0; color: #e9e4de; background: transparent; font: inherit; letter-spacing: 0; line-height: inherit; text-decoration: none; text-transform: none; }
.appointment-book-member-state .appointment-book-login-link span { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .24em; }
.appointment-book-member-state .appointment-book-login-link:hover { color: #fff; background: transparent; }
.appointment-book-member-state .appointment-book-login-link:focus-visible { color: #fff; background: transparent; outline: 2px solid rgba(255,255,255,.78); outline-offset: .22rem; }
.appointment-book-member-list { margin: 0; padding: 0; list-style: none; }
.appointment-book-member-list li { display: grid; gap: .25rem; padding: .85rem 0; border-top: 1px solid rgba(255,255,255,.15); }
.appointment-book-member-list strong { color: #f5f1ec; font: 400 .95rem/1.25 Georgia,"Times New Roman",serif; }
.appointment-book-member-list time,
.appointment-book-member-list span { color: #aaa39c; font-size: .58rem; line-height: 1.45; }
.appointment-book-member-state__notice { margin-top: .9rem !important; color: #aaa39c; font-size: .58rem; }
.appointment-book-member-more { min-height: 2.65rem; border: 1px solid rgba(255,255,255,.42); padding: .6rem .8rem; color: #f5f1ec; background: transparent; font: inherit; font-size: .55rem; letter-spacing: .12em; text-transform: uppercase; cursor: pointer; }
.appointment-book-member-more:hover,
.appointment-book-member-more:focus-visible { color: #090909; background: #fff; border-color: #fff; }
.appointment-book-member-more:disabled { opacity: .55; cursor: wait; }
.appointment-tray__eyebrow { margin: 0 0 .32rem; color: #aaa39c; font-size: .55rem; letter-spacing: .16em; text-transform: uppercase; }
.appointment-tray__header h2 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: 2rem; font-weight: 400; letter-spacing: -.035em; }
.appointment-tray__close { width: 2.3rem; height: 2.3rem; display: grid; place-items: center; flex: none; border: 1px solid rgba(255,255,255,.24); border-radius: 50%; color: #fff; background: transparent; font: 300 1.25rem/1 Poppins,sans-serif; cursor: pointer; }
.appointment-tray__body { padding: 1.15rem 1.35rem 1.5rem; }
.appointment-tray__empty { margin: 2rem 0; display: grid; justify-items: center; gap: 1rem; color: #c8c2bb; text-align: center; line-height: 1.65; }
.appointment-tray__empty p { margin: 0; }
.appointment-tray__choose-services { width: min(100%,24rem); min-height: 3rem; display: grid; place-items: center; border: 1px solid #fff; padding: .7rem 1rem; color: #080808; background: #fff; font-size: .62rem; letter-spacing: .14em; text-decoration: none; text-transform: uppercase; }
.appointment-tray__choose-services:hover,.appointment-tray__choose-services:focus-visible { color: #fff; background: transparent; outline: 2px solid rgba(255,255,255,.82); outline-offset: .2rem; }
.appointment-tray__list { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit,minmax(14rem,1fr)); gap: 0 1.35rem; list-style: none; }
.appointment-tray__companion-note { margin: 1rem 0 0; padding: .9rem 1rem; border: 1px solid rgba(255,255,255,.26); color: #e9e4de; font-size: .8rem; line-height: 1.65; }
.appointment-tray__companion-note strong { display: block; color: #fff; font-size: .62rem; letter-spacing: .14em; text-transform: uppercase; }
.appointment-tray__item { display: grid; grid-template-columns: minmax(0,1fr) auto; grid-template-rows: auto auto; gap: .45rem .8rem; align-items: center; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.15); }
.appointment-tray__name { grid-column: 1; grid-row: 1 / span 2; color: #f5f1ec; font-family: Georgia,"Times New Roman",serif; font-size: 1.12rem; line-height: 1.2; }
.appointment-tray__name small { display: block; margin-top: .3rem; color: #c9c2bb; font-family: Poppins,"Century Gothic",Helvetica,sans-serif; font-size: .58rem; letter-spacing: .06em; line-height: 1.45; text-transform: uppercase; }
.appointment-tray__quantity-suffix { white-space: nowrap; color: #aaa39c; font-family: Poppins,sans-serif; font-size: .66rem; letter-spacing: .04em; }
.appointment-tray__remove { grid-column: 2; grid-row: 1; align-self: center; border: 0; border-bottom: 1px solid rgba(255,255,255,.46); padding: .15rem 0; color: #d9d3cc; background: transparent; font: inherit; font-size: .52rem; letter-spacing: .11em; text-transform: uppercase; cursor: pointer; }
.appointment-tray__quantity { grid-column: 2; grid-row: 2; display: inline-grid; grid-template-columns: 2.1rem minmax(1.5rem,auto) 2.1rem; align-items: center; justify-self: end; border: 1px solid rgba(255,255,255,.34); }
.appointment-tray__quantity button { min-width: 2.1rem; min-height: 2.1rem; border: 0; padding: 0; color: #f5f1ec; background: transparent; font: 300 1rem/1 Poppins,sans-serif; cursor: pointer; }
.appointment-tray__quantity button:hover,.appointment-tray__quantity button:focus-visible { color: #090909; background: #fff; outline: 0; }
.appointment-tray__quantity button:disabled { color: #6f6963; background: transparent; cursor: not-allowed; }
.appointment-tray__quantity output { min-width: 1.5rem; color: #f5f1ec; font-size: .64rem; font-variant-numeric: tabular-nums; text-align: center; }
.appointment-tray__footer { padding: 1.15rem 1.35rem max(1.35rem,env(safe-area-inset-bottom)); border-top: 1px solid rgba(255,255,255,.18); }
.appointment-tray__summary { display: flex; justify-content: space-between; gap: 1rem; margin: 0 0 .85rem; color: #ccc5be; font-size: .68rem; }
.appointment-tray__continue,.appointment-tray__back { width: 100%; min-height: 3rem; border: 1px solid #fff; padding: .7rem 1rem; color: #080808; background: #fff; font: inherit; font-size: .62rem; letter-spacing: .14em; text-transform: uppercase; cursor: pointer; }
.appointment-tray__continue:disabled { opacity: .35; cursor: not-allowed; }
.appointment-tray__add-services { width: 100%; min-height: 2.8rem; margin-top: .65rem; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.58); padding: .65rem 1rem; color: #f5f1ec; background: transparent; font-size: .58rem; letter-spacing: .12em; text-align: center; text-decoration: none; text-transform: uppercase; }
.appointment-tray__add-services:hover,.appointment-tray__add-services:focus-visible { color: #090909; background: #fff; border-color: #fff; outline: 0; }
.appointment-tray__note { margin: .75rem 0 0; color: #908982; font-size: .58rem; line-height: 1.55; text-align: center; }
.appointment-tray__next { display: grid; align-content: center; text-align: center; }
.appointment-tray__next h3 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: 2.2rem; font-weight: 400; letter-spacing: -.04em; }
.appointment-tray__next p { margin: 1rem auto 1.5rem; max-width: 20rem; color: #c9c2bb; line-height: 1.65; }
.appointment-tray__back { color: #fff; background: transparent; }
.appointment-tray__availability { align-content: start; padding-top: .2rem; text-align: left; }
.appointment-tray__availability h3 { font-size: 1.9rem; }
.appointment-tray__availability .appointment-tray__loading { margin: 1rem 0 1.4rem; }
.appointment-availability-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; margin: 1.25rem 0 1.1rem; }
.appointment-availability-list__time { min-height: 3.5rem; display: grid; gap: .12rem; align-content: center; border: 1px solid rgba(255,255,255,.3); border-radius:.85rem; padding: .5rem .65rem; color: #f5f1ec; background: rgba(255,255,255,.07); text-align: left; cursor: pointer; }
.appointment-availability-list__time:hover,.appointment-availability-list__time:focus-visible { border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.11);box-shadow:none;outline:0;transform:none; }
.appointment-availability-list__time span { color: #a8a19a; font: 400 .5rem/1.3 Poppins,sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.appointment-availability-list__time strong { font: 400 1.05rem/1.2 Georgia,"Times New Roman",serif; }
.appointment-variation-list { display: grid; gap: .6rem; margin: 1.25rem 0 1rem; }
.appointment-variation-list button { min-height: 3.25rem; border: 1px solid rgba(255,255,255,.32); padding: .7rem 1rem; color: #f5f1ec; background: rgba(255,255,255,.07); font: 400 .7rem/1.25 Poppins,sans-serif; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.appointment-variation-list button:hover,.appointment-variation-list button:focus-visible { border-color: #fff; background: rgba(255,255,255,.14); }
.appointment-tray__booking-form { align-content: start; text-align: left; }
.appointment-tray__booking-form h3 { margin-bottom: 1.25rem; font-size: 1.7rem; }
.appointment-booking-form { display: grid; gap: .85rem; }
.appointment-booking-form__names { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
.appointment-booking-form label:not(.appointment-booking-form__consent) { display: grid; gap: .35rem; }
.appointment-booking-form label > span { color: #bbb3ac; font-size: .54rem; letter-spacing: .12em; text-transform: uppercase; }
.appointment-booking-form input:not([type="checkbox"]) { width: 100%; min-height: 2.7rem; border: 1px solid rgba(255,255,255,.26); border-radius: 0; padding: .6rem .7rem; color: #fff; background: rgba(255,255,255,.07); font: inherit; font-size: .78rem; outline: none; }
.appointment-booking-form input:not([type="checkbox"]):focus { border-color: #fff; }
.appointment-booking-form__consent { display: grid; grid-template-columns: auto 1fr; gap: .65rem; align-items: start; margin-top: .3rem; }
.appointment-booking-form__consent input { width: 1rem; height: 1rem; margin: .1rem 0 0; accent-color: #fff; }
.appointment-booking-form__consent span { letter-spacing: 0 !important; line-height: 1.45; text-transform: none !important; }
.appointment-booking-form__privacy { margin: -.25rem 0 .2rem !important; color: #918a83 !important; font-size: .57rem; text-align: left; }
.appointment-booking-form__privacy a { color: inherit; text-decoration: underline; }
.appointment-booking-form__error { margin: 0 !important; border: 1px solid rgba(255,160,160,.36); padding: .7rem; color: #ffd3d3 !important; background: rgba(140,20,20,.14); font-size: .65rem; text-align: left; }
.appointment-booking-form__submit { width: 100%; min-height: 3rem; border: 1px solid #fff; padding: .7rem 1rem; color: #080808; background: #fff; font: inherit; font-size: .62rem; letter-spacing: .14em; text-transform: uppercase; cursor: pointer; }
.appointment-booking-form__submit:disabled { opacity: .5; cursor: wait; }
.appointment-booking-form .appointment-tray__back { margin-top: -.2rem; }
.appointment-booking-form__honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.appointment-consultation-form { display: grid; gap: .85rem; margin-top: 1rem; }
.appointment-consultation-form fieldset { min-width: 0; margin: 0; border: 0; padding: 0; }
.appointment-consultation-form legend,
.appointment-consultation-message > span { margin: 0 0 .45rem; color: #bbb3ac; font-size: .54rem; letter-spacing: .12em; text-transform: uppercase; }
.appointment-consultation-modes { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
.appointment-consultation-modes label { min-height: 3.4rem; display: grid; grid-template-columns: auto 1fr; align-content: center; column-gap: .6rem; border: 1px solid rgba(255,255,255,.28); padding: .7rem .8rem; color: #fff; background: rgba(255,255,255,.06); cursor: pointer; }
.appointment-consultation-modes input { grid-row: 1 / span 2; align-self: center; width: 1rem; height: 1rem; margin: 0; accent-color: #fff; }
.appointment-consultation-modes span { font-size: .72rem; }
.appointment-consultation-modes small,
.appointment-consultation-message small { color: #aaa39c; font-size: .5rem; font-weight: 300; letter-spacing: .08em; text-transform: uppercase; }
.appointment-consultation-message { display: flex; justify-content: space-between; align-items: baseline; gap: .75rem; }
.appointment-consultation-form textarea { width: 100%; min-height: 6rem; resize: vertical; border: 1px solid rgba(255,255,255,.3); border-radius: 0; padding: .65rem .7rem; color: #fff; background: rgba(255,255,255,.07); font: inherit; font-size: .78rem; line-height: 1.5; outline: none; }
.appointment-consultation-form textarea:focus { border-color: #fff; }
.appointment-consultation-honesty { margin: 0 !important; color: #aaa39c !important; font-size: .6rem; line-height: 1.55; text-align: left; }
.appointment-tray__confirmation { align-content: center; text-align: center; }
.hair-service-choice b,.appointment-service-action { position: relative; }
.hair-service-choice[data-added="true"] b { border-color: #fff; color: transparent; background: #fff; }
.hair-service-choice[data-added="true"] b:after,.appointment-service-link[data-added="true"] .appointment-service-action:after { content: "Added"; position: absolute; inset: 0; display: grid; place-items: center; color: #090909; font-size: .46rem; letter-spacing: .04em; }
.appointment-service-action { display: inline-flex; min-height: 1.75rem; align-items: center; justify-content: center; margin-left: .65rem; padding: .25rem .65rem; border: 1px solid rgba(255,255,255,.48); border-radius: 999px; color: #fff; font-size: .54rem; font-weight: 400; letter-spacing: .12em; line-height: 1; text-transform: uppercase; transition: background .18s ease,color .18s ease,border-color .18s ease; }
.appointment-service-card-quantity { display: inline-grid; grid-template-columns: 1.7rem 1.5rem 1.7rem; align-items: center; flex: none; margin-left: auto; color: #fff; }
.appointment-service-card-quantity[hidden] { display: none; }
.appointment-service-card-quantity > [role="button"] { min-width: 1.7rem; min-height: 1.7rem; display: grid; place-items: center; border-radius: 50%; color: #d9d3cc; font: 300 .8rem/1 Poppins,sans-serif; cursor: pointer; }
.appointment-service-card-quantity > [role="button"]:hover,.appointment-service-card-quantity > [role="button"]:focus-visible { color: #090909; background: #fff; outline: 0; }
.appointment-service-card-quantity > [role="button"][aria-disabled="true"] { color: #716b65; background: transparent; cursor: not-allowed; }
.appointment-service-card-quantity__count { width: 1.45rem; height: 1.45rem; display: grid; place-items: center; justify-self: center; border: 1px solid rgba(255,255,255,.72); border-radius: 50%; color: #fff; background: rgba(0,0,0,.48); font-size: .58rem; font-variant-numeric: tabular-nums; line-height: 1; }
.mcard.appointment-service-link .appointment-service-action { width: max-content; margin: .45rem 0 0; }
.mcard.appointment-service-link .appointment-service-card-quantity { width: max-content; margin: .75rem auto 0; }
.appointment-service-link:hover .appointment-service-action,.appointment-service-link:focus-visible .appointment-service-action,.appointment-service-link[data-added="true"] .appointment-service-action { border-color: #fff; color: #090909; background: #fff; }

/* Accessible styling-support prompt shown only at the booking transition. */
.bag-edit-offer {
  width: min(92vw,31rem);
  max-width: none;
  margin: auto;
  border: 1px solid rgba(255,255,255,.42);
  border-radius: .2rem;
  padding: 0;
  color: #f5f1ec;
  background: rgba(12,12,12,.96);
  box-shadow: 0 1.8rem 6rem rgba(0,0,0,.58);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.bag-edit-offer::backdrop { background: rgba(0,0,0,.78); backdrop-filter: none; }
.bag-edit-offer__inner { position: relative; padding: clamp(2rem,6vw,3.3rem) clamp(1.25rem,5vw,2.7rem) clamp(1.5rem,5vw,2.35rem); text-align: center; }
.bag-edit-offer__close { position: absolute; top: .6rem; right: .7rem; width: 2.4rem; height: 2.4rem; display: grid; place-items: center; border: 0; color: #d9d3cc; background: transparent; font: 300 1.35rem/1 Poppins,sans-serif; cursor: pointer; }
.bag-edit-offer__eyebrow { margin: 0 0 .55rem; color: #aaa39c; font-size: .55rem; letter-spacing: .17em; text-transform: uppercase; }
.bag-edit-offer h2 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2rem,7vw,3rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
.bag-edit-offer__inner > p:not(.bag-edit-offer__eyebrow) { max-width: 23rem; margin: 1rem auto 0; color: #c9c2bb; font-size: .82rem; line-height: 1.65; }
.bag-edit-offer__actions { display: grid; gap: .65rem; margin-top: 1rem; }
.bag-edit-offer__actions :is(button,a) { min-height: 3rem; display:grid;place-items:center;border: 1px solid #fff; padding: .7rem 1rem; font: 400 .62rem/1.3 Poppins,sans-serif; letter-spacing: .13em; text-align:center;text-decoration:none;text-transform: uppercase; cursor: pointer; }
.bag-edit-offer__add { color: #080808; background: #fff; }
.bag-edit-offer__skip { color: #fff; background: transparent; }
.bag-edit-offer__actions :is(button,a):hover,.bag-edit-offer__actions :is(button,a):focus-visible,.bag-edit-offer__close:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }

@media (width<=640px) {
  .bag-edit-offer { width: calc(100vw - 1.25rem); }
  .bag-edit-offer__inner { padding-top: 2.4rem; }
}

/* Appointment service squares reveal their selection controls only on an intentional click. */
.mcard.appointment-service-link {
  min-height: 8.25rem;
  justify-content: flex-end;
  overflow: hidden;
  cursor: pointer;
  transition: min-height .28s ease,background .2s,border-color .2s;
}
.mcard.appointment-service-link > .appointment-service-card-quantity,
.mcard.appointment-service-link > .appointment-service-action {
  max-height: 0;
  margin-top: 0;
  margin-bottom: 0;
  opacity: 0;
  overflow: hidden;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(.35rem);
  transition: max-height .3s ease,opacity .2s ease,transform .3s ease,margin .3s ease,visibility 0s linear .3s;
}
.mcard.appointment-service-link > .meta,
.mcard.appointment-service-link > p { opacity: 1; visibility: visible; }
.mcard.appointment-service-link > .meta { margin-top: .2rem; margin-bottom: .35rem; }
.mcard.appointment-service-link > p { margin-bottom: .35rem; }
.appointment-service-reveal-affordance { margin-top: .65rem; color: #eee9e3; font-size: .54rem; letter-spacing: .13em; text-transform: uppercase; }
.mcard.appointment-service-link[data-expanded="true"] { min-height: 12rem; }
.mcard.appointment-service-link:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }

/* Keep glass service cards legible when the global light-hover treatment is active. */
.makeup-page .mcard.appointment-service-link[data-expanded="true"],
.makeup-page .mcard.appointment-service-link[data-added="true"] {
  color: #f4f1ed;
  background: rgba(8,8,8,.38);
  border-color: #fff;
}
.makeup-page .mcard.appointment-service-link[data-expanded="true"] > h3,
.makeup-page .mcard.appointment-service-link[data-added="true"] > h3 { color: #fff; }
.makeup-page .mcard.appointment-service-link[data-expanded="true"] > .meta,
.makeup-page .mcard.appointment-service-link[data-expanded="true"] > p,
.makeup-page .mcard.appointment-service-link[data-added="true"] > .meta,
.makeup-page .mcard.appointment-service-link[data-added="true"] > p { color: #f2f0ee; }
.mcard.appointment-service-link[data-expanded="true"] > .appointment-service-card-quantity,
.mcard.appointment-service-link[data-expanded="true"] > .appointment-service-action {
  max-height: 12rem;
  opacity: 1;
  overflow: visible;
  visibility: visible;
  pointer-events: auto;
  transform: none;
  transition-delay: 0s;
}

/* Service cards keep their approved copy visible and reveal secondary controls intentionally. */
.reveal-service-card { min-height: 8.25rem; justify-content: flex-start; overflow: hidden; cursor: pointer; transition: min-height .28s ease,background .2s,border-color .2s; }
.service-card-reveal-trigger { width: 100%; min-height: 2.75rem; margin: 0; padding: 0; display: flex; align-items: flex-start; justify-content: space-between; gap: .8rem; border: 0; color: inherit; background: transparent; font: inherit; text-align: left; cursor: pointer; }
.service-card-reveal-trigger:after { content: "Details +"; flex: none; align-self: center; color: #eee9e3; font-family: Poppins,"Century Gothic",Helvetica,sans-serif; font-size: .5rem; font-weight: 300; letter-spacing: .13em; text-transform: uppercase; }
.reveal-service-card[data-expanded="true"] .service-card-reveal-trigger:after { content: "Hide details \2212"; }
.reveal-service-card > h3 { width: 100%; min-height: 2.75rem; margin: 0; display: flex; align-items: flex-start; color: #fff; text-align: left; }
.service-card-reveal-trigger:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.reveal-service-card > .service-format,
.reveal-service-card > .service-card-booking-action { max-height: 0; margin-top: 0; margin-bottom: 0; opacity: 0; overflow: hidden; visibility: hidden; pointer-events: none; transform: translateY(.35rem); transition: max-height .35s ease,opacity .2s ease,transform .3s ease,margin .3s ease,visibility 0s linear .35s; }
.reveal-service-card > .meta { margin-top: .2rem; margin-bottom: .35rem; }
.reveal-service-card > p { margin-bottom: .35rem; }
.reveal-service-card[data-expanded="true"] { min-height: 12rem; border-color: #fff; background: rgba(8,8,8,.38); }
.reveal-service-card:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.reveal-service-card[data-expanded="true"] > .service-format,
.reveal-service-card[data-expanded="true"] > .service-card-booking-action { max-height: 40rem; opacity: 1; overflow: visible; visibility: visible; pointer-events: auto; transform: none; transition-delay: 0s; }
.reveal-service-card[data-expanded="true"] > .service-format,
.reveal-service-card[data-expanded="true"] > .service-card-booking-action { margin-top: 1rem; }
.service-card-booking-action { min-height: 3.25rem; padding: .7rem .8rem; display: flex; align-items: center; justify-content: space-between; gap: .8rem; border: 1px solid rgba(255,255,255,.5); color: #fff; background: rgba(255,255,255,.045); text-decoration: none; }
.service-card-booking-action:hover,.service-card-booking-action:focus-visible { color: #090909; background: #fff; outline: 2px solid #fff; outline-offset: 2px; }
.service-card-booking-action > span { font-size: .68rem; letter-spacing: .04em; }
.service-card-booking-action b { font-size: .49rem; font-weight: 300; letter-spacing: .12em; text-align: right; text-transform: uppercase; }
.look-service-page .look-service-card { justify-content: flex-end; text-align: left; }
.look-service-page .look-service-card > .meta,
.look-service-page .look-service-card > p { color: #f2f0ee; }
.look-service-page .look-service-card > h3,
.look-service-page .look-service-card .service-card-reveal-trigger { align-items: flex-end; justify-content: flex-start; text-align: left; }
.look-service-page .look-service-card[data-expanded="true"] { justify-content: flex-start; }
.look-service-page .look-service-card[data-expanded="true"] > h3,
.look-service-page .look-service-card[data-expanded="true"] .service-card-reveal-trigger { align-items: flex-start; }
.look-service-page .look-service-card > .service-format { border-top-width: 0; }
.look-service-page .look-service-card[data-expanded="true"] > .service-format { border-top-width: 1px; }
.style-wardrobe-page .wardrobe-service-card { justify-content: flex-end; text-align: left; }
.style-wardrobe-page .wardrobe-service-card > .meta,
.style-wardrobe-page .wardrobe-service-card > p { color: #f2f0ee; }
.style-wardrobe-page .wardrobe-service-card > h3,
.style-wardrobe-page .wardrobe-service-card .service-card-reveal-trigger { align-items: flex-end; justify-content: flex-start; text-align: left; }
.style-wardrobe-page .wardrobe-service-card[data-expanded="true"] { justify-content: flex-start; }
.style-wardrobe-page .wardrobe-service-card[data-expanded="true"] > h3,
.style-wardrobe-page .wardrobe-service-card[data-expanded="true"] .service-card-reveal-trigger { align-items: flex-start; }
.style-wardrobe-page .wardrobe-service-card > .service-format { border-top-width: 0; }
.style-wardrobe-page .wardrobe-service-card[data-expanded="true"] > .service-format { border-top-width: 1px; }

/* Native service disclosures keep price, copy, warnings and booking controls collapsed until requested. */
.disclosure-service-card { min-height: 8.25rem; justify-content: flex-end; overflow: hidden; text-align: left; transition: min-height .28s ease,background .2s,border-color .2s; }
.service-card-disclosure { width: 100%; color: inherit; }
.service-card-disclosure > summary { min-height: 2.75rem; display: flex; align-items: flex-end; justify-content: space-between; gap: .8rem; color: #fff; list-style: none; text-align: left; cursor: pointer; }
.service-card-disclosure > summary::-webkit-details-marker { display: none; }
.service-card-disclosure__title { min-width: 0; color: #fff; font-size: .95rem; font-weight: 300; line-height: 1.2; }
.service-card-disclosure__toggle { flex: none; align-self: center; color: #eee9e3; font-size: .5rem; letter-spacing: .13em; text-transform: uppercase; }
.service-card-disclosure__toggle:before { content: "Details +"; }
.service-card-disclosure[open] .service-card-disclosure__toggle:before { content: "Hide details \2212"; }
.service-card-disclosure > summary:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.service-card-disclosure[open] > summary { align-items: flex-start; }
.service-card-disclosure__content { padding-top: .2rem; color: #f2f0ee; }
.service-card-disclosure__content > .meta { margin: .2rem 0 .35rem; color: #f2f0ee; }
.service-card-disclosure__content > p { margin-bottom: .35rem; color: #f2f0ee; }
.service-card-disclosure__content > .service-format,
.service-card-disclosure__content > .service-card-booking-action,
.service-card-disclosure__content > .membership-tier__cta { margin-top: 1rem; }
.makeup-page .disclosure-service-card:hover,
.makeup-page .disclosure-service-card:focus-within,
.makeup-page .disclosure-service-card:has(> .service-card-disclosure[open]) { min-height: 12rem; border-color: #fff; color: #f4f1ed; background: rgba(8,8,8,.38); }
.look-service-page .look-service-card--style { width: 100%; justify-self: stretch; }

/* Related-service path at the end of every focused page. */
.service-crosslink {
  width: min(92%,48rem);
  margin: clamp(2rem,5vw,4rem) auto 0;
  padding: 1.15rem 1.25rem 0;
  border-top: 1px solid rgba(255,255,255,.24);
  color: #e4ded8;
  font-size: .78rem;
  line-height: 1.65;
  text-align: center;
  text-shadow: 0 2px 18px rgba(0,0,0,.95);
}
.service-crosslink .mini-link { margin-left: .2rem; }

@media (width<=640px) {
  .page-bar .appointment-nav-cart { height: 34px; }
  .appointment-nav-cart__icon { width: 1.16rem; height: .92rem; }
  .appointment-nav-cart__count { top: calc(100% - .18rem); left: 50%; min-height: 1rem; gap:.22rem; padding:.16rem .32rem; font-size:.4rem; }
  .appointment-tray { padding-top: 2.8rem; }
  .appointment-tray__header { padding: 1.1rem 1rem .9rem; }
  .appointment-book-account { padding-right: 1rem; padding-left: 1rem; }
  .appointment-book-account-actions { gap: .5rem; }
  .appointment-book-account-card { grid-template-columns: 1fr; gap: .85rem; padding: .9rem; }
  .appointment-book-account-card__actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .appointment-book-section__heading { padding-right: 1rem; padding-left: 1rem; }
  .appointment-book-section--selections .appointment-book-section__heading { padding-right: 1rem; padding-left: 1rem; }
  .appointment-book-section__note { padding-right: 1rem; padding-left: 1rem; }
  .appointment-book-member-state { padding-right: 1rem; padding-left: 1rem; }
  .appointment-tray__body { padding: .95rem 1rem 1.15rem; }
  .appointment-tray__footer { padding: 1rem max(1rem,env(safe-area-inset-right)) max(1.1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left)); }
  .appointment-tray__list { grid-template-columns: 1fr; }
  .appointment-availability-list { grid-template-columns: 1fr 1fr; }
  .appointment-consultation-modes { grid-template-columns: 1fr; }
}


/* Keep the navigation and its top-down veil visible as the page scrolls. */
.page-bar,
.reading-page .page-bar {
  position: fixed;
  z-index: 50;
  top: 0;
  right: 0;
  left: 0;
  min-height: 0;
  background: transparent;
}

/* The pinned top navigation replaces the duplicate action bar at the bottom. */
.site > .fixed.inset-x-0.bottom-0 { display: none; }

/* One consistent transition from each service description into its choices. */
.hair-hero--wall,
.makeup-wall-hero,
.extension-wall-hero { min-height: auto; }
.hair-services,
.makeup-page .makeup-services,
.extension-page .extension-services { padding-top: 2.5rem; }

/* Give the guide and assessment the same title treatment as the service pages. */
.editorial-hero { min-height: auto; }
.editorial-hero h1 { max-width: 48rem; margin-inline: auto; font-size: clamp(3rem,6.2vw,5.6rem); }
.editorial-hero .lede { width: min(95%,42rem); }
.guide-page .page-main,
.reading-page .page-main { padding-top: 2.5rem; }
.guide-page .page-main > p:first-child,
.guide-page .page-main > h1:first-of-type,
.guide-page .page-main > h1:first-of-type + p { display: none; }
.reading-page .quiz-intro > .eyebrow:first-child,
.reading-page .quiz-intro > h1:first-of-type,
.reading-page .quiz-intro > .reading-intro { display: none; }

@media (width<=799px) {
  .editorial-hero { min-height: auto; padding-top: calc(var(--service-copy-top) - var(--service-copy-lift)); }
  .editorial-hero h1 { font-size: clamp(2.55rem,11.5vw,3.75rem); line-height: .94; }
  .editorial-hero--assessment h1 { font-size: clamp(2.35rem,10.6vw,3.5rem); }
  .guide-page .page-main,
  .reading-page .page-main { padding-top: 2rem; }
}

/* Preview brand lockup: the existing signature and unLTD wordmark share one home link. */
.page-bar .site-nav > .site-nav__wordmark {
  position: relative;
  display: inline-flex;
  flex-direction: row;
  gap: .08rem;
  align-items: center;
  justify-content: center;
  padding-inline: .15rem;
  letter-spacing: 0;
  white-space: nowrap;
}
.page-bar .site-nav > .site-nav__wordmark:hover,
.page-bar .site-nav > .site-nav__wordmark:focus-visible { letter-spacing: 0; }
.site-nav__signature {
  width: 9.5rem;
  height: 4.25rem;
  flex: 0 0 auto;
  background: url(../site/hero-sign-white.png) center/contain no-repeat;
  filter: drop-shadow(0 1px 7px rgba(0,0,0,.9));
  transition: filter .2s ease;
}
.site-nav__label {
  font-size: .84rem;
  font-weight: 400;
  letter-spacing: .18em;
  text-transform: none;
  transition: text-shadow .2s ease;
}

@media (width>=800px) {
  .page-bar .site-nav {
    grid-template-columns: 13.5rem repeat(4,minmax(5.5rem,1fr)) minmax(6.75rem,.72fr);
  }
  .page-bar .site-nav > a,
  .page-bar .nav-drop > button { height: 76px; }
  .page-bar .site-nav > .site-nav__wordmark {
    justify-content: flex-start;
    transform: translateX(clamp(-3.25rem,-4vw,-2rem));
  }
  .page-bar .site-nav__utilities { justify-content: center; }
}

@media (width<=799px) {
  .page-bar .site-nav > .site-nav__wordmark {
    gap: .03rem;
    padding-inline: 0;
  }
  .site-nav__signature { width: 2.9rem; height: 1.45rem; }
  .site-nav__label { font-size: .64rem; letter-spacing: .1em; }
}

@media (width<=430px) {
  .site-nav__label { font-size: .5rem; letter-spacing: .035em; }
  .page-bar .site-nav__account-tools { transform: translateX(-.2rem); }
}

/* Compact navigation emphasis: text controls hug their words; the combined brand stays unboxed. */
.page-bar .site-nav > a:not(.site-nav__wordmark),
.page-bar .nav-drop > button,
.page-bar .site-nav__account-tools .member-login-nav {
  width: auto;
  height: 1.75rem;
  justify-self: center;
  padding-inline: .4rem;
  border-radius: .25rem;
  transition: letter-spacing .2s,text-shadow .2s ease;
}
.page-bar .site-nav > a:not(.site-nav__wordmark):hover,
.page-bar .site-nav > a:not(.site-nav__wordmark)[data-proximity="true"],
.page-bar .site-nav > a:not(.site-nav__wordmark):focus-visible,
.page-bar .nav-drop > button:hover,
.page-bar .nav-drop > button[data-proximity="true"],
.page-bar .nav-drop > button:focus-visible,
.page-bar .site-nav__account-tools .member-login-nav:hover,
.page-bar .site-nav__account-tools .member-login-nav[data-proximity="true"],
.page-bar .site-nav__account-tools .member-login-nav:focus-visible {
  letter-spacing: .18em;
  background: transparent;
  box-shadow: none;
  outline: 0;
  text-shadow: 0 0 .08rem #fff,0 0 .22rem rgba(255,255,255,1),0 0 .58rem rgba(255,255,255,.96),0 0 1.1rem rgba(255,255,255,.76),0 0 1.9rem rgba(255,255,255,.5),0 0 2.6rem rgba(255,255,255,.3);
}
.page-bar .site-nav > a:not(.site-nav__wordmark):focus-visible,
.page-bar .nav-drop > button:focus-visible,
.page-bar .site-nav__account-tools .member-login-nav:focus-visible {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .25em;
}
.page-bar .site-nav > .site-nav__wordmark:hover,
.page-bar .site-nav > .site-nav__wordmark[data-proximity="true"],
.page-bar .site-nav > .site-nav__wordmark:focus-visible {
  background: transparent;
  box-shadow: none;
  outline: 0;
}
.page-bar .site-nav > .site-nav__wordmark:hover .site-nav__signature,
.page-bar .site-nav > .site-nav__wordmark[data-proximity="true"] .site-nav__signature {
  filter: drop-shadow(0 1px 7px rgba(0,0,0,.9));
}
.page-bar .site-nav > .site-nav__wordmark:focus-visible .site-nav__signature {
  filter: drop-shadow(0 1px 7px rgba(0,0,0,.9));
}
.page-bar .site-nav > .site-nav__wordmark:hover .site-nav__label,
.page-bar .site-nav > .site-nav__wordmark[data-proximity="true"] .site-nav__label {
  text-shadow: 0 0 .18rem rgba(255,255,255,.9),0 0 .58rem rgba(255,255,255,.7),0 0 1.2rem rgba(255,255,255,.46),0 0 2rem rgba(255,255,255,.26);
}
.page-bar .site-nav > .site-nav__wordmark:focus-visible .site-nav__label {
  text-shadow: 0 0 .18rem rgba(255,255,255,.94),0 0 .58rem rgba(255,255,255,.74),0 0 1.2rem rgba(255,255,255,.5),0 0 2rem rgba(255,255,255,.3);
}
.page-bar .site-nav > .site-nav__wordmark:focus-visible .site-nav__signature {
  outline: 0;
}
.page-bar .site-nav > .site-nav__wordmark:focus-visible .site-nav__label {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .22em;
}

@media (width<=799px) {
  .page-bar .site-nav > a:not(.site-nav__wordmark),
  .page-bar .nav-drop > button,
  .page-bar .site-nav__account-tools .member-login-nav { height: 1.5rem; padding-inline: .22rem; }
}

/* Search and Appointment Book share the feathered icon glow without touching the badge. */
.page-bar .site-search__mark,
.page-bar .appointment-nav-cart,
.page-bar .appointment-nav-cart:hover,
.page-bar .appointment-nav-cart:focus-visible,
.page-bar .appointment-nav-cart[aria-expanded="true"] {
  background: transparent;
  box-shadow: none;
  outline: 0;
}
.page-bar .site-search__mark svg,
.page-bar .appointment-nav-cart__icon { transition: filter .2s ease; }
.page-bar .site-search__mark:hover svg,
.page-bar .site-search__mark[data-proximity="true"] svg,
.page-bar .site-search__mark:focus-visible svg,
.page-bar .site-search[data-open="true"] .site-search__mark svg,
.page-bar .appointment-nav-cart:hover .appointment-nav-cart__icon,
.page-bar .appointment-nav-cart[data-proximity="true"] .appointment-nav-cart__icon,
.page-bar .appointment-nav-cart:focus-visible .appointment-nav-cart__icon,
.page-bar .appointment-nav-cart[aria-expanded="true"] .appointment-nav-cart__icon {
  filter: drop-shadow(0 0 .08rem #fff) drop-shadow(0 0 .2rem rgba(255,255,255,1)) drop-shadow(0 0 .52rem rgba(255,255,255,.96)) drop-shadow(0 0 1rem rgba(255,255,255,.72)) drop-shadow(0 0 1.7rem rgba(255,255,255,.44));
}

/* Keep the closed Services hover target on the word-sized control, not its grid cell. */
.page-bar .nav-drop {
  width: max-content;
  justify-self: center;
}

.page-bar .site-nav[data-proximity-active="true"] { cursor: pointer; }

/* Local prototype: two clearly separated systems plus the central membership map. */
.membership-choice { width: min(92%,72rem); margin: clamp(1rem,3vw,2rem) auto; position: relative; z-index: 2; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; color: #fff; }
.membership-choice article { padding: clamp(1.2rem,3vw,2rem); border: 1px solid rgba(211,227,230,.28); background: rgba(15,19,20,.92); box-shadow: 0 1.5rem 3.5rem rgba(0,0,0,.25); }
.membership-choice article:last-child { border-color: rgba(199,217,210,.52); background: linear-gradient(145deg,rgba(36,47,46,.95),rgba(12,16,17,.94)); }
.membership-choice article > p,.membership-section-head > p,.membership-private-path > header > p { margin: 0 0 .55rem; color: #b9d0d4; font-size: .62rem; letter-spacing: .2em; text-transform: uppercase; }
.membership-choice h2,.membership-section-head h2,.membership-private-path h2 { margin: 0; color: #fff; font: 400 clamp(1.8rem,4vw,3.5rem)/1 Georgia,"Times New Roman",serif; letter-spacing: -.04em; }
.membership-choice ul { min-height: 7.2rem; padding-left: 1.1rem; color: #d2d7d7; font-size: .73rem; line-height: 1.8; }
.membership-choice__lead { margin-top: .9rem; display: block; color: #dce4e3; font: 300 .82rem/1.75 Poppins,Arial,sans-serif; }
.membership-choice strong { min-height: 2.6rem; display: block; color: #f0e3ca; font-size: .7rem; font-weight: 300; line-height: 1.6; }
.membership-choice a,.membership-private-tiers a { margin-top: 1rem; padding: .7rem .9rem; display: inline-flex; border: 1px solid rgba(215,229,230,.48); color: #fff; font-size: .63rem; letter-spacing: .14em; text-decoration: none; text-transform: uppercase; }
.membership-section-head { max-width: 52rem; margin: 0 auto clamp(1.3rem,3vw,2.2rem); text-align: center; }
.membership-section-head > span,.membership-private-path > header > span { max-width: 46rem; margin: .9rem auto 0; display: block; color: #cbd1d2; font-size: .74rem; line-height: 1.8; }
.membership-private-path { width: min(92%,72rem); margin: clamp(4rem,9vw,8rem) auto; padding: clamp(1.2rem,4vw,3rem); position: relative; z-index: 2; border: 1px solid rgba(199,219,213,.4); color: #fff; background: linear-gradient(155deg,rgba(44,56,54,.94),rgba(10,13,14,.96) 64%); box-shadow: 0 2rem 5rem rgba(0,0,0,.35); }
.membership-private-path > header { max-width: 58rem; margin: 0 auto 2rem; text-align: center; }
.membership-private-tiers { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; }
.membership-private-tiers article { padding: 1.1rem; border: 1px solid rgba(210,226,222,.22); background: rgba(9,13,14,.52); }
.membership-private-tiers h3 { margin: 0; font: 400 1.35rem Georgia,"Times New Roman",serif; }
.membership-private-tiers article > p { color: #e9d9bc; font: 400 1.1rem Georgia,"Times New Roman",serif; }
.membership-private-tiers article > p span { color: #aeb8b8; font: 300 .65rem Poppins,sans-serif; }
.membership-private-tiers ul { min-height: 9rem; padding-left: 1rem; color: #cbd1d1; font-size: .7rem; line-height: 1.75; }
.membership-private-note { margin: 1.2rem 0 0; color: #b4bdbd; font-size: .65rem; line-height: 1.7; text-align: center; }
.book-membership-panel { width: min(92%,72rem); margin: 1rem auto 3rem; padding: clamp(1rem,3vw,1.8rem); position: relative; z-index: 2; display: grid; grid-template-columns: 1fr auto; gap: 1rem; align-items: center; border: 1px solid rgba(207,223,226,.3); color: #fff; background: rgba(13,17,18,.9); }
.book-membership-panel h2 { margin: .1rem 0 .5rem; font: 400 clamp(1.5rem,3vw,2.5rem) Georgia,"Times New Roman",serif; }
.book-membership-panel p { margin: 0; color: #c4cbcc; font-size: .7rem; line-height: 1.7; }
.book-membership-panel a { padding: .75rem 1rem; border: 1px solid rgba(211,226,228,.45); color: #fff; font-size: .62rem; letter-spacing: .13em; text-decoration: none; text-transform: uppercase; }
@media(max-width:780px){.membership-choice,.membership-private-tiers{grid-template-columns:1fr}.membership-choice ul,.membership-private-tiers ul{min-height:0}.book-membership-panel{grid-template-columns:1fr}.site-nav>.nav-drop>button{font-size:.55rem;letter-spacing:.02em}.member-login-nav{display:none!important}}
@media(max-width:420px){.membership-choice,.membership-private-path{width:calc(100% - 1.25rem)}.membership-choice{gap:.65rem}.membership-choice article,.membership-private-path{padding:.9rem}.membership-choice h2,.membership-section-head h2,.membership-private-path h2{font-size:1.75rem}.membership-private-tiers{gap:.6rem}.site-nav{gap:.28rem!important}.site-nav>.nav-drop>button{padding-inline:.3rem!important;font-size:.48rem!important}.site-nav>a[data-shop]{font-size:.56rem!important}}
@media(max-width:420px){.page-bar .site-nav>.site-nav__wordmark{min-width:2.5rem}.site-nav__signature{display:none}.site-nav__label{font-size:.6rem;letter-spacing:.08em}.page-bar .site-search{display:none!important}.site-nav>.nav-drop>button{font-size:.62rem!important;letter-spacing:.03em!important}.site-nav{gap:.38rem!important}}
.nav-menu__group { margin: .35rem .65rem .1rem; padding-top: .35rem; display: block; border-top: 1px solid rgba(220,230,232,.16); color: #91a3a6; font-size: .48rem; letter-spacing: .18em; text-transform: uppercase; }
.nav-menu__group:first-child { margin-top: .1rem; padding-top: 0; border-top: 0; }
.method-cinematic-bg { position: fixed; inset: 0; overflow: hidden; background: #101313; }
.method-cinematic-bg .home-wall-stage { display: none; }
.method-cinematic-bg::before { content: ""; position: absolute; inset: -9%; background-image: linear-gradient(90deg,rgba(5,8,9,.9) 0%,rgba(5,8,9,.58) 42%,rgba(5,8,9,.1) 72%),url("../site/member-access-background-v1.jpg"); background-repeat: no-repeat; background-size: cover; background-position: 66% 50%; transform: translate3d(-1.4%,-.8%,0) scale(1.055); transform-origin: 62% 48%; animation: method-cinematic-camera 34s ease-in-out infinite alternate; will-change: transform,background-position; }
.method-cinematic-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(4,7,8,.15),rgba(4,7,8,.38) 74%,rgba(4,7,8,.7)); }
@keyframes method-cinematic-camera { 0% { transform: translate3d(-1.4%,-.8%,0) scale(1.055); background-position: 64% 48%; } 46% { transform: translate3d(.8%,-1.4%,0) scale(1.09); background-position: 70% 52%; } 100% { transform: translate3d(-.2%,1.1%,0) scale(1.07); background-position: 67% 55%; } }
@media(max-width:420px){.method-cinematic-bg::before{inset:-12%;background-image:linear-gradient(180deg,rgba(5,8,9,.35),rgba(5,8,9,.72) 61%,rgba(5,8,9,.9)),url("../site/member-access-background-v1.jpg");background-position:70% 48%;animation-name:method-cinematic-camera-mobile;transform-origin:72% 48%}@keyframes method-cinematic-camera-mobile{0%{transform:translate3d(-1%,-.6%,0) scale(1.09);background-position:70% 46%}50%{transform:translate3d(1.2%,-1.2%,0) scale(1.13);background-position:75% 50%}100%{transform:translate3d(-.2%,1%,0) scale(1.1);background-position:72% 54%}}}
@media(prefers-reduced-motion:reduce){.method-cinematic-bg::before{animation:none!important;transform:none!important;background-position:68% 50%!important}}

/* Method overview reuses the shared photo-wall system with a slow horizontal axis. */
:is(.private-style-page,.booking-route-page[data-booking-menu="method"]){overflow-x:clip;background:#050505}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg::before{content:none}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg::after{background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.3) 31%,rgba(0,0,0,.5) 70%,rgba(0,0,0,.74))}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .home-wall-stage{inset:-8vh -12vw;display:grid;grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(0,1fr));filter:grayscale(1) contrast(1.08) brightness(.78)}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .home-wall-column{min-height:0}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .home-wall-track{width:max-content;height:100%;display:flex;flex-direction:row;will-change:transform;animation:method-wall-left 108s linear infinite}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .home-wall-column:nth-child(2) .home-wall-track{transform:translateX(-50%);animation-name:method-wall-right;animation-duration:122s}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .home-wall-column:nth-child(3) .home-wall-track{animation-duration:116s}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .home-wall-track img{width:clamp(22rem,30vw,36rem);height:100%;min-height:0;flex:none;object-fit:cover;object-position:center 28%}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .private-style-wall-column--wardrobe .home-wall-track img,:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .private-style-wall-column--mixed .home-wall-track img[data-wall-kind="wardrobe"]{object-position:center}@keyframes method-wall-left{to{transform:translateX(-50%)}}@keyframes method-wall-right{to{transform:translateX(0)}}
@media(max-width:420px){:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .home-wall-stage{inset:-6vh -42vw;grid-template-rows:repeat(3,minmax(0,1fr))}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .home-wall-track img{width:78vw;object-position:center 24%}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .private-style-wall-column--mixed .home-wall-track img[data-wall-kind="luke"]{object-position:center 18%}}
@media(prefers-reduced-motion:reduce){:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .home-wall-track{animation:none!important;transform:none!important}:is(.private-style-page,.booking-route-page[data-booking-menu="method"]) .method-cinematic-bg .home-wall-column:nth-child(2) .home-wall-track{transform:translateX(-50%)!important}}

/* Local-only editorial membership map: static black glass, shared unLTD typography. */
.membership-page { overflow-x: clip; background: #090909; }
.membership-page .site { position: relative; z-index: 1; background: transparent; }
.membership-static-bg { position: fixed; z-index: 0; inset: 0; background-image: linear-gradient(180deg,rgba(9,9,9,.58),rgba(9,9,9,.9) 58%,#090909),linear-gradient(90deg,rgba(9,9,9,.88),rgba(9,9,9,.42) 54%,rgba(9,9,9,.88)),url("../site/member-access-background-v1.jpg"); background-repeat: no-repeat; background-size: cover; background-position: 68% 50%; }
.membership-page .membership-hero { min-height: 70svh; padding: 8rem 1rem 5rem; place-items: end center; }
.membership-page .makeup-wall-hero__copy { width: min(94%,66rem); text-shadow: 0 2px 18px #000; }
.membership-page .makeup-wall-hero__eyebrow { color: #d6c7aa; font-family: Poppins,"Century Gothic",Helvetica,sans-serif; }
.membership-page .makeup-wall-hero h1 { max-width: 64rem; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(4rem,9vw,8rem); font-weight: 400; letter-spacing: -.06em; line-height: .84; }
.membership-page .makeup-wall-hero .lede { max-width: 48rem; color: #f4efe6; }

.membership-program-index { width: min(92%,74rem); margin: 1px auto clamp(3rem,6vw,5rem); position: relative; z-index: 2; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; border: 1px solid rgba(244,239,230,.24); background: rgba(244,239,230,.2); }
.membership-program-index a { min-height: 15rem; padding: clamp(1.35rem,3vw,2.5rem); display: flex; flex-direction: column; justify-content: flex-end; color: #f4efe6; background: rgba(9,9,9,.9); transition: background .2s,border-color .2s; }
.membership-program-index a:hover,.membership-program-index a:focus-visible { background: rgba(28,27,25,.94); outline: 1px solid #f4efe6; outline-offset: -1px; }
.membership-program-index span,.membership-section-head > p,.membership-private-path > header > p { margin: 0 0 .7rem; color: #d6c7aa; font-family: Poppins,"Century Gothic",Helvetica,sans-serif; font-size: .6rem; font-weight: 300; letter-spacing: .2em; text-transform: uppercase; }
.membership-program-index strong { max-width: 13ch; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2rem,4.5vw,3.8rem); font-weight: 400; letter-spacing: -.045em; line-height: .95; }
.membership-program-index small { max-width: 38rem; margin-top: 1rem; color: #b8b2aa; font-size: .7rem; line-height: 1.7; }
.membership-program-index > p { grid-column: 1/-1; margin: 0; padding: .8rem 1rem; color: #b8b2aa; background: rgba(9,9,9,.95); font-size: .62rem; line-height: 1.6; text-align: center; }

.membership-page .membership-options,.membership-page .membership-private-path { width: min(92%,74rem); margin: 0 auto clamp(4rem,8vw,7rem); padding: clamp(1.25rem,4vw,3rem); position: relative; z-index: 2; border: 1px solid rgba(244,239,230,.28); color: #f4efe6; background: rgba(9,9,9,.9); box-shadow: 0 2rem 5rem rgba(0,0,0,.3); }
.membership-page .membership-section-head,.membership-page .membership-private-path > header { max-width: 58rem; margin: 0 auto clamp(2rem,4vw,3.5rem); text-align: left; }
.membership-page .membership-section-head h2,.membership-page .membership-private-path h2 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2.8rem,6.5vw,6rem); font-weight: 400; letter-spacing: -.055em; line-height: .9; }
.membership-page .membership-section-head > span,.membership-page .membership-private-path > header > span { max-width: 52rem; margin: 1.15rem 0 0; display: block; color: #b8b2aa; font-size: .76rem; line-height: 1.85; }
.membership-program-links { margin-top: 1.25rem; display: flex; flex-wrap: wrap; gap: .6rem; }
.membership-program-links a,.membership-page .membership-private-tiers a { min-height: 44px; padding: .65rem .9rem; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(244,239,230,.45); color: #f4efe6; background: transparent; font-size: .58rem; letter-spacing: .13em; text-decoration: none; text-transform: uppercase; }
.membership-program-links a:hover,.membership-program-links a:focus-visible,.membership-page .membership-private-tiers a:hover,.membership-page .membership-private-tiers a:focus-visible { color: #090909; background: #f4efe6; border-color: #f4efe6; outline: 2px solid #f4efe6; outline-offset: 3px; }

.membership-page .membership-tier-grid { display: grid; grid-template-columns: 1fr; gap: 1px; border: 1px solid rgba(244,239,230,.2); background: rgba(244,239,230,.2); }
.membership-page .membership-tier { min-width: 0; padding: 1.25rem; display: grid; grid-template-columns: minmax(9rem,.65fr) minmax(12rem,1fr) minmax(17rem,1.3fr) minmax(9.5rem,.55fr); gap: 1.25rem; align-items: start; border: 0; color: #f4efe6; background: rgba(9,9,9,.96); box-shadow: none; }
.membership-page .membership-tier h3 { min-height: 0; margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.45rem,2.6vw,2.1rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.02; }
.membership-page .membership-tier > .membership-tier__summary { margin: 0; color: #b8b2aa; font-size: .65rem; line-height: 1.65; }
.membership-page .membership-tier dl { margin: 0; }
.membership-page .membership-tier dl > div { padding: .45rem 0; border-top: 1px solid rgba(244,239,230,.14); }
.membership-page .membership-tier dl > div:first-child { padding-top: 0; border-top: 0; }
.membership-page .membership-tier dt,.membership-page .membership-tier dd { color: #b8b2aa; font-size: .58rem; }
.membership-page .membership-tier dd { color: #f4efe6; }
.membership-page .membership-tier__cta { min-height: 44px; margin: 0; align-self: center; border: 1px solid rgba(244,239,230,.5); color: #f4efe6; background: transparent; box-shadow: none; }
.membership-page .membership-tier__cta:hover,.membership-page .membership-tier__cta:focus-visible { color: #090909; background: #f4efe6; border-color: #f4efe6; }
.membership-page .membership-stars-note,.membership-page .membership-paid-note { color: #b8b2aa; }
.membership-page .membership-paid-note { padding: 1rem; border: 1px solid rgba(244,239,230,.2); background: rgba(255,255,255,.02); }
.membership-page .membership-paid-note strong { color: #d6c7aa; }

.membership-page .membership-private-path { border-color: rgba(214,199,170,.45); background: rgba(9,9,9,.92); }
.membership-page .membership-private-tiers { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; border: 1px solid rgba(244,239,230,.2); background: rgba(244,239,230,.2); }
.membership-page .membership-private-tiers article { min-width: 0; padding: clamp(1.1rem,2.5vw,1.7rem); border: 0; background: rgba(9,9,9,.96); }
.membership-page .membership-private-tiers article:nth-child(2) { background: rgba(214,199,170,.055); }
.membership-page .membership-private-tiers h3 { margin: 0; color: #fff; font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.5rem,3vw,2.25rem); font-weight: 400; letter-spacing: -.04em; }
.membership-page .membership-private-tiers .membership-tier-kicker { margin: 0 0 .6rem; color: #d6c7aa; font: 300 .52rem/1.4 Poppins,"Century Gothic",Helvetica,sans-serif; letter-spacing: .17em; text-transform: uppercase; }
.membership-page .membership-private-tiers article > p:not(.membership-tier-kicker) { margin: .75rem 0 0; color: #d6c7aa; font: 400 1.15rem Georgia,"Times New Roman",serif; }
.membership-page .membership-private-tiers article > p span { color: #807b74; font: 300 .62rem Poppins,"Century Gothic",Helvetica,sans-serif; }
.membership-page .membership-private-tiers ul { min-height: 10rem; padding-left: 1rem; color: #b8b2aa; font-size: .68rem; line-height: 1.8; }
.membership-page .membership-private-note { color: #807b74; }
.membership-page .foot { position: relative; z-index: 2; }

@media(max-width:860px){
  .membership-page .membership-tier { grid-template-columns: minmax(9rem,.7fr) 1fr; }
  .membership-page .membership-tier dl,.membership-page .membership-tier__cta { grid-column: span 1; }
}
@media(max-width:780px){
  .membership-program-index,.membership-page .membership-private-tiers { grid-template-columns: 1fr; }
  .membership-program-index > p { grid-column: 1; }
  .membership-program-index a { min-height: 10rem; }
  .membership-page .membership-private-tiers ul { min-height: 0; }
}
@media(max-width:520px){
  .membership-static-bg { background-position: 70% 50%; }
  .membership-page .membership-hero { min-height: 72svh; padding: 7rem .65rem 3rem; }
  .membership-page .makeup-wall-hero h1 { font-size: clamp(3.25rem,15vw,4.8rem); }
  .membership-program-index,.membership-page .membership-options,.membership-page .membership-private-path { width: calc(100% - 1.25rem); }
  .membership-program-index a,.membership-page .membership-options,.membership-page .membership-private-path { padding: 1rem; }
  .membership-program-index strong { font-size: 2.15rem; }
  .membership-page .membership-section-head h2,.membership-page .membership-private-path h2 { font-size: clamp(2.55rem,13vw,3.75rem); }
  .membership-page .membership-tier { padding: 1rem; grid-template-columns: 1fr; gap: .8rem; }
  .membership-page .membership-tier dl,.membership-page .membership-tier__cta { grid-column: 1; }
  .membership-page .membership-tier__cta { width: 100%; }
  .membership-program-links { display: grid; }
}
@media(max-width:420px){.membership-page .site-nav{gap:.18rem!important}.membership-page .site-nav>.nav-drop>button{padding-inline:.2rem!important;font-size:.48rem!important;letter-spacing:.015em!important}.membership-page .site-nav>a[data-shop]{font-size:.5rem!important;letter-spacing:.03em!important}}
@media(prefers-reduced-motion:reduce){.membership-page *{scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Local-only salon membership presentation: the shared moving portrait wall, with no second program. */
.membership-page{overflow-x:clip;background:#050505}
.membership-page .site{position:relative;z-index:1;background:transparent}
.membership-page .membership-motion-bg::after{background:linear-gradient(180deg,rgba(0,0,0,.62),rgba(0,0,0,.42) 30%,rgba(0,0,0,.66) 72%,rgba(0,0,0,.88))}
.membership-page .membership-motion-bg .home-wall-stage{filter:grayscale(1) contrast(1.1) brightness(.72)}
.membership-page .membership-hero{min-height:0;padding:calc(var(--service-copy-top) - var(--service-copy-lift)) 1rem .875rem;place-items:start center}
.membership-page .makeup-wall-hero__copy{width:min(94%,70rem);text-align:center;text-shadow:0 2px 18px #000}
.membership-page .makeup-wall-hero__eyebrow{margin:0 0 .75rem;color:#d4cfca;font-size:.65rem;letter-spacing:.23em;text-transform:uppercase}
.membership-page .makeup-wall-hero h1{max-width:12ch;margin:0 auto;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:clamp(4rem,9vw,8rem);font-weight:400;letter-spacing:-.06em;line-height:.86;text-wrap:balance}
.membership-page .makeup-wall-hero .lede{max-width:48rem;margin:1.35rem auto 0;color:#f4efe6;font:300 clamp(.78rem,1.25vw,1rem)/1.8 Poppins,"Century Gothic",Helvetica,sans-serif}
.membership-page .membership-options{width:min(92%,74rem);margin:0 auto clamp(4rem,8vw,7rem);padding:.2rem 0 clamp(1rem,2vw,1.5rem);position:relative;z-index:2;border:0;color:#f4efe6;background:transparent;box-shadow:none}
.membership-page .membership-section-head{max-width:62rem;margin:0 auto clamp(2rem,4vw,3.5rem);text-align:center}
.membership-page .membership-section-head>p{margin:0 0 .7rem;color:#d6c7aa;font:300 .6rem/1.4 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.membership-page .membership-section-head h2{margin:0;color:#fff;font-family:Poppins,"Century Gothic",Helvetica,sans-serif;font-size:clamp(2.2rem,5.4vw,5rem);font-weight:200;letter-spacing:-.055em;line-height:.96}
.membership-page .membership-section-head>span{max-width:50rem;margin:1.15rem auto 0;display:block;color:#cbc5bc;font:300 .76rem/1.85 Poppins,"Century Gothic",Helvetica,sans-serif}
.membership-page .membership-program-links{margin-top:1.35rem;justify-content:center}
.membership-page .membership-program-links a{font-family:Poppins,"Century Gothic",Helvetica,sans-serif;font-weight:300}
.membership-page .membership-tier-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;border:0;background:transparent}
.membership-page .membership-tier{min-width:0;min-height:100%;padding:clamp(1.15rem,2.2vw,1.65rem);display:flex;flex-direction:column;align-items:center;border:1px solid rgba(244,239,230,.36);color:#f4efe6;background:rgba(8,8,8,.34);box-shadow:0 .85rem 2.5rem rgba(0,0,0,.16);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:center}
.membership-page .membership-tier h3{min-height:2.4em;margin:0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:Poppins,"Century Gothic",Helvetica,sans-serif;font-size:clamp(1rem,1.8vw,1.3rem);font-weight:300;letter-spacing:0;line-height:1.2}
.membership-page .membership-tier>.membership-tier__summary{margin:.8rem 0 0;color:#d0cac1;font:300 .64rem/1.65 Poppins,"Century Gothic",Helvetica,sans-serif;text-transform:none}
.membership-page .membership-tier dl{width:100%;margin:1rem 0}
.membership-page .membership-tier dl>div{padding:.62rem 0;display:grid;grid-template-columns:1fr;gap:.2rem;border-top:1px solid rgba(244,239,230,.16)}
.membership-page .membership-tier dl>div:first-child{padding-top:0;border-top:0}
.membership-page .membership-tier dt,.membership-page .membership-tier dd{margin:0;font:300 .56rem/1.45 Poppins,"Century Gothic",Helvetica,sans-serif}
.membership-page .membership-tier dt{color:#aaa49c}.membership-page .membership-tier dd{color:#f4efe6;text-align:center}
.membership-page .membership-tier__cta{width:min(100%,15rem);min-height:44px;margin:auto auto 0;align-self:center;font:300 .54rem/1.35 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.membership-page .membership-stars-note,.membership-page .membership-paid-note{max-width:64rem;color:#aaa39a;font:300 .62rem/1.75 Poppins,"Century Gothic",Helvetica,sans-serif}
.membership-page .membership-stars-note{margin:1.25rem 0 0}
.membership-page .membership-paid-note{margin:1rem 0 0;padding:1rem;border:1px solid rgba(244,239,230,.2);background:rgba(9,9,9,.62);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.membership-page .membership-paid-note strong{color:#d6c7aa;font-weight:300}
.membership-page .foot{position:relative;z-index:2}
@media(max-width:920px){.membership-page .membership-tier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.membership-page .membership-hero{min-height:0;padding:calc(var(--service-copy-top) - var(--service-copy-lift)) .65rem .875rem}.membership-page .makeup-wall-hero h1{font-size:clamp(3rem,15vw,4.35rem)}.membership-page .membership-options{width:calc(100% - 1.25rem);padding:.2rem 0 1rem}.membership-page .membership-tier-grid{grid-template-columns:1fr}.membership-page .membership-tier h3{min-height:0}.membership-page .membership-tier__cta{width:min(100%,16rem);font-size:.54rem;letter-spacing:.12em}.membership-page .membership-motion-bg .home-wall-stage{inset:-12vh -24vw}}
@media(prefers-reduced-motion:reduce){.membership-page .membership-motion-bg .home-wall-track{animation:none!important;transform:none!important}}

/* Method navigation keeps its glow without changing text geometry on hover or focus. */
.private-style-page .site-nav a,.private-style-page .site-nav button,.private-style-page .site-nav a:hover,.private-style-page .site-nav a:focus-visible,.private-style-page .site-nav button:hover,.private-style-page .site-nav button:focus-visible{letter-spacing:.14em;transform:none}
.private-style-page .site-nav a:focus-visible,.private-style-page .site-nav button:focus-visible{outline:1px solid rgba(255,255,255,.78);outline-offset:2px}

/* Local-only Method map: shared cards, shared CTAs, concise child offers. */
.method-film{margin:1.1rem auto 0;display:flex;justify-content:center;color:#f4efe6}.method-film-trigger{min-height:2.8rem;padding:.1rem .55rem .1rem .15rem;display:inline-flex;align-items:center;gap:.55rem;border:0;color:#eee9e1;background:transparent;font:300 .5rem/1.2 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:.14em;text-transform:uppercase}.method-film-trigger__play{width:2.55rem;height:2.55rem;position:relative;isolation:isolate;overflow:hidden;display:grid;place-items:center;border:1px solid rgba(255,255,255,.42);border-radius:50%;background:rgba(12,12,12,.38);box-shadow:0 .5rem 1.5rem rgba(0,0,0,.2),0 0 .7rem rgba(214,199,170,.14);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .18s,background .18s,box-shadow .18s}.method-film-trigger__play::before,.method-film-trigger__play::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}.method-film-trigger__play::before{z-index:-2;background:url("../site/method-film/unltd-method-website-poster-1080x1920.jpg") 50% 43%/cover no-repeat;filter:grayscale(.18) contrast(1.05);opacity:.68}.method-film-trigger__play::after{z-index:-1;background:linear-gradient(rgba(4,4,4,.24),rgba(4,4,4,.48))}.method-film-trigger__play svg{width:.92rem;height:.92rem;position:relative;z-index:1;fill:rgba(8,8,8,.22);stroke:#fff;stroke-width:1.65;stroke-linejoin:round;filter:drop-shadow(0 1px 3px #000) drop-shadow(0 0 4px rgba(255,255,255,.34))}.method-film-trigger:hover,.method-film-trigger:focus-visible{letter-spacing:.14em;box-shadow:none}.method-film-trigger:hover .method-film-trigger__play,.method-film-trigger:focus-visible .method-film-trigger__play{border-color:rgba(255,255,255,.82);background:rgba(12,12,12,.42);box-shadow:0 .5rem 1.5rem rgba(0,0,0,.2),0 0 1rem rgba(214,199,170,.3)}.method-film-trigger:focus-visible{outline:1px solid rgba(255,255,255,.84);outline-offset:3px}.method-film-dialog{width:min(80vw,38.25svh,45rem);max-width:45rem;max-height:none;margin:auto;padding:0;overflow:visible;border:0;color:#f4efe6;background:transparent;box-shadow:none}.method-film-dialog::backdrop{background:rgba(0,0,0,.4);-webkit-backdrop-filter:none;backdrop-filter:none}.method-film-dialog__surface{width:100%;position:relative}.method-film-dialog__close{width:44px;min-width:44px;height:44px;min-height:44px;margin:0;padding:0;position:absolute;z-index:4;top:-2.45rem;right:-.55rem;display:grid;place-items:center;border:0;color:rgba(255,255,255,.9);background:transparent;font:200 1.25rem/1 Poppins,"Century Gothic",Helvetica,sans-serif;text-shadow:0 1px 5px #000}.method-film-dialog__close:hover{color:#fff;background:transparent;box-shadow:none}.method-film-dialog__close:focus-visible{color:#fff;background:transparent;outline:2px solid #fff;outline-offset:-8px;box-shadow:none}.method-film__stage{width:100%;height:auto;aspect-ratio:9/16;min-height:0;margin:0 auto;position:relative;overflow:hidden;border:0;background:transparent;box-shadow:0 .8rem 2.2rem rgba(0,0,0,.32)}.method-film__video{width:100%;height:100%;display:block;background:#090909;object-fit:contain}.method-film-open{overflow:hidden}
.home-page .about>.method-film{margin:.15rem auto .85rem}.method-film-dialog{animation:none}.method-film-dialog__surface{transform-origin:50% 50%;will-change:transform,clip-path}.method-film-dialog__morph-mark{width:var(--method-morph-mark-size,100%);aspect-ratio:1;position:absolute;z-index:3;left:50%;top:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.58);border-radius:50%;color:#fff;opacity:0;pointer-events:none;transform:translate(-50%,-50%);box-shadow:0 0 1rem rgba(214,199,170,.25)}.method-film-dialog__morph-mark svg{width:var(--method-morph-glyph-size,1rem);height:var(--method-morph-glyph-size,1rem);fill:rgba(8,8,8,.2);stroke:currentColor;stroke-width:1.65;stroke-linejoin:round;filter:drop-shadow(0 1px 3px #000) drop-shadow(0 0 4px rgba(255,255,255,.34))}
.method-map{width:min(92%,74rem);margin:0 auto clamp(4rem,8vw,7rem);position:relative;z-index:2;display:grid;gap:clamp(2.25rem,5vw,4rem);color:#f4efe6}
.method-family{min-width:0;padding:0;border:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.method-family .private-style-foundations__grid{margin:0;display:grid;grid-template-columns:1fr;gap:.45rem;border:0;background:transparent}
.method-offer{min-width:0;padding:.15rem .8rem;scroll-margin-top:5rem}.method-offer[open]{padding-bottom:.75rem;border-color:#fff;background:rgba(8,8,8,.38)}.makeup-page .method-offer--combined{width:3.5rem;height:0;min-height:0;margin:0 auto;padding:0;position:relative;z-index:3;justify-self:center;overflow:visible;border:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.makeup-page .method-offer--combined:not([open]):hover,.makeup-page .method-offer--combined:not([open]):focus-within{border:0;background:transparent;box-shadow:none}.method-offer--combined:not([open])+.method-offer{margin-top:-.45rem}.makeup-page .method-offer--combined[open]{width:88%;height:auto;min-height:0;margin:.45rem auto;padding:.75rem 1rem 1rem;border:1px solid #fff;background:rgba(8,8,8,.38);box-shadow:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.method-offer--combined>summary{width:3.5rem;min-height:3.5rem;margin:0 auto;padding:0;justify-content:center;border-radius:50%;text-align:center}.method-offer--combined>summary::before{content:"&";width:3rem;height:3rem;flex:none;display:grid;place-items:center;color:#f4efe6;font:300 2rem/1 Poppins,"Century Gothic",Helvetica,sans-serif;text-shadow:0 .18rem .65rem rgba(0,0,0,.92),0 0 .85rem rgba(214,199,170,.38);pointer-events:none}.method-offer--combined:not([open])>summary{position:absolute;top:calc(-.45rem / 2);left:50%;transform:translate(-50%,-50%)}.method-offer--combined:not([open])>summary .service-card-disclosure__title{display:none}.method-offer--combined[open]>summary{width:100%;min-height:2.75rem;position:static;transform:none;border-radius:0}.method-offer--combined[open]>summary .service-card-disclosure__title{margin-left:.65rem;display:inline;color:#f4efe6;font-size:clamp(.88rem,1.4vw,1.05rem);letter-spacing:.02em}.method-offer--combined .service-card-disclosure__content{max-width:42rem;margin:0 auto;text-align:center}.method-offer--combined .membership-tier__cta{width:min(100%,20rem);margin-inline:auto}
.method-offer--featured{grid-column:1/-1}.method-offer>summary{min-height:2.75rem;align-items:center;justify-content:flex-start;gap:0}.method-offer[open]>summary{align-items:center}.method-offer>summary:focus-visible{outline:2px solid #fff;outline-offset:3px}.method-offer>summary .service-card-disclosure__toggle{display:none}.method-offer>summary .service-card-disclosure__title{font-family:Poppins,"Century Gothic",Helvetica,sans-serif;font-size:clamp(.95rem,1.7vw,1.18rem);font-weight:300;letter-spacing:0;line-height:1.15;text-transform:none}
.method-offer--combined:not([open])>summary{border:1px solid rgba(255,255,255,.38);border-radius:50%;background:rgba(8,8,8,.38);box-shadow:0 .5rem 1.4rem rgba(0,0,0,.3);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:border-color .18s,background .18s,box-shadow .18s}.method-offer--combined>summary::before{transition:color .18s,text-shadow .18s}.method-offer--combined:not([open])>summary:hover,.method-offer--combined:not([open])>summary:focus-visible{border-color:rgba(255,255,255,.78);background:rgba(8,8,8,.46);box-shadow:0 .5rem 1.4rem rgba(0,0,0,.3),0 0 1rem rgba(214,199,170,.34)}.method-offer--combined:not([open])>summary:hover::before,.method-offer--combined:not([open])>summary:focus-visible::before{color:#fff;text-shadow:0 .18rem .65rem rgba(0,0,0,.92),0 0 .65rem rgba(255,255,255,.82),0 0 1.25rem rgba(214,199,170,.62)}
.makeup-page .method-offer--combined[open]{position:relative;isolation:isolate;border-color:transparent;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.makeup-page .method-offer--combined[open]::before,.makeup-page .method-offer--combined[open]::after{position:absolute;content:"";pointer-events:none}.makeup-page .method-offer--combined[open]::before{z-index:2;top:-.45rem;left:50%;width:1px;height:3.5rem;background:rgba(255,255,255,.88);transform:translateX(-50%) scaleY(0);transform-origin:top}.makeup-page .method-offer--combined[open]::after{z-index:0;inset:0;border:1px solid #fff;background:rgba(8,8,8,.38);box-shadow:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transform:scaleX(1);transform-origin:center}.makeup-page .method-offer--combined[open]>*{position:relative;z-index:1}.makeup-page .method-offer--combined[open].is-opening,.makeup-page .method-offer--combined[open].is-closing{max-height:30rem;overflow:clip;will-change:max-height}.makeup-page .method-offer--combined[open].is-opening{animation:method-combo-height .56s cubic-bezier(.22,.78,.22,1) both}.makeup-page .method-offer--combined[open].is-closing{animation:method-combo-height .56s cubic-bezier(.22,.78,.22,1) reverse both;pointer-events:none}.makeup-page .method-offer--combined[open].is-opening::before{animation:method-combo-line .56s ease both}.makeup-page .method-offer--combined[open].is-closing::before{animation:method-combo-line .56s ease reverse both}.makeup-page .method-offer--combined[open].is-opening::after{animation:method-combo-surface .56s cubic-bezier(.22,.78,.22,1) both}.makeup-page .method-offer--combined[open].is-closing::after{animation:method-combo-surface .56s cubic-bezier(.22,.78,.22,1) reverse both}.makeup-page .method-offer--combined[open].is-opening>*,.makeup-page .method-offer--combined[open].is-closing>*{animation:method-combo-content .56s ease both}.makeup-page .method-offer--combined[open].is-closing>*{animation-direction:reverse}@keyframes method-combo-height{0%{max-height:3.5rem}36%{max-height:8rem}100%{max-height:30rem}}@keyframes method-combo-line{0%{opacity:1;transform:translateX(-50%) scaleY(0)}36%{opacity:1;transform:translateX(-50%) scaleY(1)}52%,100%{opacity:0;transform:translateX(-50%) scaleY(1)}}@keyframes method-combo-surface{0%,36%{opacity:0;transform:scaleX(0)}42%{opacity:1;transform:scaleX(.012)}82%,100%{opacity:1;transform:scaleX(1)}}@keyframes method-combo-content{0%,74%{opacity:0;visibility:hidden}100%{opacity:1;visibility:visible}}
.method-card__summary{margin:.2rem 0 .35rem;color:#f2f0ee;font-size:.84rem;line-height:1.45}.method-card__actions{margin-top:1rem;justify-content:flex-start}.method-offer-scope{margin:.2rem 0 .7rem;color:#b8b2aa;font-size:.56rem;line-height:1.55}.method-offer-scope p{margin:.55rem 0}.method-offer-scope .private-style-foundations__boundary{display:block;margin:.4rem 0}
.method-gift-card{min-width:0;padding:clamp(1.1rem,3vw,2.4rem);scroll-margin-top:5rem;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(12rem,.65fr);gap:clamp(1rem,4vw,3rem);align-items:end;border:1px solid rgba(255,255,255,.22);color:#f4efe6;background:rgba(8,8,8,.22);box-shadow:0 .85rem 2.3rem rgba(0,0,0,.18)}.method-gift-card p{margin:0 0 .55rem;color:#d6c7aa;font:300 .56rem/1.4 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:.2em;text-transform:uppercase}.method-gift-card h2{max-width:17ch;margin:0;color:#fff;font:400 clamp(2rem,4.6vw,4rem)/.95 Georgia,"Times New Roman",serif;letter-spacing:-.05em}.method-gift-card span{max-width:40rem;margin-top:.8rem;display:block;color:#b8b2aa;font-size:.65rem;line-height:1.7}.method-gift-card .method-card__actions{margin:0}
.method-family--ongoing{border-color:rgba(255,255,255,.22)}.method-family .private-style-membership{width:100%;margin:0;padding:0;border:0;background:transparent;box-shadow:none}.method-family .private-style-membership::before{content:none}.method-family .private-style-membership__intro{max-width:62rem}.method-family .private-style-membership__intro h2{max-width:18ch;font-size:clamp(2.7rem,5.2vw,4.8rem);line-height:.92}.method-family .private-style-membership__tiers{margin-top:.9rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;align-items:start;background:transparent}.method-family .private-style-tier{min-height:0;padding:0;display:block;border:1px solid rgba(255,255,255,.22);color:#f4efe6;background:rgba(8,8,8,.26);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;transition:background .2s,border-color .2s}.method-family .private-style-tier:hover,.method-family .private-style-tier:focus-within,.method-family .private-style-tier[open]{border-color:rgba(255,255,255,.72);background:rgba(8,8,8,.42)}.method-family .private-style-tier--priority{border-color:rgba(255,255,255,.28);background:rgba(8,8,8,.26)}.method-family .private-style-tier--concierge{grid-column:1/-1}.method-family .private-style-tier>summary{min-height:7.25rem;padding:.9rem;display:flex;align-items:center;justify-content:space-between;gap:.9rem;color:#f4efe6;list-style:none;cursor:pointer}.method-family .private-style-tier>summary::-webkit-details-marker{display:none}.method-family .private-style-tier>summary:focus-visible{outline:2px solid #fff;outline-offset:-4px}.method-family .private-style-tier>summary>div{min-width:0}.method-family .private-style-tier h3{margin:0;font-size:clamp(1.25rem,2vw,1.65rem)}.method-family .private-style-tier>summary p{margin:.5rem 0 0;color:#fff;font:400 1.25rem/1 Georgia,"Times New Roman",serif}.method-family .private-style-tier>summary p span{color:#aaa49e;font:300 .5rem/1.4 Poppins,sans-serif;letter-spacing:.1em;text-transform:uppercase}.method-family .private-style-tier__content{padding:0 .9rem .9rem;border-top:1px solid rgba(255,255,255,.14)}.method-family .private-style-tier__inheritance{margin:.75rem 0 0;color:#d6c7aa;font-size:.56rem;line-height:1.45}.method-family .private-style-tier--concierge ul{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;row-gap:.52rem;column-gap:1rem;align-content:start;align-items:start}.method-family .private-style-tier--concierge li{margin:0;padding-left:.82rem;align-self:start;line-height:1.45}.method-family .private-style-tier--concierge li::before{top:.7em}.method-family .private-style-tier ul{margin:.75rem 0 .8rem;gap:.38rem}.method-family .private-style-tier li{font-size:.56rem;line-height:1.4}.method-family .private-style-tier__terms{margin-top:.8rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.16);text-align:center}.method-family .private-style-tier__terms p{margin:0;color:#fff;font:400 1rem/1.3 Georgia,"Times New Roman",serif}.method-family .private-style-tier__terms span{max-width:48rem;margin:.5rem auto 0;display:block;color:#aaa49e;font-size:.51rem;line-height:1.55}.private-style-membership__preview-note{margin:.65rem 0 0;color:#b5afa8;font-size:.52rem;line-height:1.45;text-align:center}
@media(max-width:780px){.method-family .private-style-membership__tiers{grid-template-columns:repeat(2,minmax(0,1fr))}.method-family .private-style-membership__tiers>.private-style-tier--concierge{grid-column:1/-1}.method-family .private-style-membership__tiers ul{min-height:0}}
@media(max-width:420px){.private-style-hero .method-film{margin-top:.9rem}.method-film-trigger{min-height:2.55rem;font-size:.46rem}.method-film-trigger__play{width:2.3rem;height:2.3rem}.method-film-dialog{width:min(86vw,38.25svh,21rem)}.method-map{width:calc(100% - 1.25rem);gap:2rem}.method-family .private-style-foundations__grid{grid-template-columns:1fr}.method-offer{grid-column:1;min-height:0}.method-gift-card{padding:.8rem;grid-template-columns:1fr;align-items:start}.method-gift-card h2{font-size:2.25rem}.method-gift-card .method-card__actions{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.method-film-dialog{animation:none!important}.method-film-trigger__play{transition:none!important}.makeup-page .method-offer--combined[open].is-opening,.makeup-page .method-offer--combined[open].is-closing,.makeup-page .method-offer--combined[open].is-opening::before,.makeup-page .method-offer--combined[open].is-closing::before,.makeup-page .method-offer--combined[open].is-opening::after,.makeup-page .method-offer--combined[open].is-closing::after,.makeup-page .method-offer--combined[open].is-opening>*,.makeup-page .method-offer--combined[open].is-closing>*{animation:none!important;max-height:none!important;opacity:1!important;visibility:visible!important;transform:none!important;transition-duration:.01ms!important}.makeup-page .method-offer--combined[open]::before{display:none}}

/* Shared header: stable primary slots plus one reserved search/calendar utility zone. */
@media(width>=800px){
  .page-bar .site-nav:not(.site-nav--member-profile){max-width:100%;margin:0 auto;grid-auto-flow:unset;grid-template-columns:13.5rem repeat(3,minmax(5.5rem,1fr)) minmax(11.5rem,1.35fr);column-gap:clamp(.45rem,1.1vw,1rem)}
  .page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__utilities{min-width:11.5rem}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile){grid-template-columns:13.5rem repeat(3,minmax(5.5rem,1fr)) minmax(22.5rem,1.85fr)}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile)>.site-nav__utilities{min-width:22.5rem;grid-template-columns:minmax(10.5rem,auto) minmax(8.5rem,1fr) 2.75rem}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile) .site-nav__account-tools{width:auto;min-width:10.5rem;display:grid;grid-template-columns:minmax(4.25rem,1fr) minmax(3.25rem,auto)}
}
.page-bar .site-nav__utilities{position:relative;width:100%;min-width:0;display:grid;grid-template-columns:0 minmax(8.5rem,1fr) 2.75rem;align-items:center;gap:.25rem;justify-self:stretch}
.page-bar .site-nav__utilities .site-search,.page-bar .site-nav__utilities .site-search[data-open=true]{width:100%;height:38px;min-width:0;margin:0;display:block;position:relative;overflow:visible}
.page-bar .site-nav__utilities .site-search__field,.page-bar .site-nav__utilities .site-search[data-open=true] .site-search__field{width:44px;max-width:none;margin:0;position:absolute;top:50%;right:auto;left:50%;justify-content:flex-end;transform:translate(-50%,-50%);transition:width .45s cubic-bezier(.22,1,.36,1)}
.page-bar .site-nav__utilities .site-search[data-open=true] .site-search__field{width:min(8.5rem,100%)}
.page-bar .site-nav__utilities .site-search__mark{margin-left:auto}
.page-bar .site-nav__utilities .site-search__list{left:0;right:0}
.page-bar .site-search__list{border:1px solid rgba(244,239,230,.34);border-radius:.5rem;color:#f4efe6;background:rgba(8,8,8,.42);box-shadow:0 .85rem 2.2rem rgba(0,0,0,.3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow:hidden}
.page-bar .site-search__list a,.page-bar .site-search__list p{color:#f4efe6;background:transparent;transition:color .18s,background .18s,text-shadow .18s}
.page-bar .site-search__list a:hover,.page-bar .site-search__list a:focus-visible,.page-bar .site-search__list a[data-on=true]{color:#fff;background:rgba(255,255,255,.1);outline:0;text-shadow:0 0 .55rem rgba(255,255,255,.44)}
.page-bar .member-signup-nav{min-width:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.68rem;letter-spacing:.12em;line-height:1;text-decoration:none;text-transform:uppercase;white-space:nowrap}.page-bar .member-signup-nav[hidden]{display:none!important}.page-bar .site-nav__account-tools .member-signup-nav{width:auto;height:1.75rem;padding-inline:.22rem;border-radius:.25rem;transition:text-shadow .2s ease}.page-bar .site-nav__account-tools .member-signup-nav:hover,.page-bar .site-nav__account-tools .member-signup-nav:focus-visible{background:transparent;box-shadow:none;outline:0;text-shadow:0 0 .08rem #fff,0 0 .22rem #fff,0 0 .58rem rgba(255,255,255,.96),0 0 1.1rem rgba(255,255,255,.76)}
.page-bar .site-nav__utilities .site-nav__account-tools{width:0;min-width:0;display:flex;align-items:center;justify-content:center;gap:.08rem;transform:none}
.page-bar .site-nav__utilities>.appointment-nav-cart{width:2.75rem;min-width:2.75rem}
@media(width<=799px){
  .page-bar .site-nav:not(.site-nav--member-profile){grid-auto-flow:unset;grid-template-columns:minmax(3.6rem,.7fr) minmax(4.2rem,.95fr) minmax(5.35rem,1.15fr) minmax(1.85rem,.42fr) 4.3rem;grid-template-rows:34px;column-gap:.12rem;row-gap:0}
  .page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__utilities{width:4.3rem;grid-column:5;grid-row:1;justify-self:end;grid-template-columns:0 2.1rem 2.1rem;gap:.1rem}
  .page-bar .site-nav__utilities .site-search,.page-bar .site-nav__utilities .site-search[data-open=true]{width:2.1rem;height:34px;display:block!important;flex:none}
  .page-bar .site-nav__utilities .site-search__field{width:34px}
  .page-bar .site-nav__utilities .site-search[data-open=true] .site-search__field{width:calc(100vw - .5rem);height:38px;top:calc(100% + .35rem);right:calc(-2.2rem);left:auto;padding-left:.55rem;border:1px solid rgba(255,255,255,.32);background:rgba(8,8,8,.82);box-shadow:0 .65rem 1.6rem rgba(0,0,0,.32);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:none}
  .page-bar .site-nav__utilities .site-search[data-open=true] .site-search__list{width:calc(100vw - .5rem);top:calc(100% + 2.72rem);right:calc(-2.2rem);left:auto}
  .page-bar .site-nav__utilities .site-nav__account-tools{width:0;min-width:0}
  .page-bar .site-nav__utilities>.appointment-nav-cart{width:2.1rem;min-width:2.1rem}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile){grid-template-columns:3.6rem 3.3rem 4.7rem 1.55rem 9.75rem}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile)>.site-nav__utilities{width:9.75rem;grid-template-columns:minmax(5.35rem,1fr) 2.1rem 2.1rem}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile) .site-nav__account-tools{width:auto;min-width:5.35rem;display:grid;grid-template-columns:minmax(2.4rem,1fr) minmax(2.75rem,auto);gap:.1rem}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile) .member-login-nav{min-width:0;display:flex!important;overflow:visible;white-space:nowrap}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile) .member-login-nav,.page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile) .member-signup-nav{padding-inline:0;font-size:.52rem;letter-spacing:.055em}
  .page-bar .site-nav>.site-nav__wordmark{min-width:0;justify-content:center;overflow:hidden}
  .page-bar .site-nav>.site-nav__wordmark .site-nav__signature{width:2.25rem;height:1.15rem;display:block}
  .page-bar .site-nav>.site-nav__wordmark .site-nav__label{font-size:.43rem;letter-spacing:.03em}
  .page-bar .site-nav:not(.site-nav--member-profile)>.nav-drop{width:100%;min-width:0}
  .page-bar .site-nav:not(.site-nav--member-profile)>.nav-drop>button,.page-bar .site-nav:not(.site-nav--member-profile)>[data-shop]{width:100%;min-width:0;padding-inline:0;justify-content:center;overflow:hidden;font-size:.47rem;letter-spacing:.045em;white-space:nowrap}
}
@media(max-width:420px){.page-bar .site-search{display:block!important}.page-bar .site-nav{gap:0!important}}

/* Search keeps the approved line motion; suggestions remain unframed text. */
.page-bar .site-search__list{padding:.35rem 0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:visible;text-shadow:0 1px .45rem rgba(0,0,0,.96),0 0 .9rem rgba(0,0,0,.82)}
.page-bar .site-search__list a,.page-bar .site-search__list p{background:transparent}
.page-bar .site-search__list a:hover,.page-bar .site-search__list a:focus-visible,.page-bar .site-search__list a[data-on=true]{color:#fff;background:transparent;text-shadow:0 0 .25rem rgba(255,255,255,.9),0 0 .75rem rgba(255,255,255,.58)}
.page-bar .site-search__list a{grid-template-columns:minmax(0,1fr);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.page-bar .site-search__list a strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.page-bar .site-search input{text-shadow:0 1px .4rem rgba(0,0,0,.95)}
@media(width<=799px){.page-bar .site-nav__utilities .site-search[data-open=true] .site-search__field{border:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}}

/* Shared compact-card rhythm: slimmer closed surfaces, unchanged open content and hit targets. */
:root{--unltd-card-closed-min:6rem;--unltd-card-pad-block:.5rem;--unltd-card-gap:.42rem;--unltd-card-hit:2.75rem;--unltd-tier-closed-min:5.5rem}
.home-page .mcard,.extension-page .mcard,.makeup-page .makeup-services .mcard,.edit-band .mcard{padding-top:var(--unltd-card-pad-block);padding-bottom:var(--unltd-card-pad-block)}
.edit-band .mcard{min-height:7rem}
.mcard.appointment-service-link:not([data-expanded="true"]),.reveal-service-card:not([data-expanded="true"]),.disclosure-service-card:not(:has(> .service-card-disclosure[open])){min-height:var(--unltd-card-closed-min)}
.service-card-reveal-trigger,.reveal-service-card>h3,.service-card-disclosure>summary{min-height:var(--unltd-card-hit)}
.hair-family-grid--text details.hair-family:not([open])>summary{min-height:var(--unltd-card-closed-min);padding:.65rem .85rem}
.method-family .private-style-tier:not([open])>summary{min-height:var(--unltd-tier-closed-min);padding:.7rem .85rem;gap:.65rem}
@media(max-width:520px){:root{--unltd-card-closed-min:5.5rem;--unltd-card-pad-block:.45rem;--unltd-card-gap:.38rem;--unltd-tier-closed-min:5.25rem}.hair-family-grid--face .hair-family:not([open])>summary{min-height:var(--unltd-card-closed-min);padding:.6rem .65rem}}

/* Membership cards reuse the lighter approved shared glass surface. */
.membership-page .membership-tier,.membership-page .membership-tier--current{border:1px solid rgba(255,255,255,.35);border-radius:0;background:rgba(8,8,8,.18);box-shadow:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.membership-page .membership-tier:hover,.membership-page .membership-tier:focus-within{border-color:rgba(255,255,255,.62);background:rgba(8,8,8,.24)}.membership-page .membership-tier--current{border-color:rgba(255,255,255,.72)}
.membership-page .membership-tier-grid{align-items:start;gap:.55rem}.membership-page .membership-tier{min-height:0;padding:.72rem .7rem;gap:0}.membership-page .membership-tier h3{min-height:0}.membership-page .membership-tier>.membership-tier__summary{margin:.42rem 0 0;line-height:1.5}.membership-page .membership-tier dl{margin:.5rem 0}.membership-page .membership-tier dl>div{padding:.32rem 0;gap:.12rem}.membership-page .membership-tier__cta{margin:.5rem auto 0}.membership-page .membership-stars-note strong{color:#f4efe6;font-weight:300}
@media(max-width:520px){.membership-page .membership-tier{padding:.75rem .7rem}.membership-page .membership-tier-grid{gap:.5rem}}
.membership-page .membership-tier{padding:.65rem .7rem}.membership-page .membership-tier>.membership-tier__summary{margin:.35rem 0 0}.membership-page .membership-tier dl{margin:var(--unltd-card-gap) 0}.membership-page .membership-tier dl>div{padding:.28rem 0}.membership-page .membership-tier__cta{margin:var(--unltd-card-gap) auto 0}
@media(max-width:520px){.membership-page .membership-tier{padding:.65rem .7rem}}

/* Navigation words remain visually unframed over a faint feathered contrast fade. */
.page-bar .nav-menu{padding:.5rem .4rem .65rem;border:0!important;border-radius:0!important;background:radial-gradient(ellipse 118% 112% at 50% 18%,rgba(0,0,0,.72) 0%,rgba(0,0,0,.5) 38%,rgba(0,0,0,.22) 64%,rgba(0,0,0,.06) 80%,rgba(0,0,0,0) 98%)!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.page-bar .nav-menu a,.page-bar .nav-menu button{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;text-shadow:0 1px .32rem #000,0 0 .72rem rgba(0,0,0,.94)}
.page-bar .nav-menu a:hover,.page-bar .nav-menu a:focus-visible,.page-bar .nav-menu button:hover,.page-bar .nav-menu button:focus-visible{background:transparent!important;outline:0;text-shadow:0 0 .08rem #fff,0 0 .42rem rgba(255,255,255,.62)}
.page-bar .nav-menu a:focus-visible,.page-bar .nav-menu button:focus-visible{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.28rem}
.page-bar .nav-drop{display:flex;align-items:center}
.page-bar .nav-drop>.nav-drop__link{min-width:0;height:44px;padding:0 .22rem;border:0;border-radius:0;background:transparent;box-shadow:none;text-decoration:none;white-space:nowrap}
.page-bar .nav-drop>button.nav-drop__link{color:inherit;font:inherit;cursor:pointer}
.page-bar .nav-drop>.nav-drop__link:hover,.page-bar .nav-drop>.nav-drop__link:focus-visible{padding:0 .22rem;border:0;background:transparent;box-shadow:none;outline:0;color:#fff;letter-spacing:.14em;transform:none;text-shadow:0 0 .08rem #fff,0 0 .42rem rgba(255,255,255,.72)}
.page-bar .nav-drop>.nav-drop__link:focus-visible{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.32rem}
.page-bar .nav-drop:not([data-open="true"]):focus-within>.nav-menu{display:none}
@media(max-width:799px){.page-bar .nav-drop>.nav-drop__link{width:100%;height:34px;padding:0 .08rem;justify-content:center;font-size:.47rem;letter-spacing:.035em}.page-bar .nav-drop>.nav-drop__link:hover,.page-bar .nav-drop>.nav-drop__link:focus-visible{padding:0 .08rem;letter-spacing:.035em}}
.page-bar .site-nav>a,.page-bar .site-nav>.nav-drop>.nav-drop__link{transition:color .18s ease,opacity .18s ease,text-shadow .18s ease}
.page-bar .site-nav>a:hover,.page-bar .site-nav>a:focus-visible,.page-bar .site-nav>.nav-drop>.nav-drop__link:hover,.page-bar .site-nav>.nav-drop>.nav-drop__link:focus-visible{background:transparent;box-shadow:none;letter-spacing:.14em!important;transform:none}
.page-bar .nav-menu a:hover,.page-bar .nav-menu a:focus-visible,.page-bar .nav-menu button:hover,.page-bar .nav-menu button:focus-visible{letter-spacing:.14em!important;transform:none}
@media(max-width:799px){.page-bar .site-nav>a:hover,.page-bar .site-nav>a:focus-visible,.page-bar .site-nav>.nav-drop>.nav-drop__link:hover,.page-bar .site-nav>.nav-drop>.nav-drop__link:focus-visible{letter-spacing:.035em!important}.page-bar .nav-menu a:hover,.page-bar .nav-menu a:focus-visible,.page-bar .nav-menu button:hover,.page-bar .nav-menu button:focus-visible{letter-spacing:.1em!important}}

/* Shared action feedback keeps every control's geometry fixed and uses only the site's soft glow. */
.membership-tier__cta,.service-card-booking-action,.hair-service-choice b{transition:color .18s ease,border-color .18s ease,text-shadow .18s ease!important;transform:none!important}
.membership-tier__cta:hover,.membership-tier__cta:focus-visible,.service-card-booking-action:hover,.service-card-booking-action:focus-visible,.hair-service-choice:hover b,.hair-service-choice:focus-visible b{padding-top:inherit;padding-bottom:inherit;border-width:1px;color:#fff!important;background:transparent!important;box-shadow:none!important;outline:0!important;transform:none!important;text-shadow:0 0 .08rem #fff,0 0 .42rem rgba(255,255,255,.65)}
.membership-tier__cta:focus-visible,.service-card-booking-action:focus-visible,.hair-service-choice:focus-visible b{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.26rem}

/* Combined Salon Services overview, using the existing Hair and IBE wall imagery. */
.salon-services-page{overflow-x:clip;background:#050505}.salon-services-page .site{position:relative;z-index:1;background:transparent}.salon-services-motion-bg::after{background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.44) 32%,rgba(0,0,0,.72) 74%,rgba(0,0,0,.9))}.salon-services-motion-bg .home-wall-stage{filter:grayscale(1) contrast(1.08) brightness(.72)}.salon-services-motion-bg .home-wall-track img[data-salon-wall-kind="extensions"]{object-position:center}.salon-services-motion-bg .home-wall-track img[data-salon-wall-kind="cut"]{object-position:center 22%}.salon-services-motion-bg .home-wall-track img[src*="mens-cut-02-long-layered"]{object-position:64% center}

/* Booking keeps the Shop page's brighter photographic read without changing foreground contrast. */
.booking-route-page .salon-services-motion-bg .home-wall-stage{filter:grayscale(1) contrast(1.06) brightness(.82)}
.booking-route-page[data-booking-menu="method"] .method-cinematic-bg .home-wall-stage{filter:grayscale(1) contrast(1.06) brightness(.82)}
.booking-route-page .hair-hero__copy{text-shadow:0 .1rem .72rem rgba(0,0,0,.34),0 .34rem 1.45rem rgba(0,0,0,.14)}
.booking-route-page[data-booking-menu="salon"] .hair-hero__copy{text-shadow:0 .1rem .72rem rgba(0,0,0,.46),0 .38rem 1.55rem rgba(0,0,0,.18)}
.salon-services-index{width:min(92%,70rem);margin:0 auto;padding:1rem 0 clamp(4rem,8vw,7rem);position:relative;z-index:2;color:#fff}.salon-services-index__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.salon-services-index__card{min-height:13rem;padding:clamp(1.1rem,3vw,2rem);display:flex;flex-direction:column;justify-content:flex-end;border:1px solid rgba(255,255,255,.3);color:#f4efe6;background:rgba(8,8,8,.22);box-shadow:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-decoration:none;transition:color .18s,border-color .18s,text-shadow .18s}.salon-services-index__card p{margin:0 0 .75rem;color:#d6c7aa;font-size:.58rem;letter-spacing:.19em;text-transform:uppercase}.salon-services-index__card h2{max-width:18ch;margin:0;color:#fff;font:300 clamp(1.55rem,3.4vw,2.8rem)/1.06 Poppins,"Century Gothic",Helvetica,sans-serif}.salon-services-index__card span{margin-top:1.2rem;font-size:.56rem;letter-spacing:.15em;text-transform:uppercase}.salon-services-index__card:hover,.salon-services-index__card:focus-visible{border-color:rgba(255,255,255,.65);background:rgba(8,8,8,.22);box-shadow:none;outline:0;transform:none;text-shadow:0 0 .08rem #fff,0 0 .48rem rgba(255,255,255,.54)}.salon-services-index__card:focus-visible span{text-decoration:underline;text-underline-offset:.26rem}.salon-services-index__book{width:max-content;min-width:10rem;max-width:100%;margin:1rem auto 0;padding-inline:1rem}
@media(max-width:620px){.salon-services-index{width:calc(100% - 1.25rem);padding-top:.8rem}.salon-services-index__grid{grid-template-columns:1fr;gap:.5rem}.salon-services-index__card{min-height:9.5rem;padding:1rem}.salon-services-index__card h2{font-size:clamp(1.45rem,8vw,2rem)}}
.private-style-page .method-offer .membership-tier__cta{width:max-content;min-width:7.5rem;max-width:100%;padding-inline:1rem}
@media(max-width:520px){.private-style-page .method-offer .membership-tier__cta{min-width:8rem;min-height:44px}}

/* Editorial Method story, followed by the two-part Services & Booking hub. */
.private-style-page .private-style-hero{min-height:100svh;padding-bottom:clamp(3rem,8vw,7rem)}
.private-style-page .private-style-hero .makeup-wall-hero__copy{max-width:min(92%,58rem)}
.private-style-page .method-editorial-bio{max-width:56rem;margin:clamp(1.4rem,3vw,2.35rem) auto 0;color:#f4efe6;font:300 clamp(.82rem,1.35vw,1.02rem)/1.85 Poppins,"Century Gothic",Helvetica,sans-serif;text-align:center;text-shadow:0 1px .65rem rgba(0,0,0,.95)}
.private-style-page .method-editorial-services-link{width:max-content;max-width:100%;margin:clamp(1.15rem,2.5vw,1.8rem) auto 0;padding-inline:1rem}
.method-orientation{width:min(92%,74rem);margin:0 auto;padding:0 0 clamp(4rem,8vw,7rem);position:relative;z-index:2;color:#f4efe6}
.method-orientation__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;align-items:stretch}
.method-orientation__column{min-width:0;padding:clamp(.85rem,2vw,1.2rem);display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.25);border-radius:.95rem;background:rgba(8,8,8,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow:hidden}
.method-orientation__column>h2{margin:0;color:#fff;font:400 clamp(1.7rem,3vw,2.5rem)/1 Georgia,"Times New Roman",serif;letter-spacing:-.04em}.method-orientation__column>p{margin:.75rem 0 1.15rem;color:#cfc9c2;font-size:.66rem;line-height:1.75}.method-orientation__link{min-height:44px;margin-top:auto;padding:.65rem .7rem;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.22);border-radius:.72rem;color:#f4efe6;font-size:.57rem;letter-spacing:.1em;text-align:center;text-decoration:none;text-transform:uppercase}.method-orientation__link:hover,.method-orientation__link:focus-visible{border-color:rgba(255,255,255,.7);outline:0;text-shadow:0 0 .08rem #fff,0 0 .42rem rgba(255,255,255,.48)}
@media(max-width:760px){.method-orientation{width:calc(100% - 1.25rem)}.method-orientation__grid{grid-template-columns:1fr}.method-orientation__column>p{min-height:0}}
.services-hub{width:min(92%,74rem);margin:0 auto;padding:1rem 0 clamp(4rem,8vw,7rem);position:relative;z-index:2;display:grid;gap:clamp(1rem,2.5vw,1.75rem);color:#f4efe6}
.service-chooser{width:min(92%,74rem);margin:0 auto;padding:clamp(1.2rem,3vw,2rem) 0 .4rem;position:relative;z-index:2;scroll-margin-top:5rem;color:#f4efe6;outline:0}.service-chooser__eyebrow{margin:0 0 .45rem;color:#d6c7aa;font-size:.56rem;letter-spacing:.19em;text-transform:uppercase}.service-chooser h2{margin:0;color:#fff;font:400 clamp(2rem,4.8vw,4.2rem)/.96 Georgia,"Times New Roman",serif;letter-spacing:-.045em}.service-chooser__options{margin-top:1.1rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.8rem,2vw,1.5rem)}.service-chooser__choice{min-height:5.5rem;padding:.75rem 0;display:flex;flex-direction:column;justify-content:center;border-top:1px solid rgba(255,255,255,.26);border-bottom:1px solid rgba(255,255,255,.26);color:#f4efe6;text-decoration:none}.service-chooser__choice strong{font:300 clamp(1.05rem,2.2vw,1.55rem)/1.2 Poppins,"Century Gothic",Helvetica,sans-serif}.service-chooser__choice span{margin-top:.3rem;color:#aaa39c;font-size:.58rem;line-height:1.5}.service-chooser__choice:hover,.service-chooser__choice:focus-visible{border-color:rgba(255,255,255,.72);outline:0;text-shadow:0 0 .08rem #fff,0 0 .42rem rgba(255,255,255,.48)}
.services-hub__group{min-width:0;padding:clamp(1rem,3vw,2.25rem);scroll-margin-top:4.5rem;border:1px solid rgba(255,255,255,.3);background:rgba(8,8,8,.2);box-shadow:0 .9rem 2.5rem rgba(0,0,0,.18);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.services-hub__heading{margin:0 0 clamp(1rem,3vw,2rem)}
.services-hub__heading>p{margin:0 0 .5rem;color:#d6c7aa;font-size:.56rem;letter-spacing:.19em;text-transform:uppercase}
.services-hub__heading h2{max-width:22ch;margin:0;color:#fff;font:400 clamp(2rem,5vw,4.6rem)/.95 Georgia,"Times New Roman",serif;letter-spacing:-.045em}
.services-hub__category{padding:clamp(1rem,2.4vw,1.55rem) 0;scroll-margin-top:4.5rem;border-top:1px solid rgba(255,255,255,.2)}
.services-hub__category:first-of-type{border-top:0}
.services-hub__category h3{margin:0 0 .85rem;color:#fff;font:300 clamp(1.35rem,3vw,2.2rem)/1.08 Poppins,"Century Gothic",Helvetica,sans-serif}
.services-hub__category h4{margin:1.15rem 0 .55rem;color:#d6c7aa;font:300 .56rem/1.3 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.services-hub__rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.42rem}
.services-hub__rows .hair-service-choice{min-height:3rem;margin:0;padding:.55rem .7rem;border:1px solid rgba(255,255,255,.18);background:rgba(8,8,8,.18)}
.services-hub__rows .hair-service-choice:hover,.services-hub__rows .hair-service-choice:focus-visible{border-color:rgba(255,255,255,.62);background:rgba(8,8,8,.18);box-shadow:none;outline:0;transform:none;text-shadow:0 0 .08rem #fff,0 0 .42rem rgba(255,255,255,.48)}
.services-hub__note{max-width:48rem;margin:-.2rem 0 .9rem;color:#bbb4ad;font-size:.64rem;line-height:1.65}.services-hub__note a{color:#fff;text-underline-offset:.2rem}
.services-hub__group--method.method-map{width:auto;margin:0;display:block}
.services-hub__group--method .private-style-foundations__grid{display:grid;grid-template-columns:1fr;gap:.45rem}
.services-hub__group--method .method-offer{background:rgba(8,8,8,.16)}
.services-hub__group--method .method-offer[open]{background:rgba(8,8,8,.34)}
.services-hub__group--method .method-offer .membership-tier__cta{width:max-content;min-width:7.5rem;max-width:100%;padding-inline:1rem}
.services-hub__boundary{margin:.85rem 0 0;display:block;color:#aaa49e;font-size:.55rem;line-height:1.55}
.services-hub__group--method .method-gift-card{margin-top:1rem}.services-hub__group--method .method-gift-card h3{max-width:17ch;margin:0;color:#fff;font:400 clamp(2rem,4.6vw,4rem)/.95 Georgia,"Times New Roman",serif;letter-spacing:-.05em}

/* The restored Extensions page is explanatory; booking lives in the shared hub. */
.extension-editorial{width:min(92%,62rem);margin:0 auto clamp(4rem,8vw,7rem);padding:clamp(1rem,4vw,3rem);position:relative;z-index:2;border:1px solid rgba(255,255,255,.3);color:#f4efe6;background:rgba(8,8,8,.22);box-shadow:0 .9rem 2.5rem rgba(0,0,0,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.extension-editorial>header{padding-bottom:clamp(1rem,3vw,2rem)}.extension-editorial>header>p{margin:0 0 .55rem;color:#d6c7aa;font-size:.56rem;letter-spacing:.19em;text-transform:uppercase}.extension-editorial>header h2{max-width:17ch;margin:0;color:#fff;font:400 clamp(2rem,5vw,4.2rem)/.96 Georgia,"Times New Roman",serif;letter-spacing:-.045em}
.extension-editorial>section{padding:clamp(1rem,2.4vw,1.55rem) 0;border-top:1px solid rgba(255,255,255,.2)}.extension-editorial h3{margin:0 0 .55rem;color:#fff;font:300 clamp(1rem,2vw,1.35rem)/1.2 Poppins,"Century Gothic",Helvetica,sans-serif}.extension-editorial section p{max-width:52rem;margin:.35rem 0;color:#d4cfca;font-size:.76rem;line-height:1.72}.extension-editorial__cost p:first-of-type,.extension-editorial__cost p:nth-of-type(2){color:#fff;font-size:.86rem}.extension-editorial__route{width:max-content;max-width:100%;margin:1.2rem 0 0;padding-inline:1rem}

@media(max-width:620px){.private-style-page .private-style-hero{padding-bottom:3.5rem}.private-style-page .method-editorial-bio{font-size:.76rem;line-height:1.72}.services-hub{width:calc(100% - 1.25rem);padding-top:.75rem}.services-hub__group{padding:.85rem}.services-hub__rows{grid-template-columns:1fr}.services-hub__rows .hair-service-choice{min-height:44px}.services-hub__group--method .method-offer .membership-tier__cta{min-height:44px}.services-hub__group--method .method-gift-card{padding:.85rem;grid-template-columns:1fr;align-items:start}.services-hub__group--method .method-gift-card h3{font-size:2.15rem}.extension-editorial{width:calc(100% - 1.25rem);padding:.9rem}.extension-editorial__route{min-height:44px}}

/* Services hub final density: exact prices without growing the booking rows. */
.salon-services-page .services-hub{padding-top:.55rem;gap:.7rem}
.salon-services-page .services-hub__group{padding:clamp(1rem,2.4vw,1.6rem);border:0;background:rgba(8,8,8,.22);box-shadow:none;outline:0}
.salon-services-page .services-hub__heading{margin-bottom:.7rem}
.salon-services-page .services-hub__heading>p{margin-bottom:.3rem}
.salon-services-page .services-hub__salon-grid{display:grid;grid-template-columns:1fr;gap:.5rem}
.salon-services-page .services-hub__salon-grid .services-hub__category{min-width:0;padding:.9rem 0;border:0;border-top:1px solid rgba(255,255,255,.2)}
.salon-services-page .services-hub__salon-grid .services-hub__category:nth-child(-n+2){border-top:0}
.salon-services-page .services-hub__salon-grid .services-hub__rows{grid-template-columns:repeat(2,minmax(0,1fr))}
.salon-services-page .services-hub__category{padding:.7rem 0}
.salon-services-page .services-hub__category h3{margin-bottom:.48rem}
.salon-services-page .services-hub__category h4{margin:.72rem 0 .34rem}
.salon-services-page .services-hub__rows{gap:.28rem}
.salon-services-page .services-hub__rows .hair-service-choice{min-height:44px;padding:.42rem 0;gap:.5rem;border:0;border-bottom:1px solid rgba(255,255,255,.12);background:transparent}
.salon-services-page .services-hub__rows .hair-service-choice:hover,.salon-services-page .services-hub__rows .hair-service-choice:focus-visible{border-color:rgba(255,255,255,.42);background:transparent}
.salon-services-page .service-name{min-width:0;display:flex;flex:1;flex-direction:column;gap:.03rem;line-height:1.18}
.salon-services-page .service-price{display:block;color:#aaa49c;font:300 .5rem/1.15 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:.04em;text-transform:none}
.salon-services-page .services-hub__rows .hair-service-choice b{min-width:3.15rem;padding:.34rem .1rem;flex:0 0 auto;border:0;border-bottom:1px solid rgba(255,255,255,.5);border-radius:0;text-align:center}
.salon-services-page .services-hub__note{margin:-.08rem 0 .55rem}
.services-hub__method-rate{margin:.55rem 0 0;display:block;color:#f4efe6;font:300 .72rem/1.35 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.salon-services-page .services-hub__group--method .private-style-foundations__grid{gap:.28rem}
.salon-services-page .services-hub__group--method .method-offer{padding:.08rem 0;border:0;border-top:1px solid rgba(255,255,255,.18);background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.salon-services-page .services-hub__group--method .method-offer:first-child{border-top:0}
.salon-services-page .services-hub__group--method .method-offer[open]{background:transparent}
.salon-services-page .services-hub__group--method .method-offer[open]{padding-bottom:.58rem}
.salon-services-page .services-hub__group--method .method-offer>summary{min-height:44px}
.salon-services-page .services-hub__group--method .method-offer .meta{margin:.28rem 0}
.salon-services-page .services-hub__group--method .method-offer .membership-tier__cta{min-height:44px;margin-top:.55rem;padding:.48rem .1rem;border:0;border-bottom:1px solid rgba(255,255,255,.5)}
.salon-services-page .services-hub__boundary{margin-top:.6rem}
.salon-services-page .services-hub__group--method .method-gift-card{margin-top:.7rem;padding:1rem 0;border:0;border-top:1px solid rgba(255,255,255,.2);background:transparent;box-shadow:none}
@media(max-width:620px){.service-chooser{width:calc(100% - 1.25rem)}.service-chooser__options{grid-template-columns:1fr;gap:.35rem}.service-chooser__choice{min-height:4.8rem}.salon-services-page .services-hub{padding-top:.5rem;gap:.55rem}.salon-services-page .services-hub__group{padding:.9rem .68rem}.salon-services-page .services-hub__salon-grid{grid-template-columns:1fr;gap:0}.salon-services-page .services-hub__salon-grid .services-hub__category{padding:.8rem 0}.salon-services-page .services-hub__salon-grid .services-hub__category:nth-child(2){border-top:1px solid rgba(255,255,255,.2)}.salon-services-page .services-hub__salon-grid .services-hub__rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 .55rem}.salon-services-page .services-hub__rows .hair-service-choice{padding:.38rem 0}.salon-services-page .services-hub__rows .hair-service-choice b{min-width:3.2rem}.salon-services-page .services-hub__category{padding:.62rem 0}}

/* Three-level membership proposal; no live enrollment or balances are implied. */
.membership-page .membership-tier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.membership-preview-flag{width:max-content;max-width:100%;margin:0 0 .65rem;padding:.3rem .5rem;border:1px solid rgba(214,199,170,.5);color:#d6c7aa;font:300 .52rem/1.3 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.membership-page .membership-tier>.membership-tier__note{width:100%;margin:.1rem 0 .5rem;padding:.45rem 0 0;border-top:1px solid rgba(244,239,230,.15);color:#cfc9c1;font-size:.55rem;line-height:1.55;text-align:left;text-transform:none}
.membership-policy-open{margin:.7rem 0 0;padding:.75rem;border:1px solid rgba(244,239,230,.24);background:rgba(8,8,8,.18)}
.membership-policy-open h2{margin:0;color:#fff;font:300 .72rem/1.35 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.membership-policy-open p{margin:.4rem 0 0;color:#b8b2aa;font-size:.6rem;line-height:1.65}
@media(max-width:920px){.membership-page .membership-tier-grid{grid-template-columns:1fr}.membership-page .membership-tier{max-width:38rem;width:100%;margin-inline:auto}}

/* Private Look Cards remain hidden until a real authenticated account is resolved. */
.appointment-book-look-cards[hidden]{display:none!important}
.appointment-book-look-card-list li span{color:#aaa49c}

/* Compact calendar summary: one numeric control attached to the calendar's lower-right tip. */
.page-bar .appointment-nav-calendar{position:relative;width:2.75rem;min-width:2.75rem;height:38px;display:grid;grid-template-columns:2.75rem;align-items:center;justify-self:end;overflow:visible}
.page-bar .appointment-nav-calendar>.appointment-nav-cart{width:2.75rem;min-width:2.75rem;height:38px}
.page-bar .appointment-nav-summary{position:absolute;z-index:3;right:.11rem;bottom:-.01rem;width:1.08rem;height:1.08rem;display:grid;place-items:center;border:0;padding:0;color:#090909;background:transparent;cursor:pointer}
.appointment-nav-summary__badges{display:none}
.appointment-nav-summary__total{min-width:1.08rem;min-height:1.08rem;padding:0 .24rem;display:grid;place-items:center;border:1.5px solid #0a0a0a;border-radius:999px;color:#090909;background:#fff;font-size:.44rem;font-weight:500;line-height:1;font-variant-numeric:tabular-nums;box-shadow:0 .12rem .35rem rgba(0,0,0,.28)}
.page-bar .appointment-nav-summary:hover,.page-bar .appointment-nav-summary:focus-visible,.page-bar .appointment-nav-summary[aria-expanded="true"]{background:transparent;outline:0;text-shadow:none}
.page-bar .appointment-nav-summary:focus-visible .appointment-nav-summary__total{outline:2px solid #fff;outline-offset:2px}
.appointment-nav-summary-popover{position:absolute;z-index:80;top:calc(100% + .9rem);right:0;width:max-content;min-width:10.75rem;padding:.65rem .72rem;isolation:isolate;border:0;color:#f4efe6;background:transparent;box-shadow:none;font-size:.55rem;line-height:1.35;text-align:left;text-shadow:0 1px .35rem rgba(0,0,0,.96)}
.appointment-nav-summary-popover::before{position:absolute;z-index:-1;content:"";inset:-.42rem -.62rem;background:rgba(7,7,7,.82);border-radius:46% 54% 48% 52%;filter:blur(.55rem);pointer-events:none}
.appointment-nav-summary-popover[hidden]{display:none!important}
.appointment-nav-summary-popover h2{margin:0 0 .42rem;color:#d6c7aa;font:300 .47rem/1.25 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.appointment-nav-summary-popover p{margin:.18rem 0;display:flex;align-items:baseline;gap:.28rem;color:#d7d1cb}
.appointment-nav-summary-popover strong{min-width:1ch;color:#fff;font-size:.68rem;font-variant-numeric:tabular-nums}
.page-bar .site-nav__utilities>.appointment-nav-calendar{width:2.75rem;min-width:2.75rem}
@media(width<=799px){
  .page-bar .appointment-nav-calendar,.page-bar .site-nav__utilities>.appointment-nav-calendar{width:2.1rem;min-width:2.1rem;height:34px;grid-template-columns:2.1rem}
  .page-bar .appointment-nav-calendar>.appointment-nav-cart{width:2.1rem;min-width:2.1rem;height:34px}
  .page-bar .appointment-nav-summary{right:-.13rem;bottom:-.05rem;width:1.08rem;height:1.08rem}
  .page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__utilities{width:4.3rem;grid-template-columns:0 2.1rem 2.1rem}
}
@media(width>=800px) and (width<=899px){
  .page-bar .site-nav:not(.site-nav--member-profile){grid-auto-flow:unset;grid-template-columns:minmax(3.6rem,.7fr) minmax(4.2rem,.95fr) minmax(5.35rem,1.15fr) minmax(1.85rem,.42fr) 4.3rem;grid-template-rows:34px;column-gap:.12rem;row-gap:0}
  .page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__utilities{width:4.3rem;min-width:4.3rem;grid-column:5;grid-row:1;justify-self:end;grid-template-columns:0 2.1rem 2.1rem;gap:.1rem}
  .page-bar .site-nav__utilities .site-search,.page-bar .site-nav__utilities .site-search[data-open=true]{width:2.1rem;height:34px;display:block!important;flex:none}
  .page-bar .site-nav__utilities .site-search__field{width:34px}
  .page-bar .site-nav__utilities .site-nav__account-tools{width:0;min-width:0}
  .page-bar .site-nav>.site-nav__wordmark{min-width:0;justify-content:center;overflow:hidden}
  .page-bar .site-nav>.site-nav__wordmark .site-nav__signature{width:2.25rem;height:1.15rem;display:block}
  .page-bar .site-nav>.site-nav__wordmark .site-nav__label{font-size:.43rem;letter-spacing:.03em}
  .page-bar .site-nav:not(.site-nav--member-profile)>.nav-drop{width:100%;min-width:0}
  .page-bar .site-nav:not(.site-nav--member-profile)>.nav-drop>button,.page-bar .site-nav:not(.site-nav--member-profile)>[data-shop],.page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__book-link{width:100%;min-width:0;height:34px;padding-inline:0;justify-content:center;overflow:hidden;font-size:.47rem;letter-spacing:.045em;white-space:nowrap}
  .page-bar .appointment-nav-calendar,.page-bar .site-nav__utilities>.appointment-nav-calendar{width:2.1rem;min-width:2.1rem;height:34px;grid-template-columns:2.1rem}
  .page-bar .appointment-nav-calendar>.appointment-nav-cart{width:2.1rem;min-width:2.1rem;height:34px}
  .page-bar .appointment-nav-summary{right:-.13rem;bottom:-.05rem;width:1.08rem;height:1.08rem}
}

/* Services remain editorial and unframed: whitespace and type provide every grouping cue. */
.salon-services-page .services-hub__group{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
.salon-services-page .services-hub__heading{position:relative;border:0!important;text-shadow:0 1px .42rem rgba(0,0,0,.78)}
.salon-services-page .services-hub__category,.salon-services-page .services-hub__salon-grid .services-hub__category,.salon-services-page .services-hub__salon-grid .services-hub__category:nth-child(-n+2){border:0}
.salon-services-page .services-hub__salon-grid{gap:.75rem 1.15rem}
.salon-services-page .services-hub__salon-grid .services-hub__category{padding:1rem 0}
.salon-services-page .services-hub__rows{gap:.2rem}
.salon-services-page .services-hub__rows .hair-service-choice,.salon-services-page .services-hub__rows .hair-service-choice:hover,.salon-services-page .services-hub__rows .hair-service-choice:focus-visible{border:0;background:transparent}
.salon-services-page .services-hub__rows .hair-service-choice{display:grid;grid-template-columns:minmax(0,12.25rem) max-content;justify-content:start;align-items:center;column-gap:.75rem}
.salon-services-page .services-hub__rows .hair-service-choice .service-name{min-width:0;color:#fff;font-size:.8rem;line-height:1.3;font-weight:300;overflow-wrap:anywhere}
.salon-services-page .services-hub__rows .hair-service-choice .service-price{font-size:.48rem;line-height:1.25;font-weight:300}
.salon-services-page .services-hub__rows .hair-service-choice b{min-width:3.15rem;padding:.27rem .62rem;border:1px solid rgba(255,255,255,.52);border-radius:999px}
.salon-services-page .services-hub__rows .hair-service-choice b[hidden],.salon-services-page .appointment-service-action[hidden]{display:none!important}
.salon-services-page .services-hub__group--method .method-offer,.salon-services-page .services-hub__group--method .method-offer:first-child{border:0}
.salon-services-page .services-hub__group--method .method-offer-row{min-width:0;position:relative}
.salon-services-page .services-hub__group--method .method-offer-row>.method-offer{width:100%}
.salon-services-page .services-hub__group--method .method-offer>summary{padding-right:5.1rem}
.salon-services-page .services-hub__group--method .method-offer .membership-tier__cta{width:max-content;min-width:3.4rem;min-height:2rem;padding:.28rem .66rem;border:1px solid rgba(255,255,255,.52);border-radius:999px}
.salon-services-page .services-hub__group--method .method-offer .method-service-add,.salon-services-page .services-hub__group--method .method-offer .method-service-add:hover,.salon-services-page .services-hub__group--method .method-offer .method-service-add:focus-visible{width:max-content;min-width:0;min-height:44px;padding:0;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important}
.salon-services-page .services-hub__group--method .method-service-add>b{min-width:3.15rem;padding:.27rem .62rem;border:1px solid rgba(255,255,255,.52);border-radius:999px}
.salon-services-page .services-hub__group--method .method-service-add>.appointment-service-card-quantity{margin-left:0}
.salon-services-page .services-hub__group--method .method-offer-row>.method-service-select{width:max-content!important;min-width:0!important;min-height:44px;position:absolute;z-index:2;top:.18rem;right:.15rem;left:auto;margin-top:0;padding:0!important;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important}
.salon-services-page .services-hub__group--method .method-offer-row>.method-service-select>b{min-width:3.15rem;padding:.27rem .62rem;border:1px solid rgba(255,255,255,.52);border-radius:999px;text-align:center}
.salon-services-page .services-hub__group--method .method-offer-row>.method-service-select[data-added="true"]>b{min-width:3.15rem;padding:.27rem .15rem;border:0!important;border-radius:0!important;color:#fff!important;background:transparent!important}
.salon-services-page .method-service-select[data-added="true"]>b::after{content:none!important}
.salon-services-page .method-offer>summary .service-card-disclosure__title{display:flex;flex-direction:column;align-items:flex-start;gap:.14rem}
.salon-services-page .services-hub__group--method .method-offer>summary .service-card-disclosure__title{min-width:0;color:#fff;font-size:.8rem;line-height:1.3;font-weight:300;overflow-wrap:anywhere}
.salon-services-page .method-offer>summary .service-price{font-size:.48rem;line-height:1.2}
.salon-services-page .services-hub__group--method .method-offer .meta{font-size:.52rem;line-height:1.35}
.salon-services-page .services-hub__group--method .method-gift-card{border:0}
.salon-services-page .services-hub,.salon-services-page .services-hub__group,.salon-services-page .services-hub__heading,.salon-services-page .services-hub__salon-grid,.salon-services-page .services-hub__category,.salon-services-page .services-hub__rows,.salon-services-page .method-offer,.salon-services-page .method-gift-card{border-top:0!important;border-bottom:0!important;box-shadow:none}
@media(max-width:620px){
  .salon-services-page .services-hub__salon-grid .services-hub__category:nth-child(2){border:0}
  .salon-services-page .services-hub__salon-grid{grid-template-columns:1fr;gap:.35rem}
  .salon-services-page .services-hub__salon-grid .services-hub__category{min-width:0;padding:.7rem 0}
  .salon-services-page .services-hub__salon-grid .services-hub__rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 .55rem}
  .salon-services-page .services-hub__group{padding:.9rem .68rem}
  .salon-services-page .services-hub__rows .hair-service-choice{min-width:0;min-height:44px;grid-template-columns:minmax(0,1fr) max-content;column-gap:.55rem;padding:.36rem 0;font-size:.54rem}
  .salon-services-page .services-hub__rows .hair-service-choice .service-name{min-width:0;font-size:.72rem;line-height:1.3;overflow-wrap:anywhere}
  .salon-services-page .services-hub__rows .hair-service-choice b{min-width:2.7rem;padding:.27rem .4rem;font-size:.43rem}
  .salon-services-page .services-hub__group--method .private-style-foundations__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.22rem .55rem}
  .salon-services-page .services-hub__group--method .method-offer{min-width:0;grid-column:auto}
  .salon-services-page .services-hub__group--method .method-offer[open]{grid-column:1/-1}
  .salon-services-page .services-hub__group--method .method-offer>summary{padding-inline:.15rem;overflow-wrap:anywhere}
  .salon-services-page .services-hub__group--method .method-offer>summary .service-card-disclosure__title{font-size:.72rem;line-height:1.3}
  .salon-services-page .services-hub__group--method .method-gift-card{grid-column:1/-1}
}

/* The assessment begins as a translucent invitation, then inverts for hover and keyboard focus. */
.reading-page .quiz-intro [data-start]{color:#fff;background:rgba(8,8,8,.28);border-color:rgba(255,255,255,.58);border-radius:.72rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:color .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .22s ease}
.reading-page .quiz-intro [data-start]:hover,.reading-page .quiz-intro [data-start]:focus-visible{color:#0a0a0a;background:rgba(255,255,255,.94);border-color:#fff;box-shadow:inset 0 0 0 1px rgba(10,10,10,.34),inset 0 0 .8rem rgba(255,255,255,.82);outline:0}
@media(prefers-reduced-motion:reduce){.reading-page .quiz-intro [data-start]{transition:none}}

/* Final navigation and Services hierarchy: matched top-level labels, unboxed chooser, ordered grids. */
@media(min-width:800px){
  .page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__book-link,
  .page-bar .site-nav:not(.site-nav--member-profile)>.nav-drop>.nav-drop__link,
  .page-bar .site-nav:not(.site-nav--member-profile)>[data-shop]{font-family:Poppins,"Century Gothic",Helvetica,sans-serif;font-size:.55rem;font-weight:300;line-height:1;letter-spacing:.14em}
}
.service-chooser__choice,.service-chooser__choice:hover,.service-chooser__choice:focus-visible{border:0}
.salon-services-page .services-hub__group--method .private-style-foundations__grid{grid-template-columns:1fr}
.salon-services-page #extensions .services-hub__rows{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(44px,auto))}
.salon-services-page #extensions .hair-service-choice:nth-child(1){grid-column:1;grid-row:1}
.salon-services-page #extensions .hair-service-choice:nth-child(2){grid-column:1;grid-row:2}
.salon-services-page #extensions .hair-service-choice:nth-child(3){grid-column:2;grid-row:1/3}
@media(min-width:621px){
  .salon-services-page #hair-services .services-hub__rows{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(44px,auto))!important;grid-auto-flow:row!important}
  .salon-services-page #hair-services .hair-service-choice:nth-child(1){grid-column:1;grid-row:1}
  .salon-services-page #hair-services .hair-service-choice:nth-child(2){grid-column:1;grid-row:2}
  .salon-services-page #hair-services .hair-service-choice:nth-child(3){grid-column:1;grid-row:3}
  .salon-services-page #hair-services .hair-service-choice:nth-child(4){grid-column:2;grid-row:1}
  .salon-services-page #hair-services .hair-service-choice:nth-child(5){grid-column:2;grid-row:2}
  .salon-services-page #hair-services .hair-service-choice:nth-child(6){grid-column:2;grid-row:3}
  .salon-services-page #hair-services .hair-service-choice--mens{grid-column:1!important;grid-row:1!important}
  .salon-services-page #hair-services .hair-service-choice--womens{grid-column:1!important;grid-row:2!important}
  .salon-services-page #hair-services .hair-service-choice--childrens{grid-column:1!important;grid-row:3!important}
  .salon-services-page #hair-services .hair-service-choice--bang{grid-column:2!important;grid-row:1!important}
  .salon-services-page #hair-services .hair-service-choice--shampoo{grid-column:2!important;grid-row:2!important}
  .salon-services-page #hair-services .hair-service-choice--consultation{grid-column:2!important;grid-row:3!important}
}
@media(max-width:620px){
  .salon-services-page .services-hub__group--method .private-style-foundations__grid{grid-template-columns:1fr;gap:.22rem}
  .salon-services-page .services-hub__group--method .method-offer-row,.salon-services-page .services-hub__group--method .method-gift-card{grid-column:1}
  .salon-services-page #extensions .services-hub__rows{grid-template-columns:1fr;grid-template-rows:auto}
  .salon-services-page #extensions .hair-service-choice:nth-child(1),.salon-services-page #extensions .hair-service-choice:nth-child(2),.salon-services-page #extensions .hair-service-choice:nth-child(3){grid-column:1;grid-row:auto}
  .salon-services-page #hair-services .services-hub__rows{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important;grid-auto-flow:row!important}
  .salon-services-page #hair-services .hair-service-choice:nth-child(n){grid-column:1;grid-row:auto}
  .salon-services-page #hair-services .hair-service-choice--mens,.salon-services-page #hair-services .hair-service-choice--womens,.salon-services-page #hair-services .hair-service-choice--childrens,.salon-services-page #hair-services .hair-service-choice--bang,.salon-services-page #hair-services .hair-service-choice--shampoo,.salon-services-page #hair-services .hair-service-choice--consultation{grid-column:1!important;grid-row:auto!important}
}

/* Split booking keeps the Method anchor centered between two explicit destinations. */
.booking-route-page [data-booking-panel][hidden]{display:none!important}
.booking-route-page .salon-services-hero [data-booking-title]{max-width:13ch;margin-inline:auto;line-height:.94}
.services-buffer-page .service-chooser{padding-bottom:clamp(3rem,8vw,6rem)}
.services-buffer-page .service-chooser__options{grid-template-columns:repeat(2,minmax(0,1fr))}
.page-bar .site-nav>.site-nav__book-link,.page-bar .site-nav>.site-nav__method-book-link{text-align:center}
@media(min-width:800px){
  .page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__method-book-link{font-family:Poppins,"Century Gothic",Helvetica,sans-serif;font-size:.55rem;font-weight:300;line-height:1;letter-spacing:.14em}
}
@media(width>=900px){
  .page-bar .site-nav:not(.site-nav--member-profile){grid-template-columns:13.5rem repeat(4,minmax(5.2rem,1fr)) minmax(11.5rem,1.35fr)}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile){grid-template-columns:13.5rem repeat(4,minmax(5.2rem,1fr)) minmax(22.5rem,1.85fr)}
  .page-bar .site-nav.site-nav--member-profile{grid-template-columns:max-content max-content max-content max-content max-content 4.85rem}
}
@media(width>=800px) and (width<=899px){
  .page-bar .site-nav:not(.site-nav--member-profile){grid-template-columns:minmax(3.6rem,.7fr) minmax(4.1rem,.9fr) minmax(5.2rem,1.12fr) minmax(4.1rem,.9fr) minmax(1.7rem,.38fr) 4.3rem}
  .page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__utilities{grid-column:6}
  .page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__book-link,.page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__method-book-link{width:100%;min-width:0;height:34px;padding-inline:0;justify-content:center;overflow:hidden;font-size:.47rem;letter-spacing:.035em;white-space:nowrap}
}
@media(width<=799px){
  .page-bar .site-nav:not(.site-nav--member-profile){grid-template-columns:minmax(3.2rem,.72fr) minmax(3.6rem,.86fr) minmax(4.45rem,1.06fr) minmax(3.6rem,.86fr) minmax(1.55rem,.36fr) 4.3rem}
  .page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__utilities{grid-column:6}
  .page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__book-link,.page-bar .site-nav:not(.site-nav--member-profile)>.site-nav__method-book-link{width:100%;min-width:0;height:34px;padding-inline:0;justify-content:center;overflow:hidden;font-size:.48rem;letter-spacing:.025em;line-height:1.12;white-space:normal}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile){grid-template-columns:2.8rem 2.8rem 3.4rem 2.8rem 1.5rem 9.3rem}
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile)>.site-nav__utilities{width:9.3rem;grid-column:6}
}
@media(width<=430px){
  .booking-route-page .salon-services-hero [data-booking-title]{font-size:clamp(2.35rem,11.25vw,3.05rem)}
  .services-buffer-page .service-chooser__options{gap:.55rem}
  .services-buffer-page .service-chooser__choice strong{font-size:.84rem}
}
.page-bar .site-nav>.site-nav__book-link,.page-bar .site-nav>.site-nav__method-book-link,.page-bar .nav-drop>.nav-drop__link,.private-style-hero .makeup-wall-hero__eyebrow,.services-buffer-page .hair-eyebrow,.booking-route-page .hair-eyebrow{text-transform:none}
.page-bar .nav-drop--method{display:grid;grid-template-columns:minmax(0,1fr) 1.35rem;align-items:center;justify-content:center}
.page-bar .nav-drop--method>.nav-drop__label{min-width:0;height:44px;padding:0 .05rem;display:flex;align-items:center;justify-content:flex-end;color:inherit;font:inherit;letter-spacing:inherit;text-decoration:none;text-transform:none;white-space:nowrap}
.page-bar .nav-drop--method>button.nav-drop__link{width:1.35rem!important;min-width:1.35rem;height:44px;padding:0!important;display:grid;place-items:center;overflow:visible}
.page-bar .nav-drop__caret{font-size:.76rem;line-height:1;transform:translateY(-.04rem);transition:transform .18s ease}
.page-bar .nav-drop--method[data-open="true"] .nav-drop__caret{transform:translateY(.03rem) rotate(180deg)}
.page-bar .nav-drop--method>.nav-drop__label:hover,.page-bar .nav-drop--method>.nav-drop__label:focus-visible{color:#fff;background:transparent;box-shadow:none;outline:0;text-shadow:0 0 .08rem #fff,0 0 .42rem rgba(255,255,255,.72)}
.page-bar .nav-drop--method>.nav-drop__label:focus-visible{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.32rem}
@media(max-width:799px){.page-bar .nav-drop--method{grid-template-columns:minmax(0,1fr) 1.15rem}.page-bar .nav-drop--method>.nav-drop__label{height:34px;justify-content:flex-end;font-size:.47rem;letter-spacing:.035em}.page-bar .nav-drop--method>button.nav-drop__link{width:1.15rem!important;min-width:1.15rem;height:34px}.page-bar .nav-drop__caret{font-size:.62rem}}

/* Keep the shared brand lockup inside the header at every compact breakpoint. */
@media (width>=800px) and (width<=899px) {
  .page-bar .site-nav:not(.site-nav--member-profile) {
    grid-template-columns: minmax(4.2rem,.82fr) minmax(4.1rem,.9fr) minmax(5.2rem,1.12fr) minmax(4.1rem,.9fr) minmax(1.7rem,.38fr) 4.3rem;
  }
  .page-bar .site-nav:not(.site-nav--member-profile) > .site-nav__wordmark {
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    transform: none;
    overflow: hidden;
  }
}
@media (width>=421px) and (width<=799px) {
  .page-bar .site-nav:not(.site-nav--member-profile) {
    grid-template-columns: minmax(4.2rem,.86fr) minmax(3.6rem,.86fr) minmax(4.45rem,1.06fr) minmax(3.6rem,.86fr) minmax(1.55rem,.36fr) 4.3rem;
  }
  .page-bar .site-nav.site-nav--account-visible:not(.site-nav--member-profile) {
    grid-template-columns: 4.2rem 2.8rem 3.4rem 2.8rem 1.5rem 9.3rem;
  }
  .page-bar .site-nav:not(.site-nav--member-profile) > .site-nav__wordmark {
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    transform: none;
    overflow: hidden;
  }
}
@media (width<=420px) {
  .page-bar .site-nav:not(.site-nav--member-profile) {
    grid-template-columns: 2.55rem minmax(3.15rem,.8fr) minmax(4rem,1fr) minmax(2.7rem,.72fr) minmax(1.3rem,.32fr) 4.1rem;
  }
  .page-bar .site-nav:not(.site-nav--member-profile) > .site-nav__wordmark {
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    transform: none;
    overflow: hidden;
  }
  .page-bar .site-nav:not(.site-nav--member-profile) > .site-nav__wordmark .site-nav__signature {
    width: 2.35rem;
    height: 1.15rem;
    display: block;
    flex: 0 0 2.35rem;
  }
  .page-bar .site-nav:not(.site-nav--member-profile) > .site-nav__wordmark .site-nav__label {
    display: none;
  }
}

/* The filtered Salon route owns one explicit Cut & Style composition at every width. */
.booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(44px,auto))!important;grid-auto-flow:row!important}
.booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style>.hair-service-choice--mens{grid-column:1!important;grid-row:1!important}
.booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style>.hair-service-choice--womens{grid-column:1!important;grid-row:2!important}
.booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style>.hair-service-choice--childrens{grid-column:1!important;grid-row:3!important}
.booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style>.hair-service-choice--bang{grid-column:2!important;grid-row:1!important}
.booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style>.hair-service-choice--shampoo{grid-column:2!important;grid-row:2!important}
.booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style>.hair-service-choice--consultation{grid-column:2!important;grid-row:3!important}
@media(max-width:620px){
  .booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style{gap:0 .55rem!important}
  .booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style>.hair-service-choice{min-width:0;min-height:44px;grid-template-columns:minmax(0,1fr) max-content;column-gap:.35rem}
  .booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style>.hair-service-choice .service-name{min-width:0;overflow-wrap:anywhere}
  .booking-route-page[data-booking-menu="salon"] #hair-services>.services-hub__rows--cut-style>.hair-service-choice b{min-width:2.7rem;margin-left:auto}
}

/* One restrained interaction language: motion never changes layout geometry. */
:root{--unltd-interaction-transform:translateY(-1px) scale(1.008);--unltd-interaction-duration:180ms;--unltd-interaction-ease:cubic-bezier(.2,.7,.3,1);--unltd-interaction-glow:0 0 .08rem #fff,0 0 .42rem rgba(255,255,255,.58);--unltd-interaction-filter:drop-shadow(0 0 .28rem rgba(255,255,255,.42))}
:where(.page-bar .site-nav>a,.page-bar .nav-drop__label,.page-bar .nav-drop__link,.service-chooser__choice,.salon-services-page .services-hub__rows .hair-service-choice,.salon-services-page .method-offer>summary,.method-orientation__link,.foot.foot--stacked a){transition:transform var(--unltd-interaction-duration) var(--unltd-interaction-ease),filter var(--unltd-interaction-duration) var(--unltd-interaction-ease),color var(--unltd-interaction-duration) var(--unltd-interaction-ease),border-color var(--unltd-interaction-duration) var(--unltd-interaction-ease),box-shadow var(--unltd-interaction-duration) var(--unltd-interaction-ease),text-shadow var(--unltd-interaction-duration) var(--unltd-interaction-ease)!important;transform-origin:center}
@media(hover:hover) and (pointer:fine){
  :where(.page-bar .site-nav>a,.page-bar .nav-drop__label,.page-bar .nav-drop__link,.service-chooser__choice,.salon-services-page .services-hub__rows .hair-service-choice,.salon-services-page .method-offer>summary,.method-orientation__link,.foot.foot--stacked a):not(:disabled):not([aria-disabled="true"]):not([data-added="true"]):hover{transform:var(--unltd-interaction-transform)!important;filter:var(--unltd-interaction-filter)!important;text-shadow:var(--unltd-interaction-glow)!important}
}
:where(.page-bar .site-nav>a,.page-bar .nav-drop__label,.page-bar .nav-drop__link,.service-chooser__choice,.salon-services-page .services-hub__rows .hair-service-choice,.salon-services-page .method-offer>summary,.method-orientation__link,.foot.foot--stacked a):not(:disabled):not([aria-disabled="true"]):not([data-added="true"]):focus-visible{transform:var(--unltd-interaction-transform)!important;filter:var(--unltd-interaction-filter)!important;outline:1px solid rgba(255,255,255,.82)!important;outline-offset:3px;text-shadow:var(--unltd-interaction-glow)!important}
.salon-services-page .method-service-select[data-added="true"]{transform:none!important;filter:none!important;transition:color var(--unltd-interaction-duration) var(--unltd-interaction-ease),text-shadow var(--unltd-interaction-duration) var(--unltd-interaction-ease)!important}
.salon-services-page .method-service-select[data-added="true"]:focus-visible{filter:none!important;outline:1px solid rgba(255,255,255,.82)!important;outline-offset:3px;text-shadow:var(--unltd-interaction-glow)!important}
@media(prefers-reduced-motion:reduce){
  :where(.page-bar .site-nav>a,.page-bar .nav-drop__label,.page-bar .nav-drop__link,.service-chooser__choice,.salon-services-page .services-hub__rows .hair-service-choice,.salon-services-page .method-offer>summary,.method-orientation__link,.foot.foot--stacked a){transition-duration:.01ms!important;transform:none!important}
}


/* Homepage Method spacing: keep the signature close, and balance the film control between copy blocks. */
.home-page .home-wall-hero{min-height:82svh;place-items:center}
.home-page .home-wall-hero__lockup{transform:translateY(-8vh)}
.home-page .about{margin-top:-10svh;padding-top:.65rem}
.home-page .home-method-heading{margin:0 0 .42rem;font-size:1.35rem;line-height:1.2;letter-spacing:.16em;text-transform:none}
.site main{text-shadow:0 .1rem .68rem rgba(0,0,0,.4),0 .34rem 1.5rem rgba(0,0,0,.16)}
.site main :where([class*="card"],[class*="tier"],[class*="family"],[class*="story"],[class*="file"],[class*="surface"],[class*="panel"],[class*="dialog"],[class*="glass"],.service-chooser__choice,.method-orientation__column,.hair-book,.method-film,.press,button,[role="button"],[role="dialog"]){text-shadow:none}
.home-page .home-wall-quote{filter:drop-shadow(0 .12rem .42rem rgba(0,0,0,.62)) drop-shadow(0 .34rem .95rem rgba(0,0,0,.28))}
.home-page .home-signoff-stamp img{filter:drop-shadow(0 .12rem .44rem rgba(0,0,0,.58)) drop-shadow(0 .34rem 1rem rgba(0,0,0,.25))}
.home-page .home-wall-hero__lockup:before{content:none}
.home-page :is(.about,.band){isolation:isolate}
.home-page :is(.about,.band):before{content:"";position:absolute;z-index:-1;inset:-1.4rem max(-3vw,-2.5rem);pointer-events:none;border:0;border-radius:48%;outline:0;background:rgba(0,0,0,.025);-webkit-backdrop-filter:blur(3.5px);backdrop-filter:blur(3.5px);-webkit-mask-image:radial-gradient(ellipse at center,#000 0%,rgba(0,0,0,.82) 58%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 0%,rgba(0,0,0,.82) 58%,transparent 100%);box-shadow:none}
.home-page .triad{margin:0;display:grid;gap:.08rem;white-space:normal}
.home-page .triad .triad__phrase{display:block;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,5.3vw,5.1rem);font-weight:400;line-height:.9;letter-spacing:-.05em}
.home-page .about>.method-film{margin:.72rem auto!important}
.home-page .about>.method-film .method-film-trigger{min-height:2.25rem;padding:.05rem .4rem .05rem .1rem;gap:.38rem;font-size:.4rem;letter-spacing:.1em}
.home-page .about>.method-film .method-film-trigger__play{width:2.05rem;height:2.05rem}
.home-page .about>.bio{margin-top:0}

@media(max-width:799px){
  .home-page,.home-page .site,.home-page main{width:100%;max-width:100vw;min-width:0;overflow-x:clip}
  .home-page .home-wall-hero{width:100%;max-width:100vw;min-width:0;box-sizing:border-box;min-height:78svh;place-items:center}
  .home-page .home-wall-hero__lockup{width:calc(100% - 2rem);max-width:23rem;min-width:0;margin-inline:auto;transform:translateY(-18svh)}
  .home-page .home-wall-quote{width:100%;max-width:100%;height:auto;margin-inline:auto;object-fit:contain}
  .home-page .about{width:100%;max-width:100vw;min-width:0;box-sizing:border-box;margin-top:-31svh;padding:.45rem .75rem 0;overflow-x:clip}
  .home-page :is(.about,.band):before{inset:-.85rem -.45rem;border-radius:42%;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
  .home-page .home-method-heading{margin-bottom:.34rem;font-size:1rem;letter-spacing:.13em}
  .home-page .triad{width:100%;max-width:100%;min-width:0;margin-inline:auto;gap:.05rem}
  .home-page .triad .triad__phrase{max-width:100%;font-size:clamp(2rem,10vw,3.3rem);line-height:.9;letter-spacing:-.045em;white-space:normal}
  .home-page .about>.method-film{margin:.6rem auto!important}
  .home-page .about>.method-film .method-film-trigger{font-size:.36rem;letter-spacing:.08em}
  .home-page .about>.method-film .method-film-trigger__play{width:1.9rem;height:1.9rem}
}

/* Booking is one very sheer glass file with two rounded folder tabs. */
.booking-route-page .booking-folder-tabs{width:min(92%,74rem);margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;position:relative;z-index:3}
.booking-route-page .booking-folder-tab{min-height:3.45rem;padding:.78rem 1rem .68rem;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.26);border-bottom-color:rgba(255,255,255,.42);border-radius:.9rem .9rem 0 0;color:rgba(255,255,255,.7);background:rgba(5,5,5,.08);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.72rem;letter-spacing:.08em;text-align:center;text-decoration:none;transform:translateY(1px)}
.booking-route-page .booking-folder-tab[aria-selected="true"]{z-index:2;border-color:rgba(255,255,255,.46);border-bottom-color:transparent;color:#fff;background:rgba(5,5,5,.2);text-shadow:0 0 .45rem rgba(255,255,255,.28)}
.booking-route-page .booking-file{margin-top:0;padding-top:clamp(1rem,2.4vw,1.8rem);border:1px solid rgba(255,255,255,.4);border-radius:0 0 1rem 1rem;background:rgba(5,5,5,.14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1.4rem 4rem rgba(0,0,0,.16)}
.booking-route-page .booking-file :where(.services-hub__group,.services-hub__category,.method-offer,.method-gift-card,.service-card-disclosure__content){border-radius:.8rem}
.booking-route-page .services-hub__group--method .method-offer-row{margin:.16rem 0;border-radius:.78rem;background:rgba(255,255,255,.025)}
.booking-route-page .services-hub__group--method .method-offer>summary{padding:.58rem 5.25rem .58rem .7rem;display:block!important;text-align:left}
.booking-route-page .services-hub__group--method .method-offer>summary .service-card-disclosure__title{display:block!important;font-size:.8rem;line-height:1.28;letter-spacing:0}
.booking-route-page .services-hub__group--method .method-offer>summary .method-offer-summary-meta{margin-top:.18rem;display:block;color:rgba(255,255,255,.68);font-size:.56rem;line-height:1.25;font-variant-numeric:tabular-nums;letter-spacing:.055em;white-space:normal}
.booking-route-page .services-hub__group--method .method-offer-row>.method-service-select{top:50%!important;translate:0 -50%}
@media(max-width:620px){
  .booking-route-page .booking-folder-tabs{width:calc(100% - 1.25rem)}
  .booking-route-page .booking-folder-tab{min-height:3.15rem;padding:.64rem .45rem .58rem;border-radius:.72rem .72rem 0 0;font-size:.62rem;letter-spacing:.035em}
  .booking-route-page .booking-file{width:calc(100% - 1.25rem);padding-top:.75rem;border-radius:0 0 .85rem .85rem}
  .booking-route-page .services-hub__group--method .method-offer>summary{padding:.52rem 4rem .52rem .55rem}
  .booking-route-page .services-hub__group--method .method-offer>summary .service-card-disclosure__title{font-size:.72rem}
  .booking-route-page .services-hub__group--method .method-offer>summary .method-offer-summary-meta{font-size:.52rem}
}

/* Final booking-file polish: sheer glass, fixed Add row, no repeated metadata. */
.booking-route-page .booking-folder-tab{background:rgba(5,5,5,.025);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.booking-route-page .booking-folder-tab[aria-selected="true"]{background:rgba(5,5,5,.07)}
.booking-route-page .booking-file{border-color:rgba(255,255,255,.3);background:rgba(5,5,5,.045);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);box-shadow:0 1.4rem 4rem rgba(0,0,0,.08)}
.booking-route-page .booking-file>.services-hub__group{background:rgba(5,5,5,.018);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.booking-route-page .services-hub__group--method .method-offer-row{background:rgba(255,255,255,.012)}
.booking-route-page .services-hub__group--method .method-offer>summary{min-height:44px;padding:.58rem 5.25rem .58rem .7rem}
.booking-route-page .services-hub__group--method .method-offer-row>.method-service-select{top:.42rem!important;translate:none!important}
.booking-route-page .services-hub__group--method .method-card__detail>.meta{margin:.15rem 0 .4rem;font-size:.54rem;line-height:1.3}
.booking-route-page .services-hub__group--method .method-card__detail>.meta{display:none}
.booking-route-page .services-hub__group--method .method-offer-summary-meta[data-starting-price="true"]::after,
.booking-route-page :is(#hair-services,#color-services) .service-price[data-starting-price="true"]::after{content:"↑";margin-left:.24em;display:inline-block;font-size:.72em;line-height:1;vertical-align:.16em}
.booking-route-page .salon-pricing-note{width:min(100%,58rem);margin:.3rem auto 0;display:block;color:rgba(255,255,255,.72);font-size:.58rem;line-height:1.5;letter-spacing:.025em;text-align:left}
.booking-route-page .services-hub__group--method .method-booking-minimum{margin:.12rem 0 .48rem;color:rgba(255,255,255,.72);font-size:.58rem;line-height:1.5;letter-spacing:.025em}
.booking-route-page .services-hub__group--method .method-intake-notice{margin:.12rem 0 .58rem;color:rgba(255,255,255,.76);font-size:.58rem;line-height:1.5;letter-spacing:.02em}
.booking-route-page .services-hub__group--method .method-card__detail{padding:.2rem .7rem .7rem;font-size:.68rem;line-height:1.55}
@media(min-width:621px){
  .booking-route-page #salon-appointments .services-hub__salon-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:1.1rem!important}
  .booking-route-page #salon-appointments .services-hub__category{width:min(100%,58rem);min-width:0;margin-inline:auto!important;padding:1.15rem 0!important}
  .booking-route-page #salon-appointments .services-hub__rows{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.38rem 1.5rem!important}
  .booking-route-page #salon-appointments .services-hub__rows .hair-service-choice{width:100%;min-width:0;grid-template-columns:minmax(0,1fr) max-content!important;column-gap:.55rem!important}
  .booking-route-page #salon-appointments .services-hub__rows .service-name{font-size:.84rem;line-height:1.35}
  .booking-route-page #salon-appointments .services-hub__rows .service-price{margin-top:.12rem;font-size:.58rem}
  .booking-route-page .services-hub__group--method .private-style-foundations__grid{width:min(100%,58rem);margin:0 auto;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.55rem 1rem!important}
  .booking-route-page .services-hub__group--method .services-hub__heading--method-family{width:min(100%,58rem);margin:0 auto .48rem}
  .booking-route-page .services-hub__group--method .services-hub__heading--method-family h2{max-width:none;font:300 clamp(1.35rem,3vw,2.2rem)/1.08 Poppins,"Century Gothic",Helvetica,sans-serif;letter-spacing:0}
  .booking-route-page .services-hub__group--method .method-offer-row{width:100%;min-width:0;margin:0}
  .booking-route-page .services-hub__group--method .method-offer>summary{padding-left:0}
  .booking-route-page .services-hub__group--method .method-offer>summary .service-card-disclosure__title{font-size:1.02rem;line-height:1.25}
  .booking-route-page .services-hub__group--method .method-offer>summary .method-offer-summary-meta{margin-top:.25rem;font-size:.65rem}
}
.booking-route-page .services-hub__group--method .private-style-foundations__grid{margin-top:0}

/* Appointment Book calendar stays rounded and does not redraw its border on hover. */
.page-bar .appointment-nav-calendar>.appointment-nav-cart{border-radius:999px}
.page-bar .appointment-nav-cart:hover .appointment-nav-cart__icon,
.page-bar .appointment-nav-cart[data-proximity="true"] .appointment-nav-cart__icon,
.page-bar .appointment-nav-cart:focus-visible .appointment-nav-cart__icon,
.page-bar .appointment-nav-cart[aria-expanded="true"] .appointment-nav-cart__icon{filter:none!important}
@media(max-width:620px){
  .booking-route-page .services-hub__group--method .method-offer>summary{padding:.52rem 4rem .52rem .55rem}
  .booking-route-page .services-hub__group--method .method-offer-row>.method-service-select{top:.34rem!important}
  .booking-route-page .services-hub__group--method .method-card__detail{padding:.15rem .55rem .62rem;font-size:.64rem}
}

/* Booking surfaces use one visibly rounded corner language. */
.booking-route-page .booking-file{border-radius:0 0 1.15rem 1.15rem}
.booking-route-page .services-hub__group--method .method-offer-row,
.booking-route-page .services-hub__group--method .method-offer-row>.method-offer,
.booking-route-page .services-hub__group--method .method-offer[open],
.booking-route-page .services-hub__group--method .method-card__detail,
.booking-route-page .services-hub__group--method .method-gift-card{border-radius:.95rem!important}
.booking-route-page .services-hub__group--method .method-offer-row>.method-offer[open]{overflow:hidden}
.booking-route-page .services-hub__group--method .method-consultation-request{border-radius:.8rem}

/* Booking review: keep the folder outline without a visible glass boundary. */
.booking-route-page .booking-folder-shell{
  width:min(92%,74rem);
  margin:0 auto;
  position:relative;
  z-index:3;
  border-radius:.9rem .9rem 1.15rem 1.15rem;
  background:rgba(5,5,5,.035);
  -webkit-backdrop-filter:blur(3px);
  backdrop-filter:blur(3px);
}
.booking-route-page .booking-folder-shell>.booking-folder-tabs,
.booking-route-page .booking-folder-shell>.booking-file{
  width:100%;
  margin-inline:0;
}
.booking-route-page .booking-folder-tab,
.booking-route-page .booking-folder-tab[aria-selected="true"]{
  background:transparent;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}

/* Keep the file outline; do not place a visible tint over the wall. */
.booking-route-page .booking-file{
  position:relative;
  isolation:isolate;
  border-color:rgba(255,255,255,.3);
  background:transparent;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  box-shadow:none;
}
.booking-route-page .booking-file::before{
  content:none;
}
.booking-route-page .booking-file>*{position:relative;z-index:1}
.booking-route-page .booking-file>.services-hub__group,
.booking-route-page .services-hub__group--method .method-offer-row{
  background:transparent;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}

@media(min-width:800px){
  /* Cut & Style begins at the same vertical position as Image & Home. */
  .booking-route-page #salon-appointments .services-hub__category:first-child{padding-top:0!important}

  /* A quiet reading guide keeps Add in place without boxing the service row. */
  .booking-route-page #salon-appointments .services-hub__rows .hair-service-choice{
    grid-template-columns:minmax(0,max-content) minmax(.9rem,1fr) max-content!important;
  }
  .booking-route-page #salon-appointments .hair-service-choice::before{
    content:"";
    min-width:.9rem;
    grid-column:2;
    grid-row:1;
    align-self:center;
    height:1px;
    border:0;
    background:linear-gradient(90deg,rgba(255,255,255,.2),rgba(255,255,255,.34),rgba(255,255,255,.2));
  }
  .booking-route-page #salon-appointments .hair-service-choice .service-name{grid-column:1;grid-row:1}
  .booking-route-page #salon-appointments .hair-service-choice b{grid-column:3;grid-row:1}
  .booking-route-page .services-hub__group--method .method-offer>summary{
    position:relative;
    display:grid!important;
    grid-template-columns:minmax(0,max-content) minmax(1.25rem,1fr);
    grid-template-rows:auto auto;
    column-gap:.6rem;
    align-items:center;
  }
  .booking-route-page .services-hub__group--method .method-offer>summary .service-card-disclosure__title{
    grid-column:1;
    grid-row:1;
  }
  .booking-route-page .services-hub__group--method .method-offer>summary .method-offer-summary-meta{
    grid-column:1;
    grid-row:2;
  }
  .booking-route-page .services-hub__group--method .method-offer>summary::after{
    content:"";
    position:static;
    grid-column:2;
    grid-row:1 / span 2;
    width:100%;
    height:1px;
    align-self:center;
    pointer-events:none;
    background:linear-gradient(90deg,rgba(255,255,255,.2),rgba(255,255,255,.34),rgba(255,255,255,.2));
  }
}

/* Mobile booking containment: keep the approved desktop composition unchanged. */
@media(max-width:620px){
  .booking-route-page,
  .booking-route-page .site,
  .booking-route-page main{
    width:100%;
    max-width:100vw;
    min-width:0;
    overflow-x:clip;
  }
  .booking-route-page .booking-folder-shell{
    width:calc(100% - 1rem);
    max-width:calc(100vw - 1rem);
    min-width:0;
    margin-inline:auto;
    box-sizing:border-box;
  }
  .booking-route-page .booking-folder-shell>.booking-folder-tabs,
  .booking-route-page .booking-folder-shell>.booking-file,
  .booking-route-page .booking-folder-tab,
  .booking-route-page .booking-file>.services-hub__group,
  .booking-route-page .services-hub__group--method .private-style-foundations__grid,
  .booking-route-page .services-hub__group--method .method-offer-row,
  .booking-route-page .services-hub__group--method .method-offer{
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  .booking-route-page .booking-folder-tab{
    overflow-wrap:anywhere;
  }
  .booking-route-page .booking-file{
    padding-top:.72rem;
  }
  .booking-route-page .booking-file>.services-hub__group--method{
    padding:.78rem .62rem 1rem;
  }
  .booking-route-page .services-hub__group--method .services-hub__heading--method-family{
    width:100%;
    max-width:100%;
    margin:0 0 .48rem;
    padding:0 .12rem;
    box-sizing:border-box;
    text-align:left;
  }
  .booking-route-page .services-hub__group--method .services-hub__heading--method-family h2{
    max-width:none;
    margin:0;
    font:300 1.42rem/1.08 Poppins,"Century Gothic",Helvetica,sans-serif;
    letter-spacing:0;
    overflow-wrap:normal;
  }
  .booking-route-page .services-hub__group--method .method-offer-row{
    margin:.08rem 0;
  }
  .booking-route-page .services-hub__group--method .method-offer>summary{
    width:100%;
    min-width:0;
    padding:.52rem 3.65rem .52rem .15rem;
    display:grid!important;
    grid-template-columns:minmax(0,max-content) minmax(.65rem,1fr);
    grid-template-rows:auto auto;
    column-gap:.42rem;
    align-items:center;
    box-sizing:border-box;
  }
  .booking-route-page .services-hub__group--method .method-offer>summary .service-card-disclosure__title{
    grid-column:1;
    grid-row:1;
    font-size:.76rem;
    line-height:1.28;
  }
  .booking-route-page .services-hub__group--method .method-offer>summary .method-offer-summary-meta{
    grid-column:1;
    grid-row:2;
    font-size:.52rem;
    line-height:1.25;
  }
  .booking-route-page .services-hub__group--method .method-offer>summary::after{
    content:"";
    position:static;
    grid-column:2;
    grid-row:1 / span 2;
    width:100%;
    height:1px;
    align-self:center;
    pointer-events:none;
    background:linear-gradient(90deg,rgba(255,255,255,.18),rgba(255,255,255,.34),rgba(255,255,255,.18));
  }
  .booking-route-page .services-hub__group--method .method-offer-row>.method-service-select{
    top:.34rem!important;
    right:.12rem!important;
    left:auto!important;
    max-width:3.2rem;
  }
  .booking-route-page .services-hub__group--method .method-offer-row>.method-service-select>b{
    min-width:2.7rem;
    padding-inline:.38rem;
    box-sizing:border-box;
  }
  .booking-route-page .services-hub__group--method .method-card__detail{
    max-width:100%;
    min-width:0;
    padding:.15rem .15rem .62rem;
    box-sizing:border-box;
    overflow-wrap:anywhere;
  }
  .booking-route-page .services-hub__group--method>.services-hub__boundary{
    max-width:100%;
    padding-inline:.12rem;
    box-sizing:border-box;
    overflow-wrap:anywhere;
  }
}
