@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--cream:#faf7ef;--ink:#302d24;--gold:#805d2d;--line:#d6cebd;--muted:#665f53;--pale:#eee7d7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.skip{position:absolute;top:-80px;left:16px;background:white;padding:12px;z-index:10}.skip:focus{top:12px}.topline{background:var(--ink);color:var(--cream);padding:10px 6%;font-size:12px;letter-spacing:1.5px;display:flex;justify-content:space-between}.topline span{letter-spacing:.4px}header{padding:25px 6%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:25px}.brand{font-family:'Playfair Display',Georgia,serif;font-size:32px;line-height:1.1;display:inline-block}.brand span{display:block;font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:3px;margin-top:10px}nav{display:flex;gap:32px;align-items:center;font-size:14px}.button{border:1px solid var(--ink);background:var(--ink);color:var(--cream);padding:16px 25px;display:inline-flex;justify-content:space-between;align-items:center;gap:35px;cursor:pointer;font-weight:500;min-height:48px}.button:hover{background:#4a4434;text-decoration:none}.button.small{padding:12px 20px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px;padding:40px 6% 52px;gap:6%}.hero-copy{padding-top:30px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.5px;color:var(--gold);margin:0 0 24px}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1{font-size:clamp(55px,5.8vw,88px);line-height:1.08;letter-spacing:-2px;margin:0 0 25px}em{color:var(--gold);font-weight:400}.intro{max-width:410px;color:var(--muted);margin-bottom:30px;font-size:17px}.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.text-link{border-bottom:1px solid var(--gold);padding-bottom:5px;font-size:14px;display:inline-block}.hero-note{display:flex;gap:18px;align-items:center;margin-top:35px}.hero-note p{font-size:13px;line-height:1.5;color:var(--muted)}.hero-note strong{font-weight:500;color:var(--ink)}.mini-star{font-size:40px;color:var(--gold)}.hero-image{margin:0;position:relative;min-width:0;overflow:hidden;border-radius:220px 220px 4px 4px;background:var(--pale)}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 35%;position:absolute}.hero-image:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#17110bbc)}figcaption{position:absolute;bottom:28px;left:30px;right:25px;color:white;z-index:1;font-size:11px;letter-spacing:2px}figcaption span{font-family:'Playfair Display',Georgia,serif;font-size:27px;letter-spacing:0;display:block;margin-top:8px}.service-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-evenly;align-items:center;gap:20px;padding:23px 6%;color:var(--gold);font-family:'Playfair Display',Georgia,serif;font-size:22px}.section{padding:85px 6%}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-head p:not(.eyebrow){color:var(--muted);font-size:14px}h2{font-size:clamp(36px,3.5vw,52px);line-height:1.2;letter-spacing:-.8px;margin:0}h3{font-size:28px;line-height:1.25;margin:18px 0 24px}.menus{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.menu{border-top:1px solid var(--gold);padding:24px 0}.menu-number{font-size:12px;letter-spacing:1.8px;color:var(--gold)}dl{margin:0 0 25px}dl div{display:flex;gap:16px;justify-content:space-between;border-bottom:1px solid var(--line);padding:14px 0;font-size:14px}dd{margin:0;white-space:nowrap}dt{min-width:0}.featured{color:var(--gold);font-weight:600}.price-note{color:var(--muted);font-size:13px;max-width:750px}.booking{background:var(--pale);display:grid;grid-template-columns:.9fr 1fr;gap:10%}.booking h2{font-size:clamp(48px,5vw,72px)}.booking-copy>p:not(.eyebrow){max-width:370px;color:var(--muted)}.booking ol{padding:20px 0 20px 22px}.booking li{padding:6px 0 6px 10px}.booking-note{font-size:14px}.phone{font-size:23px;font-family:'Playfair Display',Georgia,serif;display:inline-block;margin-top:12px}form{background:var(--cream);padding:35px}form h3{margin-top:0}label{display:block;font-size:14px;margin:17px 0 7px}label span{color:var(--muted)}input,select,textarea{border:1px solid #b8b09f;background:transparent;color:var(--ink);width:100%;padding:12px;border-radius:0;min-height:48px}input:focus,select:focus,textarea:focus{border-color:var(--gold)}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-row>div{min-width:0}.field-hint,.privacy-note{font-size:12px;line-height:1.6;color:var(--muted)}form .button{width:100%;margin-top:20px}#form-status{font-size:14px;color:var(--gold)}.visit{display:grid;grid-template-columns:1.2fr 1fr;gap:10%}.visit address{font-style:normal;margin:28px 0 18px;color:var(--muted)}.hours{padding-top:30px}.hours p{font-size:14px;color:var(--muted)}footer{background:var(--ink);color:var(--cream);padding:40px 6%;display:flex;justify-content:space-between;align-items:center;gap:25px;flex-wrap:wrap}footer p,footer>a:not(.brand){font-size:14px}footer small{flex-basis:100%;font-size:12px;opacity:.8;border-top:1px solid #6a6151;padding-top:20px}footer small a{text-decoration:underline}@media(min-width:1600px){body{max-width:1600px;margin:auto}}@media(max-width:850px){header{padding:22px 5%}nav{gap:20px}nav>a:not(.button){display:none}.hero{padding:35px 5% 40px;gap:5%;min-height:560px}.hero-copy{padding-top:12px}h1{font-size:60px}.hero-note{margin-top:20px}.actions{gap:20px}.hero-image{border-radius:170px 170px 4px 4px}.service-strip{font-size:18px}.section{padding:60px 5%}.menus{gap:22px}.menu h3{font-size:24px}dl div{font-size:13px}.booking{gap:5%}form{padding:25px}.section-head{align-items:flex-start}.section-head>p{max-width:220px}.form-row{grid-template-columns:1fr;gap:0}}@media(max-width:600px){.topline{justify-content:center;font-size:10px}.topline span{display:none}.brand{font-size:26px}.brand span{font-size:9px;letter-spacing:2px}header{gap:10px}.button.small{font-size:12px;padding:10px;max-width:132px;text-align:center;line-height:1.4}.hero{grid-template-columns:1fr;padding-top:30px;gap:30px}.hero-copy{padding:0}h1{font-size:64px;letter-spacing:-1.5px}.hero h1 br:nth-child(2){display:none}.intro{font-size:16px}.hero-note{display:none}.hero-image{height:410px;border-radius:180px 180px 0 0}.hero-image img{object-position:center 30%}.service-strip{flex-wrap:wrap;font-size:17px;gap:8px 17px;padding:20px 5%}.service-strip>span:nth-child(4){display:none}.section-head{display:block}.section-head>p{max-width:none;margin-top:22px}.menus,.booking,.visit{grid-template-columns:1fr}.menus{gap:16px}.menu{padding-bottom:20px}.menu h3{font-size:30px}dl div{font-size:15px}.section{padding-top:55px;padding-bottom:55px}.booking{gap:35px}.booking h2{font-size:56px}.booking-copy>p:not(.eyebrow){max-width:none}form{padding:25px 20px}.form-row{grid-template-columns:1fr 1fr;gap:12px}.hours{padding-top:20px}.visit{gap:20px}footer{align-items:flex-start;flex-direction:column}footer small{flex-basis:auto}.eyebrow{margin-bottom:18px}h2{font-size:38px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.menu .price-prefix{display:block;font-size:14px;font-weight:400;color:var(--muted)}.menu dd{text-align:right}
