:root{--ink:#202023;--blush:#f4e8e8;--rose:#9d4055;--gold:#ba8a4e;--paper:#fffdfc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit}header{position:static;height:auto;min-height:86px;padding:18px max(24px,calc((100vw - 1180px)/2)) 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;border-bottom:1px solid #ddd;background:#fff}.brand{text-decoration:none;font-size:22px;letter-spacing:.12em;line-height:1}.brand b{color:var(--rose)}.brand small{display:block;font-size:9px;letter-spacing:.24em;margin-top:8px;color:#777}header>nav{width:100vw;max-width:none;flex:0 0 100%;display:flex;justify-content:center;gap:28px;margin:18px calc(50% - 50vw) 0;padding:12px 24px;border-top:1px solid #eee}nav a{text-decoration:none;font-size:13px;font-weight:bold;text-transform:uppercase}.nav-toggle{display:none}.hero{min-height:570px;display:grid;grid-template-columns:1.1fr .9fr;background:var(--blush)}.hero-copy{padding:85px max(40px,calc((100vw - 1180px)/2));padding-right:50px}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:.2em;color:var(--rose)}h1,h2{font-family:Georgia,serif;line-height:1.08}h1{font-size:clamp(48px,7vw,88px);margin:.25em 0}h1 em{color:var(--rose);font-weight:normal}.hero-copy>p:not(.eyebrow){max-width:600px;font-size:19px}.hero-art{background:radial-gradient(circle at 50% 45%,#dfb7bd 0 22%,#fff8 22.5% 29%,#9d4055 29.5% 55%,#572532 55.5%);display:grid;place-items:center}.monogram{width:250px;height:250px;border:2px solid white;border-radius:50%;display:grid;place-items:center;color:white;font:70px Georgia}.actions{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.button{display:inline-block;background:var(--rose);color:#fff;padding:13px 20px;text-decoration:none;font-weight:bold;border-radius:3px}.button.ghost{background:transparent;color:var(--ink);border:1px solid #777}.split,.visit{max-width:1180px;margin:80px auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:0 24px}h2{font-size:clamp(32px,4vw,50px);margin:.25em 0 .6em}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#d8d0d1}.feature-grid article{background:var(--paper);padding:25px}.feature-grid article>b{color:var(--gold)}.service-preview{padding:80px max(24px,calc((100vw - 1180px)/2));background:var(--ink);color:#fff}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cards a{min-height:220px;padding:28px;border:1px solid #555;text-decoration:none;background:#29282b}.cards span{color:#e2b5bd}.notice{font-size:13px;color:#6d6862}.hours>div{display:flex;justify-content:space-between;border-bottom:1px solid #ddd;padding:9px 0;gap:20px}.hours span{text-align:right}.map{width:100%;height:380px;border:0}.inner{max-width:1180px;margin:auto;padding:50px 24px 90px}.page-title{max-width:850px;padding:30px 0}.page-title h1{font-size:clamp(46px,7vw,78px)}.page-title>p:last-child{font-size:18px}.menu-list{display:grid;grid-template-columns:1fr 1fr;gap:24px}.menu-group{padding:28px;background:var(--blush)}.menu-group h2{font-size:30px}.menu-group>div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #d9cfcf;gap:20px}.prose{max-width:900px}.prose section{margin:40px 0}.prose li{margin:9px 0}footer{background:var(--ink);color:#eee;padding:65px max(24px,calc((100vw - 1180px)/2)) 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-grid h2{font:700 20px Arial}.copyright{border-top:1px solid #444;padding-top:20px;margin-top:35px;color:#aaa;font-size:13px}.cookie{position:fixed;bottom:15px;left:15px;right:15px;max-width:760px;margin:auto;background:#fff;padding:16px 20px;box-shadow:0 8px 40px #0004;z-index:30;display:none;align-items:center;justify-content:space-between;gap:20px;border:1px solid #ccc}.cookie.show{display:flex}.cookie p{margin:0;font-size:13px}.cookie button{padding:9px 13px;border:1px solid #999;background:white}.cookie #accept{background:var(--rose);color:#fff;border-color:var(--rose)}@media(max-width:800px){.nav-toggle{display:block}header>nav{display:none;flex-direction:column;align-items:center}header>nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:60px 24px}.hero-art{min-height:340px}.split,.visit{grid-template-columns:1fr;margin:55px auto;gap:30px}.cards,.footer-grid,.menu-list{grid-template-columns:1fr}.service-preview{padding-top:55px;padding-bottom:55px}.cookie{flex-direction:column;align-items:flex-start}}