/* ============================================================
   wahidsui.dk — ENHANCEMENT-LAG  (enhance.css)
   Lægges OVEN PÅ den eksisterende side. Erstatter intet.
   Alt her er nyt og scoped med .wsx-* så det ikke kolliderer
   med sitets egne klasser (.hero, .om__body, .section ...).
   ============================================================ */

:root{
  --wsx-gold:#d2a85f; --wsx-gold-soft:#e8cfa0; --wsx-red:#8d1f18;
  --wsx-ink:#f4ede2; --wsx-muted:#a89880;
  --wsx-serif:"Fraunces","Didot","Playfair Display",Georgia,serif;
  --wsx-sans:"Inter Tight",-apple-system,"Helvetica Neue",Arial,sans-serif;
}

/* ---------- 1) INTRO + TÆPPE — tæpperne ER baggrunden, titel ovenpå ---------- */
/* TÆPPER = toplaget (dækker skærmen lukket). Parter ved .wsx-part */
.wsx-curtain{position:fixed;top:0;bottom:0;width:51%;z-index:9000;pointer-events:none;
  transition:transform 1.7s cubic-bezier(.72,0,.28,1)}
.wsx-curtain.L{left:0;background:repeating-linear-gradient(90deg,#5a130c 0 26px,#7c1b12 26px 52px);
  box-shadow:inset -40px 0 70px rgba(0,0,0,.75)}
.wsx-curtain.R{right:0;background:repeating-linear-gradient(90deg,#7c1b12 0 26px,#5a130c 26px 52px);
  box-shadow:inset 40px 0 70px rgba(0,0,0,.75)}
.wsx-curtain.L.wsx-part{transform:translateX(-101%)}
.wsx-curtain.R.wsx-part{transform:translateX(101%)}
/* TITEL = ovenpå tæpperne, skarp, med blød mørk vignette for læsbarhed */
#wsx-titles{position:fixed;inset:0;z-index:9001;display:flex;align-items:center;justify-content:center;
  pointer-events:none;transition:opacity .6s ease;
  background:radial-gradient(60% 50% at 50% 50%,rgba(0,0,0,.55),transparent 75%)}
#wsx-titles.gone{opacity:0}
.wsx-titles{text-align:center;font-family:var(--wsx-serif)}
.wsx-titles span{display:block;opacity:0;animation:wsxTin 1.7s cubic-bezier(.2,.7,.2,1) forwards;
  text-shadow:0 2px 34px rgba(0,0,0,.65)}
/* filmisk linje-for-linje: hver linje toner op med blur, med god luft imellem */
.wsx-l1{font-family:var(--wsx-sans);font-size:12px;letter-spacing:.55em;
  text-transform:uppercase;color:var(--wsx-gold-soft);animation-delay:.6s}
.wsx-l2{font-size:clamp(42px,9vw,94px);color:#fff;margin:18px 0 10px;letter-spacing:.01em;animation-delay:1.9s}
.wsx-l3{font-style:italic;font-size:clamp(16px,3vw,24px);color:var(--wsx-gold);animation-delay:3.3s}
@keyframes wsxTin{0%{opacity:0;transform:translateY(24px) scale(.985);filter:blur(9px)}
  100%{opacity:1;transform:none;filter:none}}
#wsx-skip{position:fixed;bottom:24px;right:24px;z-index:9002;background:rgba(10,8,7,.45);
  border:1px solid rgba(232,207,160,.5);color:var(--wsx-gold-soft);padding:9px 20px;
  border-radius:99px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  cursor:pointer;font-family:var(--wsx-sans);transition:opacity .5s;backdrop-filter:blur(3px)}

/* ---------- 1b) HERO-TITEL = action-film-rollepræsentation ----------
   Sitets egne linjer (Skuespiller/Instruktør/Foredragsholder) slår ind én for én,
   punch op nedefra med blur, lige når tæppet parter. Kun når JS kører (.wsx-heroanim). */
.wsx-heroanim .hero__title .t-red,
.wsx-heroanim .hero__title .t-ink,
.wsx-heroanim .hero__title .t-gold{opacity:0;display:inline-block;will-change:transform,opacity}
.wsx-heroanim.wsx-open .hero__title .t-red{animation:wsxRole .95s cubic-bezier(.16,1,.3,1) .55s forwards}
.wsx-heroanim.wsx-open .hero__title .t-ink{animation:wsxRole .95s cubic-bezier(.16,1,.3,1) .95s forwards}
.wsx-heroanim.wsx-open .hero__title .t-gold{animation:wsxRole 1.05s cubic-bezier(.16,1,.3,1) 1.4s forwards}
@keyframes wsxRole{
  0%{opacity:0;transform:translateY(46px) scale(1.12);filter:blur(12px)}
  55%{opacity:1;filter:blur(0)}
  100%{opacity:1;transform:none;filter:none}}
@media(prefers-reduced-motion:reduce){
  .wsx-heroanim .hero__title .t-red,.wsx-heroanim .hero__title .t-ink,.wsx-heroanim .hero__title .t-gold{opacity:1;animation:none}}

/* ---------- 2) RØG-CANVAS (injiceres INDE i den eksisterende .hero) ---------- */
#wsx-smoke{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
/* sikrer at hero er positionerings-kontekst uden at ændre dens udseende */
.hero{position:relative}
.hero__image{position:relative;z-index:0}
.hero__text{position:relative;z-index:2}

/* ---------- 3) PREMIERE-HJØRNE (fixed badge + flip-nedtælling) ---------- */
#wsx-corner{position:fixed;left:22px;bottom:22px;z-index:400;
  display:flex;flex-direction:column;gap:10px;align-items:flex-start;font-family:var(--wsx-sans)}
#wsx-corner.hide{opacity:0;transform:translateY(14px);pointer-events:none;transition:.6s}
.wsx-callabel{display:inline-block;font-size:12px;letter-spacing:.06em;text-decoration:none;
  color:var(--wsx-gold-soft);background:rgba(20,16,14,.85);border:1px solid rgba(210,168,95,.35);
  padding:8px 15px;border-radius:99px;backdrop-filter:blur(4px);transition:background .3s,border-color .3s}
.wsx-callabel b{font-weight:600;color:#fff}
.wsx-callabel:hover{background:rgba(210,168,95,.16);border-color:rgba(210,168,95,.6)}
/* Kalender-popover */
#wsx-calpop{position:absolute;left:0;bottom:calc(100% + 10px);width:230px;
  background:#161210;border:1px solid rgba(210,168,95,.3);border-radius:14px;overflow:hidden;
  box-shadow:0 22px 50px rgba(0,0,0,.55);opacity:0;transform:translateY(8px);pointer-events:none;
  transition:opacity .25s ease,transform .25s ease}
