:root{--ink:#38232e;--pink:#c94578;--pale:#fbe6ee;--wash:#fff5f8;--line:#efd7e0;--muted:#79606a;--white:#fffafa}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font:16px/1.55 Arial,sans-serif}.header{height:75px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,7vw,110px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;background:#fffafaf2;backdrop-filter:blur(10px)}.brand{font:600 28px Georgia,serif;letter-spacing:-1.5px;color:var(--ink);text-decoration:none}.brand span,h1 i,h2 i{color:var(--pink)}nav{display:flex;gap:25px;align-items:center}nav a,footer a{color:var(--ink);font-size:14px;text-decoration:none}.pill{border:0;border-radius:99px;display:inline-flex;gap:18px;align-items:center;justify-content:center;padding:13px 19px;text-decoration:none;font-weight:bold;font-size:14px;cursor:pointer}.pill.dark{background:var(--ink);color:white}.pill.pink{background:var(--pink);color:white}.hero{display:grid;grid-template-columns:1.05fr .95fr;min-height:570px}.hero>div:first-child{padding:clamp(75px,10vw,130px) clamp(24px,7vw,110px)}.eyebrow{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--pink);font-weight:bold;margin:0 0 13px}h1,h2,h3{font-family:Georgia,serif;font-weight:normal;letter-spacing:-.055em;line-height:1.05;margin:0}h1{font-size:clamp(48px,6.4vw,81px);max-width:650px}h1 i,h2 i{font-weight:normal}.hero p{max-width:490px;color:var(--muted);font-size:17px;margin:25px 0 31px}.hero-art{background:linear-gradient(145deg,#f5c3d4,#e889ab 60%,#cf5c88);color:#fff;position:relative;display:grid;place-items:center;overflow:hidden}.hero-art:before{content:'';position:absolute;width:330px;height:330px;border-radius:50%;background:#fff2;right:-80px;top:-100px}.hero-art span{position:absolute;top:12%;left:11%;font:14px Georgia,serif;letter-spacing:.14em;line-height:1.55}.hero-art span b{font:10px Arial,sans-serif;letter-spacing:.16em}.hero-art svg{width:min(70%,360px);fill:currentColor;filter:drop-shadow(10px 11px 0 #7f1f4833);transform:translateY(45px)}.hero-art svg path:not(:first-child){stroke:currentColor;stroke-width:9;stroke-linecap:round}.band{background:var(--ink);color:#ffeefa;padding:15px;text-align:center;font-size:11px;letter-spacing:.09em}.band span{color:#f3a7c3;margin:0 20px}.section{padding:105px clamp(24px,7vw,110px)}.split{display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:#fff9f7}.section h2,.booking h2{font-size:clamp(41px,5.2vw,64px)}.split>div:last-child{font-size:17px;color:var(--muted);max-width:490px}.muted{color:var(--muted)}.section-title{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:43px}.section-title>p{max-width:310px;margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.services article{min-height:225px;padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;align-items:start}.services .number{font-size:12px;color:var(--pink)}.services h3{font-size:27px;margin:36px 0 7px}.services p{font-size:14px;color:var(--muted);margin:0}.services button{margin-top:auto;border:0;background:none;padding:0;color:var(--pink);font-weight:bold;cursor:pointer}.wash{background:var(--wash)}.gallery{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:185px 185px;gap:14px}.gallery div{padding:15px;display:flex;align-items:end;color:white;font-size:12px;letter-spacing:.1em;text-transform:uppercase;background:linear-gradient(135deg,#f4a5be,#b43667);border-radius:4px}.gallery div:first-child{grid-row:span 2;background:radial-gradient(circle at 28% 20%,#ffe2eb 0 13%,transparent 14%),linear-gradient(145deg,#d86791,#8b294e)}.gallery div:last-child{grid-column:span 2;background:linear-gradient(115deg,#a3315b,#e47c9f)}.pricing{display:grid;grid-template-columns:.85fr 1.15fr;gap:11vw}.pricing .muted{max-width:350px}.price-list>div{display:flex;justify-content:space-between;gap:30px;padding:19px 0;border-bottom:1px solid var(--line)}.price-list span{font:22px Georgia,serif}.price-list b{font-size:13px;font-weight:normal;color:var(--muted)}.booking{background:var(--ink);color:#fff;padding:105px clamp(24px,7vw,110px);display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.booking .eyebrow{color:#f7b6cc}.booking h2 i{color:#f5a9c3}.booking-copy>p:not(.eyebrow){color:#ead8df;max-width:370px;font-size:17px}.booking ol{padding:0;list-style:none;color:#f8e8ee}.booking li{border-bottom:1px solid #ffffff2a;padding:11px 0}.booking li:before{content:'✓';color:#f6a8c5;margin-right:10px}.card{background:white;color:var(--ink);padding:clamp(27px,4vw,48px);min-height:425px;border-radius:6px;box-shadow:0 18px 50px #11030b44}.card h3{font-size:34px;margin-bottom:8px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.choices.stacked{grid-template-columns:1fr}.choices button{background:white;border:1px solid var(--line);padding:17px;text-align:left;cursor:pointer;border-radius:3px;color:var(--ink)}.choices button:hover{background:var(--wash);border-color:var(--pink)}.choices b,.choices span{display:block}.choices span{font-size:12px;color:var(--muted);margin-top:4px}.hello{color:var(--pink);font:21px Georgia,serif;margin:0 0 8px}.card form{display:grid;gap:16px}.card label,.card legend{display:grid;gap:6px;font-size:13px;font-weight:bold}.card input:not([type=checkbox]):not([type=radio]),.card select,.card textarea{width:100%;border:1px solid var(--line);border-radius:3px;padding:11px;font:14px Arial;color:var(--ink);background:white}.card fieldset{border:0;padding:0;margin:0}.card legend{margin-bottom:8px}.two{display:grid;grid-template-columns:1fr 1fr;gap:13px}.day-options,.period-options{display:flex;gap:8px;flex-wrap:wrap}.day-options label,.period-options label{display:block}.day-options input,.period-options input{position:absolute;opacity:0}.day-options span,.period-options span{display:block;border:1px solid var(--line);border-radius:99px;padding:8px 12px;cursor:pointer;font-weight:normal}.day-options input:checked+span,.period-options input:checked+span{background:var(--pink);border-color:var(--pink);color:#fff}.period-options .unavailable{opacity:.4;pointer-events:none}.check{display:flex!important;grid-template-columns:17px 1fr;align-items:start;color:var(--muted);font-size:12px!important}.check input{margin-top:2px}.hint{font-size:12px;color:var(--muted);margin:0}.error{color:#a01743;font-size:13px;margin:0}.link-button{border:0;background:none;padding:0;text-align:left;color:var(--muted);font-size:13px;cursor:pointer}.success{text-align:center;padding-top:32px}.success>div{width:58px;height:58px;margin:0 auto 22px;display:grid;place-items:center;border-radius:50%;background:var(--pale);color:var(--pink);font-size:27px}.success>p:not(.eyebrow){color:var(--muted);max-width:390px;margin:16px auto 28px}footer{padding:44px clamp(24px,7vw,110px);display:flex;align-items:center;gap:30px;border-top:1px solid var(--line);flex-wrap:wrap}footer p{margin:0;color:var(--muted)}footer small{color:var(--muted);width:100%}@media(max-width:760px){.header{height:67px}.header nav a:not(.pill){display:none}.hero,.split,.pricing,.booking{grid-template-columns:1fr}.hero-art{min-height:365px;order:-1}.hero>div:first-child,.section,.booking{padding:70px 25px}.hero h1{font-size:52px}.band{font-size:9px}.band span{margin:0 5px}.section-title{display:block}.section-title>p{margin-top:18px}.services{grid-template-columns:1fr 1fr}.services article{min-height:200px;padding:18px}.services h3{font-size:22px;margin-top:29px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:145px 145px 145px}.gallery div:first-child{grid-row:span 2}.gallery div:last-child{grid-column:span 2}.choices,.two{grid-template-columns:1fr}.card{padding:27px 20px}.booking{gap:38px}.section h2,.booking h2{font-size:43px}}
