@font-face{font-family:DM Sans;src:url(fonts/dm-sans-400.woff);font-weight:400;font-display:swap}
@font-face{font-family:DM Sans;src:url(fonts/dm-sans-600.woff);font-weight:600;font-display:swap}
@font-face{font-family:Italiana;src:url(fonts/italiana-400.woff);font-display:swap}
:root{--paper:#f6f3eb;--ink:#303c30;--muted:#687064;--line:#d9dcd0;--sage:#e8ecdf;--green:#3d513e}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px 'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9a7542;outline-offset:4px}[hidden]{display:none!important}p{line-height:1.8}h1,h2{font-family:Italiana,Georgia,serif;font-weight:400}h1{font-size:clamp(42px,5vw,66px);line-height:1.08;letter-spacing:-1.5px;margin:18px 0}h1 em{font:italic .9em Georgia}h2{font-size:32px;line-height:1.2;margin:8px 0 16px}h3{font-size:14px;font-weight:600;margin:26px 0 14px}.eyebrow{font-size:10px;letter-spacing:2px}.muted{color:var(--muted)}.small{font-size:11px}.demo-banner{text-align:center;background:var(--sage);padding:10px 18px;font-size:10px;line-height:1.7;letter-spacing:.5px}header{padding:22px max(6%,calc((100vw - 1160px)/2));border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font:22px Georgia}.brand small{display:block;font:9px 'DM Sans';letter-spacing:3px;margin-top:8px;text-align:center}header>div{display:flex;align-items:center;gap:24px;font-size:12px}header button{background:none;border:1px solid var(--line);min-width:44px;min-height:44px;border-radius:50%;color:var(--ink)}main{max-width:1160px;margin:auto;padding:50px 30px 70px}.intro p{color:var(--muted);max-width:560px;font-size:14px}.progress{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);max-width:650px;padding:0;margin:40px 0 30px;border-bottom:1px solid var(--line)}.progress li{padding:0 0 16px;display:flex;gap:12px;align-items:center;color:var(--muted);font-size:12px;border-bottom:2px solid transparent;margin-bottom:-1px}.progress span{font-size:10px}.progress b{font-weight:400}.progress li[aria-current=step]{color:var(--green);border-color:var(--green)}.booking-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;align-items:start}.booking-panel{min-width:0;background:#fffdf9;border:1px solid var(--line);padding:32px}.booking-panel>section>p{font-size:13px}.treatments{display:grid;gap:9px;margin:25px 0}.treatment{border:1px solid var(--line);background:transparent;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px 17px;text-align:left;color:var(--ink);min-height:68px}.treatment[aria-pressed=true]{border-color:var(--green);background:var(--sage)}.treatment strong{font-weight:400;font-size:16px}.treatment small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.treatment .choice{width:17px;height:17px;border:1px solid #88957f;border-radius:50%;margin-left:auto;flex-shrink:0}.treatment[aria-pressed=true] .choice{border:5px solid var(--green)}label{font-size:12px;display:block;margin:20px 0 10px}select,input[type=date]{width:100%;min-width:0;padding:15px 12px;border:1px solid #b7c1af;background:#fffdf9;color:var(--ink);font-size:16px;min-height:50px;border-radius:0}input[type=checkbox]{accent-color:var(--green);width:19px;height:19px;flex-shrink:0}.addon,.consent{display:flex;align-items:center;gap:12px;line-height:1.7;padding:15px 0}.addon span{flex:1}.addon b{white-space:nowrap;font-weight:400}.primary,.secondary{display:flex;align-items:center;justify-content:center;min-height:52px;width:100%;border:1px solid var(--green);padding:16px 20px;background:var(--green);color:white;font-size:13px;text-align:center;margin-top:18px;line-height:1.5}.primary:hover:enabled{background:#293c2a}.secondary{background:transparent;color:var(--green);margin-top:12px}.back{background:none;border:0;min-height:44px;color:var(--muted);font-size:12px;padding:0;margin-bottom:15px}.summary{background:var(--sage);border:1px solid var(--line);position:sticky;top:24px;overflow:hidden}.summary>img{display:block;width:100%;height:220px;object-fit:cover;object-position:center 36%}.summary-content{padding:26px}.summary h2{font-size:30px;margin-top:15px}.summary p{font-size:12px}.summary-price{display:flex;align-items:center;justify-content:space-between;border-block:1px solid #c8cebd;padding:20px 0;margin-top:24px;font-size:12px;gap:20px}.summary-price strong{font:30px Georgia;white-space:nowrap}.summary .small{font-size:10px}.quick-dates{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:15px}.quick-dates button{display:grid;gap:8px;border:1px solid var(--line);background:white;padding:12px 4px;color:var(--ink);font-size:10px;min-height:62px}.quick-dates strong{font-size:18px;font-weight:400}.slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.slots button{border:1px solid var(--line);padding:13px 3px;min-height:46px;color:var(--ink);background:white;font-size:13px}.slots button[aria-pressed=true],.quick-dates button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.duration-note{font-size:11px!important;color:var(--muted)}.empty{background:var(--sage);padding:18px}.identity{display:flex;align-items:center;gap:16px;padding:20px 0}.identity strong{font-size:14px}.identity p{font-size:11px;margin:5px 0}.avatar{background:var(--sage);border-radius:50%;width:46px;height:46px;display:grid;place-items:center;flex-shrink:0}.facebook-preview{background:#f1f2ef;padding:18px;font-size:12px;border-left:2px solid #8b9a7e}.facebook-preview p{margin:8px 0 0}.consent{font-size:12px;align-items:flex-start}.consent input{margin-top:3px}.success-mark{font-size:32px;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--sage);margin-bottom:26px}#success h2{font-size:44px;margin-top:20px}.receipt{padding:18px;background:var(--sage);font-size:13px}.error:not(:empty){color:#863e31;background:#f8ebe4;padding:16px;font-size:13px}.error:empty{margin:0}footer{display:flex;justify-content:space-between;gap:20px;max-width:1160px;margin:auto;padding:30px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.skip{position:absolute;top:-100px;left:15px;background:white;padding:16px}.skip:focus{top:10px;z-index:50}
@media(max-width:760px){main{padding:32px 18px 50px}header{padding:18px}.brand{font-size:18px}header>div{gap:12px}header>div>a{display:none}.booking-layout{grid-template-columns:1fr;gap:22px}.booking-panel{padding:23px 18px}.summary{position:static;display:grid;grid-template-columns:90px 1fr;order:-1}.summary>img{height:100%;min-height:180px;object-position:47% center}.summary-content{padding:16px}.summary h2{font-size:24px;margin:10px 0}.summary .eyebrow{font-size:8px}.summary-price{margin-top:12px;padding:12px 0}.summary-price strong{font-size:24px}.summary-content>p{margin:7px 0}.summary-content>.small{display:none}.intro h1{font-size:43px}.intro>p{font-size:13px}.progress{margin-top:30px}.progress li{gap:7px;font-size:11px}h2{font-size:29px}.slots{grid-template-columns:repeat(3,minmax(0,1fr))}.treatment strong{font-size:14px}.addon{font-size:11px}footer{padding:25px 18px;flex-wrap:wrap}#success h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
