
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@300;400;600;700&display=swap');

:root{
  --bg:#0c2333;
  --bg2:#0f2a3e;
  --gold:#d4af37;
  --text:#e8eef4;
  --muted:#b9c6d2;
  --chip:#0f2535;
  --chip-b:#142f43;
  --brand:#ffd166;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Josefin Sans', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  color:var(--text);
  background:var(--bg);
}

/* Landing hero */
.hero{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:12vh 16px 16vh;
  background:url('../img/athlon-bg.png') center/cover no-repeat fixed;
}
.logo{
  width:min(260px,48vw);
  height:auto;
  margin:0 auto 28px;
  filter:drop-shadow(0 2px 12px rgba(0,0,0,.35));
}
.kicker{
  font-size:clamp(22px,4.8vw,46px);
  line-height:1.1;
  font-weight:700;
  letter-spacing:.4px;
  margin:8px 0 4px;
  text-shadow:0 1px 0 rgba(0,0,0,.25);
}
.sub{
  font-size:clamp(16px,2.6vw,28px);
  font-weight:300;
  color:var(--muted);
  margin:0 0 22px;
}
.btnrow{
  display:flex; gap:16px; flex-wrap:wrap; justify-content:center;
  margin:8px 0 18px;
}
.btn{
  background:linear-gradient(180deg, var(--chip), var(--chip-b));
  color:var(--text);
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  padding:12px 18px;
  display:inline-flex; align-items:center; gap:10px;
  font-weight:600;
  box-shadow:0 8px 20px rgba(0,0,0,.25);
  text-decoration:none;
  transform:translateZ(0);
}
.btn:hover{ border-color:rgba(255,255,255,.2); transform:translateY(-1px) }
.flag{ font-size:18px }
.manifesto-cta{
  margin-top:6px;
  color:var(--gold);
  text-decoration:none;
  font-weight:700;
}
.manifesto-cta .arrow{ display:inline-block; transform:translateY(2px)}

/* Manifesto block */
.manifesto{
  background: radial-gradient(1200px 600px at 50% -10%, #123652 0%, #0b2231 60%, #081b27 100%);
  padding:10vh 16px;
}
.manifesto-inner{
  max-width:min(860px,92vw);
  margin:0 auto;
}
.ow{
  width:54px; height:auto; display:block; margin:0 auto 26px; filter:drop-shadow(0 2px 10px rgba(0,0,0,.35));
}
.manifesto h3{
  color:var(--gold);
  font-size:clamp(18px,2.2vw,22px);
  margin:0 0 8px;
  line-height:1.35;
  font-weight:700;
  text-align:left;
}
.manifesto p{
  font-size:clamp(17px,2.2vw,22px);
  line-height:1.7;
  color:var(--text);
  margin:14px 0;
  text-align:left;
}
.manifesto em{ font-style:italic }
.manifesto u{ text-underline-offset:3px }
.footer{
  display:flex; gap:14px; justify-content:center; flex-wrap:wrap;
  margin-top:36px; color:var(--muted);
}
.footer .chip{
  background:#0f2738; border:1px solid rgba(255,255,255,.08);
  padding:10px 14px; border-radius:999px;
}

/* Inside pages */
.page{
  min-height:100vh; background:linear-gradient(180deg, #0b2231, #0c2333);
}
.topbar{
  display:flex; align-items:center; justify-content:space-between;
  padding:18px clamp(16px, 5vw, 48px);
}
.topbar .logo{ width:160px; margin:0 }
.lang{
  text-decoration:none; color:var(--muted); border:1px solid rgba(255,255,255,.08);
  padding:8px 12px; border-radius:999px; background:#0e2739;
}
.section{
  padding:10vh clamp(16px, 6vw, 90px) 4vh;
}
.label{ color:#b0c3d4; text-transform:lowercase; letter-spacing:.15em; font-weight:700; font-size:12px }
.h1{
  font-size:clamp(32px,5.2vw,56px);
  line-height:1.1; margin:8px 0 16px; font-weight:700;
}
.lede{ font-size:clamp(17px,2.3vw,22px); color:var(--muted); line-height:1.7; max-width:980px }
.pillgrid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:28px; max-width:1100px
}
@media (max-width:960px){ .pillgrid{ grid-template-columns:1fr; } }
.pill{
  padding:16px 0; border-top:1px solid rgba(255,255,255,.08);
  font-size:clamp(16px,2.1vw,20px);
}
.pill b{ color:var(--gold) }
.cta{
  display:inline-block; margin-top:28px; padding:12px 16px; border-radius:10px;
  border:1px solid rgba(255,255,255,.1); text-decoration:none; color:var(--text);
  background:linear-gradient(180deg, #102a3c, #0c2232);
}
.site-footer{
  padding:4vh 16px 6vh; text-align:center; color:var(--muted)
}
.site-footer .bases{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-bottom:10px}
.site-footer .chip{ background:#0f2738; border:1px solid rgba(255,255,255,.08); padding:10px 14px; border-radius:999px}
