/* Shared styles for Atleato content pages (blog + per-coach landing pages).
   Matches the dark brand theme of index.html but standalone + lightweight
   (no three.js / GSAP) so these pages load instantly and rank well. */
:root{
  --bg:#0a0b0d; --surface:#121316; --surface-2:#16181c;
  --border:rgba(255,255,255,0.10); --border-soft:rgba(255,255,255,0.06);
  --text:#f4f4ef; --text-secondary:#b9bbb6; --text-tertiary:#7d8079;
  --lime:#dfff1f; --lime-dim:#9ad400;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg); color:var(--text);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  line-height:1.65; -webkit-font-smoothing:antialiased; font-size:17px;
}
a{color:var(--lime); text-decoration:none;}
a:hover{text-decoration:underline;}
.container{max-width:760px; margin:0 auto; padding:0 22px;}
.wide{max-width:1040px;}

/* ── Site header ── */
.site-header{
  position:sticky; top:0; z-index:20; backdrop-filter:blur(12px);
  background:rgba(10,11,13,0.78); border-bottom:1px solid var(--border-soft);
}
.site-header .container{display:flex; align-items:center; justify-content:space-between; height:60px;}
.wordmark{display:inline-flex; align-items:center; gap:8px; font-family:'Archivo Black',sans-serif; font-size:19px; letter-spacing:-0.5px; color:var(--text);}
.wordmark svg{width:24px; height:24px;}
.nav-cta{font-family:'Archivo Black',sans-serif; font-size:12px; letter-spacing:0.5px; text-transform:uppercase; background:var(--lime); color:#0a0b0d; padding:9px 18px; border-radius:100px;}
.nav-cta:hover{text-decoration:none; filter:brightness(1.06);}

/* ── Article ── */
.post{padding:54px 0 40px;}
.eyebrow{font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:2px; text-transform:uppercase; color:var(--lime); margin-bottom:18px;}
.post h1{font-family:'Archivo Black',sans-serif; font-size:clamp(30px,5.4vw,46px); line-height:1.08; letter-spacing:-1px; margin-bottom:18px;}
.post .meta{color:var(--text-tertiary); font-size:14px; margin-bottom:34px; padding-bottom:24px; border-bottom:1px solid var(--border-soft);}
.post h2{font-family:'Archivo Black',sans-serif; font-size:25px; letter-spacing:-0.4px; margin:40px 0 14px;}
.post h3{font-size:19px; font-weight:800; margin:28px 0 10px;}
.post p{color:var(--text-secondary); margin-bottom:18px;}
.post ul,.post ol{color:var(--text-secondary); margin:0 0 18px 22px;}
.post li{margin-bottom:9px;}
.post strong{color:var(--text);}
.post blockquote{border-left:3px solid var(--lime); padding:6px 0 6px 20px; margin:24px 0; color:var(--text); font-size:19px; font-style:italic;}
.callout{background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:22px 24px; margin:28px 0;}
.callout p:last-child{margin-bottom:0;}

/* ── Blog index cards ── */
.post-grid{display:grid; grid-template-columns:1fr; gap:18px; padding:34px 0 10px;}
.post-card{display:block; background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:26px 28px; transition:border-color .2s,transform .2s;}
.post-card:hover{border-color:rgba(223,255,31,0.4); transform:translateY(-2px); text-decoration:none;}
.post-card .tag{font-family:'JetBrains Mono',monospace; font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:var(--lime);}
.post-card h2{font-family:'Archivo Black',sans-serif; font-size:21px; letter-spacing:-0.4px; margin:10px 0 8px; color:var(--text); line-height:1.18;}
.post-card p{color:var(--text-secondary); font-size:15px; margin:0;}

/* ── Coach landing hero ── */
.coach-hero{padding:64px 0 30px; text-align:center;}
.coach-badge{display:inline-block; font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:2px; text-transform:uppercase; color:var(--lime); border:1px solid rgba(223,255,31,0.3); background:rgba(223,255,31,0.06); padding:7px 14px; border-radius:100px; margin-bottom:24px;}
.coach-hero h1{font-family:'Archivo Black',sans-serif; font-size:clamp(34px,7vw,62px); line-height:1.02; letter-spacing:-1.5px; margin-bottom:18px;}
.coach-hero h1 .lime{color:var(--lime);}
.coach-hero .lede{font-size:19px; color:var(--text-secondary); max-width:560px; margin:0 auto 30px;}
.btn-primary{display:inline-flex; align-items:center; gap:8px; font-family:'Archivo Black',sans-serif; font-size:15px; letter-spacing:0.4px; text-transform:uppercase; background:var(--lime); color:#0a0b0d; padding:16px 32px; border-radius:100px; box-shadow:0 14px 34px -10px rgba(223,255,31,0.5);}
.btn-primary:hover{text-decoration:none; filter:brightness(1.06);}
.feature-row{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:18px; padding:40px 0;}
.feature-card{background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:26px;}
.feature-card h3{font-family:'Archivo Black',sans-serif; font-size:17px; letter-spacing:-0.3px; margin-bottom:8px;}
.feature-card p{color:var(--text-secondary); font-size:15px;}

/* ── Footer ── */
.site-footer{border-top:1px solid var(--border-soft); padding:40px 0; margin-top:40px; text-align:center;}
.site-footer p{color:var(--text-tertiary); font-size:13px;}
.site-footer a{color:var(--text-secondary);}
.site-footer .links{display:flex; gap:20px; justify-content:center; flex-wrap:wrap; margin-bottom:16px; font-size:14px;}
