@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');:root{--bg:#faf7f4;--ink:#24172a;--purple:#753e83;--gold:#e6c38e;--muted:#746d77}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}h1,h2,.price{font-family:'Playfair Display',Georgia,serif}h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.16;margin:10px 0 22px;text-align:center}h3{font-size:1.15rem}p{line-height:1.7}a{color:inherit;text-decoration:none}.top{height:78px;padding:0 max(4vw,24px);display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:10;width:100%;color:white;background:linear-gradient(180deg,#180f1dbd,transparent)}.brand{display:flex;align-items:center;gap:11px;font-family:Georgia,serif;font-size:22px;font-weight:bold;line-height:1}.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:2.8px;margin-top:7px}.lotus{font-size:38px;color:#b86fc4}.top nav{display:flex;gap:28px;align-items:center}.top nav a:not(.btn):hover{color:var(--gold)}.btn{display:inline-block;border:0;border-radius:9px;background:linear-gradient(135deg,#9850a7,#663176);color:#fff;padding:16px 24px;font-weight:700;cursor:pointer;text-align:center;box-shadow:0 8px 24px #1e0f2420}.btn:hover{filter:brightness(1.12)}.btn.sm{padding:12px 18px}.btn.ghost{background:transparent;border:1px solid #ffffffa0;box-shadow:none}.menu{display:none;background:none;color:white;border:0;font-size:27px}.hero{min-height:690px;position:relative;background:url('images/massage-07.webp') center 42%/cover no-repeat;color:white;display:flex;align-items:center}.heroShade{position:absolute;inset:0;background:linear-gradient(90deg,#1c101eea 0%,#1c101ed4 34%,#1c101e60 68%,#1c101e1c)}.heroContent{position:relative;max-width:770px;padding:120px max(6vw,26px) 65px}.eyebrow{letter-spacing:3px;font-size:12px;font-weight:700;color:#9c609d;text-align:center}.hero .eyebrow{color:var(--gold);text-align:left}.hero h1{font-size:clamp(3.3rem,6.3vw,6.1rem);line-height:1.07;margin:18px 0}.hero h1 em{color:#f3d6a9;font-style:normal}.lead{font-size:1.15rem;max-width:600px;color:#f1e8f0}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.highlights{display:flex;flex-wrap:wrap;gap:22px;margin-top:65px;color:#f0e2df;font-size:13px}.section{padding:90px max(5vw,22px)}.muted{color:var(--muted)}.center{text-align:center;max-width:750px;margin:0 auto 38px}.features,.serviceGrid,.priceGrid{max-width:1200px;margin:42px auto 0;display:grid;gap:24px}.features{grid-template-columns:repeat(3,1fr)}.features article{background:white;padding:35px;border-radius:14px;box-shadow:0 6px 28px #00000008}.features b{color:var(--purple)}.features p,.serviceGrid p{color:var(--muted)}.services{background:#f0e9ed}.serviceGrid{grid-template-columns:repeat(4,1fr)}.serviceGrid article{background:white;border-radius:13px;overflow:hidden;box-shadow:0 8px 24px #0000000a}.serviceGrid img{width:100%;height:230px;object-fit:cover}.serviceGrid article div{padding:5px 22px 22px}.pricing{background:#24152b;color:white}.pricing .eyebrow{color:var(--gold)}.priceGrid{grid-template-columns:repeat(2,minmax(0,380px));justify-content:center}.priceGrid article{position:relative;border:1px solid #7c6682;border-radius:15px;padding:35px;text-align:center;overflow:hidden}.priceGrid .featured{border-color:var(--gold)}.priceGrid article>p{font-size:12px;letter-spacing:2px;color:var(--gold)}.price{font-size:4.7rem;color:var(--gold)}.priceGrid h3{margin:0 0 8px}.priceGrid span{display:block;color:#c8bcc9;margin-bottom:28px}.ribbon{position:absolute;top:0;right:0;background:var(--gold);color:#281729;padding:7px 12px;font-size:10px;font-weight:bold}.pricing .muted{color:#c7baca}.note{margin-top:22px}.paymentTitle{text-align:center;margin-top:55px}.payments{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.payments span{border:1px solid #7d657e;padding:15px 23px;border-radius:9px}.smallText{font-size:12px;margin-top:22px}.photoGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:1300px;margin:35px auto}.photoGrid a{overflow:hidden;border-radius:9px;display:block}.photoGrid img{width:100%;height:210px;object-fit:cover;display:block;transition:transform .3s}.photoGrid a:hover img{transform:scale(1.04)}.booking{background:#f0e9ed;display:grid;grid-template-columns:1fr 1.15fr;gap:55px;align-items:center}.bookingCopy{max-width:500px;margin-left:auto}.bookingCopy .eyebrow,.bookingCopy h2{text-align:left}.bookingFacts{display:grid;gap:14px;margin-top:30px;color:var(--purple);font-weight:600}.bookingForm{background:white;padding:32px;border-radius:16px;display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:680px;box-shadow:0 15px 45px #26172c13}.bookingForm label{font-size:13px;font-weight:700}.bookingForm input,.bookingForm select,.bookingForm textarea{display:block;width:100%;padding:13px;margin-top:7px;border:1px solid #ded7df;border-radius:7px;font:inherit;background:white;color:#24172a}.wide{grid-column:1/-1}.formHelp{font-size:12px;color:var(--muted);margin:0}.faqList{max-width:850px;margin:35px auto}.faqList details{border-bottom:1px solid #d9d0d9;padding:19px 5px}.faqList summary{cursor:pointer;font-weight:700}.faqList p{color:var(--muted)}footer{background:#1b1220;color:#f8eff9;padding:50px max(5vw,22px);display:grid;grid-template-columns:1fr 1fr;gap:20px}footer>div:nth-child(2){display:flex;gap:15px;flex-wrap:wrap;justify-content:flex-end}.fine{grid-column:1/-1;color:#b9a9b9;font-size:12px}footer p{color:#b9a9b9}@media(max-width:900px){.serviceGrid,.photoGrid{grid-template-columns:repeat(2,1fr)}.booking{grid-template-columns:1fr}.bookingCopy{margin:0;max-width:none}.bookingForm{max-width:none}.top nav{gap:14px}}@media(max-width:650px){.top{height:70px}.brand{font-size:17px}.brand small{font-size:7px}.menu{display:block}.top nav{display:none;position:absolute;top:70px;left:0;right:0;background:#24152b;padding:22px;flex-direction:column;align-items:stretch}.top nav.open{display:flex}.hero{min-height:680px;background-position:60% center}.heroShade{background:linear-gradient(90deg,#1c101ee8,#1c101e90)}.heroContent{padding-top:130px}.highlights{margin-top:35px}.section{padding:65px 20px}.features,.serviceGrid,.priceGrid{grid-template-columns:1fr}.photoGrid{grid-template-columns:repeat(2,1fr);gap:7px}.photoGrid img{height:135px}.bookingForm{grid-template-columns:1fr;padding:20px}.wide{grid-column:auto}footer{grid-template-columns:1fr}footer>div:nth-child(2){justify-content:flex-start}.fine{grid-column:auto}.price{font-size:4rem}}
/* Office location and tap-to-call enhancements */
.headerPhone{color:#f3d7a8;text-decoration:none;font-weight:700;white-space:nowrap}
.officeNotice{background:#f8f3ef;text-align:center;color:#302137}
.officeNotice>p{max-width:760px;margin:14px auto;line-height:1.75}
.officeDetails{max-width:780px;margin:24px auto;padding:20px 26px;border:1px solid #d8c9db;border-radius:16px;background:white;line-height:1.65}
.officeDetails a,.bookingCopy a,footer a[href^="tel:"]{color:#8d4ba6;font-weight:700}
.officeNotice .btn{display:inline-block}
@media(max-width:960px){.headerPhone{font-size:13px}}
