/* Page-specific opening layer. Existing page layouts and brand assets are untouched. */
#mg-page-opening{--mgpo-ready:1;--accent:#d5b978;position:fixed;inset:0;z-index:22000;display:grid;place-items:center;overflow:hidden;box-sizing:border-box;background:#171c16;color:#f6f1e5;isolation:isolate;transition:opacity .28s ease}
#mg-page-opening[hidden]{display:none!important}
#mg-page-opening *,#mg-page-opening *::before,#mg-page-opening *::after{box-sizing:border-box}
#mg-page-opening::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 43%,#a89b721c,transparent 66%);pointer-events:none}
#mg-page-opening.mgpo-hog{--accent:#ce905f;background:#201a15}
#mg-page-opening.mgpo-chunkys{--accent:#efda2a}
#mg-page-opening.mgpo-dds{--accent:#d44835}
#mg-page-opening .mgpo-stage{width:min(650px,88vw);text-align:center;padding:55px 0 25px}
#mg-page-opening .mgpo-eyebrow{margin:0 0 24px;font:600 10px/1.5 Arial,sans-serif;letter-spacing:.2em;color:#e4dacc;opacity:0}
#mg-page-opening .mgpo-mark{position:relative;display:grid;place-items:center;width:min(420px,78vw);height:210px;margin:0 auto}
#mg-page-opening .mgpo-logo{grid-area:1/1;display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;opacity:0}
#mg-page-opening .mgpo-fallback{grid-area:1/1;display:none;font:700 clamp(26px,6vw,42px)/1.15 Georgia,serif;color:var(--accent)}
#mg-page-opening .is-unavailable .mgpo-logo{display:none}
#mg-page-opening .is-unavailable .mgpo-fallback{display:block}
#mg-page-opening .mgpo-rule{width:80px;height:2px;margin:25px auto 22px;background:var(--accent);transform:scaleX(0)}
#mg-page-opening .mgpo-title{margin:0;font:400 clamp(24px,4.8vw,34px)/1.3 Georgia,serif;color:#fff7e9;opacity:0}
#mg-page-opening .mgpo-caption{margin:12px 0 0;font:400 13px/1.65 Arial,sans-serif;color:#e0d6c7;opacity:0}
#mg-page-opening .mgpo-family{margin:26px 0 0;font:500 10px/1.6 Arial,sans-serif;letter-spacing:.1em;color:#d0c6b7;opacity:0}
#mg-page-opening .mgpo-progress{margin:22px auto 0;width:54px;height:2px;background:#ffffff24;overflow:hidden}
#mg-page-opening .mgpo-progress span{display:block;width:100%;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}
#mg-page-opening .mgpo-skip{position:absolute;right:max(18px,env(safe-area-inset-right));top:calc(16px + env(safe-area-inset-top));min-height:44px;padding:10px 17px;border:1px solid #f1e2c85c;border-radius:30px;background:transparent;color:#fff7eb;font:500 13px/1.3 Arial,sans-serif;cursor:pointer;z-index:3}
#mg-page-opening .mgpo-skip:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
#mg-page-opening .mgpo-skip:hover{background:#ffffff10}
#mg-page-opening.is-running .mgpo-eyebrow{animation:mgpo-rise .38s .05s both}
#mg-page-opening.is-running .mgpo-logo{animation:mgpo-rise .65s .12s both}
#mg-page-opening.is-running .mgpo-rule{animation:mgpo-line .55s .42s both}
#mg-page-opening.is-running .mgpo-title{animation:mgpo-rise .55s .52s both}
#mg-page-opening.is-running .mgpo-caption{animation:mgpo-rise .5s .66s both}
#mg-page-opening.is-running .mgpo-family{animation:mgpo-rise .5s .8s both}
#mg-page-opening.is-running .mgpo-progress span{animation:mgpo-line var(--duration,2200ms) linear both}
#mg-page-opening.is-leaving{opacity:0;pointer-events:none}
/* Hog & Gather: copper seal around the original emblem. */
#mg-page-opening.mgpo-hog .mgpo-mark{width:250px;height:250px}
#mg-page-opening.mgpo-hog .mgpo-logo{width:210px;height:210px;filter:brightness(0) invert(91%) sepia(17%) saturate(500%) hue-rotate(337deg)}
#mg-page-opening .mgpo-seal{grid-area:1/1;width:100%;height:100%;color:var(--accent);opacity:.65;pointer-events:none}
#mg-page-opening .mgpo-seal circle{stroke-dasharray:1;stroke-dashoffset:1;transform-origin:center;transform:rotate(-90deg)}
#mg-page-opening.is-running .mgpo-seal circle{animation:mgpo-draw 1.15s .08s both}
#mg-page-opening.mgpo-hog.is-running .mgpo-logo{animation:mgpo-seal-reveal .85s .12s both}
/* Chunky's: yellow touchline strokes and the approved yellow wordmark. */
#mg-page-opening.mgpo-chunkys .mgpo-mark{height:178px}
#mg-page-opening.mgpo-chunkys .mgpo-logo{width:100%;max-height:145px;filter:brightness(0) invert(88%) sepia(85%) saturate(1000%) hue-rotate(350deg)}
#mg-page-opening.mgpo-chunkys .mgpo-mark::before,#mg-page-opening.mgpo-chunkys .mgpo-mark::after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--accent);opacity:.65;transform:scaleX(0)}
#mg-page-opening.mgpo-chunkys .mgpo-mark::before{top:0;transform-origin:left}
#mg-page-opening.mgpo-chunkys .mgpo-mark::after{bottom:0;transform-origin:right}
#mg-page-opening.mgpo-chunkys.is-running .mgpo-mark::before,#mg-page-opening.mgpo-chunkys.is-running .mgpo-mark::after{animation:mgpo-line .7s .12s both}
#mg-page-opening.mgpo-chunkys.is-running .mgpo-logo{animation:mgpo-wipe .8s .15s both}
/* DD's: original red mark, with its small script legible on the dark background. */
#mg-page-opening.mgpo-dds .mgpo-mark{width:min(280px,72vw);height:225px}
#mg-page-opening.mgpo-dds .mgpo-logo{width:280px;height:210px}
#mg-page-opening.mgpo-dds .mgpo-dds-script{clip-path:inset(65% 0 0);filter:brightness(0) invert(96%) sepia(9%) saturate(360%) hue-rotate(349deg);pointer-events:none}
#mg-page-opening.mgpo-dds .mgpo-mark::before,#mg-page-opening.mgpo-dds .mgpo-mark::after{content:"";position:absolute;width:40px;height:3px;background:var(--accent);top:46%;transform:scaleX(0)}
#mg-page-opening.mgpo-dds .mgpo-mark::before{right:calc(100% + 12px);transform-origin:right}
#mg-page-opening.mgpo-dds .mgpo-mark::after{left:calc(100% + 12px);transform-origin:left}
#mg-page-opening.mgpo-dds.is-running .mgpo-mark::before,#mg-page-opening.mgpo-dds.is-running .mgpo-mark::after{animation:mgpo-line .65s .4s both}
#mg-page-opening.mgpo-dds.is-running .mgpo-logo{animation:mgpo-diner-reveal .7s .12s both}
/* Menus, gallery and reviews each have a shorter, individual opening. */
#mg-page-opening.mgpo-menus .mgpo-mark,#mg-page-opening.mgpo-gallery .mgpo-mark,#mg-page-opening.mgpo-reviews .mgpo-mark{width:220px;height:190px}
#mg-page-opening.mgpo-menus .mgpo-logo,#mg-page-opening.mgpo-gallery .mgpo-logo,#mg-page-opening.mgpo-reviews .mgpo-logo{width:165px;height:145px;filter:brightness(0) invert(1)}
#mg-page-opening.mgpo-menus .mgpo-mark::before,#mg-page-opening.mgpo-menus .mgpo-mark::after{content:"";position:absolute;top:0;bottom:0;width:1px;background:var(--accent);opacity:.5;transform:scaleY(0)}
#mg-page-opening.mgpo-menus .mgpo-mark::before{left:0;transform-origin:top}
#mg-page-opening.mgpo-menus .mgpo-mark::after{right:0;transform-origin:bottom}
#mg-page-opening.mgpo-menus.is-running .mgpo-mark::before,#mg-page-opening.mgpo-menus.is-running .mgpo-mark::after{animation:mgpo-menu-rule .7s .1s both}
#mg-page-opening.mgpo-gallery .mgpo-mark::before{content:"";position:absolute;inset:0;border:1px solid var(--accent);opacity:0}
#mg-page-opening.mgpo-gallery.is-running .mgpo-mark::before{animation:mgpo-frame .75s .05s both}
#mg-page-opening.mgpo-gallery.is-running .mgpo-logo{animation:mgpo-wipe .75s .12s both}
#mg-page-opening.mgpo-reviews .mgpo-mark::before,#mg-page-opening.mgpo-reviews .mgpo-mark::after{position:absolute;top:10px;font:130px/1 Georgia,serif;color:var(--accent);opacity:0}
#mg-page-opening.mgpo-reviews .mgpo-mark::before{content:"\201C";right:100%}
#mg-page-opening.mgpo-reviews .mgpo-mark::after{content:"\201D";left:100%}
#mg-page-opening.mgpo-reviews.is-running .mgpo-mark::before{animation:mgpo-quote .65s .12s both}
#mg-page-opening.mgpo-reviews.is-running .mgpo-mark::after{animation:mgpo-quote .65s .3s both}
.mg-page-opening-replay{display:inline-block;min-height:44px;padding:10px 0;margin:12px 0 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;font:500 12px/1.5 Arial,sans-serif;cursor:pointer}
.mg-page-opening-replay:focus-visible{outline:2px solid #e9d356;outline-offset:4px}
@keyframes mgpo-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes mgpo-line{to{transform:scaleX(1)}}
@keyframes mgpo-draw{to{stroke-dashoffset:0}}
@keyframes mgpo-seal-reveal{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@keyframes mgpo-wipe{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes mgpo-diner-reveal{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes mgpo-menu-rule{to{transform:scaleY(1)}}
@keyframes mgpo-frame{from{opacity:0;transform:scale(1.08)}to{opacity:.6;transform:scale(1)}}
@keyframes mgpo-quote{from{opacity:0;transform:translateY(10px)}to{opacity:.4;transform:translateY(0)}}
@media(max-width:600px){#mg-page-opening .mgpo-eyebrow{font-size:9px;letter-spacing:.16em}#mg-page-opening .mgpo-caption{font-size:12px}#mg-page-opening .mgpo-family{font-size:9px;letter-spacing:.05em}#mg-page-opening.mgpo-hog .mgpo-mark{width:218px;height:218px}#mg-page-opening.mgpo-hog .mgpo-logo{width:185px;height:185px}#mg-page-opening.mgpo-chunkys .mgpo-mark{height:150px}#mg-page-opening.mgpo-chunkys .mgpo-logo{max-height:120px}#mg-page-opening.mgpo-dds .mgpo-mark::before,#mg-page-opening.mgpo-dds .mgpo-mark::after{width:18px}#mg-page-opening.mgpo-reviews .mgpo-mark::before,#mg-page-opening.mgpo-reviews .mgpo-mark::after{font-size:85px}}
@media(max-height:620px){#mg-page-opening .mgpo-stage{padding:46px 0 14px}#mg-page-opening .mgpo-eyebrow{margin-bottom:12px}#mg-page-opening .mgpo-mark{height:125px!important}#mg-page-opening .mgpo-logo{max-height:115px!important}#mg-page-opening.mgpo-hog .mgpo-mark{width:140px;height:140px!important}#mg-page-opening .mgpo-rule{margin:13px auto}#mg-page-opening .mgpo-family{margin-top:12px}#mg-page-opening .mgpo-progress{margin-top:12px}#mg-page-opening .mgpo-title{font-size:24px}}
@media(prefers-reduced-motion:reduce){#mg-page-opening,.mg-page-opening-replay{display:none!important}}