.memberships-page .eyebrow{font-size:.875rem;letter-spacing:1.7px}
.memberships-page .button{font-size:1rem;min-height:52px}
.memberships-hero{padding:22px 0 48px;background:var(--brand-purple);color:var(--brand-cream)}
.memberships-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;font-size:.9375rem;color:#e2d3e8;margin-bottom:28px}
.memberships-breadcrumbs a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.memberships-hero h1{font:400 clamp(2.9rem,5.5vw,4.75rem)/1.06 var(--display);letter-spacing:-.6px;max-width:920px}
.memberships-hero h1 em{color:var(--gold)}
.memberships-hero h1+p{max-width:740px;margin-top:22px;font-size:1.0625rem;line-height:1.8;color:#e9dfec}
.memberships-hero-facts{display:flex;flex-wrap:wrap;gap:12px 30px;margin-top:28px;font-size:1rem;color:var(--gold)}
.membership-hero-bonus-link{margin-top:26px;max-width:100%;text-align:center}
.membership-return-offer{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:50px;padding:54px 0 46px;border-bottom:1px solid var(--line);scroll-margin-top:20px}
.membership-return-story,.membership-loyalty-calculator{min-width:0}
.membership-return-story h2{font-size:clamp(2.5rem,4.1vw,3.7rem);line-height:1.12;letter-spacing:-.7px}
.membership-return-intro{font-size:1.0625rem;line-height:1.85;margin-top:22px;max-width:620px}
.membership-welcome-rewards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}
.membership-welcome-rewards>div{padding:18px 0;border-top:2px solid #8c6b9b}
.membership-welcome-rewards strong{display:block;font:500 clamp(2.3rem,3.5vw,3.15rem)/1.2 var(--display);color:var(--brand-purple);white-space:nowrap}
.membership-welcome-rewards span{display:block;font-size:1rem;line-height:1.7;margin-top:8px;color:#625964}
.membership-reward-use,.membership-start-small{font-size:1rem;line-height:1.85;margin-top:16px}
.membership-start-small{padding:20px 24px;background:#f0ebe3;border-left:3px solid #bb9c66}
.membership-start-small strong{font-weight:600}
.membership-cashback-rules{border-block:1px solid var(--line);margin-top:24px;font-size:.9375rem;line-height:1.8;color:#625964}
.membership-cashback-rules summary{min-height:54px;padding:15px 0;cursor:pointer;color:var(--ink)}
.membership-cashback-rules p{margin-bottom:15px}
.membership-cashback-rules a,.after-visit-page .membership-help-grid a{text-decoration:underline;text-underline-offset:4px}
.after-visit-page #loyalty-title{scroll-margin-top:24px}
.membership-return-link{display:inline-flex;align-items:center;min-height:48px;margin-top:14px;font-size:1rem;text-decoration:underline;text-underline-offset:4px}
.membership-loyalty-calculator{padding:32px;background:var(--brand-purple);color:var(--brand-cream);align-self:start;border:1px solid #53316b}
.membership-loyalty-calculator .eyebrow{color:var(--gold);margin-bottom:16px}
.membership-loyalty-calculator h3{font:400 clamp(2.3rem,3.5vw,3rem)/1.12 var(--display)}
.membership-loyalty-intro,.membership-loyalty-noscript{font-size:1rem;line-height:1.8;margin-top:20px;color:#e3d7e9}
.membership-loyalty-fields{display:grid;gap:20px;margin-top:24px}
.membership-loyalty-fields label{display:block;font-size:1rem;font-weight:500;margin-bottom:8px}
.membership-loyalty-fields select,.membership-loyalty-fields input{width:100%;min-width:0;max-width:100%;min-height:52px;padding:12px 14px;background:#fffdf9;color:var(--ink);border:1px solid #b5a5bc;border-radius:2px;font:400 1rem/1.65 var(--sans)}
.membership-loyalty-fields select{padding-right:30px}
.membership-loyalty-fields input:focus-visible,.membership-loyalty-fields select:focus-visible{outline-color:var(--gold)}
.membership-loyalty-fields input[aria-invalid="true"]{border-color:#ffb2ae;outline:2px solid #ffb2ae}
.membership-loyalty-field-help,#loyalty-error{font-size:.875rem;line-height:1.7;margin-top:8px;color:#dacee0}
#loyalty-error{color:#ffd3cb}
.membership-loyalty-quote{margin-top:26px;padding-top:22px;border-top:1px solid #785986}
#loyalty-plan-name{font-size:1rem;line-height:1.7;font-weight:500}
.membership-loyalty-plan-conditions{font-size:1rem;line-height:1.75;margin-top:12px;color:#e3d7e9}
.membership-loyalty-quote dl{margin:14px 0 0;font-size:.9375rem;line-height:1.7}
.membership-loyalty-quote dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:7px 0}
.membership-loyalty-quote dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}
.membership-loyalty-pay-label{margin-top:20px;font-size:1rem;color:#e3d7e9}
#loyalty-payment{display:block;margin-top:5px;font:500 clamp(2.7rem,4vw,3.7rem)/1.2 var(--display);color:var(--gold);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
#loyalty-remainder{margin-top:10px;font-size:.9375rem;line-height:1.7;color:#e3d7e9}
.membership-loyalty-calculator>.button{width:100%;margin-top:24px;text-align:center;min-height:54px}
.membership-loyalty-plan-link{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:.9375rem;line-height:1.7;text-align:center;margin-top:6px;text-decoration:underline;text-underline-offset:4px}
.membership-loyalty-note{font-size:.875rem;line-height:1.75;margin-top:12px;color:#dacee0}
.membership-contact-intro{font-size:1rem;line-height:1.85;max-width:770px;margin-top:22px}
.membership-cashback{padding:46px 0 10px;scroll-margin-top:24px}
.membership-cashback h2{font-size:clamp(2.3rem,4.4vw,3.5rem);line-height:1.1;letter-spacing:-.6px}
.membership-cashback-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}
.membership-cashback-grid article{padding:28px;background:#efe8f2;border-top:2px solid #8c6b9b;min-width:0}
.membership-cashback-number{font:500 clamp(2.8rem,4vw,3.6rem)/1.15 var(--display);color:var(--brand-purple)}
.membership-cashback-grid h3{font:600 1.125rem/1.6 var(--sans);margin-top:16px}
.membership-cashback-grid h3+p{font-size:1rem;line-height:1.85;margin-top:12px}
.membership-cashback-exclusions{font-size:.9375rem;line-height:1.8;margin-top:16px;color:#625964}
.membership-bonus-overview{padding:26px;margin-top:32px;background:#f0ebe3;border-left:3px solid #bb9c66;scroll-margin-top:24px}
.membership-bonus-overview h2{font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.2}
.membership-bonus-overview p:not(.eyebrow){font-size:1rem;line-height:1.85;margin-top:14px}
.membership-bonus-overview a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.membership-cashback{padding-top:34px}.membership-cashback-grid{grid-template-columns:1fr;gap:16px}.membership-cashback-grid article{padding:24px}}
.memberships-main{padding-bottom:64px}
.membership-guide{padding-top:46px}
.membership-guide h2,.membership-help h2{font-size:clamp(2.3rem,4.4vw,3.5rem);line-height:1.1;letter-spacing:-.6px}
.membership-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:26px}
.membership-guide-grid a{display:flex;flex-direction:column;gap:9px;padding:22px 24px;border:1px solid #c6b9c8;background:#fffdf9;min-width:0}
.membership-guide-grid a:hover{border-color:var(--brand-purple);background:#f4eef6}
.membership-guide-grid strong{font-size:1.0625rem;font-weight:600;line-height:1.6;color:var(--brand-purple)}
.membership-guide-grid span{font-size:1rem;line-height:1.75;color:#625964}
.membership-calculation-note{margin-top:32px;padding:22px 26px;border-left:3px solid #bb9c66;background:#f0ebe3;font-size:1rem;line-height:1.8}
.membership-calculation-note strong{font-size:1.0625rem;font-weight:600}
.membership-calculation-note p{margin:7px 0}
.membership-calculation-note a,.membership-bonus-details a,.membership-terms a{text-decoration:underline;text-underline-offset:4px}
.membership-group{padding-top:62px;scroll-margin-top:18px}
.membership-group-heading{max-width:850px;margin-bottom:22px}
.membership-group-heading .eyebrow{margin-bottom:12px}
.membership-group-heading h2{font-size:clamp(2.7rem,4.5vw,3.8rem);line-height:1.1;letter-spacing:-.7px}
.membership-group-heading h2+p{font-size:1rem;line-height:1.85;margin-top:18px;color:#625964}
.membership-baseline{padding:20px 0;border-top:1px solid var(--line);font-size:.9375rem;line-height:1.8;color:#625964}
.membership-baseline strong{font-weight:500;color:var(--ink)}
.membership-selector{margin-top:14px;max-width:650px}
.membership-selector label{display:block;font-size:1rem;font-weight:500;color:var(--ink);margin-bottom:8px}
.membership-selector select{font:400 1rem/1.6 var(--sans);color:var(--ink);background:#fffdf9;border:1px solid #99899d;border-radius:2px;padding:12px 34px 12px 14px;min-height:52px;width:100%;max-width:100%}
.membership-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.membership-card-grid-small{grid-template-columns:repeat(2,minmax(0,1fr))}
.membership-card{display:flex;flex-direction:column;border:1px solid #c9becb;background:#fffdf9;padding:24px 20px;min-width:0;scroll-margin-top:20px}
.membership-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;font-size:.875rem;line-height:1.5;color:#706275;margin-bottom:20px}
.membership-card-top span:last-child{white-space:nowrap}
.membership-card h3{font:400 2.5rem/1.15 var(--display);color:var(--brand-purple)}
.membership-plan-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0 0}
.membership-plan-switch button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:68px;padding:10px 8px;border:1px solid #b5a5bc;background:transparent;font-size:1rem;line-height:1.5}
.membership-plan-switch button strong{font-weight:600}.membership-plan-switch button span{font-size:.875rem}
.membership-plan-switch button[aria-pressed="true"]{background:var(--brand-purple);border-color:var(--brand-purple);color:var(--brand-cream)}
.membership-plan-panel{display:flex;flex-direction:column;flex:1;min-width:0;scroll-margin-top:20px}
.membership-panel-title{font:400 1.5rem/1.4 var(--display);margin-top:18px}
.membership-choice[data-enhanced] .membership-panel-title{display:none}
.membership-choice:not([data-enhanced]) .membership-plan-panel+.membership-plan-panel{border-top:1px solid var(--line);margin-top:20px;padding-top:10px}
.membership-card-price{font-size:1.6rem;line-height:1.4;font-weight:600;color:var(--brand-purple);margin-top:17px;font-variant-numeric:tabular-nums}
.membership-effective-hour{display:flex;flex-direction:column;gap:4px;margin-top:20px;color:var(--brand-purple)}
.membership-effective-hour strong{font:500 2.5rem/1.15 var(--display);font-variant-numeric:tabular-nums}
.membership-effective-hour span{font-size:1rem;line-height:1.6}
.membership-effective-note{font-size:.875rem;line-height:1.7;color:#625964;margin-top:8px}
.membership-purchase-price span{display:block;font-size:.9375rem;font-weight:400;line-height:1.6;color:#625964;margin-bottom:4px}
.membership-unit{font-size:.9375rem;line-height:1.7;margin-top:6px;color:#625964}
.membership-for{font-size:1rem;line-height:1.75;padding:20px 0;flex-grow:1}
.membership-comparison{margin:0;border-top:1px solid var(--line);font-size:.9375rem}
.membership-comparison>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:12px 0}
.membership-comparison dt{line-height:1.5}
.membership-comparison dd{margin:0;white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}
.membership-saving{border-top:1px solid var(--line);color:var(--brand-purple)}
.membership-saving dd{display:flex;align-items:flex-end;flex-direction:column;gap:3px}
.membership-saving strong{font-size:1.125rem;font-weight:600}
.membership-saving [data-percent]{font-size:.875rem;background:#f2e7d4;padding:1px 7px;border-radius:2px;color:#5d4725}
.membership-cash,.membership-bonus{border-top:1px solid var(--line)}
.membership-bonus dd{display:flex;flex-direction:column;gap:3px}
.membership-bonus strong{font-size:1rem;font-weight:600}
.membership-bonus [data-bonus-points]{font-size:.875rem;color:#706275}
.membership-bonus-calculation{font-size:1rem;line-height:1.8;margin:0 0 24px;padding:20px 24px;background:#f0ebe3;border-left:3px solid #bb9c66}
.membership-bonus-calculation p+p{margin-top:10px}
.membership-bonus-calculation [data-bonus-program-note]{font-weight:500;color:var(--brand-purple)}
.membership-example{font-size:.875rem;line-height:1.7;color:#706275;margin-top:9px}
.membership-group-bottom{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:22px;font-size:.9375rem;line-height:1.8;color:#625964}
.membership-group-bottom p{max-width:800px}
.membership-group-bottom .button{flex-shrink:0}
.membership-help{padding-top:70px}
.membership-help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:28px}
.membership-help-grid h3{font-family:var(--sans);font-size:1.125rem;line-height:1.5;font-weight:600}
.membership-help-grid p{font-size:1rem;line-height:1.85;margin-top:12px;color:#625964}
.membership-bonus-details{margin-top:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 4px}
.membership-bonus-details summary{font-size:1rem;padding:17px 0;cursor:pointer;min-height:54px}
.membership-bonus-details p{font-size:1rem;line-height:1.85;margin:0 0 18px;max-width:920px;color:#625964}
.membership-terms{font-size:.9375rem;line-height:1.85;margin-top:24px;max-width:1000px;color:#625964}
.membership-refund-note{font-size:.875rem;line-height:1.75;margin-top:12px;max-width:1000px;color:#625964}
.membership-refund-note a{text-decoration:underline;text-underline-offset:4px}
.membership-contact{padding:58px 0;background:#e8e0eb;scroll-margin-top:20px}
.membership-contact h2{font-size:clamp(2.6rem,4.5vw,3.7rem);line-height:1.1;letter-spacing:-.6px}
.membership-contact h2 em{color:#705777}
.membership-salons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:30px}
.membership-salon{padding-top:22px;border-top:1px solid #bcaac4}
.membership-salon h3{font:500 2rem/1.3 var(--display)}
.membership-salon p{font-size:1rem;line-height:1.85;margin-top:8px}
.membership-salon>a{display:inline-flex;align-items:center;min-height:50px;font-size:1.125rem;font-weight:600;white-space:nowrap}
.membership-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1150px){.membership-group-bottom{align-items:flex-start;flex-direction:column;gap:18px}.membership-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.membership-card-grid{grid-template-columns:1fr}.membership-card-grid-small{grid-template-columns:repeat(2,minmax(0,1fr))}.membership-return-offer{grid-template-columns:1fr;gap:30px}.membership-loyalty-calculator{max-width:650px;width:100%}}
@media(max-width:800px){.membership-help-grid,.membership-salons{grid-template-columns:1fr;gap:26px}.membership-card{padding:24px}.membership-guide-grid a{padding:20px}}
@media(max-width:600px){.memberships-hero{padding:12px 0 34px}.memberships-breadcrumbs{margin-bottom:22px}.memberships-hero h1{font-size:clamp(2.65rem,10.7vw,3.6rem)}.memberships-hero h1+p{font-size:1rem}.memberships-hero-facts{display:grid;gap:7px;margin-top:22px}.memberships-main{padding-bottom:42px}.membership-guide{padding-top:34px}.membership-guide-grid{grid-template-columns:1fr;gap:10px}.membership-guide-grid a{padding:17px 20px;gap:5px}.membership-calculation-note{padding:18px 20px;margin-top:24px}.membership-group{padding-top:44px}.membership-group-heading h2{font-size:2.65rem}.membership-card-grid,.membership-card-grid-small{grid-template-columns:1fr;gap:15px}.membership-card-top{margin-bottom:15px}.membership-card h3{font-size:2.6rem}.membership-card-price{font-size:1.8rem}.membership-for{padding:18px 0}.membership-saving strong{font-size:1.25rem}.membership-saving dd{flex-direction:row;align-items:center;gap:9px}.membership-group-bottom .button{width:100%}.membership-help{padding-top:46px}.membership-contact{padding:40px 0}.membership-selector select{padding-left:10px}}
@media(max-width:600px){.membership-return-offer{padding:34px 0;gap:24px}.membership-return-intro{font-size:1rem}.membership-welcome-rewards{gap:14px;margin-top:22px}.membership-welcome-rewards strong{font-size:clamp(2rem,8vw,2.4rem)}.membership-start-small{padding:18px 20px}.membership-loyalty-calculator{padding:25px 20px}.membership-hero-bonus-link{width:100%;margin-top:22px}}
