@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--gold:#ae8957;--dark:#43392e;--cream:#faf7f2;--muted:#756d64}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--dark);font-family:'DM Sans',Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.2;margin:0}h1{font-size:clamp(2.8rem,5.5vw,5.5rem)}h2{font-size:clamp(2rem,3.7vw,3.4rem)}h3{font-size:1.55rem}p{margin:0 0 1.3rem}.eyebrow{font-size:.72rem;letter-spacing:.26em;font-weight:700;color:var(--gold);margin-bottom:1.2rem}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5%,calc((100vw - 1260px)/2));background:#fff;position:sticky;top:0;z-index:5;box-shadow:0 2px 15px #32240d0b}.brand{display:flex;align-items:center;gap:12px;font-family:Georgia,serif;font-size:1.75rem;letter-spacing:.06em;color:#967344}.brand i,.footer-brand i{font-style:normal;font-size:.7em}.brand small,.footer-brand small{font:600 .58rem 'DM Sans',sans-serif;letter-spacing:.34em;display:block;text-align:center;margin-top:-8px}.brand-symbol{font-size:2.1rem}nav{display:flex;gap:32px;align-items:center;font-size:.86rem}nav a:hover,.text-link:hover{color:var(--gold)}.nav-book{border:1px solid var(--gold);padding:10px 20px;color:#87683d}.menu-toggle{display:none}.hero{min-height:650px;background:var(--cream);display:grid;grid-template-columns:1.05fr .95fr}.hero-inner{padding:110px 7% 100px max(9%,calc((100vw - 1150px)/2));align-self:center}.hero h1 em{color:var(--gold);font-weight:400}.hero-inner>p:not(.eyebrow){color:var(--muted);max-width:480px;margin:28px 0}.actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-block;text-align:center;padding:14px 25px;font-size:.83rem;letter-spacing:.04em;transition:transform .2s}.button:hover{transform:translateY(-2px)}.gold{background:var(--gold);color:#fff}.outline{border:1px solid #bba687;color:#826943}.outline.dark{border-color:#9b8a75}.hero-art{position:relative;min-height:560px;background:radial-gradient(ellipse at 50% 50%,#ead6ba 0%,#d4b997 34%,#a98b71 75%,#8d7563 100%);display:flex;align-items:flex-end;justify-content:center;overflow:hidden}.hero-art:before{content:'';position:absolute;width:70%;height:77%;border-radius:50% 50% 0 0;background:linear-gradient(135deg,#f8e9d3,#b6a08b);box-shadow:0 0 0 30px #f8ecdc44;bottom:-18%;transform:rotate(-18deg)}.hero-art:after{content:'✧';position:absolute;font-size:15rem;color:#fff5;top:10%;right:13%}.hero-art span{z-index:1;color:#fff;letter-spacing:.36em;font-size:.65rem;margin-bottom:40px}.section{padding:100px max(7%,calc((100vw - 1200px)/2))}.intro{text-align:center;max-width:900px;margin:auto}.intro p:last-child{color:var(--muted);font-size:1.05rem;margin:25px auto 0;max-width:650px}.services{background:#f9f7f3}.section-heading{text-align:center;margin-bottom:50px}.section-heading>p:last-child{color:var(--muted);margin:18px 0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-card{background:#fff}.service-visual{height:220px;position:relative;background:linear-gradient(145deg,#e6d8c6,#b79e81);overflow:hidden}.service-visual:before{content:'';position:absolute;inset:25px 20%;border-radius:50% 50% 15% 15%;background:#ffffff42;transform:rotate(25deg)}.facial{background:linear-gradient(145deg,#e7d9c8,#c3a5a0)}.reflex{background:linear-gradient(145deg,#e7dfd1,#b6a58c)}.neck{background:linear-gradient(145deg,#dfd6c9,#a79b90)}.service-visual span{position:absolute;top:15px;left:20px;color:#fff;letter-spacing:.1em}.service-body{padding:26px 22px}.service-body p{font-size:.88rem;color:var(--muted);min-height:86px;margin:14px 0}.service-body a,.text-link{font-size:.85rem;color:#967344;font-weight:600}.service-note{text-align:center;color:var(--muted);font-size:.85rem;margin:32px 0 0}.quote-section{text-align:center;background:#e8ded0;padding:100px 20px}.quote-section p:not(.eyebrow){color:var(--muted);margin:22px 0 30px}.gift{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.gift p:not(.eyebrow){color:var(--muted);margin:22px 0}.gift-art{height:310px;background:linear-gradient(125deg,#a88a60,#e7d6b7,#a88a60);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:20px 20px 0 #f4efe7;color:#fff}.gift-art span{font:3.8rem Georgia,serif}.gift-art small{letter-spacing:.28em}.booking{text-align:center;background:var(--cream)}.booking>p:not(.eyebrow){color:var(--muted);margin:22px auto 35px}.booking-options{display:grid;grid-template-columns:repeat(2,minmax(0,350px));justify-content:center;gap:20px}.booking-option{background:#fff;border:1px solid #e7ded0;padding:35px 20px;display:flex;flex-direction:column;gap:12px;align-items:center}.option-icon{font-size:2rem;color:var(--gold)}.booking-option strong{font:1.55rem Georgia,serif}.booking-option>span:not(.option-icon){font-size:.9rem;color:var(--muted)}.booking-option b{font-size:.83rem;color:#9b7747;margin-top:8px}.visit{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.visit address{font-style:normal;color:var(--muted);margin:25px 0 14px}.visit .fine{font-size:.8rem;color:var(--muted);margin:24px 0 0}.map-panel{min-height:330px;background:repeating-linear-gradient(35deg,#e8e3d9 0 25px,#f1ede6 25px 55px);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px}.map-pin{font-size:4rem;color:var(--gold)}.map-panel a{font-size:.85rem;color:#846239;text-decoration:underline}footer{background:#39332d;color:#ede6dc;text-align:center;padding:55px 20px 35px}footer p{font-size:.85rem;color:#c7b9a6}.footer-brand{font:2.3rem Georgia,serif;display:inline-block;margin-bottom:15px;color:#d9b98a}.footer-links{display:flex;gap:30px;justify-content:center;font-size:.83rem;margin:25px 0}footer>small{font-size:.73rem;color:#aaa095}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:900px){.service-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr 1fr}.hero-inner{padding:65px 8%}.hero-art{min-height:480px}.gift,.visit{gap:35px}}@media(max-width:650px){.site-header{height:70px;padding:0 6%}.menu-toggle{display:block;background:none;border:0;font-size:1.4rem;color:var(--dark)}nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:12px 6% 25px;box-shadow:0 12px 20px #0001}nav.open{display:flex}nav a{padding:12px 0}.nav-book{text-align:center;margin-top:10px}.hero{grid-template-columns:1fr}.hero-inner{padding:75px 7%}.hero-art{min-height:290px}.section{padding:70px 7%}.service-grid{grid-template-columns:1fr 1fr;gap:12px}.service-visual{height:145px}.service-body{padding:20px 14px}.service-body h3{font-size:1.25rem}.service-body p{min-height:115px;font-size:.82rem}.gift,.visit{grid-template-columns:1fr}.gift-art{height:240px}.booking-options{grid-template-columns:1fr}.footer-links{gap:15px;flex-wrap:wrap}}
