@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--ink:#3a1b0b;--cream:#fff4d3;--yellow:#e9ad22;--red:#bb2418}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:1rem}a{color:inherit;text-decoration:none}header{position:absolute;z-index:5;top:0;width:100%;padding:30px 5vw;display:flex;align-items:center;justify-content:space-between;color:var(--cream)}.brand{font-size:1.3125rem;letter-spacing:.08em;font-weight:700;line-height:1.1}.brand span{font-size:0.75rem;letter-spacing:.16em}nav{display:flex;gap:30px;align-items:center;font-size:0.875rem}.nav-call{border:1px solid #ffffff60;padding:12px 20px;border-radius:30px}.hero{min-height:810px;height:100svh;max-height:1100px;background:var(--ink);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;position:relative;padding:150px 5vw 100px;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 75% 40%,#744622 0,transparent 55%);pointer-events:none}.hero-copy{position:relative;z-index:2;align-self:center}.eyebrow{font-size:0.75rem;letter-spacing:.19em;font-weight:600;text-transform:uppercase;margin:0 0 24px}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.02;letter-spacing:-.055em;margin:0}h1{font-size:clamp(4.0625rem,6.8vw,6.75rem)}h1 em{color:var(--yellow);font-size:.83em;line-height:1.3}em{font-weight:500}h2{font-size:clamp(3rem,5vw,4.875rem)}.intro{max-width:380px;line-height:1.65;color:#fff4d3c7;margin:24px 0 30px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--yellow);color:var(--ink);border-radius:30px;padding:16px 26px;font-size:0.875rem;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px);background:#ffda6f}.text-link{font-size:0.875rem;border-bottom:1px solid #ffffff70;padding:6px 0}.hero-art{position:relative;align-self:center;padding-left:30px;transform:rotate(4deg)}.photo-frame{position:relative;background:var(--cream);padding:14px 14px 44px;box-shadow:0 20px 80px #0005;animation:float 8s ease-in-out infinite;transform-origin:center}.photo-frame img{display:block;width:100%;height:480px;object-fit:cover}.image-caption{position:absolute;bottom:15px;left:15px;font-size:0.6875rem;letter-spacing:.14em;color:var(--ink)}.vertical-word{position:absolute;right:-16px;top:0;writing-mode:vertical-rl;transform:translateX(100%);font-size:0.75rem;letter-spacing:.25em;color:#fff8}.scroll-cue{position:absolute;bottom:35px;left:5vw;display:flex;gap:20px;font-size:0.75rem;letter-spacing:.07em;align-items:center}.scroll-cue span{font-size:1.5rem;color:var(--yellow)}.marquee{overflow:hidden;background:var(--yellow);padding:22px 0}.marquee div{white-space:nowrap;font-size:1.625rem;font-weight:600;letter-spacing:.06em;width:max-content;animation:marquee 30s linear infinite}.food{padding:100px 8vw 110px}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:20px 50px;align-items:end}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:0}.section-heading>p:last-child{max-width:370px;line-height:1.7;font-size:1rem;justify-self:end}.food-layout{margin-top:60px;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.food-photo{position:relative;transform:rotate(-3deg);background:var(--red);padding:16px;border-radius:180px 180px 0 0;overflow:hidden}.food-photo img{width:100%;height:500px;object-fit:cover;border-radius:170px 170px 0 0;display:block}.menu-list article{padding:23px 0;border-bottom:1px solid #3a1b0b25;display:flex;gap:25px}.menu-list article>span{padding-top:7px;font-size:0.75rem;color:#527b6d}.menu-list h3{font-family:'Playfair Display',serif;font-size:2rem;font-weight:500;margin:0 0 6px}.menu-list p{font-size:0.875rem;line-height:1.6;margin:0;max-width:300px;color:#47635d}.button.dark{margin-top:30px;background:var(--ink);color:var(--cream)}.button.dark:hover{background:#286057}.visit{padding:95px 8vw;background:var(--red);color:var(--cream);display:grid;grid-template-columns:1.4fr 1fr;gap:70px}.visit>div>p:not(.eyebrow){font-size:1.125rem;line-height:1.7;margin:30px 0}.visit-note{align-self:center;border-left:1px solid #fff5;padding-left:65px}.big-v{font-family:'Playfair Display',serif;color:var(--yellow);font-size:8.75rem;line-height:1}.visit-note h3{font-size:1.5rem;font-weight:500;margin:20px 0 0}.visit .visit-note p{font-size:1rem;max-width:250px;margin:15px 0 0}footer{padding:50px 5vw;display:flex;gap:30px;align-items:center;justify-content:space-between;background:var(--ink);color:var(--cream)}footer p,footer a{font-size:0.75rem;line-height:1.7;color:#fff9}footer a{text-decoration:underline}.hero-copy,.hero-art{animation:entrance 1s both}.hero-art{animation-delay:.15s}a:focus-visible{outline:3px solid #33c6ff;outline-offset:6px}.photo-frame:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,#fff2,transparent 50%)}@keyframes float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-16px) rotate(-2deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes entrance{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}@media(max-width:900px){.hero{min-height:720px;height:auto;grid-template-columns:1fr 1fr;padding-top:170px}.photo-frame img{height:380px}.hero-art{padding-left:10px}h1{font-size:4.375rem}.vertical-word{display:none}.food{padding-left:5vw;padding-right:5vw}.food-photo img{height:420px}}@media(max-width:640px){header{padding:24px 6vw}.brand{font-size:1.0625rem}.brand span{font-size:0.625rem}nav{gap:14px}nav>a:first-child{display:none}.nav-call{padding:9px 12px;font-size:0.75rem}nav>a{font-size:0.75rem}.hero{display:flex;flex-direction:column;min-height:0;padding:135px 7vw 75px;gap:50px}.hero-copy{width:100%}h1{font-size:clamp(3.4375rem,13vw,4.875rem)}.eyebrow{font-size:0.6875rem;letter-spacing:.12em}.intro{font-size:0.9375rem}.hero-art{width:91%;padding:0;align-self:center}.photo-frame img{height:340px}.scroll-cue{bottom:18px;left:7vw}.marquee{padding:15px 0}.marquee div{font-size:1.25rem}.food{padding:70px 7vw}.section-heading{display:block}.section-heading .eyebrow{margin-bottom:22px}h2{font-size:3.0625rem}.section-heading>p:last-child{margin:24px 0 0;font-size:0.9375rem}.food-layout{grid-template-columns:1fr;gap:32px;margin-top:38px}.food-photo{width:95%;margin:auto}.food-photo img{height:350px}.menu-list article{padding:20px 0}.menu-list h3{font-size:1.8125rem}.visit{padding:70px 7vw;grid-template-columns:1fr;gap:45px}.visit-note{border-left:0;border-top:1px solid #fff5;padding:30px 0 0;display:grid;grid-template-columns:100px 1fr;gap:0 20px}.big-v{grid-row:1/3;font-size:6.25rem}.visit-note h3{margin-top:10px}.visit .visit-note p{margin-top:8px}.actions{gap:18px}.button{padding:15px 21px;font-size:0.8125rem}.text-link{font-size:0.8125rem}footer{padding:35px 7vw;flex-wrap:wrap;align-items:start}footer p{margin:0;max-width:190px}footer a{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.demo-notice{position:relative;z-index:8;background:#201108;color:#fff4d3;text-align:center;padding:10px 5%;font-size:0.75rem;line-height:1.5;letter-spacing:.06em}header{top:38px}.brand-logo{display:flex;align-items:center;gap:13px}.brand-logo img{width:78px;height:78px;object-fit:contain;background:white;border-radius:50%;flex-shrink:0}.brand-logo>span{font-size:0.9375rem;line-height:1.3;letter-spacing:.08em}.current-rating{display:flex;justify-content:center;align-items:center;gap:30px;flex-wrap:wrap;background:#fff4d3;color:#3a1b0b;padding:24px 6%;border-bottom:1px solid #b38a5938}.current-rating strong{font-size:1.5625rem}.current-rating span{font-size:0.75rem}.r-content{--rc-ink:#3a1b0b;--rc-paper:#fff4d3;--rc-accent:#a1271b}@media(max-width:700px){header{top:53px}.brand-logo img{width:58px;height:58px}.brand-logo>span{font-size:0.75rem}.current-rating{gap:8px;flex-direction:column}.hero{padding-top:180px}}

