@charset "UTF-8";

:root {
  color-scheme: light;
  --hg-paper: #f5efe3;
  --hg-cream: #ebe0ce;
  --hg-espresso: #33241b;
  --hg-brown: #594638;
  --hg-muted: #78695a;
  --hg-line: #cfc1ad;
  --hg-honey: #d19a38;
  --hg-orange: #b76131;
  --hg-white: #fffaf2;
  font-family: "Trebuchet MS", Verdana, sans-serif;
  color: var(--hg-espresso);
  background: var(--hg-paper);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.restaurant-page { min-width: 320px; margin: 0; background: var(--hg-paper); color: var(--hg-espresso); font: 400 16px/1.55 "Trebuchet MS", Verdana, sans-serif; }
.restaurant-shell { min-height: 100vh; background: var(--hg-paper); }
.restaurant-shell a { color: inherit; text-decoration: none; }
.restaurant-shell button, .restaurant-shell input, .restaurant-shell select, .restaurant-shell textarea { font: inherit; }
.restaurant-shell :focus-visible { outline: 3px solid var(--hg-orange); outline-offset: 3px; }
.restaurant-shell ::selection { background: var(--hg-honey); color: var(--hg-espresso); }
.skip-link { position: fixed; z-index: 40; top: 8px; left: 8px; padding: 10px 14px; transform: translateY(-150%); background: var(--hg-white); }
.skip-link:focus { transform: translateY(0); }
.restaurant-demo-bar { position: sticky; z-index: 30; top: 0; padding: 7px 16px; background: var(--hg-honey); color: var(--hg-espresso); font: 600 11px/1.35 Consolas, monospace; text-align: center; }
.restaurant-header { min-height: 78px; padding: 0 clamp(20px, 5vw, 76px); display: flex; justify-content: space-between; align-items: center; gap: 24px; position: sticky; top: 30px; z-index: 20; border-bottom: 1px solid var(--hg-line); background: var(--hg-paper); }
.restaurant-brand { min-width: 0; display: inline-flex; align-items: center; gap: 12px; }
.restaurant-brand-mark { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; background: var(--hg-espresso); color: var(--hg-honey); font: italic 700 22px Georgia, serif; }
.restaurant-brand strong { display: block; font: 700 20px/1 Georgia, serif; }
.restaurant-brand small { display: block; margin-top: 4px; color: var(--hg-muted); font: 9px/1.3 Consolas, monospace; letter-spacing: .04em; }
.restaurant-nav { display: flex; align-items: center; gap: clamp(12px, 1.7vw, 25px); font-size: 13px; }
.restaurant-nav a { padding-block: 9px; }
.restaurant-nav a:hover, .restaurant-footer a:hover { color: var(--hg-orange); }
.restaurant-nav .restaurant-nav-book { padding: 11px 15px; background: var(--hg-espresso); color: var(--hg-white); }
.restaurant-nav .restaurant-nav-book:hover { background: var(--hg-orange); color: var(--hg-white); }
.restaurant-menu-toggle { display: none; }
.restaurant-kicker { display: block; color: var(--hg-muted); font: 600 11px/1.5 Consolas, monospace; letter-spacing: .04em; text-transform: uppercase; }
.restaurant-button { min-height: 48px; padding: 0 17px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; border: 0; background: var(--hg-honey); color: var(--hg-espresso); font-size: 13px; font-weight: 700; cursor: pointer; transition: background-color .18s ease, color .18s ease, transform .18s ease; }
.restaurant-button:hover { transform: translateY(-2px); background: var(--hg-orange); color: var(--hg-white); }
.restaurant-button-dark { background: var(--hg-espresso); color: var(--hg-white); }
.restaurant-button:disabled { cursor: not-allowed; opacity: .56; transform: none; }
.restaurant-text-link, .restaurant-underline-link { min-height: 38px; display: inline-flex; align-items: center; gap: 10px; border-bottom: 1px solid currentColor; font-size: 13px; font-weight: 700; }
.restaurant-underline-link { color: var(--hg-white); }
.restaurant-hero { min-height: 590px; padding: 76px clamp(24px, 9vw, 136px) 64px; display: grid; grid-template-columns: 1.1fr .9fr; gap: 7vw; align-items: center; background: var(--hg-espresso); color: var(--hg-white); }
.restaurant-hero-copy { max-width: 700px; }
.restaurant-hero .restaurant-kicker { color: #dfcba8; }
.restaurant-hero-index { margin: 28px 0 12px; color: var(--hg-honey); font: 11px Consolas, monospace; text-transform: uppercase; }
.restaurant-hero h1 { margin: 0; font: 700 clamp(56px, 6.5vw, 92px)/.96 Georgia, "Times New Roman", serif; }
.restaurant-hero h1 em { color: var(--hg-honey); font-weight: 400; }
.restaurant-hero-intro { max-width: 535px; margin: 22px 0 0; color: #e7dbca; font-size: 17px; }
.restaurant-hero-actions { margin-top: 27px; display: flex; flex-wrap: wrap; align-items: center; gap: 14px 23px; }
.restaurant-hero-foot { margin-top: 42px; display: flex; flex-wrap: wrap; gap: 10px; color: #d2c3ad; font: 10px Consolas, monospace; }
.restaurant-hero-visual { min-height: 400px; position: relative; display: grid; place-items: center; }
.restaurant-hero-monogram { width: min(390px, 100%); aspect-ratio: 1; display: grid; place-items: center; border: 1px solid #d19a3870; border-radius: 50%; color: var(--hg-honey); font: italic 700 clamp(170px, 26vw, 330px)/.8 Georgia, serif; transform: rotate(-8deg); }
.restaurant-hero-note { position: absolute; right: 0; bottom: 8%; padding: 12px 15px; background: var(--hg-honey); color: var(--hg-espresso); font: 11px/1.5 Consolas, monospace; }
.restaurant-quick-info { padding: 20px clamp(24px, 9vw, 136px); display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; border-bottom: 1px solid var(--hg-line); background: var(--hg-cream); }
.restaurant-quick-info strong { display: block; margin-top: 5px; font-size: 14px; }
.restaurant-intro, .restaurant-menu-preview, .restaurant-gallery-preview, .restaurant-reviews, .restaurant-visit, .restaurant-category-highlights, .restaurant-cafe-band { padding: 74px clamp(24px, 9vw, 136px); }
.restaurant-intro { display: grid; grid-template-columns: .65fr 1.35fr; gap: 8vw; align-items: start; }
.restaurant-intro h2, .restaurant-section-heading h2, .restaurant-gallery-preview h2, .restaurant-reviews h2, .restaurant-cafe-band h2, .restaurant-cost-note h2 { max-width: 760px; margin: 9px 0 15px; font: 600 clamp(34px, 4.5vw, 59px)/1.05 Georgia, "Times New Roman", serif; }
.restaurant-intro p, .restaurant-gallery-preview p { max-width: 650px; color: var(--hg-muted); }
.restaurant-category-highlights { background: var(--hg-honey); }
.restaurant-section-heading { margin-bottom: 27px; display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; }
.restaurant-highlight-list { border-top: 1px solid #76501e; }
.restaurant-highlight-link { min-height: 70px; display: grid; grid-template-columns: 100px 1fr 25px; align-items: center; gap: 15px; border-bottom: 1px solid #76501e; transition: padding .18s ease; }
.restaurant-highlight-link:hover { padding-inline: 8px; }
.restaurant-highlight-link span:first-child { font: 10px Consolas, monospace; }
.restaurant-highlight-link strong { font: 600 28px Georgia, serif; }
.restaurant-menu-preview { background: var(--hg-cream); }
.restaurant-menu-featured { border-top: 1px solid var(--hg-line); }
.restaurant-featured-item { padding: 17px 0; display: grid; grid-template-columns: .5fr 1fr 1.5fr auto; gap: 20px; align-items: center; border-bottom: 1px solid var(--hg-line); }
.restaurant-featured-item .restaurant-kicker { font-size: 10px; }
.restaurant-featured-item h3 { margin: 0; font: 600 21px Georgia, serif; }
.restaurant-featured-item p { margin: 0; color: var(--hg-muted); font-size: 13px; }
.restaurant-featured-item > strong { white-space: nowrap; font: 600 14px Consolas, monospace; }
.restaurant-gallery-preview { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8vw; align-items: center; }
.restaurant-typographic-ambience { min-height: 290px; padding: 30px; display: flex; flex-direction: column; justify-content: space-between; background: var(--hg-espresso); color: var(--hg-white); }
.restaurant-typographic-ambience strong { color: var(--hg-honey); font: 700 43px/.98 Georgia, serif; }
.restaurant-typographic-ambience span { font: 11px Consolas, monospace; }
.restaurant-cafe-band { display: grid; grid-template-columns: .7fr 1.3fr; gap: 8vw; background: var(--hg-cream); }
.restaurant-cafe-band p { max-width: 520px; color: var(--hg-muted); }
.restaurant-cafe-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; border-top: 1px solid var(--hg-line); }
.restaurant-cafe-list span { padding: 13px 0; border-bottom: 1px solid var(--hg-line); font: 17px Georgia, serif; }
.restaurant-reviews { display: grid; grid-template-columns: .7fr 1.3fr; gap: 7vw; background: var(--hg-paper); }
.restaurant-reviews p { max-width: 640px; color: var(--hg-muted); }
.restaurant-review-source { padding-top: 13px; border-top: 1px solid var(--hg-line); }
.restaurant-visit { display: grid; grid-template-columns: .7fr 1.3fr; gap: 7vw; align-items: start; background: var(--hg-espresso); color: var(--hg-white); }
.restaurant-visit h2 { margin: 10px 0; font: 600 48px/1.03 Georgia, serif; }
.restaurant-visit > div > p { max-width: 500px; color: #e2d2bc; }
.restaurant-visit .restaurant-kicker { color: #dfcba8; }
.restaurant-location-preview-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 34px; }
.restaurant-location-card { padding: 22px 0; border-top: 1px solid var(--hg-line); }
.restaurant-location-card h2 { margin: 5px 0; font: 600 31px Georgia, serif; }
.restaurant-location-card address { margin: 13px 0; font-style: normal; }
.restaurant-location-card p { color: var(--hg-muted); }
.restaurant-location-card-heading p { margin: 0; }
.restaurant-location-hours { margin-top: 15px; }
.restaurant-hours-row { min-height: 39px; display: flex; justify-content: space-between; align-items: center; gap: 12px; border-bottom: 1px solid var(--hg-line); font-size: 13px; }
.restaurant-hours-row strong { text-align: right; font-weight: 600; }
.restaurant-location-late-note { font-size: 12px; }
.restaurant-location-actions { margin: 17px 0; display: flex; flex-wrap: wrap; gap: 12px 20px; }
.restaurant-order-options { margin-top: 10px; display: flex; flex-wrap: wrap; gap: 8px; }
.restaurant-provider-link, .restaurant-provider-unavailable { min-height: 38px; padding: 8px 10px; display: inline-flex; align-items: center; border: 1px solid var(--hg-line); font-size: 12px; }
.restaurant-provider-link:hover { border-color: var(--hg-espresso); background: var(--hg-espresso); color: var(--hg-white) !important; }
.restaurant-provider-unavailable { color: var(--hg-muted); cursor: not-allowed; }
.restaurant-footer { padding: 27px clamp(20px, 5vw, 76px); display: grid; grid-template-columns: .75fr 1fr 1.5fr; gap: 18px; align-items: start; border-top: 1px solid var(--hg-line); background: var(--hg-cream); }
.restaurant-footer-brand { font: 700 22px Georgia, serif; }
.restaurant-footer p { margin: 0; color: var(--hg-muted); font-size: 12px; }
.restaurant-footer nav { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 10px 16px; font-size: 12px; }
.restaurant-page-intro { padding: 67px clamp(24px, 10vw, 150px) 38px; }
.restaurant-page-intro h1 { max-width: 900px; margin: 12px 0; font: 600 clamp(42px, 5.2vw, 70px)/1.03 Georgia, serif; }
.restaurant-page-intro h1 em { color: var(--hg-orange); font-weight: 400; }
.restaurant-page-intro > p:not(.restaurant-kicker) { max-width: 690px; color: var(--hg-muted); font-size: 16px; }
.restaurant-menu-page { padding: 0 clamp(24px, 10vw, 150px) 70px; }
.restaurant-menu-disclaimer { margin: 22px 0 0; padding: 15px 17px; border-left: 3px solid var(--hg-honey); background: var(--hg-cream); color: var(--hg-muted); font-size: 13px; }
.restaurant-menu-search-label { display: block; margin-bottom: 7px; font-size: 13px; font-weight: 700; }
.restaurant-menu-search { width: 100%; max-width: 540px; min-height: 48px; padding: 11px 13px; border: 1px solid var(--hg-line); background: var(--hg-white); color: var(--hg-espresso); }
.restaurant-category-filters { margin: 17px 0 32px; display: flex; flex-wrap: wrap; gap: 8px; }
.restaurant-category-filters button { min-height: 40px; padding: 7px 12px; border: 1px solid var(--hg-line); background: transparent; color: var(--hg-espresso); font-size: 12px; cursor: pointer; }
.restaurant-category-filters button[aria-pressed="true"], .restaurant-category-filters button:hover { border-color: var(--hg-espresso); background: var(--hg-espresso); color: var(--hg-white); }
.restaurant-menu-category { margin: 42px 0; display: grid; grid-template-columns: .55fr 1.45fr; gap: 5vw; scroll-margin-top: 125px; }
.restaurant-menu-category h2 { margin: 7px 0; font: 600 29px Georgia, serif; }
.restaurant-menu-list { border-top: 1px solid var(--hg-line); }
.restaurant-menu-item { padding: 15px 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; align-items: center; border-bottom: 1px solid var(--hg-line); }
.restaurant-menu-item h3 { margin: 0 0 4px; font: 600 18px Georgia, serif; }
.restaurant-menu-item p { max-width: 680px; margin: 0; color: var(--hg-muted); font-size: 13px; }
.restaurant-menu-item > strong { white-space: nowrap; font: 600 14px Consolas, monospace; }
.restaurant-menu-note-label { margin-left: 8px; color: var(--hg-orange); font: 9px Consolas, monospace; text-transform: uppercase; }
.restaurant-menu-note, .restaurant-menu-review { display: block; margin-top: 5px !important; color: var(--hg-orange) !important; font-size: 11px !important; }
.restaurant-price-open { color: var(--hg-orange); font: 600 12px/1.4 "Trebuchet MS", Verdana, sans-serif; }
.restaurant-menu-no-results { padding: 20px 0; border-top: 1px solid var(--hg-line); }
.restaurant-burger-calculator { max-width: 850px; margin: 48px 0 30px; padding: 24px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; background: var(--hg-cream); }
.restaurant-burger-calculator h2, .restaurant-burger-calculator > p { grid-column: 1 / -1; margin: 0; }
.restaurant-burger-calculator h2 { font: 600 27px Georgia, serif; }
.restaurant-burger-calculator label { display: grid; gap: 6px; font-size: 13px; font-weight: 700; }
.restaurant-burger-calculator select { min-height: 44px; padding: 8px 10px; border: 1px solid var(--hg-line); background: var(--hg-white); }
.restaurant-burger-calculator output { align-self: center; color: var(--hg-orange); font: 600 20px Georgia, serif; }
.restaurant-burger-calculator > p { color: var(--hg-muted); font-size: 12px; }
.restaurant-cost-note { margin: 43px 0; padding: 28px; background: var(--hg-espresso); color: var(--hg-white); }
.restaurant-cost-note h2 { font-size: 33px; }
.restaurant-cost-note p { max-width: 760px; color: #e6d9c8; }
.restaurant-location-overview { padding: 0 clamp(24px, 9vw, 136px) 68px; }
.restaurant-location-preview-list { margin-top: 12px; }
.restaurant-location-detail-hero { padding: 66px clamp(24px, 9vw, 136px); background: var(--hg-espresso); color: var(--hg-white); }
.restaurant-location-detail-hero .restaurant-kicker { color: #dfcba8; }
.restaurant-location-detail-hero h1 { max-width: 850px; margin: 12px 0; font: 600 clamp(45px, 5.5vw, 72px)/1.02 Georgia, serif; }
.restaurant-location-detail-hero h1 em { color: var(--hg-honey); font-weight: 400; }
.restaurant-location-detail-hero p, .restaurant-location-detail-hero address { max-width: 650px; color: #e6d9c8; font-size: 16px; font-style: normal; }
.restaurant-location-detail-hero .restaurant-text-link { color: var(--hg-white); }
.restaurant-location-detail-content { padding: 46px clamp(24px, 9vw, 136px) 72px; display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; }
.restaurant-location-detail-content h2 { font: 600 30px Georgia, serif; }
.restaurant-booking-intro { padding: 60px clamp(24px, 9vw, 136px) 26px; }
.restaurant-booking-intro h1 { margin: 10px 0; font: 600 clamp(40px, 5vw, 64px)/1.03 Georgia, serif; }
.restaurant-booking-intro > p { max-width: 700px; color: var(--hg-muted); }
.restaurant-demo-alert { margin: 0 clamp(24px, 9vw, 136px); padding: 13px 16px; display: flex; flex-wrap: wrap; gap: 7px 14px; background: var(--hg-honey); color: var(--hg-espresso); font-size: 13px; }
.restaurant-reservation-form { padding: 32px clamp(24px, 9vw, 136px) 74px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.restaurant-reservation-form label { display: grid; gap: 6px; font-size: 13px; font-weight: 700; }
.restaurant-reservation-form input, .restaurant-reservation-form select, .restaurant-reservation-form textarea { width: 100%; min-height: 46px; padding: 10px; border: 1px solid var(--hg-line); border-radius: 0; background: var(--hg-white); color: var(--hg-espresso); }
.restaurant-reservation-form textarea { min-height: 115px; resize: vertical; }
.restaurant-reservation-form .restaurant-form-wide, .restaurant-reservation-form .restaurant-form-status, .restaurant-reservation-form button { grid-column: 1 / -1; }
.restaurant-form-status:empty { display: none; }
.restaurant-form-status:not(:empty) { padding: 14px; border-left: 3px solid var(--hg-orange); background: var(--hg-cream); font-size: 14px; }
.restaurant-data-placeholder { color: var(--hg-muted); font-size: 13px; }
.restaurant-legal-list { max-width: 950px; padding: 0 24px 70px; margin: auto; }
.restaurant-legal-list article { padding: 18px 0; display: grid; grid-template-columns: .65fr 1fr; gap: 24px; border-top: 1px solid var(--hg-line); }
.restaurant-legal-list h2 { margin: 0; font: 600 20px Georgia, serif; }
.restaurant-legal-list p { margin: 0; color: var(--hg-muted); font-size: 14px; }
.restaurant-contact-layout { padding: 0 clamp(24px, 9vw, 136px) 70px; display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; }
.restaurant-contact-card { padding: 22px; background: var(--hg-cream); }
.restaurant-contact-card h2 { font: 600 26px Georgia, serif; }
.restaurant-contact-card p { color: var(--hg-muted); }
.restaurant-optional-page { padding: 35px clamp(24px, 9vw, 136px) 70px; }
.restaurant-optional-page p { max-width: 700px; color: var(--hg-muted); }
.restaurant-optional-list { margin-top: 20px; border-top: 1px solid var(--hg-line); }
.restaurant-optional-list p { padding: 12px 0; border-bottom: 1px solid var(--hg-line); }
.restaurant-location-contact { display: grid; grid-template-columns: 1fr 1fr; gap: 7vw; }
.restaurant-contact-form { display: grid; gap: 13px; }
.restaurant-contact-form label { display: grid; gap: 5px; font-size: 13px; font-weight: 700; }
.restaurant-contact-form input, .restaurant-contact-form textarea { min-height: 44px; padding: 10px; border: 1px solid var(--hg-line); background: var(--hg-white); }
.restaurant-contact-form textarea { min-height: 130px; }
@media (max-width: 900px) {
  .restaurant-header { top: 42px; }
  .restaurant-menu-toggle { width: 44px; height: 44px; display: flex; flex-direction: column; justify-content: center; gap: 6px; padding: 10px; border: 1px solid var(--hg-line); background: transparent; cursor: pointer; }
  .restaurant-menu-toggle span { height: 2px; background: var(--hg-espresso); }
  .restaurant-nav { position: absolute; top: 77px; right: 0; left: 0; display: none; padding: 9px 23px 18px; flex-direction: column; align-items: stretch; gap: 0; border-bottom: 1px solid var(--hg-line); background: var(--hg-paper); }
  .restaurant-nav.is-open { display: flex; }
  .restaurant-nav a { padding: 11px 0; border-bottom: 1px solid var(--hg-line); }
  .restaurant-nav .restaurant-nav-book { padding: 12px; text-align: center; }
  .restaurant-hero { grid-template-columns: 1fr .75fr; gap: 4vw; }
  .restaurant-hero h1 { font-size: 61px; }
  .restaurant-featured-item { grid-template-columns: .55fr 1fr 1.5fr auto; gap: 12px; }
}
@media (max-width: 620px) {
  .restaurant-demo-bar { padding: 6px 9px; font-size: 9px; }
  .restaurant-header { min-height: 70px; padding-inline: 17px; top: 35px; }
  .restaurant-brand-mark { width: 39px; height: 39px; }
  .restaurant-brand strong { font-size: 18px; }
  .restaurant-brand small { font-size: 8px; }
  .restaurant-hero { min-height: 0; padding: 49px 23px 43px; grid-template-columns: 1fr; gap: 20px; }
  .restaurant-hero h1 { font-size: clamp(47px, 12vw, 64px); }
  .restaurant-hero-intro { font-size: 15px; }
  .restaurant-hero-visual { min-height: 250px; }
  .restaurant-hero-monogram { width: 240px; font-size: 205px; }
  .restaurant-quick-info { grid-template-columns: 1fr 1fr; padding-inline: 23px; }
  .restaurant-intro, .restaurant-gallery-preview, .restaurant-reviews, .restaurant-visit, .restaurant-cafe-band { grid-template-columns: 1fr; gap: 21px; padding: 48px 23px; }
  .restaurant-intro h2, .restaurant-section-heading h2, .restaurant-gallery-preview h2, .restaurant-reviews h2, .restaurant-cafe-band h2 { font-size: 37px; }
  .restaurant-section-heading { align-items: flex-start; flex-direction: column; }
  .restaurant-highlight-link { grid-template-columns: 63px 1fr 20px; gap: 8px; }
  .restaurant-highlight-link strong { font-size: 22px; }
  .restaurant-category-highlights, .restaurant-menu-preview { padding: 48px 23px; }
  .restaurant-featured-item { grid-template-columns: 1fr auto; gap: 5px 12px; }
  .restaurant-featured-item .restaurant-kicker { grid-column: 1 / -1; }
  .restaurant-featured-item p { grid-column: 1; }
  .restaurant-featured-item > strong { grid-column: 2; grid-row: 2 / span 2; }
  .restaurant-cafe-list { grid-template-columns: 1fr; }
  .restaurant-location-preview-list, .restaurant-location-detail-content, .restaurant-location-contact, .restaurant-contact-layout { grid-template-columns: 1fr; gap: 25px; }
  .restaurant-location-overview { padding: 0 23px 48px; }
  .restaurant-footer { grid-template-columns: 1fr; padding: 22px; }
  .restaurant-footer nav { justify-content: flex-start; }
  .restaurant-page-intro { padding: 48px 23px 25px; }
  .restaurant-page-intro h1 { font-size: 38px; overflow-wrap: anywhere; }
  .restaurant-menu-page { padding-inline: 23px; }
  .restaurant-category-filters { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 5px; }
  .restaurant-category-filters button { flex: 0 0 auto; }
  .restaurant-menu-category { grid-template-columns: 1fr; gap: 8px; }
  .restaurant-burger-calculator { margin-inline: 0; padding: 17px; grid-template-columns: 1fr; }
  .restaurant-burger-calculator h2, .restaurant-burger-calculator > p { grid-column: 1; }
  .restaurant-cost-note { padding: 21px; }
  .restaurant-reservation-form { padding-inline: 23px; grid-template-columns: 1fr; }
  .restaurant-reservation-form .restaurant-form-wide, .restaurant-reservation-form .restaurant-form-status, .restaurant-reservation-form button { grid-column: 1; }
  .restaurant-demo-alert { margin-inline: 23px; }
  .restaurant-legal-list article { grid-template-columns: 1fr; gap: 6px; }
  .restaurant-optional-page { padding-inline: 23px; }
  .restaurant-contact-layout { padding-inline: 23px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
