@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;600;700;800;900&family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --bg:#080808;
  --bg-soft:#101010;
  --panel:#151515;
  --panel-2:#1e1e1e;
  --line:#303030;
  --text:#f4f4f4;
  --muted:#a8a8a8;
  --accent:#e0202b;
  --accent-dark:#a9151e;
  --silver:#cfcfcf;
  --white:#fff;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}
img{max-width:100%;display:block}
.container{width:min(1180px,92%);margin:auto}

.nav{
  position:absolute;z-index:20;top:0;left:0;right:0;padding:18px 0;
  background:linear-gradient(#000e,transparent);
}
.navin{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:10px;font-size:30px;font-weight:900;letter-spacing:1px}
.brand-logo{width:150px;height:auto;object-fit:contain}
.links{display:flex;gap:24px}
.links a{color:#fff;text-decoration:none;font-weight:700;font-size:13px;text-transform:uppercase}
.links a:hover{color:var(--accent)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;padding:13px 21px;
  border-radius:4px;background:var(--accent);color:#fff;text-decoration:none;
  font-weight:900;text-transform:uppercase;letter-spacing:.5px;border:1px solid var(--accent);
  cursor:pointer;transition:.2s ease;
}
.btn:hover{background:#fff;color:#111;border-color:#fff;transform:translateY(-1px)}

.hero{
  min-height:760px;position:relative;overflow:hidden;display:flex;align-items:center;
  background:
    radial-gradient(circle at 78% 40%,#2c2c2c 0,#171717 24%,#0a0a0a 58%,#050505 100%);
}
.hero:before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,#050505 0%,#050505dd 38%,#05050572 70%,#050505 100%);
}
.dust{
  position:absolute;right:-5%;bottom:2%;width:65%;height:50%;
  background:radial-gradient(ellipse at center,#e0202b 0,transparent 65%);
  filter:blur(25px);opacity:.16;
}
.rider{position:absolute;right:3%;bottom:-3%;width:min(58vw,760px);height:680px;opacity:.92}
.rider:before{
  content:"";position:absolute;right:15%;bottom:12%;width:58%;height:72%;
  border-radius:48% 45% 18% 18%;transform:skew(-9deg);
  background:linear-gradient(155deg,#252525 0 24%,#e0202b 25% 45%,#111 46% 70%,#d6d6d6 71% 76%,#111 77%);
  box-shadow:0 0 80px #e0202b20;
}
.rider:after{
  content:"🏍️";position:absolute;right:2%;bottom:2%;font-size:260px;
  filter:grayscale(1) drop-shadow(0 25px 35px #000);
}
.hero-copy{position:relative;z-index:3;padding-top:100px;max-width:700px}
.eyebrow{font-weight:900;color:var(--accent);letter-spacing:4px;text-transform:uppercase}
.hero h1{
  font-family:'Barlow Condensed';font-size:clamp(70px,10vw,145px);line-height:.78;
  margin:15px 0;text-transform:uppercase;font-weight:900;letter-spacing:-2px
}
.hero h1 span{display:block;color:transparent;-webkit-text-stroke:1px #fff}
.meta{display:flex;gap:20px;flex-wrap:wrap;color:#ddd;margin:25px 0}
.count{display:flex;gap:8px;margin:25px 0}
.unit{
  background:#111c;border:1px solid #ffffff22;backdrop-filter:blur(8px);
  padding:15px 18px;min-width:82px;text-align:center
}
.unit b{font:800 40px 'Barlow Condensed';display:block}
.unit small{color:#aaa;text-transform:uppercase;font-size:9px;letter-spacing:1px}

.section{padding:90px 0}
.section.dark{background:#0c0c0c}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}
.section h2{font:900 clamp(44px,6vw,76px)/.9 'Barlow Condensed';text-transform:uppercase;margin:0}
.kicker{color:var(--accent);font-weight:900;letter-spacing:3px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:#111;border:1px solid #242424;overflow:hidden}
.cardimg{
  height:210px;background:linear-gradient(135deg,#242424,#080808);position:relative
}
.cardimg:after{
  content:"🏍️";position:absolute;right:8%;bottom:-18px;font-size:130px;filter:grayscale(1)
}
.cardbody{padding:22px}
.cardbody h3{font:800 32px 'Barlow Condensed';margin:0 0 8px;text-transform:uppercase}
.muted{color:var(--muted)}
.classes{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.classcard{
  min-height:180px;padding:25px;background:linear-gradient(150deg,#1a1a1a,#0b0b0b);
  border:1px solid #292929;position:relative;overflow:hidden
}
.classcard:after{
  content:"🏍";position:absolute;right:-10px;bottom:-25px;font-size:130px;opacity:.14;filter:grayscale(1)
}
.classcard h3{font:800 34px 'Barlow Condensed';margin:0}
.schedule{border-top:1px solid #2a2a2a}
.row{display:grid;grid-template-columns:140px 1fr 180px;gap:20px;padding:22px 0;border-bottom:1px solid #222}
.date{font-weight:900;color:var(--accent)}
.winners{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.winner{position:relative;min-height:330px;background:linear-gradient(#181818,#080808);padding:25px;overflow:hidden}
.winner .num{font:900 100px 'Barlow Condensed';color:#ffffff18;position:absolute;right:10px;top:-15px}
.winner h3{position:absolute;bottom:25px;font:800 35px 'Barlow Condensed';margin:0}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.gallery .g{
  aspect-ratio:1;display:flex;align-items:end;padding:15px;background:linear-gradient(145deg,#242424,#0a0a0a);
  font-weight:800
}
.cta{padding:100px 0;text-align:center;background:linear-gradient(135deg,#1a1a1a,#090909)}
.cta h2{font:900 clamp(55px,8vw,105px)/.85 'Barlow Condensed';margin:0 0 30px;text-transform:uppercase}
.footer{padding:35px 0;border-top:1px solid #222;color:#888}

.adminbody{background:#f2f2f2;color:#161616}
.adminwrap{display:grid;grid-template-columns:230px 1fr;min-height:100vh}
.sidebar{background:#111;color:#fff;padding:25px}
.sidebar a{display:block;color:#bbb;text-decoration:none;padding:12px 0}
.sidebar a:hover{color:#fff}
.main{padding:35px}
.table{width:100%;border-collapse:collapse;background:#fff}
.table th,.table td{padding:12px;border-bottom:1px solid #ddd;text-align:left}
.form{background:#fff;padding:25px;border-radius:8px}
.form input,.form textarea,.form select{
  width:100%;padding:12px;border:1px solid #ccc;border-radius:5px;margin:6px 0 16px
}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.notice{padding:12px;background:#e8f7e8;border-left:4px solid #2b9d45;margin-bottom:15px}

@media(max-width:800px){
  .links{display:none}
  .hero{min-height:700px}
  .rider{right:-30%;opacity:.55}
  .cards,.classes,.winners,.gallery{grid-template-columns:1fr 1fr}
  .row{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr}
  .adminwrap{grid-template-columns:1fr}
  .sidebar{position:static}
  .hero h1{font-size:72px}
  .brand-logo{width:120px}
}
@media(max-width:520px){
  .cards,.classes,.winners,.gallery{grid-template-columns:1fr}
  .unit{min-width:66px;padding:10px}
  .unit b{font-size:30px}
  .nav{padding:12px 0}
  .nav .btn{padding:10px 13px;font-size:11px}
  .brand-logo{width:105px}
}
