html { scroll-behavior: smooth; }
body { background: #050506; }
.pixel-grid {
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 32px 32px;
}
.red-grid {
  background-image:
    linear-gradient(rgba(220,38,38,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(220,38,38,.08) 1px, transparent 1px);
  background-size: 32px 32px;
}
.hero-glow {
  background:
    radial-gradient(circle at 74% 28%, rgba(220,38,38,.25), transparent 31%),
    radial-gradient(circle at 24% 78%, rgba(234,88,12,.08), transparent 27%);
}
.clip-card { clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 18px 100%, 0 calc(100% - 18px)); }
.clip-button { clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px)); }
.nav-tab { position: relative; transition: color .2s ease; }
.nav-tab::after { content: ''; position: absolute; left: 0; right: 0; bottom: -11px; height: 2px; background: #dc2626; transform: scaleX(0); transform-origin: center; transition: transform .2s ease; }
.nav-tab:hover::after, .nav-tab.is-active::after { transform: scaleX(1); }
.nav-tab.is-active { color: #fff; }
.social-icon { display: inline-grid; width: 44px; height: 44px; place-items: center; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.025); transition: border-color .2s ease, background .2s ease, transform .2s ease; }
.social-icon:hover { border-color: rgba(220,38,38,.9); background: rgba(220,38,38,.12); transform: translateY(-2px); }
.social-icon svg { width: 20px; height: 20px; fill: currentColor; }
.video-placeholder { background: linear-gradient(135deg, rgba(127,29,29,.34), rgba(0,0,0,.92) 55%), #080808; }

.site-logo-shell {
  display: inline-block;
  width: 48px;
  height: 48px;
  overflow: hidden;
  flex: 0 0 auto;
  border: 1px solid rgba(239,68,68,.45);
  background: #09090b;
  box-shadow: 0 0 26px rgba(220,38,38,.2);
  clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 8px, 100% 100%, 8px 100%, 0 calc(100% - 8px));
}
.site-logo-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 48%;
  transform: scale(1.02);
}
.brand-lockup-logo {
  width: 74px;
  height: 74px;
  object-fit: cover;
  object-position: 50% 48%;
  border: 1px solid rgba(239,68,68,.35);
  clip-path: polygon(0 0, calc(100% - 11px) 0, 100% 11px, 100% 100%, 11px 100%, 0 calc(100% - 11px));
}
.brand-shades {
  position: absolute;
  z-index: 0;
  width: clamp(88px, 11vw, 155px);
  opacity: .10;
  pointer-events: none;
  user-select: none;
  filter: drop-shadow(0 0 18px rgba(220,38,38,.16));
}
.brand-shades.is-strong { opacity: .42; }
.brand-shades.is-small { width: 82px; opacity: .19; }
.brand-shades-inline {
  width: 82px;
  max-height: 48px;
  object-fit: cover;
  opacity: .58;
  filter: drop-shadow(0 0 14px rgba(220,38,38,.2));
}
.footer-brand-shades { width: 70px; opacity: .34; }

.video-tabs {
  display: inline-flex;
  gap: 4px;
  border: 1px solid rgba(255,255,255,.1);
  background: #050506;
  padding: 4px;
}
.video-tab {
  min-height: 42px;
  padding: 0 16px;
  color: rgba(255,255,255,.45);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  transition: background .2s ease, color .2s ease;
}
.video-tab:hover { color: #fff; }
.video-tab.is-active { background: #dc2626; color: #fff; }
.video-card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(127,29,29,.72);
  background: rgba(0,0,0,.62);
}
.video-card:hover { border-color: rgba(239,68,68,.62); }
.video-card-media { position: relative; display: grid; aspect-ratio: 16 / 9; place-items: center; overflow: hidden; }
.video-card-media > iframe, .featured-video-embed > iframe { position: absolute; inset: 0; width: 100%; height: 100%; }
.video-card-media::after { content: ''; position: absolute; inset: 0; box-shadow: inset 0 -70px 80px rgba(0,0,0,.35); pointer-events: none; }
.video-card-shades { position: absolute; right: -12px; bottom: -7px; width: 120px; opacity: .08; pointer-events: none; }
.video-rank { position: absolute; left: 14px; top: 14px; z-index: 2; border: 1px solid rgba(255,255,255,.12); background: rgba(0,0,0,.72); padding: 7px 10px; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.62); }
.video-meta { display: flex; flex-wrap: wrap; gap: 8px; font-size: 11px; font-weight: 700; letter-spacing: .08em; color: rgba(255,255,255,.38); }

.partner-logo-shell {
  width: 88px;
  height: 88px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(239,68,68,.28);
  background: #050506;
  clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 12px 100%, 0 calc(100% - 12px));
}
.partner-logo-shell img { width: 100%; height: 100%; object-fit: cover; }
.partner-logo-shell.wepwawet img { transform: scale(1.45); object-position: 22% 50%; }
.partner-logo-fallback { display: grid; width: 100%; height: 100%; place-items: center; background: linear-gradient(145deg, rgba(127,29,29,.6), #050506 68%); }
.partner-logo-fallback svg { width: 38px; height: 38px; fill: currentColor; }

[data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .65s ease, transform .65s ease; }
[data-reveal].is-visible { opacity: 1; transform: none; }
@media (max-width: 640px) {
  .site-logo-shell { width: 44px; height: 44px; }
  .brand-shades { width: 90px; }
  .video-tabs { width: 100%; }
  .video-tab { flex: 1; padding-inline: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  [data-reveal] { opacity: 1; transform: none; transition: none; }
  html { scroll-behavior: auto; }
}

/* V3.2 branding refinements */
.site-logo-shell {
  width: 59px;
  height: 50px;
}
.site-logo-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transform: none;
  image-rendering: auto;
}
.brand-lockup-logo {
  width: 74px;
  height: 63px;
  object-fit: contain;
  object-position: center;
  transform: none;
}
.header-shades {
  width: 72px;
  height: 40px;
  object-fit: contain;
  opacity: .62;
  pointer-events: none;
  user-select: none;
  filter: drop-shadow(0 0 14px rgba(220,38,38,.18));
}
.partner-logo-shell.wepwawet img {
  transform: none;
  object-position: center;
  object-fit: cover;
}
.video-live-status {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.025);
  padding: 0 10px;
  color: rgba(255,255,255,.36);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.video-live-status.is-live {
  border-color: rgba(220,38,38,.42);
  background: rgba(220,38,38,.08);
  color: rgba(254,202,202,.88);
}
@media (max-width: 640px) {
  .site-logo-shell { width: 52px; height: 44px; }
}
