/* The Ember Box: handmade / rustic / natural */
:root{
  --linen:#f6efe4;
  --oat:#efe4d1;
  --sand:#dcc6a3;
  --sand-deep:#c9ad84;
  --peach:#f1d3bd;
  --terracotta:#c2653f;
  --clay:#9c3a25;
  --sage:#8d9a72;
  --olive:#5d6a42;
  --sage-light:#e2e5d2;
  --paper:#fffaf2;
  --ink:#3b2e26;
  --ink-soft:#6e5c4f;
  --radius:18px;
  --serif:"Fraunces",Georgia,serif;
  --sans:"Karla",system-ui,-apple-system,"Segoe UI",sans-serif;
  --script:"Caveat","Segoe Print",cursive;
  --torn:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 24' preserveAspectRatio='none'%3E%3Cpath d='M0 24V13C30 8 60 17 95 12S150 6 190 11S250 18 290 12S350 5 395 10S455 17 500 12S565 8 600 13V24z'/%3E%3C/svg%3E");
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35  0 0 0 0 .25  0 0 0 0 .15  0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);font-size:1.06rem;color:var(--ink);background:var(--linen);line-height:1.65;-webkit-font-smoothing:antialiased}
body::after{content:"";position:fixed;inset:0;background-image:var(--grain);opacity:.22;pointer-events:none;z-index:200;mix-blend-mode:multiply}
a{color:inherit}
.container{width:min(1120px,100% - 2.5rem);margin-inline:auto}
.narrow{width:min(840px,100% - 2.5rem)}

/* Type */
h1,h2,h3,h4{font-family:var(--serif);font-variation-settings:"SOFT" 100,"WONK" 1;line-height:1.08;font-weight:600;color:var(--ink)}
h1{font-size:clamp(3.1rem,8vw,5.8rem);letter-spacing:-.015em}
h2{font-size:clamp(2.2rem,5vw,3.3rem);margin-bottom:1rem}
h3{font-size:1.35rem;margin-bottom:.6rem}
.eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--olive);margin-bottom:.8rem}
.script-accent{font-family:var(--script);font-size:clamp(1.6rem,3vw,2rem);color:var(--terracotta);line-height:1;margin-bottom:.4rem;transform:rotate(-2deg);display:inline-block}
.lead{font-size:1.15rem;max-width:58ch;margin-bottom:1.6rem;color:var(--ink-soft)}
.lead a{color:var(--clay);font-weight:700}