#wsx-corner.wsx-open #wsx-calpop{opacity:1;transform:none;pointer-events:auto}
.wsx-cptop{padding:13px 16px;font-family:var(--wsx-serif);font-size:15px;color:var(--wsx-ink);
  border-bottom:1px solid rgba(210,168,95,.14);line-height:1.3}
.wsx-cptop small{font-family:var(--wsx-sans);font-size:11px;letter-spacing:.06em;color:var(--wsx-gold-soft)}
.wsx-cpr{display:block;padding:11px 16px;font-family:var(--wsx-sans);font-size:13px;color:var(--wsx-ink);
  text-decoration:none;border-bottom:1px solid rgba(210,168,95,.08);transition:background .2s}
.wsx-cpr:last-child{border-bottom:0}
.wsx-cpr:hover{background:rgba(210,168,95,.12)}
.wsx-flipwrap{display:flex;flex-direction:column;gap:5px}
.wsx-flipcap{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--wsx-muted)}
.wsx-flip{display:flex;gap:6px}
.wsx-flip div{background:rgba(20,16,14,.82);border:1px solid rgba(210,168,95,.25);
  border-radius:7px;padding:6px 8px;min-width:38px;text-align:center;backdrop-filter:blur(4px)}
.wsx-flip b{display:block;font-family:var(--wsx-serif);font-size:18px;color:var(--wsx-ink);line-height:1}
.wsx-flip span{font-size:8px;letter-spacing:.15em;color:var(--wsx-muted);text-transform:uppercase}
@media(max-width:820px){#wsx-corner{transform:scale(.82);transform-origin:bottom left}}

/* ---------- 4) KINETISK OM (forstærker sitets EGEN #om, ender i dens layout) ---------- */
.wsx-word{display:inline-block;opacity:0;transform:translateY(24px) rotate(var(--r,0deg));
  transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.wsx-word.in{opacity:1;transform:none}

/* ---------- 5) "LIGE NU"-TIDSLINJE — CENTRERET & LEVENDE ---------- */
#wsx-ligenu{position:relative;background:radial-gradient(1100px 520px at 50% -6%,#1c1311,#0d0a09 62%);
  color:var(--wsx-ink);padding:104px 0 118px;font-family:var(--wsx-sans);overflow:hidden}
/* svagt levende lys bag sektionen */
#wsx-ligenu::after{content:"";position:absolute;left:50%;top:14%;width:520px;height:520px;
  transform:translateX(-50%);border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(210,168,95,.10),transparent 62%);animation:wsxBreathe 7s ease-in-out infinite}
@keyframes wsxBreathe{0%,100%{opacity:.5;transform:translateX(-50%) scale(1)}50%{opacity:1;transform:translateX(-50%) scale(1.12)}}
#wsx-ligenu .wsx-in{position:relative;z-index:1;max-width:960px;margin:0 auto;padding:0 24px;text-align:center}
.wsx-live{display:inline-flex;align-items:center;gap:9px;font-size:11px;letter-spacing:.3em;
  text-transform:uppercase;color:var(--wsx-gold);margin-bottom:12px}
.wsx-live::before{content:"";width:8px;height:8px;border-radius:99px;background:#e0342a;
  box-shadow:0 0 0 0 rgba(224,52,42,.7);animation:wsxPulse 1.7s infinite}
@keyframes wsxPulse{0%{box-shadow:0 0 0 0 rgba(224,52,42,.6)}70%{box-shadow:0 0 0 13px rgba(224,52,42,0)}100%{box-shadow:0 0 0 0 rgba(224,52,42,0)}}
#wsx-ligenu h2{font-family:var(--wsx-serif);font-weight:400;font-size:clamp(42px,7vw,74px);margin:4px 0 12px;line-height:1}
#wsx-ligenu .wsx-sub{color:var(--wsx-muted);margin:0 auto 64px;max-width:500px}

/* centreret tidslinje med vekslende sider */
.wsx-tl{position:relative;padding:6px 0}
.wsx-tl::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;transform:translateX(-50%);
  background:linear-gradient(var(--wsx-gold),rgba(210,168,95,.12))}
.wsx-ev{position:relative;width:50%;padding:0 42px 40px;box-sizing:border-box;text-align:right}
.wsx-ev:nth-child(even){margin-left:50%;text-align:left}
.wsx-ev::before{content:"";position:absolute;top:20px;width:15px;height:15px;border-radius:99px;
  background:#0d0a09;border:2px solid var(--wsx-gold);z-index:2}
.wsx-ev:nth-child(odd)::before{right:-8px}
.wsx-ev:nth-child(even)::before{left:-8px}
.wsx-ev.big::before{background:var(--wsx-gold);animation:wsxRing 2.1s infinite}
@keyframes wsxRing{0%{box-shadow:0 0 0 0 rgba(210,168,95,.6)}70%{box-shadow:0 0 0 15px rgba(210,168,95,0)}100%{box-shadow:0 0 0 0 rgba(210,168,95,0)}}
.wsx-card{display:inline-block;text-align:left;max-width:340px;background:rgba(27,21,18,.62);
  border:1px solid rgba(210,168,95,.16);border-radius:14px;padding:18px 20px;
  transition:transform .5s cubic-bezier(.16,1,.3,1),border-color .5s,box-shadow .5s}
.wsx-ev:hover .wsx-card{transform:translateY(-5px);border-color:rgba(210,168,95,.5);box-shadow:0 20px 46px rgba(0,0,0,.45)}
.wsx-ev.big .wsx-card{max-width:380px;background:linear-gradient(150deg,rgba(210,168,95,.17),rgba(27,21,18,.62));
  border-color:rgba(210,168,95,.5);box-shadow:0 0 44px rgba(210,168,95,.13)}
#wsx-ligenu .wsx-ev .d{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--wsx-muted)}
#wsx-ligenu .wsx-ev h3{font-family:var(--wsx-serif);font-weight:400;font-size:clamp(19px,2.6vw,26px);
  margin:7px 0 5px;line-height:1.12;color:var(--wsx-ink)}
