@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');
:root{--cream:#fff6e5;--ink:#33241d;--red:#8b291d;--gold:#efb34b;--line:#d9c9af}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{max-width:1440px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:22px}.brand img{width:58px;height:58px;border-radius:50%}.brand small{display:block;font-size:10px;letter-spacing:2px;margin-top:3px}nav{display:flex;gap:32px;align-items:center;font-size:14px;font-weight:600}.nav-contact{border:1px solid var(--red);padding:10px 20px;border-radius:5px;color:var(--red)}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;min-height:650px;padding:68px 5% 54px;gap:45px;align-items:center}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:700;color:var(--red);margin:0 0 20px}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.12;font-weight:600}h1{font-size:clamp(42px,4.6vw,70px);letter-spacing:-2px;margin:0 0 25px}em{color:var(--red);font-weight:600}.intro{max-width:485px;font-size:17px;color:#66564a}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{display:inline-block;padding:15px 25px;background:var(--red);color:white;border-radius:5px;font-size:14px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#632016;transform:translateY(-2px)}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid;padding-bottom:3px}.hero-bottom{display:flex;gap:25px;margin-top:55px;font-size:10px;letter-spacing:1.7px;font-weight:700;color:#826951}.hero-art{position:relative;text-align:center;padding:20px;background:repeating-linear-gradient(90deg,#e5b75e18 0 25px,#fff6e500 25px 50px),repeating-linear-gradient(0deg,#e5b75e18 0 25px,#fff6e500 25px 50px);border-radius:48% 48% 8px 8px}.hero-art>img{width:100%;max-width:440px;border-radius:50%;mix-blend-mode:multiply}.hero-art>p{font-family:Georgia,serif;font-style:italic;font-size:19px}.stamp{position:absolute;right:0;top:0;background:var(--red);color:var(--cream);border-radius:50%;width:110px;height:110px;display:flex;flex-direction:column;justify-content:center;font-size:10px;line-height:1.5;letter-spacing:2px;transform:rotate(12deg);z-index:1;border:5px double var(--cream)}.stamp b{font-size:22px;line-height:1}.ribbon{background:var(--red);color:var(--cream);padding:17px 20px;white-space:nowrap;overflow:hidden;text-align:center;letter-spacing:3px;font-size:13px;font-weight:600}.ribbon span{margin:0 30px;color:var(--gold)}.section{max-width:1440px;margin:auto;padding:90px 5%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}h2{font-size:clamp(36px,3.7vw,52px);letter-spacing:-1px;margin:0}.section-heading>p{color:#66564a;font-size:15px}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.menu-grid article{padding:30px 30px 30px 0}.menu-grid article+article{border-left:1px solid var(--line);padding-left:30px}.category-number{font-size:12px;color:var(--red);font-weight:700;letter-spacing:2px}h3{font-size:28px;margin:12px 0 30px}.dish{margin:0 0 24px}.dish h4{font-size:17px;font-weight:600;margin:0 0 3px}.dish p{font-size:14px;color:#746352;margin:0}.menu-note{color:var(--red);font-size:14px;font-style:italic}.visit{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#f2e5cf}.truck-photo{position:relative}.truck-photo img{width:100%;height:420px;object-fit:cover;border-radius:8px}.truck-photo span{display:block;font-size:11px;letter-spacing:2px;margin-top:13px}.visit-copy>p:not(.eyebrow){color:#746352}.location{border-top:1px solid var(--line);padding-top:20px;margin-top:28px}.location h3{font-family:'DM Sans',sans-serif;font-size:18px;margin:0 0 10px}.location p{color:#66564a;font-size:15px}.visit-copy .button{margin:12px 0 18px}.visit-copy .text-link{display:table}.contact{background:var(--red);color:var(--cream);text-align:center;max-width:none}.contact .eyebrow{color:var(--gold)}.contact .actions{justify-content:center}.light{background:var(--cream);color:var(--red)}.light:hover{background:#f5dcac}.email{font-size:15px;border-bottom:1px solid #cc9b83}footer{display:flex;justify-content:space-between;gap:25px;padding:30px 5%;font-size:12px}footer span:first-child{font-weight:700}footer a{text-decoration:underline}@media(max-width:900px){nav{gap:18px}.hero{gap:25px}.hero-bottom{gap:12px}.stamp{width:85px;height:85px;font-size:8px}.menu-grid{grid-template-columns:1fr 1fr}.menu-grid article:last-child{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding-left:0}.visit{gap:35px}.truck-photo img{height:400px}}@media(max-width:600px){header{padding:18px 5%;align-items:flex-start}.brand{font-size:18px}.brand img{width:43px;height:43px}.brand small{font-size:8px;letter-spacing:1px}nav{gap:13px;font-size:12px;flex-wrap:wrap;justify-content:flex-end;max-width:135px}.nav-contact{display:none}.hero{grid-template-columns:1fr;padding-top:42px;gap:35px}.hero-art{max-width:420px;margin:auto}.hero-bottom{margin-top:32px;flex-wrap:wrap}h1{font-size:43px;letter-spacing:-1.5px}.section{padding:60px 6%}.section-heading{display:block}.section-heading>p{margin-top:25px}.menu-grid{grid-template-columns:1fr}.menu-grid article+article{border-left:0;border-top:1px solid var(--line);padding-left:0}.menu-grid article:last-child{grid-column:auto}.menu-grid article{padding-right:0}.visit{grid-template-columns:1fr}.truck-photo img{height:320px}.actions{gap:18px}.contact h2{font-size:36px}footer{flex-wrap:wrap;justify-content:center;text-align:center;gap:12px 20px}.ribbon{font-size:10px}.eyebrow{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Food photography */
.hero-art{padding:0;background:none;border-radius:0;text-align:left;min-width:0}
.hero-art>img{display:block;width:100%;max-width:none;aspect-ratio:4/3;object-fit:cover;border-radius:12px;mix-blend-mode:normal;box-shadow:0 18px 45px #33241d1a}
.hero-art>p{margin:16px 0 0;text-align:center}.stamp{right:-12px;top:-25px}
.food-gallery{padding-top:0}.food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}.food-grid figure{margin:0;min-width:0}.food-grid img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#35291f}.food-grid figcaption{font-family:'Playfair Display',Georgia,serif;font-size:23px;line-height:1.3;margin-top:14px}.hero-copy{min-width:0}
@media(max-width:900px){.food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stamp{right:-8px}}
@media(max-width:600px){.food-gallery{padding-top:0}.food-grid{grid-template-columns:1fr;gap:28px}.food-grid figcaption{font-size:22px}.hero-art{max-width:none;width:100%}.stamp{right:8px;top:-22px}nav{max-width:145px;gap:8px 15px}.hero{min-height:0}}

/* Centered badge and food truck information */
.stamp{align-items:center;text-align:center;gap:6px;line-height:1.1;transform:none;letter-spacing:1.1px;padding:12px;right:16px;top:16px;width:110px;height:110px}
.stamp>span{display:block;white-space:nowrap;font-size:10px;line-height:1.2}.stamp b{display:block;font-size:24px;line-height:1;letter-spacing:0}
.visit{align-items:center;gap:9%}.visit-title{border-right:1px solid var(--line);padding-right:35px}.visit-town{margin:25px 0 0;color:#66564a}.visit .location{border-top:0;padding-top:0;margin-top:0}.visit .location h3{font-size:22px}.visit .location p{font-size:16px;max-width:500px}
@media(max-width:900px){.stamp{width:96px;height:96px;right:12px;top:12px}}
@media(max-width:600px){.stamp{width:96px;height:96px;right:12px;top:12px}.visit-title{border-right:0;border-bottom:1px solid var(--line);padding:0 0 28px}.visit{gap:28px}}

/* Expanded menu */
.menu-grid article,.menu-grid article+article,.menu-grid article:last-child{grid-column:auto;padding:32px 25px;border:0;border-bottom:1px solid var(--line)}
.menu-grid article:nth-child(3n+1){padding-left:0}.menu-grid article:not(:nth-child(3n+1)){border-left:1px solid var(--line)}
@media(max-width:900px){.menu-grid article:nth-child(n){padding:28px 22px;border-left:0}.menu-grid article:nth-child(odd){padding-left:0}.menu-grid article:nth-child(even){border-left:1px solid var(--line)}}
@media(max-width:600px){.menu-grid article:nth-child(n){padding:28px 0;border-left:0}}
