/* NINJA CHALLENGE X — Static CSS */
:root{
  --background:#160b09;
  --foreground:#fafafa;
  --surface:#251512;
  --surface-2:#39201c;
  --border:rgba(255,255,255,0.08);
  --muted:#8a7773;
  --accent:#f5c542;
  --accent-fg:#160b09;
  --primary:#d94325;
  --primary-fg:#fafafa;
  --black:#000;
}
*{box-sizing:border-box;margin:0;padding:0;border-color:var(--border)}
html,body{background:var(--background);color:var(--foreground);font-family:"Poppins",sans-serif;-webkit-font-smoothing:antialiased;line-height:1.4}
img,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--accent);color:var(--accent-fg)}

/* Utility */
.container{max-width:480px;margin:0 auto;position:relative}
.mono{font-family:"JetBrains Mono",monospace}
.italic{font-style:italic}

/* Nav */
nav{position:fixed;top:0;left:0;right:0;z-index:50;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;background:rgba(22,11,9,0.8);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
nav .logo{font-weight:900;font-style:italic;font-size:20px;letter-spacing:-0.04em;text-transform:uppercase}
nav .logo span{color:var(--accent)}
.chip{padding:4px 12px;border:1px solid rgba(245,197,66,0.3);border-radius:9999px;font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:0.15em;color:var(--accent)}
.nav-actions{display:flex;align-items:center;gap:10px}
.nav-register{padding:7px 12px;background:var(--accent);color:var(--accent-fg);border-radius:2px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}

/* Hero */
header.hero{padding:112px 24px 48px;position:relative;overflow:hidden;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end}
header.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
header.hero .overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(22,11,9,0.7),rgba(22,11,9,0.4),var(--background));z-index:-1;pointer-events:none}
.tag-pill{display:inline-block;padding:4px 12px;background:rgba(245,197,66,0.1);border:1px solid rgba(245,197,66,0.3);border-radius:2px;font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:0.15em;color:var(--accent)}
header.hero h1{font-size:48px;font-weight:900;text-transform:uppercase;font-style:italic;line-height:0.85;letter-spacing:-0.05em;margin:16px 0;text-shadow:0 4px 20px rgba(0,0,0,0.8)}
header.hero h1 span{color:var(--accent)}
header.hero p.lead{font-size:14px;color:rgba(250,250,250,0.9);max-width:320px;line-height:1.6;margin-bottom:24px}
header.hero p.lead strong{color:var(--foreground)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.tags .t{padding:4px 8px;background:rgba(22,11,9,0.6);border:1px solid var(--border);border-radius:2px;font-family:"JetBrains Mono",monospace;font-size:9px;text-transform:uppercase;letter-spacing:0.1em;color:var(--accent)}

/* Countdown */
.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:32px}
.countdown .cell{background:var(--surface);padding:12px;border:1px solid var(--border);border-radius:4px;display:flex;flex-direction:column;align-items:center}
.countdown .v{font-size:20px;font-weight:900;font-family:"JetBrains Mono",monospace;font-variant-numeric:tabular-nums}
.countdown .cell.accent .v{color:var(--accent)}
.countdown .l{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:700;letter-spacing:0.15em;margin-top:4px}

.btn-cta{display:block;width:100%;text-align:center;background:var(--accent);color:var(--accent-fg);font-weight:900;text-transform:uppercase;padding:16px;border-radius:2px;font-size:14px;letter-spacing:0.15em;border:0;cursor:pointer;font-family:inherit}
.btn-cta:active{transform:scale(0.98)}

/* Sections */
section{padding:48px 24px}
.kicker{display:inline-block;padding:2px 8px;background:rgba(245,197,66,0.1);border-left:2px solid var(--accent);font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:0.15em;color:var(--accent);margin-bottom:16px}
.sec-eyebrow{font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;color:var(--muted);letter-spacing:0.15em;margin-bottom:16px}
.sec-title{font-size:30px;font-weight:900;text-transform:uppercase;font-style:italic;letter-spacing:-0.05em;margin-bottom:8px}
.sec-title span{color:var(--accent)}
.sec-desc{font-size:14px;color:var(--muted);margin-bottom:24px;max-width:28rem}