#wsx-ligenu .wsx-ev.big h3{color:var(--wsx-gold)}
#wsx-ligenu .wsx-ev p{color:var(--wsx-muted);font-size:14.5px;margin-bottom:12px;line-height:1.5}
.wsx-evfoot{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.wsx-ev .tag{display:inline-block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  border:1px solid rgba(210,168,95,.32);color:var(--wsx-gold-soft);padding:6px 13px;border-radius:99px}
.wsx-ig{display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.08em;
  text-transform:uppercase;text-decoration:none;padding:6px 13px 6px 11px;border-radius:99px;color:#fff;
  background:linear-gradient(120deg,#f09433,#e6683c 30%,#dc2743 55%,#cc2366 78%,#bc1888);
  opacity:.92;transition:transform .3s,opacity .3s}
.wsx-ig:hover{opacity:1;transform:translateY(-1px)}
.wsx-ig svg{flex:0 0 auto}

/* levende entré: glider ind fra hver sin side mod midten */
.wsx-rv{opacity:0;transform:translateY(26px);transition:all .85s cubic-bezier(.16,1,.3,1)}
.wsx-ev.wsx-rv{transform:translateY(30px)}
.wsx-ev:nth-child(odd).wsx-rv{transform:translate(34px,18px)}
.wsx-ev:nth-child(even).wsx-rv{transform:translate(-34px,18px)}
.wsx-rv.in,.wsx-ev.wsx-rv.in,.wsx-ev:nth-child(odd).wsx-rv.in,.wsx-ev:nth-child(even).wsx-rv.in{opacity:1;transform:none}

@media(max-width:720px){
  .wsx-tl::before{left:7px}
  .wsx-ev,.wsx-ev:nth-child(even){width:100%;margin-left:0;text-align:left;padding:0 0 36px 32px}
  .wsx-ev::before,.wsx-ev:nth-child(odd)::before,.wsx-ev:nth-child(even)::before{left:0;right:auto}
  .wsx-card,.wsx-ev.big .wsx-card{max-width:none;display:block}
  .wsx-ev:nth-child(odd).wsx-rv,.wsx-ev:nth-child(even).wsx-rv{transform:translate(0,22px)}
}

/* ---------- 6) FLIP med FILM PÅ BAGSIDEN i #skuespil (02) ----------
   Kun billed-flisen flipper. Titel/meta/CTA + kortets STØRRELSE og PLACERING = originalt.
   FORSIDE = din poster (rolig). BAGSIDE (ved flip) = film af dine fotos + Se billeder.    */
#skuespil .proj-card__image{position:relative;perspective:1000px}
.wsx-imgi{position:relative;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.5,0,.2,1)}
#skuespil .proj-card__image.wsx-imgflip:hover .wsx-imgi,
#skuespil .proj-card__image.wsx-imgflip.flip .wsx-imgi{transform:rotateY(180deg)}
.wsx-imgface{backface-visibility:hidden;-webkit-backface-visibility:hidden}
/* FORSIDE i normalt flow → fastholder kortets originale højde */
.wsx-imgfront{position:relative;overflow:hidden;height:100%}
#skuespil .proj-card__image .wsx-imgi{height:100%}
/* forsiden fylder 4:5-boksen rent (ingen letterbox-huller/afskårne bunde);
   default center-lidt-opad, så ansigter (typisk i øverste tredjedel) bevares */
.wsx-imgfront img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 38%;transition:transform 6s ease-out}
/* bog-/lydbogs-covers vises HELT (contain) — rør ikke */
#skuespil .proj-card__image--book .wsx-imgfront img{object-fit:contain;object-position:center}
#skuespil .proj-card__image.wsx-imgflip:hover .wsx-imgfront img{transform:scale(1.05)}

/* --- per-billede object-position: holder ANSIGTET/motivet i frame (gennemgået 27/7) --- */
#skuespil .wsx-imgfront img[src*="familien-hassan"]{object-position:50% 42%}
#skuespil .wsx-imgfront img[src*="flip-din-fortid"]{object-position:50% 28%}
#skuespil .wsx-imgfront img[src*="rodderne"]{object-position:48% 34% !important}
#skuespil .wsx-imgfront img[src*="stolt-wahid"]{object-position:50% 24%}
#skuespil .wsx-imgfront img[src*="rend-mig"]{object-position:50% 18%}
#skuespil .wsx-imgfront img[src*="dv-blue"]{object-position:50% 38% !important}
#skuespil .wsx-imgfront img[src*="Besaettelsens-Fanger"]{object-position:26% 42%}
#skuespil .wsx-imgfront img[src*="tam-tyk-tatoveret"]{object-position:46% 34%}
#skuespil .wsx-imgfront img[src*="rusturen-promo"]{object-position:50% 46%}
#skuespil .wsx-imgfront img[src*="Prop-og-berta"]{object-position:46% 36%}
#skuespil .wsx-imgfront img[src*="de-rene-rum"]{object-position:46% 40%}
#skuespil .wsx-imgfront img[src*="onoff"]{object-position:46% 40%}
#skuespil .wsx-imgfront img[src*="praemieperker"]{object-position:48% 28% !important}
#skuespil .wsx-imgfront img[src*="ondt-blod-wahid"]{object-position:50% 28%}
#skuespil .wsx-imgfront img[src*="soelvgade-plakat"]{object-position:50% 34% !important}
#skuespil .wsx-imgfront img[src*="grillpolser"]{object-position:50% 34%}
#skuespil .wsx-imgfront img[src*="vore-faedres"]{object-position:12% 42% !important}
#skuespil .wsx-imgfront img[src*="parade"]{object-position:52% 40%}
#skuespil .wsx-imgfront img[src*="det-rene-hjerte"]{object-position:72% 40%}
#skuespil .wsx-imgfront img[src*="dansegarderoben"]{object-position:50% 42%}
#skuespil .wsx-imgfront img[src*="dag-og-nat"]{object-position:50% 46%}
#skuespil .wsx-imgfront img[src*="sygeplejersken"]{object-position:50% 22%}
#skuespil .wsx-imgfront img[src*="sommerdahl-wahid"]{object-position:40% 26%}
#skuespil .wsx-imgfront img[src*="vennerne"]{object-position:50% 32%}
#skuespil .wsx-imgfront img[src*="Fredlos"]{object-position:55% 48%}
#skuespil .wsx-imgfront img[src*="junglen-poster"]{object-position:50% 38%}
#skuespil .wsx-imgfront img[src*="ulven-kommer"]{object-position:50% 46%}
#skuespil .wsx-imgfront img[src*="bedrag"]{object-position:50% 38%}
#skuespil .wsx-imgfront img[src*="the-team"]{object-position:50% 30%}
#skuespil .wsx-imgfront img[src*="broen"]{object-position:50% 24%}
#skuespil .wsx-imgfront img[src*="Hvordan-mand-gor"]{object-position:50% 28%}
#skuespil .wsx-imgfront img[src*="foredrag-ledere"]{object-position:55% 30%}
.wsx-hint2{position:absolute;top:10px;right:10px;z-index:4;font-family:var(--wsx-sans);
  font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#fff;
  border:1px solid rgba(255,255,255,.6);border-radius:99px;padding:4px 11px;background:rgba(10,8,7,.34);
  backdrop-filter:blur(3px);pointer-events:none;transition:opacity .4s}
