/* ═══════════════════════════════════════════════════════════════
   singaporemajor2026.com — theme "Kallang Neon"
   Shared tokens + shell for every page. Home-page-only rules live inline in index.html.
   ═══════════════════════════════════════════════════════════════ */
:root{
  --ink:#050914;
  --surf:#0B1024;
  --card:#131A3A;
  --line:#22284E;
  --text:#E8ECFF;
  --muted:#8B94BF;
  --orchid:#7B4DFF;
  --orchid-2:#B18AFF;
  --sg-red:#EF3340;
  --mint:#7DE4C6;
  --gold:#F5C518;
  /* aliases used by inner pages (inline styles) */
  --primary:var(--orchid-2);
  --cyan:var(--mint);
  --text-muted:var(--muted);
  --card-bg:var(--card);
  --bg-2:var(--surf);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{background:var(--ink);color:var(--text);font-family:'Inter',system-ui,-apple-system,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
body{overflow-x:hidden;padding-block:0}
a{color:var(--orchid-2)}
img,iframe{max-width:100%}
h1,h2,h3,h4{font-family:'Chakra Petch','Inter',sans-serif;letter-spacing:-.01em;text-wrap:balance}
h2{font-size:clamp(28px,4vw,40px);margin:2.2rem 0 .8rem;line-height:1.1}
h3{font-size:1.25rem;margin:1.6rem 0 .5rem}
p,li{max-width:70ch}
strong,b{color:var(--text)}
code{font-family:'JetBrains Mono',monospace;font-size:.92em;background:rgba(123,77,255,.10);padding:.1em .35em;border:1px solid rgba(123,77,255,.25)}
:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.wrap,.container{max-width:1180px;margin:0 auto;padding:0 24px}
.container-narrow{max-width:820px}

/* ── inner-page nav ── */
.page-nav{position:sticky;top:0;z-index:100;background:rgba(5,9,20,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.page-nav .container{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;gap:16px}
.page-nav a{font-family:'Chakra Petch',sans-serif;font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
.page-nav-home{color:var(--text)}
.page-nav-home:hover{color:var(--orchid-2)}
.page-nav-back{color:var(--mint);border:1px solid rgba(125,228,198,.35);padding:8px 14px;clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%)}
.page-nav-back:hover{background:rgba(125,228,198,.08)}

/* ── inner-page article ── */
article.container,.container.container-narrow{padding-top:60px;padding-bottom:80px}
article h1{font-size:clamp(34px,5.4vw,56px);line-height:1;margin:0 0 .6rem;background:linear-gradient(90deg,#fff,#C7D0FF);-webkit-background-clip:text;background-clip:text;color:transparent}
article h2{padding-top:.6rem;border-top:1px solid var(--line)}
article ul{padding-left:1.2rem;margin:.6rem 0 1.2rem}
article li{margin:.3rem 0;color:var(--text)}
article li::marker{color:var(--orchid)}
article table{border-collapse:collapse;width:100%;margin:1rem 0 2rem;font-size:.95rem}
article th,article td{padding:.6rem;border-bottom:1px solid var(--line)}
article th{text-align:left;color:var(--muted);font-family:'JetBrains Mono',monospace;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase}
blockquote{border-left:3px solid var(--orchid);padding:.6rem 1rem;color:var(--text);background:rgba(123,77,255,.06);margin:1rem 0}

/* ── articles section (home + news index reuse) ── */
.articles-section{padding:96px 0}
.articles-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:32px}
.matches-all-link{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);text-decoration:none}
.matches-all-link:hover{border-bottom:1px solid var(--mint)}

/* ── buttons reused on inner pages ── */
.cta-button,.btn-primary{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;background:linear-gradient(90deg,var(--orchid),var(--sg-red));color:#0A0A0F;font-family:'Chakra Petch',sans-serif;font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}
.btn-secondary{display:inline-flex;align-items:center;padding:12px 20px;border:1px solid var(--line);color:var(--text);font-family:'Chakra Petch',sans-serif;font-weight:600;font-size:13px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}
.btn-secondary:hover{border-color:var(--orchid)}

/* ── footer ── */
.footer{padding:64px 0 32px;border-top:1px solid var(--line);background:var(--ink)}
.footer-grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:32px}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr}}
.footer-logo{font-family:'Chakra Petch',sans-serif;font-weight:700;font-size:18px;letter-spacing:.06em;margin-bottom:10px}
.footer-brand p{color:var(--muted);font-size:13px;max-width:36ch}
.footer-links h4{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--orchid-2);margin:0 0 12px}
.footer-links a{display:block;color:var(--muted);font-size:14px;text-decoration:none;margin:6px 0}
.footer-links a:hover{color:var(--text)}
.footer-bottom{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em}

/* ── error pages ── */
.err-wrap{max-width:640px;margin:120px auto;padding:0 24px;text-align:center}
.err-code{font-family:'Chakra Petch',sans-serif;font-weight:700;font-size:8rem;line-height:1;background:linear-gradient(90deg,var(--orchid),var(--sg-red));-webkit-background-clip:text;background-clip:text;color:transparent}
