main{max-width:1200px;margin:0 auto;padding:18px;display:grid;grid-template-columns:70% 30%;gap:24px;}
@media(max-width:900px){main{grid-template-columns:1fr;}}


/* Player */
.player{position:relative;background:#000;border-radius:var(--radius);box-shadow:var(--shadow);aspect-ratio:16/9;overflow:hidden;}
.player iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

@media (max-width: 740px) {
  .player {
    border-radius: 6px;
    box-shadow: 0 8px 18px rgba(0,0,0,.6);
  }
}

/* Sidebar */
.sidebar{position:sticky;top:70px;display:grid;gap:14px;align-self:start;}
.model-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);padding:14px;border-radius:var(--radius);}
.model-thumb{width:100%;aspect-ratio:4/3;border-radius:var(--radius);background:#111;margin-bottom:10px;}
.model-card h2{margin:0 0 4px;font-size:18px;color:var(--gold);}
.model-meta{font-size:13px;color:var(--muted);}


.tags{display:flex;flex-wrap:wrap;gap:8px;}
.tag{padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);font-size:12px;background:rgba(255,255,255,.05);}
.tag:hover{border-color:var(--gold);box-shadow:0 0 0 2px rgba(212,175,55,.2);}


.affiliate{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);padding:12px;border-radius:var(--radius);}
.affiliate h3{margin-top:0;font-size:15px;color:var(--gold);}
.affiliate ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
.affiliate li{font-size:13px;color:var(--champagne);}


/* Related Grid */
.related{padding-top:24px}
.related h2{font-family:Playfair Display,serif;font-size:20px;margin:0 0 14px;color:var(--champagne);}
.related-grid{display:grid;gap:var(--gap);grid-template-columns:repeat(2,1fr);}
@media(max-width:1300px){.related-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:1100px){.related-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:740px){.related-grid{grid-template-columns:repeat(1,1fr);}}
.thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#1b1b1b,#0d0d0d);}
.card:hover{transform:scale(1.02);}
.info{padding:10px 12px;}
.title{font-size:14px;font-weight:600;min-height:2.2em;}


.video-meta {
  font-size: 13px;
  color: #ccc;
  letter-spacing: .3px;
}
.video-meta .meta-item {
  color: #d4af37;
}

@media(max-width:1100px){
  .sidebar{
    position: relative;
    margin-bottom:40px;
  }
}