:root{
  --bg:#191b20;
  --header:#181b22;
  --panel:#23262b;
  --panel-2:#2a2e35;
  --accent:#e63946;
  --gold:#ffd700;
  --text:#f2f2f2;
  --muted:#b8bcc6;
  --line:rgba(255,255,255,.08);
  --shadow:0 16px 42px rgba(0,0,0,.28);
  --radius:20px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Roboto',Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top, rgba(230,57,70,.14), transparent 25%),
    linear-gradient(180deg, #17191e 0%, #111318 100%);
}
a{color:inherit}
.topbar{
  position:sticky; top:0; z-index:20;
  background:rgba(24,27,34,.92);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.topbar__inner{
  max-width:1160px; margin:0 auto; padding:1rem 1.2rem;
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
}
.back-link{
  display:inline-flex; align-items:center; gap:.55rem;
  padding:.72rem 1rem; border-radius:999px;
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.08);
  color:var(--gold); text-decoration:none; font-size:.95rem;
  transition:.2s ease;
}
.back-link:hover{transform:translateY(-1px); color:#fff; border-color:rgba(255,215,0,.35)}
.topbar__label{color:var(--muted); font-size:.95rem; letter-spacing:.08em; text-transform:uppercase}
.page{max-width:1160px; margin:0 auto; padding:1.75rem 1.2rem 3rem}
.hero, .panel, .media-card, .list-card, .timeline-card{
  background:linear-gradient(180deg, rgba(35,38,43,.98), rgba(24,27,34,.96));
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.hero{
  padding:1.6rem; display:grid; grid-template-columns:minmax(0,1.3fr) minmax(280px,.9fr);
  gap:1.3rem; align-items:center;
}
.kicker{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.4rem .8rem; border-radius:999px;
  background:rgba(255,215,0,.08); border:1px solid rgba(255,215,0,.18);
  color:var(--gold); font-size:.8rem; letter-spacing:.12em; text-transform:uppercase;
  margin-bottom:1rem;
}
.hero h1, .section-title{
  font-family:'Oswald',Arial,sans-serif;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.hero h1{font-size:clamp(2.2rem,4vw,4rem); line-height:.96; margin:.1rem 0 .75rem; color:var(--accent)}
.hero p{margin:0; color:var(--muted); line-height:1.8; font-size:1.03rem; max-width:64ch}
.hero__art{
  display:grid; place-items:center; padding:1.2rem; min-height:260px;
  background:radial-gradient(circle at center, rgba(255,215,0,.12), transparent 55%), rgba(0,0,0,.18);
  border-radius:18px; border:1px solid rgba(255,255,255,.06);
}
.hero__art img{max-width:100%; height:auto; display:block; filter:drop-shadow(0 14px 24px rgba(0,0,0,.38))}
.grid{display:grid; gap:1.2rem; margin-top:1.2rem}
.grid--two{grid-template-columns:repeat(2, minmax(0,1fr))}
.panel{padding:1.35rem 1.4rem}
.section-title{font-size:1.55rem; color:#fff; margin:0 0 .9rem}
.panel p{margin:.1rem 0 1rem; line-height:1.8; color:#d7dbe2}
.meta-list{display:grid; gap:.7rem; margin:0; padding:0; list-style:none}
.meta-list li{display:flex; justify-content:space-between; gap:1rem; padding:.75rem .9rem; border-radius:14px; background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.06)}
.meta-list strong{color:var(--gold); font-weight:500}
.gallery{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:1rem}
.media-card{overflow:hidden}
.media-card img{width:100%; aspect-ratio: 4/3; object-fit:cover; display:block; background:#0f1115}
.media-card .caption{padding:.9rem 1rem 1rem}
.media-card h3{margin:0 0 .35rem; font-size:1rem; color:#fff}
.media-card p{margin:0; color:var(--muted); line-height:1.6; font-size:.94rem}
.note{padding:1rem 1.05rem; border-left:3px solid var(--accent); background:rgba(230,57,70,.08); border-radius:14px; color:#e6e9ee; line-height:1.7}
.chips{display:flex; flex-wrap:wrap; gap:.7rem; margin-top:.9rem}
.chip{display:inline-flex; padding:.55rem .8rem; border-radius:999px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.08); color:#e6e9ee; text-decoration:none; font-size:.92rem}
.chip:hover{border-color:rgba(255,215,0,.3); color:#fff}
.feature-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem}
.feature{padding:1rem; border-radius:16px; background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.06)}
.feature h3{margin:0 0 .45rem; color:var(--gold); font-size:1rem}
.feature p{margin:0; color:#d2d6dd; line-height:1.7; font-size:.95rem}
.companions{display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); gap:1rem}
.player-card{background:linear-gradient(180deg, rgba(35,38,43,.98), rgba(24,27,34,.96)); border:1px solid var(--line); border-radius:18px; overflow:hidden; box-shadow:var(--shadow)}
.player-card img{width:100%; aspect-ratio:1/1; object-fit:cover; display:block; background:#0f1115}
.player-card .body{padding:1rem}
.player-card h3{margin:0 0 .25rem; font-size:1rem; color:#fff}
.player-card .role{display:block; margin-bottom:.55rem; color:var(--gold); font-size:.84rem; letter-spacing:.08em; text-transform:uppercase}
.player-card p{margin:0; color:var(--muted); line-height:1.65; font-size:.93rem}
.table-wrap{overflow:auto; border-radius:16px; border:1px solid rgba(255,255,255,.06)}
table{width:100%; border-collapse:collapse; min-width:720px; background:rgba(255,255,255,.02)}
th, td{padding:.82rem .9rem; border-bottom:1px solid rgba(255,255,255,.06); text-align:left}
th{background:rgba(255,255,255,.04); color:var(--gold); font-family:'Oswald',Arial,sans-serif; font-size:.95rem; letter-spacing:.04em; text-transform:uppercase}
td{color:#e5e8ee; font-size:.95rem}
.footer{max-width:1160px; margin:0 auto; padding:0 1.2rem 2.5rem}
.footer__inner{border-top:1px solid rgba(255,255,255,.08); color:#9ca3ad; text-align:center; padding-top:1.1rem; font-size:.92rem}
@media (max-width: 980px){
  .hero{grid-template-columns:1fr}
  .grid--two, .feature-grid, .gallery{grid-template-columns:1fr}
  .companions{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 640px){
  .topbar__inner{flex-direction:column; align-items:stretch}
  .topbar__label{text-align:left}
  .page{padding:1.15rem .9rem 2rem}
  .hero,.panel{padding:1.15rem}
  .companions{grid-template-columns:1fr}
}
