@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap');
:root{--cream:#f5f0e7;--paper:#fbf8f1;--ink:#211c19;--muted:#6d625a;--red:#892f28;--red-dark:#65231f;--peach:#e4af93;--line:#d8cec0}
html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.05}h1,h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400;letter-spacing:-.035em}h1 em,h2 em{font-weight:400;color:var(--red)}a{color:inherit}a:hover{color:var(--red)}img{max-width:100%}button,a{transition:color .2s ease,background-color .2s ease,transform .2s ease}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #e4af93;outline-offset:4px}.skip-link{position:absolute;left:1rem;top:-5rem;z-index:50;background:var(--paper);padding:.5rem 1rem}.skip-link:focus{top:1rem}
.site-header{position:sticky;top:0;z-index:20;background:var(--cream);border-bottom:1px solid var(--line)}.header-inner{max-width:1500px;margin:auto;display:flex;align-items:center;gap:2rem;padding:1rem 4.5vw;min-height:88px}.brand{display:flex;align-items:center;gap:.75rem;color:var(--ink);text-decoration:none;min-width:240px}.brand:hover{text-decoration:none;color:var(--red)}.brand-mark{display:flex;align-items:center;justify-content:center;background:var(--red);color:var(--paper);width:48px;height:48px;border-radius:50%;font-family:Georgia,serif;font-size:22px;font-weight:bold;letter-spacing:-.12em;padding-right:4px;transform:rotate(-12deg)}.brand-mark span{font-size:17px}.brand-name{font-size:17px;font-weight:700;letter-spacing:.09em;line-height:1.05}.brand-name small{display:block;font-size:9px;letter-spacing:.22em;margin-top:4px}.desktop-nav{display:flex;align-items:center;gap:2.6rem;margin:auto}.desktop-nav a{font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}.desktop-nav a:hover{text-decoration:underline;text-underline-offset:6px}.header-cta{border:1px solid var(--ink);border-radius:100px;padding:.7rem 1.3rem;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}.header-cta:hover{background:var(--ink);color:white;text-decoration:none}.header-cta span,.button span,.text-link span{margin-left:1.2rem}.mobile-nav{display:none}
.eyebrow{display:block;color:var(--red);font-size:11px;font-weight:700;letter-spacing:.23em;line-height:1.5}.eyebrow.light{color:#f2c9ad}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;min-width:170px;padding:.95rem 1.35rem;border-radius:100px;text-decoration:none;font-size:14px;font-weight:700;line-height:1.2}.button:hover{text-decoration:none;transform:translateY(-2px)}.button-primary{background:var(--red);color:white}.button-primary:hover{background:var(--red-dark);color:white}.button-light{background:var(--paper);color:var(--red-dark)}.button-light:hover{background:#fff;color:var(--red-dark)}.button-outline{border:1px solid var(--red);color:var(--red)}.button-outline:hover{background:var(--red);color:white}.text-link{display:inline-block;font-size:14px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}.text-link:hover{text-decoration:none}
.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1600px;min-height:680px;margin:auto}.hero-copy{padding:7.5vw 5vw 4rem 8vw;display:flex;flex-direction:column;align-items:flex-start}.hero h1{font-size:clamp(64px,6.8vw,116px);margin:2rem 0 1.5rem;white-space:nowrap}.hero-copy>p{max-width:430px;color:#4b413b;font-size:18px;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:1.6rem}.hero-note{display:flex;gap:.9rem;align-items:center;color:var(--muted);font-size:12px;font-weight:600;line-height:1.4;margin-top:auto;padding-top:3rem}.asterisk{font-size:42px;color:var(--red);line-height:1}.hero-visual{position:relative;overflow:hidden;background:#8b7468;min-height:560px}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-stamp{position:absolute;right:5%;bottom:6%;background:var(--red);color:#fff;width:142px;height:142px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(12deg);box-shadow:0 8px 28px #1b0e0a35}.hero-stamp span{font-size:9px;font-weight:700;letter-spacing:.17em}.hero-stamp strong{font-family:Georgia,serif;font-size:32px;line-height:.9;letter-spacing:-.06em;margin:.4rem 0}
.ticker{display:flex;align-items:center;justify-content:space-around;gap:1rem;background:var(--red);color:#fff;padding:1rem 3%;font-size:12px;font-weight:700;letter-spacing:.17em}.ticker b{font-size:22px;line-height:1;color:#f2c9ad}.section{max-width:1500px;margin:auto;padding:7rem 7vw}.intro-section{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:end}.intro-section h2,.feature-section h2,.section-heading h2,.story-copy h2,.hours-panel h2,.contact-panel h2{font-size:clamp(46px,5vw,76px);margin:1rem 0 0}.intro-copy{padding-bottom:.4rem}.intro-copy p{font-size:19px;color:#4b413b;line-height:1.75;max-width:540px;margin-bottom:2rem}
.feature-section{display:grid;grid-template-columns:1.05fr .95fr;gap:0;padding-top:0;padding-bottom:0;max-width:none}.feature-photo{position:relative;min-height:600px;overflow:hidden}.feature-photo img{width:100%;height:100%;object-fit:cover;display:block}.photo-caption{position:absolute;bottom:1.3rem;left:1.3rem;background:var(--paper);font-size:10px;font-weight:700;letter-spacing:.16em;padding:.6rem .9rem}.feature-copy{background:#e8dfd1;padding:6rem 6vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.feature-copy>p{font-size:18px;line-height:1.7;max-width:530px}.feature-rule{height:1px;background:#c7b9a6;width:100%;max-width:530px;margin:1.6rem 0}.small-copy{font-size:13px!important;color:var(--muted);line-height:1.65!important}.feature-copy .button{margin-top:1.2rem}
.menu-preview{padding-top:8rem;padding-bottom:8rem}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.5rem}.section-heading h2{margin-bottom:0}.section-heading>p{color:var(--muted);max-width:390px;font-size:14px}.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.preview-card,.menu-card{position:relative;display:flex;flex-direction:column;text-decoration:none;color:var(--ink);background:var(--paper);padding:1.9rem;min-height:330px;border:1px solid var(--line)}.preview-card:hover,.menu-card:hover{color:var(--ink);text-decoration:none;transform:translateY(-5px);box-shadow:0 18px 35px #43231a12}.card-number{color:var(--red);font-weight:700;letter-spacing:.16em;font-size:10px}.preview-icon{font-size:70px;color:var(--red);height:125px;display:flex;align-items:center}.preview-card h3,.menu-card h3{font-family:'DM Serif Display',Georgia,serif;font-size:31px;font-weight:400;margin-bottom:.5rem}.preview-card p,.menu-card p{color:var(--muted);max-width:260px;font-size:14px;line-height:1.6}.card-arrow{position:absolute;right:1.9rem;bottom:1.7rem;color:var(--red);font-size:24px}
.visit-banner{display:flex;justify-content:space-between;align-items:end;gap:2rem;background:var(--red);color:white;padding:5rem 7vw}.visit-banner h2{font-size:clamp(50px,6vw,86px);margin:1rem 0 0}.visit-banner h2 em{color:#efc8ae}
.page-hero{background:#eae1d4;padding:7rem 7vw 6rem;min-height:360px}.page-hero h1{font-size:clamp(65px,7.5vw,120px);margin:1.2rem 0}.page-hero p{font-size:19px;max-width:600px;color:#51463f}.menu-section{padding-top:6rem}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.menu-card{min-height:350px}.menu-card-symbol{font-size:70px;line-height:1;color:var(--red);margin-bottom:auto}.menu-card h3{font-size:33px;margin-top:.8rem}.menu-note{display:flex;align-items:center;gap:2rem;border-top:1px solid var(--line);margin-top:3rem;padding-top:2rem}.menu-note p{margin:0;flex:1;max-width:650px}.menu-note .eyebrow{min-width:140px}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.story-photo img{height:610px;width:100%;object-fit:cover}.story-copy p{font-size:18px;color:#4b413b;line-height:1.75}.story-copy .button{margin-top:1rem}
.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.hours-panel,.location-panel,.contact-panel{padding:4rem;background:var(--paper)}.hours-panel h2{margin-bottom:2.5rem}.hours-row{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding:1.1rem 0;font-size:16px}.hours-row:last-of-type{border-bottom:1px solid var(--line)}.hours-panel .small-copy{margin-top:1.6rem}.location-panel{background:var(--red);color:white;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.location-panel h2{font-family:'DM Serif Display',Georgia,serif;font-size:clamp(36px,4vw,62px);font-weight:400;margin:1.2rem 0}.location-panel p{font-size:18px;color:#f2d5c9}.location-panel .button{margin-top:1.3rem}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-panel h2{margin-bottom:1.3rem}.contact-panel>p{font-size:18px;color:var(--muted)}.contact-method{border-top:1px solid var(--line);padding:1.3rem 0;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.contact-method span{font-size:11px;font-weight:700;color:var(--red);letter-spacing:.16em}.contact-method a{font-weight:700}.contact-location{background:#e8dfd1}.contact-location .button{margin-top:2rem}
.detail-page{max-width:1120px;margin:auto;padding:5rem 7vw 7rem}.detail-intro{color:var(--muted);font-size:17px;max-width:650px}.detail-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:3rem 0}.detail-item{background:var(--paper);border:1px solid var(--line);padding:1.5rem}.detail-item h2{font-family:'DM Serif Display',Georgia,serif;font-size:27px;margin:0 0 .5rem}.detail-item p{margin:0;color:var(--muted);font-size:14px}.detail-back{margin-top:2rem}
.account-panel{max-width:600px;margin:5rem auto;padding:3rem;background:var(--paper);border:1px solid var(--line)}.account-panel p{margin-bottom:1.5rem}.account-panel label{display:block;font-weight:700;font-size:13px;margin-bottom:.4rem}.account-panel input{display:block;width:100%;padding:.7rem .8rem;border:1px solid var(--line);background:white;border-radius:3px}.account-panel .helptext,.account-panel ul{font-size:12px;color:var(--muted)}.account-panel .errorlist{color:#a5261c}.account-panel button{border:0;cursor:pointer}.account-panel .account-logout{display:block;color:var(--red);background:none;padding:0;margin-top:2rem;text-decoration:underline}.account-message{background:#e8dfd1;padding:1rem}
.site-footer{background:#241a18;color:#f9f3ea}.footer-top{display:flex;align-items:end;justify-content:space-between;gap:2rem;padding:5rem 7vw;border-bottom:1px solid #ffffff2a}.footer-top h2{font-size:clamp(47px,5vw,78px);margin:1rem 0 0}.footer-top h2 em{color:#f2c9ad}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;padding:3rem 7vw}.footer-grid strong{font-size:11px;letter-spacing:.18em;color:#e2ad99}.footer-grid p{font-size:13px;color:#ddd0c6;line-height:1.8;margin-top:1rem}.footer-grid a{color:#ddd0c6}.footer-grid a:hover{color:white}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff2a;padding:1.3rem 7vw;color:#a9998e;font-size:11px;letter-spacing:.07em}
@media(max-width:1050px){.desktop-nav{gap:1.2rem}.header-inner{padding:1rem 3vw}.brand{min-width:auto}.hero-copy{padding:6rem 4vw}.hero h1{font-size:clamp(56px,6.3vw,85px)}.section{padding-left:5vw;padding-right:5vw}.feature-copy{padding:4rem 5vw}}
@media(max-width:780px){.header-inner{min-height:72px}.desktop-nav,.header-cta{display:none}.mobile-nav{display:block;margin-left:auto;position:relative}.mobile-nav summary{cursor:pointer;list-style:none;font-weight:700;font-size:14px}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{margin-left:.5rem;color:var(--red)}.mobile-nav nav{position:absolute;right:-3vw;top:38px;display:flex;flex-direction:column;min-width:230px;background:var(--paper);border:1px solid var(--line);box-shadow:0 20px 35px #211c1922}.mobile-nav nav a{padding:1rem 1.3rem;text-decoration:none;border-bottom:1px solid var(--line);font-weight:700}.hero{grid-template-columns:1fr}.hero-copy{padding:5rem 7vw 4rem}.hero h1{font-size:clamp(58px,11vw,100px)}.hero-note{margin-top:1rem}.hero-visual{height:520px;min-height:0}.ticker{flex-wrap:wrap}.intro-section,.feature-section,.story-grid,.location-grid,.contact-grid{grid-template-columns:1fr}.intro-section{gap:2rem}.feature-photo{min-height:480px}.feature-copy{padding:5rem 7vw}.preview-grid,.menu-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.page-hero{padding:5rem 7vw}.section{padding:5rem 7vw}.feature-section{padding:0}.visit-banner,.footer-top{padding:4rem 7vw}}
@media(max-width:560px){.brand-name{font-size:14px}.brand-name small{font-size:8px}.brand-mark{height:42px;width:42px}.hero h1{font-size:clamp(53px,12vw,72px);white-space:normal}.hero-copy>p,.page-hero p{font-size:16px}.hero-actions{flex-wrap:wrap;gap:1.5rem}.hero-visual{height:380px}.hero-stamp{width:110px;height:110px}.hero-stamp strong{font-size:25px}.hero-stamp span{font-size:7px}.ticker{font-size:9px;gap:.5rem}.ticker b{font-size:16px}.intro-section h2,.feature-section h2,.section-heading h2{font-size:46px}.intro-copy p,.feature-copy>p,.story-copy p{font-size:16px}.feature-photo{min-height:320px}.section-heading{align-items:start;flex-direction:column}.preview-grid,.menu-grid,.detail-list{grid-template-columns:1fr}.preview-card,.menu-card{min-height:290px}.menu-card-symbol{font-size:55px}.menu-note{display:block}.menu-note p{margin:1rem 0}.visit-banner,.footer-top{align-items:start;flex-direction:column}.page-hero h1{font-size:60px}.hours-panel,.location-panel,.contact-panel{padding:2rem}.hours-row{display:block}.hours-row strong{display:block}.footer-grid{grid-template-columns:1fr 1fr;gap:1rem}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:.5rem}}
.brand-logo{display:block;width:68px;height:56px;object-fit:contain;flex:none;background:#1c1c1c}
.button{justify-content:center}
.menu-lines{display:inline-block;width:16px;height:13px;margin-left:7px;border-top:2px solid var(--red);border-bottom:2px solid var(--red);position:relative;vertical-align:middle}
.menu-lines::after{content:"";position:absolute;left:0;right:0;top:4px;border-top:2px solid var(--red)}
.ticker span+span{border-left:1px solid #ffffff70;padding-left:2.5vw}
.preview-card::before,.menu-card::before{content:attr(data-number);position:absolute;top:1.5rem;right:1.7rem;color:#e4d9cb;font-family:'DM Serif Display',Georgia,serif;font-size:82px;line-height:1}
.preview-card .card-number,.menu-card .card-number{margin-bottom:auto;position:relative;z-index:1}
.preview-card,.menu-card{min-height:310px}
.preview-card h3,.menu-card h3{margin-top:5rem}
@media(max-width:560px){.brand-logo{width:54px;height:45px}.preview-card,.menu-card{min-height:275px}.preview-card h3,.menu-card h3{margin-top:4rem}.ticker span+span{padding-left:3vw}}
.flavor-groups{display:grid;gap:3.5rem;margin:3rem 0}
.flavor-section h2{font-family:'DM Serif Display',Georgia,serif;font-size:clamp(32px,4vw,48px);font-weight:400;margin:0 0 1.5rem}
.flavor-grid{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:0;padding:0}
.flavor-grid li{background:var(--paper);border:1px solid var(--line);padding:.85rem 1rem;font-size:14px;line-height:1.35}
@media(max-width:780px){.flavor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.flavor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
