/* Shared look for the club sites and the platform. Light theme by default; dark.css switches the same components to dark. */
@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@500;600;700;800&family=Source+Sans+3:wght@400;600;700&display=swap');
:root{--blue:#1C4FA0;--blue-d:#123A7A;--blue-l:#EEF3FB;--ink:#0E1521;--mut:#5A6577;--line:#D9DFE8;--gold:#F2B705;--ok:#1E7B4A;--okbg:#E4F4EA;--warn:#8A5A00;--warnbg:#FFF1D0;--bad:#A12B2B;--badbg:#FBE6E6}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:'Source Sans 3',system-ui,sans-serif;color:var(--ink);background:#fff;font-size:17px;line-height:1.5}
h1,h2,h3,h4{font-family:Barlow,sans-serif;font-weight:700;line-height:1.1;margin:0 0 12px;letter-spacing:-.01em}
h1{font-size:56px;font-weight:800}h2{font-size:38px}h3{font-size:23px}h4{font-size:18px}
p{margin:0 0 14px}a{color:var(--blue);text-decoration:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 32px}
section{padding:64px 0}
.tint{background:var(--blue-l)}.dark{background:var(--ink);color:#fff}.bluebg{background:var(--blue-d);color:#fff}
.dark p,.bluebg p{color:#C9D3E3}
.eyebrow{font-family:Barlow;font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:13px;color:var(--blue);margin-bottom:10px}
.dark .eyebrow,.bluebg .eyebrow{color:var(--gold)}
.lead{font-size:20px;color:var(--mut);max-width:640px}
.btn{display:inline-block;font-family:Barlow;font-weight:700;font-size:16px;padding:12px 22px;border-radius:6px;background:var(--blue);color:#fff;border:2px solid var(--blue);cursor:pointer}
.btn.ghost{background:transparent;color:var(--blue)}
.btn.light{background:#fff;color:var(--ink);border-color:#fff}
.btn.lghost{background:transparent;color:#fff;border-color:#ffffff66}
.btn.sm{padding:7px 14px;font-size:14px}
.btn.ok{background:var(--ok);border-color:var(--ok)}.btn.bad{background:#fff;color:var(--bad);border-color:var(--bad)}
.row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:32px}.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:26px}
.card.hi{border:2px solid var(--blue);box-shadow:0 10px 30px #1c4fa022}
.mut{color:var(--mut)}.small{font-size:14px}.center{text-align:center}
.badge{display:inline-block;font-family:Barlow;font-weight:700;font-size:12px;letter-spacing:.05em;text-transform:uppercase;padding:3px 9px;border-radius:99px;background:#E9ECF1;color:#3C4658;white-space:nowrap}
.badge.ok{background:var(--okbg);color:var(--ok)}.badge.warn{background:var(--warnbg);color:var(--warn)}.badge.bad{background:var(--badbg);color:var(--bad)}.badge.blue{background:var(--blue-l);color:var(--blue)}.badge.gold{background:var(--gold);color:var(--ink)}
table.data{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:16px}
table.data th{font-family:Barlow;font-size:13px;text-transform:uppercase;letter-spacing:.07em;text-align:left;color:var(--mut);background:#F6F8FB;padding:11px 14px;border-bottom:1px solid var(--line)}
table.data td{padding:11px 14px;border-bottom:1px solid #EDF0F5;vertical-align:middle}
table.data tr:last-child td{border-bottom:0}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
td.big{font-family:Barlow;font-weight:700;font-size:18px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{font-family:Barlow;font-weight:600;font-size:14px;padding:6px 14px;border-radius:99px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
.stat{font-family:Barlow;font-weight:800;font-size:40px;line-height:1}
.statl{font-size:14px;color:var(--mut);margin-top:6px}
label{display:block;font-weight:600;font-size:15px;margin-bottom:5px}
.in{display:block;width:100%;border:1px solid #B9C2D0;border-radius:6px;padding:10px 12px;font:inherit;background:#fff;min-height:44px}
.field{margin-bottom:16px}.hint{font-size:14px;color:var(--mut);margin-top:4px}
.note{background:var(--blue-l);border-left:4px solid var(--blue);padding:12px 16px;border-radius:6px;font-size:15px}
.note.warn{background:var(--warnbg);border-color:var(--gold)}
.pagehead{background:var(--ink);color:#fff;padding:52px 0 48px}.pagehead h1{font-size:46px}.pagehead p{color:#C9D3E3;font-size:19px;max-width:680px;margin:0}
header.nav{background:#fff;border-bottom:1px solid var(--line)}
header.nav .wrap{display:flex;align-items:center;gap:28px;height:72px}
.logo{display:flex;align-items:center;gap:10px;font-family:Barlow;font-weight:800;font-size:19px;color:var(--ink);line-height:1}
.logo small{display:block;font-weight:600;font-size:11px;letter-spacing:.14em;color:var(--blue);text-transform:uppercase;margin-top:3px}
nav.links{display:flex;gap:24px;margin-left:auto;font-family:Barlow;font-weight:600;font-size:16px}
nav.links a{color:var(--ink);padding:25px 0;border-bottom:3px solid transparent}nav.links a.on{color:var(--blue);border-color:var(--blue)}
footer{background:var(--ink);color:#C9D3E3;padding:48px 0 28px;font-size:15px}
footer h4{color:#fff;font-size:15px;text-transform:uppercase;letter-spacing:.08em}
footer a{color:#C9D3E3;display:block;margin-bottom:6px}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
footer .legal{border-top:1px solid #2A3446;margin-top:32px;padding-top:18px;font-size:13px;color:#8D99AD}
.bar{height:12px;background:#ffffff2a;border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;background:var(--gold)}
.bar.lt{background:#E3E8F0}.bar.lt i{background:var(--blue)}
.ph{background:linear-gradient(135deg,#DCE6F6,#F3F6FB);border-radius:10px;display:flex;align-items:center;justify-content:center}
.date{width:64px;text-align:center;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;flex:none}
.date b{display:block;background:var(--blue);color:#fff;font-family:Barlow;font-size:12px;letter-spacing:.1em;padding:2px 0}
.date span{display:block;font-family:Barlow;font-weight:800;font-size:24px;padding:4px 0}
.ev{display:flex;gap:18px;align-items:center;padding:14px 18px;background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:10px}
.ev .grow{flex:1}
img{max-width:100%}
input.in,select.in,textarea.in{font-family:inherit;font-size:16px;color:inherit}
select.in{appearance:auto}
button.btn{font-family:Barlow,sans-serif}
button.link{background:none;border:0;padding:0;color:var(--blue);font:inherit;cursor:pointer}
.msg{padding:12px 16px;border-radius:6px;margin-bottom:18px;background:var(--okbg);color:var(--ok);font-weight:600}
.msg.err{background:var(--badbg);color:var(--bad)}
.dev{background:var(--warnbg);color:var(--warn);border:1px dashed var(--gold);padding:10px 14px;border-radius:6px;font-size:15px;margin-bottom:16px}
.narrow{max-width:460px;margin:0 auto}
.stack>*+*{margin-top:20px}
.inline{display:inline}
nav.links a.btn{padding:7px 14px;border-bottom:2px solid var(--blue);color:#fff}
@media(max-width:900px){.g2,.g3,.g4,footer .cols{grid-template-columns:1fr}h1{font-size:38px}header.nav .wrap{height:auto;flex-wrap:wrap;padding:12px 20px}nav.links{margin-left:0;flex-wrap:wrap;gap:14px}nav.links a{padding:6px 0}table.data{display:block;overflow-x:auto}}
