:root{
  --bg:#071017;
  --bg-soft:#0d1723;
  --card:rgba(13,23,35,.84);
  --card-2:#111f2b;
  --line:rgba(133,255,197,.15);
  --text:#f6fbff;
  --muted:#a5b6c6;
  --accent:#7cf2b2;
  --accent-2:#4ce0b1;
  --danger:#ff4d5f;
  --shadow:0 20px 60px rgba(0,0,0,.35);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Outfit",system-ui,sans-serif;
  background:
    radial-gradient(circle at top, rgba(76,224,177,.12), transparent 30%),
    linear-gradient(180deg, #02060b 0%, var(--bg) 45%, #050a10 100%);
  color:var(--text);
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.container{width:min(1180px, calc(100% - 32px));margin:0 auto}
.site-header{
  position:sticky;top:0;z-index:30;
  background:rgba(3,8,13,.78);backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line)
}
.header-inner{display:flex;justify-content:space-between;align-items:center;padding:14px 0;gap:24px}
.brand-wrap{display:flex;align-items:center;gap:16px}
.custom-logo,.site-logo-fallback{height:54px;width:auto;object-fit:contain}
.brand-copy p,.brand-copy .eyebrow{margin:0}
.eyebrow,.small-label{
  text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--accent);font-weight:700
}
.main-nav ul{display:flex;gap:18px;list-style:none;padding:0;margin:0}
.main-nav a{padding:10px 14px;border-radius:999px}
.main-nav a:hover{background:rgba(124,242,178,.1)}
.site-main{min-height:60vh}
.hero,.show-hero{padding:60px 0 20px}
.hero-grid,.show-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center}
.hero-copy h1,.show-hero h1{font-size:clamp(2.3rem, 5vw, 4.8rem);line-height:1;margin:14px 0}
.lead{font-size:1.15rem;color:#d7e5f2}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}
.button-primary,.button-secondary,.mini-button{
  display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 20px;font-weight:700
}
.button-primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#04110b;box-shadow:var(--shadow)}
.button-secondary,.mini-button{border:1px solid var(--line);background:rgba(255,255,255,.03)}
.glass-card,.content-card,.timeline-card,.episode-card,.stat-card,.gallery-card,.contestant-card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)
}
.glass-card{padding:24px}
.hero-panel{padding:32px}
.hero-panel img{max-height:320px;object-fit:contain;margin:auto}
.pill{
  display:inline-flex;padding:9px 14px;border-radius:999px;background:rgba(124,242,178,.13);
  color:var(--accent);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em
}
.hero-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.hero-meta span{
  border:1px solid var(--line);padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.03);color:var(--muted)
}
.section-space{padding:34px 0}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px}
.section-heading h1,.section-heading h2,.content-card h2,.content-card h3,.episode-card h3,.timeline-card h3{margin:0 0 10px}
.section-heading p{margin:0;color:var(--muted);max-width:760px}
.archive-grid,.episode-grid,.contestant-grid,.gallery-grid,.timeline-grid,.stat-grid{
  display:grid;gap:22px
}
.archive-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.episode-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.contestant-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.timeline-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.stat-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.content-card-body,.episode-card-body{padding:18px}
.content-card p,.episode-card p,.timeline-card p,.stat-card p{color:var(--muted)}
.square-thumb{
  position:relative;display:block;aspect-ratio:1/1;overflow:hidden;
  border-radius:calc(var(--radius) - 2px);background:#071017
}
.square-thumb img,.gallery-card img,.contestant-profile-image img{width:100%;height:100%;object-fit:cover}
.content-card,.episode-card,.contestant-card{overflow:hidden}
.episode-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.95rem}
.timeline-card,.stat-card{padding:22px}
.content-with-sidebar{display:grid;grid-template-columns:1.4fr .8fr;gap:24px}
.sidebar-stack{display:grid;gap:18px;align-content:start}
.rich-content{line-height:1.8}
.rich-content p,.rich-content li{color:#dbe7f2}
.meta-list{list-style:none;padding:0;margin:0;display:grid;gap:10px;color:var(--muted)}
.contestant-card{position:relative}
.contestant-media{position:relative}
.evicted-tag{
  position:absolute;top:14px;left:14px;background:var(--danger);color:#fff;padding:8px 12px;
  border-radius:999px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.74rem
}
.is-evicted .square-thumb img,
.contestant-profile.is-evicted .contestant-profile-image img{
  filter:grayscale(1) contrast(1.02)
}
.contestant-profile{
  display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:24px;align-items:start
}
.contestant-profile-image{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:var(--radius)}
.gallery-card{aspect-ratio:1/1;overflow:hidden;padding:0}
.site-footer{margin-top:60px;padding:40px 0 0;border-top:1px solid var(--line);background:#050b10}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px}
.footer-list{list-style:none;padding:0;margin:0;display:grid;gap:8px;color:var(--muted)}
.copyright{padding:22px 0;color:var(--muted)}
.pagination,.nav-links{display:flex;gap:10px;margin-top:24px}
@media (max-width: 900px){
  .hero-grid,.show-hero-grid,.content-with-sidebar,.contestant-profile,.footer-grid{grid-template-columns:1fr}
  .header-inner{flex-direction:column;align-items:flex-start}
  .section-heading{flex-direction:column;align-items:flex-start}
}