/* Doodles */
.flame{width:.9em;height:1.2em;fill:none;stroke:var(--terracotta);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.sprig{display:block;width:200px;height:auto;margin-top:2.2rem;fill:none;stroke:var(--olive);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.75}

/* Buttons: hand-cut shape */
.btn{display:inline-block;background:var(--terracotta);color:var(--paper);text-decoration:none;font-family:var(--sans);font-weight:700;font-size:1rem;letter-spacing:.01em;padding:.9rem 1.6rem;border:2px solid var(--terracotta);border-radius:255px 18px 225px 18px/18px 225px 18px 255px;cursor:pointer;box-shadow:3px 4px 0 rgba(156,58,37,.22);transition:transform .15s,box-shadow .15s,background .15s}
.btn:hover{background:var(--clay);border-color:var(--clay);transform:translate(-1px,-1px);box-shadow:4px 5px 0 rgba(156,58,37,.25)}
.btn-ghost{background:transparent;color:var(--clay);border-color:var(--clay);box-shadow:none}
.btn-ghost:hover{background:var(--clay);color:var(--paper);box-shadow:none}
.btn-small{padding:.45rem 1.1rem;font-size:.92rem;box-shadow:none}

/* Nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(246,239,228,.92);backdrop-filter:blur(8px);border-bottom:1.5px dashed var(--sand)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:.5rem;font-family:var(--serif);font-variation-settings:"SOFT" 100,"WONK" 1;font-weight:600;font-size:1.35rem;color:var(--ink);text-decoration:none}
.nav-links{display:flex;align-items:center;gap:1.7rem}
.nav-links a{text-decoration:none;font-weight:600;font-size:.98rem;color:var(--ink-soft)}
.nav-links a:not(.btn):hover{color:var(--terracotta)}
.nav-links a.btn{color:var(--paper)}

/* Sections + torn edges */
.section{position:relative;padding:clamp(4.5rem,9vw,7rem) 0}
.torn::before{content:"";position:absolute;left:0;right:0;top:-22px;height:24px;background:var(--bg);-webkit-mask:var(--torn) repeat-x 0 0/600px 24px;mask:var(--torn) repeat-x 0 0/600px 24px;pointer-events:none}
.section-oat{--bg:var(--oat);background:var(--bg)}
.section-sage{--bg:var(--sage-light);background:var(--bg)}
.section-linen{--bg:var(--linen);background:var(--bg)}
.section-peach{--bg:var(--peach);background:var(--bg)}

/* Hero */
.hero{position:relative;overflow:hidden;background:var(--linen);padding:clamp(3.5rem,7vw,6rem) 0 clamp(5rem,9vw,7.5rem)}
.blob{position:absolute;pointer-events:none;filter:blur(1px)}
.blob-1{width:520px;height:460px;right:-120px;top:-80px;background:var(--peach);opacity:.7;border-radius:58% 42% 55% 45%/48% 60% 40% 52%}
.blob-2{width:300px;height:260px;left:-170px;bottom:-130px;background:var(--sage-light);border-radius:45% 55% 40% 60%/55% 45% 55% 45%}
.hero-inner{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.tagline{font-family:var(--serif);font-style:italic;font-variation-settings:"SOFT" 100,"WONK" 1;font-weight:400;font-size:clamp(1.25rem,2.4vw,1.6rem);color:var(--ink-soft);max-width:28ch;margin:1.1rem 0 2rem}
.hero-actions{display:flex;gap:.9rem;flex-wrap:wrap}
.hero-photo{position:relative;padding:1rem 1.5rem 2.5rem}
.img-hero{min-height:400px;transform:rotate(2deg)}
.stamp{position:absolute;left:-1.5rem;bottom:-.5rem;width:150px;height:150px;transform:rotate(-12deg);text-decoration:none;filter:drop-shadow(2px 3px 0 rgba(59,46,38,.08))}
.stamp svg{width:100%;height:100%}
.stamp-outer{fill:var(--linen);stroke:var(--clay);stroke-width:2.2}
.stamp-inner{fill:none;stroke:var(--clay);stroke-width:1.3;stroke-dasharray:3 4}
.stamp-text{font-family:var(--sans);font-weight:700;font-size:11.5px;letter-spacing:1px;fill:var(--clay)}
.stamp-flame{fill:none;stroke:var(--terracotta);stroke-width:1.8;stroke-linejoin:round}
.stamp-script{font-family:var(--script);font-weight:600;font-size:21px;fill:var(--clay)}

/* Catering */
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.event-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem;margin:0 0 2rem}
.event-list li{display:flex;align-items:center;gap:.7rem;font-weight:600;padding:.8rem 1rem;background:var(--paper);border:1.5px solid var(--sand);border-radius:14px 20px 16px 22px}
.dot{width:10px;height:10px;border-radius:50% 45% 55% 50%;background:var(--sage);flex:none}

/* Photo slots: taped polaroids */
.img-slot{margin:0;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;min-height:230px;padding:14px 14px 46px;background:
  repeating-linear-gradient(135deg,rgba(156,58,37,.05) 0 10px,transparent 10px 20px) content-box,
  linear-gradient(160deg,#ead7bb,#dcc39e) content-box,
  var(--paper);
  border-radius:4px;box-shadow:0 1px 0 rgba(0,0,0,.04),0 14px 28px -16px rgba(59,46,38,.45);color:var(--clay)}
.img-slot::after{content:"";position:absolute;top:-12px;left:50%;width:92px;height:26px;transform:translateX(-50%) rotate(-3deg);background:rgba(220,198,163,.75);box-shadow:0 1px 2px rgba(0,0,0,.06)}
.img-slot span{position:relative;top:16px;font-size:.88rem;font-weight:600;max-width:24ch;padding:0 .5rem}
.img-slot span::before{content:"Image slot";display:block;font-family:var(--script);font-size:1.35rem;font-weight:600;letter-spacing:0;color:var(--terracotta);margin-bottom:.1rem}
.img-tall{min-height:440px;transform:rotate(-1.5deg)}

/* Ember Bus */
.bus-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.4rem;margin:2.4rem 0 1.6rem;align-items:stretch}
.bus-card{background:var(--paper);border:1.5px solid var(--sand);border-radius:var(--radius);padding:1.6rem 1.7rem}
.bus-card h3{display:flex;align-items:center;gap:.45rem;font-size:1.4rem}
.bus-card p{color:var(--ink-soft);margin-bottom:1rem}
.text-link{color:var(--clay);font-weight:700;text-decoration:underline;text-decoration-style:wavy;text-decoration-color:var(--sand-deep);text-underline-offset:5px}
.text-link:hover{text-decoration-color:var(--terracotta)}
.hours{width:100%;border-collapse:collapse;font-size:1rem}
.hours td{padding:.42rem 0;border-bottom:1.5px dashed var(--oat)}
.hours td:last-child{text-align:right}
.hours .open{color:var(--clay);font-weight:700}
.hours .closed td{color:var(--ink-soft);border-bottom:0;font-style:italic}
.img-bus{min-height:100%;transform:rotate(1.5deg);margin:6px 4px}
.map-wrap{border-radius:var(--radius);overflow:hidden;height:360px;background:var(--oat);border:8px solid var(--paper);box-shadow:0 14px 30px -20px rgba(59,46,38,.5)}
.map-wrap iframe{width:100%;height:100%;border:0;filter:sepia(.25) saturate(.85)}

/* Menu */
.menu-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap;margin-bottom:2.2rem}
.menu-intro h2{margin-bottom:0}
.order-note{font-family:var(--script);font-size:clamp(1.7rem,3.2vw,2.2rem);font-weight:600;color:var(--terracotta);line-height:1.1;transform:rotate(-3deg);padding-bottom:.3rem}
.order-note span{display:block;font-family:var(--sans);font-size:.8rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--olive);transform:rotate(3deg);margin-bottom:.3rem}
.menu-block{margin-bottom:3rem}
.menu-title{font-size:clamp(1.6rem,3vw,2.1rem);margin-bottom:1.3rem;padding-bottom:.7rem;position:relative}
.menu-title::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:repeating-linear-gradient(90deg,var(--sand-deep) 0 14px,transparent 14px 20px);opacity:.8}
.menu-title span{color:var(--terracotta);font-size:.8em}
.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.menu-card{background:var(--paper);border:1.5px solid var(--sand);border-radius:var(--radius);padding:1.4rem 1.5rem 1.3rem}
.menu-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.35rem}
.menu-head h4{font-size:1.28rem}
.menu-head .price{font-family:var(--serif);font-variation-settings:"SOFT" 100;font-weight:600;font-size:1.25rem;color:var(--clay);white-space:nowrap}
.menu-card p{color:var(--ink-soft);font-size:.98rem}
.menu-card .sub{font-family:var(--script);font-size:1.3rem;font-weight:600;color:var(--terracotta);line-height:1.1;margin-bottom:.35rem}
.tag{font-family:var(--sans);font-size:.8rem;font-weight:700;color:var(--terracotta)}
.addon{display:inline-block;margin-top:.6rem;font-weight:700;color:var(--olive);background:var(--sage-light);padding:.15rem .6rem;border-radius:999px;font-size:.92rem}
.extras{margin-top:1.4rem;background:var(--peach);border-radius:22px 14px 24px 16px;padding:1.1rem 1.6rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 2rem}
.extras h4{font-family:var(--script);font-size:1.6rem;font-weight:600;color:var(--clay)}
.extras ul{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem 1.8rem}
.extras li span{color:var(--clay);font-weight:700;margin-left:.25rem}
.dietary{background:var(--sage-light);border-radius:14px;color:var(--ink);padding:1rem 1.3rem;max-width:78ch;border:1.5px dashed var(--sage)}
.img-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8rem;margin-top:3rem}
.img-row .img-slot:nth-child(1){transform:rotate(-2deg)}
.img-row .img-slot:nth-child(2){transform:rotate(1.5deg) translateY(8px)}
.img-row .img-slot:nth-child(3){transform:rotate(-1deg)}