.sample-actions{display:none}@media(max-width:750px){body{padding-bottom:calc(85px + env(safe-area-inset-bottom))}.sample-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fffdfa;border-top:1px solid #ccc;padding:10px 5% calc(10px + env(safe-area-inset-bottom));box-shadow:0 -4px 20px #0001}.sample-actions a{background:#3a1b0b;color:#fffdfa;font-size:0.875rem;line-height:1.4;padding:13px 5px;text-align:center;text-decoration:none;border-radius:3px}.sample-actions a:last-child{background:#eee5d5;color:#3a1b0b}}
/* Respect motion comfort without an always-running decorative loop. */
.photo-frame,.marquee>div{animation:none!important}.menu-list article>span{color:#70462d}a:focus-visible,button:focus-visible{outline:3px solid #0e3267;outline-offset:5px}

/* Flowing header stays below the concept notice at all zoom levels. */
header{position:relative;top:auto;background:var(--ink)}.hero{height:auto;max-height:none;min-height:690px;padding-top:65px}@media(max-width:700px){header{top:auto;flex-wrap:wrap;gap:20px}header nav{flex-wrap:wrap;gap:15px}.hero{padding-top:45px;min-height:0}}

a:focus-visible,button:focus-visible{outline:3px solid white;outline-offset:2px;box-shadow:0 0 0 6px #3a1b0b}
