/* Hannibal · carte vedette et fiche des offres. Charte Fusion : Cinzel (titres), Cormorant Garamond (texte), jetons --go-. */
.hno-card{all:unset;box-sizing:border-box;display:flex;align-items:stretch;gap:var(--go-space-3,12px);inline-size:100%;max-inline-size:520px;margin-inline:auto;padding:10px;cursor:pointer;
  border-radius:var(--go-radius-lg,16px);border:1.5px solid var(--go-r-legendaire,#FFC84A);color:var(--go-gold-light,#FFF0C0);
  background:radial-gradient(120% 140% at 0% 0%,rgba(255,200,74,.22),transparent 55%),linear-gradient(160deg,#2a1d10 0%,#140f0b 60%,#0b0908 100%);
  box-shadow:0 0 0 1px rgba(0,0,0,.6) inset,0 0 22px rgba(255,200,74,.28),0 10px 26px rgba(0,0,0,.55);font-family:var(--go-font-body);text-align:start;position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent}
.hno-card::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,240,200,.18) 50%,transparent 60%);transform:translateX(-120%);animation:hno-shine 4.5s ease-in-out 1.2s infinite;pointer-events:none}
[dir=rtl] .hno-card::after,.hno-card[dir=rtl]::after{animation-name:hno-shine-rtl}
@keyframes hno-shine{0%,70%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@keyframes hno-shine-rtl{0%,70%{transform:translateX(120%)}100%{transform:translateX(-120%)}}
@media (prefers-reduced-motion:reduce){.hno-card::after{animation:none;display:none}}
.hno-card:focus-visible{outline:3px solid var(--go-gold,#F2CF7A);outline-offset:3px}
.hno-card:active{transform:scale(.985)}
.hno-pic{flex:0 0 auto;inline-size:84px;block-size:112px;border-radius:var(--go-radius-md,12px);overflow:hidden;border:1px solid rgba(255,200,74,.7);box-shadow:0 0 14px rgba(255,200,74,.35)}
.hno-pic img{display:block;inline-size:100%;block-size:100%;object-fit:cover;object-position:50% 18%}
.hno-txt{display:flex;flex-direction:column;justify-content:center;gap:2px;min-inline-size:0;flex:1}
.hno-kick{font-family:var(--go-font-display);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--go-r-legendaire,#FFC84A);display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0}
.hno-prem{font-family:var(--go-font-display);font-size:12px;letter-spacing:.06em;padding:1px 7px;border-radius:var(--go-radius-pill,999px);background:linear-gradient(180deg,#FFE7A6,#C9952F);color:#2a1a05;font-weight:700}
.hno-nm{font-family:var(--go-font-display);font-weight:700;font-size:24px;line-height:1.1;color:#FFF3D2;text-shadow:0 2px 10px rgba(255,200,74,.45)}
.hno-epi{font-size:16px;line-height:1.2;color:#F3E3C0;font-style:italic}
.hno-from{font-size:16px;font-weight:700;color:var(--go-gold,#F2CF7A);font-variant-numeric:var(--go-nums,lining-nums tabular-nums)}
.hno-cta{align-self:flex-start;margin-block-start:4px;padding:6px 14px;min-block-size:32px;box-sizing:border-box;display:inline-flex;align-items:center;border-radius:var(--go-radius-pill,999px);
  background:linear-gradient(180deg,#FFE7A6,#E2B65A 55%,#B9852C);color:#2a1a05;font-family:var(--go-font-body);font-weight:700;font-size:15px}
.hno-heroes{margin-block-end:12px;max-inline-size:none}
.hno-gallery{margin-block:4px 12px}
#hnoHome{inline-size:min(100%,520px);margin:14px auto 6px;padding-inline:4px;box-sizing:border-box}
#hnoHome:empty{display:none}

/* ---------- fiche ---------- */
.hno-sheet{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;font-family:var(--go-font-body);color:#F6EBD2;opacity:0;transition:opacity .2s}
.hno-sheet.in{opacity:1}
@media (prefers-reduced-motion:reduce){.hno-sheet{transition:none}}
.hno-scrim{position:absolute;inset:0;background:rgba(4,4,8,.82);backdrop-filter:blur(3px)}
.hno-box{position:relative;inline-size:min(100%,520px);block-size:100%;max-block-size:100dvh;overflow-y:auto;overscroll-behavior:contain;background:#0b0908;box-shadow:0 0 40px rgba(255,200,74,.25)}
@media (min-height:900px) and (min-width:600px){.hno-box{block-size:auto;max-block-size:94dvh;border-radius:var(--go-radius-xl,20px);border:1px solid rgba(255,200,74,.5)}}
.hno-x{all:unset;box-sizing:border-box;position:absolute;inset-block-start:calc(10px + env(safe-area-inset-top,0px));inset-inline-end:10px;z-index:3;inline-size:44px;block-size:44px;border-radius:50%;display:grid;place-items:center;cursor:pointer;
  background:rgba(10,8,6,.62);border:1px solid rgba(255,200,74,.6);color:#FFF0C0}
.hno-x:focus-visible,.hno-buy:focus-visible,.hno-play:focus-visible{outline:3px solid var(--go-gold,#F2CF7A);outline-offset:2px}
.hno-stage{position:relative;block-size:min(62dvh,560px);overflow:hidden;background:#120d09}
.hno-poster,.hno-video{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover;object-position:50% 22%}
.hno-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,transparent 22%,transparent 50%,rgba(11,9,8,.92) 88%,#0b0908 100%);pointer-events:none}
.hno-play{all:unset;box-sizing:border-box;position:absolute;z-index:2;inset-block-start:calc(10px + env(safe-area-inset-top,0px));inset-inline-start:10px;inline-size:44px;block-size:44px;border-radius:50%;display:grid;place-items:center;cursor:pointer;
  background:rgba(10,8,6,.62);border:1px solid rgba(255,200,74,.6);color:#FFF0C0}
.hno-play[hidden]{display:none}
.hno-play svg,.hno-x svg{inline-size:22px;block-size:22px}
.hno-title{position:absolute;z-index:1;inset-inline:16px;inset-block-end:12px;text-align:center}
.hno-title .hno-kick{justify-content:center}
.hno-title h2{margin:4px 0 0;font-family:var(--go-font-display);font-weight:700;font-size:38px;letter-spacing:.06em;line-height:1.05;color:#FFF3D2;text-shadow:0 2px 16px rgba(255,200,74,.55),0 2px 2px #000}
.hno-title .hno-epi{margin:2px 0 0;font-size:19px}
.hno-str{margin:6px auto 0;display:inline-block;padding:3px 12px;border-radius:var(--go-radius-pill,999px);border:1px solid rgba(255,200,74,.7);background:rgba(20,14,8,.7);color:var(--go-r-legendaire,#FFC84A);font-weight:700;font-size:16px}
.hno-offers{padding:8px 14px calc(18px + env(safe-area-inset-bottom,0px))}
.hno-oT{margin:6px 0 2px;font-family:var(--go-font-display);font-size:20px;letter-spacing:.05em;color:var(--go-gold,#F2CF7A);text-align:center}
.hno-incl{margin:0 0 10px;text-align:center;font-size:16px;color:#E9D9B6}
.hno-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.hno-offer{position:relative;padding:10px 12px;border-radius:var(--go-radius-lg,16px);border:1px solid rgba(255,200,74,.35);background:linear-gradient(160deg,#21170d,#120d09)}
.hno-offer[data-tier="2"]{border-color:rgba(214,150,90,.6)}
.hno-offer[data-tier="3"]{border-color:rgba(190,206,222,.6)}
.hno-offer.best{border:1.5px solid var(--go-r-legendaire,#FFC84A);box-shadow:0 0 18px rgba(255,200,74,.3);background:radial-gradient(120% 100% at 50% 0%,rgba(255,200,74,.18),transparent 60%),linear-gradient(160deg,#2a1d10,#140f0b)}
.hno-best{position:absolute;inset-block-start:-9px;inset-inline-end:12px;padding:1px 10px;border-radius:var(--go-radius-pill,999px);background:linear-gradient(180deg,#FFE7A6,#C9952F);color:#2a1a05;font-weight:700;font-size:13px}
.hno-oh{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.hno-oh h3{margin:0;font-family:var(--go-font-display);font-size:16px;letter-spacing:.03em;color:#FFF0C8}
.hno-lv{color:var(--go-r-legendaire,#FFC84A);font-size:12px;letter-spacing:2px}
.hno-pieces{all:unset;box-sizing:border-box;inline-size:100%;margin:8px 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;cursor:pointer;border-radius:var(--go-radius-md,12px);-webkit-tap-highlight-color:transparent}
.hno-pieces:focus-visible,.hno-sheetbtn:focus-visible{outline:3px solid var(--go-gold,#F2CF7A);outline-offset:2px}
.hno-pieces:active .hno-pc{border-color:rgba(255,200,74,.6)}
.hno-tryl{grid-column:1/-1;justify-self:start;min-block-size:28px;display:inline-flex;align-items:center;font-size:15px;font-weight:700;color:var(--go-gold,#F2CF7A);text-decoration:underline;text-underline-offset:3px}
[dir=rtl] .hno-tryl{direction:rtl}
.hno-pc{aspect-ratio:1;border-radius:var(--go-radius-md,12px);background:radial-gradient(circle at 50% 40%,rgba(255,220,150,.16),rgba(0,0,0,.3) 70%);border:1px solid rgba(255,255,255,.08);display:grid;place-items:center}
.hno-pc img{inline-size:86%;block-size:86%;object-fit:contain;filter:drop-shadow(0 3px 5px rgba(0,0,0,.6))}
.hno-ob{display:flex;align-items:center;justify-content:space-between;gap:10px}
.hno-price{font-size:22px;font-weight:700;color:#FFF3D2;font-variant-numeric:var(--go-nums,lining-nums tabular-nums)}
.hno-buy{all:unset;box-sizing:border-box;min-block-size:44px;min-inline-size:110px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--go-radius-pill,999px);cursor:pointer;
  background:linear-gradient(180deg,#FFE7A6,#E2B65A 55%,#B9852C);color:#2a1a05;font-family:var(--go-font-body);font-weight:700;font-size:17px;box-shadow:0 4px 12px rgba(0,0,0,.45)}
.hno-buy:active{transform:translateY(1px)}
.hno-note{margin:12px 0 0;text-align:center;font-size:14px;color:#BFAF90}
.hno-msg{margin:6px 0 0;min-block-size:1.3em;text-align:center;font-size:16px;font-weight:700;color:var(--go-gold,#F2CF7A)}
.hno-fs{margin:8px 0 0}
.hno-sheetbtn{all:unset;box-sizing:border-box;min-block-size:44px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--go-radius-pill,999px);cursor:pointer;
  border:1.5px solid var(--go-r-legendaire,#FFC84A);background:rgba(20,14,8,.72);color:#FFF0C0;font-family:var(--go-font-display);font-weight:700;font-size:15px;letter-spacing:.04em}
/* fiche héros animée (#48) au-dessus de la vitrine */
.hno-hs{position:fixed;inset:0;z-index:2147483001;background:var(--go-ink-2,#08090F)}
.hno-hs>.hs-root{z-index:0}

/* toast global de l'accueil déplacé en haut quand il recouvrirait la carte Hannibal (voir guardToast, hannibal.js) */
#toast.hno-toast-top{top:calc(env(safe-area-inset-top, 0px) + 72px);bottom:auto;transform:translateX(-50%) translateY(-20px)}
#toast.hno-toast-top.show{transform:translateX(-50%) translateY(0)}

/* ---------- avatars premium de la galerie du profil (Hannibal, lion noir) ---------- */
.av-prem-block{margin-block:2px 14px}
.av-prem-t{margin:0 0 8px;font-family:var(--go-font-display);font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-align:center;color:var(--go-gold,#F2CF7A)}
.av-prem-row.avsec.av-heroes{grid-template-columns:repeat(2,minmax(0,112px));justify-content:center}
.avopt.av-hero.av-prem{min-block-size:44px}
.avopt.av-hero.av-prem .av-price{color:#FFE7A6;border-color:rgba(255,200,74,.7);font-variant-numeric:var(--go-nums,lining-nums tabular-nums)}
.avopt.av-hero.av-prem .av-hn{font-family:var(--go-font-display);color:#FFF3D2}
.hno-lstage .hno-poster{object-position:50% 24%}
.hno-loffer .hno-incl{text-align:center}
.hno-lion-offer{margin-block:10px 4px}
.hno-pack-av{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;inline-size:100%;min-block-size:48px;margin:2px 0 8px;padding:4px 10px 4px 4px;border-radius:var(--go-radius-md,12px);border:1px solid rgba(255,200,74,.55);background:rgba(255,200,74,.1);cursor:pointer;font-family:var(--go-font-body);font-size:15px;line-height:1.25;color:#FFF0C8;-webkit-tap-highlight-color:transparent}
.hno-pack-av img{flex:none;inline-size:40px;block-size:40px;border-radius:10px;object-fit:cover}
.hno-pack-av:focus-visible{outline:3px solid var(--go-gold,#F2CF7A);outline-offset:2px}
.hno-lion-pack{margin-top:4px}
.hno-lion-event{margin:8px 0 0;font-size:.92em;line-height:1.35;color:rgba(255,236,196,.92);text-align:center}
.hno-lstage .hno-lvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 24%;opacity:0;transition:opacity .35s}
.hno-lstage.is-playing .hno-lvid{opacity:1}
@media (prefers-reduced-motion:reduce){.hno-lstage .hno-lvid{display:none}}
.hno-offers .hno-fs{text-align:center}
