:root{--tomato:#bd3c2f;--tomato-dark:#8e2822;--paper:#fbf0dc;--cream:#fff9eb;--ink:#25251e;--olive:#374838;--line:rgba(37,37,30,.2)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 Arial,Helvetica,sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}svg{max-width:100%}::selection{background:#f8c67f;color:var(--ink)}:focus-visible{outline:3px solid #f1aa54;outline-offset:4px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:absolute;z-index:20;top:-80px;left:20px;background:var(--ink);color:#fff;padding:12px 18px}.skip-link:focus{top:10px}.section-shell{width:min(1290px,calc(100% - 8vw));margin:auto}.eyebrow{text-transform:uppercase;font-size:.78rem;letter-spacing:.15em;font-weight:800;margin:0 0 22px}.eyebrow .asterisk{font-size:1.5rem;vertical-align:middle;color:#f1bd70;margin-right:8px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:500}h1 i,h2 i{font-weight:400}h2{font-size:clamp(3.4rem,6.1vw,6.8rem);line-height:.97;letter-spacing:-.065em}h3{font-size:1.65rem;line-height:1.1;letter-spacing:-.04em}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:57px;padding:15px 23px;border:1px solid transparent;border-radius:100px;font-weight:700;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:1.2rem}.button-dark{background:var(--ink);color:var(--cream)}.button-dark:hover{background:var(--olive)}.button-light{background:var(--cream);color:var(--ink)}.button-light:hover{background:#f4cf9f}.text-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid currentColor;padding:12px 0 7px;font-weight:800}.text-link span{font-size:1.25rem;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}
.announcement{background:var(--olive);color:#fff8e9;text-align:center;font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:8px 16px}.announcement span{margin:0 10px;color:#f0b96c}.site-header{height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 4vw;background:var(--paper);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:13px;white-space:nowrap}.brand-mark{width:46px;height:46px;border:2px solid var(--tomato);color:var(--tomato);display:grid;place-items:center;border-radius:50%;font-family:Georgia,serif;font-size:1.75rem;font-weight:700;position:relative}.brand-mark span{position:absolute;font-family:Arial,sans-serif;font-size:.75rem;right:-9px;bottom:-4px;background:var(--paper)}.brand-name{font-family:Georgia,serif;font-size:1.75rem;letter-spacing:-.065em}.brand-name em{color:var(--tomato)}.site-nav{display:flex;align-items:center;gap:clamp(20px,2.6vw,45px);font-size:.88rem;font-weight:750}.site-nav>a:not(.nav-cta):hover{color:var(--tomato)}.nav-cta{background:var(--tomato);color:#fff;border-radius:100px;padding:12px 19px}.nav-cta span{margin-left:14px}.nav-cta:hover{background:var(--tomato-dark)}.nav-toggle{display:none}
.hero{display:grid;grid-template-columns:50% 50%;min-height:min(720px,calc(100svh - 130px));background:var(--tomato);color:var(--cream);overflow:hidden}.hero-copy{padding:clamp(60px,7.5vw,115px) 3vw 75px 6vw;position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start}.hero h1{font-size:clamp(5rem,9.3vw,10.8rem);line-height:.83;letter-spacing:-.09em;margin:0 0 34px}.hero h1 i{color:#eeb468}.hero-lede{font-size:clamp(1rem,1.4vw,1.28rem);max-width:450px;line-height:1.55;margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.hero-note{margin-top:auto;padding-top:50px;display:flex;align-items:center;gap:15px;font-size:.76rem;font-weight:800;line-height:1.3;letter-spacing:.04em;text-transform:uppercase}.starburst{font-size:3rem;line-height:1;color:#f2be79}.hero-art{position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 46%,#d6624c 0 24%,transparent 68%),#a72f29;min-width:0}.hero-art:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(25deg,transparent 0 29px,rgba(255,237,214,.025) 30px 31px)}.hero-art svg{width:min(92%,710px);transform:rotate(-15deg);filter:saturate(1.08)}.hero-art-caption{position:absolute;top:7%;right:7%;font-family:Georgia,serif;font-style:italic;font-size:clamp(1.1rem,2.2vw,2rem);line-height:1.1;transform:rotate(8deg);z-index:2}.round-stamp{position:absolute;bottom:8%;right:5%;border:2px solid #ffe7ba;border-radius:50%;width:114px;height:114px;display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(16deg);font-size:.69rem;line-height:1.3;letter-spacing:.13em;font-weight:900;padding:15px}.round-stamp span{font-size:1.4rem;color:#ffd290;padding:0 2px}.ticker{background:#f2bc70;overflow:hidden;white-space:nowrap;padding:13px 0;font-family:Georgia,serif;font-size:1.05rem;font-weight:700;letter-spacing:.04em}.ticker span{display:block;text-align:center}
.table-section{padding-top:112px;padding-bottom:122px}.section-heading,.menu-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-heading h2,.menu-heading h2{margin:0}.section-heading>p,.menu-heading>p{max-width:325px;font-size:1.03rem;line-height:1.65;margin:0 2% 8px 0}.booking-card{background:var(--cream);border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:12px 12px 0 rgba(189,60,47,.1)}.mode-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin-bottom:30px}.mode-tabs button,.menu-controls button{background:none;border:0;padding:14px 18px;color:#655f54;font-weight:800}.mode-tabs button[aria-selected=true]{color:var(--tomato);box-shadow:inset 0 -3px var(--tomato)}.booking-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:15px;align-items:end}.booking-form label{display:flex;flex-direction:column;gap:7px;font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800}.booking-form input,.booking-form select{width:100%;height:57px;border:1px solid #d6cbb6;border-radius:10px;background:#fffdf6;color:var(--ink);padding:0 15px;min-width:0;outline-color:var(--tomato)}.booking-form .button{white-space:nowrap}.booking-result{margin-top:22px;padding:17px 21px;background:#f8ead3;border-radius:10px;min-height:57px}.booking-result p{margin:0}.booking-result strong{color:var(--tomato-dark)}.suggested-times{display:flex;gap:9px;flex-wrap:wrap;margin-top:11px}.suggested-times span{border:1px solid #caa073;border-radius:50px;padding:6px 12px;font-size:.87rem;font-weight:800}.pickup-intro{display:flex;justify-content:space-between;align-items:center;gap:25px}.pickup-intro h3{margin-bottom:8px}.pickup-intro p{margin:0;max-width:580px}.pickup-intro+.booking-result{margin-top:22px}.basket-items{display:flex;flex-wrap:wrap;gap:8px;margin:9px 0}.basket-items span{padding:5px 10px;border-radius:40px;background:#fff7e6;border:1px solid #e1c8a5}.basket-total{font-weight:900;color:var(--tomato-dark)}
.menu-section{padding-bottom:130px}.menu-heading{align-items:end}.menu-controls{display:flex;gap:10px;margin-bottom:31px;border-bottom:1px solid var(--line)}.menu-controls button{font-size:1.04rem;min-width:108px;text-align:left}.menu-controls button[aria-selected=true]{color:var(--tomato);box-shadow:inset 0 -3px var(--tomato)}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.dish-card{background:var(--cream);border:1px solid var(--line);overflow:hidden;border-radius:13px;display:flex;flex-direction:column}.dish-art{height:220px;display:grid;place-items:center;position:relative;overflow:hidden;background:var(--dish-bg,#e5c5a3)}.dish-art:before,.dish-art:after{content:"";position:absolute;border-radius:50%}.dish-art:before{width:180px;height:180px;background:var(--dish-plate,#f3e5c8);box-shadow:0 8px 20px #60402a30,inset 0 0 0 14px #ffffff90}.dish-art:after{width:120px;height:120px;background:var(--dish-food,#d2673e);box-shadow:inset 13px 13px 0 #ffffff35;transform:rotate(-20deg) scaleX(1.12)}.dish-art span{font-family:Georgia,serif;font-size:3.4rem;position:relative;z-index:1;transform:rotate(-15deg);text-shadow:2px 5px 6px #0004}.dish-card-content{padding:21px 23px 22px;display:flex;flex-direction:column;flex:1}.dish-card-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.dish-card h3{font-size:1.55rem;margin-bottom:10px}.dish-card .price{font-weight:800;white-space:nowrap;color:var(--tomato-dark)}.dish-card p{line-height:1.5;color:#635d52;margin-bottom:20px;font-size:.93rem}.dish-card button{align-self:flex-start;margin-top:auto;background:transparent;border:0;border-bottom:1px solid var(--ink);padding:4px 0;color:var(--ink);font-weight:800}.dish-card button:hover{color:var(--tomato);border-color:var(--tomato)}.menu-note{font-size:.82rem;color:#645e53;margin:21px 0 0}
.story-section{display:grid;grid-template-columns:1fr 1fr;min-height:560px;background:#eec47e}.story-visual{background:#f5d798;position:relative;overflow:hidden}.story-visual:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(105deg,transparent 0 40px,#dfac6322 41px 42px)}.tomato{position:absolute;border-radius:48% 54% 50% 47%;background:radial-gradient(circle at 32% 25%,#f27b4c 0,#d5412e 58%,#9d2b24 100%);box-shadow:inset -17px -22px 0 #7d291c1f,13px 25px 20px #783c293b}.tomato:before{content:"✳";position:absolute;top:-30px;left:42%;font-size:80px;color:#496641}.tomato-one{width:250px;height:240px;left:17%;top:9%;transform:rotate(-15deg)}.tomato-two{width:275px;height:265px;right:7%;bottom:7%;transform:rotate(22deg)}.tomato-three{width:135px;height:135px;left:12%;bottom:5%;transform:rotate(12deg)}.tomato-three:before{font-size:45px;top:-13px}.story-scribble{position:absolute;left:25%;top:51%;z-index:2;font-family:Georgia,serif;font-style:italic;font-size:clamp(2.3rem,4vw,5rem);line-height:.95;color:#fff9e7;transform:rotate(-11deg);text-shadow:0 2px 10px #722e2855;max-width:300px}.story-copy{padding:clamp(65px,8vw,120px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.story-copy h2{font-size:clamp(3.2rem,5vw,6rem);margin-bottom:25px}.story-copy p:not(.eyebrow){max-width:480px;font-size:1.08rem;line-height:1.75;margin-bottom:25px}
.moments-section{padding-top:120px;padding-bottom:130px}.moments-section h2{margin-bottom:50px}.moment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.moment-grid article{border-top:1px solid var(--ink);padding-top:15px;position:relative}.moment-grid article>span{font-size:.82rem;font-weight:800}.moment-icon{height:160px;display:grid;place-items:center;font-size:7rem;color:var(--tomato);font-family:Georgia,serif}.moment-grid h3{font-size:2rem;margin-bottom:12px}.moment-grid p{max-width:330px;line-height:1.6}.visit-section{background:var(--olive);color:#fdf3df}.visit-inner{display:grid;grid-template-columns:1fr .75fr;gap:10%;padding-top:105px;padding-bottom:110px}.visit-section h2{margin-bottom:20px}.visit-lede{font-size:1.1rem;line-height:1.7;max-width:520px;margin-bottom:30px}.visit-details{display:grid;gap:32px;align-content:center}.visit-details>div{border-top:1px solid #f8e8cc78;padding-top:12px;display:grid;grid-template-columns:140px 1fr;gap:15px}.visit-details span{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800}.visit-details p{line-height:1.7;margin:0}
.footer{background:#22241d;color:#f9e7cf;padding:62px 4vw 24px}.footer-main{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-bottom:60px}.footer-logo{font-family:Georgia,serif;font-size:clamp(3rem,7vw,7rem);letter-spacing:-.08em;line-height:.8}.footer-logo i{color:#e6b273}.footer-logo span{font:2rem Arial,sans-serif;vertical-align:top;margin-left:14px;color:#e6b273}.footer-main p{margin:0}.footer-main>a:last-child{font-size:.85rem;font-weight:800;border-bottom:1px solid}.footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #ffffff40;padding-top:19px;font-size:.73rem;letter-spacing:.03em;color:#e3d1ba}
@media(max-width:1000px){.hero-copy{padding-left:5vw}.hero h1{font-size:clamp(4.8rem,9vw,8rem)}.booking-form{grid-template-columns:repeat(3,1fr)}.booking-form .button{grid-column:1/-1;justify-content:center}.story-copy{padding:60px 6vw}}
@media(max-width:700px){.site-header{height:76px}.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;background:transparent;border:1px solid var(--ink);border-radius:50%;padding:10px}.nav-toggle span:not(.visually-hidden){height:2px;width:100%;background:var(--ink)}.site-nav{display:none;position:absolute;left:0;right:0;top:76px;background:var(--paper);padding:24px 4vw 30px;box-shadow:0 10px 15px #0002;align-items:stretch;flex-direction:column;gap:20px}.site-nav.is-open{display:flex}.site-nav .nav-cta{align-self:flex-start}.hero{grid-template-columns:1fr}.hero-copy{padding:75px 7vw 55px;min-height:600px}.hero h1{font-size:clamp(5.1rem,13vw,9rem)}.hero-art{min-height:460px}.hero-art svg{width:min(90%,550px)}.hero-note{padding-top:40px}.section-shell{width:calc(100% - 10vw)}.section-heading,.menu-heading{display:block}.section-heading>p,.menu-heading>p{margin:25px 0 0}.table-section{padding-top:85px;padding-bottom:90px}.booking-form{grid-template-columns:1fr 1fr}.booking-form label:first-child{grid-column:1/-1}.booking-card{padding:22px}.menu-section{padding-bottom:95px}.menu-grid{grid-template-columns:1fr 1fr}.story-section{grid-template-columns:1fr}.story-visual{min-height:440px}.story-copy{padding:70px 7vw}.moments-section{padding:90px 0}.moment-grid{grid-template-columns:1fr;gap:40px}.moment-icon{height:100px;justify-content:start;font-size:5rem}.visit-inner{grid-template-columns:1fr;gap:50px}.footer-main{display:block}.footer-main p{margin:35px 0 20px}}
@media(max-width:490px){.announcement{font-size:.6rem}.brand-name{font-size:1.5rem}.hero-copy{min-height:570px}.hero h1{font-size:clamp(4.5rem,15vw,6.5rem)}.hero-art{min-height:350px}.hero-art-caption{top:7%;right:3%}.round-stamp{width:80px;height:80px;font-size:.48rem}.booking-form{grid-template-columns:1fr}.booking-form label:first-child{grid-column:auto}.pickup-intro{display:block}.pickup-intro .button{margin-top:22px}.menu-grid{grid-template-columns:1fr}.dish-art{height:200px}.visit-details>div{grid-template-columns:1fr;gap:5px}.footer-bottom{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media(max-width:490px){.menu-controls button{min-width:0;flex:1;padding:13px 6px;text-align:center;font-size:.92rem}}

/* A seasonal edit and more useful, still illustrative pickup planning. */
.table-edit{display:flex;align-items:end;justify-content:space-between;gap:38px;background:#eacb9e;border:1px solid #cda675;border-radius:22px;padding:36px 42px;margin:0 0 34px;position:relative;overflow:hidden}.table-edit:after{content:'✳';position:absolute;right:28%;top:-74px;color:#f8e7c8;font-size:14rem;line-height:1;opacity:.5;pointer-events:none}.table-edit>div,.table-edit>button{position:relative;z-index:1}.table-edit>div{max-width:680px}.table-edit-number{font-size:.72rem;font-weight:900;letter-spacing:.15em;color:#7e4530}.table-edit h3{font-size:clamp(2rem,3.5vw,3.5rem);margin:18px 0 14px;line-height:1.05;letter-spacing:-.05em}.table-edit h3 i{color:var(--tomato)}.table-edit p{max-width:610px;line-height:1.6;margin-bottom:19px}.table-edit-meta{display:flex;flex-wrap:wrap;gap:9px}.table-edit-meta span{background:#fff6e8;border:1px solid #ca9d71;border-radius:30px;padding:6px 11px;font-size:.75rem;font-weight:800}.table-edit .button{white-space:nowrap}.menu-filter{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:-12px 0 22px;color:#5b5347;font-size:.82rem;font-weight:800}.menu-filter label{display:flex;align-items:center;gap:9px;cursor:pointer}.menu-filter input{width:18px;height:18px;accent-color:var(--tomato)}.menu-filter>span{color:#8b7b6c}.dish-card-actions{display:flex;justify-content:space-between;align-items:end;gap:10px;margin-top:auto}.dish-card-actions button{margin-top:0;text-align:right}.dish-tag{font-size:.68rem;color:#567348;background:#e5edda;border-radius:30px;padding:5px 8px;white-space:nowrap}.basket-items{display:grid;gap:0;margin:13px 0}.basket-row{display:grid;grid-template-columns:minmax(0,1fr) auto 52px;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #e3caab}.basket-row>span{font-size:.9rem}.basket-row>strong{text-align:right}.basket-quantity{display:flex;align-items:center;gap:8px}.basket-quantity button{border:1px solid #bf8d6b;background:#fff7e8;color:var(--ink);border-radius:50%;width:28px;height:28px;display:grid;place-items:center;line-height:1}.basket-quantity button:hover{background:var(--tomato);color:white}.basket-quantity span{min-width:1ch;text-align:center;font-weight:900}
@media(max-width:950px){.table-edit{align-items:start;flex-direction:column}.table-edit:after{right:-20px}}
@media(max-width:560px){.table-edit{padding:26px 22px}.table-edit .button{white-space:normal}.menu-filter{align-items:start;flex-direction:column;gap:6px}.dish-card-actions{align-items:start;flex-direction:column}.basket-row{grid-template-columns:minmax(0,1fr) auto}.basket-row>strong{grid-column:2}.basket-quantity{grid-row:1/3;grid-column:2}.basket-row>strong{grid-column:1;grid-row:2;text-align:left}}

/* Brand wordmark proportions. */
.brand-mark{flex-shrink:0}.brand-name{line-height:.95}.brand-name small{display:block;font:700 8px/1 Arial,sans-serif;letter-spacing:.24em;margin-bottom:5px}.footer-logo{display:inline-block;font-size:clamp(2.7rem,6vw,6rem)}.footer-logo small{display:block;font:700 11px/1 Arial,sans-serif;letter-spacing:.24em;margin-bottom:12px}
@media(max-width:490px){.brand{gap:10px}.brand-name{font-size:1.45rem}.footer-logo span{font-size:1.1rem;margin-left:6px}}