/* Info rows */
.info-grid{display:grid;gap:24px}
.info-row{display:flex;align-items:flex-start;gap:16px}
.info-row .icon{width:40px;height:40px;background:var(--surface);border:1px solid var(--border);border-radius:4px;display:grid;place-items:center;flex-shrink:0}
.info-row .icon::before{content:"";display:block;width:8px;height:8px;background:var(--accent);transform:rotate(45deg)}
.info-row h3{font-weight:700;font-size:18px;line-height:1.2;text-transform:uppercase}
.info-row p{font-size:14px;color:var(--muted);margin-top:4px}

/* Categories */
.cat-grid{display:grid;gap:12px}
.cat{background:var(--surface);border-left:4px solid var(--accent);padding:20px;border-radius:2px}
.cat-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}
.cat h4{font-size:20px;font-weight:900;text-transform:uppercase;font-style:italic;letter-spacing:-0.05em;line-height:1}
.cat-tag{font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:0.15em;color:var(--accent)}
.cat-age{font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:0.1em;color:var(--muted);background:var(--background);border:1px solid var(--border);padding:4px 8px;border-radius:2px;white-space:nowrap}
.cat p{font-size:12px;color:var(--muted);line-height:1.6}

/* Guests */
.guest-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.guest{background:var(--surface);border:1px solid var(--border);padding:16px;border-radius:2px;display:flex;align-items:center;gap:12px}
.guest .avatar{width:48px;height:48px;background:var(--background);border:1px solid var(--border);border-radius:9999px;display:grid;place-items:center;flex-shrink:0;font-size:18px;font-weight:900;color:var(--accent)}
.guest h4{font-weight:700;font-size:14px;text-transform:uppercase;line-height:1.2}
.guest .role{font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:0.1em;color:var(--accent);margin-top:2px}
.guest .country{font-size:10px;color:var(--muted);margin-top:2px}

/* Course Map */
.map-box{width:100%;aspect-ratio:4/3;background:var(--surface);border:1px solid var(--border);border-radius:2px;overflow:hidden;display:grid;place-items:center;position:relative}
.map-box .veil{position:absolute;inset:0;background:rgba(22,11,9,0.8);backdrop-filter:blur(4px);z-index:10;display:grid;place-items:center;text-align:center;padding:0 24px}
.map-box .veil .q{font-size:36px;font-weight:900;text-transform:uppercase;font-style:italic;letter-spacing:-0.05em;color:var(--accent);margin-bottom:8px}
.map-box .veil .l{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;margin-bottom:4px}
.map-box .veil .d{font-size:12px;color:var(--muted);max-width:260px;margin:0 auto}
.map-note{font-size:12px;color:var(--muted);margin-top:12px;font-family:"JetBrains Mono",monospace;text-transform:uppercase;letter-spacing:0.1em}

/* Maps iframe */
.iframe-box{width:100%;aspect-ratio:4/3;background:var(--surface);border:1px solid var(--border);border-radius:2px;overflow:hidden}
.iframe-box iframe{width:100%;height:100%;border:0}
.link-arrow{margin-top:16px;display:inline-flex;align-items:center;gap:8px;font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;letter-spacing:0.15em;color:var(--accent)}
.link-arrow:hover{text-decoration:underline}

/* Gallery */
.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gallery-grid figure{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:2px}
.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gallery-grid figure:hover img{transform:scale(1.05)}
.gallery-grid figcaption{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(to top,rgba(0,0,0,0.9),transparent);padding:8px;font-family:"JetBrains Mono",monospace;font-size:9px;text-transform:uppercase;letter-spacing:0.1em;color:#d4d4d8}

/* Docs */
.docs-grid{display:grid;gap:12px}
.doc{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--border);padding:16px;border-radius:2px;transition:border-color .2s,background .2s}
.doc:hover{border-color:rgba(245,197,66,0.5);background:var(--surface-2)}
.doc .ico{width:40px;height:40px;background:var(--background);border:1px solid var(--border);display:grid;place-items:center;flex-shrink:0;font-family:"JetBrains Mono",monospace;font-size:9px;font-weight:900;color:var(--accent)}
.doc-body{flex:1;min-width:0}
.doc h4{font-weight:700;font-size:14px;text-transform:uppercase;line-height:1.2}
.doc p{font-size:12px;color:var(--muted);margin-top:4px}
.doc .arr{color:var(--accent);font-size:18px;transition:transform .2s}
.doc:hover .arr{transform:translateX(4px)}
.doc-disabled{opacity:.62;cursor:default}
.doc-disabled:hover{border-color:var(--border);background:var(--surface)}
.doc-disabled:hover .arr{transform:none}
.docs-foot{font-size:10px;color:var(--muted);margin-top:16px;font-family:"JetBrains Mono",monospace;text-transform:uppercase;letter-spacing:0.1em}

