/* Site 01: "Signature". Mobile-first base + theme. */
:root{
  --o:#fe5008;--o-dk:#d94200;--cream:#ffe3d6;--peach:#ffa884;--ink:#111;--paper:#fff;
  --f-print:"Permanent Marker",Impact,sans-serif;--f-script:"Caveat Brush","Brush Script MT",cursive;--f-body:Figtree,system-ui,sans-serif;
  --pad:18px;--wrap:1200px;--mbar-h:72px;
  --alt-bg:var(--cream);--card-r:18px;--card-bd:2px solid var(--ink);--card-bd2:2px solid var(--ink);--card-sh:none;
  --lab:800 12px/1.2 var(--f-body);--dn-font:800 20px/1.2 var(--f-body);--ph-bg:var(--o);--ph-fg:#fff;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font:17px/1.55 var(--f-body);color:var(--ink);background:var(--paper);padding-bottom:calc(var(--mbar-h) + env(safe-area-inset-bottom))}
img,video{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--o);outline-offset:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
section{padding:56px 0}

.print{font-family:var(--f-print);font-weight:400;text-transform:uppercase;line-height:1.04;margin:0}
.script{font-family:var(--f-script);font-weight:400;line-height:1;margin:0;color:var(--o)}
.k{font-weight:800;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--o);margin:0 0 8px}
.h2{font-size:clamp(30px,7.4vw,54px);margin:0 0 14px}
.lede{font-size:clamp(17px,4.4vw,20px);margin:0 0 22px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 22px;border-radius:10px;border:2px solid transparent;font:800 16px/1.1 var(--f-body);letter-spacing:.02em;text-decoration:none;cursor:pointer;transition:transform .12s,background .2s}
.btn:active{transform:scale(.98)}
.btn-o{background:var(--o);color:#fff}
.btn-o:hover{background:var(--o-dk)}
.btn-ink{background:var(--ink);color:#fff}
.btn-white{background:#fff;color:var(--ink)}
.btn-line{border-color:currentColor;background:transparent}
.row{display:flex;flex-wrap:wrap;gap:10px}
.row .btn{flex:1 1 auto}

.hdr{position:sticky;top:0;z-index:50;background:var(--o);color:#fff}
.hdr .bar{display:flex;align-items:center;gap:14px;padding:6px var(--pad);max-width:1400px;margin:0 auto}
.hdr .logo img{height:60px;width:auto}
.hdr nav.main,.hdr .hbtn{display:none}
.menu{margin-left:auto}
.menu summary{list-style:none;cursor:pointer;display:grid;place-items:center;width:48px;height:48px;border-radius:12px}
.menu summary::-webkit-details-marker{display:none}
.menu summary svg{width:30px;height:30px}
.menu .panel{position:absolute;left:0;right:0;top:100%;background:var(--o);padding:6px var(--pad) 18px;display:grid;box-shadow:0 18px 30px rgba(0,0,0,.2);max-height:calc(100vh - 80px);overflow:auto}
.menu .panel a{font-weight:800;font-size:18px;text-decoration:none;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.25)}
.menu .panel a.go{color:var(--ink)}
.menu .panel a[aria-current]{text-decoration:underline;text-underline-offset:5px}

.mbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1.7fr 1fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -6px 22px rgba(0,0,0,.14)}
.mbar .btn{min-height:52px}
.mbar .btn-line{color:var(--ink)}

.media{position:relative;overflow:hidden;background:#222}
.media>img,.media>video{width:100%;height:100%;object-fit:cover}
.media>video{position:absolute;inset:0}
@media (prefers-reduced-motion:reduce){.media>video{display:none}}

.status{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px;padding:6px 14px;border-radius:999px;background:#fff;color:var(--ink)}
.status::before{content:"";width:9px;height:9px;border-radius:50%;background:#aaa}
.status.is-open::before{background:#1fa855}
.status.is-closed::before{background:#d9480f}

.rail{display:grid;grid-auto-flow:column;grid-auto-columns:80%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);padding:4px var(--pad) 12px;margin:0 calc(var(--pad) * -1);scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
.rail>*{scroll-snap-align:start}
.hint{font-size:13px;opacity:.7;margin:6px 0 0}
.map{border-radius:22px;overflow:hidden;min-height:320px;border:3px solid var(--ink);background:#ddd}
.map iframe{width:100%;height:100%;min-height:320px;border:0;display:block}

.foot{background:var(--ink);color:#ddd;padding:52px 0 34px}
.foot .grid{display:grid;gap:30px}
.foot .tile{background:var(--o);border-radius:18px;padding:14px;display:inline-block}
.foot .tile img{height:100px;width:auto}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:4px}
.foot ul a{display:inline-block;padding:6px 0;text-decoration:none}
.foot a:hover{color:#fff;text-decoration:underline}
.foot .fh{font:800 13px/1.2 var(--f-body)}
.foot .fine{margin-top:34px;font-size:13px;color:#888}

/* theme touches */
.dish .dn{text-transform:none}
.faves .dish{border-radius:18px}
.cater .ph{border-radius:22px}
.phero .k{color:var(--ink)}
.phero .script{color:var(--ink)}
.phero .btn-o{background:var(--ink)}
.p-soc,.pkg,.fgrid article,.form,.mi{border-width:2px}
.band .btn-ink{background:var(--ink)}

.hero01{position:relative;color:#fff;background:#222 url("img/home-hero.webp") center/cover;padding:40px 0 46px}
.hero01::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,.55))}
.hero01 .wrap{position:relative}
.hero01 .status{background:rgba(0,0,0,.55);color:#fff}
.hero01 h1{font-size:clamp(40px,10.5vw,78px);line-height:1.16;margin:16px 0 0;max-width:15ch}
.hero01 h1 em{font-style:normal;color:var(--o);position:relative;white-space:nowrap}
.hero01 h1 em svg{position:absolute;left:-4%;bottom:-.1em;width:108%;height:.2em}
.hero01 .script{font-size:clamp(46px,12vw,82px);margin:14px 0 18px}
.hero01 .lede{max-width:520px}
.hero01 .meta{margin:18px 0 0;font-size:15px;opacity:.9}

@media (min-width:760px){
  :root{--pad:32px}
  section{padding:80px 0}
  .row .btn{flex:0 0 auto}
  .rail{grid-auto-flow:row;grid-template-columns:repeat(var(--rail-cols,3),1fr);overflow:visible;margin:0;padding:0}
  .hint{display:none}
  .hdr .hbtn{display:inline-flex;margin-left:auto}
  .menu{margin-left:0}
  .foot .grid{grid-template-columns:1fr 1fr}
  .phero:not(.compact){display:grid;grid-template-columns:1fr 1fr;align-items:center}
  .phero:not(.compact) .media{order:2;aspect-ratio:auto;height:100%;min-height:420px}
  .phero:not(.compact) .ph-text{padding:56px 40px 56px max(var(--pad),calc((100vw - var(--wrap)) / 2 + var(--pad)));max-width:none;margin:0}
}
@media (min-width:1080px){
  :root{--pad:48px}
  body{padding-bottom:0}
  .mbar,.menu{display:none}
  .hdr .logo img{height:88px}
  .hdr nav.main{display:flex;gap:22px;margin-left:auto}
  .hdr nav.main a{font-weight:800;font-size:14px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}
  .hdr nav.main a:hover{border-bottom-color:currentColor}
  .hdr .hbtn{margin-left:10px}
  .foot .grid{grid-template-columns:1.2fr 1fr 1fr 1.2fr}
  .hero01{min-height:min(80vh,780px);display:flex;align-items:center;padding:70px 0}
  .hero01::before{background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.45) 55%,rgba(0,0,0,.12))}
  .phero:not(.compact) .media{min-height:520px}
}
