/*
Theme Name: Next Big Teen Full Editable Backend
Theme URI: https://nextbigteen.com
Author: The Konnected
Description: Full editable WordPress theme for Next Big Teen. Every frontend item is editable under Appearance > Customize > Next Big Teen Site Identity: words, buttons, photos, links, videos, sponsor logos, rules dropdown, menu, hero, galleries, and footer.
Version: 3.0
Requires at least: 5.8
Tested up to: 6.5
License: GPLv2 or later
Text Domain: nextbigteen
*/

:root{--bg:#04071c;--panel:#0b1037;--card:#111744;--pink:#ff0f91;--purple:#6e36ff;--gold:#ffd34d;--soft:#dfe2ff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:white;font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{width:min(1180px,92%);margin:auto}
.top{background:linear-gradient(90deg,#150244,#4f006f,#071969);padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12)}
header{position:sticky;top:0;z-index:5;background:rgba(4,7,28,.96);backdrop-filter:blur(15px);border-bottom:1px solid rgba(255,255,255,.12)}
.nav{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0}
.logo{font-weight:1000;font-size:34px;text-transform:uppercase}
.logo span{color:var(--gold)}
.menu{display:flex;gap:20px;flex-wrap:wrap;align-items:center}
.menu a{text-transform:uppercase;font-size:14px;font-weight:900}
.cta{background:linear-gradient(135deg,var(--pink),var(--purple));padding:13px 20px;border-radius:999px}
.hero{min-height:760px;background:var(--hero-image) center/cover no-repeat}
.section{padding:88px 0}
.alt{background:linear-gradient(180deg,#070925,#0d103d)}
.eyebrow{text-align:center;color:var(--pink);font-weight:1000;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}
.title{font-size:clamp(38px,5vw,64px);text-align:center;text-transform:uppercase;margin:0 0 14px;font-weight:1000;letter-spacing:-2px}
.subtitle{font-size:19px;line-height:1.65;color:var(--soft);text-align:center;width:min(850px,92%);margin:0 auto 46px}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.copy .eyebrow,.copy .title{text-align:left}
.copy p{font-size:20px;color:#dbe0ff;line-height:1.78}
.buttons{display:flex;gap:16px;flex-wrap:wrap}
.btn{display:inline-flex;border-radius:999px;padding:16px 25px;font-weight:1000;text-transform:uppercase;align-items:center;justify-content:center}
.primary{background:linear-gradient(135deg,var(--pink),var(--purple))}
.secondary{border:2px solid rgba(255,255,255,.78);background:rgba(255,255,255,.08)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.stat{text-align:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:23px;padding:28px 18px}
.stat strong{display:block;color:var(--gold);font-size:42px;font-weight:1000}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card,.person,.gallery-card,.video{background:var(--card);border:1px solid rgba(255,255,255,.1);border-radius:24px;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.3)}
.card{padding:30px}
.card h3{font-size:25px;margin:0 0 12px}
.card p,.gallery-card p,.person p,.video p{color:#d4d7ff;line-height:1.55}
.icon{width:62px;height:62px;border-radius:18px;background:linear-gradient(135deg,var(--pink),var(--purple));display:flex;align-items:center;justify-content:center;font-size:30px;margin-bottom:18px}
.category{min-height:145px;border-radius:24px;background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.1);padding:22px}
.category span{display:inline-flex;background:rgba(255,15,145,.2);border-radius:999px;padding:7px 12px;font-weight:900;font-size:12px;text-transform:uppercase}
.rules-small{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.rule{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.1);border-radius:23px;padding:20px}
.rule strong{display:inline-flex;width:42px;height:42px;border-radius:50%;background:var(--gold);color:#080b2f;align-items:center;justify-content:center;margin-bottom:14px;font-weight:1000}
.rule p{margin:0;color:#d9ddff;line-height:1.55;font-weight:700}
.rules-dropdown{background:linear-gradient(135deg,rgba(255,15,145,.18),rgba(21,213,255,.10));border:1px solid rgba(255,255,255,.18);border-radius:24px;overflow:hidden}
.rules-dropdown summary{cursor:pointer;padding:28px 32px;font-size:26px;font-weight:900;text-transform:uppercase;list-style:none;background:linear-gradient(90deg,var(--pink),var(--purple))}
.rules-dropdown summary::-webkit-details-marker{display:none}
.rules-dropdown summary:after{content:'+';float:right;font-size:34px}
.rules-dropdown[open] summary:after{content:'–'}
.rules-content{padding:35px}
.rules-content li{margin-bottom:18px;line-height:1.7;color:#e4e7ff}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.step{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.1);border-radius:23px;padding:24px}
.step span{color:var(--pink);font-weight:1000;text-transform:uppercase}
.prizes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.prize{background:linear-gradient(135deg,rgba(255,47,179,.18),rgba(21,213,255,.1));border-radius:23px;padding:24px}
.person img,.gallery-card img{height:230px;width:100%;object-fit:cover}
.person div,.gallery-card div,.video div:last-child{padding:16px}
.video-thumb{height:230px;background:center/cover no-repeat;display:flex;align-items:center;justify-content:center;position:relative}
.video-thumb:before{content:'';position:absolute;inset:0;background:rgba(0,0,0,.35)}
.play{z-index:1;width:72px;height:72px;border-radius:50%;background:var(--pink);display:flex;align-items:center;justify-content:center;font-size:34px}
.sponsor-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.sponsor{height:130px;background:rgba(255,255,255,.06);border-radius:22px;border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;padding:18px}
.sponsor img{max-height:90px;max-width:100%;object-fit:contain}
.scholarship{margin-top:35px;text-align:center;color:#f0f2ff;font-size:20px;line-height:1.65;background:rgba(255,255,255,.07);border-radius:28px;padding:30px}
.contact-box{background:linear-gradient(135deg,rgba(255,47,179,.2),rgba(21,213,255,.11));border-radius:34px;padding:48px;text-align:center}
.footer{background:#02020d;padding:46px 0;text-align:center;color:#c3c7ff}
@media(max-width:980px){.menu{display:none}.split,.stats,.grid3,.grid4,.rules-small,.steps,.prizes,.sponsor-grid{grid-template-columns:1fr}.hero{min-height:520px}}


/* Full update: one rules dropdown + visible YouTube thumbnails */
.rules-dropdown{
  background:linear-gradient(135deg,rgba(255,15,145,.18),rgba(21,213,255,.10));
  border:1px solid rgba(255,255,255,.18);
  border-radius:24px;
  overflow:hidden;
}
.rules-dropdown summary{
  cursor:pointer;
  padding:28px 32px;
  font-size:26px;
  font-weight:900;
  text-transform:uppercase;
  list-style:none;
  background:linear-gradient(90deg,var(--pink),var(--purple));
}
.rules-dropdown summary::-webkit-details-marker{display:none}
.rules-dropdown summary:after{content:'+';float:right;font-size:34px}
.rules-dropdown[open] summary:after{content:'–'}
.rules-content{padding:35px}
.rules-content li{margin-bottom:18px;line-height:1.7;color:#e4e7ff}
.video-thumb{
  height:230px;
  background:center/cover no-repeat;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
}
.video-thumb:before{
  content:'';
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.35);
}
.play{
  z-index:1;
  width:72px;
  height:72px;
  border-radius:50%;
  background:var(--pink);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:34px;
}

/* About section editable photo box */
.about-photo-box{
  min-height:420px;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 16px 40px rgba(0,0,0,.3);
  background:#111744 center/cover no-repeat;
  display:flex;
  align-items:center;
  justify-content:center;
}
.about-photo-box span{
  color:#d4d7ff;
  font-weight:900;
  text-align:center;
  padding:20px;
}
