@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&family=Caveat:wght@500;600&display=swap');
:root{--wine:#641f2b;--deep:#41151e;--paper:#f7f1e5;--cream:#eee4d2;--ink:#29221d;--muted:#75685b;--line:#cdbca5;--mcf-burgundy:var(--wine);--mcf-burgundy-dark:var(--deep);--mcf-paper:var(--paper);--mcf-cream:var(--cream);--mcf-ink:var(--ink);--mcf-gray:#65594e;--mcf-noise:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b28538;outline-offset:5px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--paper);padding:12px}.skip:focus{top:10px}[hidden]{display:none!important}.serif,.font-display,h1,h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400;letter-spacing:-.035em}.eyebrow,.kicker{font:600 10px/1.5 'DM Sans',sans-serif;letter-spacing:.2em;text-transform:uppercase}.scribble{font:500 30px/1 'Caveat',cursive;letter-spacing:0}.wrap{width:min(1280px,calc(100% - 112px));margin:auto}.night-header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:30}.brand{width:116px;flex-shrink:0}.brand img{width:116px;filter:brightness(0) saturate(100%);opacity:.85}.night-nav{display:flex;gap:23px;align-items:center}.night-nav a{font-size:12px}.night-nav a:hover,.night-nav a[aria-current]{text-decoration:underline;text-underline-offset:6px}.header-end{display:flex;align-items:center;gap:18px}.button,.mcf-btn-primary,.mcf-btn-ghost{display:inline-flex;justify-content:center;align-items:center;gap:28px;padding:17px 23px;border:1px solid var(--wine);border-radius:0;background:var(--wine);color:var(--paper);font:600 11px/1.3 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase;transition:background .2s,transform .2s;box-shadow:none}.button:hover,.mcf-btn-primary:hover{background:var(--deep);transform:translateY(-2px);box-shadow:none}.button.light{background:var(--paper);color:var(--wine);border-color:var(--paper)}.button.outline,.mcf-btn-ghost{background:transparent;color:inherit;border-color:currentColor}.button.outline:hover{background:rgba(128,100,80,.12)}.button.small{padding:14px 18px;font-size:10px;gap:16px}.menu-toggle{display:none;background:none;border:0;font-size:13px;padding:12px}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 20px 30px #0002}.mobile-menu a{display:block;font-family:'DM Serif Display',serif;font-size:26px;padding:6px 0}.hero-night{position:relative;background:var(--wine);color:var(--paper);min-height:760px;overflow:hidden}.hero-inner{position:relative;min-height:760px;padding-top:51px;padding-bottom:58px}.hero-copy{position:relative;z-index:4;pointer-events:none}.hero-copy a{pointer-events:auto}.hero-copy .eyebrow{color:#dbc5ab;margin-bottom:24px}.hero-night h1{font-size:clamp(90px,9.3vw,144px);line-height:.91;letter-spacing:-.05em;max-width:770px}.hero-night h1 em{font-weight:400;color:#e1c5a0}.hero-copy .intro{max-width:355px;font-size:13px;line-height:1.8;margin-top:26px;color:#e9daca}.hero-actions{display:flex;align-items:center;gap:23px;margin-top:25px}.text-link{font-size:12px;border-bottom:1px solid currentColor;padding:9px 0}.hero-scene{position:absolute;right:4px;top:45px;width:47%;height:595px;border-radius:48% 48% 0 0;overflow:hidden;transform:rotate(3deg);border:7px solid #dccdb6;box-shadow:0 15px 40px #260b1a30;animation:scene-in 1.1s both}.hero-scene img{width:100%;height:100%;object-fit:cover;object-position:47% center;filter:brightness(.82) saturate(.85)}.hero-detail{position:absolute;padding:9px 9px 34px;background:var(--paper);box-shadow:0 14px 28px #260b1a40;z-index:5;width:205px}.hero-detail img{width:100%;height:150px;object-fit:cover}.hero-detail figcaption{position:absolute;bottom:6px;color:var(--wine);font:23px/1 'Caveat',cursive}.detail-food{right:-22px;top:460px;transform:rotate(10deg);animation:detail-in 1s .2s both}.detail-bar{right:32%;top:520px;transform:rotate(-10deg);width:170px;animation:detail-in 1s .35s both}.detail-bar img{height:130px}.hero-note{position:absolute;right:2%;top:690px;color:#e5c9a1;transform:rotate(-8deg);font-size:27px}.hero-bottom{position:absolute;bottom:20px;left:0;right:0;display:flex;justify-content:space-between;color:#dbc5ab;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.hero-orbit{position:absolute;right:36%;top:40px;border:1px solid #d3b795;border-radius:50%;width:95px;height:95px;display:grid;place-content:center;text-align:center;font-size:10px;letter-spacing:.12em;line-height:1.7;z-index:6;transform:rotate(-15deg)}
.welcome{padding:92px 0 82px;text-align:center}.welcome .eyebrow{color:var(--wine)}.welcome h2{font-size:clamp(36px,4.5vw,67px);max-width:860px;line-height:1.08;margin:24px auto}.welcome h2 em{color:var(--wine)}.welcome p:last-child{max-width:580px;margin:22px auto 0;font-size:14px;color:var(--muted)}.carousel-section{overflow:hidden;padding-bottom:70px}.carousel-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.pause-motion{border:1px solid var(--line);padding:9px 14px;background:none;font-size:11px;color:var(--ink)}.photo-lane{overflow:hidden;margin:12px 0}.photo-track{display:flex;width:max-content;animation:lane-left 46s linear infinite}.photo-lane.reverse .photo-track{animation-name:lane-right;animation-duration:52s}.photo-set{display:flex;gap:14px;padding-right:14px}.photo-set figure{position:relative;width:280px;height:220px;overflow:hidden}.photo-set figure:nth-child(2n){width:360px}.photo-set img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.photo-set figure:hover img{transform:scale(1.04)}.photo-set figcaption{position:absolute;bottom:12px;left:15px;color:white;font-size:10px;letter-spacing:.1em;text-transform:uppercase;text-shadow:0 1px 6px #000}.carousel-section.paused .photo-track,.photo-lane:hover .photo-track,.photo-lane:focus-within .photo-track{animation-play-state:paused}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:40px}.section-head h2{font-size:clamp(40px,5vw,70px);line-height:1.03;max-width:700px;margin-top:17px}.experiences{padding:80px 0 100px;border-top:1px solid var(--line)}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.experience-card:nth-child(2){margin-top:70px}.experience-card .photo{height:350px;overflow:hidden}.experience-card:nth-child(2) .photo{border-radius:48% 48% 0 0}.experience-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.experience-card:hover img{transform:scale(1.04)}.experience-card .number{font-size:11px;color:var(--muted);margin-top:22px}.experience-card h3{font:36px/1.15 'DM Serif Display',serif;margin:7px 0 12px;letter-spacing:-.03em}.experience-card p{font-size:13px;max-width:300px;color:var(--muted)}.experience-card .text-link{display:inline-block;margin-top:20px}.night-feature{display:grid;grid-template-columns:1.1fr 1fr;background:var(--deep);color:var(--paper)}.night-feature>figure{min-height:660px}.night-feature img{width:100%;height:100%;object-fit:cover}.feature-copy{padding:85px 12%;display:flex;flex-direction:column;justify-content:center;align-items:start}.feature-copy h2{font-size:clamp(50px,5.5vw,80px);line-height:1.02;margin:25px 0}.feature-copy p{font-size:14px;color:#d9c9bb;margin-bottom:27px}.feature-copy .scribble{color:#dfbd88;margin:25px 0 0;font-size:32px}.dish-section{padding:105px 0}.dish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.dish-grid img{width:100%;aspect-ratio:1;object-fit:cover}.dish-grid h3{font:28px 'DM Serif Display',serif;margin-top:17px}.dish-grid p{font-size:12px;color:var(--muted);margin-top:5px}.room-section{position:relative;min-height:600px;display:flex;align-items:end;color:var(--paper);background:var(--ink);overflow:hidden}.room-section>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.58)}.room-copy{position:relative;padding:70px 0}.room-copy h2{font-size:clamp(45px,6vw,85px);max-width:650px;line-height:1.03;margin:18px 0 30px}.review-section{padding:100px 0}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.review{padding:35px 30px;display:flex;flex-direction:column}.review+.review{border-left:1px solid var(--line)}.review .score{font-size:11px;color:var(--wine);letter-spacing:.08em}.review blockquote{font:26px/1.35 'DM Serif Display',serif;margin:23px 0 28px}.review .byline{font-size:11px;margin-top:auto;color:var(--muted)}.review-source{font-size:10px;margin-top:13px;text-decoration:underline;text-underline-offset:4px}.booking-band{text-align:center;background:var(--cream);padding:90px 24px}.booking-band h2{font-size:clamp(53px,7vw,100px);line-height:1.05;margin:22px auto 32px}.booking-band p{font-size:13px;margin-top:24px}.booking-actions{display:flex;justify-content:center;gap:14px}.night-footer{background:var(--wine);color:var(--paper);padding:62px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:50px}.footer-logo{width:180px}.night-footer p,.night-footer a{font-size:12px}.night-footer .eyebrow{font-size:10px;color:#ddc5aa;margin-bottom:18px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px 25px}.footer-bottom{border-top:1px solid #ffffff30;margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;gap:15px;font-size:10px;color:#e2c8b6}.night-footer a:hover{text-decoration:underline}.inner-hero{display:grid;grid-template-columns:1fr 1fr;min-height:500px;background:var(--wine);color:var(--paper)}.inner-hero .inner-copy{padding:65px max(30px,8vw);display:flex;flex-direction:column;justify-content:center;align-items:start}.inner-hero h1{font-size:clamp(48px,5.8vw,90px);line-height:1.02;margin:23px 0 32px}.inner-hero figure{padding:28px 28px 28px 0;min-height:460px}.inner-hero img{width:100%;height:100%;max-height:520px;object-fit:cover;border-radius:45% 45% 0 0}.inner-body .font-display{font-family:'DM Serif Display',serif}.inner-body h2{line-height:1.15}.inner-body .bg-white{background:transparent;border:0;border-top:1px solid var(--line)}.inner-body article{box-shadow:none}.inner-body .mcf-btn-primary,.inner-body .mcf-btn-ghost{border-radius:0}.inner-body section{scroll-margin-top:24px}.inner-body .imgcard{border-radius:0}.inner-body main>section:first-child:not(.inner-hero){padding-top:60px}.inner-body .kicker{color:var(--wine)}.inner-body .inner-hero .kicker{color:var(--paper)}.official-menu{margin-top:20px}.booking-options{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:80px 0}.booking-option{border-top:1px solid var(--line);padding-top:28px}.booking-option h2{font-size:42px;margin:12px 0 22px}.booking-option p{font-size:14px;margin-bottom:26px;max-width:430px}.contact-details{border-top:1px solid var(--line);padding:35px 0 65px;font-size:14px;display:flex;justify-content:space-between;gap:25px}.menu-notice{padding:20px 25px;background:var(--cream);margin:30px auto;max-width:1088px;font-size:13px}.mcf-reveal,.mcf-hero-in{opacity:1!important;transform:none!important}.mcf-kb{animation:none!important}
@keyframes lane-left{to{transform:translateX(-50%)}}@keyframes lane-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}@keyframes scene-in{from{opacity:0;translate:0 25px}to{opacity:1;translate:0 0}}@keyframes detail-in{from{opacity:0;translate:0 35px}to{opacity:1;translate:0 0}}
@media(min-width:1600px){.hero-night,.hero-inner{min-height:840px}.hero-scene{height:645px}.detail-food{top:490px}.detail-bar{top:570px}.hero-note{top:740px}}
@media(max-width:1150px){.night-nav{gap:12px}.night-nav a{font-size:11px}.wrap{width:calc(100% - 64px)}.hero-night h1{font-size:104px}.hero-scene{width:47%;height:530px}.detail-bar{right:27%;top:520px}.hero-detail{width:160px}.hero-orbit{right:36%;width:75px;height:75px;font-size:8px}.hero-copy .intro{max-width:310px}.experience-card .photo{height:290px}}
@media(max-width:950px){.night-nav{display:none}.menu-toggle{display:block}.night-header{height:82px}.brand,.brand img{width:95px}.hero-night h1{font-size:90px}.hero-scene{top:95px;height:490px}.hero-orbit{right:29%;top:50px}.detail-food{top:490px;right:-5px}.detail-bar{right:25%;top:540px;width:135px}.detail-bar img{height:100px}.hero-note{right:0;top:710px}.experience-grid,.dish-grid{gap:18px}.experience-card h3{font-size:30px}.experience-card .photo{height:250px}.feature-copy{padding:50px 10%}.night-feature>figure{min-height:540px}.review{padding:25px 20px}.review blockquote{font-size:22px}.footer-grid{gap:28px}.inner-hero .inner-copy{padding:40px 30px}.inner-hero figure{padding:25px 25px 25px 0}}
@media(max-width:650px){.wrap{width:calc(100% - 40px)}.night-header{height:76px;padding:0 20px}.brand,.brand img{width:82px}.header-end{gap:8px}.header-end .button{font-size:8px;padding:12px;gap:8px}.menu-toggle{font-size:11px;padding:10px 0 10px 8px}.hero-inner{padding-top:32px;min-height:1020px}.hero-night{min-height:1020px}.hero-copy .eyebrow{font-size:8px;margin-bottom:20px}.hero-night h1{font-size:clamp(64px,18vw,100px);line-height:.96;letter-spacing:-.035em}.hero-copy .intro{font-size:12px;max-width:300px;margin-top:21px}.hero-actions{gap:18px;margin-top:22px}.hero-actions .button{padding:15px;font-size:9px;gap:15px}.hero-actions .text-link{font-size:10px}.hero-scene{top:480px;right:7%;width:78%;height:390px;border-width:5px;transform:rotate(3deg)}.hero-orbit{top:452px;right:0;width:75px;height:75px;font-size:8px}.hero-detail{padding:6px 6px 26px;width:126px}.hero-detail img{height:105px}.hero-detail figcaption{font-size:19px}.detail-food{right:-3px;top:780px;transform:rotate(9deg)}.detail-bar{left:0;right:auto;top:755px;width:123px;transform:rotate(-9deg)}.detail-bar img{height:100px}.hero-note{top:944px;right:25px;font-size:25px}.hero-bottom{font-size:7px;bottom:16px}.hero-bottom span:last-child{display:none}.welcome{padding:62px 0 48px}.welcome h2{font-size:39px}.welcome p:last-child{font-size:13px}.carousel-section{padding-bottom:45px}.carousel-toolbar .eyebrow{font-size:8px;max-width:175px}.photo-set{gap:9px;padding-right:9px}.photo-set figure{width:190px;height:155px}.photo-set figure:nth-child(2n){width:230px}.photo-set figcaption{font-size:8px}.section-head{display:block;margin-bottom:30px}.section-head .text-link{display:inline-block;margin-top:20px}.section-head h2{font-size:45px}.experiences,.dish-section,.review-section{padding:58px 0}.experience-grid{grid-template-columns:1fr;gap:40px}.experience-card:nth-child(2){margin-top:0}.experience-card .photo{height:365px}.experience-card:nth-child(2) .photo{height:380px}.experience-card h3{font-size:36px}.experience-card p{max-width:none}.night-feature{grid-template-columns:1fr}.night-feature>figure{min-height:0;height:370px}.feature-copy{padding:45px 25px 55px}.feature-copy h2{font-size:58px}.dish-grid{grid-template-columns:1fr;gap:35px}.dish-grid img{aspect-ratio:1.1}.room-section{min-height:480px}.room-copy{padding:45px 0}.room-copy h2{font-size:49px}.review-grid{grid-template-columns:1fr}.review{padding:30px 0}.review+.review{border-left:0;border-top:1px solid var(--line)}.review blockquote{font-size:27px}.booking-band{padding:62px 20px}.booking-band h2{font-size:59px}.booking-actions{flex-direction:column;align-items:center}.footer-grid{grid-template-columns:1fr;gap:35px}.footer-logo{width:140px}.footer-bottom{flex-direction:column}.inner-hero{grid-template-columns:1fr;min-height:0}.inner-hero .inner-copy{padding:40px 20px 30px}.inner-hero h1{font-size:58px;margin:18px 0 25px}.inner-hero figure{padding:0 20px 25px;min-height:0;height:320px}.inner-hero img{border-radius:40% 40% 0 0}.booking-options{grid-template-columns:1fr;padding:45px 0}.booking-option h2{font-size:37px}.contact-details{flex-direction:column}.inner-body .grid{min-width:0}.inner-body .mcf-btn-primary,.inner-body .mcf-btn-ghost{max-width:100%;font-size:10px;gap:8px;padding:16px}.menu-notice{margin:20px}.inner-body .font-display{overflow-wrap:break-word}}
/* Explicit page transitions work consistently even without the browser View Transitions API. */
.has-page-transitions body{opacity:0;transform:translateY(7px);transition:opacity .34s cubic-bezier(.22,.61,.36,1),transform .34s cubic-bezier(.22,.61,.36,1)}
.has-page-transitions.is-page-ready body{opacity:1;transform:none}
.has-page-transitions.is-page-leaving body{pointer-events:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.has-page-transitions body{opacity:1;transform:none}*,*::before,*::after{animation:none!important;transition:none!important}.photo-lane{overflow-x:auto}.photo-set[aria-hidden]{display:none}.pause-motion{display:none}.hero-scene,.hero-detail{opacity:1}}