#skuespil .proj-card__image.wsx-imgflip:hover .wsx-hint2{opacity:0}

/* BAGSIDE = film-scene (overlay, samme størrelse som forsiden) */
.wsx-imgback{position:absolute;inset:0;transform:rotateY(180deg);overflow:hidden;background:#0c0908}
/* blurret udfyldning bag = ingen sorte bjælker ved forskellige billed-forhold */
.wsx-imgback .fbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  filter:blur(24px) brightness(.45) saturate(1.1);transform:scale(1.18);
  opacity:0;transition:opacity 1.3s ease}
/* selve billedet vises HELT (intet beskæres) centreret ovenpå */
.wsx-imgback .frame{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;
  opacity:0;transition:opacity 1.3s ease;z-index:1}
.wsx-imgback .frame.on,.wsx-imgback .fbg.on{opacity:1}
.wsx-imgback.playing .frame.on{animation:wsxKB 9s ease-in-out infinite alternate}
@keyframes wsxKB{from{transform:scale(1)}to{transform:scale(1.05)}}
.wsx-imgback::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(transparent 40%,rgba(8,6,5,.9))}
.wsx-igbar{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;justify-content:center;padding:14px}
.wsx-igbar a{display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:#fff;
  font-family:var(--wsx-sans);font-size:12px;letter-spacing:.05em;padding:9px 16px;border-radius:99px;
  background:linear-gradient(120deg,#f09433,#dc2743 55%,#bc1888)}
.wsx-filmdot{position:absolute;left:12px;top:12px;z-index:3;display:flex;gap:5px}
.wsx-filmdot i{width:6px;height:6px;border-radius:99px;background:rgba(255,255,255,.5)}
.wsx-filmdot i.on{background:#fff}

/* sikring: overskrifter i injicerede mørke sektioner må aldrig arve sitets mørke ink */
#wsx-journey h3,#wsx-journey h2{color:var(--wsx-ink)}

@media(prefers-reduced-motion:reduce){
  .wsx-word,.wsx-rv{opacity:1!important;transform:none!important}
  .wsx-badge svg,.wsx-imgback .frame,.wsx-imgi{animation:none;transition:none}
}

/* ---------- 7) FORBIND: farverige brand-fliser ---------- */
/* udvid sitets ikon-kolonne (var 24px) så den 42px-flise ikke overlapper navnet */
.musik-link.wsx-mlink{grid-template-columns:44px minmax(0,1fr) auto auto}
.musik-link.wsx-mlink .wsx-brandicon{justify-self:start}
/* ikon-flisen bliver en fuld brand-farvet flise med hvidt logo */
.wsx-brandicon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 12px rgba(0,0,0,.14);transition:transform .28s cubic-bezier(.16,1,.3,1)}
.wsx-brandicon svg{display:block}
.wsx-b-instagram .wsx-brandicon{background:linear-gradient(135deg,#feda75 0%,#fa7e1e 25%,#d62976 55%,#962fbf 80%,#4f5bd5 100%)}
.wsx-b-tiktok   .wsx-brandicon{background:#010101}
.wsx-b-facebook .wsx-brandicon{background:#1877F2}
.wsx-b-youtube  .wsx-brandicon{background:#FF0000}
.wsx-b-linkedin .wsx-brandicon{background:#0A66C2}
.wsx-b-spotify  .wsx-brandicon{background:#1DB954}
/* kortet får en diskret brand-tonet baggrund + brand-kant ved hover → farverig men rolig */
.wsx-mlink{transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s ease,border-color .28s ease,background .28s ease}
.wsx-mlink:hover{transform:translateY(-2px)}
.wsx-mlink:hover .wsx-brandicon{transform:scale(1.06)}
.wsx-b-instagram.wsx-mlink:hover{box-shadow:0 10px 26px rgba(214,41,118,.22);border-color:rgba(214,41,118,.5)}
.wsx-b-tiktok.wsx-mlink:hover{box-shadow:0 10px 26px rgba(0,0,0,.20);border-color:rgba(0,0,0,.35)}
.wsx-b-facebook.wsx-mlink:hover{box-shadow:0 10px 26px rgba(24,119,242,.22);border-color:rgba(24,119,242,.5)}
.wsx-b-youtube.wsx-mlink:hover{box-shadow:0 10px 26px rgba(255,0,0,.20);border-color:rgba(255,0,0,.45)}
.wsx-b-linkedin.wsx-mlink:hover{box-shadow:0 10px 26px rgba(10,102,194,.22);border-color:rgba(10,102,194,.5)}
.wsx-b-spotify.wsx-mlink:hover{box-shadow:0 10px 26px rgba(29,185,84,.24);border-color:rgba(29,185,84,.55)}

/* ---------- LIV: ikonerne danser i takt (music · liv · glæde) ---------- */
/* logoet bobber forskudt pr. brand → en lille visualizer-dans hele rækken igennem */
.wsx-brandicon svg{animation:wsxBob 2.2s ease-in-out infinite}
.wsx-b-instagram .wsx-brandicon svg{animation-delay:0s}
.wsx-b-tiktok   .wsx-brandicon svg{animation-delay:.18s}
.wsx-b-facebook .wsx-brandicon svg{animation-delay:.36s}
.wsx-b-youtube  .wsx-brandicon svg{animation-delay:.54s}
.wsx-b-linkedin .wsx-brandicon svg{animation-delay:.72s}
.wsx-b-spotify  .wsx-brandicon svg{animation-delay:.90s}
@keyframes wsxBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
/* Instagram-gradienten flyder levende */
.wsx-b-instagram .wsx-brandicon{background-size:180% 180%;animation:wsxIGflow 6s ease infinite}
@keyframes wsxIGflow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
/* legende pop + lille tilt ved hover (overtrumfer bob mens man holder over) */
.wsx-mlink:hover .wsx-brandicon{transform:scale(1.12) rotate(-5deg)}
.wsx-mlink:hover .wsx-brandicon svg{animation-play-state:paused}
/* Spotify-flisen får en blød "beat"-puls */
.wsx-b-spotify .wsx-brandicon{animation:wsxBeat 1.8s ease-in-out infinite}
@keyframes wsxBeat{0%,100%{box-shadow:0 4px 12px rgba(29,185,84,.25)}50%{box-shadow:0 6px 20px rgba(29,185,84,.55)}}
@media(prefers-reduced-motion:reduce){
  .wsx-brandicon svg,.wsx-b-instagram .wsx-brandicon,.wsx-b-spotify .wsx-brandicon{animation:none}}


/* ---------- 8) KLIPPEBORDET: to små 35mm-frames med levende video ---------- */
#wsx-billion{margin:0 0 52px}
.wsx-strip{background:linear-gradient(180deg,#141010,#0c0908);padding:34px 24px 30px;
  border-radius:0;position:relative;overflow:hidden}
.wsx-strip::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#521409}
.wsx-strip-head{text-align:center;margin-bottom:22px}
.wsx-strip-kick{font-family:var(--wsx-sans);font-size:11px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--wsx-gold-soft)}
.wsx-strip-row{display:flex;gap:28px;justify-content:center;align-items:flex-start;flex-wrap:wrap}
/* hver celle = et lille filmklip, let tiltet, retter sig op ved hover */
.wsx-cell{width:min(300px,86vw);background:#050403;padding:0 10px;border-radius:6px;
  box-shadow:0 18px 44px rgba(0,0,0,.55);transition:transform .5s cubic-bezier(.16,1,.3,1)}
.wsx-cell-a{transform:rotate(-2.2deg)}
.wsx-cell-b{transform:rotate(1.8deg) translateY(10px)}
.wsx-cell:hover{transform:rotate(0) translateY(-4px)}
/* 35mm perforeringshuller */
.wsx-cell-holes{height:14px;background:radial-gradient(circle at 8px 7px,#1d1712 4px,transparent 4.5px);
  background-size:22px 14px;background-repeat:repeat-x;background-position:center}
.wsx-cell-frame{position:relative;padding-top:56.25%;overflow:hidden;background:#000}
.wsx-cell-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.wsx-cell-cap{font-family:var(--wsx-serif);font-size:15px;color:var(--wsx-ink);text-align:center;
  padding:9px 4px 12px;margin:0}
.wsx-cell-cap span{font-family:var(--wsx-sans);font-size:11px;color:var(--wsx-muted);letter-spacing:.03em}
@media(max-width:760px){.wsx-cell-b{transform:rotate(1.8deg)}}

/* ---------- 8b) SUPERSTAR-SCENEN: lys, equalizer og sammenhæng ---------- */
/* fejende scenelys over klippebordet */
.wsx-spot{position:absolute;top:-30%;width:52%;height:150%;pointer-events:none;opacity:.55;mix-blend-mode:screen}
.wsx-spot-l{left:-10%;background:radial-gradient(45% 60% at 50% 0%,rgba(232,207,160,.20),transparent 70%);
  transform-origin:top center;animation:wsxSweepL 9s ease-in-out infinite}
.wsx-spot-r{right:-10%;background:radial-gradient(45% 60% at 50% 0%,rgba(210,80,50,.16),transparent 70%);
  transform-origin:top center;animation:wsxSweepR 11s ease-in-out infinite}
@keyframes wsxSweepL{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(7deg)}}
@keyframes wsxSweepR{0%,100%{transform:rotate(8deg)}50%{transform:rotate(-8deg)}}
/* header som koncertplakat */
.wsx-strip-head{position:relative;z-index:2}
.wsx-strip-now{display:block;font-family:var(--wsx-sans);font-size:10px;letter-spacing:.5em;
  text-transform:uppercase;color:#d62976;margin:10px 0 4px;animation:wsxNeon 2.6s ease-in-out infinite}
@keyframes wsxNeon{0%,100%{opacity:1;text-shadow:0 0 12px rgba(214,41,118,.8)}50%{opacity:.72;text-shadow:0 0 4px rgba(214,41,118,.4)}}
.wsx-strip-title{font-family:var(--wsx-serif);font-weight:400;font-size:clamp(30px,4.6vw,48px);
  color:var(--wsx-ink);margin:0 0 6px;letter-spacing:.01em}
.wsx-strip-kick{color:var(--wsx-muted)}
/* lille eq ved headeren */
.wsx-eq{display:inline-flex;gap:3px;align-items:flex-end;height:16px;margin-bottom:2px}
.wsx-eq i{width:3px;background:linear-gradient(180deg,#e8cfa0,#d2a85f);border-radius:2px;
  animation:wsxEq 1s ease-in-out infinite}
.wsx-eq i:nth-child(1){animation-delay:0s}.wsx-eq i:nth-child(2){animation-delay:.15s}
.wsx-eq i:nth-child(3){animation-delay:.3s}.wsx-eq i:nth-child(4){animation-delay:.1s}
.wsx-eq i:nth-child(5){animation-delay:.25s}
@keyframes wsxEq{0%,100%{height:5px}50%{height:16px}}
/* celler: blødt svæv + brandfarvet glød pr. klip → superstar-væg */
.wsx-cell{position:relative;z-index:2;animation:wsxFloat 6s ease-in-out infinite}
.wsx-cell:nth-child(2){animation-delay:1.4s}
.wsx-cell:nth-child(3){animation-delay:2.8s}
.wsx-cell:nth-child(4){animation-delay:4.2s}
@keyframes wsxFloat{0%,100%{margin-top:0}50%{margin-top:-6px}}
.wsx-cell-a{box-shadow:0 18px 44px rgba(0,0,0,.55),0 0 34px rgba(210,168,95,.10)}
.wsx-cell-b{box-shadow:0 18px 44px rgba(0,0,0,.55),0 0 34px rgba(214,41,118,.10)}
/* EQUALIZER-BRO i bunden: danser i brand-farverne → binder til logoerne nedenunder */
.wsx-eqrow{display:flex;gap:5px;align-items:flex-end;justify-content:center;height:30px;
  margin-top:26px;position:relative;z-index:2}
.wsx-eqrow i{width:5px;border-radius:3px 3px 0 0;animation:wsxEq2 1.15s ease-in-out infinite}
.wsx-eqrow i:nth-child(7n+1){background:#d2a85f}.wsx-eqrow i:nth-child(7n+2){background:#d62976}
.wsx-eqrow i:nth-child(7n+3){background:#1DB954}.wsx-eqrow i:nth-child(7n+4){background:#e8cfa0}
.wsx-eqrow i:nth-child(7n+5){background:#FF0000}.wsx-eqrow i:nth-child(7n+6){background:#1877F2}
.wsx-eqrow i:nth-child(7n){background:#fa7e1e}
@keyframes wsxEq2{0%,100%{height:6px;opacity:.75}50%{height:28px;opacity:1}}
/* Spotify-afspillerne nedenunder: samme scene-finish (afrundet, løft, skygge) */
.musik-spotify iframe{border-radius:16px;box-shadow:0 16px 40px rgba(20,10,8,.16);
  transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease}
.musik-spotify iframe:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(20,10,8,.22)}
@media(prefers-reduced-motion:reduce){
  .wsx-spot,.wsx-eq i,.wsx-eqrow i,.wsx-cell{animation:none}
  .wsx-strip-now{animation:none}}

/* ---------- 8c) TAG SCENEN + DEL ---------- */
/* usynlig klik-flade over hvert klip med "Tag scenen"-pill der viser sig ved hover/tap */
.wsx-cell-hit{position:absolute;inset:0;background:none;border:0;cursor:pointer;z-index:3;
  display:flex;align-items:flex-end;justify-content:center;padding-bottom:10px;
  color:#fff;font-family:var(--wsx-sans);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.wsx-cell-hit b{background:rgba(12,9,8,.72);border:1px solid rgba(232,207,160,.55);border-radius:99px;
  padding:7px 15px;font-weight:600;opacity:0;transform:translateY(6px);
  transition:opacity .3s ease,transform .3s ease;backdrop-filter:blur(4px)}
.wsx-cell:hover .wsx-cell-hit b{opacity:1;transform:none}
@media(hover:none){.wsx-cell-hit b{opacity:1;transform:none}} /* mobil: altid synlig */
.wsx-cell-share{background:none;border:1px solid rgba(210,168,95,.4);color:var(--wsx-gold-soft);
  font-family:var(--wsx-sans);font-size:10px;letter-spacing:.08em;border-radius:99px;
  padding:3px 10px;margin-left:8px;cursor:pointer;transition:background .25s}
.wsx-cell-share:hover{background:rgba(210,168,95,.16)}
/* SCENEN: klippet i centrum med lyd, resten dimmet */
#wsx-stage{position:fixed;inset:0;z-index:9500;background:rgba(8,5,4,.88);backdrop-filter:blur(6px);
  display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .35s ease}
#wsx-stage.on{opacity:1}
.wsx-stage-in{width:min(860px,94vw);transform:scale(.94);transition:transform .35s cubic-bezier(.16,1,.3,1)}
#wsx-stage.on .wsx-stage-in{transform:scale(1)}
.wsx-stage-frame{position:relative;padding-top:56.25%;border-radius:16px;overflow:hidden;
  box-shadow:0 0 90px rgba(210,168,95,.25),0 40px 90px rgba(0,0,0,.6)}
.wsx-stage-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.wsx-stage-cap{font-family:var(--wsx-serif);font-size:18px;color:#f4ede2;text-align:center;margin:14px 0 4px}
.wsx-stage-cap span{font-family:var(--wsx-sans);font-size:12px;color:#c9a869}
.wsx-stage-x{display:block;margin:10px auto 0;background:none;border:1px solid rgba(232,207,160,.45);
  color:#e8cfa0;border-radius:99px;padding:9px 20px;font-family:var(--wsx-sans);font-size:11px;
  letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .25s}
.wsx-stage-x:hover{background:rgba(210,168,95,.15)}

/* ---------- 9) TRE AKTER: stempler der slås i papiret ---------- */
.wsx-akt{display:flex;align-items:baseline;gap:14px;justify-content:center;padding:54px 24px 6px;
  opacity:0;transform:rotate(-6deg) scale(1.5);transition:opacity .5s cubic-bezier(.2,1.4,.4,1),transform .5s cubic-bezier(.2,1.4,.4,1)}
.wsx-akt.stamp{opacity:1;transform:rotate(-2deg) scale(1)}
.wsx-akt-n{font-family:var(--wsx-serif);font-style:italic;font-size:clamp(20px,2.6vw,28px);color:#8d1f18;
  border:2.5px solid #8d1f18;border-radius:8px;padding:4px 16px;letter-spacing:.04em;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='40'%3E%3Crect width='120' height='40' fill='white'/%3E%3C/svg%3E")}
.wsx-akt-t{font-family:var(--wsx-sans);font-size:11px;letter-spacing:.42em;text-transform:uppercase;color:#9a9088}
@media(prefers-reduced-motion:reduce){.wsx-akt{opacity:1;transform:rotate(-2deg)}}

/* ---------- 10) APPLAUS ---------- */
#wsx-clap{position:fixed;right:24px;bottom:96px;z-index:7900;width:56px;height:56px;border-radius:50%;
  background:#17120f;border:1px solid rgba(210,168,95,.45);cursor:pointer;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;
  box-shadow:0 10px 28px rgba(0,0,0,.4);transition:transform .2s cubic-bezier(.2,1.6,.4,1),border-color .25s}
#wsx-clap:hover{border-color:rgba(210,168,95,.8)}
#wsx-clap.pop{transform:scale(1.18)}
.wsx-clap-i{font-size:20px;line-height:1}
.wsx-clap-n{font-family:var(--wsx-sans);font-size:9px;color:#d2a85f;line-height:1.2;min-height:10px}
.wsx-conf{position:fixed;width:7px;height:10px;z-index:9600;pointer-events:none;border-radius:2px;
  animation:wsxConf .9s cubic-bezier(.2,.7,.3,1) forwards}
@keyframes wsxConf{0%{opacity:1;transform:translate(0,0) rotate(0)}
  100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--rot))}}
.wsx-clap-msg{position:fixed;right:24px;bottom:160px;z-index:7901;background:#17120f;color:#e8cfa0;
  font-family:var(--wsx-sans);font-size:12.5px;padding:10px 16px;border-radius:12px;
  border:1px solid rgba(210,168,95,.4);box-shadow:0 12px 30px rgba(0,0,0,.4);
  opacity:0;transform:translateY(8px);transition:all .35s ease;max-width:230px}
.wsx-clap-msg.on{opacity:1;transform:none}
@media(max-width:820px){#wsx-clap{bottom:88px;right:16px;width:50px;height:50px}}

/* ============================================================
   HVER SEKTION ET UNIVERS — løft af de statiske sektioner
   ============================================================ */

/* ---------- 11) OM: blød 3D-tilt på portrættet ---------- */
.wsx-tilt{perspective:720px}
.wsx-tilt img{transition:transform .55s cubic-bezier(.16,1,.3,1);will-change:transform}
/* mobil: ingen mus → portrættet ånder i stedet */
.wsx-tiltfloat img{animation:wsxTiltFloat 6.5s ease-in-out infinite}
@keyframes wsxTiltFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(.5deg)}}

/* ---------- 12) INSTRUKTØR: "Instruktørens Set" (klaptræ, slates, REC, ACTION/CUT, grain) ---------- */
#instruktor.wsx-set{position:relative}
#instruktor.wsx-set .wrap{position:relative;z-index:2}
/* subtil vignette der giver filmset-stemning */
#instruktor.wsx-set::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(130% 100% at 50% 42%,transparent 60%,rgba(24,14,6,.20))}

/* klaptræ ved overskriften */
.wsx-clap{position:relative;margin-top:22px;width:max-content;max-width:100%}
.wsx-clap-arm{width:100%;height:15px;border-radius:6px 6px 0 0;transform-origin:left bottom;
  background:repeating-linear-gradient(58deg,#141110 0 13px,#e8cfa0 13px 26px);
  transform:rotate(-42deg)}
.wsx-clap.wsx-clapped .wsx-clap-arm{animation:wsxClap .5s cubic-bezier(.3,1.6,.4,1) forwards}
@keyframes wsxClap{0%{transform:rotate(-42deg)}55%{transform:rotate(0)}72%{transform:rotate(-5deg)}100%{transform:rotate(0)}}
.wsx-clap-body{background:#141110;border:1.5px solid rgba(210,168,95,.5);border-top:none;
  border-radius:0 0 8px 8px;padding:11px 20px}
.wsx-clap-body b{display:block;font-family:var(--wsx-serif);font-size:19px;letter-spacing:.02em;color:var(--wsx-ink)}
.wsx-clap-body span{font-family:var(--wsx-sans);font-size:10px;letter-spacing:.2em;color:var(--wsx-gold-soft)}

/* billed-flise = et "shot" */
.wsx-shot{position:relative;overflow:hidden}
.wsx-shot img{transition:transform 6s cubic-bezier(.2,.6,.3,1)}
#instruktor .show-card:hover .wsx-shot img{transform:scale(1.06)}
/* levende zoom-pan når kameraet "kører" */
.show-card__image.wsx-shot.wsx-rolling img{animation:wsxRoll 15s ease-in-out infinite alternate}
@keyframes wsxRoll{0%{transform:scale(1.12) translate(2%,-1.5%)}100%{transform:scale(1.2) translate(-3%,2%)}}
.show-card__thumbs.wsx-shot.wsx-rolling img{animation:wsxRollT 9s ease-in-out infinite alternate}
@keyframes wsxRollT{0%{transform:scale(1.05)}100%{transform:scale(1.12)}}
/* film-grain over shot'et (ved hover + når det kører) */
.wsx-shot::after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;opacity:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='130' height='130'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:130px 130px;mix-blend-mode:overlay;transition:opacity .4s}
#instruktor .show-card:hover .wsx-shot::after{opacity:.22;animation:wsxGrain 1s steps(3) infinite}
.wsx-shot.wsx-rolling::after{opacity:.32;animation:wsxGrain .85s steps(3) infinite}
@keyframes wsxGrain{0%{background-position:0 0}33%{background-position:-32px 14px}66%{background-position:20px -24px}100%{background-position:-10px 8px}}

/* SCENE-slate der stemples ind */
.wsx-slate{position:absolute;top:12px;left:12px;z-index:5;pointer-events:none;
  font-family:var(--wsx-sans);font-size:10px;font-weight:700;letter-spacing:.16em;
  color:#0e0b08;background:linear-gradient(180deg,#e8cfa0,#d2a85f);
  border-radius:6px;padding:5px 11px 5px 24px;transform-origin:left top;
  box-shadow:0 6px 18px rgba(0,0,0,.4);opacity:0;transform:rotate(-12deg) scale(1.7)}
.wsx-slate::before{content:"";position:absolute;left:6px;top:5px;bottom:5px;width:11px;border-radius:2px;
  background:repeating-linear-gradient(118deg,#141110 0 4px,#f0dcb4 4px 8px)}
.wsx-shot.wsx-shot-in .wsx-slate{animation:wsxStamp .5s cubic-bezier(.2,1.5,.4,1) forwards}
@keyframes wsxStamp{0%{opacity:0;transform:rotate(-12deg) scale(1.7)}
  60%{opacity:1;transform:rotate(3deg) scale(.94)}100%{opacity:1;transform:rotate(-4deg) scale(1)}}

/* blinkende REC ● ved hover / når kameraet kører */
.wsx-rec{position:absolute;top:13px;right:12px;z-index:5;pointer-events:none;
  display:flex;align-items:center;gap:5px;font-family:var(--wsx-sans);font-size:10px;font-weight:700;
  letter-spacing:.14em;color:#fff;opacity:0;transition:opacity .3s;text-shadow:0 1px 4px rgba(0,0,0,.7)}
.wsx-rec i{width:8px;height:8px;border-radius:50%;background:#e2382e;box-shadow:0 0 8px #e2382e}
#instruktor .show-card:hover .wsx-rec,.wsx-shot.wsx-rolling .wsx-rec{opacity:1}
#instruktor .show-card:hover .wsx-rec i,.wsx-shot.wsx-rolling .wsx-rec i{animation:wsxBlink 1s steps(2) infinite}
@keyframes wsxBlink{0%,100%{opacity:1}50%{opacity:.2}}

/* ACTION! / CUT! -flash */
.wsx-flash{position:absolute;inset:0;z-index:6;display:flex;align-items:center;justify-content:center;
  pointer-events:none;font-family:var(--wsx-serif);font-weight:800;font-size:clamp(26px,6vw,52px);
  letter-spacing:.03em;color:#f4e3bf;text-shadow:0 4px 24px rgba(0,0,0,.75);opacity:0}
.wsx-flash.wsx-flash-cut{color:#f2b5b0}
.wsx-flash.wsx-flash-go{animation:wsxFlash .9s ease-out}
@keyframes wsxFlash{0%{opacity:0;transform:scale(1.6)}16%{opacity:1;transform:scale(1)}70%{opacity:1}100%{opacity:0;transform:scale(1.05)}}

/* ---------- 13) FORTÆL DIN HISTORIE: trin-rejsen ---------- */
.wsx-fsgrid{position:relative}
.wsx-fstep{position:relative;z-index:1;opacity:0;transform:translateY(36px);
  transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}
.wsx-fstep.wsx-fsin{opacity:1;transform:none}
.wsx-fstep .coach-card__step{transition:text-shadow .5s ease}
.wsx-fstep.wsx-fsin .coach-card__step{text-shadow:0 0 26px rgba(232,181,71,.55)}
/* den gyldne linje TEGNES fra trin 1 til trin 2 (ligger bag kortene, ses i mellemrummet) */
.wsx-fsline{position:absolute;left:6%;right:6%;top:42%;height:2px;z-index:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(210,168,95,.15),var(--wsx-gold) 50%,rgba(210,168,95,.15));
  transform:scaleX(0);transform-origin:left center;transition:transform 1.4s cubic-bezier(.6,0,.2,1) .55s}
.wsx-fsgrid.wsx-fsin .wsx-fsline{transform:scaleX(1)}
@media(max-width:720px){
  /* ét-kolonne: linjen bliver lodret og tegnes nedad mellem trinene */
  .wsx-fsline{left:50%;right:auto;top:8%;bottom:8%;height:auto;width:2px;
    background:linear-gradient(180deg,rgba(210,168,95,.15),var(--wsx-gold) 50%,rgba(210,168,95,.15));
    transform:scaleY(0);transform-origin:top center}
  .wsx-fsgrid.wsx-fsin .wsx-fsline{transform:scaleY(1)}
}

/* ---------- 14) FOREDRAG: levende scene ---------- */
.wsx-ffeature{overflow:hidden}
.wsx-ffeature img{transition:transform 7s ease-out}
.wsx-ffeature.wsx-on2 img{transform:scale(1.045)}
.wsx-ffeature:hover img{transform:scale(1.07)}
.wsx-fcard{opacity:0;transform:translateY(28px);
  transition:opacity .85s cubic-bezier(.16,1,.3,1) var(--wsx-fd,0ms),
    transform .85s cubic-bezier(.16,1,.3,1) var(--wsx-fd,0ms),box-shadow .4s ease}
.wsx-fcard.wsx-on2{opacity:1;transform:none}
.wsx-fcard.wsx-on2:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(20,10,8,.14)}
.wsx-fcard .coach-card__img{overflow:hidden}
.wsx-fcard .coach-card__img img{transition:transform 5.5s cubic-bezier(.2,.6,.3,1)}
.wsx-fcard:hover .coach-card__img img{transform:scale(1.06)}

/* ---------- 15) JURY: stempler der SMÆKKES i papiret ---------- */
.wsx-stampable{display:inline-block;opacity:0;transform:rotate(-8deg) scale(1.6)}
.wsx-stampable.wsx-stamped{animation:wsxStampIn .45s cubic-bezier(.2,1.4,.4,1) forwards,
  wsxWobble .6s ease-in-out .45s}
@keyframes wsxStampIn{0%{opacity:0;transform:rotate(-8deg) scale(1.6)}
  62%{opacity:1;transform:rotate(-1deg) scale(.94)}
  100%{opacity:1;transform:rotate(-2deg) scale(1)}}
@keyframes wsxWobble{0%,100%{transform:rotate(-2deg)}30%{transform:rotate(-3.2deg)}65%{transform:rotate(-1.1deg)}}
/* stempel-look på rollerne (additivt: kant + lille hældning) */
#jury .cred__role.wsx-stampable{border:1.5px solid rgba(176,141,87,.55);border-radius:6px;
  padding:3px 10px;transform-origin:center}
#jury .cred__photo figcaption.wsx-stampable{transform-origin:left center}

/* ---------- 16) NYHEDSBREV-BÅNDET: kuvert + gylden glød ---------- */
.wsx-env{display:inline-block;font-size:20px;margin-right:12px;vertical-align:middle;
  transform-origin:bottom center}
.wsx-nl-hot .wsx-env{animation:wsxEnvWiggle .7s ease-in-out}
@keyframes wsxEnvWiggle{0%,100%{transform:rotate(0)}25%{transform:rotate(-12deg) translateY(-2px)}
  55%{transform:rotate(9deg) translateY(-3px)}80%{transform:rotate(-4deg)}}
.wsx-nl .ad-strip__cta{transition:box-shadow .45s ease,transform .45s cubic-bezier(.16,1,.3,1)}
.wsx-nl-hot .ad-strip__cta{box-shadow:0 0 0 3px rgba(250,250,247,.35),0 8px 30px rgba(15,15,18,.35);
  transform:translateY(-2px)}
/* diskret lys-strejf der glider over guldbåndet */
.wsx-nl{position:relative;overflow:hidden}
.wsx-nl::after{content:"";position:absolute;top:0;bottom:0;left:-30%;width:22%;pointer-events:none;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);
  animation:wsxNlShine 5.5s ease-in-out infinite}
@keyframes wsxNlShine{0%,55%{left:-30%}85%,100%{left:115%}}

/* ---------- 17) KONTAKT: dørene lyser op i sekvens ---------- */
.wsx-door{transition:border-color .4s ease,box-shadow .4s ease,transform .4s cubic-bezier(.16,1,.3,1)}
.wsx-door.wsx-lit{animation:wsxChipGlow .85s cubic-bezier(.2,.8,.3,1)}
@keyframes wsxChipGlow{0%{box-shadow:0 0 0 0 rgba(210,168,95,0)}
  40%{box-shadow:0 0 26px 4px rgba(210,168,95,.55);border-color:rgba(232,207,160,.9);transform:translateY(-3px)}
  100%{box-shadow:0 0 0 0 rgba(210,168,95,0);transform:none}}
.wsx-door:hover{border-color:rgba(232,207,160,.85);box-shadow:0 0 22px rgba(210,168,95,.35);
  transform:translateY(-2px)}

/* ---------- 18) MARQUEE: pause ved hover (båndet kører allerede) ---------- */
.sm-marquee:hover .sm-track{animation-play-state:paused}

/* ---------- reduced motion: dæmp alle nye effekter ---------- */
@media(prefers-reduced-motion:reduce){
  .wsx-tiltfloat img,.wsx-nl::after,.wsx-nl-hot .wsx-env,
  .wsx-door.wsx-lit,.wsx-stampable.wsx-stamped{animation:none}
  .wsx-fstep,.wsx-fcard,.wsx-stampable{opacity:1;transform:rotate(0) scale(1);transition:none}
  #jury .cred__role.wsx-stampable{transform:rotate(-2deg)}
  .wsx-fsline{transform:none;transition:none}
  /* instruktør-set: vis alt roligt, ingen bevægelse */
  .wsx-clap.wsx-clapped .wsx-clap-arm{animation:none;transform:rotate(0)}
  .wsx-shot.wsx-shot-in .wsx-slate{animation:none;opacity:1;transform:rotate(-4deg) scale(1)}
  .wsx-shot::after,#instruktor .show-card:hover .wsx-shot::after,.wsx-shot.wsx-rolling::after{animation:none;opacity:0}
  .wsx-shot.wsx-rolling img,#instruktor .show-card:hover .wsx-shot img{animation:none;transform:none}
  #instruktor .show-card:hover .wsx-rec i,.wsx-shot.wsx-rolling .wsx-rec i{animation:none}
  #instruktor .show-card:hover .wsx-shot img,.wsx-ffeature.wsx-on2 img,
  .wsx-ffeature:hover img,.wsx-fcard:hover .coach-card__img img{transform:none}
}
