/* =========================================================
   TAT Ristorante Di Famiglia
   Palette + type tokens
   Display: Bodoni Moda  ·  Body/UI: Jost (a Futura revival —
   the type of 1927, two years before TAT opened)
   ========================================================= */

:root{
  --ink:        #14100E;   /* near-black, warm */
  --ink-soft:   #2A2320;
  --wine:       #6E1216;   /* deep sauce red */
  --red:        #ED0827;   /* TAT brand red, sampled from the logo */
  --green:      #039741;   /* TAT brand green, from the wordmark */
  --brass:      #C8A24A;   /* aged sign gold */
  --ivory:      #F7F2E7;   /* paper */
  --paper:      #EEE5D4;   /* paper, one step down */
  --muted:      #574E47;   /* darkened: was too light on cream */
  --surface:    #FFFFFF;   /* panels behind dense text */

  --shell: min(1200px, 100% - 2.5rem);
  --gap: clamp(1rem, 3vw, 2rem);

  /* Fraunces is a soft, low-contrast serif — it keeps the old-signage warmth
     without Bodoni's hairlines. Karla is a grotesque with even stroke weight,
     which holds up far better than a geometric sans at body size. */
  --f-display: "Fraunces", Georgia, "Iowan Old Style", "Times New Roman", serif;
  --f-body: "Karla", "Segoe UI", "Helvetica Neue", Arial, sans-serif;

  --ease: cubic-bezier(.22,.61,.36,1);
  --topbar-h: 44px;         /* gift-card strip */
  --nav-h: 96px;            /* the row with the logo and nav */
  --header-h: calc(var(--topbar-h) + var(--nav-h));
  --header-h-stuck: 76px;   /* header height once it goes solid on scroll */
}

*, *::before, *::after{ box-sizing:border-box; }

/* The hidden attribute must beat any class that sets display.
   Without this, .lightbox{display:grid} keeps an invisible full-screen
   overlay in the layout and it eats every click on the page. */
[hidden]{ display:none !important; }

html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;   /* stop iOS inflating text in landscape */
}

/* The default tap flash is a grey rectangle that ignores border radius.
   A faint brand tint reads as intentional. */
a, button, .tile, [data-form]{
  -webkit-tap-highlight-color:rgba(237,8,39,.15);
}

body{
  margin:0;
  background:var(--ivory);
  color:var(--ink);
  font-family:var(--f-body);
  font-size:clamp(1.02rem, .97rem + .25vw, 1.09rem);
  line-height:1.65;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  font-optical-sizing:auto;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}

img{ max-width:100%; display:block; }
a{ color:inherit; }

.wrap{ width:var(--shell); margin-inline:auto; }

.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

.skip-link{
  position:absolute; left:1rem; top:-4rem; z-index:200;
  background:var(--ink); color:var(--ivory);
  padding:.7rem 1.1rem; border-radius:2px; text-decoration:none;
  transition:top .2s var(--ease);
}
.skip-link:focus{ top:1rem; }
/* main takes focus from the skip link; a ring round the whole page helps nobody. */
main:focus{ outline:none; }

:focus-visible{
  outline:2px solid var(--brass);
  outline-offset:3px;
}

/* ---------- Type ---------- */
.h-display{
  font-family:var(--f-display);
  font-weight:700;
  font-size:clamp(2rem, 1.25rem + 3vw, 3.7rem);
  line-height:1.06;
  letter-spacing:-.01em;
  margin:0 0 .6em;
}

.eyebrow{
  font-family:var(--f-body);
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--wine);
  margin:0 0 1.1rem;
}
.eyebrow-light{ color:var(--brass); }

.lede{
  font-size:1.12em;
  color:var(--ink);
  max-width:56ch;
}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  font-family:var(--f-body);
  font-size:.8rem; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase;
  padding:.85rem 1.5rem;
  border:1px solid transparent;
  border-radius:1px;
  text-decoration:none;
  cursor:pointer;
  transition:background .25s var(--ease), color .25s var(--ease),
             border-color .25s var(--ease), transform .18s var(--ease);
}
.btn:hover{ transform:translateY(-1px); }
.btn-lg{ padding:1.05rem 2.1rem; font-size:.82rem; }

