.hero{margin-top:18px;min-height:290px;border:1px solid #242424;border-radius:16px;overflow:hidden;display:grid;grid-template-columns:1.2fr .8fr;background:linear-gradient(120deg,#171717,#0b0b0b)}.hero-copy{padding:38px;align-self:center}.hero-kicker{color:#ff6870;font-weight:900;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.hero h1{font-size:clamp(34px,5vw,62px);line-height:1;margin:10px 0 14px}.hero p{max-width:680px;color:#c1c1c1;line-height:1.55}.hero-art{display:grid;place-items:center;background:radial-gradient(circle,rgba(229,9,20,.2),transparent 58%)}.hero-art img{width:min(310px,70%);border-radius:28px}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:22px}.sidebox{border:1px solid #282828;background:#111;border-radius:9px;overflow:hidden;margin-bottom:14px}.side-title{padding:11px 13px;background:#171717;border-bottom:1px solid #272727;font-weight:800}.side-body{padding:12px}.tags{display:flex;gap:7px;flex-wrap:wrap}.tag{padding:6px 8px;border:1px solid #333;background:#191919;border-radius:5px;font-size:12px;color:#ccc}.page-head{padding:25px 0 12px}.page-head h1{margin:0;font-size:28px}.page-head p{margin:6px 0 0;color:var(--muted)}.info{background:#111;border:1px solid #292929;border-radius:10px;padding:18px;line-height:1.65;color:#ccc}.age-gate{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.97);display:grid;place-items:center;padding:20px}.age-card{width:min(520px,100%);background:#111;border:1px solid #2a2a2a;border-radius:16px;padding:30px;text-align:center}.age-card img{width:92px;height:92px;border-radius:22px}.age-card p{color:#bbb;line-height:1.55}.age-actions{display:flex;gap:10px;margin-top:20px}.age-actions .btn{flex:1}

.loading-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px 12px;
}
.loading-card{
  aspect-ratio:16/11;
  border-radius:8px;
  background:linear-gradient(90deg,#121212 25%,#1b1b1b 50%,#121212 75%);
  background-size:200% 100%;
  animation:noir-loading 1.2s linear infinite;
}
@keyframes noir-loading{
  from{background-position:200% 0}
  to{background-position:-200% 0}
}
@media(prefers-reduced-motion:reduce){
  .loading-card{animation:none}
}
