@font-face{font-family:'Big Shoulders';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/big-shoulders-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Courier Prime';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/courier-prime-400-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Courier Prime';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/courier-prime-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Courier Prime';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/courier-prime-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:900;font-display:swap;src:url('../fonts/montserrat-900-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
:root{
  --rh-black:#4E4A47; --rh-red:#CE5055; --rh-white:#FFFFFF;
  --tint-black-06:rgba(78,74,71,.06); --tint-black-10:rgba(78,74,71,.10); --tint-black-20:rgba(78,74,71,.2); --tint-black-60:rgba(78,74,71,.6);
  --font-head:'Montserrat','Arial Black',Arial,sans-serif;
  --font-menu:'Big Shoulders','Arial Narrow',Arial,sans-serif;
  --font-body:'Courier Prime','Courier New',Courier,monospace;
  --wrap:72rem; --gutter:clamp(1rem,4vw,2rem);
  --angle:clamp(1.5rem,4vw,3.5rem);
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1.4 -.55'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --gingham:linear-gradient(90deg,rgba(206,80,85,.5) 50%,transparent 0) 0 0/var(--g,22px) var(--g,22px),linear-gradient(rgba(206,80,85,.5) 50%,transparent 0) 0 0/var(--g,22px) var(--g,22px);
  --checker:conic-gradient(var(--rh-black) 25%,var(--rh-white) 0 50%,var(--rh-black) 0 75%,var(--rh-white) 0);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5.5rem}
body{margin:0;font-family:var(--font-body);font-size:1.0625rem;line-height:1.6;color:var(--rh-black);background:var(--rh-white);overflow-x:clip}
img{max-width:100%;height:auto;display:block}
figure{margin:0}
a{color:inherit;text-decoration-thickness:2px;text-underline-offset:3px}
a:focus-visible,button:focus-visible{outline:3px solid var(--rh-red);outline-offset:3px}
.band-black a:focus-visible,.band-red a:focus-visible,.site-header a:focus-visible,.hero a:focus-visible{outline-color:var(--rh-white)}
h1,h2,h3{font-family:var(--font-head);font-weight:900;line-height:1.1;margin:0 0 .5em;letter-spacing:.01em}
h2{font-size:clamp(1.9rem,5vw,3rem);text-transform:uppercase}
h3{font-size:1.25rem}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-999px;top:0;background:var(--rh-white);color:var(--rh-black);padding:.75rem 1rem;z-index:100;font-weight:700}
.skip-link:focus{left:1rem;top:1rem}
.small{font-size:.9rem}
.eyebrow{font-family:var(--font-menu);font-weight:700;text-transform:uppercase;letter-spacing:.2em;font-size:1.15rem;margin:0 0 .4rem;display:inline-flex;align-items:center;gap:.6rem}
.eyebrow::before{content:"";width:2.2rem;height:4px;background:var(--rh-red)}
.band-red .eyebrow::before{background:var(--rh-white)}
@media (max-width:40rem){.hide-sm{display:none}}
.textured{position:relative;isolation:isolate}
.textured::after{content:"";position:absolute;inset:0;background-image:var(--noise);opacity:.08;pointer-events:none;z-index:-1}
.road{height:2.25rem;background:var(--rh-black) linear-gradient(90deg,var(--rh-white) 0 2.75rem,transparent 2.75rem 4.75rem) 0 50%/4.75rem 5px repeat-x;border-top:3px solid var(--rh-red)}
.road--thin{height:1.25rem;border-top:0}
.checker-strip{height:20px;background:var(--checker) 0 0/20px 20px;opacity:.9}
.watermark{position:relative;isolation:isolate;overflow:hidden}
.watermark::before{content:"";position:absolute;z-index:-1;pointer-events:none;width:min(26rem,60vw);aspect-ratio:100.88/105.42;right:-3rem;top:-1.5rem;background:url(/assets/logo/roadhouse-monogram-black.svg) center/contain no-repeat;opacity:.04;transform:rotate(-8deg)}
@media (max-width:40rem){.watermark::before{display:none}}
.band-black.watermark::before{background-image:url(/assets/logo/roadhouse-monogram-white.svg);opacity:.06;left:-5rem;right:auto;top:auto;bottom:-3rem;transform:rotate(8deg)}
.site-header{position:sticky;top:0;z-index:50;background:var(--rh-black);color:var(--rh-white);border-bottom:3px solid var(--rh-red)}
.site-header .wrap{display:flex;align-items:center;gap:1rem;min-height:4.5rem;flex-wrap:wrap}
.brand-mark{display:block;padding:.45rem 0;flex:none}
.brand-mark img{height:3.25rem;width:auto}
.site-nav{order:3;flex:1 0 100%;overflow-x:auto;scrollbar-width:none;margin:0 calc(-1*var(--gutter));padding:0 var(--gutter);border-top:1px solid rgba(255,255,255,.18)}
.site-nav::-webkit-scrollbar{display:none}
.site-nav ul{display:flex;gap:1.4rem;list-style:none;margin:0;padding:.6rem 0;white-space:nowrap}
.site-nav a{font-family:var(--font-head);font-weight:900;text-transform:uppercase;font-size:.9rem;letter-spacing:.06em;text-decoration:none;padding:.35rem 0;border-bottom:3px solid transparent;transition:border-color .2s}
.site-nav a:hover,.site-nav a[aria-current="page"]{border-bottom-color:var(--rh-red)}
.header-call{margin-left:auto}
@media (min-width:60rem){
  .site-nav{order:0;flex:1 1 auto;margin:0;padding:0;border:0}
  .site-nav ul{justify-content:flex-end;padding:0}
  .header-call{margin-left:0}
}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--font-head);font-weight:900;font-size:1.2rem;line-height:1.15;letter-spacing:.03em;text-transform:uppercase;text-decoration:none;padding:.85rem 1.35rem;border:3px solid currentColor;border-radius:4px;min-height:3.25rem;transition:transform .18s ease,box-shadow .18s ease,background-color .18s}
.btn:hover{transform:translateY(-3px);box-shadow:0 4px 0 0 currentColor}
.btn svg{width:1.15em;height:1.15em;flex:none}
.btn-red{background:var(--rh-red);border-color:var(--rh-red);color:var(--rh-white)}
.btn-red:hover{box-shadow:0 4px 0 0 var(--rh-white)}
.btn-white{background:var(--rh-white);border-color:var(--rh-white);color:var(--rh-black)}
.btn-white:hover{box-shadow:0 4px 0 0 var(--rh-red)}
.btn-outline-white{color:var(--rh-white);background:transparent}
.btn-black{background:var(--rh-black);border-color:var(--rh-black);color:var(--rh-white)}
.btn-black:hover{box-shadow:0 4px 0 0 var(--rh-red)}
.btn-outline{color:var(--rh-black);background:transparent}
.btn-sm{font-size:1rem;min-height:2.6rem;padding:.5rem .9rem;border-width:2px}
.btn-sm:hover{transform:none;box-shadow:none;background:var(--rh-white);color:var(--rh-black)}
.btn-row{display:flex;flex-wrap:wrap;gap:.75rem}
.hero{position:relative;isolation:isolate;color:var(--rh-white);background:var(--rh-black);overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:-3}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;filter:grayscale(.35) contrast(1.05)}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:
  linear-gradient(90deg,rgba(78,74,71,.97) 0%,rgba(78,74,71,.93) 45%,rgba(78,74,71,.80) 100%)}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background-image:var(--noise);opacity:.14;pointer-events:none}
