:root{--cream:#f7f2eb;--sand:#ece2d5;--sage:#8a9a82;--gold:#b08f5e;--clay:#c8a08c;--mist:var(--cream);--linen:#fbf8f3;--basalt:#2f372e;--basalt-soft:#6b7368;--eucalyptus:#4d5b4a;--eucalyptus-deep:#3f4c3d;--eucalyptus-wash:#e3e8de;--shell:var(--sand);--umber:#8a6a3e;--line:#ddd4c7;--line-soft:#2f372e1f;--danger:#973a2d;--font-display:"Cormorant Garamond",Georgia,"Times New Roman",serif;--font-body:"Jost",system-ui,-apple-system,"Segoe UI",sans-serif;--pebble-a:47% 53% 44% 56% / 56% 46% 54% 44%;--pebble-b:58% 42% 51% 49% / 45% 55% 45% 55%;--pebble-c:52% 48% 46% 54% / 60% 52% 48% 40%;--page:min(1160px,100% - 2.5rem);--radius:22px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px)}*,:before,:after{box-sizing:inherit}html{-webkit-text-size-adjust:100%;scroll-padding-top:env(safe-area-inset-top,0px)}body{background:var(--cream);min-height:100vh;color:var(--basalt);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;font-weight:300;line-height:1.65;overflow-x:hidden}img{max-width:100%;display:block}a{color:var(--eucalyptus-deep);text-underline-offset:.2em;text-decoration-thickness:1px}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}h1,h2,h3{font-family:var(--font-display);color:var(--basalt);text-wrap:balance;margin:0;font-weight:500}h1{letter-spacing:-.015em;font-size:clamp(2.7rem,6.4vw,4.8rem);line-height:1.02}h2{letter-spacing:-.01em;font-size:clamp(2rem,3.8vw,2.9rem);line-height:1.12}h3{font-size:1.5rem;font-weight:500;line-height:1.2}h1 em,h2 em{color:var(--eucalyptus);font-style:italic;font-weight:400}p{margin:0 0 1em}.page{width:var(--page);margin-inline:auto}.lede{color:var(--basalt-soft);max-width:34rem;font-size:1.2rem;line-height:1.6}.muted{color:var(--basalt-soft)}.small{font-size:.9rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.btn{background:var(--eucalyptus);color:#fff;min-height:48px;font:400 1rem/1.2 var(--font-body);letter-spacing:.03em;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.6rem;text-decoration:none;transition:background-color .25s,transform .25s,box-shadow .25s;display:inline-flex;box-shadow:0 10px 30px -12px #4d5b4a8c}.btn:hover{background:var(--eucalyptus-deep);transform:translateY(-1px);box-shadow:0 14px 34px -12px #4d5b4a99}.btn[disabled]{opacity:.55;cursor:not-allowed}.btn-secondary{color:var(--eucalyptus-deep);box-shadow:inset 0 0 0 1px var(--line-soft);background:#fbf8f3b3}.btn-secondary:hover{background:var(--eucalyptus);color:var(--linen);box-shadow:inset 0 0 0 1px var(--eucalyptus)}.btn-danger{background:var(--danger)}.btn-danger:hover{background:#7d2f24}.link-button{font:inherit;color:var(--eucalyptus-deep);text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;display:flex}.preview-banner{background:var(--shell);color:var(--basalt);text-align:center;padding:.5rem 1rem;font-size:.9rem}.site-header{width:var(--page);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;margin-inline:auto;padding:1.25rem 0;display:flex}.brand{color:var(--basalt);align-items:center;gap:.8rem;text-decoration:none;display:inline-flex}.brand-mark{flex:none;width:clamp(40px,2rem + 1vw,48px);height:auto}.wordmark{font-family:var(--font-display);letter-spacing:.01em;font-size:clamp(1.85rem,1.25rem + 1.5vw,2.5rem);font-weight:500;line-height:1}.wordmark em{color:var(--gold);font-style:italic;font-weight:400}.site-nav{flex-wrap:wrap;align-items:center;gap:.25rem 1.25rem;display:flex}.site-nav a:not(.btn){color:var(--basalt);border-bottom:1px solid #0000;padding:.35rem 0 .2rem;text-decoration:none;transition:border-color .2s,color .2s}.site-nav a:not(.btn):hover{color:var(--eucalyptus);border-color:var(--clay)}.site-nav .btn{min-height:42px;padding:.55rem 1.2rem}.site-footer{background:var(--eucalyptus-deep);color:#dfe5e1;margin-top:6rem;padding:3.5rem 0 2.5rem}.site-footer a{color:#fff}.footer-grid{width:var(--page);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2.5rem;margin-inline:auto;display:grid}.footer-grid h2{color:#fff;margin-bottom:.75rem;font-size:1.6rem}.hours{border-collapse:collapse;width:100%;max-width:300px}.hours td{padding:.2rem 0}.hours td:last-child{text-align:right}.footer-small{width:var(--page);color:#aab5af;margin:2.5rem auto 0;font-size:.85rem}.pebble{border-radius:var(--pebble-a);background:var(--shell);overflow:hidden}.pebble img{object-fit:cover;width:100%;height:100%}.pebble-b{border-radius:var(--pebble-b)}.pebble-c{border-radius:var(--pebble-c)}.hero{width:var(--page);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:3rem;margin:1.5rem auto 0;display:grid}.hero-copy h1{margin-bottom:1.5rem}.hero-copy .lede{margin-bottom:2rem}.hero-figure{margin:0;padding-bottom:2.5rem;position:relative}.hero-figure .pebble-main{aspect-ratio:4/5;animation:1.8s cubic-bezier(.2,.7,.2,1) both settle}.hero-figure .pebble-small{aspect-ratio:1;border:8px solid var(--mist);box-sizing:content-box;width:38%;position:absolute;bottom:0;left:-12%}@keyframes settle{0%{opacity:0;border-radius:50%;transform:scale(.97)}to{border-radius:var(--pebble-a);opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.hero-figure .pebble-main{animation:none}}.section{width:var(--page);margin:6rem auto 0}.section-head{max-width:40rem;margin-bottom:2rem}.section-head h2{margin-bottom:.75rem}.menu{columns:2 22rem;column-gap:1.5rem}.menu-group{break-inside:avoid;border:1px solid var(--line-soft);border-radius:var(--radius);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fbf8f3b8;margin:0 0 1.5rem;padding:1.5rem 1.6rem .8rem}.menu-group h3{border-bottom:1px solid var(--line);margin-bottom:.35rem;padding-bottom:.85rem;font-size:1.7rem}.menu-group ul{margin:0;padding:0;list-style:none}.menu-group li+li{border-top:1px solid var(--line-soft)}.menu-row{color:inherit;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;margin:0 -.6rem;padding:.75rem .6rem;text-decoration:none;display:grid}.menu-row:hover{background:#fff}.menu-row:hover .menu-name{text-underline-offset:.2em;text-decoration:underline}.menu-name{font-weight:400;line-height:1.35;display:block}.menu-duration{color:var(--basalt-soft);margin-top:.1rem;font-size:.9rem;display:block}.menu-price{color:var(--umber);font-variant-numeric:tabular-nums;font-weight:500}.menu-go{width:1.15rem;height:1.15rem;color:var(--eucalyptus);transition:transform .2s}.menu-row:hover .menu-go{transform:translate(3px)}.about{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:4rem;display:grid}.about .pebble{aspect-ratio:1/1.1}.about-copy{max-width:36rem}.about-copy h2{margin-bottom:1.25rem}.steps{counter-reset:step;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;border-top:1px solid var(--gold);padding-top:1rem}.steps li:before{content:counter(step);font-family:var(--font-display);color:var(--gold);margin-bottom:.75rem;font-size:2.8rem;font-style:italic;font-weight:400;line-height:1;display:block}.steps h3{margin-bottom:.4rem}.page-intro{width:var(--page);margin:2.5rem auto 0}.page-intro>*{max-width:44rem}.page-intro h1{margin-bottom:1rem}.category{width:var(--page);margin:5rem auto 0}.category-head{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:3rem;margin-bottom:2.5rem;display:grid}.category-head .pebble{aspect-ratio:16/10}.treatment{border-top:1px solid var(--line);grid-template-columns:112px minmax(0,1fr) auto;align-items:start;gap:1.5rem;padding:1.75rem 0;display:grid}.treatment .pebble{aspect-ratio:1;width:112px}.treatment h3{margin-bottom:.35rem}.treatment-meta{color:var(--basalt-soft);margin-bottom:.6rem;font-size:.95rem}.treatment-meta strong{color:var(--umber);font-weight:500}.treatment p{max-width:38rem;margin:0}.panel{border:1px solid var(--line-soft);border-radius:var(--radius);background:#fbf8f3c7;padding:clamp(1.25rem,3vw,2rem)}.field{gap:.35rem;margin-bottom:1.1rem;display:grid}.field label{font-weight:400}.field .hint{color:var(--basalt-soft);font-size:.9rem}input[type=text],input[type=email],input[type=tel],input[type=password],textarea,select{border:1.5px solid var(--line);width:100%;min-height:48px;color:var(--basalt);font:400 1rem/1.4 var(--font-body);background:#fff;border-radius:12px;padding:.7rem .9rem}textarea{resize:vertical;min-height:110px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--umber)}.check{align-items:flex-start;gap:.75rem;margin:.5rem 0 1.5rem;display:flex}.check input{width:22px;height:22px;accent-color:var(--eucalyptus);flex:none;margin-top:.15rem}.alert{color:#6f2a20;background:#f5e4df;border-radius:12px;margin:0 0 1.25rem;padding:.85rem 1rem}.notice{background:var(--eucalyptus-wash);color:var(--basalt);border-radius:12px;margin:0 0 1.25rem;padding:.85rem 1rem}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.booking-layout{width:var(--page);grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:2.5rem;margin:2rem auto 0;display:grid}.progress{counter-reset:progress;gap:.5rem;margin:0 0 2rem;padding:0;list-style:none;display:flex}.progress li{counter-increment:progress;border-top:3px solid var(--line);color:var(--basalt-soft);flex:1;padding-top:.5rem;font-size:.9rem}.progress li:before{content:counter(progress) ". "}.progress li[aria-current=step]{border-color:var(--eucalyptus);color:var(--basalt);font-weight:500}.progress li.done{border-color:var(--eucalyptus)}.step-title{margin-bottom:1.25rem;font-size:clamp(1.6rem,3vw,2.1rem)}.choice-group{border:0;margin:0 0 1.75rem;padding:0}.choice-group legend{font-family:var(--font-display);margin-bottom:.5rem;font-size:1.45rem;font-weight:500}.choice{cursor:pointer;background:#fbf8f3c7;border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;margin-bottom:.5rem;padding:.9rem 1rem;display:grid;box-shadow:inset 0 0 0 1.5px #0000}.choice:hover{box-shadow:inset 0 0 0 1.5px var(--line)}.choice:has(input:checked){box-shadow:inset 0 0 0 2px var(--eucalyptus);background:#fff}.choice:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}.choice input{width:20px;height:20px;accent-color:var(--eucalyptus)}.choice-name{font-weight:400}.choice-meta{color:var(--basalt-soft);font-size:.9rem;display:block}.choice-price{color:var(--umber);font-weight:500}.date-nav{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.date-strip{scroll-snap-type:x proximity;gap:.5rem;margin-bottom:1.5rem;padding:.25rem .1rem .75rem;display:flex;overflow-x:auto}.date-btn{scroll-snap-align:start;background:var(--linen);width:4.4rem;color:var(--basalt);font:inherit;text-align:center;cursor:pointer;box-shadow:inset 0 0 0 1.5px var(--line);border:0;border-radius:999px;flex:none;padding:.6rem .25rem;line-height:1.25}.date-btn span{display:block}.date-btn .d-day{font-family:var(--font-display);font-size:1.75rem;font-weight:500}.date-btn .d-small{color:var(--basalt-soft);font-size:.8rem}.date-btn[aria-pressed=true]{background:var(--eucalyptus);color:#fff;box-shadow:none}.date-btn[aria-pressed=true] .d-small{color:#e6eee9}.date-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.time-group{margin-bottom:1.25rem}.time-group h3{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--basalt-soft);margin-bottom:.5rem;font-size:.8rem;font-weight:500}.time-grid{grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:.5rem;display:grid}.time-btn{background:var(--linen);min-height:46px;color:var(--basalt);font:400 1rem var(--font-body);cursor:pointer;box-shadow:inset 0 0 0 1.5px var(--line);border:0;border-radius:999px}.time-btn:hover{box-shadow:inset 0 0 0 1.5px var(--eucalyptus)}.time-btn[aria-pressed=true]{background:var(--eucalyptus);color:#fff;box-shadow:none}.summary{position:sticky;top:1.5rem}.summary h2{margin-bottom:1rem;font-size:1.4rem}.summary dl,.booking-details{gap:.75rem;margin:0;display:grid}.summary dt,.booking-details dt{color:var(--basalt-soft);font-size:.85rem}.summary dd,.booking-details dd{margin:0;font-weight:500}.step-actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.empty{background:var(--linen);color:var(--basalt-soft);border-radius:14px;padding:1.25rem}.narrow{width:min(680px,100% - 2.5rem);margin:2.5rem auto 0}.narrow h1{margin-bottom:1rem;font-size:clamp(2.2rem,5vw,3.2rem)}.ref-display{font-family:var(--font-display);letter-spacing:.04em;color:var(--eucalyptus-deep);margin:.25rem 0 1.5rem;font-size:clamp(2rem,7vw,2.8rem);font-weight:500}.booking-details{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1.5rem}.prose{max-width:40rem}.prose h2{margin:2.5rem 0 .75rem;font-size:1.6rem}.prose ul{padding-left:1.2rem}.prose li{margin-bottom:.5rem}@media (max-width:900px){.booking-layout{grid-template-columns:minmax(0,1fr)}.summary{order:-1;position:static}}@media (max-width:820px){.hero{grid-template-columns:minmax(0,1fr);gap:2rem}.hero-figure{width:88%;max-width:440px;margin-left:auto;margin-right:0}.about,.category-head{grid-template-columns:minmax(0,1fr);gap:2rem}.about .pebble{max-width:360px}.steps{grid-template-columns:minmax(0,1fr);gap:1.5rem}.section{margin-top:4.5rem}}@media (max-width:560px){body{font-size:1rem}.site-header{padding:1rem 0 .5rem}.site-nav{flex-wrap:nowrap;justify-content:space-between;gap:.75rem;width:100%;font-size:.95rem}.site-nav .btn{white-space:nowrap;padding:.5rem 1rem}.treatment{grid-template-columns:76px minmax(0,1fr)}.treatment .pebble{width:76px}.treatment .btn{grid-column:2;justify-self:start}.menu-group{padding:1.2rem 1.15rem .6rem}.booking-details{grid-template-columns:minmax(0,1fr)}}.admin{width:var(--page);margin:2.5rem auto 0}.admin-head{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;display:flex}.admin-head h1{margin-bottom:.5rem;font-size:clamp(2.2rem,5vw,3rem)}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.photo-card{background:var(--linen);border:1px solid var(--line-soft);border-radius:var(--radius);overflow:hidden}.photo-thumb{aspect-ratio:4/3;object-fit:cover;background:var(--shell);width:100%}.photo-body{padding:1.1rem 1.25rem 1.35rem}.photo-body h2{margin-bottom:.35rem;font-size:1.25rem}.photo-body .muted{margin-bottom:.4rem}.photo-body label.btn{cursor:pointer}.photo-body .is-busy{opacity:.55;pointer-events:none}.photo-card:has(input:focus-visible) label.btn{outline:2px solid var(--gold);outline-offset:3px}.about-social{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.5rem}.about-social h3{margin-bottom:.9rem;font-size:1.3rem}.follow-cards,.follow-list{margin:0;padding:0;list-style:none;display:grid}.follow-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:.75rem}.follow-card{border-radius:var(--radius);height:100%;box-shadow:inset 0 0 0 1px var(--line-soft);color:var(--basalt);background:#fbf8f3c7;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.9rem;padding:1rem 1rem 1.05rem;text-decoration:none;transition:background-color .2s,box-shadow .2s;display:grid}.follow-card:hover{background:var(--linen);box-shadow:inset 0 0 0 1px var(--eucalyptus)}.follow-icon{border-radius:var(--pebble-b);background:var(--eucalyptus);color:#fff;flex:none;place-items:center;width:2.75rem;height:2.75rem;transition:background-color .2s;display:grid}.follow-icon svg{width:1.4rem;height:1.4rem}.follow-card:hover .follow-icon{background:var(--eucalyptus-deep)}.follow-text{min-width:0;display:grid}.follow-card .follow-name{font-family:var(--font-display);font-size:1.45rem;font-weight:500;line-height:1.2}.follow-card .follow-handle{color:var(--eucalyptus-deep);overflow-wrap:anywhere;font-size:.92rem;font-weight:500}.follow-blurb{color:var(--basalt-soft);margin-top:.3rem;font-size:.88rem;line-height:1.45}.follow-arrow{width:1.15rem;height:1.15rem;color:var(--eucalyptus);margin-top:.2rem;transition:transform .2s}.follow-card:hover .follow-arrow{transform:translate(2px,-2px)}.follow-list{gap:.75rem}.follow-row{color:#fff;align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.follow-row .follow-icon{color:#dce5df;background:#ffffff14;width:2.4rem;height:2.4rem;box-shadow:inset 0 0 0 1px #ffffff3d}.follow-row .follow-icon svg{width:1.2rem;height:1.2rem}.follow-row:hover .follow-icon{background:var(--gold);box-shadow:none;color:#fff}.follow-row .follow-name{text-underline-offset:.2em;line-height:1.3;text-decoration:underline;text-decoration-thickness:1px}.follow-row:hover .follow-name{text-decoration-thickness:2px}.follow-row .follow-handle{color:#aab5af;font-size:.88rem;line-height:1.3}.site-footer :focus-visible{outline-color:var(--sand)}@media (prefers-reduced-motion:reduce){.follow-card,.follow-icon,.follow-arrow{transition:none}}
.menu-note,.fee-banner{background:var(--eucalyptus-wash);color:var(--basalt);border-radius:14px;max-width:44rem;margin:1.75rem 0 0;padding:1rem 1.25rem}.fee-banner{margin-top:1.25rem}.menu-note strong,.fee-banner strong{color:var(--eucalyptus-deep);font-weight:600}.treatment-fee{background:var(--eucalyptus-wash);color:var(--eucalyptus-deep);white-space:nowrap;border-radius:999px;margin-left:.6rem;padding:.05rem .6rem;font-size:.85rem;display:inline-block}.eyebrow{font-family:var(--font-display);font-variation-settings:"SOFT" 100;color:var(--eucalyptus);margin:0 0 .75rem;font-size:1.15rem}.pay-page h1{margin-bottom:.5rem}.pay-page .lede{margin-bottom:1.5rem}.pay-panel{margin-top:1.25rem}.pay-lines{margin:0 0 1.5rem}.pay-lines>div{justify-content:space-between;align-items:baseline;gap:1rem;padding:.35rem 0;display:flex}.pay-lines dt{font-weight:500}.pay-lines dd{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0}.pay-lines .pay-when{padding-top:0}.pay-lines .pay-when dt{color:var(--basalt-soft);font-size:.95rem;font-weight:400}.pay-lines .pay-total{border-top:1px solid var(--line);margin-top:.6rem;padding-top:.9rem}.pay-lines .pay-total dt{font-family:var(--font-display);font-variation-settings:"SOFT" 100;font-size:1.3rem;font-weight:400}.pay-lines .pay-total dd{font-family:var(--font-display);font-variation-settings:"SOFT" 100;color:var(--eucalyptus-deep);font-size:1.9rem}.pay-action .btn-pay{width:100%;min-height:56px;font-size:1.1rem}.pay-callout{border-radius:var(--radius);box-shadow:inset 0 0 0 2px var(--eucalyptus);background:#fff;gap:1rem;margin-top:1.25rem;padding:1.25rem;display:grid}.pay-callout h2{margin-bottom:.35rem;font-size:1.4rem}.pay-callout p{margin:0}.paid-badge{background:var(--eucalyptus-wash);color:var(--eucalyptus-deep);border-radius:12px;align-items:center;gap:.6rem;margin:0;padding:.85rem 1rem;font-weight:500;display:flex}.paid-badge span,.paid-tick{background:var(--eucalyptus);color:#fff;border-radius:50%;flex:none;place-items:center;font-weight:600;display:inline-grid}.paid-badge span{width:1.6rem;height:1.6rem;font-size:.9rem}.paid-hero{align-items:center;gap:1rem;display:flex}.paid-tick{width:3.25rem;height:3.25rem;font-size:1.6rem}.admin-nav{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:2rem;padding-bottom:.75rem;display:flex}.admin-nav a{color:var(--basalt);border-radius:999px;padding:.5rem 1rem;text-decoration:none}.admin-nav a:hover{background:var(--eucalyptus-wash)}.admin-nav a[aria-current=page]{background:var(--eucalyptus);color:#fff}.admin-nav form{margin-left:auto}.appt-day{margin-top:2.25rem}.appt-day h2{margin-bottom:.75rem;font-size:1.5rem}.appt-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.appt{background:var(--linen);border-radius:14px;grid-template-columns:5.5rem minmax(0,1fr) auto;align-items:center;gap:1.25rem;padding:1rem 1.25rem;display:grid}.appt-time{font-family:var(--font-display);font-variation-settings:"SOFT" 100;font-size:1.35rem;line-height:1.2}.appt-time span{font-family:var(--font-body);color:var(--basalt-soft);font-size:.85rem;display:block}.appt-main{gap:.1rem;min-width:0;display:grid}.appt-main strong{font-weight:600}.appt-main span{color:var(--basalt-soft)}.appt-notes{overflow-wrap:anywhere;font-size:.9rem;font-style:italic}.appt-pay{justify-items:end;gap:.5rem;display:grid}.appt-pay .btn{min-height:42px;padding:.5rem 1.15rem}.chip{white-space:nowrap;border-radius:999px;padding:.2rem .7rem;font-size:.85rem;font-weight:500;display:inline-block}.chip-paid{background:var(--eucalyptus-wash);color:var(--eucalyptus-deep)}.chip-due{background:var(--shell);color:var(--umber)}.chip-held{color:var(--basalt-soft);background:#e7e9e6}.back-link{margin-bottom:1.25rem;text-decoration:none;display:inline-block}.back-link:hover{text-decoration:underline}.take-pay{width:min(520px,100% - 2rem);margin:1.5rem auto 0}.take-pay-card{background:var(--linen);text-align:center;border-radius:24px;justify-items:center;padding:clamp(1.5rem,5vw,2.25rem);display:grid}.take-pay-who{color:var(--basalt-soft);margin:0 0 .5rem}.take-pay-amount{color:var(--eucalyptus-deep);margin:.25rem 0;font-size:clamp(3.2rem,14vw,4.5rem);line-height:1}.qr{width:min(300px,100%);box-shadow:0 0 0 1px var(--line);background:#fff;border-radius:18px;margin:1.25rem 0 1rem;padding:.5rem}.qr svg{width:100%;height:auto;display:block}.take-pay-hint{max-width:26rem;margin-bottom:.75rem}.take-pay-waiting{color:var(--basalt-soft);align-items:center;gap:.5rem;margin:0 0 1.25rem;font-size:.95rem;display:inline-flex}.pulse{background:var(--eucalyptus);border-radius:50%;width:.6rem;height:.6rem;animation:1.6s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.25;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.pulse{animation:none}}.take-pay-done .paid-tick{width:5rem;height:5rem;margin-bottom:1rem;font-size:2.4rem}.take-pay-done h1{margin-bottom:.5rem}@media (max-width:560px){.appt{grid-template-columns:4.5rem minmax(0,1fr);gap:.75rem 1rem}.appt-pay{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.treatment-fee{width:fit-content;margin:.35rem 0 0;display:block}}.pay-accepted-title{align-items:center;gap:.5rem;margin:0;font-size:.9rem;font-weight:500;display:flex}.pay-accepted-title svg{flex:none;width:1.05rem;height:1.05rem}.pay-accepted-list{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.pay-accepted-list li{white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;min-height:2rem;padding:.25rem .75rem .25rem .6rem;font-size:.85rem;font-weight:500;line-height:1.2;display:inline-flex}.pay-accepted-list svg{flex:none;width:1rem;height:1rem}.pay-accepted-compact{gap:.6rem;margin-top:1rem;display:grid}.pay-accepted-compact .pay-accepted-title{color:var(--basalt-soft)}.pay-accepted-compact .pay-accepted-title svg,.pay-accepted-compact li svg{color:var(--eucalyptus)}.pay-accepted-compact li{color:var(--eucalyptus-deep);box-shadow:inset 0 0 0 1px var(--line);background:#fff}.pay-action .pay-accepted-compact{justify-items:center}.pay-action .pay-accepted-list{justify-content:center}.pay-accepted-footer{width:var(--page);border-top:1px solid #ffffff24;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;margin:2.75rem auto 0;padding-top:1.75rem;display:flex}.pay-accepted-footer .pay-accepted-title{color:#fff;font-size:1rem}.pay-accepted-footer .pay-accepted-title svg,.pay-accepted-footer li svg{color:#b9cbbf}.pay-accepted-footer li{color:#f1f4f2;background:#ffffff12;box-shadow:inset 0 0 0 1px #fff3}.pay-accepted-footer+.footer-small{margin-top:1.75rem}
.women-only-note{background:var(--shell);color:var(--basalt);border-radius:14px;max-width:44rem;margin:1rem 0 0;padding:.85rem 1.1rem}.women-only-note strong{color:var(--umber);font-weight:500}.step-title+.women-only-note{margin:-.25rem 0 1.5rem}.women-only-badge{border:1px solid var(--line-soft);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--eucalyptus);letter-spacing:.18em;text-transform:uppercase;background:#fbf8f3a6;border-radius:999px;align-items:center;gap:.6rem;margin:-.5rem 0 1.9rem;padding:.5rem 1rem;font-size:.74rem;font-weight:500;display:inline-flex}.women-only-badge:before{content:"";background:var(--sage);border-radius:50%;width:6px;height:6px;animation:2.8s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 #8a9a8280}50%{opacity:.7;box-shadow:0 0 0 6px #8a9a8200}}.treatment-lists{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:.5rem 2rem;max-width:38rem;margin-top:.9rem;display:grid}.treatment-lists-title{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--eucalyptus-deep);margin:0 0 .3rem;font-size:.76rem;font-weight:500}.treatment-lists ul{margin:0;padding:0;list-style:none}.treatment-lists li{margin-bottom:.15rem;padding-left:1.1rem;font-size:.95rem;line-height:1.5;position:relative}.treatment-lists li:before{content:"";border-radius:var(--pebble-a);background:var(--clay);width:.4rem;height:.4rem;position:absolute;top:.62em;left:.15rem}.hours-extra{color:#dfe5e1;max-width:300px;margin:.85rem 0 0;font-size:.92rem}.hero-eyebrow,.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--eucalyptus);align-items:center;gap:.75rem;margin:0 0 1.1rem;font-size:.78rem;font-weight:500;display:flex}.hero-eyebrow:before,.eyebrow:before{content:"";background:var(--gold);flex:none;width:32px;height:1px}.hero-copy .hero-title{letter-spacing:-.01em;margin-bottom:1.4rem;font-size:clamp(2.7rem,6.2vw,4.9rem);line-height:1.02}.hero-title em{display:block}.hero-copy .lede{color:var(--basalt-soft);font-size:clamp(1.05rem,1.4vw,1.2rem)}.about-lede{color:var(--basalt);font-size:1.12rem}.about-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.about-facts li{border:1px solid var(--line-soft);background:#fbf8f3b8;border-radius:18px;flex-direction:column;gap:.2rem;padding:1rem 1.1rem;display:flex}.about-facts strong{font-family:var(--font-display);color:var(--umber);font-size:1.4rem;font-weight:500;line-height:1.2}.about-facts span{color:var(--basalt-soft);font-size:.9rem;line-height:1.4}.about-extras{margin-bottom:1rem}.site-footer .service-area{color:#dfe5e1;margin-top:.4rem;font-size:.92rem;display:block}@media (max-width:560px){.hero-eyebrow{letter-spacing:.12em}.about-facts{grid-template-columns:1fr;gap:.5rem}.about-facts li{flex-flow:wrap;align-items:baseline;column-gap:.6rem;padding:.7rem 1rem}}.treatment-overview{border-radius:var(--radius);border:1px solid var(--line-soft);background:#fbf8f3c7;grid-template-columns:128px minmax(0,1fr);grid-template-areas:"photo head""photo body";align-items:start;column-gap:1.5rem;margin:0 0 2rem;padding:clamp(1.25rem,3vw,1.75rem);display:grid}.treatment-overview-photo{aspect-ratio:1;grid-area:photo;width:128px}.treatment-overview-head{grid-area:head}.treatment-overview-body{grid-area:body}.treatment-overview-kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--eucalyptus-deep);margin:0 0 .3rem;font-size:.76rem;font-weight:500}.treatment-overview h2{margin-bottom:.4rem;font-size:clamp(1.45rem,2.6vw,1.85rem)}.treatment-overview-body>p{max-width:40rem;margin:0}.treatment-overview .link-button{margin-top:1.1rem}.slot-title{margin-bottom:1rem;font-size:1.35rem}.choice-summary{color:var(--basalt-soft);margin-top:.45rem;font-size:.92rem;line-height:1.5;display:none}.choice:has(input:checked) .choice-summary{display:block}@media (max-width:900px){.booking-step-2 .summary{display:none}}@media (max-width:560px){.treatment-overview{grid-template-columns:72px minmax(0,1fr);grid-template-areas:"photo head""body body";column-gap:1rem}.treatment-overview-photo{width:72px}.treatment-overview-body{margin-top:.75rem}}.treatment-about{border-left:1px solid var(--gold);background:#fbf8f399;border-radius:0 14px 14px 0;max-width:40rem;margin-top:1rem;padding:1rem 1.2rem .4rem}.treatment-about-title{font-family:var(--font-display);color:var(--eucalyptus);margin:0 0 .45rem;font-size:1.35rem;font-style:italic;font-weight:500}.treatment .treatment-about p,.treatment-overview .treatment-about p{margin:0 0 .75rem;font-size:.97rem}
.backdrop{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.backdrop:after{content:"";opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.blob{filter:blur(70px);opacity:.55;border-radius:50%;animation:26s ease-in-out infinite alternate drift;position:absolute}.b1{background:#e5d3c4;width:520px;height:520px;top:-160px;left:-140px}.b2{background:#d5decf;width:460px;height:460px;animation-duration:32s;bottom:-180px;right:-120px}.b3{opacity:.45;background:#f0e2d2;width:320px;height:320px;animation-duration:38s;top:40%;left:55%}@keyframes drift{0%{transform:translate(0)scale(1)}to{transform:translate(40px,30px)scale(1.08)}}.site-header{padding:1.75rem 0 .75rem}.hero{margin-top:clamp(1.5rem,5vw,4rem)}.hero-arch{justify-content:center;margin:0;display:flex}.arch-wrap{width:min(380px,100%);position:relative}.arch-outline{pointer-events:none;border:1px solid #b08f5e73;border-radius:999px 999px 36px 36px;position:absolute;inset:-14px}.arch{aspect-ratio:3/4;background:radial-gradient(circle at 50% 42%,#fff9f0f2 0 22%,#fff9f000 46%),linear-gradient(#f1e6da 0%,#e6d3c4 55%,#d9bfad 100%);border-radius:999px 999px 28px 28px;position:relative;overflow:hidden;box-shadow:0 40px 80px -40px #4d5b4a73,inset 0 0 0 1px #fff6}.arch svg{width:100%;height:100%;position:absolute;inset:0}.arch .stones{transform-origin:150px 300px;animation:7s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.arch .steam path{fill:none;stroke:#fff;stroke-width:2.4px;stroke-linecap:round;opacity:0;animation:6s ease-in-out infinite steam}.arch .steam path:nth-child(2){animation-delay:2s}.arch .steam path:nth-child(3){animation-delay:4s}@keyframes steam{0%{opacity:0;transform:translateY(12px)}30%{opacity:.8}to{opacity:0;transform:translateY(-18px)}}.arch .sprig{transform-origin:232px 340px;animation:9s ease-in-out infinite sway}@keyframes sway{0%,to{transform:rotate(0)}50%{transform:rotate(-2.5deg)}}.category-head .pebble,.about .pebble{box-shadow:0 30px 60px -36px #4d5b4a73,0 0 0 1px #b08f5e59}.section-head h2,.page-intro h1{position:relative}.section-head h2:before,.category-head h2:before{content:"";background:var(--gold);width:32px;height:1px;margin-bottom:1rem;display:block}.treatment{border-top-color:var(--line-soft)}.treatment h3{font-size:1.6rem}.footer-brand{align-items:center;gap:.7rem;display:inline-flex}.footer-brand svg{flex:none;width:36px;height:auto}.footer-brand em{color:#d9c19a;font-style:italic;font-weight:400}.reveal{opacity:0;animation:.9s cubic-bezier(.2,.7,.2,1) forwards rise;transform:translateY(14px)}.d1{animation-delay:50ms}.d2{animation-delay:.15s}.d3{animation-delay:.28s}.d4{animation-delay:.4s}.d5{animation-delay:.52s}@keyframes rise{to{opacity:1;transform:none}}@media (max-width:820px){.hero-arch{order:-1}.arch-wrap{width:min(220px,58vw)}}@media (max-width:560px){.brand{gap:.6rem}.site-header{padding-top:1.25rem}}@media (prefers-reduced-motion:reduce){.blob,.arch .stones,.arch .sprig,.women-only-badge:before{animation:none}.arch .steam path{opacity:.5;animation:none}.reveal{opacity:1;animation:none;transform:none}}
