:root{--sc-canvas:#fff6f4;--sc-surface:#fbe7ea;--sc-ink:#5e2430;--sc-ink-soft:#8a5a63;--sc-accent:#8e3d4c;--sc-accent-ink:#fff6f4;--sc-font-display:'Playfair Display';--sc-font-text:Manrope;--paper:#fff6f4;--ink:#5e2430}
body{background:var(--paper);color:var(--ink)}
.a-hero{min-height:740px;height:calc(100svh - 10px);max-height:1050px;position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 20% 30%,#fff1f3 0,transparent 55%),linear-gradient(110deg,#f6d3da 0%,#fbe7ea 45%,#f3c4ce 100%);color:var(--wine);border-radius:0 0 44px 44px}
.a-photo{position:absolute;top:0;bottom:0;right:0;height:100%;width:auto;max-width:none;object-fit:cover;z-index:1;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 26%);mask-image:linear-gradient(90deg,transparent 0,#000 26%);transform:translate(calc(var(--mx,0)*-6px),calc(var(--travel,0)*40px + var(--my,0)*-4px))}
.a-wash{position:absolute;inset:0;z-index:2;pointer-events:none}
.a-mark{position:absolute;z-index:5;left:0;right:0;top:108px;text-align:center;padding:0 24px}
.a-mark .crown{width:44px;height:32px;color:var(--rose-deep);display:block;margin:0 auto 6px}
.a-mark h1{margin:0;line-height:1}
.a-wm{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(72px,10vw,140px);letter-spacing:.04em;line-height:.9;background:var(--rosegold);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 #ffffffaa)}
.a-ws{display:block;font-family:var(--script);font-weight:400;font-size:clamp(40px,5vw,80px);color:var(--rose-deep);line-height:1;margin-top:4px;text-shadow:0 1px 0 #fff8}
.a-mark .caps{display:block;font-size:13px;letter-spacing:.36em;margin-top:18px;color:var(--wine);font-weight:700}
.a-mark .caps.small{font-size:11px;margin-top:10px;color:var(--rose-deep);letter-spacing:.3em}
.a-cta{display:flex;gap:18px;justify-content:center;align-items:center;margin-top:26px}
/* 1 · Poster: blush-tinted room, rose-gold stack */
html[data-hero="1"] .a-mark{right:26%}
html[data-hero="1"] .a-wash{background:linear-gradient(180deg,#eeb3bf 0%,#f4cbd3 42%,#f7d6dc00 88%);mix-blend-mode:multiply;opacity:.95}
/* 2 · Editorial: untinted photo, left-aligned wine wordmark */
html[data-hero="2"] .a-wash{background:linear-gradient(100deg,#fff6f4f0 0%,#fff6f4b0 30%,#fff6f400 58%)}
html[data-hero="2"] .a-mark{text-align:left;left:6.5%;right:auto;max-width:46%;top:22%;padding:0}
html[data-hero="2"] .a-mark .crown{margin:0 0 8px}
html[data-hero="2"] .a-wm{font-size:clamp(64px,8.4vw,128px);background:none;-webkit-text-fill-color:var(--wine);color:var(--wine);filter:none}
html[data-hero="2"] .a-ws{font-size:clamp(36px,3.8vw,60px)}
html[data-hero="2"] .a-cta{justify-content:flex-start}
/* 3 · Badge: untinted photo, glass label with the brand on it */
html[data-hero="3"] .a-wash{background:linear-gradient(180deg,#8e3d4c22,transparent 45%)}
html[data-hero="3"] .a-mark{left:39%;right:auto;top:14%;transform:translateX(-50%);width:min(600px,88%);background:#fff6f4d4;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid #fff;border-radius:36px;padding:38px 36px 34px;box-shadow:0 30px 80px #8e3d4c33}
html[data-hero="3"] .a-wm{font-size:clamp(60px,7.6vw,112px)}
html[data-hero="3"] .a-ws{font-size:clamp(34px,3.6vw,56px)}
html[data-hero="3"] .a-mark .caps{margin-top:14px}
.a-nav{position:relative;z-index:12;display:flex;align-items:center;justify-content:space-between;background:#fffaf9e6;backdrop-filter:blur(8px);color:var(--wine);margin:22px 36px;padding:12px 18px 12px 22px;border-radius:50px;gap:20px;border:1px solid #fff}
.a-nav .btn{min-height:40px;padding:8px 21px}
.nav-links{display:flex;gap:30px;font-size:11px;font-family:var(--caps);letter-spacing:.2em;text-transform:uppercase;font-weight:700}
.light{background:#fff6f4;color:var(--rose-deep)}
.a-section-heading{padding:100px 0 55px;text-align:center}.a-section-heading .tiny{margin:0 auto 24px;color:var(--rose-deep)}.a-section-heading h2{font-size:clamp(40px,4.3vw,66px);color:var(--wine)}.a-section-heading h2 .script{color:var(--rose-deep);font-size:1.2em}
.a-care .svc{background:#fff;border-radius:22px;border:1px solid var(--blush-3);overflow:hidden}
.a-hush{padding:140px 0;text-align:center}.a-hush p{font-family:var(--serif);font-size:clamp(27px,3.2vw,48px);line-height:1.28;max-width:none;color:var(--wine)}.a-hush p span{font-family:var(--script);color:var(--rose-deep);font-size:1.25em}
.bath-scene{height:auto;min-height:0;position:relative;overflow:hidden;background:#f7d6dc;border-radius:34px;margin:0 20px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center}
.bath-photo{position:relative;height:auto;min-height:0;padding:44px 0 44px 40px}.bath-photo img{display:block;width:100%;height:auto;aspect-ratio:1018/834;object-fit:cover;object-position:center;position:static;border-radius:20px;box-shadow:0 30px 70px #8e3d4c2e}
.bath-copy{position:relative;z-index:4;padding:70px 8% 70px 7%;color:var(--wine)}.bath-copy h2{font-size:clamp(40px,4.5vw,70px);line-height:1.03;margin:16px 0 20px}.bath-copy>p{font-size:15px;line-height:1.75;margin:0 0 30px;color:var(--wine-soft);max-width:34ch}
.a-pricing{padding-bottom:30px}
.a-book{padding:120px 0}
.a-questions{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;padding:60px 0 120px}.a-questions h2{font-size:56px;margin:22px 0}.a-questions>div>p:last-child{font-size:14px;color:var(--wine-soft);max-width:240px}.a-questions .faq{color:var(--wine)}.faq summary{font-family:var(--serif);font-size:21px}
.a-visit{padding:85px 0 35px;background:var(--rose-deep);color:#fff6f4;border-radius:44px 44px 0 0}.a-visit-top{display:flex;justify-content:space-between;align-items:center;gap:40px}.a-visit h2{font-size:clamp(60px,7vw,110px);line-height:.95}.a-visit h2 .script{font-size:1.1em;color:#ffd3dd;display:block}.a-visit-top>div{max-width:380px}.a-visit-top p{font-size:16px;margin:0 0 18px}.a-visit-top p+p{font-size:12px;opacity:.75}.a-visit-top .plain-link{margin-left:24px}
.a-phone{font-family:var(--serif);font-size:clamp(33px,5.2vw,80px);letter-spacing:-.02em;display:block;border-bottom:1px solid #fff4;padding:65px 0 24px}
.a-visit .copyright .caps{font-size:11px;opacity:.85}
@media(hover:hover){.a-nav a:hover{opacity:.8}}
@media(max-width:1000px){.nav-links{display:none}.a-mark{top:96px}html[data-hero="1"] .a-mark{right:0}html[data-hero="3"] .a-mark{left:50%}.a-questions{gap:45px}.bath-scene{grid-template-columns:1fr}.bath-photo{min-height:0;padding:36px 36px 0}}
@media(max-width:700px){.a-hero{height:auto;min-height:100svh;max-height:none;border-radius:0 0 28px 28px;padding-bottom:0;display:block;padding-bottom:calc(100vw * 1250 / 1128 - 230px)}.a-nav{margin:14px 14px;padding:9px 10px 9px 13px;gap:6px}.a-nav .btn{font-size:9px;gap:8px;padding:8px 12px;min-height:40px;letter-spacing:.12em}.a-nav .brand{font-size:14px}.a-nav .brand .scr{font-size:12px}
.a-photo{top:auto;left:0;right:0;bottom:0;height:auto;width:100%;aspect-ratio:1128/1250;object-fit:cover;transform:none!important;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 28%);mask-image:linear-gradient(180deg,transparent 0,#000 28%)}.a-mark{position:relative;top:0;padding:14px 18px 0}.a-mark .crown{width:34px;height:25px}.a-wm{font-size:clamp(56px,17.5vw,74px)}.a-ws{font-size:38px}.a-mark .caps{font-size:10px;letter-spacing:.28em;margin-top:14px}.a-mark .caps.small{font-size:9px}.a-cta{flex-direction:column;gap:10px;margin-top:18px}.a-cta .btn{min-height:46px}.a-cta .plain-link{margin:0}
html[data-hero="2"] .a-wash{background:linear-gradient(180deg,#fff6f4f5 0%,#fff6f4cc 36%,#fff6f400 60%)}html[data-hero="2"] .a-mark{left:0;right:0;max-width:none;top:0;padding:14px 22px 0}html[data-hero="2"] .a-wm{font-size:clamp(56px,17.5vw,74px)}html[data-hero="2"] .a-ws{font-size:36px}html[data-hero="2"] .a-cta{align-items:flex-start}
html[data-hero="3"] .a-mark{top:0;left:14px;transform:none;width:calc(100% - 28px);padding:24px 18px 20px;border-radius:26px}html[data-hero="3"] .a-wm{font-size:clamp(52px,15vw,66px)}html[data-hero="3"] .a-ws{font-size:34px}
.a-section-heading{padding:60px 0 30px}.a-section-heading h2{font-size:36px}.a-section-heading .tiny{font-size:10px;margin-bottom:14px}
.a-hush{padding:60px 0}.a-hush p{font-size:27px}
.bath-scene{margin:0 10px;border-radius:24px;min-height:0}.bath-photo{min-height:0;padding:22px 22px 0}.bath-copy{padding:34px 22px 30px}.bath-copy h2{font-size:38px}.bath-copy>p{font-size:13px;margin-bottom:22px}
.a-book{padding:60px 0}.a-questions{display:block;padding:20px 0 70px}.a-questions h2{font-size:40px}.a-questions>div>p:last-child{max-width:none}.a-questions .faq{margin-top:34px}.faq summary{font-size:18px}
.a-visit{padding:55px 0 25px;border-radius:28px 28px 0 0}.a-visit-top{display:block}.a-visit h2{font-size:56px;margin-bottom:26px}.a-visit-top p{font-size:14px}.a-visit-top .plain-link{margin-left:14px}.a-phone{padding-top:40px;font-size:34px}}