/* Enquiry */
.enquiry{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 1.25rem;margin-top:2rem;background:var(--paper);border:1.5px solid var(--sand);border-radius:24px;padding:clamp(1.3rem,4vw,2.4rem);box-shadow:0 20px 40px -30px rgba(59,46,38,.55)}
.field{display:flex;flex-direction:column;gap:.35rem}
.full{grid-column:1/-1}
label{font-size:.9rem;font-weight:700;color:var(--ink)}
input,select,textarea{font:inherit;color:var(--ink);background:var(--linen);border:1.5px solid var(--sand);border-radius:12px;padding:.72rem .9rem;width:100%;min-height:48px}
textarea{resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--terracotta);box-shadow:0 0 0 3px rgba(194,101,63,.18)}
.form-foot{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;margin-top:.4rem}
.form-note{font-size:.92rem;color:var(--ink-soft)}
.form-note a{color:var(--clay);font-weight:700}

/* Footer */
.footer{--bg:#3b2e26;position:relative;background:var(--bg);color:var(--linen);padding:4rem 0 2rem}
.footer-inner{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:2rem}
.footer .logo{color:var(--linen);margin-bottom:.6rem}
.footer .flame{stroke:var(--peach)}
.footer h4{font-family:var(--script);font-size:1.6rem;font-weight:600;color:var(--peach);margin-bottom:.4rem}
.footer p{font-size:.95rem;margin-bottom:.4rem}
.muted{color:#d9cbb8}
.footer a{color:var(--linen);text-decoration:none;border-bottom:1px dashed rgba(246,239,228,.4)}
.footer a:hover{color:var(--peach)}
.ph{color:var(--peach);font-style:italic}
.copyright{margin-top:2.5rem;padding-top:1.4rem;border-top:1px dashed rgba(246,239,228,.2);font-size:.88rem}

/* Responsive */
@media (max-width:900px){
  .hero-inner,.split{grid-template-columns:1fr}
  .hero-photo{max-width:460px;margin-inline:auto;width:100%}
  .img-hero{min-height:320px}
  .img-tall{min-height:300px}
  .bus-grid{grid-template-columns:1fr 1fr}
  .img-bus{grid-column:1/-1;min-height:260px}
  .menu-grid{grid-template-columns:1fr 1fr}
  .footer-inner{grid-template-columns:1fr 1fr}
  .footer-inner>div:first-child{grid-column:1/-1}
}
@media (max-width:640px){
  body{font-size:1rem}
  .nav-links a:not(.btn){display:none}
  .hero{padding-top:2.5rem}
  .sprig{display:none}
  .hero-photo{padding:1rem .6rem 2.5rem}
  .img-hero{min-height:260px}
  .stamp{width:122px;height:122px;left:-.4rem;bottom:-.6rem}
  .blob-1{width:340px;height:300px;right:-160px;top:-60px}
  .bus-grid,.menu-grid,.img-row,.enquiry,.footer-inner{grid-template-columns:1fr}
  .img-row .img-slot{min-height:200px}
  .img-row .img-slot:nth-child(2){transform:rotate(1.5deg)}
  .map-wrap{height:300px}
  .hero-actions .btn,.form-foot .btn{width:100%;text-align:center}
  .form-foot{flex-direction:column;align-items:stretch}
  .menu-intro{align-items:flex-start}
  .extras ul{display:grid;grid-template-columns:1fr 1fr;gap:.4rem 1rem;width:100%}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* How it works */
.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.2rem;counter-reset:none}
.step{position:relative;background:var(--paper);border:1.5px solid var(--sand);border-radius:var(--radius);padding:2.4rem 1.6rem 1.6rem}
.step h3{font-size:1.4rem}
.step p{color:var(--ink-soft)}
.step a{color:var(--clay);font-weight:700}
.step-num{position:absolute;top:-1.4rem;left:1.4rem;display:grid;place-items:center;width:3rem;height:3rem;font-family:var(--script);font-size:1.9rem;font-weight:600;line-height:1;color:var(--paper);background:var(--terracotta);border-radius:52% 48% 55% 45%/50% 55% 45% 50%;box-shadow:2px 3px 0 rgba(156,58,37,.22)}
.steps .step:nth-child(2) .step-num{background:var(--olive)}
.steps .step:nth-child(3) .step-num{background:var(--clay)}
.steps .step:not(:last-child)::after{content:"";position:absolute;top:50%;right:-1.25rem;width:1.1rem;height:2px;background:repeating-linear-gradient(90deg,var(--sand-deep) 0 4px,transparent 4px 7px)}

/* Taste us first */
.section-tight{padding:clamp(3.5rem,6vw,4.5rem) 0}
.taste-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.6rem 2.2rem;background:var(--paper);border:2px dashed var(--terracotta);border-radius:26px 18px 28px 20px;padding:clamp(1.5rem,4vw,2.4rem) clamp(1.5rem,4vw,2.8rem)}
.taste-flame{width:3.4rem;height:4.4rem;stroke-width:1.4}
.taste-copy h2{font-size:clamp(1.8rem,3.6vw,2.5rem);margin-bottom:.5rem}
.taste-copy p:last-child{color:var(--ink-soft);max-width:60ch}

/* Meet the people */
.split-rev{grid-template-columns:.9fr 1.1fr}
.img-jeremy{transform:rotate(-2deg);min-height:460px}
.body-copy{color:var(--ink-soft);margin-bottom:1rem;max-width:58ch}
.ph-block{color:var(--clay);font-style:italic;background:rgba(194,101,63,.08);border:1.5px dashed var(--terracotta);border-radius:12px;padding:.8rem 1rem}
.signoff{font-family:var(--script);font-size:2rem;font-weight:600;color:var(--terracotta);transform:rotate(-2deg);display:inline-block;margin-top:.4rem}
.signoff::before{content:"\2014\00a0"}

/* FAQ */
.faq{margin-top:1.8rem;display:grid;gap:.8rem}
.faq details{background:var(--paper);border:1.5px solid var(--sand);border-radius:16px;padding:0 1.4rem;transition:background .2s}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 0;font-family:var(--serif);font-variation-settings:"SOFT" 100,"WONK" 1;font-weight:600;font-size:1.2rem;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;border:1.5px solid var(--terracotta);color:var(--terracotta);font-family:var(--sans);font-size:1.3rem;line-height:1;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{color:var(--ink-soft);padding:0 0 1.2rem;max-width:66ch}
.faq details a{color:var(--clay);font-weight:700}
.faq .ph{color:var(--clay)}

@media (max-width:900px){
  .steps{grid-template-columns:1fr;gap:2.2rem}
  .steps .step:not(:last-child)::after{display:none}
  .split-rev{grid-template-columns:1fr}
  .img-jeremy{min-height:320px;max-width:460px;width:100%;margin-inline:auto}
  .taste-card{grid-template-columns:auto 1fr}
  .taste-card .btn{grid-column:1/-1;justify-self:start}
}
@media (max-width:640px){
  .taste-card{grid-template-columns:1fr}
  .taste-flame{width:2.4rem;height:3.2rem}
  .taste-card .btn{justify-self:stretch}
  .faq summary{font-size:1.08rem}
  .nav-links{gap:1rem}
}

/* Real photos inside the polaroid slots */
.logo-badge{width:44px;height:44px;border-radius:50%;flex:none;display:block}
.footer .logo-badge{width:40px;height:40px;box-shadow:0 0 0 2px rgba(241,211,189,.5)}
.photo img{position:absolute;top:14px;left:14px;width:calc(100% - 28px);height:calc(100% - 60px);object-fit:cover;display:block;border-radius:2px}
.photo figcaption{position:absolute;left:0;right:0;bottom:11px;text-align:center;font-family:var(--script);font-size:1.35rem;font-weight:600;line-height:1;color:var(--ink-soft)}
.img-hero img{object-position:50% 55%}
.img-row .photo{min-height:0;aspect-ratio:4/5}
.img-row .photo:nth-child(1) img{object-position:40% 50%}
.photo-strip{margin:2.8rem 0 0;height:clamp(180px,24vw,290px);overflow:hidden;border-radius:22px 14px 26px 16px/16px 24px 14px 22px;box-shadow:0 18px 30px -20px rgba(59,46,38,.55)}
.photo-strip img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;display:block}
.taste-card .taste-photo{width:230px;min-height:0;aspect-ratio:1/0.92;transform:rotate(-3deg);padding:10px 10px 12px}
.taste-photo img{top:10px;left:10px;width:calc(100% - 20px);height:calc(100% - 22px)}
.taste-photo::after{width:70px;height:22px}
.offer-list{list-style:none;margin:0 0 1.6rem;display:grid;gap:.6rem;max-width:56ch}
.offer-list li{position:relative;padding-left:1.4rem;color:var(--ink-soft)}
.offer-list li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50% 45% 55% 50%;background:var(--terracotta)}
.offer-list strong{color:var(--ink)}
.story-accent{font-size:clamp(1.5rem,2.6vw,1.9rem);margin:-.2rem 0 .9rem}
@media (max-width:900px){
  .taste-card .taste-photo{width:200px}
}
@media (max-width:640px){
  .taste-card .taste-photo{width:100%;max-width:300px;justify-self:center;margin-top:.6rem}
  .logo-badge{width:38px;height:38px}
  .img-row .photo{aspect-ratio:4/4.2}
}