.hero .wrap{display:grid;gap:2rem;align-items:center;padding-top:clamp(2.5rem,7vw,5rem);padding-bottom:clamp(2.5rem,6vw,4.5rem);min-height:min(78vh,44rem)}
@media (min-width:56rem){.hero .wrap{grid-template-columns:minmax(0,1fr) auto}}
.hero-logo{padding:clamp(.75rem,2vw,1.25rem);margin:0 0 .25rem calc(-1*clamp(.75rem,2vw,1.25rem));width:min(34rem,100%)}
.hero-logo img{width:100%;height:auto}
.hero h1{font-size:clamp(1.9rem,4.8vw,3.2rem);line-height:1.05;text-transform:uppercase;margin:.5rem 0 .9rem;max-width:22ch}
.hero h1 .accent{display:block;font-family:var(--font-menu);font-weight:700;letter-spacing:.08em;font-size:.62em;color:var(--rh-white);margin-bottom:.35rem}
.hero .lede{font-size:1.15rem;max-width:36rem;margin-bottom:1.25rem}
.where{font-family:var(--font-head);font-weight:900;text-transform:uppercase;letter-spacing:.05em;font-size:.95rem;margin:0 0 1.75rem;display:flex;flex-wrap:wrap;gap:.35rem 1rem}
.where span{white-space:nowrap;display:inline-flex;align-items:center;gap:.4rem}
.where span+span::before{content:"";width:.45rem;height:.45rem;background:var(--rh-red);display:inline-block;transform:rotate(45deg);margin-right:.6rem}
.stamp{width:clamp(9rem,22vw,13.5rem);aspect-ratio:1;transform:rotate(-10deg);justify-self:center;color:var(--rh-white)}
.stamp svg{width:100%;height:100%;display:block;overflow:visible}
@media (max-width:55.99rem){.stamp{justify-self:start;width:9.5rem;margin-top:-.5rem}}
@media (max-width:40rem){.stamp{display:none}.hero .btn-row .btn{flex:1 1 100%}}
.band-red{background:var(--rh-red);color:var(--rh-white)}
.today{display:grid;gap:0;grid-template-columns:1fr;list-style:none;margin:0 auto;padding:0}
.today li{display:flex;align-items:center;justify-content:flex-start;gap:.9rem;padding:1.1rem var(--gutter);border-bottom:2px solid rgba(255,255,255,.35)}
.today li:last-child{border-bottom:0}
.today svg{width:2.2rem;height:2.2rem;flex:none}
.today strong{display:block;font-family:var(--font-head);font-weight:900;text-transform:uppercase;font-size:clamp(1.3rem,2.4vw,1.5rem);line-height:1.1;white-space:nowrap}
.today span{display:block;font-weight:700;font-size:1.2rem;line-height:1.3}
@media (min-width:52rem){.today{grid-template-columns:repeat(3,auto);justify-content:space-between}.today li{border-bottom:0;border-right:2px solid rgba(255,255,255,.35);padding-block:1.4rem}.today li:last-child{border-right:0}}
.status-pill{display:inline-block!important;margin-left:.5rem;font-family:var(--font-head);font-weight:900;font-size:.8rem!important;letter-spacing:.08em;text-transform:uppercase;background:var(--rh-white);color:var(--rh-black);padding:.2rem .55rem;border-radius:999px;vertical-align:.25em}
.status-pill[hidden]{display:none!important}
.section{padding:clamp(3.25rem,8vw,6rem) 0}
.section-head{max-width:46rem;margin-bottom:2.25rem}
.section-head p{font-size:1.1rem}
.band-black{background:var(--rh-black);color:var(--rh-white)}
.angled{clip-path:polygon(0 var(--angle),100% 0,100% calc(100% - var(--angle)),0 100%);padding-block:calc(clamp(3.25rem,8vw,6rem) + var(--angle));margin-block:calc(-.5*var(--angle))}
.plaque{border:3px solid var(--rh-black);border-radius:6px;padding:.35rem;background:var(--rh-white)}
.plaque>.inner{border:1.5px solid var(--rh-black);border-radius:3px;padding:1.25rem;height:100%}
.band-black .plaque{border-color:var(--rh-white);background:transparent}
.band-black .plaque>.inner{border-color:rgba(255,255,255,.7)}
.cards{display:grid;gap:1.5rem;grid-template-columns:1fr}
@media (min-width:40rem){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:68rem){.cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
.card{display:flex;flex-direction:column;background:var(--rh-white);border:3px solid var(--rh-black);border-radius:6px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.card:hover{transform:translateY(-4px);box-shadow:6px 6px 0 0 var(--rh-red)}
.card .media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--rh-black);border-bottom:3px solid var(--rh-black)}
@media (min-width:68rem){.card .media{aspect-ratio:4/5}}
.card .media img{width:100%;height:100%;object-fit:cover;object-position:50% 70%}
.card .body{padding:1.1rem 1.15rem 1.3rem}
.card h3{margin:0 0 .4rem;text-transform:uppercase;font-size:1.3rem}
.card p{margin:0;font-size:.98rem}
.ticket{position:absolute;left:.85rem;top:.85rem;z-index:2;background:var(--rh-white);color:var(--rh-black);font-family:var(--font-head);font-weight:900;font-size:.95rem;letter-spacing:.02em;line-height:1.2;text-transform:uppercase;padding:.5rem .95rem;border:2px dashed var(--rh-red);outline:4px solid var(--rh-white);transform:rotate(-4deg);
  -webkit-mask:radial-gradient(circle at 0 50%,transparent 7px,#000 7.5px) left/51% 100% no-repeat,radial-gradient(circle at 100% 50%,transparent 7px,#000 7.5px) right/51% 100% no-repeat;
          mask:radial-gradient(circle at 0 50%,transparent 7px,#000 7.5px) left/51% 100% no-repeat,radial-gradient(circle at 100% 50%,transparent 7px,#000 7.5px) right/51% 100% no-repeat}
.art{position:absolute;inset:0;display:grid;place-items:center;color:var(--rh-white);background:
  radial-gradient(circle at 50% 45%,rgba(255,255,255,.07),transparent 60%),var(--rh-black)}
.art::after{content:"";position:absolute;left:0;right:0;bottom:0;height:22%;background:var(--gingham),var(--rh-white);--g:20px;opacity:.28}
.art svg{width:54%;height:auto;position:relative;z-index:1}
.store-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr))}
.store-grid h3{display:flex;align-items:center;gap:.75rem;text-transform:uppercase}
.icon-badge{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:50%;background:var(--rh-red);color:var(--rh-white);flex:none}
.icon-badge svg{width:1.5rem;height:1.5rem}
.store-grid .plaque{transition:transform .2s ease}
.store-grid .plaque:hover{transform:translateY(-4px)}
.order-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr))}
.order-card{position:relative;border:3px solid var(--rh-black);border-radius:6px;padding:1.5rem 1.35rem 1.35rem;display:flex;flex-direction:column;gap:.75rem;background:var(--rh-white);transition:transform .2s ease,box-shadow .2s ease}
.order-card:hover{transform:translateY(-4px);box-shadow:6px 6px 0 0 var(--rh-black)}
.order-card .num{font-family:var(--font-menu);font-weight:700;font-size:3rem;line-height:1;color:var(--rh-red)}
.order-card h3{margin:0;text-transform:uppercase}
.order-card p{flex:1;margin:0}
.reviews-band{position:relative;margin-top:0}
.torn{position:absolute;left:0;right:0;top:-27px;width:100%;height:28px;display:block;color:var(--rh-red)}
.rating{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1rem;margin:0 0 2.25rem}
.rating .score{font-family:var(--font-head);font-weight:900;font-size:clamp(2.6rem,7vw,3.6rem);line-height:1}
.stars{display:inline-flex;gap:.2rem}
.stars svg{width:1.9rem;height:1.9rem}
.rating .src{font-weight:700;font-size:1.2rem}
.quotes{display:grid;gap:2rem 2.5rem;grid-template-columns:1fr;list-style:none;margin:0;padding:0}
@media (min-width:52rem){.quotes{grid-template-columns:repeat(3,minmax(0,1fr))}.quotes li:first-child{grid-column:1/-1;max-width:52rem}}
.quotes blockquote{margin:0;position:relative;padding-left:3.2rem}
.quotes blockquote::before{content:"“";position:absolute;left:0;top:-.15em;font-family:var(--font-head);font-weight:900;font-size:5rem;line-height:1;color:var(--rh-white);opacity:.9}
.quotes p{font-weight:700;font-size:1.25rem;line-height:1.45;margin:0 0 .6rem}
.quotes li:first-child p{font-family:var(--font-head);font-weight:900;font-size:clamp(1.45rem,3.4vw,2.2rem);line-height:1.25}
.quotes figcaption{font-family:var(--font-menu);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:1.2rem}
.promise{text-align:center}
.promise blockquote{margin:0 auto;max-width:54rem}
.promise blockquote p{font-family:var(--font-head);font-weight:900;font-size:clamp(1.5rem,3.8vw,2.5rem);line-height:1.25;margin:0 0 1rem;text-transform:none}
.promise blockquote p em{font-style:normal;-webkit-box-decoration-break:clone;box-decoration-break:clone;color:var(--rh-white);background:linear-gradient(transparent 62%,rgba(206,80,85,.9) 62% 92%,transparent 92%)}
.promise cite{font-style:normal;font-family:var(--font-menu);font-weight:700;letter-spacing:.2em;text-transform:uppercase;font-size:1.25rem}
.visit-grid{display:grid;gap:2rem}
@media (min-width:56rem){.visit-grid{grid-template-columns:1fr 1.1fr;align-items:start}}
.hours-card{background:var(--rh-black);color:var(--rh-white);border-radius:6px;padding:.4rem;margin-bottom:1.25rem}
.hours-card .inner{border:1.5px solid rgba(255,255,255,.75);border-radius:3px;padding:1.4rem 1.5rem;position:relative;overflow:hidden}
.hours-card .label{font-family:var(--font-menu);font-weight:700;letter-spacing:.2em;text-transform:uppercase;font-size:1.3rem;margin:0}
.hours-card .big{font-family:var(--font-head);font-weight:900;font-size:clamp(2.2rem,6vw,3.2rem);line-height:1;margin:.25rem 0 .5rem;white-space:nowrap}
.hours-card .big .to{color:var(--rh-red)}
.hours-card p{margin:0}
.hours-card .status-pill{margin-left:0;margin-top:.75rem}
.contact-list{list-style:none;margin:0 0 1.5rem;padding:0}
.contact-list li{display:flex;gap:.8rem;padding:.8rem 0;border-bottom:1px solid var(--tint-black-20)}
.contact-list svg{width:1.4rem;height:1.4rem;flex:none;margin-top:.15rem}
.contact-list strong{display:block;font-family:var(--font-head);font-weight:900;text-transform:uppercase;font-size:.85rem;letter-spacing:.06em}
.hours{width:100%;border-collapse:collapse;margin:.5rem 0}
.hours th,.hours td{text-align:left;padding:.3rem .5rem .3rem 0;border-bottom:1px dotted var(--tint-black-60)}
.map-frame{border:3px solid var(--rh-black);border-radius:6px;overflow:hidden;min-height:24rem;background:var(--tint-black-10);box-shadow:8px 8px 0 0 var(--rh-red)}
.map-frame iframe{display:block;width:100%;height:100%;min-height:24rem;border:0}
@media (min-width:56rem){.map-frame,.map-frame iframe{min-height:31rem}}
.site-footer{padding:0 0 2.5rem;background:var(--rh-white)}
.site-footer .road{margin-bottom:3rem}
.site-footer .wrap{display:grid;gap:2rem}
@media (min-width:56rem){.site-footer .wrap{grid-template-columns:auto 1fr 1fr;align-items:start}}
.footer-logo{padding:1.25rem;width:min(20rem,100%)}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li{margin:.3rem 0}
.site-footer h2{font-size:1rem;letter-spacing:.08em}
.legal{grid-column:1/-1;font-size:.85rem;border-top:1px solid var(--tint-black-20);padding-top:1rem}
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .reveal{opacity:1;transform:none;transition:none}
  .btn,.card,.order-card,.store-grid .plaque{transition:none}
  .btn:hover,.card:hover,.order-card:hover,.store-grid .plaque:hover{transform:none}
}
.menu-hero{background:var(--rh-black);color:var(--rh-white);padding:2.5rem 0 2rem}
.menu-hero h1{font-size:clamp(2.2rem,6vw,3.4rem);text-transform:uppercase;margin:0 0 .5rem}
.menu-nav{position:sticky;top:4.7rem;z-index:40;background:var(--rh-white);border-bottom:3px solid var(--rh-black)}
@media (max-width:59.99rem){.menu-nav{top:7.6rem}}
.menu-nav ul{display:flex;gap:.5rem;list-style:none;padding:.65rem var(--gutter);overflow-x:auto;scrollbar-width:none;max-width:var(--wrap);margin:0 auto}
.menu-nav ul::-webkit-scrollbar{display:none}
.menu-nav a{display:block;white-space:nowrap;font-family:var(--font-menu);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:1.05rem;text-decoration:none;padding:.3rem .7rem;border:2px solid var(--rh-black);border-radius:3px;transition:background-color .15s,color .15s}
.menu-nav a:hover{background:var(--rh-black);color:var(--rh-white)}
.menu-note{margin:2rem 0 0}
.menu-cat{padding:2.5rem 0 1rem;border-bottom:1px solid var(--tint-black-20)}
.menu-cat:last-of-type{border-bottom:0;padding-bottom:3.5rem}
.menu-cat h2{font-family:var(--font-menu);font-weight:700;font-size:clamp(2.2rem,6vw,3rem);letter-spacing:.12em;margin:0 0 .25rem;display:flex;align-items:center;gap:.9rem}
.menu-cat h2::after{content:"";flex:1;height:4px;background:var(--rh-red)}
.cat-note{max-width:48rem;font-size:.95rem;margin:.25rem 0 1.25rem}
.cat-note+.cat-note{margin-top:-.85rem}
.sides-note{font-style:italic}
.items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:.2rem 3rem}
@media (min-width:56rem){.items{grid-template-columns:repeat(2,minmax(0,1fr))}}
.item{padding:.75rem 0;border-bottom:1px dotted var(--tint-black-60);break-inside:avoid}
.item-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .5rem}
.item-name{font-family:var(--font-head);font-weight:900;font-size:1.05rem;text-transform:uppercase;letter-spacing:.02em}
.item-head .dots{flex:1;border-bottom:2px dotted var(--rh-black);transform:translateY(-.3em);min-width:1rem}
.item-price{font-weight:700;white-space:nowrap;margin-left:auto}
.item-desc{margin:.2rem 0 0;font-size:.95rem}
.item-add{margin:.15rem 0 0;font-size:.9rem;font-style:italic}
.badge{display:inline-block;font-family:var(--font-menu);font-weight:700;font-size:.95rem;letter-spacing:.1em;text-transform:uppercase;border:2px solid var(--rh-black);border-radius:2px;padding:0 .35rem;margin-left:.4rem;vertical-align:.1em}
.menu-hero .eyebrow{font-size:1.05rem;letter-spacing:.18em;display:block}
.menu-hero .eyebrow::before{display:none}
.social{display:flex;gap:.25rem;margin-left:auto}
.social a{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;transition:background-color .15s}
.social a:hover{background:rgba(255,255,255,.12)}
.social svg{width:1.35rem;height:1.35rem}
.site-header .header-call{margin-left:0}
@media (min-width:60rem){.social{margin-left:0;order:1}.site-header .header-call{order:2}}
.catering{padding:clamp(2.5rem,6vw,4rem) 0 calc(clamp(2.5rem,6vw,4rem) + 28px);--g:28px;background:linear-gradient(90deg,rgba(206,80,85,.17) 50%,transparent 0) 0 0/var(--g) var(--g),linear-gradient(rgba(206,80,85,.17) 50%,transparent 0) 0 0/var(--g) var(--g),var(--rh-white)}
.catering-card{display:grid;gap:1.25rem;align-items:center;background:var(--rh-white);border:3px solid var(--rh-black);border-radius:6px;padding:clamp(1.25rem,3vw,2rem);box-shadow:8px 8px 0 0 var(--rh-black)}
@media (min-width:52rem){.catering-card{grid-template-columns:auto 1fr auto;gap:1.75rem}}
.catering-card h2{margin:0 0 .35rem}
.catering-card p:last-child{margin:0}
.icon-badge--lg{width:4.5rem;height:4.5rem}
.icon-badge--lg svg{width:2.4rem;height:2.4rem}
@media (max-width:30rem){.hours th,.hours td{display:block;padding:.15rem 0;border:0}.hours tr{display:block;border-bottom:1px dotted var(--tint-black-60);padding:.3rem 0}}
.card .media picture{display:block;width:100%;height:100%}
.catering-photo{margin:0;border:3px solid var(--rh-black);border-radius:4px;overflow:hidden;aspect-ratio:16/10;background:var(--rh-black)}
.catering-photo picture,.cat-photo picture{display:block;width:100%;height:100%}
.catering-photo img,.cat-photo img{display:block;width:100%;height:100%;object-fit:cover}
@media (min-width:52rem){.catering-card{grid-template-columns:minmax(14rem,19rem) 1fr auto}.catering-photo{aspect-ratio:4/3}}
.cat-photo{position:relative;margin:.5rem 0 1.5rem;border:3px solid var(--rh-black);border-radius:6px;overflow:hidden;background:var(--rh-black)}
.cat-photo{aspect-ratio:2/1}
@media (min-width:40rem){.cat-photo{aspect-ratio:3/1}}
.cat-photo figcaption{position:absolute;left:.75rem;bottom:.75rem;background:var(--rh-white);color:var(--rh-black);font-family:var(--font-menu);font-weight:700;font-size:1.05rem;letter-spacing:.1em;text-transform:uppercase;padding:.2rem .6rem;border-radius:2px;border-left:4px solid var(--rh-red)}
.visit-photo{position:relative;margin:0 0 1.75rem;border:3px solid var(--rh-black);border-radius:6px;overflow:hidden;aspect-ratio:75/47;background:var(--rh-black)}
.visit-photo picture{display:block;width:100%;height:100%}
.visit-photo img{display:block;width:100%;height:100%;object-fit:cover}
.visit-photo figcaption{position:absolute;left:.75rem;bottom:.75rem;background:var(--rh-white);color:var(--rh-black);font-family:var(--font-menu);font-weight:700;font-size:1.05rem;letter-spacing:.1em;text-transform:uppercase;padding:.2rem .6rem;border-radius:2px;border-left:4px solid var(--rh-red)}
@media (min-width:56rem){
  .hero-bg img{filter:grayscale(.15) contrast(1.05)}
  .hero::before{background:linear-gradient(90deg,rgba(78,74,71,.96) 0%,rgba(78,74,71,.92) 38%,rgba(78,74,71,.62) 68%,rgba(78,74,71,.42) 100%)}
}
@media (min-width:40rem){.store-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
