/* YOLO event: existing Golos type and soft glass geometry, scoped theme. */
html.event-shell { --bg:#141714; --text:#f0f1ea; --muted:#bfc3b8; --line:rgba(222,228,206,.2); --glass:rgba(42,48,39,.8); --accent:#d3dfb6; --blue:#c3cfaa; --cyan:#d3dfb6; --violet:#d5c8b5; }
html.event-shell body { background:radial-gradient(ellipse at 95% 5%,rgba(111,125,85,.18),transparent 45%),#141714; }
.event-shell #topbar,.event-shell #topbar.scrolled { background:linear-gradient(120deg,rgba(108,118,93,.18),rgba(31,36,30,.95)); border-color:var(--line); box-shadow:inset 0 1px 0 rgba(240,243,224,.15),0 12px 36px rgba(10,13,8,.2); }
.event-shell .identity { background:rgba(225,230,210,.07); border-color:var(--line); }
.event-shell .nav-pill a.active::after { background:#c3cfaa; box-shadow:none; }
.event-shell .nav-pill a:hover,.event-shell .nav-pill a.active { background:rgba(220,228,202,.08); }
.event-shell .site-footer { background:#141714; border-color:var(--line); }
.event-shell .footer-main { border-color:var(--line); }
.event-shell .site-footer p,.event-shell .site-footer span,.event-shell .site-footer a { color:var(--muted); }
.event-shell .primary-btn { color:#20251b; background:linear-gradient(120deg,#e3ebd3,#baca9c); border-color:#dae5c5; box-shadow:inset 0 1px 0 #f0f3e4; }
.event-shell .secondary-btn { color:var(--text); background:rgba(225,230,210,.07); border-color:var(--line); }
.event-shell .primary-btn,.event-shell .secondary-btn { font-size:15px; letter-spacing:0; text-transform:none; min-height:48px; border-radius:14px; }
.event-shell .glass { background:linear-gradient(125deg,rgba(226,235,207,.07),transparent 65%),var(--glass); box-shadow:inset 0 1px 0 rgba(240,243,224,.16),0 15px 42px rgba(10,13,8,.15); border-color:var(--line); }
.event-page.page { width:min(980px,calc(100% - 64px)); margin:0 auto; padding:120px 0 80px; min-height:75vh; text-align:left; }
.event-page h1,.event-page h2,.event-page h3 { color:var(--text); font-family:inherit; text-transform:none; text-wrap:wrap; text-align:left; }
.event-page h1 { font-size:clamp(42px,5.7vw,76px); line-height:1.06; letter-spacing:-.055em; margin:0 0 24px; }
.event-page h2 { font-size:clamp(28px,3vw,40px); line-height:1.16; letter-spacing:-.035em; margin:0 0 20px; }
.event-page h3 { font-size:23px; line-height:1.3; letter-spacing:-.02em; margin:0 0 14px; }
.event-page p,.event-page li { font-size:16px; line-height:1.7; color:#d1d4cc; text-align:left; }
.event-page p { margin:0 0 18px; }.event-page strong { color:var(--text); }
.event-local-nav { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:42px; }
.event-local-nav a { padding:9px 16px; border-radius:12px; font-size:14px; color:var(--muted); }
.event-local-nav a[aria-current],.event-local-nav a:hover { color:var(--text); background:rgba(208,222,187,.09); }
.event-hero { padding:12px 0 54px; max-width:880px; }.event-hero .button-row { justify-content:flex-start; }
.event-page .event-intro-label { font-size:14px; color:#ced8b9; margin-bottom:22px; }
.event-hero h1 span { color:#bacb9f; }
.event-page .event-hero-copy { font-size:20px; max-width:650px; line-height:1.6; margin-bottom:28px; }
.event-weeks { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.event-week { padding:36px; border-radius:26px; }
.event-week.event-week-war { --glass:rgba(59,43,39,.78); border-color:rgba(214,177,163,.22); }
.event-page .event-week-label { font-size:14px; margin-bottom:16px; }.event-week h2 { font-size:44px; }
.event-page .event-week-state { margin:26px 0 0; color:#d5e0be; font-size:15px; }
.event-page .event-week-war .event-week-state { color:#e8bfb2; }
.event-world { display:block; padding:48px 0; margin-top:32px; border-top:1px solid var(--line); }
.event-world>div { max-width:65ch; }.event-tech { margin-top:32px; display:grid; gap:18px; }
.event-tech p { margin:0; }.event-tech strong,.event-tech span { display:block; }
.event-victory { padding:40px 0 48px; border-top:1px solid var(--line); }
.event-victory-options { display:grid; grid-template-columns:1fr; gap:16px; margin:24px 0; }
.event-victory-options>div { padding:24px; background:#262d24; border:1px solid var(--line); border-radius:20px; }.event-victory-options p { max-width:65ch; margin-bottom:0; }.event-or { color:var(--muted); padding-left:24px; }
.event-inline-link { color:#d2dfb9; text-decoration:underline; text-underline-offset:5px; font-size:15px; }
.event-rewards { padding:32px; display:grid; grid-template-columns:1fr; gap:24px; border-radius:24px; }
.event-page .event-prize-amount { font-size:64px; font-weight:700; line-height:1.1; letter-spacing:-.05em; color:var(--text); }
.event-rewards p:last-child { margin-bottom:0; max-width:42ch; }
.event-sponsor { padding:44px 0; max-width:72ch; }.event-sponsor h2 { font-size:22px; }
.event-final { text-align:left; padding:40px 0 12px; border-top:1px solid var(--line); }.event-final p { margin-bottom:26px; }
.event-page-heading { max-width:780px; margin-bottom:42px; }.event-page-heading h1 { font-size:clamp(36px,4.6vw,56px); }.event-page-heading p { font-size:18px; }
.event-application-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; max-width:780px; }
.event-application-aside h2 { font-size:23px; }.event-application-aside .event-inline-link { display:block; margin-top:26px; }
.event-form { padding:32px; display:grid; grid-template-columns:minmax(0,1fr); gap:24px; border-radius:24px; }
.event-form label { display:flex; flex-direction:column; gap:10px; font-size:15px; color:var(--text); letter-spacing:0; }
.event-form input,.event-form select { width:100%; min-width:0; height:50px; padding:12px 14px; font:inherit; font-size:16px; color:var(--text); background:#1a1e18; border:1px solid rgba(222,228,206,.26); border-radius:12px; }
.event-form input::placeholder { color:#a8afa0; opacity:1; }.event-form small { font-size:14px; color:var(--muted); line-height:1.5; }
.event-form-meta,.event-form-wide,.event-form-status,.event-form button { grid-column:1/-1; }
.event-form-meta { color:var(--muted); font-size:15px; line-height:1.7; }
.event-page .event-form-status { margin:0; }.event-form-status:empty { display:none; }.event-form-status[data-error] { color:#efb9aa; }
.event-form button:disabled { opacity:.6; cursor:wait; }
.event-rule-layout { display:block; max-width:780px; }
.event-rule-nav { display:flex; flex-wrap:wrap; gap:12px 24px; margin-bottom:32px; padding:20px; background:#262d24; border:1px solid var(--line); border-radius:20px; }.event-rule-nav a { color:var(--text); font-size:15px; line-height:1.5; text-decoration:underline; text-underline-offset:4px; }.event-rule-nav a:hover { color:var(--accent); }
.event-rule-section { padding:0 0 38px; margin-bottom:34px; border-bottom:1px solid var(--line); scroll-margin-top:110px; }.event-rule-section h2 { font-size:28px; }
.event-rule-groups { display:grid; grid-template-columns:1fr; gap:24px; }.event-rule-groups h3 { font-size:18px; margin-top:12px; }
.event-rule-section ul { padding-left:22px; margin:0; }.event-rule-section li+li { margin-top:8px; }
.event-page .event-note { margin:24px 0 0; padding:16px 20px; border-radius:14px; background:rgba(205,220,183,.07); color:#d8e3c5; }
.event-page a:focus-visible,.event-page button:focus-visible,.event-form input:focus-visible,.event-form select:focus-visible { outline:2px solid #d3dfb6; outline-offset:4px; }
.event-admin-list { display:grid; gap:18px; }.event-admin-card { padding:26px; }.event-admin-card dl { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }.event-admin-card dt { color:var(--muted); font-size:14px; }.event-admin-card dd { margin:5px 0 0; }.event-admin-social { grid-column:1/-1; overflow-wrap:anywhere; }
@media(max-width:800px) {
.event-page.page { width:calc(100% - 40px); padding-top:110px; }.event-local-nav { margin-bottom:28px; gap:2px; }.event-local-nav a { padding:8px 12px; }
.event-hero { padding-top:0; }.event-weeks,.event-world,.event-rewards,.event-application-layout,.event-rule-layout { grid-template-columns:1fr; gap:24px; }
.event-world { padding:56px 0; }.event-victory { padding-bottom:48px; }.event-victory-options { grid-template-columns:1fr; gap:12px; }
.event-week,.event-rewards,.event-form { padding:24px; }.event-rule-nav { position:static; margin-bottom:12px; }.event-form { grid-template-columns:1fr; }.event-rule-groups { grid-template-columns:1fr; }
.event-page h1 { font-size:clamp(36px,8vw,52px); }.event-page .event-hero-copy { font-size:18px; }.event-page .event-prize-amount { font-size:52px; }
.event-shell .nav-pill.open { background:#22281f; border-color:var(--line); }
}
@media(prefers-reduced-motion:no-preference) { .event-page .primary-btn,.event-page .secondary-btn { transition:transform .18s ease,filter .18s ease; }.event-page .primary-btn:hover,.event-page .secondary-btn:hover { transform:translateY(-2px); filter:brightness(1.05); } }
@media(prefers-reduced-transparency:reduce) { .event-shell .glass,.event-shell #topbar { backdrop-filter:none; -webkit-backdrop-filter:none; background:#252c21; } }

/* v5 visual direction: graphite canvas, slate surfaces and restrained amber accents. */
html.event-shell { --bg:#0c1118; --text:#f3f5f7; --muted:#aeb9c7; --line:rgba(178,199,220,.24); --glass:#17222f; --accent:#f0b35b; --accent-strong:#f39a45; --ice:#a8d5ee; --ink:#101923; }
html.event-shell body { background:radial-gradient(circle at 76% 6%,rgba(68,101,133,.26),transparent 34rem),linear-gradient(135deg,#0b1118 0%,#101923 52%,#1b1715 100%); color:var(--text); }
.event-shell #topbar,.event-shell .site-footer { background:#111a26; border-color:rgba(175,204,230,.25); }
.event-shell .event-page { width:min(1180px,calc(100% - 64px)); max-width:1180px; }
.event-shell .header-actions svg { width:24px; height:24px; display:block; }
.event-shell .header-actions { display:flex; align-items:center; gap:12px; width:auto; height:auto; }
.event-shell .event-local-nav { background:transparent; border-color:transparent; box-shadow:none; }
.event-shell .event-local-nav a[aria-current="page"] { background:#f0b35b; color:#111821; border-color:#f8d08a; }
.event-shell .primary-btn { background:linear-gradient(135deg,#f5c36d,#e38a3b); border-color:#ffd58f; color:#121821; box-shadow:0 8px 22px rgba(227,138,59,.2); }
.event-shell .secondary-btn { background:#182635; border-color:rgba(185,211,233,.4); color:#e8f1f8; }
.event-shell .event-hero { display:grid; max-width:none; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:48px; align-items:center; padding:56px 0 72px; }
.event-shell .event-hero-copy-block { max-width:620px; }
.event-shell .event-intro-label,.event-shell .event-kicker { color:var(--accent); font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.event-shell .event-hero h1 { max-width:650px; margin:15px 0 22px; font-size:clamp(48px,7vw,90px); line-height:.98; letter-spacing:-.03em; }
.event-shell .event-hero h1 span { color:var(--ice); }
.event-shell .event-hero-copy { max-width:54ch; color:#c1cedb; font-size:19px; line-height:1.65; }
.event-shell .event-hero-visual { margin:0; overflow:hidden; background:#151c24; border:1px solid rgba(213,229,241,.3); border-radius:20px; box-shadow:0 24px 60px rgba(0,0,0,.28); transform:rotate(1.2deg); }
.event-shell .event-hero-visual { width:100%; min-width:0; }
.event-shell .event-hero-visual img { display:block; width:100%; min-height:460px; aspect-ratio:1.32; object-fit:cover; filter:saturate(.86) contrast(1.04); }
.event-shell .event-hero-visual figcaption { padding:14px 16px; color:#cad4de; font-size:13px; line-height:1.45; }
.event-shell .event-city-rules { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:0; margin:0 0 74px; overflow:hidden; border:1px solid rgba(164,206,231,.3); border-radius:20px; background:#162330; }
.event-shell .event-city-rules-media { min-height:300px; }
.event-shell .event-city-rules-media img { display:block; width:100%; height:100%; min-height:300px; object-fit:cover; }
.event-shell .event-city-rules-copy { display:flex; flex-direction:column; justify-content:center; padding:38px 42px; }
.event-shell .event-city-rules-copy h2 { margin:8px 0 16px; font-size:clamp(28px,4vw,48px); line-height:1.05; }
.event-shell .event-city-rules-copy p:not(.event-kicker) { max-width:44ch; color:#c0ccd8; line-height:1.65; }
.event-shell .event-city-rules-copy .secondary-btn { align-self:flex-start; margin-top:20px; }
.event-shell .event-snapshot,.event-shell .event-world { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:34px; align-items:center; margin:0 0 74px; padding:18px; background:#172331; border:1px solid rgba(177,207,230,.28); border-radius:18px; }
.event-shell .event-snapshot-photo,.event-shell .event-world-photo { overflow:hidden; border-radius:12px; min-height:250px; }
.event-shell .event-snapshot-photo img,.event-shell .event-world-photo img { width:100%; height:100%; min-height:250px; object-fit:cover; display:block; filter:saturate(.9); }
.event-shell .event-snapshot-copy,.event-shell .event-world>div:last-child { padding:22px 24px 22px 8px; }
.event-shell .event-snapshot h2,.event-shell .event-world h2 { max-width:17ch; margin:10px 0 18px; font-size:clamp(30px,4vw,52px); line-height:1.03; }
.event-shell .event-snapshot p,.event-shell .event-world p { color:#c0ccd8; line-height:1.65; }
.event-shell .event-stat-row { display:flex; flex-wrap:wrap; gap:14px; margin-top:26px; }
.event-shell .event-stat-row span { min-width:105px; padding:12px 14px; background:#101923; border-left:3px solid var(--accent); color:#b8c6d3; font-size:13px; }
.event-shell .event-stat-row strong { display:block; color:#f7ca7b; font-size:25px; line-height:1; }
.event-shell .event-weeks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-bottom:60px; }
.event-shell .event-week { display:grid; grid-template-columns:auto minmax(0,1fr); gap:18px; overflow:hidden; padding:28px; background:#1a2633; border:1px solid rgba(176,205,225,.28); border-radius:18px; }
.event-shell .event-week-war { background:#2b211f; border-color:rgba(244,172,107,.36); }
.event-shell .event-week-index { color:var(--accent); font-size:30px; font-weight:800; line-height:1; }
.event-shell .event-week-label { margin:0 0 8px; color:var(--ice); font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.event-shell .event-week-war .event-week-label { color:#f1b27a; }
.event-shell .event-week h2 { margin:0 0 10px; font-size:38px; }
.event-shell .event-week p { color:#c2ced9; line-height:1.55; }
.event-shell .event-week-state { margin:20px 0 0; color:#f6c979 !important; font-size:13px; font-weight:700; }
.event-shell .event-week img { grid-column:1/-1; width:100%; height:145px; object-fit:cover; border-radius:11px; filter:saturate(.82); }
.event-shell .event-phase-track { display:flex; align-items:center; gap:14px; margin:0 0 74px; padding:22px 24px; background:#101923; border-top:1px solid rgba(175,204,230,.25); border-bottom:1px solid rgba(175,204,230,.25); }
.event-shell .event-phase-step { display:grid; gap:4px; min-width:0; }
.event-shell .event-phase-step b { color:var(--accent); font-size:25px; }
.event-shell .event-phase-step span { color:#ecf2f7; font-weight:700; }
.event-shell .event-phase-step small { color:#95a6b8; line-height:1.35; }
.event-shell .event-phase-line { height:1px; flex:1; background:linear-gradient(90deg,var(--accent),rgba(168,213,238,.35)); }
.event-shell .event-world { background:#141f2a; }
.event-shell .event-tech { display:grid; gap:10px; margin-top:22px; }
.event-shell .event-tech p { display:grid; grid-template-columns:minmax(145px,.7fr) 1fr; gap:14px; margin:0; padding:11px 0; border-top:1px solid rgba(177,207,230,.18); }
.event-shell .event-tech strong { color:#f3c36f; font-size:14px; }
.event-shell .event-tech span { color:#aebdca; font-size:14px; }
.event-shell .event-mod-note { display:grid; gap:6px; margin:22px 0 0; padding:16px 18px; background:linear-gradient(110deg,#202f3c,#182631); border-left:3px solid #f0b35b; border-radius:10px; color:#c4d2de; line-height:1.5; }
.event-shell .event-mod-note strong { color:#f4c875; font-size:14px; }
.event-shell .event-mod-note span { color:#b8c7d3; font-size:14px; }
.event-shell .event-victory { margin-bottom:60px; padding:50px 0 10px; }
.event-shell .event-victory h2 { max-width:18ch; margin:10px 0 14px; font-size:clamp(34px,5vw,62px); line-height:1; }
.event-shell .event-victory>p:not(.event-kicker) { max-width:55ch; color:#b8c5d0; }
.event-shell .event-victory-options { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:16px; align-items:stretch; margin:34px 0 24px; }
.event-shell .event-victory-option { position:relative; min-height:180px; padding:26px; border:1px solid rgba(186,210,228,.25); border-radius:15px; background:#182634; }
.event-shell .event-victory-war { background:#2c211e; border-color:rgba(241,164,103,.42); }
.event-shell .event-victory-peace { background:#172a31; border-color:rgba(131,207,200,.34); }
.event-shell .event-option-mark { display:inline-grid; place-items:center; width:32px; height:32px; margin-bottom:24px; border:1px solid currentColor; border-radius:50%; color:var(--accent); font-weight:800; }
.event-shell .event-victory-peace .event-option-mark { color:#91d1cc; }
.event-shell .event-victory-option h3 { max-width:24ch; margin:0 0 12px; font-size:23px; line-height:1.15; }
.event-shell .event-victory-option p { margin:0; color:#b9c7d2; line-height:1.55; }
.event-shell .event-or { align-self:center; color:#93a5b5; font-size:13px; text-transform:uppercase; letter-spacing:.1em; }
.event-shell .event-rewards { display:grid; grid-template-columns:1.1fr .9fr; gap:24px; margin:0 0 28px; padding:32px; background:#1b2833; border:1px solid rgba(242,194,116,.32); }
.event-shell .event-rewards h2 { margin:8px 0; color:#f7ca7b; font-size:58px; line-height:1; }
.event-shell .event-rewards h3 { margin-top:14px; color:#e8f0f5; font-size:21px; }
.event-shell .event-rewards p { color:#b8c6d1; line-height:1.55; }
.event-shell .event-sponsor { margin:0 0 58px; padding:26px 0; border-top:1px solid rgba(177,207,230,.2); border-bottom:1px solid rgba(177,207,230,.2); }
.event-shell .event-sponsor h2 { margin-top:0; font-size:22px; }
.event-shell .event-sponsor p { max-width:70ch; color:#aebcc8; }
.event-shell .event-sponsor-head { display:flex; align-items:center; gap:16px; margin-bottom:18px; }
.event-shell .event-sponsor-head img { width:62px; height:62px; object-fit:contain; border-radius:16px; padding:5px; background:#f4f7fb; border:1px solid rgba(177,207,230,.34); }
.event-shell .event-sponsor-head h2 { margin:0; }
.event-shell .event-final { text-align:left; padding:18px 0 80px; border-top:0; }
.event-shell .event-final h2 { font-size:clamp(34px,5vw,58px); }
.event-shell .event-page .event-inline-link { color:#f4c875; }
.event-shell .event-page .glass { box-shadow:none; backdrop-filter:none; }
.event-shell .event-page .event-form input,.event-shell .event-page .event-form select { background:#1b2a37; border-color:rgba(168,213,238,.35); color:#f3f5f7; }
.event-shell .event-page .event-form input:focus,.event-shell .event-page .event-form select:focus { background:#223544; border-color:#f0b35b; box-shadow:0 0 0 3px rgba(240,179,91,.14); }
.event-shell .event-page .event-rule-nav,.event-shell .event-page .event-note { background:#172331; }
.event-shell .event-rule-section#event-rule-cities-registration .event-note { border-left:3px solid #e38a3b; background:#2b211f; color:#f4c875; }
.event-shell .event-page a:focus-visible,.event-shell .event-page button:focus-visible,.event-shell .event-form input:focus-visible,.event-shell .event-form select:focus-visible { outline-color:var(--accent); }
@media(max-width:800px) {
  .event-shell .event-hero { grid-template-columns:1fr; gap:30px; padding-top:24px; }
  .event-shell .event-hero-visual { transform:none; }
  .event-shell .event-hero-visual img { min-height:0; aspect-ratio:16/10; }
  .event-shell .event-city-rules { grid-template-columns:1fr; margin-bottom:48px; }
  .event-shell .event-city-rules-media, .event-shell .event-city-rules-media img { min-height:220px; height:220px; }
  .event-shell .event-city-rules-copy { padding:28px 22px; }
  .event-shell .event-snapshot,.event-shell .event-world { grid-template-columns:1fr; padding:12px; gap:8px; }
  .event-shell .event-snapshot-copy,.event-shell .event-world>div:last-child { padding:22px 12px 20px; }
  .event-shell .event-weeks,.event-shell .event-rewards { grid-template-columns:1fr; }
  .event-shell .event-week { grid-template-columns:auto 1fr; padding:22px; }
  .event-shell .event-phase-track { align-items:stretch; flex-direction:column; gap:10px; }
  .event-shell .event-phase-line { width:1px; height:22px; flex:none; margin-left:12px; }
  .event-shell .event-victory-options { grid-template-columns:1fr; }
  .event-shell .event-or { text-align:center; }
  .event-shell .event-tech p { grid-template-columns:1fr; gap:5px; }
}
