@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--ink:#18251f;--green:#233b30;--green2:#304b3d;--gold:#c6a66a;--cream:#f5f2eb;--paper:#fbfaf7;--muted:#777d75;--line:#e5e1d8;--white:#fff;--shadow:0 22px 70px rgba(18,30,24,.15)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.demo-ribbon{text-align:center;background:#f1e5c9;color:#6f5529;padding:8px 14px;font-size:10px;font-weight:700;letter-spacing:.13em}.site-header{height:86px;padding:0 clamp(22px,7vw,100px);display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:42px;height:42px;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold);font-family:'Playfair Display',serif;font-size:26px}.brand-copy{display:flex;flex-direction:column;gap:3px}.brand-copy strong{font-size:17px;letter-spacing:.22em}.brand-copy small{font-size:8px;letter-spacing:.18em;color:#85877f}.desktop-nav{display:flex;gap:35px;font-size:12px;color:#596159}.desktop-nav a:hover{color:var(--gold)}.cart-button{border:1px solid var(--line);background:transparent;padding:11px 15px;display:flex;align-items:center;gap:12px;font-size:12px;font-weight:700;cursor:pointer}.cart-count{background:var(--green);color:white;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:10px}
.hero{min-height:590px;height:min(72vw,690px);position:relative;display:flex;align-items:center;padding:0 clamp(24px,11vw,160px);background:#26382f url('https://images.unsplash.com/photo-1547592180-85f173990554?auto=format&fit=crop&w=2000&q=85') center 54%/cover no-repeat;color:white}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,26,20,.91) 0%,rgba(13,26,20,.68) 42%,rgba(13,26,20,.12) 100%)}.hero-content{position:relative;max-width:600px;padding:50px 0}.eyebrow{font-size:9px;letter-spacing:.22em;font-weight:700;color:var(--gold);margin:0 0 22px}.eyebrow span{display:inline-block;width:25px;height:1px;background:var(--gold);vertical-align:middle;margin-right:10px}.hero h1,.section-heading h2,.intro h2,.visit-copy h2{font-family:'Playfair Display',serif;font-weight:500;letter-spacing:-.035em}.hero h1{font-size:clamp(54px,7vw,88px);line-height:.99;margin:0 0 24px}.hero h1 em,.section-heading h2 em,.intro h2 em,.visit-copy h2 em{font-weight:500;color:var(--gold)}.hero-description{max-width:420px;color:#e3e5df;font-size:14px;line-height:1.9}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:32px}.button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:16px 21px;font-size:11px;font-weight:700;letter-spacing:.02em;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:#1e2b23}.button-light{background:#f5f2eb;color:var(--ink)}.button-dark{background:var(--green);color:white}.button-green{background:#1e6a49;color:white}.text-link{font-size:11px;font-weight:700;color:inherit}.text-link span{margin-left:12px}.hero-note{position:absolute;right:clamp(24px,7vw,100px);bottom:38px;display:flex;align-items:center;gap:12px;color:#e3e5df;font-size:8px;letter-spacing:.2em}.note-line{height:1px;width:38px;background:var(--gold)}
.section-wrap{max-width:1180px;margin:auto;padding-left:28px;padding-right:28px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:105px;padding-bottom:100px;align-items:end}.dark-eyebrow{color:#a1834f;margin-bottom:17px}.intro h2,.section-heading h2,.visit-copy h2{font-size:clamp(39px,4.5vw,57px);line-height:1.12;margin:0}.intro h2 em,.section-heading h2 em,.visit-copy h2 em{color:#a88a56}.intro-copy{max-width:460px;margin:0 0 5px;color:#737970;font-size:13px;line-height:2}
.menu-section{background:var(--cream);padding:95px 0 100px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}.heading-side{font-size:11px;color:#777d75;line-height:1.8;margin:0 0 7px}.menu-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:43px 0 28px}.category-tabs{display:flex;gap:8px;flex-wrap:wrap}.category-tab{border:1px solid #dcd7cc;background:transparent;color:#63695f;padding:10px 16px;font-size:10px;cursor:pointer}.category-tab.active,.category-tab:hover{background:var(--green);border-color:var(--green);color:white}.search-box{display:flex;align-items:center;gap:8px;border-bottom:1px solid #c9c3b7;padding:7px 2px;color:#8a8d84}.search-box input{border:0;background:transparent;outline:0;width:165px;font-size:11px;color:var(--ink)}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.menu-card{background:var(--paper);border:1px solid #e7e2d8;min-width:0;transition:transform .2s,box-shadow .2s}.menu-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(35,50,40,.08)}.food-image{height:190px;position:relative;overflow:hidden;background:#d9d5c9}.food-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.menu-card:hover .food-image img{transform:scale(1.04)}.food-category{position:absolute;top:13px;left:13px;background:rgba(251,250,247,.93);padding:7px 10px;font-size:8px;letter-spacing:.12em;font-weight:700;color:#6e765e}.menu-card-body{padding:18px 18px 17px}.food-title-row{display:flex;justify-content:space-between;gap:12px;align-items:start}.food-title{font-family:'Playfair Display',serif;font-size:19px;font-weight:600;margin:0}.food-price{font-size:12px;font-weight:700;white-space:nowrap;color:#8e7142}.food-desc{font-size:10px;color:#7c8178;line-height:1.7;min-height:34px;margin:10px 0 17px}.add-button{border:1px solid #d8d4c9;background:transparent;padding:10px 12px;width:100%;display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:700;color:var(--green);cursor:pointer}.add-button:hover{background:var(--green);color:white;border-color:var(--green)}.add-button span{font-size:16px}.menu-disclaimer{font-size:10px;color:#8c806c;margin:25px 0 0;line-height:1.6}
.order-banner{background:var(--green);color:white;padding:55px 28px}.order-banner-inner{max-width:1124px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.order-banner .eyebrow{margin-bottom:13px}.order-banner h2{font-family:'Playfair Display',serif;font-weight:500;font-size:34px;margin:0 0 8px}.order-banner p:not(.eyebrow){font-size:11px;color:#d0d8d0;margin:0}.visit-section{padding-top:105px;padding-bottom:110px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.visit-copy>p:not(.eyebrow){max-width:390px;color:#737970;font-size:12px;line-height:1.9;margin:23px 0}.visit-details{display:grid;gap:17px;margin:27px 0 30px}.visit-details>div{display:flex;align-items:center;gap:14px}.detail-icon{width:35px;height:35px;border:1px solid var(--line);display:grid;place-items:center;color:#a1834f}.visit-details strong,.visit-details small{display:block}.visit-details strong{font-size:10px;margin-bottom:4px}.visit-details small{font-size:10px;color:#858980}.visit-card{background:#e7e6dc;padding:25px;min-height:340px}.visit-card-top{display:flex;align-items:center;gap:13px}.visit-card-top .brand-mark{width:35px;height:35px;font-size:21px}.visit-card-top .eyebrow{margin:0;color:#6e765e;font-size:8px}.map-art{height:215px;margin:15px 0;position:relative;overflow:hidden;background:#d9ddcf;background-image:linear-gradient(28deg,transparent 48%,rgba(255,255,255,.8) 49%,rgba(255,255,255,.8) 52%,transparent 53%),linear-gradient(112deg,transparent 43%,rgba(255,255,255,.75) 44%,rgba(255,255,255,.75) 47%,transparent 48%),linear-gradient(0deg,rgba(133,154,123,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(133,154,123,.14) 1px,transparent 1px);background-size:100% 100%,100% 100%,35px 35px,35px 35px}.map-road{position:absolute;background:#f8f7ef;border:1px solid #c9cebf}.road-one{width:130%;height:18px;top:43%;left:-15%;transform:rotate(-15deg)}.road-two{height:140%;width:15px;left:53%;top:-20%;transform:rotate(24deg)}.road-three{width:90%;height:10px;top:70%;left:20%;transform:rotate(22deg)}.map-pin{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50% 50% 50% 0;background:#a27e43;rotate:-45deg;display:grid;place-items:center;box-shadow:0 5px 15px #66745a66}.map-pin span{rotate:45deg;color:white;font-family:'Playfair Display',serif;font-size:20px}.map-label{position:absolute;bottom:20px;left:20px;font-size:8px;letter-spacing:.17em;font-weight:700;color:#687260}.map-link{display:flex;justify-content:space-between;font-size:10px;font-weight:700;color:#5d694f}.site-footer{background:#142019;color:#e7e9e2;padding:35px clamp(22px,7vw,100px);display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-brand .brand-mark{width:34px;height:34px;font-size:21px}.footer-brand .brand-copy strong{font-size:13px}.footer-brand .brand-copy small{font-size:7px}.site-footer>p,.footer-copy{font-size:9px;color:#aeb6ac}.footer-copy{white-space:nowrap}
.cart-overlay,.checkout-overlay{position:fixed;inset:0;z-index:20;visibility:hidden;pointer-events:none}.cart-overlay.open,.checkout-overlay.open{visibility:visible;pointer-events:auto}.cart-backdrop,.checkout-backdrop{position:absolute;inset:0;background:rgba(9,18,13,.58);opacity:0;transition:opacity .25s}.open .cart-backdrop,.open .checkout-backdrop{opacity:1}.cart-drawer{position:absolute;right:0;top:0;height:100%;width:min(440px,100%);background:var(--paper);padding:30px;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s}.cart-overlay.open .cart-drawer{transform:translateX(0)}.cart-header{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);padding-bottom:20px}.cart-header .eyebrow{margin-bottom:8px}.cart-header h2{font-family:'Playfair Display',serif;font-weight:500;font-size:32px;margin:0}.icon-button{border:1px solid var(--line);background:transparent;width:35px;height:35px;font-size:23px;cursor:pointer;color:var(--ink)}.cart-items{overflow:auto;flex:1;padding:10px 0}.cart-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:17px 0;border-bottom:1px solid var(--line)}.cart-row h4{font-family:'Playfair Display',serif;font-size:16px;font-weight:600;margin:0 0 5px}.cart-row small{font-size:10px;color:#858980}.cart-row-price{font-size:11px;font-weight:700}.quantity-controls{display:flex;align-items:center;gap:12px;margin-top:10px}.quantity-controls button{width:24px;height:24px;border:1px solid var(--line);background:transparent;cursor:pointer}.quantity-controls span{font-size:11px;font-weight:700}.cart-empty{display:none;text-align:center;margin:auto;color:#777d75}.cart-empty.visible{display:block}.cart-empty>span{font-size:34px;color:var(--gold)}.cart-empty h3{font-family:'Playfair Display',serif;color:var(--ink);font-size:22px;font-weight:500}.cart-empty p{font-size:11px}.cart-footer{border-top:1px solid var(--line);padding-top:18px}.cart-footer.hidden{display:none}.total-row{display:flex;justify-content:space-between;font-size:12px}.total-row strong{font-size:15px}.cart-footnote,.checkout-note{font-size:9px;color:#898d84;line-height:1.6}.full-button{width:100%;margin-top:12px}.checkout-overlay{z-index:30;display:grid;place-items:center;padding:18px}.checkout-modal{position:relative;width:min(480px,100%);background:var(--paper);padding:28px;box-shadow:var(--shadow);transform:translateY(12px);transition:transform .25s}.checkout-overlay.open .checkout-modal{transform:translateY(0)}.checkout-modal label{display:block;font-size:10px;font-weight:700;margin-top:17px}.checkout-modal input,.checkout-modal textarea{display:block;width:100%;border:1px solid var(--line);background:#fff;padding:12px;margin-top:7px;font-size:11px;outline-color:var(--gold);resize:vertical}.optional{font-weight:400;color:#888}.toast{position:fixed;z-index:50;bottom:24px;left:50%;transform:translate(-50%,20px);background:#1e6a49;color:white;padding:12px 18px;font-size:11px;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:800px){.desktop-nav{display:none}.site-header{height:74px;padding:0 20px}.hero{min-height:560px;background-position:58% center}.hero-shade{background:linear-gradient(90deg,rgba(13,26,20,.88),rgba(13,26,20,.42))}.intro,.visit-section{grid-template-columns:1fr;gap:28px;padding-top:75px;padding-bottom:75px}.intro-copy{max-width:600px}.menu-section{padding:75px 0}.menu-grid{grid-template-columns:repeat(2,1fr)}.visit-card{max-width:600px;width:100%}.site-footer{flex-wrap:wrap}.site-footer>p{order:3;width:100%;margin:0}.footer-copy{margin-left:auto}}@media(max-width:540px){.demo-ribbon{font-size:8px}.hero{min-height:520px;padding:0 25px}.hero h1{font-size:57px}.hero-description{font-size:12px}.hero-note{right:25px;font-size:7px}.intro h2,.section-heading h2,.visit-copy h2{font-size:43px}.section-wrap{padding-left:20px;padding-right:20px}.section-heading{display:block}.heading-side{margin-top:15px}.menu-tools{display:block;margin:30px 0 22px}.search-box{margin-top:17px;width:100%}.search-box input{width:100%}.menu-grid{grid-template-columns:1fr;gap:15px}.food-image{height:210px}.order-banner-inner{display:block}.order-banner .button{margin-top:25px}.order-banner h2{font-size:29px}.visit-section{gap:35px}.visit-card{padding:16px;min-height:300px}.map-art{height:190px}.site-footer{padding:30px 20px}.footer-copy{font-size:8px}.cart-drawer{padding:23px}.checkout-modal{padding:22px}.cart-header h2{font-size:28px}}
