:root {
  --silver-1: #ffffff;
  --silver-2: #c9d5da;
  --silver-3: #71828c;
  --silver-4: #26323a;
  --black: #030303;
}

* { box-sizing: border-box; }

html { background: #000; scroll-behavior: smooth; }

body {
  margin: 0;
  min-height: 100vh;
  overflow-x: hidden;
  background: #000;
  color: white;
  cursor: none;
  font-family: "Goldman", sans-serif;
}

a,
button {
  cursor: none;
}

.heman-cursor {
  position: fixed;
  z-index: 99999;
  width: 100px;
  height: 100px;
  object-fit: contain;
  pointer-events: none;
  transform: translate(-50%, -50%);
}


button, a { font: inherit; }
img { user-select: none; -webkit-user-drag: none; }

.portal {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: radial-gradient(circle, #0c1d3f 0 12%, #04000c 44%, #000 72%);
  cursor: none;
  isolation: isolate;
}

.portal::before,
.portal::after {
  content: "";
  position: absolute;
  inset: -30%;
  background: repeating-conic-gradient(from 0deg, transparent 0 8deg, #00e5ff66 9deg, transparent 11deg 18deg, #ff00c855 19deg, transparent 22deg 30deg);
  animation: portal-spin 7s linear infinite;
  mix-blend-mode: screen;
}

.portal::after { animation-direction: reverse; animation-duration: 3.5s; filter: blur(14px); }

.portal-static {
  position: absolute;
  inset: 0;
  opacity: .17;
  background-image: repeating-radial-gradient(circle at 20% 30%, #fff 0 1px, transparent 1px 4px);
  animation: static-jump .12s steps(2) infinite;
}

.portal-heman {
  position: relative;
  z-index: 4;
  width: auto;
  height: auto;
  max-width: 88vw;
  max-height: 82vh;
  image-rendering: auto;
  filter: none;
  animation: portal-pulse .68s steps(2) infinite;
  transition: .16s ease;
}

.portal:hover .portal-heman { transform: scale(1.12) rotate(-2deg); filter: none; }

.portal-ring {
  position: absolute;
  width: min(78vw, 760px);
  aspect-ratio: 1;
  border: 10px double var(--silver-1);
  border-radius: 50%;
  box-shadow: 0 0 0 14px #aebbc744, 0 0 70px #dce9ef;
  animation: ring-breathe 1s steps(2) infinite;
}

.portal-cursor {
  position: absolute;
  z-index: 6;
  bottom: 18vh;
  padding: .2rem 1.5rem;
  color: #10161a;
  background: linear-gradient(#fff, #aebbc4 45%, #52616a 52%, #eef5f7);
  border: 5px ridge white;
  letter-spacing: .1em;
  font-size: clamp(.9rem, 2.5vw, 2rem);
  transform: rotate(-3deg) scale(.8);
  animation: blink .45s steps(1) infinite;
}

.portal.exit { animation: portal-exit .8s cubic-bezier(.7,0,.9,.2) forwards; pointer-events: none; }

.site { position: relative; display: none; min-height: 100vh; isolation: isolate; }
.site.live { display: block; }

.background-video {
  position: fixed;
  inset: 0;
  z-index: -8;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.65) contrast(1.2) brightness(.65);
}

.noise {
  position: fixed;
  inset: 0;
  z-index: 80;
  opacity: .09;
  pointer-events: none;
  background: repeating-linear-gradient(0deg, transparent 0 2px, #fff 3px, transparent 4px), repeating-linear-gradient(90deg, #f0f0 0 1px, transparent 2px 7px);
  mix-blend-mode: screen;
  animation: static-jump .1s steps(2) infinite;
}

.screen-flash { position: fixed; inset: 0; z-index: 79; pointer-events: none; animation: screen-flash 6s steps(1) infinite; mix-blend-mode: exclusion; }

.gifbar {
  position: relative;
  z-index: 100;
  display: flex;
  width: max-content;
  min-width: 200%;
  width: 200vw;
  min-width: 200vw;
  height: clamp(42px, 5vw, 62px);
  overflow: hidden;
  border-block: 4px ridge white;
  background: #000;
  animation: gifbar-slide 22s linear infinite;
}

.gifbar-bottom { animation-direction: reverse; }
.gifbar img { flex: 0 0 calc(100vw / 14); width: calc(100vw / 14); height: 100%; padding: 2px; object-fit: contain; background: #000; transition: .12s; }
.gifbar img:hover { transform: scale(1.22) translateY(3px); filter: contrast(1.35) brightness(1.15); z-index: 5; }

.chaos-nav {
  position: sticky;
  top: 0;
  z-index: 110;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(2rem, 1vw, 1rem);
  padding: 2rem .7rem;
  background: #000a;
  backdrop-filter: blur(5px);
  border-bottom: 3px dashed #c8d2d8;
}

.glitch-button {
  appearance: none;
  padding: .42rem .72rem;
  border: 3px outset #ddd;
  color: #10161a;
  background: linear-gradient(145deg, #fff 0%, #b9c5cc 35%, #586872 52%, #f4f8fa 75%, #7d8b94 100%);
  text-decoration: none;
  font-size: clamp(.68rem, 1.35vw, 1rem);
  letter-spacing: .07em;
  box-shadow: 5px 5px 0 #45515a, -4px -4px 0 #f8ffff;
  cursor: pointer;
  transition: .1s;
  animation: button-shiver 1.7s steps(2) infinite;
}

.glitch-button:nth-child(2) { transform: rotate(2deg); }
.glitch-button:nth-child(3) { transform: rotate(-2deg); }
.glitch-button:hover, .glitch-button:focus-visible { transform: scale(1.10) rotate(2deg); background: linear-gradient(145deg, #1b2227, #9daab2 48%, #fff 52%, #3e4b53); filter: contrast(1.3); box-shadow: 10px 0 0 #313c43, -10px 0 0 #e8f2f6; }
.glitch-button:active { border-style: inset; transform: scale(.9); }

.hero { position: relative; min-height: 100vh; display: grid; place-items: center; overflow: hidden; }

.main-logo {
  position: relative;
  z-index: 90;
  width: min(72vw, 900px);
  max-height: 62vh;
  object-fit: contain;
  filter: drop-shadow(10px 10px 0 #32404a) drop-shadow(-8px -8px 0 #dfe9ee) drop-shadow(0 0 35px white);
  animation: logo-mutate 2.2s steps(3) infinite;
  transition: .18s;
  pointer-events: auto;
  transform-origin: center;
}

.main-logo:hover { animation: logo-schizo .5s steps(1) infinite !important; filter: contrast(1.55) brightness(1.25) drop-shadow(20px 0 0 #fff9) drop-shadow(-20px 0 0 #647681); }

.heman-layer, .storm-layer, .money-layer { position: absolute; inset: 0; pointer-events: none; }
.storm-layer { z-index: 10; mix-blend-mode: screen; }
.heman-layer { z-index: 20; }
.money-layer { z-index: 40; mix-blend-mode: screen; }

.chaos-sprite { position: absolute; max-width: none; transition: .12s; pointer-events: auto; }
.chaos-sprite:hover { transform: scale(1.55) rotate(25deg) !important; filter: hue-rotate(220deg) contrast(2) drop-shadow(0 0 20px white); z-index: 60; }
.heman-sprite { width: clamp(100px, 18vw, 310px); animation: heman-fly var(--speed) ease-in-out infinite alternate, blink .9s steps(2) infinite; }
.storm-sprite { width: clamp(170px, 31vw, 580px); opacity: .72; animation: storm-drift var(--speed) linear infinite alternate; }
.money-sprite { inset: -5% auto auto var(--left); width: clamp(220px, 42vw, 700px); height: 115%; object-fit: cover; opacity: .72; animation: money-fall var(--speed) linear infinite; }

.meme-gallery {
  position: relative;
  z-index: 50;
  padding: clamp(2rem, 5vw, 6rem) clamp(.5rem, 2vw, 2rem);
  background: repeating-conic-gradient(#000b 0 10deg, #140026cc 10deg 20deg, #001a12cc 20deg 30deg);
  border-block: 12px groove #9caab2;
}

.meme-grid { width: min(76vw, 1180px); margin: 0 auto; columns: 4 210px; column-gap: clamp(.5rem, 1.2vw, 1rem); }

.meme-card {
  position: relative;
  display: inline-block;
  width: 100%;
  margin: 0 0 1rem;
  padding: 5px;
  background: linear-gradient(45deg, #fff, #71808a, #dce6eb, #313b42);
  border: 5px ridge #fff;
  transform: rotate(var(--tilt));
  break-inside: avoid;
  transition: .12s;
  animation: meme-breathe var(--speed) steps(2) infinite alternate;
  cursor: zoom-in;
}

.meme-card img { display: block; width: 100%; height: auto; filter: saturate(1.25) contrast(1.08); }
.meme-card:hover { z-index: 70; transform: scale(1.12) rotate(calc(var(--tilt) * -1)); filter: contrast(1.18) brightness(1.08); box-shadow: 0 0 0 8px #000, 0 0 45px #d7e1e6; }

.cursor-particle { position: fixed; z-index: 200; pointer-events: none; color: #fff; font-size: 22px; text-shadow: 2px 2px #53636d; animation: particle-death .7s linear forwards; }

.global-chaos { position: fixed; inset: 0; z-index: 180; pointer-events: none; overflow: hidden; mix-blend-mode: screen; }
.global-effect { position: absolute; max-width: none; opacity: 1; }
.global-storm { width: min(55vw, 900px); left: -8vw; top: 12vh; opacity: 1; animation: overlay-one 8s ease-in-out infinite alternate; }
.global-thunder-one { width: min(42vw, 720px); right: -5vw; top: 4vh; opacity: 1; animation: overlay-two 5s steps(2) infinite alternate; }
.global-thunder-two { width: min(40vw, 680px); left: 24vw; bottom: -9vh; opacity: 1; animation: overlay-one 6s steps(2) infinite alternate-reverse; }
.global-money { width: 100vw; height: 110vh; inset: -5vh 0 auto; object-fit: cover; opacity: 1; animation: money-fall 5s linear infinite; }

.meme-modal { position: fixed; inset: 0; z-index: 1000; display: none; align-items: center; justify-content: center; padding: 3vh 8vw; background: #000e; backdrop-filter: blur(9px); }
.meme-modal.open { display: flex; }
.modal-frame { position: relative; width: min(82vw, 1100px); height: 82vh; display: grid; place-items: center; padding: 18px; background: linear-gradient(145deg, #fff, #5d6a72 40%, #182127 58%, #dbe5ea); border: 6px ridge #eaf2f5; box-shadow: 0 0 60px #fff5; }
.modal-frame img { width: 100%; height: 74vh; object-fit: contain; background: #050505; }
.modal-counter { position: absolute; bottom: 24px; left: 50%; transform: translateX(-50%); padding: .35rem .8rem; color: #111; background: #dce5e9; border: 3px outset white; letter-spacing: .12em; }
.modal-close, .modal-arrow { position: absolute; z-index: 2; color: #10161a; background: linear-gradient(#fff, #71808a); border: 4px outset white; cursor: pointer; box-shadow: 5px 5px 0 #111; }
.modal-close { top: 2vh; right: 3vw; width: 50px; height: 50px; font-size: 2rem; }
.modal-arrow { top: 50%; transform: translateY(-50%); width: clamp(48px, 6vw, 80px); height: clamp(70px, 12vh, 120px); font-size: clamp(3rem, 7vw, 6rem); line-height: .7; }
.modal-prev { left: 2vw; }
.modal-next { right: 2vw; }
.modal-close:hover, .modal-arrow:hover { color: #fff; background: #29343b; transform: translateY(-50%) scale(1.12); }
.modal-close:hover { transform: scale(1.12) rotate(8deg); }

@keyframes portal-spin { to { transform: rotate(360deg) scale(10); } }
@keyframes portal-pulse { 50% { transform: scale(1.04); } }
@keyframes ring-breathe { 50% { transform: scale(.84) rotate(12deg); border-color: #74858f; } }
@keyframes portal-exit { 60% { filter: invert(1); transform: scale(1.6) rotate(4deg); opacity: 1; } 100% { transform: scale(4); opacity: 0; visibility: hidden; } }
@keyframes static-jump { 50% { transform: translate(3px,-2px); } }
@keyframes blink { 0%, 42% { opacity: 1; } 43%, 55% { opacity: .05; } 56% { opacity: 1; } }
@keyframes screen-flash { 0%, 92%, 100% { background: transparent; } 93% { background: #fff7; } 95% { background: #c0c0c066; } }
@keyframes gifbar-slide { to { transform: translateX(-50%); } }
@keyframes button-shiver { 0%, 96% { translate: 0 0; } 97% { translate: 3px -2px; } 99% { translate: -4px 2px; } }
@keyframes logo-mutate { 0%, 100% { transform: rotate(-2deg) scale(1); } 33% { transform: rotate(2deg) scale(1.04); } 66% { transform: skewX(-4deg) scale(.98); } }
@keyframes logo-schizo { 0% { transform: scale(1.18) translate(-10px,6px) rotate(-3deg); } 25% { transform: scale(1.10) translate(11px,-8px) skewX(-7deg); } 50% { transform: scale(1.12) translate(-7px,-11px) rotate(3deg); } 75% { transform: scale(1.14) translate(10px,9px) skewX(7deg); } 100% { transform: scale(1.12) translate(-9px,4px); } }
@keyframes overlay-one { to { transform: translate(14vw, 8vh) scale(1.2) rotate(7deg); opacity: 1; } }
@keyframes overlay-two { to { transform: translate(-12vw, 15vh) scale(.88) rotate(-9deg); opacity: 1; } }
@keyframes heman-fly { from { transform: translate(-8vw,-5vh) rotate(-12deg); } to { transform: translate(10vw,12vh) rotate(15deg) scale(1.12); } }
@keyframes storm-drift { from { transform: translateX(-14vw) scale(.9); } to { transform: translateX(14vw) scale(1.2) rotate(5deg); } }
@keyframes money-fall { from { transform: translateY(-25%) rotate(-3deg); } to { transform: translateY(15%) rotate(3deg); } }
@keyframes meme-breathe { to { transform: rotate(calc(var(--tilt) * -1)) scale(1.025); } }
@keyframes particle-death { to { transform: translate(var(--dx), var(--dy)) rotate(180deg) scale(0); opacity: 0; } }

@media (max-width: 700px) {
  .chaos-nav { position: relative; }
  .glitch-button { flex: 1 1 42%; text-align: center; }
  .main-logo { width: 92vw; }
  .meme-grid { width: 92vw; columns: 2 130px; }
  .modal-frame { width: 88vw; height: 76vh; padding: 9px; }
  .modal-frame img { height: 69vh; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; }
}

/* HIGHER4K / compact web shrine */
body{font-family:Arial,Helvetica,sans-serif;cursor:auto;background:#000}a,button{cursor:pointer}.heman-cursor{width:48px;height:48px}.site.live{display:grid;grid-template-columns:170px minmax(0,830px);max-width:1020px;margin:auto;padding:0 10px;gap:10px;isolation:isolate}.background-video{filter:brightness(.55) saturate(1.3);z-index:-8}.gifbar{grid-column:1/-1;width:100%;min-width:0;height:48px;animation:none;border-block:1px solid #a5c6e6;background:#000a}.gifbar img{flex:0 0 70px;width:70px}.chaos-nav{grid-column:1/-1;position:relative;top:auto;padding:7px;gap:7px;background:#0008;border:1px solid #8299b0;backdrop-filter:none;justify-content:center}.glitch-button,.glitch-button:nth-child(2),.glitch-button:nth-child(3){font:bold 12px Arial,Helvetica,sans-serif;letter-spacing:1px;background:#081222bb;color:#c9edff;border:1px solid #668aa4;border-bottom:3px solid #3b536d;box-shadow:none;animation:none;transform:none;padding:8px 20px;text-decoration:none}.glitch-button:hover,.glitch-button:focus-visible{background:#d0f5ff;color:#001226;box-shadow:none;transform:none;filter:none}.side-panel{grid-column:1;grid-row:3;text-align:center;background:#0008;border:1px solid #718b9f;align-self:stretch;padding:10px}.side-panel h2{font:bold 16px Arial;margin:0 0 16px;color:#ceefff;letter-spacing:2px;border-bottom:1px solid #718b9f;padding-bottom:10px}.side-panel img{display:block;width:100%;max-height:210px;object-fit:contain;margin:12px auto}.side-panel p{font:bold 12px/1.6 Arial;color:#d7edff}.side-rule{border-top:1px solid #718b9f;margin:22px 0}.side-panel .resolution{font:11px/1.8 monospace;color:#a9bcd0}.hero{grid-column:2;min-height:550px;border:0;margin:0;background:transparent}.main-logo{width:90%;max-height:46vh;filter:drop-shadow(4px 6px #0009);animation:logo-mutate 4s steps(3) infinite}.heman-sprite{width:clamp(95px,12vw,180px)}.storm-sprite{opacity:.65}.money-sprite{opacity:.4}.global-chaos{z-index:35;opacity:.42}.global-storm,.global-thunder-one,.global-thunder-two{width:28vw}.global-money{opacity:.4}.noise{opacity:.025}.screen-flash{display:none}.resolution-strip{grid-column:1/-1;text-align:center;background:#0009;border-block:1px solid #8299b0;padding:10px;font:bold 11px monospace;letter-spacing:2px;color:#d7eeff}.meme-gallery{grid-column:1/-1;background:transparent;border:0;padding:22px 5px}.vault-title{text-align:center;font:12px Arial;letter-spacing:3px;color:#d7eeff;margin:5px 0 25px}.meme-grid{width:100%;columns:4 180px;column-gap:12px}.meme-card{padding:3px;border:1px solid #94a5b5;background:#0009;animation:none;box-shadow:3px 3px #0008}.meme-card:hover{box-shadow:0 0 15px #bddcff88;filter:none}.portal-cursor{font:bold 17px Arial;letter-spacing:3px;background:#000b;color:#d7eeff;border:1px solid #91acc5;box-shadow:none;animation:none;padding:12px 24px}.portal{background:#000}.portal::before,.portal::after{opacity:.25}.modal-frame{background:#070c14;border:1px solid #94a5b5;box-shadow:0 0 40px #000}.modal-close,.modal-arrow{background:#101e30;color:#d7eeff;border:1px solid #94a5b5}.portal-heman{max-height:65vh}.portal-cursor{bottom:12vh}@media(max-width:700px){.site.live{grid-template-columns:100px minmax(0,1fr);gap:7px;padding:0 7px}.side-panel{padding:5px}.side-panel h2{font-size:12px;letter-spacing:0}.side-panel p{font-size:10px}.side-panel .resolution{font-size:8px}.hero{min-height:440px}.glitch-button{flex:1 1 40%;font-size:11px;padding:8px}.resolution-strip{font-size:9px;letter-spacing:0}.meme-grid{columns:2 130px}.heman-cursor{display:none}.vault-title{font-size:10px;letter-spacing:1px}.main-logo{width:100%}.heman-sprite{width:85px}}
/* Explicit rows keep hidden media and decorative layers out of layout flow. */
.site.live>.background-video,.site.live>.global-chaos,.site.live>.noise,.site.live>.screen-flash,.site.live>.cursor-trail,.site.live>audio{position:fixed}
.site.live>.gifbar-top{grid-column:1/-1;grid-row:1}
.site.live>.chaos-nav{grid-column:1/-1;grid-row:2}
.site.live>.side-panel{grid-column:1;grid-row:3;align-self:stretch}
.site.live>.hero{grid-column:2;grid-row:3;min-width:0}
.site.live>.resolution-strip{grid-column:1/-1;grid-row:4}
.site.live>.meme-gallery{grid-column:1/-1;grid-row:5;min-width:0}
.site.live>.gifbar-bottom{grid-column:1/-1;grid-row:6}
.site.live>.meme-modal{position:fixed}
@media(max-width:700px){.site.live{grid-template-columns:90px minmax(0,1fr)}.site.live>.hero{min-height:380px}.side-panel img{max-height:140px}}
/* Recompose the page as a full-screen collage, with no clipped sprite stage. */
.site.live{display:block;max-width:none;padding:0;margin:0;overflow:hidden}.site.live>.gifbar-top,.site.live>.gifbar-bottom{width:200%;min-width:200%;height:58px;display:flex;align-items:center;border:0;background:#000;animation:gifbar-slide 35s linear infinite;gap:20px;padding:5px 10px}.gifbar img{flex:0 0 auto;width:auto;max-width:150px;height:auto;max-height:46px;object-fit:contain;padding:0;background:transparent}.site.live>.chaos-nav{width:fit-content;max-width:95%;margin:22px auto 0;gap:0;padding:0;background:#000b;border:1px solid #b1cad7;display:flex;flex-wrap:wrap}.glitch-button,.glitch-button:nth-child(2),.glitch-button:nth-child(3){font:bold 12px Arial;letter-spacing:1px;padding:11px 22px;border:0;border-right:1px solid #738c9a;background:transparent;color:#e7f5ff}.glitch-button:last-child{border-right:0}.glitch-button:hover{background:#d9efff;color:#000}.site.live>.hero{width:min(1100px,100%);height:680px;min-height:0;margin:0 auto;overflow:visible;display:grid;place-items:center;isolation:isolate}.main-logo{width:min(82vw,900px);max-height:360px;margin-top:-50px;animation:none;filter:drop-shadow(0 12px 8px #0009);z-index:20}.hero::before,.hero::after{content:"";position:absolute;pointer-events:none;background-repeat:no-repeat;background-position:center;background-size:contain;z-index:10}.hero::before{background-image:url('assets/heman4.gif');width:180px;height:245px;bottom:25px;left:8%;transform:rotate(-8deg)}.hero::after{background-image:url('assets/heman3.gif');width:160px;height:200px;bottom:40px;right:9%;transform:rotate(8deg)}.heman-layer{display:none}.background-video{filter:brightness(.45) saturate(1.2)}.global-chaos{opacity:.55;z-index:4}.global-money{opacity:.24}.global-storm{width:45vw;left:-15vw}.global-thunder-one{width:40vw;right:-12vw}.global-thunder-two{width:35vw;left:40vw;bottom:-15vh}.noise{opacity:.025}.hero .storm-layer,.hero .money-layer{display:none}.site.live>.meme-gallery{position:relative;width:min(1100px,94%);margin:0 auto;padding:10px 0 35px;background:none;border:0;z-index:10}.vault-title{font:11px Arial;letter-spacing:4px;color:#fff;text-shadow:0 2px 3px #000;margin:0 0 30px;padding:15px 0;border-top:1px solid #ffffff55;border-bottom:1px solid #ffffff55}.meme-grid{columns:4 190px;column-gap:18px}.meme-card{background:#000;border:0;padding:0;margin-bottom:18px;box-shadow:0 5px 15px #0007;transform:none;animation:none}.meme-card img{filter:none}.meme-card:hover{transform:scale(1.025);box-shadow:0 0 0 2px #d5ecff}.site.live>.gifbar-bottom{animation-direction:reverse}.portal-cursor{font:14px Arial;letter-spacing:3px}.portal::before,.portal::after{display:none}@media(max-width:700px){.site.live>.hero{height:520px}.main-logo{width:95vw;margin-top:-55px}.hero::before{width:110px;height:160px;left:6%;bottom:25px}.hero::after{width:100px;height:140px;right:6%;bottom:35px}.site.live>.chaos-nav{margin-top:15px;width:94%;justify-content:center}.glitch-button{flex:1 1 auto;padding:10px;font-size:10px}.meme-grid{columns:2 120px;column-gap:10px}.meme-card{margin-bottom:10px}.vault-title{font-size:9px;letter-spacing:2px}}
/* Four independent, viewport-wide flying He-Men. */
.hero::before,.hero::after{display:none}
.flying-hemen{position:fixed;inset:0;pointer-events:none;z-index:190;overflow:hidden}
.flying-heman{position:absolute;left:0;top:0;width:clamp(100px,13vw,200px);height:clamp(100px,13vw,200px);object-fit:contain;pointer-events:none;will-change:transform}
@media(max-width:700px){.flying-heman{width:100px;height:100px}}
@media(prefers-reduced-motion:reduce){.flying-hemen{display:none}}
/* Restore the original portal rays and keep the entry label straight. */
.portal{background:radial-gradient(circle,#0c1d3f 0 12%,#04000c 44%,#000 72%)}
.portal::before,.portal::after{display:block;opacity:1}
.portal-cursor{transform:none;animation:none}

/* Original desktop cursor size. */
.heman-cursor{width:100px;height:100px}
/* Psychedelic moving color behind both GIF strips. */
.site.live>.gifbar-top,.site.live>.gifbar-bottom{background:repeating-conic-gradient(from 0deg,#ff00ba 0deg 30deg,#4b00ff 30deg 60deg,#00dbff 60deg 90deg,#24ff62 90deg 120deg,#fff000 120deg 150deg,#ff4300 150deg 180deg);background-size:240px 120px;animation:gifbar-slide 35s linear infinite,gifbar-rainbow 5s linear infinite;border-block:1px solid #ffffff88}
@keyframes gifbar-rainbow{0%{background-position:0 0}100%{background-position:480px 120px}}
@media(prefers-reduced-motion:reduce){.site.live>.gifbar-top,.site.live>.gifbar-bottom{animation:none!important}}
.meme-card video{display:block;width:100%;height:auto;min-height:100px;background:#000}.video-badge{position:absolute;bottom:8px;left:8px;background:#000b;color:white;padding:4px 7px;font:10px Arial}.modal-frame video{width:100%;height:74vh;object-fit:contain;background:#000}
/* GIF strips share the portal's dark cyan/magenta rays. */
.site.live>.gifbar-top,.site.live>.gifbar-bottom{position:relative;isolation:isolate;background:radial-gradient(ellipse at center,#0c1d3f,#04000c 55%,#000);animation:gifbar-slide 35s linear infinite;overflow:hidden}
.gifbar::before,.gifbar::after{content:"";position:absolute;left:25%;top:50%;width:220vw;height:220vw;margin-left:-110vw;margin-top:-110vw;z-index:-1;pointer-events:none;background:repeating-conic-gradient(from 0deg,transparent 0 8deg,#00e5ff66 9deg,transparent 11deg 18deg,#ff00c855 19deg,transparent 22deg 30deg);animation:gifbar-portal-spin 14s linear infinite;mix-blend-mode:screen}
.gifbar::after{animation-direction:reverse;animation-duration:22s;filter:blur(12px);opacity:.7}
@keyframes gifbar-portal-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.gifbar::before,.gifbar::after{animation:none!important}}


