@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--bg: #06090f;--surface: #11161f;--surface-2: #171e2a;--line: #273245;--text: #f2f3f5;--muted: #9aa6ba;--accent: #c41f22;--accent-soft: #8d1218;--success: #24b273;--radius: 2px;--container: 1220px;--fast: .18s;--normal: .32s}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:Space Grotesk,sans-serif;color:var(--text);background:radial-gradient(1200px 700px at 15% -10%,rgba(196,31,34,.16),transparent 50%),radial-gradient(800px 600px at 100% 0%,rgba(73,93,124,.18),transparent 44%),var(--bg)}a{color:inherit;text-decoration:none}.site-shell{min-height:100vh}.topbar{width:min(var(--container),95vw);margin:18px auto 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 14px;position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.brand-row{display:flex;align-items:center;gap:12px;font-weight:700}.brand-mark{width:18px;height:18px;background:linear-gradient(140deg,var(--accent),transparent 70%);border:1px solid var(--accent)}.brand-image{display:flex;align-items:center;justify-content:center;min-height:34px}.brand-image img{display:block;width:auto;height:34px;max-width:auto;object-fit:contain}.main-nav{display:flex;align-items:center;gap:24px}.nav-link{color:var(--muted);font-size:.95rem;transition:color var(--fast) ease;padding-bottom:8px;border-bottom:2px solid transparent}.nav-link.active,.nav-link:hover{color:var(--text);border-color:var(--accent)}.cta-btn,.ghost-btn,.outline-danger{border:1px solid transparent;padding:12px 24px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:transform var(--fast),background var(--fast),border-color var(--fast)}.cta-btn{background:var(--accent);color:#fff}.cta-btn:hover{transform:translateY(-2px);background:#dd272a}.ghost-btn{background:transparent;border-color:var(--line);color:var(--text)}.ghost-btn:hover{border-color:var(--text)}.outline-danger{background:transparent;border-color:var(--accent);color:var(--accent)}.page-wrap{width:min(var(--container),95vw);margin:0 auto;padding:38px 0 50px}.page h1{margin:0;font-size:clamp(2rem,5.2vw,5rem);line-height:1.03}.page h2{margin:0;font-size:clamp(1.4rem,2.3vw,2.4rem)}.page p{color:var(--muted);line-height:1.6}.hero{max-width:860px}.hero p{font-size:1.35rem;max-width:860px}.hero-actions{margin-top:34px;display:flex;gap:14px}.stats-grid{margin-top:50px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.panel{background:linear-gradient(160deg,#171e2ae6,#0f131be0);border:1px solid var(--line);padding:26px;transition:transform var(--normal),border-color var(--normal)}.panel:hover{transform:translateY(-4px);border-color:#3b4f6f}.stat-card h3{font-size:clamp(2rem,3vw,3.5rem);margin:12px 0}.muted{color:#8e9db4;text-transform:uppercase;letter-spacing:.05em;font-size:.82rem}.microcopy{font-family:IBM Plex Mono,monospace;font-size:.82rem;color:#92a3bd}.upcoming{margin-top:42px;display:flex;justify-content:space-between;align-items:center;gap:20px}.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.chip{font-family:IBM Plex Mono,monospace;font-size:.78rem;border:1px solid var(--line);padding:6px 10px;color:#b8c0ce;text-transform:uppercase}.title-block{max-width:860px;margin-bottom:28px}.timeline{display:grid;gap:18px;border-left:2px solid #233044;margin-left:26px;padding-left:32px}.timeline-item{position:relative}.timeline-item:before{content:"";position:absolute;left:-43px;top:24px;width:10px;height:10px;border-radius:50%;border:2px solid var(--accent);background:var(--bg)}.page-light{color:#141821;background:#e8eaee;padding:36px;border:1px solid #d6dce6}.page-light p,.page-light .tab-btn{color:#596173}.tab-row{border-bottom:1px solid #6d7585;margin-bottom:26px;display:flex;gap:18px}.tab-btn{border:0;background:transparent;text-transform:uppercase;font-weight:700;letter-spacing:.08em;padding:14px 0;cursor:pointer}.tab-btn.active{color:#0f141c}.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.event-card{border:1px solid #2d384d;background:#101723;color:#e7eaf0;transition:transform var(--normal)}.event-card:hover{transform:translateY(-5px)}.event-thumb{height:220px;background:linear-gradient(145deg,#1b2738,#0f1520);display:flex;justify-content:flex-end;padding:14px}.event-date{background:var(--accent);color:#fff;font-weight:700;font-family:IBM Plex Mono,monospace;padding:8px;min-width:54px;text-align:center}.event-body{padding:18px}.about-split{display:grid;gap:28px;grid-template-columns:1fr 1.35fr}.kicker{letter-spacing:.12em;text-transform:uppercase;color:#c6d1df}.about-copy hr{border:0;border-top:1px solid var(--line);margin:24px 0}.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.team-card .avatar,.profile-box .avatar{width:72px;height:72px;border:1px solid var(--line);display:grid;place-items:center;margin-bottom:12px;font-weight:700;color:#e1e8f3;background:#0a0f16}.team-card .role{color:#ef4748;font-family:IBM Plex Mono,monospace;text-transform:uppercase}.dashboard-shell{display:grid;grid-template-columns:260px 1fr;gap:0;min-height:720px}.dashboard-side{border-right:0}.profile-box{display:flex;gap:14px;align-items:center;margin-bottom:20px}.profile-box .avatar{margin:0;width:52px;height:52px}.side-menu{list-style:none;margin:0;padding:0;display:grid;gap:8px}.side-menu li{padding:12px 14px;color:#9fabc0;border:1px solid transparent}.side-menu li.active{border-color:var(--line);background:var(--surface-2);color:var(--text)}.dashboard-main{border:1px solid var(--line);padding:30px}.dash-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.registration-list{margin-top:14px;border:1px solid var(--line)}.registration-row{display:grid;grid-template-columns:130px 1fr;gap:14px;padding:14px;border-bottom:1px solid var(--line)}.registration-row:last-child{border-bottom:0}.time-col{display:grid;gap:6px;font-family:IBM Plex Mono,monospace;color:#b8c3d8}.resource-grid{margin-top:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.contact-page{display:grid;place-items:center;min-height:calc(100vh - 190px)}.back-link{justify-self:start;margin-bottom:12px;text-transform:uppercase;letter-spacing:.1em;color:#9aa6ba;font-family:IBM Plex Mono,monospace}.contact-form{width:min(520px,100%);display:grid;gap:11px}.contact-form label{color:#a8b3c5;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:.78rem}.contact-form input,.contact-form textarea,.contact-form select{background:#050910;color:#f0f2f6;border:1px solid var(--line);padding:12px 14px;font:inherit}.contact-form input.error{border-color:var(--accent);animation:pulse .5s ease-in-out}.error-text{color:#f65d5e;font-family:IBM Plex Mono,monospace;margin:0}.success-text{color:var(--success);margin:0}.menu-toggle{display:none}[data-reveal]{opacity:0;transform:translateY(16px)}[data-reveal].is-visible{animation:riseIn var(--normal) ease forwards;animation-delay:var(--delay, 0ms)}.page-enter{animation:fadeIn .42s ease}@keyframes riseIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%{box-shadow:0 0 #c41f2273}to{box-shadow:0 0 0 7px #c41f2200}}@media(max-width:1080px){.event-grid,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-split,.dashboard-shell{grid-template-columns:1fr}.dashboard-side{border-right:1px solid var(--line)}}@media(max-width:840px){.main-nav{display:none}.main-nav.open{position:absolute;left:0;right:0;top:56px;display:grid;background:#0b1018;border:1px solid var(--line);padding:15px;gap:10px}.menu-toggle{display:block;background:transparent;color:var(--text);border:1px solid var(--line);padding:8px 12px}.event-grid,.stats-grid,.resource-grid,.team-grid{grid-template-columns:1fr}.upcoming,.dash-head{flex-direction:column;align-items:flex-start}.hero p{font-size:1.05rem}.brand-image img{height:28px;max-width:140px}.page-light{padding:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
