/* HALLOWEEN 2026 : chargé seulement si halloween == '1' (interrupteur à part, voir SAISON.md).
   DA tonic.lu en mode Halloween : aplats nets (bleu nuit, jaune lune, orange citrouille, rose promo), sans dégradé ni flou. */

/* ---------- héros de l'accueil ---------- */
.d26 .site.d26-acc2 .hw-heros{background:#0b2433}
.d26 .site.d26-acc2 .hw-heros::after{display:none}
.hw-fond{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.hw-lune{position:absolute;right:-90px;top:-120px;width:380px;height:380px;border-radius:50%;background:#ffd166;animation:hw-lune 8s ease-in-out infinite alternate}
.hw-lune::before,.hw-lune::after{content:"";position:absolute;border-radius:50%;background:#f5c04f}
.hw-lune::before{left:70px;top:150px;width:54px;height:54px}
.hw-lune::after{left:150px;top:230px;width:30px;height:30px;box-shadow:-70px 40px 0 -4px #f5c04f}
@keyframes hw-lune{to{transform:translate(-10px,8px)}}
.hw-etoile{position:absolute;width:6px;height:6px;background:#ffd166;border-radius:1px;transform:rotate(45deg);animation:hw-scintille 2.6s ease-in-out infinite}
@keyframes hw-scintille{0%,100%{opacity:.15}50%{opacity:.9}}
.hw-chauve{position:absolute;fill:#23455c;animation:hw-vol 11s linear infinite}
.hw-chauve path{transform-origin:60px 14px;animation:hw-ailes .32s ease-in-out infinite alternate}
.hw-ch1{width:70px;top:22%;left:-80px}
.hw-ch2{width:46px;top:12%;left:-60px;animation-duration:15s;animation-delay:-6s}
.hw-ch3{width:34px;top:58%;left:-50px;animation-duration:19s;animation-delay:-11s;fill:#1d3d52}
@keyframes hw-vol{0%{transform:translate(0,0)}25%{transform:translate(28vw,-30px)}50%{transform:translate(55vw,20px)}75%{transform:translate(80vw,-18px)}100%{transform:translate(calc(100vw + 140px),10px)}}
@keyframes hw-ailes{from{transform:scaleY(1)}to{transform:scaleY(.35)}}
.hw-araignee{position:absolute;right:31%;top:0;display:flex;flex-direction:column;align-items:center;animation:hw-descend 6s ease-in-out infinite alternate;transform-origin:top center}
.hw-araignee i{display:block;width:1.5px;height:120px;background:rgba(255,255,255,.45)}
.hw-araignee svg{width:38px;margin-top:-6px;animation:hw-balance 2.4s ease-in-out infinite alternate;transform-origin:50% 0}
.hw-araignee svg g{stroke:#ffd166}
.hw-araignee svg ellipse,.hw-araignee svg circle:first-of-type{fill:#ffd166}
.hw-araignee svg circle:nth-of-type(2),.hw-araignee svg circle:nth-of-type(3){fill:#0b2433}
@keyframes hw-descend{from{transform:translateY(-70px)}to{transform:translateY(0)}}
@keyframes hw-balance{from{transform:rotate(-6deg)}to{transform:rotate(6deg)}}
.hw-toiles{position:absolute;left:0;top:0;width:150px;height:150px;pointer-events:none}

.d26 .site.d26-acc2 .hw-heros .a2-heros-in{z-index:2}
.hw-badge{display:inline-block;background:#ffd166;color:#0b2433;border-radius:999px;padding:7px 16px;font-size:13.5px;font-weight:800;letter-spacing:.02em;margin-bottom:18px}
.hw-badge i{display:inline-block;margin-right:6px;animation:hw-fantome 2.8s ease-in-out infinite}
@keyframes hw-fantome{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.d26 .site.d26-acc2 .hw-heros h1 em{background:none;-webkit-background-clip:initial;background-clip:initial;color:#ff8f2e}
.d26 .site.d26-acc2 .hw-heros p{color:#d6e4ee}
.d26 .site.d26-acc2 .hw-ticket .a2-ticket-lib{font-weight:600;color:#1c2b36}
.d26 .site.d26-acc2 .hw-ticket .a2-compte{color:#e5007e}
.d26 .site.d26-acc2 .hw-btn{background:#ff8f2e;color:#0b2433}
.d26 .site.d26-acc2 .hw-btn i{animation:hw-rebond 1.6s ease-in-out infinite}
@keyframes hw-rebond{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
.d26 .site.d26-acc2 .hw-heros .hw-mention{font-size:12.5px;color:#9fb0bd;margin:16px 0 0}
.d26 .site.d26-acc2 .hw-vis .a2-fl-prix s{font:600 13px var(--corps);color:#7a8692;margin-left:4px}
.d26 .site.d26-acc2 .hw-vis .a2-fl-prix{color:#e5007e}
.hw-pastille{position:absolute;z-index:4;right:-4px;top:-26px;width:104px;height:104px;border-radius:50%;background:#e5007e;color:#fff;display:grid;place-items:center;animation:hw-pastille 3.4s ease-in-out infinite}
.hw-pastille b{font:700 34px/1 var(--titre)}
@keyframes hw-pastille{0%,100%{transform:rotate(-10deg) scale(1)}50%{transform:rotate(4deg) scale(1.06)}}
.hw-scene-heros{position:absolute;z-index:4;left:33%;bottom:-86px;display:flex;align-items:flex-start;pointer-events:none}
.hw-scene-heros .hw-fantome{width:104px}
.hw-scene-heros .hw-boo{position:absolute;left:58px;top:-30px;margin:0}
.hw-citrouille g{animation:hw-flamme 1.7s steps(2,end) infinite}
@keyframes hw-sautille{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-10px) rotate(3deg)}}
@keyframes hw-flamme{0%,100%{fill:#ffd166}50%{fill:#ffe39a}}

/* ---------- sélection Halloween (sous le héros) ---------- */
.d26 .site.d26-acc2 .hw-selection{position:relative}
.d26 .site.d26-acc2 .hw-selection h2{display:flex;align-items:center;gap:10px}
.hw-h2-ico{display:inline-grid;place-items:center;width:38px;height:38px;flex:none;border-radius:12px;background:#ff8f2e;color:#0b2433;font-size:19px}
.hw-h2-ico i{animation:hw-fantome 2.8s ease-in-out infinite}
/* cartes de la sélection : même carte et même survol que les autres rails, couleurs Halloween (27/10 : panneau refusé) */
.d26 .site.d26-acc2 .hw-selection .carte{position:relative;background:#ff8f2e;border-color:#ff8f2e}
.d26 .site.d26-acc2 .hw-selection .carte .img{background:#fff1e3}
.d26 .site.d26-acc2 .hw-selection .carte .img img{mix-blend-mode:multiply}
.d26 .site.d26-acc2 .hw-selection .carte .marque{color:#0b2433}
.d26 .site.d26-acc2 .hw-selection .carte .nom{color:#0b2433}
.d26 .site.d26-acc2 .hw-selection .carte .variante,.d26 .site.d26-acc2 .hw-selection .carte .au-kg{color:#4a3320}
.d26 .site.d26-acc2 .hw-selection .carte .prix b{color:#0b2433}
.d26 .site.d26-acc2 .hw-selection .carte .prix s{color:#4a3320}
.d26 .site.d26-acc2 .hw-selection .carte.solde .prix b{color:#0b2433}
.d26 .site.d26-acc2 .hw-selection .carte .stock.ok{color:#0b2433}
.d26 .site.d26-acc2 .hw-selection .carte .btn-bleu{background:#0b2433!important;border-color:#0b2433!important;color:#fff!important}
.d26 .site.d26-acc2 .hw-selection .carte .btn-bleu:hover{background:#163a50!important;border-color:#163a50!important}
.d26 .site.d26-acc2 .hw-selection .carte .coeur{background:#0b2433;color:#fff}
.d26 .site.d26-acc2 .hw-selection .carte .badge.top{background:#0b2433;color:#fff}
.d26 .site.d26-acc2 .hw-selection .carte .badge.promo{background:#e5007e;color:#fff}
.d26 .site.d26-acc2 .hw-selection .carte::after{content:"";position:absolute;right:0;top:0;width:58px;height:58px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cg fill='none' stroke='%23fff3e6' stroke-width='1.3'%3E%3Cpath d='M0 0 60 60M0 0 30 60M0 0 60 30M0 0 0 60M0 0 60 0'/%3E%3Cpath d='M0 14Q8 10 10 10 10 8 14 0M0 28Q16 22 21 21 22 16 28 0M0 44Q26 34 33 33 34 26 44 0'/%3E%3C/g%3E%3C/svg%3E") no-repeat right top/100%;transform:scaleX(-1);pointer-events:none;z-index:1}
.d26 .site.d26-acc2 .hw-selection .carte:nth-child(3n+2)::before{content:"";position:absolute;left:46%;top:0;width:22px;height:38px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 70'%3E%3Cpath d='M20 0v34' stroke='%230b2433' stroke-width='1.2'/%3E%3Cg stroke='%230b2433' stroke-width='2.4' stroke-linecap='round' fill='none'%3E%3Cpath d='M16 46 7 39 2 44M16 50 5 50 1 56M17 54 9 60 7 67M24 46 33 39 38 44M24 50 35 50 39 56M23 54 31 60 33 67'/%3E%3C/g%3E%3Cellipse cx='20' cy='52' rx='6.5' ry='8' fill='%230b2433'/%3E%3Ccircle cx='20' cy='41' r='5' fill='%230b2433'/%3E%3Ccircle cx='18' cy='40.5' r='1.4' fill='%23ffd166'/%3E%3Ccircle cx='22' cy='40.5' r='1.4' fill='%23ffd166'/%3E%3C/svg%3E") no-repeat center top/100% 100%;z-index:3;pointer-events:none;transform-origin:50% 0;animation:hw-araignee-carte 3.2s ease-in-out infinite}
@keyframes hw-araignee-carte{0%,100%{transform:translateY(-10px) rotate(-4deg)}50%{transform:translateY(6px) rotate(4deg)}}

/* ---------- décorations de tout le site (ajoutées par halloween.js) ---------- */
.hw-guirlande{position:relative;height:22px;margin-bottom:-22px;z-index:30;pointer-events:none;overflow:hidden;
  background:repeat-x top/84px 22px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 84 22'%3E%3Cpath d='M0 1Q42 7 84 1' fill='none' stroke='%230b2433' stroke-width='1.2'/%3E%3Cpath d='M4 2h16L12 18z' fill='%23ff8f2e'/%3E%3Cpath d='M25 4h16L33 20z' fill='%230b2433'/%3E%3Cpath d='M46 4h16L54 20z' fill='%23ffd166'/%3E%3Cpath d='M66 2h16L74 18z' fill='%23e5007e'/%3E%3C/svg%3E");
  animation:hw-guirlande 4s ease-in-out infinite alternate;transform-origin:top}
@keyframes hw-guirlande{from{transform:skewX(-1.5deg)}to{transform:skewX(1.5deg)}}
.d26 .entete .logo{position:relative}
.hw-chapeau{position:absolute;left:-14px;top:-16px;width:34px;transform:rotate(-18deg);pointer-events:none;transition:transform .35s cubic-bezier(.2,1.4,.4,1)}
.d26 .entete .logo:hover .hw-chapeau{transform:rotate(-26deg) translateY(-4px)}
.hw-vol{position:fixed;z-index:2147482000;left:-90px;top:30vh;width:64px;fill:#0b2433;pointer-events:none;animation:hw-vol-ecran 5.5s cubic-bezier(.45,.05,.55,.95) forwards}
.hw-vol path{transform-origin:60px 14px;animation:hw-ailes .2s ease-in-out infinite alternate}
@keyframes hw-vol-ecran{0%{transform:translate(0,0) scale(.7)}30%{transform:translate(35vw,-14vh) scale(1)}60%{transform:translate(65vw,6vh) scale(.9)}100%{transform:translate(calc(100vw + 180px),-22vh) scale(.6)}}
.hw-pied-deco{position:relative;height:0;max-width:1240px;margin:0 auto;pointer-events:none}
.hw-scene-g{position:absolute;left:3%;bottom:-8px;display:flex;align-items:flex-start}
.hw-scene-g .hw-citrouille{width:78px;height:auto;animation:hw-sautille 2.6s ease-in-out infinite}
.hw-fantome{width:92px;height:auto;animation:hw-flotte 3.2s ease-in-out infinite}
@keyframes hw-flotte{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-9px) rotate(2deg)}}
.hw-boo{margin:-4px 0 0 -6px;background:#ffd166;color:#e06a0f;font:700 24px/1 var(--titre,Rajdhani),sans-serif;letter-spacing:.04em;padding:8px 14px 6px;border-radius:999px 999px 999px 4px;transform-origin:0 100%;animation:hw-boo 6s ease-in-out infinite}
@keyframes hw-boo{0%,12%{transform:scale(0) rotate(-12deg)}18%{transform:scale(1.15) rotate(-6deg)}22%,72%{transform:scale(1) rotate(-6deg)}78%,100%{transform:scale(0) rotate(-12deg)}}
.hw-bat{position:absolute;right:5%;bottom:14px;width:118px;height:auto;animation:hw-flotte 2.6s ease-in-out -1s infinite}
.hw-aile{transform-origin:66px 44px;animation:hw-bat-g .4s ease-in-out infinite alternate}
.hw-aile-d{transform-origin:94px 44px;animation-name:hw-bat-d}
@keyframes hw-bat-g{to{transform:rotate(14deg) scaleY(.8)}}
@keyframes hw-bat-d{to{transform:rotate(-14deg) scaleY(.8)}}

/* ---------- pastille du mode test Halloween (à gauche : celle de l'aperçu est à droite) ---------- */
.hw-test{position:fixed;left:12px;bottom:12px;z-index:2147483001;background:#ff8f2e;color:#0b2433!important;font:700 12px/1 Inter,Arial,sans-serif;padding:9px 12px;border-radius:999px;box-shadow:0 6px 18px rgba(0,0,0,.25);text-decoration:none!important}

/* ---------- tablette / téléphone ---------- */
@media (max-width:991px){
  .hw-lune{width:190px;height:190px;right:-70px;top:-100px}
  .hw-lune::before{left:40px;top:120px;width:34px;height:34px}
  .hw-lune::after{display:none}
  .hw-araignee{right:8%}
  .hw-araignee i{height:70px}
  .hw-scene-heros{left:2%;bottom:-28px}.hw-scene-heros .hw-fantome{width:84px}
  .hw-pastille{right:0;top:-10px;width:84px;height:84px}
  .hw-pastille b{font-size:27px}
}
@media (max-width:640px){
  .hw-lune{width:170px;height:170px;right:-60px;top:-70px}
  .hw-lune::before{left:40px;top:96px;width:30px;height:30px}
  .hw-lune::after{display:none}
  .hw-araignee,.hw-ch3{display:none}
  .hw-toiles{width:90px;height:90px}
  .hw-badge{font-size:12px;padding:6px 12px;margin-bottom:12px}
  .hw-scene-heros{left:-4px;bottom:-34px}.hw-scene-heros .hw-fantome{width:60px}
  .hw-pastille{width:66px;height:66px;top:-14px}
  .hw-pastille b{font-size:21px}
  .d26 .site.d26-acc2 .hw-vis .a2-fl-prix s{display:none}
  .hw-guirlande{height:16px;margin-bottom:-16px;background-size:62px 16px}
  .hw-chapeau{width:26px;left:-10px;top:-12px}
  .hw-scene-g .hw-citrouille{width:56px}.hw-boo{font-size:18px;padding:6px 10px 4px}.hw-bat{width:70px;bottom:auto;top:-30px}
}
@media (prefers-reduced-motion:reduce){
  .hw-fond *,.hw-heros *,.hw-guirlande,.hw-pied-deco *,.hw-chapeau,.hw-h2-ico i,.hw-selection .carte::before{animation:none!important}
  .hw-chauve{display:none}
  .hw-vol{display:none}
}