.btn-solid{ background:var(--red); color:#fff; }
.btn-solid:hover{ background:var(--wine); }

.btn-ghost{ background:transparent; color:var(--ink); border-color:currentColor; }
.btn-ghost:hover{ background:var(--ink); color:var(--ivory); }

.btn-outline{ background:transparent; color:#fff; border-color:rgba(255,255,255,.55); }
.btn-outline:hover{ background:#fff; color:var(--ink); border-color:#fff; }

.link-arrow{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.7rem 0;
  min-height:44px;
  font-size:.8rem; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase;
  text-decoration:none;
  color:var(--wine);
  border-bottom:1px solid currentColor;
  padding-bottom:.3rem;
  transition:gap .25s var(--ease), color .25s var(--ease);
}
.link-arrow::after{ content:"\2192"; }
.link-arrow:hover{ gap:.9rem; color:var(--red); }


/* =========================================================
   LOGO
   The artwork is embedded here as data URIs so the logos can
   never go missing when the site is copied or zipped up. To
   switch to normal image files instead, replace each url(...)
   below with url('assets/logo-mark.png') / logo-lockup.png —
   both files are in assets/ already.
   ========================================================= */
.logo-mark,
.logo-lockup{
  display:block;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
.logo-mark{ aspect-ratio:520/445; background-image:url('data:image/png;base64,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'); }
.logo-lockup{ aspect-ratio:900/290; background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4QAAAEiCAMAAACWSuzTAAAAflBMVEW4ACgAmjsClj4ClkIA/gACl0ACl0AAeXjWASgCl0AAfQIClj5/AAAClj7/AH8A/38AAADvCCcDmED+AAH4AjTtBybtBybtByYDoUTtBybtBybtByYDlj4Afj4AqVT/AFUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeGpanAAAAIHRSTlMDGWIoAaNfAgjRAqICzwICAP39AgrPL07+r26Q+gQDA+uBz5kAAD7zSURBVHja7V0Le7K8sgVFxUv3oU0AAYX//y9PJveEgIBo7fvNPHt/b2sFAmRlJnNZE2W/I4QQSjuifqO0KEpbCiaUEP11GpEMBeWflOg38GcQRYuybqoq/w5LnldVU5dFB9/tCOIQBUH4PAAjib+0KBj6hsDXA2NVFxRGe8E3hoIgfEoDSu3H4Pc9W/KmpHASfGcoCMKFF+JXKsom/14seU3BKsW3hoIgnK8EQQfSpwAopSkYDPG1oSAIZ5qhTHeRYhiB4H6pqqaB/1Z5/gCpDUWbFAVBOEcucIWizsP+FnB9UuoekVLwmY64bWpUhigIwhlakP2/rEJulrqgxOjKiIJ0xFZyAMYgFKviN0IrKCh/EISAqL4SzKu6pGqvSAnxjUv4hP1BxRI5En0YlmiSoiAIJ0Kw6cUZCgHAiD6EEdePRCKxrjyTFFGIgiB8gCD2f9cOzSupAAmdAyBCOspj9K53tUEUoiAIH0CQlHkv1M7wtyz5jNmnhOPQwLrKMJ0UBUE4YohGDgSbMmUfd8/F2ZlKZP8tKkQhCoJwwl7QhqCwQqM1rEfuxNEwbDKKLxAFQfgQgpDismYBBJyp1t4ZRCEKgtCHSGQbjCLZk6yc7cmM0EKivAiikAjpIhF8pFEnP8HXjfLvg7BzIFiVJHvJvo1mqbwK+8nBHqVjnlcRfkQwovy7IGSzO20sCGbZq1wn7KwChTnlAY+IUGquxOv0RaF+zUQW6lvfIBFFJKL8gyAE36XZDFbFS2v/2KkrlTtjsCdTTkfq9O1cVYJIRPm3QEic6EHx6vLbC+kk1iqGK06SMblOKs8ZFoVeRCCi/DMgZFOZaks0L4WH5pVCaFY+V5moKDMyQhGHKH8fhJFlib4BgsK30nw/LyqXHHGI8rdByCBhLNGavDqpU5Tp1/n3SsI0IuIQ5W+DkJroOZS9v7jgFhCeltXgdk+U6VeqSj+fSCJVZEgihfJXQWirQfDHvDSfk8f9aaBCsakhDEH72izltMJ189BvI/IKEIYofw6EzDS81NZm8KVUaHynWfS3giVx94uWOBobwDgGxdf7dFFQVgchO1plkL2cgAkgGLRDCwi+80yYQDIMfBZ11Ob8HkEiJBggDFH+EgijLGpsLfJiCBLbDmUmaC6zuNOphnOnsDjMvvjq+0BBWROExCRSAwHaK72LAEFaOw5NcJHyn2fmgupOGENAREpFlD8DQksN5sWLLVEHgpIlg9JicVEhQ+JF4HCAUhFRiPIHQEit3WD60ro+yAuvXQRCkgsV0frFeWek6zKXMMPAnGKhIsrHg5DZh+Wb6AftIuGKh/O4C5YpM6EIu2fgzQkz+mZpXiAKUT4chAx1lilKX4tBYochdYVwKsooKHmuWxoR2828T2yKKET5ZBBeSKSAkb/YcrOcP074gIosnXqF/BxIg0vLvLcxjHB2oHwsCMkl1copeq0Pg2HQ7NMsq1fWUOTdKjlyYJWmdQ+FqAtRPhWEhJDqTQy8JKP6ShYm9I60WGsJABjSBlGI8jdAyBDQGAy+tH81ITQPoL1TGePlmmo4cvhxcF+I8sEgpDYGXxtP61R5RmM5f5jSotUrVBWxy0HWVbQoKGuCkOqJ2ry6BE9GIdjWzySGA1KkE2V97l87B+j7qSAkCsrrQNjp+GDz8u7x2u5VGskh4H7Jlo2aNCDBtI/dSFE+DYSWt/LlGDReGa6QiFvJVL+mcpFdqXScM4hClM8CIYmINNdycnm1pWaUbi0Bb3LMXpfSQqhjkqJBivJhIKSK7fObPuOzgKIi1R577GKN8VO6VQ9N+sJQOs1ojgYpyoeCMNJOmSf8hhfXjOyiYU1oNbWw2SmghD966TMhOXpIUT4ShJHeEC6PoHHVJ6iyG06HPVzKTsOkhnn98up3YunCKvsfzhKUTwEhsyHzJxsDEl4Z6Gi1ZrCUvQvR++Z1mr0+q9P4n1AVonwSCHXEIKfLHKO8dWEVYpSIBnwkPVo14HR6xybN4vducFeI8ikgNNphoW7oghAU3s+gfWlVMRly0O49esm4oJ7zQaGgrAdC0ilvxbIiH5Nt9g39WIrC7uLSDKFQVtzmsnEE6d6FB52tg4ncKB8DQp3HWS2akzoILknntcYR0fcmPBAOTUKp4FOLojc+GOMWqlATonwECI1moEui9JFsH8otyixim8ooIrKzJ4+NlwM7r0i2MOto9F4oXIwqRHsU5SNA2CnFUC4qQczSXPFTuGAiJBW9r4dTU36p27wJU6J/FOUTQEhI8YQx2iltF8z3pDxH9OOckB0pcVOI8kEg1GqhWKCVhF+1Sodi7GL7RbPLRz0Zu6ofQYjy6yDUinCJZ1RgsBm+ljj7x9WxE7XwVMj5hPL7IFSKMF+wPRM5YLIQot+wReucj9M32j+a454Q5ddBqOP0ZncUbD4WVnMCgzSEQWLB9OMiAZrfOCeIQpTfBqHWCQJ0pLN5LR5wXPBjZeckBmbry6LtNYEZTj4RhHrpQRCi/DoItYsCWGWIDNxBA1xojpuN1zRwSppGYJD9nGuiCn6aMgfoifN/XOUeghDlc0Cos5kLKvohlVbz6ZEyiExWP1UiMgGTmjt2JI4LTj5fgHYtPjEQoNce3BOifIAmlG7CLNzVr0qHogskYru9XPSLgJybCv7LcVyo9g9MAQoCt+LTfJAahJi3hvLbILTKJwaqIPJiLAIosr4gATyPUp6nVlcOuWea5dzxmn0oCDFOiPLbIKRZ/f1ABhDE/Ysy6QvwWGeBRmS5AHn5cWV7AZ8wCsqvgNAq6hmWICE93xDKGDxHcl5yI7SCSibB9NRwa6/6SJNPg7BEcxTld0GYOlQvOUMQhxBhEDLWachi4xtC+Qdj0jYmStHJRByIT5DPoxbU/iisokD5XRBGFt1KXvpQK4dBSMAAlfneurNLzkuZSAH+1dxx7XzePFfRUXSOovwuCGURkmpPBgV+lEQqXUZH8QPbJjBAcyrLcnX+N/s47fXFzbNPnOcky3FLiPL7IKQWBisV4LP+HNUKXFHPiq21IUdNMSK1FCs/afWp7kftHMVyQpRfBOHF6VJUEjposfV2dKnjGC2VvkxJmrtEawQOT7OURl0ElNx9pP+WNSrrCTFKiPKLIIwyh/mz75/QjtNefIE7Q6VjtFPKj/dSow4EZXvcinpK6COeTIWtQlF+F4RMuVEnNt+LyBNV4eSnfRKOwVo5RqVTBtJlmHKVHpqqTBnGteO1qcuSs6/lVfMR9p8qocyxJQzKb4HQU4PfuhTCQpoyRlPi8caIrG0ZIFQYjOBbzOaExG+gLwwkwGnDl3zAg2nQLYPyqyCkgn4JdFRuEcLzbVsUEU6CRqug54IhqFH9C0mkdpUMgxe5qYRWFIMA/JBtmLK0c4KKEOV3QKib9OWF5c50woS01q0CPQxeKhl9J51Wp+z3DmxWN2/0c0GoXE4lkuCj/AoITbvaHLwxpcVEX/OEmbJsFJYqz19DuAptJFGh6m3NbFMKuM2/J0j1+9swlaKArlGU3wGhsCc1Bq22DP3M7TLzMQj9I2rZXr6xSQOLZhIC6w/Yg+mOxAUaoyi/AUKit4McgyMZ3NCnzPfJAAZL3vqzqOxGuxKCTQ+JeeUjkHyAMVpjy3qU3wOhhUG52yOhRoHMNIU+ZcTToV3F+8kTSXsvHTdaC5ZR5cEYrFQHgdHv6x6Vbp6/rwENCoLQwWCuwdPpSZl7AKx5MYQPGE6WX2TphZR2po02RIvMPQ+HoNA6ELn/CARiwhrKL4PQwWBkfSp8Knkle1xzBJKQBim5HgTFphBrCvDd3SWUVFBJLNgAAj+DgvuiUutqJP1F+QUQEpPb6aRr8U7zlGrWURp0YIJfX0TuCQDVa7TbpG6JPttxptoPm36MB4QYpmPcEKK8H4Sk03s2L2VSGoq8ndlw/yQ2fbVTn+iCibyktKjLjDOv1UVR1MbrI12vH8MwY/KA0BhF+RUQms6YXo6aAOCjzoQAQlkCGxFdPVHJM1FScZaZTOBOzPFOasKif733gu9CIB3IygOqMkyWQXk/CA2l07J2vFTUEKay5DcVDg7CP6AckkzTRCLiIQmBFZ8i04u/ER8kAnoGbLS2Q6DZhSt+xCLKu0BoQhELMyZ5RLEyp+RKRdq15MJ2mzm5KNcPVc2wCWkkCqP3oo/SyLJCgVHcy2jN6wd7YBSUlUFo1fot3Q5xGOd1QVM2qUWdUi5DbZGurBD1CXVBPeyX70IhiXTdsICew3fjx2LKgnYSid0FJwzKK0EI7Lzf30/CoR/XV6VA3O3Kwa2Z1yqJdeU1fQu1IBE+T0I5+L4nCQRmxJrxKWX/KP8mCDu9IXyG8oWp09qZ2xJoPBwofKCEU1rwXRcDPpvVRFEqvd4feYH7JUU9FX5eipCokEQcorwGhIba8LlacsEqw8y8ghmlNfBrSwWUW3VBnAK4vJiMnOotVeygBGnZLACg2SYW5FMSe1D+NRAyKy3/XiU+ZltstQob8khEpVJRaSWVCtT3luAkyd9AOE+iAAn/d577G0LYB47YqrwNVYZ+GpTVQRhZxujz/hEZoiCVZuAGmGk9J3kvolJ4T3kooymb15bvEcUq5WTAiiSgxi3OkqOkQwQA3G2KMERZF4Tkoj2j6yWQwVZP6DauCO0idQosT7mY88ByWFVcb+YvY5xnajCtAxs8viJY6el1BKHMLqLK4qThDSRXh5jWhrIiCDutDNbjc+ABwRrywHiNrEMHJeul8jLNZGpNQaPydW0fiMS8g0BCaeoWG+d2w1MIJQoo0hApR1VmGSa2oawGQsXvt2rTah535OaoaMlkpYHJKEUtpjHvVNFwTfiiQJyo99fo4cq5IxH8a9f7MzXYb6kh97gBh05eRmiUoqwFwk7XGK0TJRC5YIS36YUTFqq+Xpz8QiQGUwhQdJxNo8x4/5joNRg0BievW4yI6BhM7a6n1WDfb+I0+PbZPRCGKCuAcGVFKEuALjw2WBVE8smzfZTUMwyEuazch3yaSwMas2M7yNckzVyILqoCe7OjKccUcVylgKdo1NdEQzjkhyEMUZ4GodkRrkFsxM6QFjXQz1y4BrJDAE16kV+plSeSwmYN0rkL2Da+5h6VvmsgmTwLWJfTVBpXiMQjrBpWoCgok0F40UmjayhCIoNxoOdIJts2Vcruk54X9hfOA5VX3PXIDFOwiF9D8mkalObwa0oLP/LQJ6wawWHWo25sUrRJUZ4EoalgelYR8vBgYzLWqKIeLTLJJGMFJjMFzIoXEzavquw1t/ddhXK1qz5h1fg9wkphbyb7xI8oKDNBqJNlnoqVS+8Faey8UV4l2HAiUm4TWikxgDha1jX4KlMO1ReljobJ4tyA37wLQ+6NS6PKlCESs6EsB6Ex1xb5RUjUUd5YEJROQR2OUqglFFTCVBDiOzgjLhFG/bJAPRmiHebRikW1kyIHzrlVpIVCWQzCyPBtz52NhFpJMCKi3Tj7JY5CcIzkBTdLvWD8pQP4Cnbh6mWTmFxchiknYr9YgfFs8MZRhohClGUg1JVFc0uYiNJ+zKY06c6VYIiodDP7yPaM0JAm5Mw2+StLhC4eB38u6wOjp2xIqIsyNOOc9BgnFMoyEJbfQ43nH+0m+3mVFZW5mIVGYUdMN4uCRNZeTXpKed5q+VJPP1yrrBsmteZN7Z7fxVncbNjUF2U5CDXD2jznpOYD9vp7cl8MzZlG1A2ZMkMoXGVqnjIbFFry8qaF0L6C5lX6woxol0MUCC7WQTxx3D7YURRloWMmX2CNEjsh2jb0COdyItV3GeVaOVqJmzqmBpX8ggGRk88I8u4O8lte5Z6hQrp1IyGpjUJsZ4iyAIS2b7Sbgd16sMEn5INmUZVnvWZOZc3L6yUMQYdUZQF2a04FI2L9F8Nt1EZhgd4ZlNkgNKHsGWVE3SAGJaEopMrQEOlTbaWIdcZhw+uZuC4kNP1rSLSyAV7O0IHyb2pC1QhtDgbHwt+1QCF4Lbz4XAWfWjCkWlkKis8iZytB/vfaxKdWo5sGDVKU+Y6Z2QGKy2DXUGXXphxkJPM6oQmCC6hw51nPTF1aX4DAOWEbyDdRH64pF5Ja94gZbChzQVjM9ux12YPG18JVT/r1d8BxGFkwdLeNeVMUecVw+OdqgyLLNGjQQ4oyd/rUGjkTpz7J6CNmQJGulvZzpcFW46kmFWRtEvjH+VKVQ6nDn6MUJCQyt5GiKkSZCcJmbk09HfHKWKnbaUhfCrcFkZmknH7U31/m9R+kFLSfCbZUQ5kLwmruXkazhI6jMAhV5bYwzQvLTBvEHg7/UlmCbR1gxB5lJgiVzZiTybAtplBVF+F9Y2ESRoUGrNkHdai+4fKnYEiMi6lC/yjKPBDqIMF0a7RZTiNvGh8SQtSUjbI8yLBL/hAMradSoTmKMg+ExdypQ7InejlYxpqatmlGB8KOPHj4R2BobQpzBCHKPBCWM9nvJ/hGH+0WiWPWliSKhnAN5C9/A4bWQpLjrEJZCkI6EYTlcyD8VsWvMlenAi9NOdwGKf0TnIIOCFETorwUhFMCFA98NpIPXyW/UauueMgo/XgY2mxSCEKUTwfhd5WqMopcRvajUWcPd9GQz7ZKLccMpsygLATh1OjWtAjFAxRGGTGqMAeAPbBxRU/AD8bhxWxrsaYQ5cUgzMileh6FIrVL7goLQh97e0Qbl+kJbeSttRgX6wYIFjOhzAPh7PxtQuhaKJQFhQ04QCecU+JwQsWeaLj0xr2ZZaRjwgzKXBDOr2Qi2fPbQuBdo1oVUjI1A6ACPqgHUQsSgTmYltX7SqKIlcqXoiJEmQnCaD7DDIkGCGZmoRAIAuWusJnj7hF8oUMzXapA0Q6DZpf3PEVr+CX6RlHmgtCQotE5k24Fk1TUO+ViVzgv+tiE+REFn2KhGy69CxDEVDk3yDGDMh+E9ZLZ47afXo5CqvrEkJk+1wqiixG0uzecwWCFOj0H31RUREyP1YpgSwqU+SAsFuX+M3OQPr0zrDMqdUg5P/BRGPZgokeUy+ZLdQ0/vodpghimgRw3hChLQEgX5nlw0qYnjdJGcySR+RmpzIRl+8q6LhSZt1gURIsJuK2cXN7yBA0GkV8GZRkI84UZj5zUmm3AKiZNky9EoQzT5/ProzgdDVy24a2fxC6VR/Wp2GK+JWpOs7QyvibcEKIsAKGqTFqS+++EzpftEZvnijJyTfapzFre6Sxt3lRcCwwBucEgpsqgLAGhbtZCFplSpKMRIREQpKWLbNMqe97PCiz6VJItAgl/ka/Rdniif+obbVGUp0HYKI6Z53ZQ3cIYfv69grBtYMXbq1nxArsD1KvUYNp4mXgoKEtAWK7kzyfPlxouxm4t2soQG4RNlr4UFiQzpigMADGIsnhPWKyW85has/LVUpeuUQu3IW7hojp31q8sylc7T50WgBhEWQpCzWC4hh+DKl/r66VxKTEoUO7XROVtC663+mX8pWDpGk9UlWLSNsozIFSbwjxd53RvQmFDGpdgn9mjqu09bzbDm3bLgMULIGj6ZPP2NjiTUJ7RhMoenelNhG63ofMV79KEdT/gqKucQCXSRsFwXVp9TuNvLl5TNEVRngShtkfnNfUigxZp+Rsg/OaU3pUBHMCQ71BXptUXDW20um8oqkGU50Go63Dm9Ldky3/dBB2q6VPkwDPM0drL6E4lJhhOLhIu0nVS1atBhbgQLP4EFRzKH9CEZEFdL2iZIAhJ95ZtYdML8uc9Ggwrll6tU1FxsSAoKMIvOIdQngehKWeauiuMsqgeLtd7z7awoY9oMDqS0bIo16xrIiYG05Tkb/WsQfloEBLS5W6jiEe7Ij4V66E95AqsiBNA2Dymo4loiH//CQzqPABAIBqiKOuBMJsVsI9ketrwd0m0Rj7oMmiWBS3KSuOw9lsjPmmMFlVV1QXna0SXKMqaIDQNsMtHKCQqUXsMr+RdcQofgirUKat7m9KU+hVr8s10aIeirA1Ctn+qNHMtGYWgTBQZR2v3DoO0l01aQmCeCTcTRc5MLm8rv6zjHSXRhVDUgSgvACHsdnKdiTyQYsInt0wUeaQx6XoGaVWXRVnWTfXA51qnZuBiqCaUgP0hUD4fhJYFWdH+hoepFz7BJQQ5XeE0F8bzTlBzTlrWVT7SNYb4SpsaGGKxH8rHg1CxYctELJ6VRhkWO/aP9AJqzVKlj2kcunUSZ2rBuE06RapGC64U89xiuWjCLe4vbJCXslIBighfNsqHg9DxpkiyJGNd0rKZWTpH16mYt0xjpY7liCgtmLB/hJYMDUmw4DTIyYvyR0DIZmma20TXdcmldrdjkHoyZT6vYpDSXigOkOh5Rmzq0aAriVmlFXpTUP4CCIFNt5nggZxo161QZz8SBiFGHo0D2ZdQ/g4IH/JqQ+/q6RqFPpvJna+kvi4Uu5Wh/BUQAsKiOh9LBZsxmQlJn6XJR+ig/OdAyH9PyyoUrQt6IEflSQ9phTSeKP9JEIq2KjwiJ4l1eQhAlSXMk+cM0l/zpRCC5ivKr4KQSK8/jwJox2MK4cI5Aoh9yiAt5QCiqOOpaFwuk69vQepysQ+LmOhBRvzsvkdJHsevrq486oJCQVkVhGvKEwbps4lmZPl3IfxIQvoR8Nh1EVsXaNR1HXxw4cXDHRrOKOuBEAph1xGeKLa4qCmnF1JDhzN+rkIKldpZ/JPSIUnTyNHsIrBviT3QwuHOJpdGm+ENXB4um47FOTAGgrIuCNcryM25QXpZGLIvJpDq52NSy3rlCVwb7LvEWoQGr1VJaUDkz+JiVYmbSJQVNeFqpYBcwSz0zQCF/XNs3qLVG5nW9MlQX1wWdokq0ZWLstqekGTFSqLcG0sQxD0hF+oYj8w2ndEFsVKkAaXWV5NSc8gyA7rEBHGUFb2j616AZAsUGgdFaCB0uWOHkFRtD5uAJ9aMl6idZVFWM8xntEdR1vOOcie+FpqmKXg6uB8kApdgMCDRdeyrlkQq9ZqSBfaoqP4TAQkeUBBnj2aUZmj+RtL1QgzF5NycyQsIQRCirAjCh7ptKCIXVKlLPD1Ki10EnKNOgjCdoVa95G/Cfabcn0rSMpAXYEcSpec1TUm+VO+ioKwFQralkmECGSAItvy7QNSAeGECfYH5ocKGDFVP1AvtQ5fkqadOh54CWaHeAwXlKRCSLA2FBSpL8iGnRy5svCUgFFOaZFTFCZVjpppr0er7sKKfgbOUQu9JVSldQeAIwi0hyu+boxSKepuqGnUuhuNqDbdUl5ijpSQGf6I238n+nhR3eeRBHY+HIBs+yhv2hJBLWRglAdi0hX+k7FZieh12C6AkNOFTRRiOano5AyNaoyivBGEHBlo3n/Fde2zIfO2iPZspNXHCupmB5tz3F6Uq2BgMNToGtja0F0IeBeV1mtCUHgwmbfKKBx5a0EcV34u9o/7MLqrpBm0X8NSKk4RAH5K0mJobkCMGUd4CQmdOQ+AA/i+KCYipNfIDF92StLXclBPxE3eRqqoqm0porXxMUVX9uB8POLLBMt0acuKkdqFTJKqdOGLLZoJGLDBzFOXtIJyCU+WWXLLH4qHvUDVRNqLRmlKVWmQZ9ZR1pLR3Gtpo9iPtMqyYip/BlA2sJZXI427QGEV5OwhJVtRu2ZKdMipnvXSuLnOuDPJlGzP30vO1NMWUm0nzZdYk7RdbhYxdFJR3gHCaw1+YaAvToYHblFSjpUr5YJhBVxsJj629XoRTwPtppjxC6UrVH6OsvKeIQZSPBKHKwV5aGEQz+v0u6bUJn0KZis4YlN81R70YYUioqCasl4Owmqr/3BrfFaJ8BC4+F7koKJ/mmJGzeVnSi4YFs0pdEgueowqhQ99RUkP7mjSl3M8JXzK5rBarRTWZ39Q9siwxNIjyWSDs6EOZUdc+ZMuOOv7LXvumKVJMDLX3L+1pxjxFEKL8BU24mCvD2Hqh4sULU3Vd7bkqBwgZHbrDNNxrI+iLdfgVox4/AFqjKH8DhItZox5OcZ+6ZhomwuWI+WXCgRTpLFD+JAi7pXUQDzF18eA0aYc2oJgn+Dn7R2LnX5S/4phZWBpUPaxzpAtKiQYU84SqeErKeQNEQfkMEC72yzzEhR/Im1ZKRMJrwgRTtpcBWxPcEqL8BRBGizlMH4HQZ4+aZo0OFHQ8BmGftxEDFCi/BkKXiS0oJosrWlyVa0DY7wEDBQ6puyXMx6sY5IFDVG3NQ63Wy4DFdBmUP6IJl1Pq64LCoblejOkydlSQB44OeoH8gkgTmpBVVDkGKFA+A4ST8tUa3dlheXtCowlV2opbr1FOpA1V6htoUclQSXD+GFA1WqMonwHCqY4WoosJq8UgFHRrxbRUUJdZjYSzTofPlDeGMccmkVPdX/oVFBigQPk1TRg11WPRmnA5CIW5l0483t2hPdmke9rwsPsLyt/YEy5qQ2GBkGRl46M+pNHcHdpAh8VqRRBiugzKb3pHvRYU6VDutvj2cyAcGAKlZT9o95CXf9iSLh/2l0JrFOWPakKmkpaCUAXfgVAqQLdY9mrcH1jR0FpiZEf5SHJsPIHyoSBkKAvuEaWiINNbOYyV2bLTePw1/p6vgbqn1FXK9hGcrqkZcQKNdrZJe9ebSfV7OhhpmRxOifXHVsrBOqK93w+nE/tva755aENycC91YIf4B2ZZ4g/gkITG2cbx3fvDIXAV8dlpfEiHx2P1vnRwHosY9+CRwQs430rucdwOHXMYuM7JfiEn7y2GXsrA+xsf/Cn2h/YcCIsx0s/lWWsuCMnD7dwj72c+xuSrTF+1l9Tk4spJ+gqq37t8xQE0JHcHGe3kc3oH6pcfRlw7a7zJWzRCcm9Xvea0M5zsA5Lw0S4kzcNL5l866f/9KXOUe076cUKtCdM1PB+E5C91dUrAT699zGeyjG7jrZKY/z+O4UXKP2pRyzV8tt/tjl/n3WbLvpXw95VsgxIb4MEJYzjweN7tt+wSesWO7QPkP715csg2+80+dj69q6NOZqaaE7ThIW0T75L60r0H4/09zsxzccYd9x/q+AWSbLvf7zfZaeB6wXPF/AShL/FHu9mdz8fdTjzb5NQbx+AAfQzGbGixM7TX7gmXg5AEvZ1MRwV0Wl0Oiwj0V4/JuiG8GFaiT7HLnLLdT1+Ouy28hTbbmM92/F23bPocf64/P1cQ9ulWzILz9Sck152ctQm8XHag+NqVXSHO5Ak3/cNux93eUQEMg2e44DE+WRP5qMcrJw377Et+dB4ZUnYe+MNh/MGwUcWZ/NIhi61n4xrQySl4gWOcSDVziI9wN3sL0s71zid9m4dkaz7f2g9LHc0Ad9/v4KHKZ/uz24iH572/g/U07cHbD/pwin/8oQV61pNOsOV2vAFvFMjmsr7t81zw5mJExeoX7wmLkcWha3pffizVpD4SNh2N3E8GdpPzrNHk63qTM/9HYQTe5Ia9hXu2ubpwajM2feCbPzf+H/bF3RZmwRc//qf/3y3XXez972F6WJf6YTBkevKe7S2w8AHc+A9iHXBnze26ye5myf4RQ2EfH2MOAwbCmzjDdZfIMXpDYv/E2VFdkt/zVX5+21p6NmFf0qO96gl+ZDBsxbqzuarbYZd3H+r/9S8Ao9zLwbfsnvmhlmJPsi99vh8LAwe9mNzg450+MXshd2ma7I9qbftRL4WfmT/bW2CJuZvB365ftnUhltPbzy1OhkE4TTOSIPX9xcQmntSEBe8BpZGtm+xC/CMq/FB9ysmy9SqQ+nET9ns9ymHPc8QHElX7x87qjJ0k8U7OZLYmMmPxR8KAv7Qk1kvpDpbxA19a4ZsbZh3t+dp9PbN3uuXv/nY0GuD8dePf3MJ0YhjaCQge95sNPw6mCp+USWuW6+P5LP4Gf2ZaL8ncqXj7+Wqtabvd+TNSfMaO38diSD9f1pCONz71YjYac0V20+wPcqynwIP5Yedglp58MAA4eamNAsfOtZJhfdDHHndnuAA/9CyPVMpNo9K9G8uAYDduFOFx0x7anfVCBGrg0fLlZrffMysXLsXuk9sGSbx33p+lq83gt5bHSatIa7ULgC4teEdC7fYUHLqmVS9JH+RpUiLckWyqRkt3c6OBON9ZmT6rCa3Bd1EqYSuYfQGY+VPpMuwFHMWsF8u5np98NTaTn5tMSSw0yl4ezF/xMYvZD3ziZ3rKbGEDqFZ/NpPkWi0PjI9ijvI3bdZ6/lc1b25szrZ6fd6qObOx7aRMzzE1wZnsmJZhZ9qAstlvzZBiOSR2Cn3PO6nCxB+2mesOEl8C+xX2UDulTeX8bMUlmPT8HOxXtTiovTVDihrjXeuzY+wcaNmICtZ39XDY+7nr2+MwTSRquGlyM9p4z1EoBqnf39F3fAkjx/+D2lfA54cBEBJS59NckXm/m5iVo6maIi0FIVM2tLYbH1pE2r0RVoWfLdCLto8lkjewuKR0iEe7pwjLmRUUJzHXYO0Tjm/xloUqPLXiXV3Ph1i/UjaZDm2SnNqYK4MvAOGVT3K22ZEKID60fPrDxDvBFkhO38O9be93gcLbD4eUugZ778n9frDmotZMMDduCmwHK1SyvflbpEMLJlh8V0OKD+p03GLd8tUlPuzUPW/BqX+CP1zZ9Wx/fZx8qS/dub9xK3W0XAjadi9Xr+Q08FABC9v7nTtVd1ep3076Bm+OvjnF2Ze2EfUf1B3CmgQrWysAfD1zk+CUiOWNof2e/R8bZnsXp5emgfv+bJ9Wy1cQtromsb3z3lrLQDsAwpVor1Xa2eLGt29IAJ24tszT0kFR8+V051PrftQYSOSuUGgl+YqYdmvlDIkBlUfuIzmyaQPeFwXC7MDebnxk6/NBLq8ws1q1J4mlBRwnB3ONE8fAVi3+2lo7uTrCmvJ6rPAHjoU7145MkfBrw2exUS5qSEwXaXypO4l3+8QzKuXqJIbBZnGstnkxoLUV+p+tQofBh6oVdwsLmFgn4H5vckv9ZcP+kOz0/vVL3OVd7R6VYaC0KPuN+7BPu6syY+6WklP2ufP+HBBmCoT+jvCmTYshEGZFIOYwmq7ttuoV+qogsl19tRSEhHRl/v2JsiBdRoJw7xtLbLo7L1H5UMxWhum4nyufL6cTTCcHhLCwnk6W5fNl4lfKygLFJk97U66D9rT19iX8218b3+50QHiTf+AgvIE1x5TqAQBsLOREDenQA2F2ChjqDgg5UOWljslUENpexq2xOq9n+ZBtC1iNyvoD16i3EAh3Wawfrau32He+wOfpgHA3BYQJH9rmrLxGp9eHKJaTrcmJzvv06u7cUnzLMnciEm4TF7E6PDaw/fXEWnzyh5z5s0F4UiDceiBsM7XsgjlzElN3u4OXlQjPvQdC7htg6vRLmWYaPnx3Kfd4Ww+E2iZSByTciNwpY832YQIIFQ7F1zUI5ZA8EIqlog/CJDn4+QE9EArFr3X6XBAe1PQH5bbdinOfPRD+HG/WWtNy2J+HQJhoN4qzMoHzVQ56HgjFt7dC+VpeIx+EhIrmnxZdBZTESnGzt7lEXivAiH9Lnrt5wprtyKREzseQeBDsr8ksl07xrCY0UGPz2DNHzyI6IaODkCCV+JFeB4TW6/bQo87FZocPwvtpIy8jl3cxbWM1FMulCCC8brTbHvZ0RhMqDeeC0NE5GoRt0GXlg/Cglw4Y6jwQ6md1SrieOsklxbKuYVTXndRD/Ba4IX+2LUoHhCaEFCcHZ+SQ1pDNBaFa7CSyb/EbgvXLK+tVEssFgiBOc+7UZ5pgeOX9u0Xn4CAhf8+96Z1Axlp6R0NstMfQkS9oyuuA8K5tLpigPU2odkU78ZaZ+ohP4yCUR93coLCZPwzPviZUHlnlO4QI/Jnt8uQ+6uRowute+lrZsrE9JDNB2G4hf5KNO54AQj60mzLV54DwZKspDn65NNnmAQfhWXzOH79AxWY/BMLkJK/yNZSGNguE4svsQegt/H1VEPI+013nRgsXc8yYfjAXRwLJZSUAKNOEMBH13Zy9I+rCDxOOrSMerdsidhkLhOBDkz5wnpwS3BOKABzkj7SeEgmAMNHG5c4zmSRyNg4IT/eDir8pP4647Ea5zx0Tj4NQu17gEnM1oXLrH7f9OEMPhGrp4A9rniZUGXfC5oy1JXncZq4mlMENtuocpNd5SBNqn5P7aIXfeAEIT0w7s61Gq7xmX2rtWAeE3rwn6twLKQ9LzY/xULk+9FX6R+Su3zX3+4N2YhWRuQi94v4lydsKhBAeMGFmHh9wQHiyHNgi6YUrxMMoCMPhX9j46c2PBiEfgIj93eD7BwkjNje+2qRVzlkr90OAUGvVK99hTgehCKVDioI3vAEQtvaKMgOEcby7nrnz9iB8H7BYnH3rmuPTpNsxY5xZruz5DIFQuU5vP9qqvmuJD3NByO9HrC5n12sUrYNBalI1KTUfL8zg1llrvmHZi3oAGU1phRbAS1t4jDN+gkztnmA89E6fSZfxNSFMlh+lB7NTz8VtebD5uwcgHvd2mkkfhJC/eOvFxMw3bRDyqLkIKV6Nc19NWwMda8PJQbg142LqYQ4IrSVlPwGEJ2vUU0AIfzx+fX0ddQKfMM5j8NHGP56VzkG40zg/gx8VMgj2IyA0m+GnzVHYpvONoFSFJm8nWsUWdTdqlcoeXWqPUs5qT0ivB2HWt0Z7Wz6Xot6nDG086jTX2fm/rNRJBzIDwbdGFzwwOV/OZ560xn/e3TN3JeUzIGnZin6zZ+/t5jj4AiC0l+u2D0IOPTmXvs7nLz0A7XMX63J8aE/xYaOyRe6uOaoyeW6gb2aB8CoT0W+TNKFZOnZQLzQFhBrkPAlG+z5OJ+VqNdEFqQl1jkwLqPhKRjSh5ceWmW9nKbuda8k8BiE4peEibGit5zVaA4Q9kl9DG7qstp7bmKHU0x6qaZb2gO4AxVedbMfYDNPFPFw1yidA+GOH3A6nrA9CCL7tOExsfWhi8OMg3IdBeM6cFG5pJt6z2AKRyBxj4kcpBAjvplyADWYOCM/cHIWE1esmayeA0KipWSC8yusL5SW3gdtenqgA4Vble4v0nqkgPPGsH7WuXI8ihXsyCO/cGSCH5nqNolWtUSWDXpGJBXvqYAj12TxuPom2QLuXo0adOqjC06WpC0K3XoPdSW3SEwL1vIvYZXwQ/vxoreVnXLAXttnxogIbiNrNPmKO/vTMUVNZZIHwphOyWwNiyAHlpY7xzvPbSRCaFEvhx5jtmImP53aCd9QJzE3aE+72UAa5h6WL10ie2PbzK4a7Yf/7cgcmQaiy165nuPP28BiEN5GtzR7+9Ue7zuaCkG/Sd+wZ89pFFaVIXh2iWIrCkaQUOjNy7ucLUJ8MfxxVxfPpMma+nNlM3/zovdUpC6Y9QVHvnnsydGGSFfIOOWa2IcfMSTtmFAjZtGEDUOEGrZgSXiXlbeCOqt5OgTBrTZxiM8c7Gt/j+H5vs0lxQnCrzNoT3gzKd3seWoz1QmO0pDq/BuFG77yv4tchEJowj7BToFT4bKedTQehSZCzTSLxzlbyjnaOkOE92TQQdipzgInOEOgi2qd4Ilm/m6+j2XzQemSovqOFONWT/n6zXkR/f7S0wllnb7chczRRvBTbDZTo3jzfQjBEEd+CWR0mZcZ2zJgsUZEKCv7Inp42pq0GoZ16fJsfrD8kyRQQ2l6mdpp39A4J3PfWLVLwin1bTxPGN6uMdzvmHQ0ZGfuredzTQXgIDE1FKV6sCRdF7Adjcf1ww+XRxWtPEXqlSfn44WSFAIUG4f5+OBiFstXJxmYGnGQmmJxTugDuKxkJ1p9Eboy0j0aC9T+7e5zEehk4ywGEpq2updAgdAqQ54NwoiZ0dmGz4oQ8KS6x4dXTNwqEd+tWvrzMwcE4obxKzDAfW/p1MgidHPmfH7eW4uUgHGpINpHmyTNu81mKiemyviJM88n2pU8hvrAZ09FMSL3USzYETxPedV5JAjUzVi7pWNraXmeZJJYm1JNpq0EISagHVWsoTwEnPALvDchWFxnLKicDQgsgS0F4ah/uCVudonKan8ANTxPM/ljLWTy/s0oVEiDUgOBRu2EQ8giq/2h1fGEYhIdDH4Ti97160HJocikcBCGhTwsJImdKrL5zrq6ScdJezO/BGuI32OUWpnOOikSjoZdVmjFZIASDyU7ctGcA1I/+2AnHslTvZuhLQiBMjLfPqiNPWmnwxC4ITamszJTbiAimlq8fO0phgdCC7zIQHh5qQmX/iVuZD0IZbTEfbH/sOJ8CoWW1xl41WTh31I6vaBBuhkDIU9h9EPIgoT20vQXvl2vCBfbosNHnBRA6Mi5etjdgyPMUVVkaTjilEYmIP/LiaU3o5IQcXBBy5WVP20Q6V8xuLwRCq5TJSjdTTnCrlEluLQ+JUYUn4TdnaJe0pNuT9KTKOnILhHr6LQQhO3w7DsITlFrK6r1kQSmTWI7Yps9wrDpLigXC2GyjR0CYqfgoG5Ci/VC2jDhnAITsgcQ9TXgS9VWZpn9V1dn85qPBqEP9tAjP4/yIfQF19X5BfVkW5VyKJ9r0doR+tfDYKdK610PtaRDCTLgac9CeATx9DOayWi/vsqhgNETBVdSXqnBVwb+2PQo34TY5eSC8W6ow5oxqFtOCoQmTe9ajo6jUXmo6CDUZKlB0XL1QpgtCZiYq0oGNyB+aUdRr8sIs3N9VbvtXa5ujmbYzt94rGKon5EF2cXdxIpe8s7OIata7GFTenrt7LBBKa9Reks7qNKchEC7v79nzcs6PUtBs6tVzj1ljtBkaH07vxiqHQ8MUIgZqCZtldkOrQHjgDo5kb2Hg3irPZcuzHW9QqgAcFeDDyfhUtqu2k0SD8OQR7MkMjPiQMNglfDpLogh1jZ+dpLCNtdfwzgxeoGawy3hVEA2cp4ctUJC1elXI7DoglZWsK+uNBxT4kqQi3opUS5E2fna3iPrBxOwb7PQ7WeAgbrg9KBC2fdfqQYHwYBfb8pS1xLIRNP8NfO2eAAjbWFYEKmNEvYIzZGXfFb3Fro0dd+uG/e3ewodHnfwrWCzE+0vEjXIvGCf4UCBsxcp3dtnmrJ384TQwrS5ZMTSzp4vokTabdC1PM1K8oKye10ssrnG0mHPmiqZSiR0c/dwhb0avpAw98VEE4nTsix8o6QZdH1vs7oU2Mr4nDT45nUXicexxDsVysedBtvNVDUz9Uc66ozRAecqNr/VufUeF6xdSM9XUMOz9UkUT6xMXgKzWG+dQ2gkPjo7nHUcTco0vS7A/OZRurbb9OX/xjZ8s4RWBu50gSIutV2BQJ+kt2EqwM4l+1ku5XY8QS/KfLefxunFrZmMzeImHZNviibFH49fvCWc3ZwJyi4zq7ry6Rr4aVIThyvg8VAnYcxP1lekyDrghP/xJs+Id+Sw9WUx+bEZujppHKTkops/dfhNvN+cfUIxX1wezU87V2A1I8CPhUPC8wXQGWj6OwQT8PfIa7Un+rvTpXkI3CV2hlTPO8HJrT4X+xGIfNEM6nfaGB/G832949oG3dJwsusD9ZnM+6lJKQTpujdOlE4SHet+ptAIzkhMMnRdEJ34CDjzeg7y1XeztTK1XcDoZOt8NPw2zKySZ5PVnt9lsdpD/Dq8FDBb7YLjNDc/cAZVnP3TIyxCXtnLxrYqZeMQ7uoKEs1amJMyQCW6ZR1vCIhD48NVy47s7o1Q7Zss10mVOdhyOR6A3VmLK1iL/hV274LiULLPip52NQcWqJsiQTk5sXiSdKrpeQVDbuizR/BrJ1qTR3WxiJT7ltl9WZpsqPPyyUCgM0li3VIhtBmwVEwvEHsE6/rIazugNoBugBDsg0ZlAmhSp9Rm4zXNQFQ6nVnr9j9vE7BGtZ783sx5U3r29J+53IJvBhGFkThEkEh6vqsZTLnXX477HwG2VoLHzmLcM28X4S2bGHxLHdpFDe4MmnLu/5IEAUe3edVa9O+l1qqc2z4Zm2tBHBFybXtQyB67Rwb6GTb8N4nxNmHzJhF9u97V832I+2KhffiTBRSZI8A0hteXa55zY+mxOoSH8HO8MkzWD4D6T0fi9viC7BrP04quRHzUwQ7um/3bUQzUm3imBJObrz8HajuoDbhqE5h415TiIHbAABm7nO1dRx5zpCquNGabHH5ocjs5DVfmp7jDsW+eJ5+ZuWzepwbwCbp7r35RXeLs5WuTpV0F7cPKerblPmR9hniM8NC5fTlaC+sI7QDiXvnAgBO9jOc/IeKCd+l/nJYnOWJoergydeLRKugzPN9xw2Yu9Xqt+5x9s1B8FnQUwS0Dq6I33iwCqGYfXmW2c1LE+XUTS8qYlR6ung9KUe+savFuLPsmeX35vxwntK8TiSPtaDKZsM2W3WtlaB+hcZX2Pluw3bfjB6MFsbSaBxDrztsfA3b+o+tD+cmse7yk5bPbBJ2e+wx+h/ZtSW7zVDqdyPUJHGGuUm/6NiiGZ84CqjvfeE3KmRTRih0qmpwFbU1JOPLZH57pHB8qFfKaJB5HzyFOcuSjtcD0+5Zg5Tr/XSJeZ7UsVUIi3ioV9sgg/IewJzW/ry2ubpLVt9oEi4yzwUiQB8rpPIeprkLXPPrdjr27JFI1F3m3FRExujaS5IX61BKCoqZsqkHITzg1Kff29LHkb3qCS1vsdPjCECca/r9KRD/3qg5P+eih2dpJnYZewaT79a1gkDfbA1EWtL7eBa53YZip8wClwz0OXCX3J78sZeDZDD9V+OMFbb80v/kN1L9OGR6vfxckdTTt0n+5ZD6NDi3oYLKYJ7Xdd4Rs3IbyJC+0UFKuZsfqgJqznEU3Uyy8V9OkWb8gusveSyeIjM5RPeymzNCFZys0UJpVveNnCzMQ13WO0dDtdDNQ7Wdk9huaGltXES0Gj01C6T48zOMVO9SjZO0AYrdwDgquaeZ6ZXKo4Oq4/TV+W5dk9cKmparp5qyJE+Q+DELI2Q52WJmSFBWc514Tz1GtuCGrqSX1ZgF1D8mBMHJYbkWRHN9XDeyoRhChvAuEUIdz7EVHCG3KO1TypRoXpLGSExuT3sh6OnEPFUzn/UvxmTH/RYhV2GRSURSAMhCQuA9HsCXid75kxoQdiqC3GfZW8w3ckwu7TvTK6g1tHA30vJoMeBeUXNGE2N3Ft1q4tGAqILuVUvya/bjH7Uv6SU60ToEBBeQ0I58osz0ywVqHHLjOeLTMRhMNlEZcsX6WeFwVlTRASP3fmMqb8PKOUznSo9lAV5TPSZaZq3sHQXz9dBvUgyp/ShJqh0CKayeeECXXeHD9NFNFeMvVoLyV2TL4Y72EUN2iNonwACEeyZVSZQ0ppGBxzPDOhTBja9CPnmiA08nJcaY8bpuEh/KKsq3D8PbJ1OE95oxigQPk0EE41KHO7mwqnjeCu/RmeGWAChUCBgLso6+0n3JSjTQWb/iml5KG0AGJZvQKKvcJ+DFCgfAAIl6azlaKWtpgRQJ+iNfOqEWlqXkorYLbfpgmQyYaRuqfW3MFFybW7fCK0qGcQ86OgvAmEl7lEMV6hwvROhWz3Va1NMJPzXJqq6Fw7VcTqO6WlhQIPJs1ggALlE/aExNE3hSYiHCQ8lNnUSpPmk8OE/8uAYcZkoo3RrIVT2oZ9Pk0gVj9haBigQPlj3lHPkBXuxmay+Rq5zp2oz/biscsUdle2OrRRlaDz2qIp/eZbtEXz/T0jKomC8i4QWvX2mtoliqLhxFFRYasuU84JE8LZBQ22oEjrl/0ORyb93Weps1v93hLlkJFZfGOAAuVjQPgwDj9ZH9LJILz4Q+jo9yi7jN2YLaK9AnxrEGmwhN/LNugxSplafxSUt4OQjGlEFaILq8GO6cHOIpqZGq5XwQASCUUIJ/A0UzWyHPi5Lk2WSv1NSNoVU3Z6KakxQIHyOZqQx+A5a0Wa0ssTunDqpjDUMLDoVTSkgxnjfgt7mVojB+71pqBprwsMZONlg0X8KChvBiHTKnkvDG9i8T3a6zrQxaUs5rWFqRQ5VAqltqKweApQB/ZzVtNftoqU08iDy3ARvyiYwimD8lYQrkI4M6+6XvpAxhVnVQ7yT9XhftrBs1WKYF9LFYyJUL5N1VltOGlQ3glCynkfnkQhV4VTq+tl2KB7om9LjyqDLM40sNJloiwqmbIvMtwforx3T6j2hU4u53iQ3rFIIdtbIbqaFiZU3y+kknomf0bmXQ9owjlVxlFWinFU6KVBea93NFrN+pq4KQxEA/wtWl7aRKe2+HnXeUqslaSXEprrPa21avS5EgtOB1W65jUKyjs1oSngjYhs0hJN6FgvG82bcH0xLUyoZri+Rt1rXzhoPjdDKZ+XgHN0oFCXBNJlnMAHZnOjvB2E6wjpze5pPQB7Zmw9GKCgfoCP2lVKhHa1D9FIJOZYGT6RX1PPkWyp8aJ8Mxc3yn8RhBAl5yKTUOx5PtYh5oGVNmlTmPsQpD0F2rcG5bWJlxrq8/XScAjRN8BpoAzECh3SrMEsNpRP1oTKcO0iS8EIeE7aFFYZ7VxUp/loaV9kR+7SPEghA1oQ2hZ6itJWukYj+qPMO9gRdgaEaYnBe5QXgzAqw/KwKcwDTThpU1gTTxGW+ePSPmg+A5rQ88souJpT5kMhfzLsBgK1RyyOHJLVCEKUl4LwiQC9m06jU2g4gLOJ0bqCd4EZY9p3No1stA2Proe+W+rkm0IEVKphpu9CxVyCvlHDkZOXDKVojqJ8KggfsTdN2BTmD03W2tZCZKxAShYBRqTMx5m+mbFaPdikSiO1pFlaYYkvystBSF+AwYpOY3uqH32l6Wyjl5CiGs+Ws9grBoMhZKzCQ1bf8yzaSuw6K4wTorzaMeNuBesZEtpCmt3ihE0hwypQZxShHakyaz3huTx8mI1qzAQQbHQ7Qehz2DdW89oKX2S0GYKhrsKAsReAeQzWo3y2d3TUc/qY7ekhoVI/OhH4jiBOI/YxpEsJtRtIXdytJTtIEyzai4lRl4oGsaJ+1TEKyuog5IXqilF3Sm6MFY0Q0UVdRquTbeREfrgpLEdKBcORSBm/FAMwfBqUjCPVhTOJHqKe/VDUmMCN8rc14aRI4QpOjxBYH8JZUfeLVUeuJhElPTiiLYryl0FIJrA95eRzZznRrTVQUP4sCItJOTM40VEQhL8JQgyFoyAIf9ccRc55FAThC6VXavSouh4FBUG4tiac2DaiRB8kCoLwJRgkkzPiah4zwLeDgiBc2Rqd3in0O4cEtQ5hiIIgXFcRpnN406qSZkgjgYIg/C1FKHOsU0wRQ0EQrqgIg0HCcWbhHNshoSAIX2uM1jSjnOczLwcqb0u0SFEQhGthkPjhibyhIiuaFgUbRdqM1fOhoCAIn94QNn5HlxSoJxg6+Qgi0u+Ahky7KAjCNTFY94lbIkMvAVW1HYNhoMAdWz+gIAjXMEa9pNGCl+72TVbeBsZrAIOF7CgIwjUwWIwxY1tf5J8TWkCDUOE4RVYlFAThGiB02cxyOpwKAw0ltA3LwFiiNYqCIHxeOs8YfYQrcgGOiQ6tUBQE4VrieUYn9zQSZFH4ilAQhCtsCSsnMxtxhYLydk1o4hMNpoOioLwfhKZlfIOsnSgovwLCDLoe1XVBkbUTBaUv/w8x8QcsWnMauQAAAABJRU5ErkJggg=='); }

/* =========================================================
   HEADER
   ========================================================= */
.site-header{
  position:fixed; inset:0 0 auto 0; z-index:90;
  background:var(--ivory);
  padding-left:env(safe-area-inset-left, 0px);
  padding-right:env(safe-area-inset-right, 0px);
  border-bottom:1px solid rgba(20,16,14,.12);
  transition:box-shadow .35s var(--ease);
}
.site-header.is-stuck{
  box-shadow:0 2px 14px rgba(20,16,14,.1);
}
.site-header.is-stuck .header-inner{ min-height:var(--header-h-stuck); }
.site-header.is-stuck::before{ opacity:0; }


/* ---------- Utility strip: gift cards ---------- */
.topbar{
  background:var(--paper);
  border-bottom:1px solid rgba(20,16,14,.1);
  overflow:hidden;
  max-height:var(--topbar-h);
  transition:max-height .3s var(--ease), opacity .25s var(--ease);
}
/* Fold it away once the header goes solid, to keep the scrolled header tight. */
.site-header.is-stuck .topbar{ max-height:0; opacity:0; border-bottom-color:transparent; }

.topbar-inner{
  width:var(--shell); margin-inline:auto;
  min-height:calc(var(--topbar-h) - 1px);
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
}
.topbar-tag{
  margin:0;
  font-size:.66rem; font-weight:400;
  letter-spacing:.22em; text-transform:uppercase;
  color:var(--muted);
}
.topbar-links{ display:flex; align-items:center; gap:.7rem; }
.topbar-links a{
  display:inline-flex; align-items:center; gap:.45rem;
  min-height:44px;
  font-size:.75rem; font-weight:500;   /* 12px, the floor for any text */
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--wine); text-decoration:none;
  padding:.25rem 0;
  border-bottom:1px solid transparent;
  transition:color .25s var(--ease), border-color .25s var(--ease);
}
.topbar-links a:hover{ color:var(--red); border-bottom-color:currentColor; }
.topbar-sep{ color:rgba(20,16,14,.3); font-size:.7rem; }
.topbar-icon{
  width:15px; height:15px; flex:none;
  fill:none; stroke:currentColor; stroke-width:1.5;
  stroke-linecap:round; stroke-linejoin:round;
}

.header-inner{
  width:var(--shell); margin-inline:auto;
  min-height:var(--nav-h);
  transition:min-height .3s var(--ease);
  display:flex; align-items:center; gap:1.5rem;
  position:relative;
}

.wordmark{
  display:flex; align-items:center; text-decoration:none;
  margin-right:auto; padding:.6rem 0;
}
.wordmark .logo-lockup{
  width:auto; height:74px;
  transition:height .3s var(--ease);
}
/* Tighten once the header goes solid, so it never crowds the nav. */
.site-header.is-stuck .wordmark .logo-lockup{ height:54px; }

.nav-desktop ul{
  display:flex; gap:1.4rem; list-style:none; margin:0; padding:0;
}
.nav-desktop a{
  font-size:.76rem; font-weight:500;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--ink); text-decoration:none;
  padding-bottom:.25rem;
  border-bottom:1px solid transparent;
  transition:border-color .25s var(--ease), color .25s var(--ease);
}
.nav-desktop a:hover{ border-color:var(--wine); color:var(--wine); }

.header-actions{ display:flex; gap:.6rem; }
.header-actions .btn{ padding:.6rem 1.1rem; font-size:.75rem; }
.header-actions .btn-ghost{ color:var(--ink); border-color:rgba(20,16,14,.4); }
.header-actions .btn-ghost:hover{ background:var(--ink); color:var(--ivory); }

.nav-toggle{
  display:none;
  background:none; border:0; cursor:pointer; padding:.6rem;
}
.nav-toggle-bars{ display:block; width:26px; }
.nav-toggle-bars i{
  display:block; height:2px; background:var(--ink); margin:6px 0;
  transition:transform .3s var(--ease), opacity .3s var(--ease);
}
.nav-toggle[aria-expanded="true"] i:nth-child(1){ transform:translateY(7.5px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] i:nth-child(2){ opacity:0; }
.nav-toggle[aria-expanded="true"] i:nth-child(3){ transform:translateY(-7.5px) rotate(-45deg); }

/* Mobile nav panel */
.nav-mobile{
  position:fixed; inset:0; z-index:85;
  pointer-events:none;
  background:var(--ink);
  padding:calc(var(--header-h) + 2rem) 1.5rem calc(2.5rem + env(safe-area-inset-bottom, 0px));
  overscroll-behavior:contain;
  overflow-y:auto;
  opacity:0;
  transition:opacity .3s var(--ease);
}
.nav-mobile.is-open{ opacity:1; pointer-events:auto; }
.nav-mobile ul{ list-style:none; margin:0 0 2rem; padding:0; }
.nav-mobile li + li{ border-top:1px solid rgba(247,242,231,.12); }
.nav-mobile a{
  display:block; padding:.95rem 0;
  color:var(--ivory); text-decoration:none;
  font-family:var(--f-display); font-weight:500; font-size:1.5rem;
}
.nav-mobile-cta{ display:grid; gap:.7rem; }
.nav-mobile-cta .btn-ghost{ color:var(--ivory); }
.nav-mobile-phone{
  margin-top:2rem; text-align:center;
  font-family:var(--f-display); font-size:1.4rem;
}
.nav-mobile-phone a{ color:var(--brass); text-decoration:none; }

/* iOS Safari ignores overflow:hidden on body — the page keeps scrolling
   behind the overlay and jumps to the top when it closes. Pinning the body
   and restoring the scroll position in JS is the only reliable way. */
body.nav-open{
  position:fixed;
  left:0; right:0;
  width:100%;
  overflow:hidden;
  overscroll-behavior:none;
}


/* ---------- Photo slots ----------
   A faint diagonal fill sits behind every photo. It shows through while a
   photo is missing, so empty slots read as "pending" instead of broken, and
   it's completely hidden once the real image loads on top. Harmless to keep. */
.hero-media, .page-hero-media,
.split-media, .parties-imgs figure, .tile,
.archive-strip figure, .poorboy-fig{
  background-color:var(--ink);
  background-image:repeating-linear-gradient(45deg,
    rgba(200,162,74,.07) 0 10px, transparent 10px 20px);
}

/* =========================================================
   HERO
   ========================================================= */
.hero{
  position:relative;
  min-height:min(84vh, 760px);
  min-height:min(84svh, 760px);   /* svh where supported; vh above as fallback */
  display:flex; flex-direction:column; justify-content:flex-end;
  padding:calc(var(--header-h) + 3rem) 0 0;
  color:#fff;
  overflow:hidden;
}
.hero-media{ position:absolute; inset:0; z-index:0; background:var(--ink); }
.hero-video{
  width:100%; height:100%; object-fit:cover;
  position:absolute; inset:0;
}
.hero-stills{ position:absolute; inset:0; isolation:isolate; }
.hero-still{
  position:absolute; inset:0;
  background-size:cover; background-position:center;
  opacity:0;
  transition:opacity 1.2s var(--ease), transform 7s linear;
  transform:scale(1.06);
}
.hero-still.is-active{ opacity:1; transform:scale(1); z-index:2; }
/* The photo going out stays fully visible underneath the one fading in,
   so nothing behind the slideshow shows through mid-fade. */
.hero-still.is-prev{ opacity:1; transform:scale(1); z-index:1; transition:none; }
/* stills only show if video is absent/failed */
.hero.has-video .hero-stills{ opacity:0; }

.hero-scrim{
  position:absolute; inset:0;
  /* Two layers: one bottom-up for the headline, one left-to-right to protect
     the text column. The food shots are bright, so this has to work harder
     than a scrim over a dim room photo would. */
  background:
    linear-gradient(to top,
      rgba(20,16,14,.9) 0%, rgba(20,16,14,.6) 38%,
      rgba(20,16,14,.28) 72%, rgba(20,16,14,.5) 100%),
    linear-gradient(to right,
      rgba(20,16,14,.55) 0%, rgba(20,16,14,.12) 55%, rgba(20,16,14,0) 100%);
}

.hero-body{
  position:relative; z-index:2;
  width:var(--shell); margin-inline:auto;
  padding-bottom:2.5rem;
}

.hero-rotator{
  position:relative; min-height:clamp(6.5rem, 16vw, 13rem);
  margin:0; font-weight:inherit;
}
.hero-line{
  display:block;
  position:absolute; inset:0;
  margin:0;
  font-family:var(--f-display);
  font-weight:500;
  font-size:clamp(2.4rem, 1.1rem + 5.2vw, 5.4rem);
  line-height:1.02;
  letter-spacing:-.015em;
  opacity:0;
  transform:translateY(18px);
  transition:opacity .8s var(--ease), transform .8s var(--ease);
  pointer-events:none;
}
.hero-line em{
  display:block;
  font-style:italic;
  font-weight:400;
  color:var(--brass);
}
.hero-line.is-active{ opacity:1; transform:none; }

.hero-cta{ display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2.2rem; }

.hero-address{
  position:relative; z-index:2;
  display:flex; align-items:center; justify-content:center; gap:.6rem;
  padding:1rem;
  background:rgba(20,16,14,.85);
  border-top:1px solid rgba(200,162,74,.4);
  color:#fff; text-decoration:none;
  font-size:.76rem; letter-spacing:.18em; text-transform:uppercase;
  transition:background .25s var(--ease);
}
.hero-address:hover{ background:var(--wine); }
.hero-address .pin{ width:16px; fill:var(--brass); flex:none; }

/* =========================================================
   MARQUEE  (signature element)
   ========================================================= */
.marquee{
  background:var(--wine);
  color:var(--ivory);
  border-bottom:1px solid rgba(20,16,14,.12);
  overflow:hidden;
  padding:.9rem 0;
}
.marquee-track{
  display:flex; width:max-content;
  animation:slide 76s linear infinite;   /* twice the items, same speed */
}
.marquee-group{
  display:flex; align-items:center; gap:1.6rem;
  padding-right:1.6rem;
  font-family:var(--f-display);
  font-style:italic; font-weight:500;
  font-size:clamp(1rem, .9rem + .4vw, 1.35rem);
  white-space:nowrap;
}
.marquee-group b{ color:var(--brass); font-size:.7em; }
@keyframes slide{ to{ transform:translateX(-50%); } }

/* =========================================================
   ABOUT
   ========================================================= */
.about{ padding:clamp(4rem, 9vw, 8rem) 0; }
.about-grid{
  display:grid; gap:clamp(2.5rem, 6vw, 5rem);
  grid-template-columns:1.15fr .85fr;
  align-items:start;
}
.about-copy p{ margin:0 0 1.2rem; }
.about-copy .link-arrow{ margin-top:.6rem; }

.about-figures{
  display:grid; gap:1.5rem;
  background:var(--surface);
  border:1px solid rgba(20,16,14,.1);
  border-radius:2px;
  padding:clamp(1.75rem, 3vw, 2.25rem);
}
.stat{ display:grid; gap:.15rem; }
.stat-num{
  font-family:var(--f-display);
  font-size:clamp(2.6rem, 2rem + 2vw, 3.6rem);
  font-weight:700; line-height:1;
  color:var(--wine);
}
.stat-label{
  font-size:.76rem; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase;
  color:var(--muted);
}

/* =========================================================
   SPLIT (catering)
   ========================================================= */
.split{ display:grid; grid-template-columns:1fr 1fr; align-items:stretch; }
.split-dark{ background:var(--paper); color:var(--ink); }
.split-media{ min-height:420px; position:relative; }
.split-media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.split-copy{
  padding:clamp(3rem, 7vw, 6.5rem) clamp(1.5rem, 5vw, 5rem);
  display:flex; flex-direction:column; justify-content:center;
  align-items:flex-start;
}
.split-copy p{ max-width:46ch; margin:0 0 2rem; color:var(--ink-soft); }

/* =========================================================
   PARTIES
   ========================================================= */
.parties{ padding:clamp(4rem, 9vw, 8rem) 0; background:var(--paper); }
.section-head{ max-width:60ch; margin-bottom:clamp(2rem, 5vw, 3.5rem); }
.parties-imgs{
  display:grid; grid-template-columns:1fr 1fr; gap:var(--gap);
}
.parties-imgs figure{ margin:0; overflow:hidden; }
.parties-imgs img{
  width:100%; aspect-ratio:4/3; object-fit:cover;
  transition:transform .8s var(--ease);
}
.parties-imgs figure:hover img{ transform:scale(1.04); }
.parties-cta{ display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2.5rem; }

/* =========================================================
   GALLERY
   ========================================================= */
.gallery{ padding:clamp(4rem, 9vw, 8rem) 0 clamp(3rem, 6vw, 5rem); }
/* Every photo in the set is a 16:9 overhead shot, so the tiles are 16:9 too
   — a mosaic with tall/wide tiles would crop the plates badly. */
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:6px;
  padding:0 clamp(.75rem, 2vw, 1.5rem);
}
.tile{
  position:relative; overflow:hidden;
  border:0; padding:0; cursor:pointer;
  background:var(--ink);
  aspect-ratio:16/9;
}
.tile img{
  width:100%; height:100%; object-fit:cover;
  transition:transform .7s var(--ease), opacity .4s var(--ease);
}
.tile:hover img{ transform:scale(1.06); opacity:.72; }
.tile-cap{
  position:absolute; left:0; right:0; bottom:0;
  padding:1.6rem .9rem .8rem;
  text-align:left;
  font-family:var(--f-display); font-style:italic;
  font-size:.95rem; color:#fff;
  background:linear-gradient(to top, rgba(20,16,14,.85), transparent);
  opacity:0; transform:translateY(8px);
  transition:opacity .35s var(--ease), transform .35s var(--ease);
}
.tile:hover .tile-cap, .tile:focus-visible .tile-cap{ opacity:1; transform:none; }
.gallery-foot{ margin-top:2.5rem; }

/* =========================================================
   ORDER
   ========================================================= */
.order{
  background:var(--wine); color:#fff;
  padding:clamp(4rem, 9vw, 7rem) 0;
  text-align:center;
}
.order-inner{ display:grid; justify-items:center; }
.order .lede{ color:rgba(255,255,255,.85); margin:0 0 2rem; }

/* =========================================================
   VISIT
   ========================================================= */
.visit{ background:var(--ivory); color:var(--ink); padding:clamp(4rem, 9vw, 7rem) 0 0; }
.visit .eyebrow{ color:var(--wine); }
.visit-grid{
  display:grid; grid-template-columns:repeat(3, 1fr);
  gap:clamp(2rem, 5vw, 4rem);
  padding-bottom:clamp(3rem, 6vw, 5rem);
}
.visit-card{
  background:var(--surface);
  border:1px solid rgba(20,16,14,.1);
  border-radius:2px;
  padding:clamp(1.5rem, 3vw, 2rem);
}
.visit-card address{ font-style:normal; margin:0 0 1.5rem; color:var(--ink-soft); }
.visit-h{
  font-family:var(--f-display); font-weight:600;
  font-size:1.9rem; line-height:1.1; margin:0 0 1rem;
}
.visit .link-arrow{ color:var(--wine); }
.visit .link-arrow:hover{ color:var(--red); }

.hours{ list-style:none; margin:0 0 1.25rem; padding:0; }
.hours li{
  display:flex; justify-content:space-between; gap:1rem;
  padding:.6rem 0;
  border-bottom:1px solid rgba(20,16,14,.12);
  font-size:.95rem;
}
.hours li span:first-child{ color:var(--muted); }
.hours .closed{ color:var(--muted); }
.hours-note{
  font-size:.76rem; letter-spacing:.16em; text-transform:uppercase;
  margin:0; color:var(--wine);
}
.hours-note.is-open{ color:#2E7D42; }

.contact-line{ margin:0 0 .25rem; font-size:1.15rem; }
.contact-line a{
  display:inline-block; padding:.45rem 0; text-decoration:none; border-bottom:1px solid rgba(110,18,22,.4); }
.contact-line a:hover{ color:var(--wine); }
.socials{ display:flex; gap:.6rem; margin-top:1.5rem; }
.socials a{
  width:44px; height:44px; display:grid; place-items:center;
  border:1px solid rgba(20,16,14,.25); border-radius:50%;
  transition:background .25s var(--ease), border-color .25s var(--ease);
}
.socials svg{ width:19px; fill:none; stroke:var(--ink); stroke-width:1.4; }
.socials a:hover{ background:var(--wine); border-color:var(--wine); }
.socials a:hover svg{ stroke:var(--ivory); fill:var(--ivory); }
.socials a:hover svg{ stroke:var(--ink); fill:var(--ink); }

.map-strip{ height:clamp(280px, 34vw, 420px); }
.map-strip iframe{ width:100%; height:100%; border:0; display:block; }

/* =========================================================
   FOOTER
   ========================================================= */
.site-footer{
  background:var(--ink); color:rgba(247,242,231,.72);
  padding:clamp(3rem, 7vw, 5rem) 0 clamp(3rem, 7vw, 5rem);
}
/* Only phones show the fixed bottom bar, so only phones need the clearance. */
@media (max-width: 860px){
  .site-footer{ padding-bottom:calc(6rem + env(safe-area-inset-bottom, 0px)); }
}
.footer-grid{
  display:grid; grid-template-columns:1.4fr repeat(3, 1fr);
  gap:2.5rem;
  padding-bottom:2.5rem;
  border-bottom:1px solid rgba(247,242,231,.12);
}
.footer-logo{ width:100%; max-width:300px; }
.footer-tag{
  margin:1rem 0 0; font-size:.72rem;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--brass);
}
.footer-col .footer-head{
  margin:0 0 1rem;
  font-size:.7rem; font-weight:500;
  letter-spacing:.24em; text-transform:uppercase;
  color:var(--brass);
}
.footer-col ul{ list-style:none; margin:0; padding:0; display:grid; gap:.6rem; }
.footer-col a{
  text-decoration:none; font-size:.95rem;
  display:inline-block; padding:.6rem 0;   /* ~44px tall, thumb-sized */
}
.footer-col a:hover{ color:var(--ivory); }
/* Baseline, not stretch: the phone and credit links carry tap-target
   padding that pushes their text down, and the copyright has no link. */
.footer-base{
  display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:.5rem;
  padding-top:1.5rem; font-size:.8rem;
}
.footer-base p{ margin:0; }

/* =========================================================
   STICKY ACTION BAR (mobile)
   ========================================================= */
.action-bar{
  position:fixed; inset:auto 0 0 0; z-index:80;
  display:none; grid-template-columns:repeat(3, 1fr);
  background:var(--ink);
  border-top:1px solid rgba(200,162,74,.3);
  /* Clears the iPhone home indicator. Without this the buttons sit
     underneath it and the bottom of each one can't be tapped. */
  padding-bottom:env(safe-area-inset-bottom, 0px);
}
.action-bar a{
  min-height:52px;
  display:flex; align-items:center; justify-content:center;
  padding:.9rem .5rem; text-align:center; text-decoration:none;
  color:var(--ivory);
  font-size:.74rem; letter-spacing:.18em; text-transform:uppercase;
}
.action-bar a.primary{ background:var(--red); color:#fff; }

/* =========================================================
   LIGHTBOX
   ========================================================= */
.lightbox{
  position:fixed; inset:0; z-index:120;
  pointer-events:none;
  overscroll-behavior:contain;
  background:rgba(12,9,8,.96);
  display:grid; grid-template-columns:auto 1fr auto; align-items:center;
  gap:1rem; padding:clamp(1rem, 4vw, 3rem);
  opacity:0; transition:opacity .3s var(--ease);
}
.lightbox.is-open{ opacity:1; pointer-events:auto; }
.lb-figure{ margin:0; display:grid; justify-items:center; gap:1rem; min-width:0; }
.lb-figure img{
  max-width:100%; max-height:78svh; object-fit:contain;
}
.lb-figure figcaption{
  font-family:var(--f-display); font-style:italic; font-weight:500;
  color:var(--ivory); font-size:1.05rem;
}
.lb-close{
  position:absolute; top:1rem; right:1.25rem;
  background:none; border:0; color:var(--ivory);
  font-size:2.4rem; line-height:1; cursor:pointer;
}
.lb-prev, .lb-next{
  width:48px; height:48px; flex:none;
  display:grid; place-items:center;
  background:none; border:1px solid rgba(247,242,231,.3);
  border-radius:50%; cursor:pointer;
}
.lb-prev svg, .lb-next svg{ width:18px; fill:none; stroke:var(--ivory); stroke-width:1.6; }
.lb-prev:hover, .lb-next:hover{ background:rgba(247,242,231,.12); }

/* =========================================================
   REVEAL ON SCROLL
   ========================================================= */
.reveal{ opacity:0; transform:translateY(24px); }
.reveal.is-in{
  opacity:1; transform:none;
  transition:opacity .8s var(--ease), transform .8s var(--ease);
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 1080px){
  .nav-desktop{ display:none; }
  .header-actions{ display:none; }
  .nav-toggle{ display:block; }
  .gallery-grid{ grid-template-columns:repeat(2, 1fr); }
}

@media (max-width: 860px){
  .hero{ min-height:min(72vh, 620px); min-height:min(72svh, 620px); }
  .about-grid{ grid-template-columns:1fr; }
  .about-figures{
    border-left:0; padding-left:0;
    border-top:1px solid rgba(20,16,14,.15); padding-top:2rem;
    grid-template-columns:repeat(3, 1fr);
  }
  .split{ grid-template-columns:1fr; }
  .split-media{ min-height:300px; }
  .visit-grid{ grid-template-columns:1fr; }
  .news-inner{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr 1fr; }
  .action-bar{ display:grid; }
  body{ padding-bottom:0; }
}

@media (max-width: 620px){
  :root{ --topbar-h:44px; --nav-h:62px; --header-h-stuck:60px; }
  .topbar-inner{ justify-content:center; }
  .topbar-tag{ display:none; }
  .topbar-links a{ font-size:.62rem; letter-spacing:.12em; }
  .wordmark .logo-lockup{ height:46px; }
  .site-header.is-stuck .wordmark .logo-lockup{ height:40px; }

  /* The hero was taking the whole screen on a phone, so the page looked like
     one big dark photo before you scrolled. */
  .hero{ min-height:auto; padding-bottom:0; }
  .hero-body{ padding-bottom:2.25rem; }

  /* On a narrow screen the headline sits right on top of the food, so the
     scrim has to be heavier here than it is on a wide one. */
  .hero-scrim{
    background:linear-gradient(to top,
      rgba(20,16,14,.94) 0%, rgba(20,16,14,.86) 45%,
      rgba(20,16,14,.72) 80%, rgba(20,16,14,.8) 100%);
  }
  .hero-rotator{ min-height:8.5rem; }
  .hero-line{ font-size:clamp(2.1rem, 9vw, 2.9rem); }
  .hero-cta{ gap:.6rem; margin-top:1.5rem; }
  .hero-cta .btn{ flex:1 1 100%; }

  /* Two across reads better than one giant tile per screen. */
  .gallery-grid{ grid-template-columns:repeat(2, 1fr); gap:4px; }
  .tile-cap{ font-size:.72rem; padding:1rem .5rem .5rem; }

  /* Bigger tap targets and a touch more room to breathe. */
  .btn{ padding:.95rem 1.4rem; }
  .btn-lg{ padding:1.05rem 1.6rem; font-size:.78rem; }
  .menu-item{ padding:1.05rem 0; }
  .menu-tab{ min-height:46px; padding:.9rem .8rem .75rem; font-size:.76rem; }
  .nav-mobile a{ padding:1.05rem 0; }
  .parties-imgs{ grid-template-columns:1fr; }
  .about-figures{ grid-template-columns:1fr; gap:1.25rem; }
  .review p{ max-width:none; }
  .lightbox{ grid-template-columns:1fr; grid-template-areas:"fig"; }
  .lb-prev{ position:absolute; left:.75rem; top:50%; }
  .lb-next{ position:absolute; right:.75rem; top:50%; }
  .lb-figure{ grid-area:fig; }
  .footer-grid{ grid-template-columns:1fr; gap:2rem; }
  .hero-address{ font-size:.66rem; letter-spacing:.12em; }
}


/* =========================================================
   MOTION PREFERENCES
   ========================================================= */
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *, *::before, *::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
  .reveal{ opacity:1; transform:none; }
  .marquee-track{ animation:none; }
}

/* =========================================================
   ==========  STORY PAGE  (story.html)  ==================
   ========================================================= */

/* ---------- Page hero ---------- */
.page-hero{
  position:relative;
  min-height:min(72vh, 620px);
  min-height:min(72svh, 620px);
  display:flex; align-items:flex-end;
  padding:calc(var(--header-h) + 5rem) 0 clamp(3rem, 7vw, 5.5rem);
  color:#fff;
  overflow:hidden;
}
.page-hero-media{ position:absolute; inset:0; background:var(--ink); }
.page-hero-media img{
  width:100%; height:100%; object-fit:cover;
  transform:scale(1.02);
}
.page-hero-media .hero-scrim{ background:
  linear-gradient(to top, rgba(20,16,14,.94) 0%, rgba(20,16,14,.7) 45%, rgba(20,16,14,.6) 100%),
  linear-gradient(to right, rgba(20,16,14,.7) 0%, rgba(20,16,14,.2) 60%, rgba(20,16,14,0) 100%); }
.page-hero-body{ position:relative; z-index:2; }
.page-hero-h{
  font-family:var(--f-display);
  font-weight:500;
  font-size:clamp(2.2rem, 1.1rem + 4.4vw, 4.8rem);
  line-height:1.04;
  letter-spacing:-.015em;
  margin:0 0 1.25rem;
}
.page-hero-h em{
  display:block; font-style:italic; color:var(--brass);
}
.page-hero-sub{
  max-width:48ch; margin:0;
  font-size:1.1em; color:rgba(255,255,255,.85);
}

/* ---------- The name (signature block) ---------- */
.name-story{ background:var(--paper); color:var(--ink); padding:clamp(3.5rem, 8vw, 7rem) 0; }
.name-story .wrap{
  display:grid; grid-template-columns:minmax(240px, .8fr) 1.2fr;
  gap:clamp(2.5rem, 6vw, 5rem);
  align-items:start;
}

.name-plate{
  background:var(--surface);
  border:1px solid rgba(110,18,22,.3);
  padding:clamp(1.75rem, 4vw, 2.75rem) 1.5rem;
  text-align:center;
  position:sticky; top:calc(var(--header-h-stuck) + 2rem);
}
.name-mark{ width:100%; max-width:180px; margin:0 auto; }
.name-expand{
  margin:1.5rem 0 0;
  font-size:.72rem; font-weight:500;
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--wine);
}
.name-tag{
  margin:1.75rem 0 0; padding-top:1.25rem;
  border-top:1px solid rgba(20,16,14,.15);
  font-size:.68rem; letter-spacing:.28em; text-transform:uppercase;
  color:var(--muted);
}

.name-copy p{ color:var(--ink-soft); }
.name-copy .lede{ color:var(--ink); }

.legends{
  display:grid; grid-template-columns:1fr 1fr;
  gap:1.5rem; margin:2.5rem 0 1.5rem;
}
.legend{
  border-top:2px solid var(--wine);
  padding-top:1.1rem;
}
.legend h3{
  margin:0 0 .6rem;
  font-size:.72rem; font-weight:500;
  letter-spacing:.22em; text-transform:uppercase;
  color:var(--wine);
}
.legend p{ margin:0; font-size:.98rem; }
.legend em{ color:var(--ink); font-style:italic; }

.footnote{
  font-family:var(--f-display); font-style:italic; font-weight:600;
  font-size:1.15rem;
  color:var(--wine) !important;
}

/* ---------- Timeline ---------- */
.timeline-section{ padding:clamp(4rem, 9vw, 8rem) 0; }
.timeline{
  list-style:none; margin:0; padding:0;
  border-top:1px solid rgba(20,16,14,.15);
}
.tl-item{
  display:grid; grid-template-columns:minmax(140px, 200px) 1fr;
  gap:clamp(1.5rem, 5vw, 4rem);
  padding:clamp(1.75rem, 4vw, 2.75rem) 0;
  border-bottom:1px solid rgba(20,16,14,.15);
  position:relative;
}
.tl-year{
  font-family:var(--f-display);
  font-weight:700;
  font-size:clamp(1.8rem, 1.3rem + 1.6vw, 2.75rem);
  line-height:1;
  color:var(--wine);
  position:relative;
}
.tl-year::before{
  content:""; position:absolute; left:-1.15rem; top:.55em;
  width:7px; height:7px; border-radius:50%;
  background:var(--brass);
}
.tl-body h3{
  margin:0 0 .6rem;
  font-family:var(--f-display); font-weight:600; font-style:italic;
  font-size:1.4rem; line-height:1.2;
}
.tl-body p{ margin:0; max-width:62ch; color:var(--ink-soft); }
.tl-now .tl-year{ color:var(--red); }

/* ---------- Archive strip ---------- */
.archive-strip{
  display:grid; grid-template-columns:repeat(3, 1fr); gap:6px;
  padding:0 clamp(.75rem, 2vw, 1.5rem) clamp(3rem, 7vw, 5rem);
}
.archive-strip figure{ margin:0; overflow:hidden; background:var(--ink); }
.archive-strip img{
  width:100%; aspect-ratio:3/2; object-fit:cover;
  filter:sepia(.18) saturate(.95);
  transition:filter .6s var(--ease), transform .8s var(--ease);
}
.archive-strip figure:hover img{ filter:none; transform:scale(1.03); }

/* ---------- Poor Boy ---------- */
.poorboy{ background:var(--paper); padding:clamp(4rem, 9vw, 8rem) 0; }
.poorboy-inner{
  display:grid; grid-template-columns:1.05fr .95fr;
  gap:clamp(2.5rem, 6vw, 5rem); align-items:center;
}
.poorboy-copy p{ margin:0 0 1.1rem; }
/* No photo: one readable column instead of the two-up grid. */
.poorboy-inner--text{ grid-template-columns:1fr; }
.poorboy-inner--text{ justify-items:center; }
.poorboy-inner--text .poorboy-copy{ max-width:44rem; text-align:center; margin-inline:auto; }
.poorboy-fig{ margin:0; }
.poorboy-fig img{ width:100%; aspect-ratio:4/5; object-fit:cover; }
.poorboy-fig figcaption{
  margin-top:.9rem;
  font-size:.78rem; letter-spacing:.16em; text-transform:uppercase;
  color:var(--muted);
}

/* ---------- Family ---------- */
.family{ padding:clamp(4rem, 9vw, 8rem) 0; }
/* Same shape as the homepage about section: copy left, a white panel right.
   Two names in boxes of their own read as placeholders. */
.family-inner{
  display:grid; gap:clamp(2.5rem, 6vw, 5rem);
  grid-template-columns:1.15fr .85fr;
  align-items:center;
}
.family-copy p{ margin:0 0 1.2rem; }
.family-copy p:last-child{ margin-bottom:0; }
.family-people{
  list-style:none; margin:0;
  display:grid; gap:1.5rem;
  background:var(--surface);
  border:1px solid rgba(20,16,14,.1);
  border-radius:2px;
  padding:clamp(1.75rem, 3vw, 2.25rem);
}
.family-people li{ display:grid; gap:.4rem; }
.family-people li + li{ padding-top:1.5rem; border-top:1px solid rgba(20,16,14,.12); }
.fam-name{
  font-family:var(--f-display); font-weight:700;
  font-size:clamp(2rem, 1.6rem + 1.4vw, 2.8rem); line-height:1;
  color:var(--wine);
}
.fam-role{
  font-size:.76rem; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase;
  color:var(--muted);
}

/* ---------- Banquet ---------- */
.banquet{ background:var(--wine); color:#fff; padding:clamp(4rem, 9vw, 7rem) 0; }
.banquet .lede{ color:rgba(255,255,255,.85); }
.banquet-inner{ max-width:60ch; }
.banquet-cta{ display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2rem; }

/* ---------- Closing ---------- */
.story-close{ padding:clamp(4rem, 9vw, 8rem) 0; text-align:center; }
.story-close-inner{ display:grid; justify-items:center; }
.story-close-quote{
  font-family:var(--f-display); font-weight:500;
  font-size:clamp(1.4rem, 1rem + 1.8vw, 2.5rem);
  line-height:1.25;
  max-width:26ch;
  margin:0 0 2.5rem;
}
.story-close-cta{ display:flex; flex-wrap:wrap; gap:.8rem; justify-content:center; }

/* ---------- Story page responsive ---------- */
@media (max-width: 940px){
  .name-story .wrap{ grid-template-columns:1fr; }
  .name-plate{ position:static; max-width:340px; }
  .poorboy-inner{ grid-template-columns:1fr; }
  .poorboy-fig img{ aspect-ratio:4/3; }
  .family-inner{ grid-template-columns:1fr; }
  .family-people{ grid-template-columns:1fr 1fr; }
  .family-people li + li{
    padding-top:0; border-top:0;
    padding-left:1.5rem; border-left:1px solid rgba(20,16,14,.12);
  }
}

@media (max-width: 620px){
  .legends{ grid-template-columns:1fr; gap:1.75rem; }
  .tl-item{ grid-template-columns:1fr; gap:.75rem; padding-left:1.15rem; }
  .tl-year::before{ left:-1.15rem; top:.45em; }
  .archive-strip{ grid-template-columns:1fr; }
  .archive-strip img{ aspect-ratio:16/10; }
  .family-people{ grid-template-columns:1fr; }
  .family-people li + li{
    padding-left:0; border-left:0;
    padding-top:1.5rem; border-top:1px solid rgba(20,16,14,.12);
  }
}

/* =========================================================
   ==========  MENU PAGE  (menu.html)  ====================
   ========================================================= */

.menu-head{
  background:var(--paper); color:var(--ink);
  padding:calc(var(--header-h) + clamp(3rem, 7vw, 5rem)) 0 clamp(2.5rem, 5vw, 3.5rem);
}
.menu-title{
  font-family:var(--f-display); font-weight:400;
  font-size:clamp(2.2rem, 1.1rem + 4.4vw, 4.4rem);
  line-height:1.05; letter-spacing:-.015em;
  margin:0 0 1rem;
}
.menu-intro{ max-width:52ch; margin:0; color:var(--ink-soft); }

/* ---------- Sticky tab bar ---------- */
.menu-tabs{
  position:sticky; top:var(--header-h-stuck); z-index:70;
  background:var(--ivory);
  border-top:1px solid rgba(20,16,14,.12);
  border-bottom:1px solid rgba(20,16,14,.12);
  box-shadow:0 2px 10px rgba(20,16,14,.06);
}
.menu-tabs-inner{
  display:flex; align-items:center; gap:1.5rem;
  min-height:64px;
}
.menu-tablist{
  display:flex; gap:.4rem; flex:1 1 auto;
  overflow-x:auto; scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  scroll-snap-type:x proximity;
  /* The list runs off the edge on a phone. This fades the right-hand end so
     it reads as "there's more", instead of looking like a cut-off tab. */
  -webkit-mask-image:linear-gradient(to right, #000 calc(100% - 28px), transparent 100%);
  mask-image:linear-gradient(to right, #000 calc(100% - 28px), transparent 100%);
}
.menu-tab{ scroll-snap-align:start; }
.menu-tablist::-webkit-scrollbar{ display:none; }
.menu-tab{
  flex:none;
  background:none; border:0; cursor:pointer;
  padding:1.15rem .9rem 1rem;
  color:var(--muted);
  font-family:var(--f-body);
  font-size:.78rem; font-weight:500;
  letter-spacing:.2em; text-transform:uppercase;
  white-space:nowrap;
  border-bottom:2px solid transparent;
  transition:color .25s var(--ease), border-color .25s var(--ease);
}
.menu-tab:hover{ color:var(--ink); }
.menu-tab[aria-selected="true"]{ color:var(--wine); border-bottom-color:var(--wine); }

.menu-search{ position:relative; flex:0 0 220px; }
.menu-search input{
  width:100%;
  font-family:var(--f-body);
  /* Must stay at 16px or larger: iOS zooms the page when a smaller
     input receives focus, and never zooms back out. */
  font-size:16px;
  padding:.6rem 2rem .6rem .85rem;
  color:var(--ink);
  background:#fff;
  border:1px solid rgba(20,16,14,.25);
  border-radius:1px;
}
.menu-search input::placeholder{ color:var(--muted); }
.menu-search input:focus{ border-color:var(--wine); }
.menu-search input::-webkit-search-cancel-button{ display:none; }
.menu-search-clear{
  position:absolute; right:0; top:50%; transform:translateY(-50%);
  background:none; border:0; cursor:pointer;
  color:var(--wine); font-size:1.4rem; line-height:1;
  /* A thumb-sized target; the glyph stays small. */
  min-width:44px; min-height:44px; padding:0;
}

/* ---------- Body ---------- */
.menu-body{ padding:clamp(2.5rem, 6vw, 4rem) 0 clamp(4rem, 8vw, 6rem); }
.menu-note{
  max-width:70ch; margin:0 0 1.5rem;
  font-family:var(--f-display); font-style:italic; font-weight:600;
  font-size:1.15rem; color:var(--wine);
}
.menu-filter-status{
  margin:0 0 1.5rem; min-height:1.2em;
  font-size:.76rem; letter-spacing:.18em; text-transform:uppercase;
  color:var(--muted);
}

.menu-layout{
  display:grid; grid-template-columns:190px 1fr;
  gap:clamp(2rem, 5vw, 4rem); align-items:start;
}

/* Jump links */
.menu-jump{
  position:sticky; top:calc(var(--header-h-stuck) + 64px + 1.5rem);
  display:grid; gap:.1rem;
  border-left:1px solid rgba(20,16,14,.15);
}
/* Anything tapped with a finger is 44px tall. On a mouse the buttons keep
   their lighter 40px; WCAG 2.5.8's 24px floor still holds there. */
@media (hover: none), (max-width: 1024px){
  .btn, .menu-tab{ min-height:44px; }
}
/* The section list only shows above 1024px, which includes a landscape iPad. */
@media (hover: none){
  .menu-jump a{ min-height:44px; display:flex; align-items:center; }
}
.menu-jump a{
  padding:.4rem 0 .4rem 1rem;
  margin-left:-1px;
  border-left:2px solid transparent;
  font-size:.75rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--muted); text-decoration:none;
  transition:color .25s var(--ease), border-color .25s var(--ease);
}
.menu-jump a:hover{ color:var(--ink); }
.menu-jump a.is-current{ color:var(--wine); border-left-color:var(--wine); }

/* Sections */
.menu-section{ margin-bottom:clamp(2.5rem, 5vw, 4rem); scroll-margin-top:calc(var(--header-h-stuck) + 90px); }
.menu-section-h{
  font-family:var(--f-display); font-weight:700;
  margin-bottom:1rem;
  font-size:clamp(1.5rem, 1.2rem + 1.2vw, 2.1rem);
  line-height:1.1; margin:0 0 .5rem;
  padding-bottom:.75rem;
  border-bottom:2px solid var(--ink);
}
.menu-section-note{
  margin:.9rem 0 1.5rem; max-width:70ch;
  font-size:.9rem; color:var(--muted);
}

.menu-items{
  list-style:none; margin:0; padding:0 clamp(1rem, 2.5vw, 1.75rem);
  background:var(--surface);
  border:1px solid rgba(20,16,14,.1);
  border-radius:2px;
}
.menu-item{
  padding:1rem 0;
  border-bottom:1px solid rgba(20,16,14,.1);
}
.menu-item:last-child{ border-bottom:0; }
.menu-item-line{
  display:flex; align-items:baseline; gap:.5rem;
}
.menu-item-name{
  font-family:var(--f-body);
  font-weight:600;
  font-size:1.05rem; line-height:1.3;
  letter-spacing:.005em;
  flex:0 1 auto;
}
/* The dotted leader that runs to the price, like a printed menu */
.menu-item-dots{
  flex:1 1 auto;
  border-bottom:1px dotted rgba(20,16,14,.35);
  transform:translateY(-.25em);
  min-width:1.5rem;
}
.menu-item-price{
  flex:none;
  font-size:.95rem; font-variant-numeric:tabular-nums;
  color:var(--wine);
  white-space:nowrap;
}
.menu-item-price .price-label{
  font-size:.68rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--muted); margin-right:.35rem;
}
.menu-item-price span + span{ margin-left:1rem; }
.menu-item-suffix{
  font-size:.7rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--muted); margin-left:.35rem;
}
.menu-item-desc{
  margin:.4rem 0 0; max-width:64ch;
  font-size:.94rem; line-height:1.55; color:var(--ink-soft);
}
.menu-tag{
  display:inline-block; flex:none;
  padding:.2rem .5rem;
  border:1px solid var(--brass);
  color:var(--brass);
  font-size:.6rem; font-weight:500;
  letter-spacing:.16em; text-transform:uppercase;
  white-space:nowrap;
}
.menu-item mark{
  background:rgba(200,162,74,.35);
  color:inherit;
}

.menu-empty{
  padding:3rem 0; text-align:center;
  font-family:var(--f-display); font-style:italic; font-weight:500; font-size:1.3rem;
  color:var(--muted);
}
/* Shown under it when the search matches on a different menu. */
.menu-elsewhere{
  display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem;
  margin:-1.5rem 0 3rem;
}
.menu-legal{
  margin:2.5rem 0 0; padding-top:1.5rem;
  border-top:1px solid rgba(20,16,14,.15);
  font-size:.8rem; color:var(--muted); max-width:70ch;
}
.menu-cta{ display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2.5rem; }

/* ---------- Menu page responsive ---------- */
@media (max-width: 900px){
  .menu-layout{ grid-template-columns:1fr; }
  .menu-jump{ display:none; }
  .menu-tabs-inner{ flex-wrap:wrap; gap:.5rem 1rem; padding-top:.6rem; padding-bottom:.75rem; }
  .menu-search{ flex:1 1 100%; }
  .menu-tab{ padding:.75rem .7rem .6rem; }
  .menu-section{ scroll-margin-top:calc(var(--header-h-stuck) + 130px); }
}

@media (max-width: 620px){
  .menu-item-line{ flex-wrap:wrap; }
  .menu-item-dots{ display:none; }
  .menu-item-name{ flex:1 1 100%; }
  .menu-item-price{ margin-top:.15rem; }
  .menu-tag{ margin-top:.15rem; }
}

/* The narrowest phones still in use (iPhone SE, 320px) can't fit three
   tracked-out links plus an icon. Drop the icon and the tracking there. */
@media (max-width: 360px){
  .topbar-icon{ display:none; }
  .topbar-links{ gap:.35rem; }
  .topbar-links a{ font-size:.6rem; letter-spacing:.02em; }
  .topbar-sep{ font-size:.58rem; }
}

/* ---------- Minimum legible text on handheld screens ----------
   A handful of small uppercase labels were dipping under 11px, which is
   uncomfortable on anything held at arm's length. Floored here for phones
   and tablets; the desktop sizes above were later brought up to 12px too. */
@media (max-width: 900px){
  /* Three links plus separators in 390px: they have to stay on one line,
     so tighten the tracking rather than let them wrap to two rows. */
  .topbar-links{ gap:.45rem; }
  .topbar-links a{
    font-size:.63rem; letter-spacing:.06em;
    min-height:44px; white-space:nowrap;
  }
  .topbar-icon{ width:13px; height:13px; }
  .topbar-sep{ font-size:.62rem; }
  .menu-tag{ font-size:.72rem; padding:.22rem .5rem; }
  .menu-item-price .price-label,
  .menu-item-suffix{ font-size:.72rem; }
  .name-tag,
  .fam-role,
  .review-src,
  .footer-tag{ font-size:.72rem; }
  .menu-item-desc{ font-size:.95rem; }
  .stat-label{ font-size:.76rem; }
  .hero-address{ font-size:.7rem; letter-spacing:.1em; }
}

/* =========================================================
   ==========  MODAL FORMS  ===============================
   Party enquiries and job applications. The markup is built
   by script.js, so these styles have no matching HTML.
   ========================================================= */

.modal{
  position:fixed; inset:0; z-index:130;
  display:grid; place-items:center;
  padding:clamp(1rem, 4vw, 2.5rem);
  padding-bottom:calc(clamp(1rem, 4vw, 2.5rem) + env(safe-area-inset-bottom, 0px));
  overscroll-behavior:contain;
  background:rgba(20,16,14,.72);
  opacity:0; pointer-events:none;
  transition:opacity .25s var(--ease);
  overflow-y:auto;
}
.modal.is-open{ opacity:1; pointer-events:auto; }

.modal-panel{
  position:relative;
  width:min(560px, 100%);
  max-height:calc(100vh - 3rem);
  max-height:calc(100svh - 3rem);
  overflow-y:auto;
  background:var(--surface);
  border:1px solid rgba(20,16,14,.15);
  border-radius:3px;
  padding:clamp(1.75rem, 4vw, 2.75rem);
  box-shadow:0 24px 60px rgba(20,16,14,.35);
  transform:translateY(12px);
  transition:transform .25s var(--ease);
}
.modal.is-open .modal-panel{ transform:none; }

.modal-close{
  position:absolute; top:.5rem; right:.75rem;
  background:none; border:0; cursor:pointer;
  font-size:2rem; line-height:1; color:var(--muted);
  padding:.25rem .5rem;
}
.modal-close:hover{ color:var(--ink); }

.modal-title{
  font-family:var(--f-display); font-weight:700;
  font-size:clamp(1.6rem, 1.3rem + 1.2vw, 2.1rem);
  line-height:1.1; margin:0 0 .6rem;
}
.modal-intro{ margin:0 0 1.75rem; color:var(--ink-soft); font-size:.98rem; }

.field{ margin-bottom:1.1rem; }
.field label{
  display:block; margin-bottom:.35rem;
  font-size:.76rem; font-weight:700;   /* 12px: the floor for small text */
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--ink);
}
.field label span{ color:var(--red); }
.field input,
.field select,
.field textarea{
  width:100%;
  font-family:var(--f-body); font-size:1rem;
  padding:.75rem .85rem;
  color:var(--ink);
  background:#fff;
  border:1px solid rgba(20,16,14,.3);
  border-radius:2px;
}
.field textarea{ resize:vertical; min-height:5.5rem; }
.field input:focus,
.field select:focus,
.field textarea:focus{ border-color:var(--wine); outline-offset:1px; }
.field .is-invalid{ border-color:var(--red); background:#FFF7F8; }
.field-error{
  margin:.3rem 0 0; min-height:1em;
  font-size:.82rem; color:var(--wine);
}

.form-status{
  margin:0 0 1rem; min-height:1.2em;
  font-size:.82rem; letter-spacing:.1em; text-transform:uppercase;
  color:var(--muted);
}
.form-status.is-error{ color:var(--wine); }

.modal-actions{ display:flex; flex-wrap:wrap; gap:.6rem; }
.modal-actions .btn{ flex:1 1 auto; }

@media (max-width: 620px){
  .modal{ place-items:start center; padding:.75rem; }
  .modal-panel{ max-height:none; padding:1.5rem 1.25rem 1.75rem; }
  .modal-actions .btn{ flex:1 1 100%; }
}

/* File input + field hints inside the modal forms */
.field-file{
  width:100%;
  font-family:var(--f-body); font-size:.92rem;
  padding:.6rem;
  background:#fff;
  border:1px dashed rgba(20,16,14,.35);
  border-radius:2px;
  cursor:pointer;
}
.field-file::file-selector-button{
  font-family:var(--f-body); font-size:.72rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase;
  margin-right:.75rem; padding:.5rem .9rem;
  color:var(--ivory); background:var(--ink);
  border:0; border-radius:2px; cursor:pointer;
}
.field-file::file-selector-button:hover{ background:var(--wine); }
.field-hint{
  margin:.3rem 0 0;
  font-size:.82rem; color:var(--muted);
}

/* =========================================================
   PROSE PAGES (accessibility statement, and anything similar)
   ========================================================= */
.prose{
  padding:clamp(2.5rem, 6vw, 4rem) 0 clamp(3rem, 7vw, 5rem);
  max-width:none;
}
.prose > *{ max-width:68ch; }
.prose h2{
  font-family:var(--f-display); font-weight:700;
  font-size:clamp(1.4rem, 1.2rem + 1vw, 1.9rem);
  line-height:1.15;
  margin:2.5rem 0 .75rem;
  padding-bottom:.6rem;
  border-bottom:1px solid rgba(20,16,14,.15);
}
.prose h2:first-of-type{ margin-top:0; }
.prose p{ margin:0 0 1.1rem; color:var(--ink-soft); }
.prose ul{ margin:0 0 1.4rem; padding-left:1.25rem; }
.prose li{ margin-bottom:.65rem; color:var(--ink-soft); }
.prose strong{ color:var(--ink); font-weight:700; }
.prose a{ color:var(--wine); text-underline-offset:.2em; }
.prose a:hover{ color:var(--red); }
.contact-list{ list-style:none; padding-left:0; }
.prose-meta{
  margin-top:2rem; padding-top:1.25rem;
  border-top:1px solid rgba(20,16,14,.15);
  font-size:.85rem; color:var(--muted);
}

/* ---------- Menu item photos (added from the admin portal) ----------
   Items without a photo are untouched, so a half-photographed menu
   still reads as a menu rather than a gap-toothed grid. */
.menu-item.has-photo{
  display:flex; align-items:flex-start; gap:.9rem;
}
.menu-item-photo{
  width:92px; height:62px; flex:none;
  object-fit:cover; border-radius:2px;
  background:rgba(20,16,14,.06);
}
/* The thumbnail is a button so it can be reached and opened by keyboard. */
.menu-item-photo-btn{
  flex:none; padding:0; border:0; background:none;
  cursor:zoom-in; border-radius:2px; line-height:0;
}
.menu-item-photo-btn:focus-visible{ outline:2px solid var(--brass); outline-offset:2px; }
.menu-item-body{ flex:1 1 auto; min-width:0; }

@media (max-width: 620px){
  .menu-item-photo{ width:74px; height:52px; }
  .menu-item.has-photo{ gap:.7rem; }
}

/* =========================================================
   ACCESSIBILITY + PHONE PASS
   Kept last so it wins over the earlier size tweaks. Nothing
   below 12px, thumb-sized targets, and a way to stop motion.
   ========================================================= */
.topbar-tag, .eyebrow, .hero-address, .tile-cap, .footer-tag,
.footer-col .footer-head, .legend h3, .stat-label, .menu-tag, .name-tag,
.name-expand, .fam-role, .review-src, .hours-note,
.action-bar a, .topbar-sep, .menu-item-price .price-label,
.menu-item-suffix{ font-size:max(.75rem, 12px); }
@media (max-width: 900px){
  .topbar-links a{ font-size:.75rem; }
  .topbar-sep{ font-size:.75rem; }
}
/* 12px links plus separators: shorten "Order gift cards" and drop the icon
   so all three still fit one line at 320px. */
@media (max-width: 560px){
  .topbar-more, .topbar-icon{ display:none; }
  .topbar-links{ gap:.35rem; }
  .topbar-links a{ letter-spacing:.02em; }
}
/* An unbreakable line inside a grid cell once pushed story.html 32px wider
   than a small phone. minmax(0,…) lets the column shrink below its content. */
@media (max-width: 860px){
  .name-story .wrap{ grid-template-columns:minmax(0,1fr); }
}
.name-expand{ overflow-wrap:anywhere; }

.footer-col a{ display:inline-flex; align-items:center; min-width:44px; min-height:44px; padding:.35rem 0; }
.site-footer a[href^="tel:"]{ display:inline-block; padding:.8rem 0; }
.footer-credit a{ display:inline-block; padding:.8rem 0; }
.menu-search input{ min-height:44px; }

.motion-paused .marquee-track{ animation-play-state:paused; }

.modal-close, .lb-close{ min-width:44px; min-height:44px; display:grid; place-items:center; }

/* Upcoming closures, shown under the hours when there are any. */
.hours-closures{
  margin:.75rem 0 0; padding:.6rem .8rem;
  border-left:3px solid var(--brass);
  background:rgba(200,162,74,.14);
  font-size:.9rem; color:var(--ink);
}

/* Spam trap in the forms: off-screen, not display:none, because bots skip
   fields that are display:none. Screen readers skip it via aria-hidden. */
.hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
