/* Fix homepage images without touching the original image files */
.spec > picture.dish-photo{position:absolute;inset:0;width:100%;height:100%;z-index:-2}
.spec > picture.dish-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover!important}
.dish__media > picture.dish-photo{position:absolute;inset:0;width:100%;height:100%}
.dish__media > picture.dish-photo img{width:100%;height:100%;object-fit:cover!important}
.promo > picture.dish-photo{position:absolute;inset:0;width:100%;height:100%;z-index:-2}
.promo > picture.dish-photo img{width:100%;height:100%;object-fit:cover!important}
.footer-brand img{height:96px!important;width:auto!important;max-width:250px;object-fit:contain}

.october-only{display:none}.is-october .october-only{display:block}
.halloween-events{background:linear-gradient(180deg,#fff8ec 0%,#f5eadb 100%);position:relative;overflow:hidden}
.halloween-events:before,.halloween-events:after{content:"";position:absolute;border-radius:50%;filter:blur(40px);opacity:.16;pointer-events:none}
.halloween-events:before{width:260px;height:260px;background:#ff7900;left:-80px;top:30px}
.halloween-events:after{width:280px;height:280px;background:#6f247d;right:-90px;bottom:20px}
.halloween-events .container{position:relative;z-index:1}
.halloween-event-list{display:grid;gap:1.35rem;margin-top:2rem}
.halloween-event{display:grid;grid-template-columns:minmax(310px,.9fr) minmax(0,1.1fr);background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 20px 55px rgba(59,37,21,.12);border:1px solid rgba(110,60,32,.12)}
.halloween-event__poster{position:relative;min-height:390px;background:#1b1010;overflow:hidden}
.halloween-event__poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 18%;transition:transform .6s ease}
.halloween-event:hover .halloween-event__poster img{transform:scale(1.035)}
.halloween-event__body{padding:clamp(1.3rem,3vw,2.2rem);display:flex;flex-direction:column;justify-content:center}
.halloween-event__date{font-family:var(--label);font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:#fff;background:linear-gradient(135deg,#c91e28,#e97724);display:inline-flex;align-self:flex-start;border-radius:999px;padding:.45rem .75rem;margin-bottom:.8rem}
.halloween-event__body h3{font-size:clamp(1.8rem,3vw,2.5rem);margin:0 0 .65rem}
.halloween-event__body p{color:var(--ink-soft);font-size:1.02rem;margin-bottom:1rem}
.halloween-event__facts{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}
.halloween-event__facts span{background:#f8f0e4;border:1px solid rgba(110,60,32,.1);border-radius:999px;padding:.45rem .7rem;font:600 .82rem/1 var(--label)}
.halloween-event__actions{display:flex;gap:.7rem;flex-wrap:wrap}
.halloween-event__actions .btn{min-width:190px}

.halloween-intro{position:fixed;inset:0;z-index:9999;background:#120a11;display:grid;place-items:center;opacity:1;transition:opacity .55s ease,visibility .55s ease}
.halloween-intro.is-out{opacity:0;visibility:hidden}
.halloween-intro img{width:min(900px,92vw);height:auto;display:block;filter:drop-shadow(0 20px 55px rgba(0,0,0,.45))}
.halloween-corner{position:fixed;top:86px;right:12px;width:170px;height:auto;z-index:52;pointer-events:none;opacity:.9;filter:drop-shadow(0 10px 18px rgba(0,0,0,.2))}
@media(max-width:900px){.halloween-event{grid-template-columns:1fr}.halloween-event__poster{min-height:480px}.halloween-corner{width:120px;top:72px}}
@media(max-width:600px){.halloween-event__poster{min-height:420px}.halloween-event__actions .btn{width:100%}.footer-brand img{height:78px!important}.halloween-corner{display:none}}
@media(prefers-reduced-motion:reduce){.halloween-intro{display:none}.halloween-corner{display:none}.halloween-event__poster img{transition:none}}
