/* Seasonal campaign, active only during October 2026. No selectors modify catalogue cards or product media. */
.omk-october-decor{position:absolute;pointer-events:none;user-select:none;z-index:2}
#inicio .omk-october-bats{top:28px;left:24px;width:130px;height:80px;color:#111214;opacity:.85}
.omk-october-pattern{position:absolute;inset:0;background:url('/assets/halloween-2026/pattern.svg') center top/720px 720px repeat;opacity:.055;z-index:1;pointer-events:none}
html.omk-october body.oppo-redesign #comboSpiral{background:transparent;border-color:#ded7c9;overflow:hidden}
html.omk-october #comboSpiral:before{content:none}
html.omk-october #comboSpiral:after{content:'';position:absolute;inset:-30% 0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 70% 45%,#fff9eb66,transparent 44%),radial-gradient(ellipse at 20% 85%,#e5093509,transparent 48%);animation:october-mist 24s ease-in-out infinite alternate}
html.omk-october body.oppo-redesign #comboSpiral h2{color:#111214!important;font-size:clamp(60px,6.6vw,96px)!important;line-height:1!important;letter-spacing:0!important}
html.omk-october #comboSpiral h2 em{font-style:normal;color:#e50935}
html.omk-october #comboSpiral .combo-kicker{color:#183b56!important;letter-spacing:2px}
html.omk-october #comboSpiral .combo-description{color:#69665e!important}
html.omk-october #comboSpiral .combo-hint,html.omk-october #comboSpiral .combo-preview-note{color:#7a766e!important}
html.omk-october body.oppo-redesign #comboSpiral .combo-controls button{color:#111214!important;background:transparent!important;border-color:#d1c9b9!important}
html.omk-october #comboSpiral .combo-copy{padding-left:32px!important;padding-right:18px!important}
.omk-october-until{display:inline-block;margin:20px 0 0;padding:8px 0;border-top:1px solid #d1c9b9;font:600 9px/1.4 Arial,sans-serif;letter-spacing:1.6px;color:#183b56}
html.omk-october body.oppo-redesign .mascot-launcher img,html.omk-october body.oppo-redesign .faq-head img{border-radius:50%!important;object-fit:cover!important;transform:none!important}
#omakase-footer .omk-october-signature{position:relative;grid-column:1/-1;display:flex;gap:9px;align-items:center;font:600 10px/1.4 Arial,sans-serif;letter-spacing:2px;color:#fff9eb;margin-top:20px;padding-top:18px;border-top:1px solid #fff9eb26}
@keyframes october-mist{from{transform:translate3d(-5%,0,0)}to{transform:translate3d(5%,5%,0)}}
@media(max-width:650px){
 #inicio .omk-october-bats{top:108px;left:12px;width:76px;height:47px}
 html.omk-october body.oppo-redesign #comboSpiral h2{font-size:64px!important}
 html.omk-october #comboSpiral h2 em{display:block}
 html.omk-october #comboSpiral .combo-copy{padding:28px 22px 18px!important}
 html.omk-october #comboSpiral .combo-kicker{font-size:9px!important}
 .omk-october-pattern{background-size:540px 540px;opacity:.045}
 html.omk-october #comboSpiral:before{background-size:540px 540px}
 .omk-october-until{margin-top:16px;font-size:8px}
}
@media(prefers-reduced-motion:reduce){html.omk-october #comboSpiral:after{animation:none}}
html.omk-page-hidden.omk-october #comboSpiral:after,html.omk-october #comboSpiral.omk-offscreen:after{animation-play-state:paused}

.omk-october-signature i{display:block;width:7px;height:7px;flex-shrink:0;border-radius:50%;background:#e50935}
/* Sparse, lightweight atmosphere; all decorative layers ignore pointer input. */
.omk-october-spirits{position:absolute;inset:0;z-index:2;pointer-events:none;color:#183b56}
.omk-october-spirits i{position:absolute;left:10%;top:24%;width:58px;opacity:0;animation:october-appear 22s ease-in-out infinite}
.omk-october-spirits i:nth-child(2){left:78%;top:55%;width:43px;animation-delay:-8s;animation-duration:27s}
.omk-october-spirits i:nth-child(3){left:42%;top:79%;width:34px;animation-delay:-16s;animation-duration:25s}
.omk-october-spirits svg{display:block;width:100%;height:auto}
@keyframes october-appear{0%,15%,85%,100%{opacity:0;transform:translate3d(-5px,12px,0) rotate(-5deg)}40%,60%{opacity:.16;transform:translate3d(7px,-12px,0) rotate(4deg)}}
#inicio .omk-october-web{right:0;top:0;width:100px;height:100px;color:#fff9eb;opacity:.45}
#omakase-footer .omk-october-web{right:0;top:0;width:62px;height:62px;color:#e6d8bf;opacity:.35}
.omk-october-web svg{display:block;width:100%;height:100%}
html.omk-october #comboSpiral h2 .omk-october-title-line{display:flex!important;align-items:center;gap:18px;font:inherit!important;letter-spacing:inherit!important;color:inherit!important}
html.omk-october #comboSpiral .omk-october-title-line img{display:block;width:clamp(60px,6vw,82px);height:auto;aspect-ratio:1;object-fit:contain;flex-shrink:0;border-radius:0;border:0;background:transparent;transform:rotate(7deg)}
.omk-october-glimmers{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden}
.omk-october-glimmers i{position:absolute;width:8px;height:8px;left:55%;top:19%;background:#e50935;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);opacity:.25;animation:october-glimmer 9s ease-in-out infinite}
.omk-october-glimmers i:nth-child(2){left:94%;top:38%;width:11px;height:11px;animation-delay:-3s}
.omk-october-glimmers i:nth-child(3){left:43%;top:78%;animation-delay:-6s}
.omk-october-glimmers i:nth-child(4){left:80%;top:88%;width:6px;height:6px;animation-delay:-4s}
@keyframes october-glimmer{0%,100%{opacity:.12;transform:scale(.7) rotate(0)}50%{opacity:.65;transform:scale(1.15) rotate(25deg)}}
html.omk-october #comboSpiral:after{background:radial-gradient(ellipse at 65% 45%,#fff9eb99,transparent 46%),radial-gradient(ellipse at 88% 75%,#183b5610,transparent 37%),radial-gradient(ellipse at 20% 85%,#e5093509,transparent 48%)}
@media(max-width:650px){
 #inicio .omk-october-web{width:62px;height:62px;opacity:.38}
 #omakase-footer .omk-october-web{width:42px;height:42px}
 html.omk-october #comboSpiral .omk-october-title-line img{width:62px}
 html.omk-october #comboSpiral h2 .omk-october-title-line{gap:16px}
 .omk-october-spirits i{width:42px;left:5%}
 .omk-october-spirits i:nth-child(2){left:82%;width:32px}
 .omk-october-spirits i:nth-child(3){display:none}
}
html.omk-page-hidden .omk-october-spirits i,html.omk-page-hidden .omk-october-glimmers i,#comboSpiral.omk-offscreen .omk-october-glimmers i{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.omk-october-spirits i,.omk-october-glimmers i{animation:none}.omk-october-spirits i{opacity:.09}}
/* The page already supplies atmosphere; avoid a second tinted scroll layer on phones. */
@media(max-width:750px){html.omk-october #comboSpiral:after{content:none;animation:none}}
