@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--rose:#e8b0b5;--rose-pale:#f6e3e3;--ink:#555456;--paper:#fffdfc;--line:#ead9d8}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}.top{display:flex;align-items:center;justify-content:space-between;padding:12px clamp(18px,5vw,72px);background:#fff;position:sticky;top:0;z-index:5;box-shadow:0 2px 18px #0000000b}.brand img{width:120px;height:90px;object-fit:contain}.top nav{display:flex;gap:26px;font-size:14px}.top nav a:hover{color:#bd777e}.hero{text-align:center;padding:70px 20px 90px;background:linear-gradient(140deg,#fff 15%,#f8e9e9 100%)}.hero-logo img{width:min(300px,75vw);height:210px;object-fit:contain}.eyebrow{letter-spacing:.2em;font-size:11px;font-weight:600;color:#bd7e83}.hero h1,h2,h3,footer h2{font-family:'Playfair Display',serif}.hero h1{font-size:clamp(36px,6vw,64px);font-weight:500;margin:14px auto;max-width:760px}.hero>p:not(.eyebrow){font-size:18px}.btn{display:inline-block;border:0;border-radius:999px;background:var(--rose);color:#4c3d3e;padding:14px 27px;font:600 15px 'DM Sans';cursor:pointer;margin-top:16px}.btn:hover{background:#dda0a6}.section{padding:75px clamp(18px,7vw,100px);text-align:center}.section h2,.promo h2{font-size:clamp(30px,4vw,44px);font-weight:500;margin:8px 0 20px}.services{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-top:34px;text-align:left}.service{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 8px 24px #6e50500a}.service-mark{color:#ce9298;font-size:24px}.service h3{font-size:23px;font-weight:500;margin:10px 0}.service p{font-size:14px;line-height:1.6;color:#777}.booking{background:#f8eeee}.booking>p{max-width:650px;margin:0 auto 20px;line-height:1.6}form{max-width:620px;margin:25px auto 0;text-align:left;display:grid;gap:14px}label{display:grid;gap:7px;font-size:13px;font-weight:600}input,select,textarea{width:100%;border:1px solid #ddc9c9;border-radius:12px;padding:13px;background:#fff;color:#454044;font:15px 'DM Sans'}input:focus,select:focus,textarea:focus{outline:2px solid #e8b0b5}.slots{background:#fff;border-radius:14px;padding:14px;min-height:50px}.slots p{margin:0 0 10px;font-size:13px}.slot-list{display:flex;flex-wrap:wrap;gap:8px}.slot{border:1px solid var(--rose);background:white;color:#5a4648;border-radius:30px;padding:9px 15px;cursor:pointer}.slot.selected{background:var(--rose);font-weight:600}.booking form>.btn{justify-self:center;min-width:240px}.promo{text-align:center;padding:65px 20px;background:#626062;color:#fff}.promo .eyebrow{color:#f2c9cc}.promo p:not(.eyebrow){max-width:650px;margin:0 auto;line-height:1.7}.btn-outline{border:1px solid #f5d8da;background:transparent;color:#fff}footer{background:#4d4b4d;color:#fff;padding:38px clamp(18px,7vw,100px);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}footer h2{margin:0;font-size:27px}footer p{margin:5px 0}footer small{width:100%;opacity:.7}@media(max-width:600px){.top{padding:8px 14px}.brand img{width:85px;height:65px}.top nav{gap:12px;font-size:12px}.hero{padding:45px 16px 60px}.hero-logo img{height:170px}.section{padding:55px 17px}.services{grid-template-columns:1fr 1fr;gap:10px}.service{padding:17px}.service h3{font-size:19px}.service p{font-size:12px}footer{display:block}footer>*{display:block;margin:12px 0}}