/* Ember Bus vs mobile setup clarifiers */
.hero-note{max-width:44ch;margin:-.4rem 0 1.6rem;padding-left:.9rem;border-left:2px solid var(--terracotta);font-size:.98rem;color:var(--ink-soft)}
.intro-line{font-family:var(--script);font-size:clamp(1.35rem,2.4vw,1.6rem);font-weight:600;line-height:1.2;color:var(--terracotta);margin:-.2rem 0 .8rem;max-width:34ch}
.form-intro{margin:-.2rem 0 1.6rem;padding:.8rem 1rem;background:rgba(255,250,242,.6);border:1.5px dashed var(--terracotta);border-radius:14px 18px 12px 20px;color:var(--ink)}
.split-rev{align-items:start}
.img-jeremy{position:sticky;top:110px}
@media (max-width:900px){.img-jeremy{position:relative;top:0}}


/* ============ OPTION D: WOODSMOKE & FOREST ============ */
:root{
  --forest:#26392b;
  --forest-2:#30473a;
  --smoke:#2c241f;
  --ember:#e0702e;
  --linen:#f2e9d6;
  --oat:#ece1ca;
  --sand:#d6c4a1;
  --sand-deep:#b49a72;
  --peach:#f2e9d6;
  --terracotta:#d0632a;
  --clay:#b5501f;
  --sage:#8fa071;
  --olive:#4f6a45;
  --sage-light:var(--smoke);
  --paper:#f8f2e4;
  --ink:#2c241f;
  --ink-soft:#5e5046;
  --radius:12px;
  --serif:"Bree Serif",Georgia,serif;
  --sans:"Nunito Sans",system-ui,sans-serif;
  --script:"Kaushan Script",cursive;
  --woodgrain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='300'%3E%3Cfilter id='w'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.003 .22' numOctaves='3' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 .1  0 0 0 0 .06  0 0 0 0 .03  0 0 0 .9 -.25'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23w)'/%3E%3C/svg%3E");
  --torn:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 40' preserveAspectRatio='none'%3E%3Cpath d='M0 40V30L20 18 32 27 46 8 60 26 74 20 90 30 120 24 150 31 170 16 182 25 196 4 212 24 226 18 240 28 280 22 320 30 342 14 354 23 368 6 384 25 400 19 420 29 460 23 500 31 520 18 532 26 548 9 562 26 578 20 600 30V40z'/%3E%3C/svg%3E");
}
body{background:var(--linen)}
body::after{opacity:.2}
h1,h2,h3,h4{font-variation-settings:normal;font-weight:400}
h1{font-family:var(--script);font-weight:400;font-size:clamp(3.4rem,8.5vw,6.4rem);line-height:1.05;letter-spacing:0}
.eyebrow{color:var(--olive);font-family:var(--sans);font-weight:800}
.script-accent{color:var(--ember);font-size:clamp(1.5rem,2.6vw,1.9rem)}
.tagline{font-family:var(--sans);font-style:normal;font-weight:400;color:var(--ink-soft)}
.torn::before{top:-38px;height:40px;-webkit-mask-size:600px 40px;mask-size:600px 40px}
/* dark sections re-map ink */
.hero,.section-sage,.section-peach,.footer{--ink:#f2e9d6;--ink-soft:#d4c9b3;--olive:#a9bb88}
.bus-card,.enquiry,.taste-card{--ink:#2c241f;--ink-soft:#5e5046;--olive:#4f6a45}
.taste-card .script-accent{color:var(--clay)}
.btn{background:var(--ember);border-color:var(--ember);color:#fff8ec;border-radius:10px;box-shadow:0 3px 0 #9c4318;font-weight:800}
.btn:hover{background:#c85d22;border-color:#c85d22;box-shadow:0 3px 0 #7d3613}
.btn-ghost{background:transparent;color:var(--ink);border-color:rgba(242,233,214,.6);box-shadow:none}
.btn-ghost:hover{background:rgba(242,233,214,.1);border-color:var(--ink);color:var(--ink)}
.btn-small{box-shadow:none}
.nav{background:rgba(31,46,35,.96);border-bottom:1px solid rgba(242,233,214,.12)}
.logo{color:#f2e9d6;font-family:var(--script);font-weight:400;font-size:1.45rem;font-variation-settings:normal}
.nav-links a{color:#d4c9b3}
.flame{stroke:var(--ember)}
/* hero: forest with hint of firelight */
.hero{background:radial-gradient(ellipse 60% 55% at 72% 60%,rgba(224,112,46,.16),transparent 70%),var(--forest)}
.blob-1{background:var(--forest-2);opacity:.9;border-radius:50% 50% 46% 54%/55% 50% 50% 45%}
.blob-2{background:#3a5240;opacity:.55}
.hero .eyebrow{color:#e9a36f}
.sprig{stroke:#a9bb88;opacity:.7}
/* image slots: timber frames */
.img-slot{padding:0;border:12px solid #6b4a30;border-image:none;border-radius:6px;background:repeating-linear-gradient(135deg,rgba(242,233,214,.05) 0 10px,transparent 10px 20px),linear-gradient(160deg,#4a3b30,#3a2e26);box-shadow:inset 0 0 0 2px rgba(0,0,0,.25),0 14px 28px -14px rgba(0,0,0,.55);color:#e9c9a2}
.img-slot::before{content:"";position:absolute;inset:-12px;border-radius:6px;background:var(--woodgrain);opacity:.55;pointer-events:none;-webkit-mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);padding:12px}
.img-slot::after{display:none}
.img-slot span{top:0}
.img-slot span::before{color:var(--ember);font-size:1.5rem}
.img-hero{transform:rotate(1.5deg)}
.stamp-outer{fill:var(--forest);stroke:#e9a36f;stroke-width:2}
.stamp-inner{stroke:#e9a36f}
.stamp-text{fill:#f2e9d6;font-family:"Nunito Sans",sans-serif;font-weight:800}
.stamp-script{fill:var(--ember);font-family:"Kaushan Script",cursive;font-size:19px;font-weight:400}
.stamp-flame{stroke:var(--ember)}
/* sections */
.section-oat{--bg:var(--linen)}
.section-sage{--bg:var(--smoke);background:linear-gradient(rgba(44,36,31,.55),rgba(44,36,31,.55)),var(--woodgrain),repeating-linear-gradient(180deg,transparent 0 118px,rgba(0,0,0,.35) 118px 120px),#3b2f27}
.section-linen{--bg:var(--oat)}
.section-peach{--bg:var(--forest);background:var(--forest)}
.event-list li{background:var(--paper);border:1.5px solid var(--sand);border-radius:10px}
.dot{background:var(--ember);border-radius:50%}
.bus-card{background:var(--paper);border:0;box-shadow:0 18px 30px -18px rgba(0,0,0,.6)}
.bus-card h3{color:var(--ink)}
.hours td{border-bottom:1px dashed var(--sand)}
.hours .open{color:var(--clay)}
.text-link{color:var(--clay);text-decoration-color:var(--ember)}
.img-bus{transform:rotate(-1deg)}
.map-wrap{border:10px solid #6b4a30;border-radius:8px;box-shadow:0 18px 30px -18px rgba(0,0,0,.7)}
.map-wrap iframe{filter:sepia(.2) saturate(.85)}
.order-note{color:var(--clay);font-weight:400}
.order-note span{color:var(--olive)}
.menu-title{color:var(--ink)}
.menu-title::after{background:repeating-linear-gradient(90deg,var(--sand-deep) 0 22px,transparent 22px 28px);height:2px}
.menu-title span{color:var(--ember)}
.menu-card{background:var(--paper);border:1px solid var(--sand);border-left:5px solid var(--olive);border-radius:10px}
.menu-head .price{font-family:var(--serif);font-weight:400;color:var(--clay)}
.menu-card .sub{color:var(--clay);font-size:1.15rem}
.addon{background:#e3e8d6;color:var(--olive)}
.extras{background:var(--forest);color:#f2e9d6;border-radius:12px}
.extras h4{color:#e9a36f;font-size:1.5rem}
.extras li span{color:#f0a06a}
.dietary{background:#e3e8d6;border:0;border-left:5px solid var(--olive);border-radius:10px}
.enquiry{background:var(--paper);border:0;box-shadow:0 24px 40px -24px rgba(0,0,0,.6)}
.section-peach .lead a{color:#f0a06a}
.form-note a{color:var(--clay)}
.footer{--bg:var(--smoke)}
.footer h4{color:#e9a36f;font-size:1.45rem}
.footer .flame{stroke:var(--ember)}
.ph{color:#f0a06a}

/* catering price card */
.price-card{margin:1.6rem 0 1.4rem;padding:1.1rem 1.3rem;background:var(--paper,#fffaf2);border:1.5px dashed var(--sand-deep,#c9ad84);border-radius:14px;max-width:34rem}
.price-eyebrow{margin:0 0 .3rem;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--olive,#5d6a42);font-weight:600}
.price-main{margin:0;font-size:1.08rem;line-height:1.5}
.price-main strong{font-family:var(--serif,Georgia,serif);font-size:1.3rem;color:var(--clay,#9c3a25);white-space:nowrap}
.price-note{margin:.35rem 0 0;font-size:.92rem;font-style:italic;opacity:.8}

/* enquiry form: FormSubmit states */
.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.form-success{margin-top:2rem;background:var(--paper,#fffaf2);border:1.5px dashed var(--sand-deep,#c9ad84);border-radius:24px;padding:clamp(1.3rem,4vw,2.4rem);text-align:center}
.form-success .script{font-family:'Caveat',cursive;font-size:1.6rem;color:var(--terracotta,#c2653f);margin:0}
.form-success h3{margin:.2rem 0 .6rem}
.form-success a,.form-error a{color:var(--clay,#9c3a25);font-weight:700}
.form-error{margin-top:1rem;color:var(--clay,#9c3a25);font-weight:600}
[hidden]{display:none!important}

/* inline price tag (grazing paddles) */
.price-tag{display:inline-block;margin:.35rem 0 0;padding:.15rem .7rem;background:var(--paper,#fffaf2);border:1.5px dashed var(--sand-deep,#c9ad84);border-radius:999px;font-size:.92rem;white-space:nowrap}
.offer-list .price-tag strong{font-family:var(--serif,Georgia,serif);color:var(--clay,#9c3a25);font-size:1.05rem}

.img-jeremy img{object-position:72% 50%}
