:root{--blue:#02119B;--navy:#0b1d3b;--amber:#ad631a;--bg:#fff;--ink:#111;--muted:#555;--r:14px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg);padding-bottom:80px}
img{max-width:100%;height:auto;display:block}a{color:var(--blue)}
h1,h2,h3{line-height:1.15;margin:.2em 0 .4em}h1{font-size:clamp(2rem,6vw,3.4rem)}h2{font-size:clamp(1.5rem,4vw,2.2rem)}h3{font-size:1.1rem}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
.muted{color:var(--muted)}
.wrap{max-width:1100px;margin:0 auto;padding:32px 16px}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;background:#fff;border-bottom:1px solid #eee;flex-wrap:wrap}
.site-header nav{display:flex;gap:14px;flex-wrap:wrap;font-weight:600;font-size:.95rem}
.site-header nav a{text-decoration:none;color:var(--navy)}
.btn{display:inline-block;background:var(--blue);color:#fff;text-decoration:none;font-weight:700;padding:12px 22px;border-radius:100px;border:2px solid var(--blue)}
.btn-light{background:#fff;color:var(--blue)}
.order-fab{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:30;box-shadow:0 6px 20px rgba(0,0,0,.25);font-size:1.05rem}
.hero{position:relative;max-height:82vh;overflow:hidden;background:#000}
.hero img{width:100%;height:82vh;object-fit:cover;opacity:.75}
.hero-text{position:absolute;inset:auto 0 0 0;padding:24px 16px 32px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.75));max-width:none}
.hero-text>*{max-width:1100px;margin-left:auto;margin-right:auto}
.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.photo-grid img{border-radius:var(--r);aspect-ratio:4/5;object-fit:cover;width:100%}
figure{margin:0}figcaption{font-weight:600;padding:6px 2px}
.two{display:grid;gap:24px}
.hours{border-collapse:collapse;width:100%}.hours th,.hours td{text-align:left;padding:8px 4px;border-bottom:1px solid #eee}
.stay{background:var(--navy);color:#fff;padding:40px 16px;text-align:center}.stay code{background:#fff2;padding:2px 8px;border-radius:6px}
.grid{display:grid;gap:16px;grid-template-columns:1fr}
.card{border:1px solid #eee;border-radius:var(--r);overflow:hidden;background:#fff}
.card img{aspect-ratio:4/3;object-fit:cover;width:100%}
.card-body{padding:14px 16px}.row{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.price{font-weight:800;color:var(--blue);white-space:nowrap}
.badge{display:inline-block;background:#eee;padding:3px 10px;border-radius:20px;font-size:.85rem;font-weight:600}
.sold{opacity:.6}
.menu-cat{margin-bottom:32px}
.family{background:#f4f5fb;text-align:center;padding:14px 16px}
.site-footer{text-align:center;padding:24px 16px;font-size:.95rem}
@media(min-width:700px){.photo-grid{grid-template-columns:repeat(4,1fr)}.two{grid-template-columns:1fr 1fr}.grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}}

/* ===== Retro arcade + old-school pizza shop theme ===== */
@font-face{font-family:"Press Start 2P";src:url(/fonts/press-start-2p.woff) format("woff");font-display:swap}
:root{--red:#c8102e;--cream:#fff8e7;--char:#1d1d22;--neon-pink:#ff2e88;--neon-cyan:#00e5ff;--neon-yellow:#ffe14d;--blue:#c8102e;--navy:#1d1d22}
body{background:var(--cream)}
.pixel,.btn{font-family:"Press Start 2P",ui-monospace,monospace;letter-spacing:.02em}
h1.pixel{font-size:clamp(1.35rem,6vw,2.6rem);line-height:1.35}
h2.pixel{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4}
.btn{font-size:.72rem;line-height:1.6;border-radius:0;padding:12px 16px;box-shadow:4px 4px 0 var(--char);background:var(--red);border-color:var(--char)}
.btn:hover,.btn:focus-visible{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--char)}
.btn:focus-visible,a:focus-visible{outline:3px solid var(--neon-cyan);outline-offset:3px}
.btn-light{background:var(--cream);color:var(--char)}
.btn-neon{background:var(--char);color:var(--neon-yellow);border-color:var(--neon-pink);box-shadow:4px 4px 0 var(--neon-pink)}
.order-fab{font-size:.75rem}
.site-header{background:var(--char);border-bottom:4px solid var(--red)}
.site-header nav a{color:var(--cream)}.site-header nav a:hover{color:var(--neon-yellow)}
.site-header .brand img{background:var(--cream);border-radius:6px;padding:2px}
.hero-text .kicker{color:var(--neon-yellow);font-size:.75rem;margin:0}
.hero-text h1{text-shadow:3px 3px 0 var(--red),0 0 12px rgba(255,46,136,.6)}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px)}
.latenight{background:var(--char);color:var(--cream);text-align:center;padding:18px 16px;border-top:4px solid var(--neon-pink);border-bottom:4px solid var(--neon-cyan)}
.latenight .pixel{color:var(--neon-yellow);margin:0 0 6px;font-size:1rem}.latenight p{margin:0}
.nightshift{border:4px solid var(--char);background:#fff;box-shadow:6px 6px 0 var(--red);margin:32px 16px;max-width:1068px}
@media(min-width:1100px){.nightshift{margin:32px auto}}
.stay{background:var(--char);border-top:4px dashed var(--neon-cyan)}
.family{background:repeating-conic-gradient(var(--red) 0 25%,var(--cream) 0 50%) 0 0/24px 24px;padding:6px}
.family p{background:var(--cream);margin:0 auto;max-width:640px;padding:10px;border:3px solid var(--char)}
.site-footer{background:var(--char);color:var(--cream)}.site-footer a{color:var(--neon-yellow)}.site-footer .muted{color:#c9c9d1}
.price{color:var(--red)}
.card{border:3px solid var(--char);border-radius:0;box-shadow:4px 4px 0 var(--char)}
.photo-grid img{border-radius:0;border:3px solid var(--char)}
.px-art{image-rendering:pixelated;flex:none}
.arcade-hero{display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.tiles{display:grid;gap:16px;grid-template-columns:1fr}
.tile{background:var(--char);color:var(--cream);padding:18px;border:3px solid var(--neon-cyan);box-shadow:4px 4px 0 var(--neon-pink)}
.tile h2{color:var(--neon-yellow);font-size:.9rem}
.tile .badge{color:var(--char)}
.gameday{background:#1f6b2a repeating-linear-gradient(90deg,transparent 0 46px,rgba(255,255,255,.35) 46px 50px);color:#fff;text-align:center;padding:24px 0;border-top:6px solid var(--cream);border-bottom:6px solid var(--cream)}
.gameday .wrap{background:rgba(0,0,0,.55)}.gameday .px-art{margin:0 auto}
.score{color:var(--neon-yellow);font-size:.8rem}
.arcade-teaser{text-align:center;background:var(--char);color:var(--cream);max-width:none}
@media(min-width:700px){.tiles{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){.btn:hover{transform:none}}
.rounded{border-radius:14px}.teaser-img{max-height:420px;object-fit:cover;width:100%}

/* ===== Oven intro ===== */
.hero{position:relative}
.intro{position:absolute;inset:0;z-index:5;display:grid;place-items:center;background:rgba(29,29,34,.82);animation:intro-fade .4s ease-in 2.6s forwards}
.intro.done{opacity:0;transition:opacity .3s}
.intro .oven{width:280px;image-rendering:pixelated;grid-area:1/1}
.intro .slice{grid-area:1/1;width:96px;image-rendering:pixelated;transform:translate(0,30px) scale(.4);opacity:0;animation:slide-out 1.4s steps(8) .4s forwards}
.smoke{grid-area:1/1;width:16px;height:16px;background:#ddd;opacity:0;box-shadow:16px 0 0 #ccc,8px -16px 0 #eee;transform:translate(-40px,-60px);animation:smoke 2.2s steps(10) .6s infinite}
.smoke.s2{animation-delay:1.1s;transform:translate(10px,-70px)}.smoke.s3{animation-delay:1.6s;transform:translate(50px,-55px)}
.intro-skip{position:absolute;right:12px;top:12px;font-family:"Press Start 2P",monospace;font-size:.65rem;background:var(--char);color:var(--cream);border:2px solid var(--cream);padding:8px 10px;cursor:pointer}
@keyframes slide-out{to{transform:translate(0,110px) scale(1.4);opacity:1}}
@keyframes smoke{0%{opacity:0}20%{opacity:.7}100%{opacity:0;margin-top:-120px}}
@keyframes intro-fade{to{opacity:0;visibility:hidden}}
@media(prefers-reduced-motion:reduce){.intro{display:none!important}}

/* ===== Secret coupon ===== */
.secret{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.8);display:grid;place-items:center;padding:16px}
.secret[hidden]{display:none}
.secret-card{position:relative;max-width:640px;width:100%;text-align:center}
.secret-card img{width:100%;image-rendering:pixelated}
.secret-box{position:absolute;left:21%;right:21%;top:47%;height:24%;display:grid;place-items:center;align-content:center;color:var(--cream);font-size:clamp(.6rem,2.2vw,.9rem);line-height:1.3}
.secret-box p{margin:0}.secret-box .pixel{color:var(--neon-yellow);font-size:clamp(.5rem,1.8vw,.8rem)}
.secret-box .code{color:var(--neon-cyan)}
.secret-card .btn{margin-top:12px}

/* ===== Topping Catcher ===== */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.arcade-game{text-align:center}
.game-wrap{position:relative;display:inline-block;max-width:100%}
#game{width:min(100%,400px);height:auto;aspect-ratio:4/5;image-rendering:pixelated;border:4px solid var(--neon-cyan);box-shadow:6px 6px 0 var(--neon-pink);background:var(--char);touch-action:none;display:block}
#game:focus-visible{outline:3px solid var(--neon-yellow);outline-offset:3px}
.game-msg{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:12px;background:rgba(0,0,0,.7);color:var(--neon-yellow)}
.game-msg[hidden]{display:none}
.hi{color:var(--red);font-size:.8rem;margin-left:12px}
.hs-screen{max-width:360px;margin:24px auto 0}.hs-screen img{image-rendering:pixelated;border:0}
.prize{background:var(--char);color:var(--neon-yellow);padding:8px;display:inline-block}

.about-photo2{margin-top:12px;width:100%;height:auto}
.hero .intro .oven{width:min(60%,240px);height:auto;opacity:1;object-fit:contain}
.hero .intro .slice{width:72px;height:72px}
.secret-art{position:relative}.secret-art img{display:block}
.hero .hero-logo{display:block;width:260px;height:auto;max-width:60vw;opacity:1;object-fit:contain;background:var(--cream,#fff8eb);border-radius:50%;padding:18px;margin:0 0 12px;box-shadow:0 4px 18px rgba(0,0,0,.45)}@media(max-width:640px){.hero .hero-logo{width:160px;padding:12px}}
.game-initials{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;margin:8px 0}.game-initials label{width:100%;text-align:center;font-size:.7rem;color:var(--neon-yellow,#ffe14d)}#game-init{width:5.5em;text-align:center;font-size:1.4rem;letter-spacing:.35em;text-transform:uppercase;padding:6px 4px;background:#000;color:#ffe14d;border:3px solid #ff2e88;border-radius:4px}.game-init-err{width:100%;text-align:center;color:#ff8a8a;min-height:1.2em;margin:0;font-size:.8rem}
.hs-board{max-width:360px;margin:20px auto;background:#000;border:4px solid #ff2e88;padding:14px 18px;color:#fff}.hs-board h3{color:#ffe14d;text-align:center;font-size:.85rem}.game-board{list-style:none;padding:0;margin:8px 0;font-size:.75rem;line-height:2}.game-board li{display:flex;justify-content:space-between;white-space:pre}.game-board li:first-child{color:#ffe14d}
.game-initials[hidden]{display:none}
.ivr-note{display:inline-block;font-size:.8em;opacity:.8;margin-top:.15em}

/* 8-bit pizzas rolling + hopping along the bottom of the header. Decorative only. */
.site-header{padding-bottom:22px;position:sticky}
.site-header .brand img{background:none;padding:0;filter:drop-shadow(0 1px 0 rgba(0,0,0,.5))}
.pizza-run{position:absolute;left:0;right:0;bottom:2px;height:20px;overflow:hidden;pointer-events:none;z-index:0}
.pizza-run i{position:absolute;bottom:0;left:0;width:16px;height:16px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2012%2012%22%20shape-rendering%3D%22crispEdges%22%3E%3Crect%20x%3D%224%22%20y%3D%220%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%225%22%20y%3D%220%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%226%22%20y%3D%220%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%227%22%20y%3D%220%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%222%22%20y%3D%221%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%223%22%20y%3D%221%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%224%22%20y%3D%221%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%225%22%20y%3D%221%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%226%22%20y%3D%221%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%227%22%20y%3D%221%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%228%22%20y%3D%221%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%229%22%20y%3D%221%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%221%22%20y%3D%222%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%222%22%20y%3D%222%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%223%22%20y%3D%222%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%224%22%20y%3D%222%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%225%22%20y%3D%222%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%226%22%20y%3D%222%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%227%22%20y%3D%222%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%228%22%20y%3D%222%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%229%22%20y%3D%222%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%2210%22%20y%3D%222%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%221%22%20y%3D%223%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%222%22%20y%3D%223%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%224%22%20y%3D%223%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%225%22%20y%3D%223%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%226%22%20y%3D%223%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%227%22%20y%3D%223%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%228%22%20y%3D%223%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%229%22%20y%3D%223%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%2210%22%20y%3D%223%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%220%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%221%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%222%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%224%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%225%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%226%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%227%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%228%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%229%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%2210%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%2211%22%20y%3D%224%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%220%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%221%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%222%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%224%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%225%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%226%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%227%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%228%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%229%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%2210%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%2211%22%20y%3D%225%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%220%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%221%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%222%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%223%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%224%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%225%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%226%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%227%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%228%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%229%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%2210%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%2211%22%20y%3D%226%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%220%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%221%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%222%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%223%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%224%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%225%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%226%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%227%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%228%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%229%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%2210%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%2211%22%20y%3D%227%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%221%22%20y%3D%228%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%222%22%20y%3D%228%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%223%22%20y%3D%228%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%224%22%20y%3D%228%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%225%22%20y%3D%228%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%226%22%20y%3D%228%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%227%22%20y%3D%228%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%229%22%20y%3D%228%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%2210%22%20y%3D%228%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%221%22%20y%3D%229%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%222%22%20y%3D%229%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%223%22%20y%3D%229%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%224%22%20y%3D%229%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%225%22%20y%3D%229%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%226%22%20y%3D%229%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%227%22%20y%3D%229%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23c8102e%22/%3E%3Crect%20x%3D%228%22%20y%3D%229%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%229%22%20y%3D%229%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%2210%22%20y%3D%229%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%222%22%20y%3D%2210%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%223%22%20y%3D%2210%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%224%22%20y%3D%2210%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%225%22%20y%3D%2210%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%226%22%20y%3D%2210%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%227%22%20y%3D%2210%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23ffd25a%22/%3E%3Crect%20x%3D%228%22%20y%3D%2210%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%229%22%20y%3D%2210%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%224%22%20y%3D%2211%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%225%22%20y%3D%2211%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%226%22%20y%3D%2211%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3Crect%20x%3D%227%22%20y%3D%2211%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23d9822b%22/%3E%3C/svg%3E") center/16px 16px no-repeat;image-rendering:pixelated;animation:pz-roll 9s linear infinite;will-change:transform}
.pizza-run i::after{content:"";position:absolute;left:2px;right:2px;bottom:-2px;height:2px;background:rgba(0,0,0,.45)}
.pizza-run i:nth-child(2){animation-duration:12s;animation-delay:-4s;width:12px;height:12px;background-size:12px 12px}
.pizza-run i:nth-child(3){animation-duration:15s;animation-delay:-9s}
@keyframes pz-roll{
 0%{transform:translate(-24px,0) rotate(0)}
 10%{transform:translate(10vw,0) rotate(180deg)}
 13%{transform:translate(13vw,-12px) rotate(270deg)}
 16%{transform:translate(16vw,0) rotate(360deg)}
 45%{transform:translate(45vw,0) rotate(900deg)}
 48%{transform:translate(48vw,-14px) rotate(990deg)}
 50%{transform:translate(50vw,-6px) rotate(1040deg)}
 52%{transform:translate(52vw,0) rotate(1080deg)}
 78%{transform:translate(78vw,0) rotate(1620deg)}
 81%{transform:translate(81vw,-12px) rotate(1710deg)}
 84%{transform:translate(84vw,0) rotate(1800deg)}
 100%{transform:translate(calc(100vw + 24px),0) rotate(2160deg)}
}
@media (prefers-reduced-motion:reduce){.pizza-run i{animation:none}.pizza-run i:nth-child(1){transform:translateX(20vw)}.pizza-run i:nth-child(2){transform:translateX(55vw)}.pizza-run i:nth-child(3){transform:translateX(85vw)}}
.hero .hero-logo{background:none;border-radius:0;padding:0;box-shadow:none;filter:drop-shadow(0 3px 6px rgba(0,0,0,.7));width:300px}
@media(max-width:640px){.hero .hero-logo{width:180px;padding:0}}
.board-tabs{display:flex;gap:6px;justify-content:center;margin:6px 0}.board-tabs[hidden]{display:none}.board-tabs button{font-size:.6rem;padding:6px 8px;background:#111;color:#fff;border:2px solid #555;cursor:pointer}.board-tabs button[aria-pressed="true"]{border-color:#ff2e88;color:#ffe14d}.board-champ{color:#5ef2ff;text-align:center;font-size:.6rem}.board-champ[hidden]{display:none}
.hero .hero-logo{filter:drop-shadow(0 4px 10px rgba(0,0,0,.6))}

/* Shop cards: show the whole mockup/sticker, never crop it (square art was being cut to 4:3) */
.shop-art{background:#fff;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}
.shop-art img,.shop-card .shop-art img{width:100%;height:100%;aspect-ratio:1/1;object-fit:contain}

/* ===== Shop: clean grid, product view, cart drawer ===== */
.shop-page{padding-top:18px}
.shop-title{font-size:clamp(1.3rem,5vw,2rem);margin:0 0 6px}.shop-sub{margin:0 0 14px;font-size:.95rem}
.shop-filters{display:flex;gap:8px;overflow-x:auto;padding:10px 0;margin:0 0 12px;background:var(--cream);scrollbar-width:none;-webkit-overflow-scrolling:touch}
.shop-filters::-webkit-scrollbar{display:none}.shop-filters[hidden]{display:none}
.chip{flex:0 0 auto;font:700 .9rem/1 system-ui,-apple-system,sans-serif;padding:11px 16px;border:2px solid var(--char);border-radius:999px;background:#fff;color:var(--char);cursor:pointer;min-height:44px}
.chip[aria-pressed="true"]{background:var(--char);color:var(--neon-yellow)}
.shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}
@media(min-width:720px){.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px}}
@media(min-width:1000px){.shop-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.shop-card{display:flex;flex-direction:column;gap:4px;text-align:left;background:none;border:0;padding:0;cursor:pointer;font:inherit;color:var(--char);min-width:0}
.shop-art{position:relative;display:block;background:#fff;aspect-ratio:1/1;border:2px solid var(--char);overflow:hidden}
.shop-art img{width:100%;height:100%;aspect-ratio:1/1;object-fit:contain;transition:transform .2s}
.shop-card:hover .shop-art img{transform:scale(1.04)}
.shop-card:focus-visible{outline:3px solid var(--neon-cyan);outline-offset:3px}
.shop-card.vaulted{opacity:.7}
.shop-badge{position:absolute;left:6px;top:6px;background:var(--char);color:var(--neon-yellow);font:700 .7rem/1 system-ui,sans-serif;padding:5px 8px;border-radius:999px}
.shop-name{font:600 .95rem/1.25 system-ui,-apple-system,sans-serif;margin-top:6px}
.shop-price{font:700 .95rem/1.2 system-ui,sans-serif;color:var(--red)}
.card-dots{display:flex;gap:4px;margin-top:2px}.card-dots i{width:12px;height:12px;border-radius:50%;border:1px solid rgba(0,0,0,.35)}
.shop-notify,.shop-past{margin-top:32px}
.shop-lock{overflow:hidden}
.shop-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:60}.shop-overlay[hidden]{display:none}
.shop-x{background:none;border:0;font-size:2rem;line-height:1;width:44px;height:44px;cursor:pointer;color:var(--char)}
.shop-modal{position:fixed;z-index:61;left:0;right:0;bottom:0;max-height:92vh;overflow-y:auto;background:var(--cream);border-top:3px solid var(--char);padding:8px 16px calc(20px + env(safe-area-inset-bottom));display:block}
.shop-modal[hidden],.shop-drawer[hidden]{display:none}
.shop-modal .shop-x{position:absolute;right:6px;top:6px;z-index:2;background:rgba(255,255,255,.9);border-radius:50%}
.pd-art{background:#fff;border:2px solid var(--char);margin-top:40px;aspect-ratio:1/1;max-width:min(420px,30vh);margin-left:auto;margin-right:auto}
.pd-art img{width:100%;height:100%;object-fit:contain}
.pd-name{font:700 1.3rem/1.2 system-ui,sans-serif;margin:14px 0 4px}
.pd-price{font:700 1.2rem/1 system-ui,sans-serif;color:var(--red);margin:0 0 8px}
.pd-desc{margin:0 0 12px;color:var(--muted);font-size:.95rem}
@media(min-width:760px){.shop-modal{left:50%;right:auto;bottom:auto;top:50%;transform:translate(-50%,-50%);width:min(900px,92vw);max-height:90vh;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:24px;border:3px solid var(--char);box-shadow:6px 6px 0 var(--char)}.shop-modal[hidden]{display:none}.pd-art{margin-top:0;width:100%;max-width:none}.pd-name{margin-top:0}.shop-modal .shop-x{top:4px;right:4px}}
.opt{border:0;padding:0;margin:0 0 14px;min-width:0}.opt legend,.opt-l{font:600 .9rem system-ui,sans-serif;padding:0;margin-bottom:6px;display:block}
.swatches{display:flex;gap:10px;flex-wrap:wrap}.swatches label{cursor:pointer}
.swatches input,.sizes input{position:absolute;opacity:0;width:1px;height:1px}
.swatches span[data-sw]{display:block;width:40px;height:40px;border-radius:50%;border:2px solid rgba(0,0,0,.4)}
.swatches input:checked+span{outline:3px solid var(--char);outline-offset:2px}
.swatches input:focus-visible+span,.sizes input:focus-visible+span{outline:3px solid var(--neon-cyan);outline-offset:2px}
.sizes{display:flex;gap:8px;flex-wrap:wrap}.sizes span{display:block;min-width:48px;min-height:44px;line-height:40px;text-align:center;padding:0 12px;border:2px solid var(--char);background:#fff;font:600 .9rem/40px system-ui,sans-serif;cursor:pointer}
.sizes input:checked+span{background:var(--char);color:var(--neon-yellow)}
.stepper{display:inline-flex;align-items:center;border:2px solid var(--char);background:#fff}
.stepper button{width:44px;height:44px;border:0;background:none;font-size:1.4rem;cursor:pointer;color:var(--char)}
.stepper output{min-width:34px;text-align:center;font-weight:700}
.stepper.sm button{width:36px;height:36px}
#pd-action{padding-top:4px}
#pd-action .btn,#shop-pay{width:100%;text-align:center;padding:16px}
.shop-drawer{position:fixed;z-index:61;top:0;right:0;bottom:0;width:min(420px,100vw);background:var(--cream);border-left:3px solid var(--char);display:flex;flex-direction:column;animation:drawer-in .22s ease-out}
.shop-drawer[hidden]{display:none}
@keyframes drawer-in{from{transform:translateX(100%)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.shop-drawer{animation:none}}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:6px 8px 6px 16px;border-bottom:2px solid var(--char)}.drawer-head h2{margin:0}
.drawer-body{flex:1;overflow-y:auto;padding:12px 16px}
.drawer-foot{padding:12px 16px calc(14px + env(safe-area-inset-bottom));border-top:2px solid var(--char);background:#fff}
.cart-line{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #ddd}
.cart-line img{width:64px;height:64px;object-fit:contain;background:#fff;border:1px solid #ddd;flex:0 0 64px}
.cl-info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0;font-size:.92rem}.cl-row{display:flex;justify-content:space-between;align-items:center;margin-top:4px}
.cl-x{background:none;border:0;font-size:1.5rem;width:36px;height:36px;cursor:pointer;color:var(--muted)}
.shop-method{border:0;padding:0;margin:14px 0}.shop-method legend{font-weight:700;margin-bottom:4px}.shop-method label{display:block;padding:8px 0}
.drawer-email{display:block;font-weight:600;font-size:.9rem}.drawer-email input{display:block;width:100%;margin-top:4px;padding:12px;font-size:1rem;border:2px solid var(--char)}
.cart-totals{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 12px;margin:0 0 8px;font-size:.9rem}.cart-totals strong{flex:0 0 100%;font-size:1.1rem;text-align:right}
#shop-error:empty{display:none}
.cart-fab{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:calc(max(16px,env(safe-area-inset-bottom)) + 64px);z-index:50;background:var(--red,#c8102e);color:#fff;border:2px solid var(--neon-yellow,#ffe14d);border-radius:999px;padding:14px 20px;font:700 1rem/1.1 inherit;font-family:inherit;box-shadow:0 6px 18px rgba(0,0,0,.35);cursor:pointer;max-width:calc(100vw - 32px);transition:opacity .2s,transform .2s}
.cart-fab[hidden]{display:none}
.cart-fab.away{opacity:0;pointer-events:none;transform:translateY(12px)}
.shop-page .notify-form{display:flex;gap:8px;flex-wrap:wrap}.shop-page .notify-form input{flex:1 1 200px;padding:12px;border:2px solid var(--char);font-size:1rem}
