/* MIKSZ Halloween 2026+. Csak body.miksz-halloween alatt aktív. */
body.miksz-halloween {
    --hw-orange:#f68b36;
    --hw-purple:#54347a;
    --hw-ink:#241b35;
    background: radial-gradient(ellipse 900px 430px at 85% 2%, rgba(96,61,126,.22), transparent 70%),
                linear-gradient(165deg, #f4ede7 0%, #f5e6da 50%, #f6efe7 100%);
}
body.miksz-halloween .site-header.miksz-header {
    background:linear-gradient(105deg, rgba(38,27,55,.98), rgba(63,35,78,.98) 70%, rgba(99,48,55,.96));
    border-bottom:2px solid rgba(246,139,54,.66);
    box-shadow:0 10px 34px rgba(37,19,50,.16);
}
body.miksz-halloween .site-header.miksz-header::before {
    content:'☾'; position:absolute; right:5%; top:8%; pointer-events:none;
    color:#ffd99a; font-size:clamp(52px,10vw,125px); line-height:1;
    text-shadow:0 0 25px rgba(255,204,126,.5); opacity:.7;
}
body.miksz-halloween .site-header.miksz-header::after {
    content:'✦  ✧  ✦'; position:absolute; right:14%; top:25%; pointer-events:none;
    color:rgba(255,216,167,.65); font-size:21px; letter-spacing:16px;
}
body.miksz-halloween .site-header.miksz-header .public-menu {
    background:linear-gradient(120deg,rgba(73,41,82,.94),rgba(48,28,69,.90));
    border-color:rgba(249,188,112,.42);
}
body.miksz-halloween .site-header.miksz-header .public-menu .top-link,
body.miksz-halloween .site-header.miksz-header .public-menu .menu-group-toggle {
    background:rgba(255,250,245,.94);color:#3b273c;
}
body.miksz-halloween .site-header.miksz-header .public-menu .top-link:hover,
body.miksz-halloween .site-header.miksz-header .public-menu .menu-group-toggle:hover {color:#8b3b28;background:#fff2e1;}
body.miksz-halloween .hero-box {
    position:relative;
    border:1px solid rgba(255,158,76,.47);
    background:linear-gradient(120deg, #2e2441, #4b3058 60%, #643b4c);
    box-shadow:0 18px 42px rgba(58,28,61,.20);
    overflow:hidden;
}
body.miksz-halloween .hero-box::after {
    content:''; position:absolute; right:10px; bottom:-8px; width:clamp(86px, 16vw, 170px); height:clamp(86px, 16vw, 170px);
    pointer-events:none; opacity:.20; transform:rotate(-9deg);
    background:url('../img/halloween/pumpkin.png') center/contain no-repeat;
}
body.miksz-halloween .hero-box h1,body.miksz-halloween .hero-box .eyebrow {color:#fff7e5;}
body.miksz-halloween .hero-box p {color:#f4d9dd;}
body.miksz-halloween .hero-box .eyebrow {background:rgba(253,179,92,.18);border:1px solid rgba(253,179,92,.25);}
body.miksz-halloween .hero-box .actions {position:relative;z-index:1;}
body.miksz-halloween .btn-primary {background:#b95427;border-color:#b95427;color:white;}
body.miksz-halloween .btn-primary:hover {background:#903c1c;border-color:#903c1c;}
body.miksz-halloween .btn-secondary {border-color:#b65b31;}
body.miksz-halloween .card,body.miksz-halloween .partnership-card {border-color:rgba(126,83,111,.20);}
body.miksz-halloween .site-footer {border-top:3px solid rgba(246,139,54,.35);}

/* Egyszerű, bezárható hangulati sáv számláló nélkül. */
.miksz-halloween-banner {
    position:relative;z-index:5;
    background:linear-gradient(105deg,#24172f,#4e2a58 75%,#69324c);
    border-bottom:1px solid #ce8a51;color:#fff7e8;
}
.miksz-halloween-banner .hw-inner {
    max-width:1320px;margin:auto;padding:10px 44px 10px 16px;
    display:flex;align-items:center;justify-content:center;gap:clamp(10px,2vw,30px);flex-wrap:wrap;
}
.miksz-halloween-banner .hw-copy {
    display:flex;align-items:center;gap:10px;line-height:1.35;font-weight:700;text-align:center;
}
.miksz-halloween-banner .hw-copy .hw-pumpkin {
    display:inline-block; width:22px; height:22px; flex:0 0 22px; font-size:0;
    background:url('../img/halloween/pumpkin.png') center/contain no-repeat;
    filter:drop-shadow(0 2px 8px #e5834a66);
}
.miksz-halloween-banner .hw-copy small {display:block;font-size:12px;font-weight:500;color:#f6c8ad;}
.miksz-halloween-banner .hw-close {position:absolute;right:11px;top:50%;transform:translateY(-50%);border:0;
    cursor:pointer;color:white;background:transparent;font-size:23px;line-height:1;width:30px;height:30px;border-radius:7px;}
.miksz-halloween-banner .hw-close:hover,.miksz-halloween-banner .hw-close:focus-visible {background:#ffffff20;outline-offset:2px;}
.miksz-halloween-banner[hidden] {display:none!important;}

/* Véletlenszerűen elhelyezett halloweenes dekorok PNG-kkel. */
.miksz-halloween-decor {
    position:fixed;
    inset:0;
    pointer-events:none;
    z-index:2;
    overflow:hidden;
}
.miksz-halloween-decor .hw-decor-item {
    position:fixed;
    user-select:none;
    width:var(--hw-size, 72px);
    height:var(--hw-size, 72px);
    opacity:var(--hw-opacity, .17);
    background-position:center;
    background-size:contain;
    background-repeat:no-repeat;
    filter:drop-shadow(0 4px 12px rgba(0,0,0,.12));
    animation:hw-drift var(--hw-duration, 10s) ease-in-out infinite;
    animation-delay:var(--hw-delay, 0s);
    transform:rotate(var(--hw-rotate, 0deg));
}
.miksz-halloween-decor .hw-decor-item.type-pumpkin {background-image:url('../img/halloween/pumpkin.png');}
.miksz-halloween-decor .hw-decor-item.type-bat {background-image:url('../img/halloween/bat.png');}
.miksz-halloween-decor .hw-decor-item.type-witch {background-image:url('../img/halloween/witch.png'); width:calc(var(--hw-size, 72px) * 1.45);}
.miksz-halloween-decor .hw-decor-item.type-web {
    background-image:url('../img/halloween/web.png');
    opacity:var(--hw-opacity, .13);
    animation:none;
}
.miksz-halloween-decor .hw-decor-item.type-web.mirror {
    transform:scaleX(-1) rotate(var(--hw-rotate, 0deg));
    transform-origin:center;
}

@keyframes hw-drift {
    0%,100% { transform:translate3d(0,0,0) rotate(var(--hw-rotate, 0deg)); }
    50% { transform:translate3d(var(--hw-shift-x, 10px), var(--hw-shift-y, -12px), 0) rotate(calc(var(--hw-rotate, 0deg) + 4deg)); }
}

@media (max-width:720px){
  .miksz-halloween-banner .hw-inner{padding:12px 40px 12px 12px;justify-content:center;gap:7px;}
  body.miksz-halloween .site-header.miksz-header::before{right:2%;font-size:55px;opacity:.4;}
  body.miksz-halloween .hero-box::after{opacity:.12; width:100px; height:100px;}
  .miksz-halloween-decor .hw-decor-item {filter:drop-shadow(0 3px 8px rgba(0,0,0,.10));}
}
@media (prefers-reduced-motion:reduce){
  .miksz-halloween-decor .hw-decor-item {animation:none;}
}