/* Pricelist */
#pricelist > * + *{margin-top:24px}
.signup-flow{font-family:"JetBrains Mono",monospace;font-size:11px;line-height:1.7;color:var(--accent)}
.price-note{font-size:12px;line-height:1.6;color:var(--muted);background:rgba(245,197,66,.08);border-left:2px solid var(--accent);padding:12px}
.price-note a{color:var(--accent);overflow-wrap:anywhere}
.price{background:var(--surface);padding:24px;position:relative;border-left:4px solid #3f3f46}
.price.highlight{border-left-color:var(--primary)}
.price .badge{position:absolute;top:0;right:0;background:var(--primary);color:var(--primary-fg);padding:4px 8px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:-0.02em}
.price-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}
.price .ptag{font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;color:var(--muted)}
.price.highlight .ptag{color:var(--primary)}
.price h4{font-size:20px;font-weight:900;text-transform:uppercase}
.price .amount{font-size:24px;font-weight:900;text-align:right;display:block}
.price .sub{font-size:10px;color:var(--muted);text-align:right}
.price ul{list-style:none;font-size:12px;color:var(--muted);margin-bottom:24px}
.price li{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.price li::before{content:"";width:4px;height:4px;background:var(--primary);flex-shrink:0}
.price-link{display:block;width:100%;padding:12px;text-align:center;font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:0.15em;background:transparent;border:1px solid var(--border);color:var(--foreground);cursor:pointer;font-family:inherit;transition:background .2s}
.price-link:hover{background:var(--surface-2)}
.price.highlight .price-link{background:#fff;color:#000;border:0}
.price.highlight .price-link:hover{background:#e4e4e7}
.price-link-disabled{cursor:default;opacity:.55}
.price-link-disabled:hover{background:transparent}

/* Sponsors */
.sp-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sp{background:var(--surface);border:1px solid var(--border);aspect-ratio:3/2;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px;border-radius:2px;transition:border-color .2s}
.sp:hover{border-color:rgba(245,197,66,0.5)}
.sp .n{font-size:16px;font-weight:900;text-transform:uppercase;letter-spacing:-0.02em;text-align:center;line-height:1.1}
.sp .t{margin-top:4px;font-family:"JetBrains Mono",monospace;font-size:9px;text-transform:uppercase;letter-spacing:0.15em;color:var(--accent);text-align:center}

/* Footer */
footer{background:#000;padding:48px 24px;border-top:1px solid var(--border);margin-top:32px;display:flex;flex-direction:column;gap:32px}
footer .ghost{font-size:36px;font-weight:900;text-transform:uppercase;font-style:italic;color:rgba(255,255,255,0.1);user-select:none;line-height:1}
footer .lbl{font-size:10px;text-transform:uppercase;color:#52525b;font-family:"JetBrains Mono",monospace;letter-spacing:0.15em;margin-bottom:12px}
footer p{font-size:14px;color:#a1a1aa}
footer a:hover{color:var(--accent)}
footer .copy{padding-top:32px;border-top:1px solid var(--border);font-size:9px;color:#52525b;text-transform:uppercase;letter-spacing:0.15em}

@media (min-width:640px){
  header.hero h1{font-size:72px}
  .sec-title{font-size:40px}
}

@media (max-width:520px){
  .chip{display:none}
  nav{padding:14px 16px}
}

@media (min-width:900px){
  section{max-width:1120px;margin:0 auto;padding:72px 40px}
  header.hero{padding:128px max(40px,calc((100vw - 1120px)/2)) 64px}
  header.hero p.lead{max-width:640px;font-size:16px}
  .info-grid,.cat-grid{grid-template-columns:1fr 1fr}
  .guest-grid{grid-template-columns:repeat(4,1fr)}
  .gallery-grid{grid-template-columns:repeat(4,1fr)}
  .docs-grid{grid-template-columns:repeat(3,1fr)}
  .sp-grid{grid-template-columns:repeat(3,1fr)}
  footer{padding-left:max(40px,calc((100vw - 1120px)/2));padding-right:max(40px,calc((100vw - 1120px)/2))}
}
