
:root {
  --ink: #091711;
  --ink-2: #13251c;
  --forest: #0f3b29;
  --forest-2: #175a3d;
  --cream: #fff8e8;
  --paper: #fffdf6;
  --lime: #b7ff2a;
  --mint: #68f0b0;
  --cyan: #3ae0ff;
  --pink: #ff4da6;
  --orange: #ff7a1a;
  --yellow: #ffe44d;
  --violet: #8758ff;
  --white: #ffffff;
  --muted: #b8c8be;
  --line: rgba(255,255,255,.16);
  --shadow: 10px 10px 0 #091711;
  --radius: 28px;
  --max: 1220px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 145px; }
body {
  margin: 0;
  color: var(--cream);
  background: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  overflow-x: hidden;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration-thickness: .09em; text-underline-offset: .16em; }
img { max-width: 100%; height: auto; display: block; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
:focus-visible { outline: 4px solid var(--yellow); outline-offset: 4px; }
::selection { background: var(--lime); color: var(--ink); }
.skip-link {
  position: fixed; left: 16px; top: -80px; z-index: 9999; padding: 12px 18px;
  background: var(--yellow); color: var(--ink); font-weight: 900; border: 3px solid var(--ink);
  border-radius: 999px; transition: top .2s ease;
}
.skip-link:focus { top: 16px; }
.container { width: min(var(--max), calc(100% - 36px)); margin-inline: auto; }
.kicker { letter-spacing: .11em; text-transform: uppercase; font-size: .79rem; font-weight: 900; }
.display {
  font-family: "Arial Black", Inter, sans-serif; text-transform: uppercase; letter-spacing: -.045em;
  line-height: .92; margin: 0;
}
.site-header { position: sticky; top: 0; z-index: 1000; background: rgba(9,23,17,.94); backdrop-filter: blur(18px); border-bottom: 1px solid var(--line); }
.nav-wrap { padding: 12px 0; }
.nav-shell {
  display: flex; align-items: center; gap: 18px; justify-content: space-between;
  padding: 10px 14px 10px 18px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px;
  background: rgba(255,255,255,.055); box-shadow: 0 18px 60px rgba(0,0,0,.25);
}
.brand { display: inline-flex; align-items: baseline; min-width: max-content; text-decoration: none; font-weight: 950; letter-spacing: -.045em; font-size: clamp(1.05rem, 2vw, 1.5rem); }
.brand strong { color: var(--lime); }
.brand-mark { width: 17px; height: 17px; margin-right: 10px; background: conic-gradient(var(--lime),var(--cyan),var(--pink),var(--orange),var(--lime)); border-radius: 50% 50% 50% 15%; transform: rotate(-35deg); box-shadow: 0 0 0 3px rgba(255,255,255,.08); }
.site-nav { display: flex; align-items: center; gap: 4px; }
.site-nav a { text-decoration: none; font-size: .79rem; font-weight: 850; padding: 9px 10px; border-radius: 999px; color: #e8f1eb; white-space: nowrap; }
.site-nav a:hover, .site-nav a[aria-current="page"] { color: var(--ink); background: var(--lime); }
.menu-toggle { display: none; border: 0; background: var(--lime); color: var(--ink); border-radius: 999px; padding: 10px 14px; font-weight: 950; cursor: pointer; }
.ticker { overflow: hidden; border-top: 1px solid rgba(255,255,255,.08); background: var(--cyan); color: var(--ink); }
.ticker-track { display: flex; width: max-content; gap: 10px; padding: 8px 0; will-change: transform; }
.ticker-chip { display: inline-flex; align-items: center; gap: 8px; border-radius: 999px; padding: 5px 13px; background: var(--ink); color: var(--lime); font-size: .76rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.ticker-chip:nth-child(3n+2) { background: var(--pink); color: white; }
.ticker-chip:nth-child(3n+3) { background: var(--yellow); color: var(--ink); }
.hero { position: relative; overflow: hidden; padding: clamp(58px,8vw,104px) 0; background: var(--lime); color: var(--ink); }
.hero::before { content:""; position:absolute; inset:0; background: radial-gradient(circle at 12% 13%,rgba(255,77,166,.44),transparent 26%), radial-gradient(circle at 82% 15%,rgba(58,224,255,.42),transparent 25%), radial-gradient(circle at 70% 84%,rgba(255,122,26,.34),transparent 28%), linear-gradient(125deg,rgba(255,255,255,.28),transparent 48%); }
.hero-grid { position: relative; display:grid; grid-template-columns: 1.03fr .97fr; align-items:center; gap: clamp(28px,5vw,70px); }
.hero-copy { max-width: 690px; }
.hero .kicker { display:inline-flex; background: var(--pink); color:white; border-radius:999px; padding:7px 13px; margin-bottom:18px; }
.hero h1 { font-size: clamp(3.5rem,8.2vw,7.75rem); max-width: 980px; }
.hero p.lede { font-size: clamp(1.05rem,2vw,1.35rem); max-width: 680px; font-weight: 700; line-height: 1.55; color:#173021; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.btn { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:13px 20px; border:3px solid var(--ink); border-radius:999px; text-decoration:none; font-weight:950; box-shadow: 5px 5px 0 var(--ink); transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.btn:hover { transform: translate(-2px,-2px); box-shadow: 8px 8px 0 var(--ink); }
.btn-dark { background:var(--ink); color:var(--lime); }
.btn-light { background:var(--cream); color:var(--ink); }
.hero-art { border: 5px solid var(--ink); border-radius: 38px; overflow:hidden; background:var(--paper); box-shadow: 16px 16px 0 var(--ink); transform: rotate(1.2deg); }
.hero-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:26px; }
.stat { padding:14px; border:3px solid var(--ink); border-radius:20px; background:var(--cream); box-shadow:4px 4px 0 var(--ink); }
.stat strong { display:block; font-size:1.4rem; line-height:1; }
.stat span { display:block; margin-top:5px; font-size:.72rem; text-transform:uppercase; font-weight:900; letter-spacing:.07em; }
.section { padding: clamp(58px,7vw,96px) 0; }
.section-dark { background:var(--ink); color:var(--cream); }
.section-forest { background:var(--forest); color:var(--cream); }
.section-cream { background:var(--cream); color:var(--ink); }
.section-pink { background:var(--pink); color:white; }
.section-cyan { background:var(--cyan); color:var(--ink); }
.section-yellow { background:var(--yellow); color:var(--ink); }
.section-head { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:30px; }
.section-head h2 { font-size:clamp(2.6rem,6vw,5.5rem); max-width:850px; }
.section-head p { max-width:480px; font-weight:650; }
.topic-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:16px; }
.topic-card { min-height:240px; padding:24px; border:4px solid var(--ink); border-radius:var(--radius); color:var(--ink); box-shadow:var(--shadow); text-decoration:none; display:flex; flex-direction:column; justify-content:space-between; transition: transform .2s ease; }
.topic-card:hover { transform:translate(-4px,-4px) rotate(-.3deg); }
.topic-card:nth-child(1) { grid-column:span 5; background:var(--lime); }
.topic-card:nth-child(2) { grid-column:span 4; background:var(--cyan); }
.topic-card:nth-child(3) { grid-column:span 3; background:var(--pink); color:white; }
.topic-card:nth-child(4) { grid-column:span 3; background:var(--yellow); }
.topic-card:nth-child(5) { grid-column:span 4; background:var(--violet); color:white; }
.topic-card:nth-child(6) { grid-column:span 5; background:var(--orange); }
.topic-card:nth-child(7) { grid-column:span 12; min-height:170px; background:var(--mint); }
.topic-card h3 { font-size:clamp(1.7rem,3vw,3rem); margin:8px 0; line-height:1; }
.topic-card p { margin:0; max-width:44ch; font-weight:650; }
.topic-card .arrow { align-self:flex-end; font-size:2rem; font-weight:1000; }
.card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.article-card { background:var(--paper); color:var(--ink); border:4px solid var(--ink); border-radius:28px; overflow:hidden; box-shadow:9px 9px 0 var(--ink); display:flex; flex-direction:column; min-width:0; }
.article-card img { aspect-ratio:1/1; object-fit:cover; border-bottom:4px solid var(--ink); }
.article-card-body { padding:20px; display:flex; flex-direction:column; flex:1; }
.article-card .meta { display:flex; flex-wrap:wrap; gap:8px; align-items:center; font-size:.76rem; font-weight:850; text-transform:uppercase; letter-spacing:.05em; }
.pill { display:inline-flex; padding:5px 10px; border-radius:999px; background:var(--lime); color:var(--ink); text-decoration:none; font-weight:900; font-size:.74rem; }
.pill.alt { background:var(--cyan); }
.pill.pink { background:var(--pink); color:white; }
.article-card h3 { font-size:clamp(1.45rem,2.2vw,2.15rem); line-height:1.05; letter-spacing:-.035em; margin:14px 0 10px; }
.article-card h3 a { text-decoration:none; }
.article-card h3 a:hover { text-decoration:underline; }
.article-card p { margin:0 0 18px; color:#35473d; }
.article-card .read-link { margin-top:auto; font-weight:950; }
.callout { border:4px solid var(--ink); border-radius:32px; padding:clamp(24px,4vw,44px); box-shadow:12px 12px 0 var(--ink); }
.callout-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:28px; align-items:center; }
.callout h2 { font-size:clamp(2.7rem,6vw,5.4rem); }
.callout p { font-size:1.06rem; font-weight:650; }
.metric-stack { display:grid; gap:12px; }
.metric { border:3px solid var(--ink); border-radius:22px; padding:18px; background:var(--paper); color:var(--ink); }
.metric strong { display:block; font-size:1.8rem; }
.page-hero { position:relative; overflow:hidden; padding:clamp(52px,7vw,90px) 0; color:var(--ink); background:var(--lime); border-bottom:5px solid var(--ink); }
.page-hero::after { content:""; position:absolute; width:440px; height:440px; border-radius:50%; right:-120px; top:-190px; background:repeating-linear-gradient(45deg,var(--pink) 0 14px,var(--cyan) 14px 28px,var(--yellow) 28px 42px); opacity:.34; }
.page-hero .container { position:relative; z-index:1; }
.page-hero h1 { font-size:clamp(3.1rem,7.6vw,7rem); max-width:1050px; }
.page-hero .lede { max-width:780px; font-size:clamp(1.05rem,2vw,1.35rem); font-weight:700; color:#183023; }
.accent-cyan { background:var(--cyan); }
.accent-mint { background:var(--mint); }
.accent-pink { background:var(--pink); color:white; }
.accent-violet { background:var(--violet); color:white; }
.accent-orange { background:var(--orange); }
.accent-yellow { background:var(--yellow); }
.accent-lime { background:var(--lime); }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; align-items:center; font-size:.82rem; font-weight:850; margin-bottom:20px; }
.breadcrumbs a { text-decoration:none; }
.content-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:30px; }
.info-stack { display:grid; gap:16px; }
.info-card { border:4px solid var(--ink); border-radius:24px; padding:24px; background:var(--paper); color:var(--ink); box-shadow:7px 7px 0 var(--ink); }
.info-card h2, .info-card h3 { margin:0 0 8px; line-height:1.05; }
.info-card h3 { font-size:1.45rem; }
.info-card p { margin:0; }
.faq-list { display:grid; gap:14px; }
details { background:var(--paper); color:var(--ink); border:3px solid var(--ink); border-radius:20px; padding:16px 18px; box-shadow:5px 5px 0 var(--ink); }
summary { cursor:pointer; font-weight:950; font-size:1.08rem; }
details p { margin:12px 0 0; }
.blog-hero { background:var(--pink); color:white; }
.blog-filter { display:flex; flex-wrap:wrap; gap:10px; }
.blog-filter a { text-decoration:none; border:2px solid var(--ink); border-radius:999px; padding:8px 12px; background:var(--paper); color:var(--ink); font-weight:900; }
.article-hero { background:var(--cream); color:var(--ink); padding:clamp(44px,7vw,82px) 0 58px; border-bottom:5px solid var(--ink); }
.article-hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:36px; align-items:center; }
.article-hero h1 { font-size:clamp(3rem,6.7vw,6.3rem); }
.article-deck { font-size:clamp(1.05rem,2vw,1.28rem); font-weight:650; color:#314238; max-width:760px; }
.article-meta { display:flex; flex-wrap:wrap; gap:9px; align-items:center; margin:18px 0; font-size:.82rem; font-weight:850; }
.article-feature { border:5px solid var(--ink); border-radius:34px; overflow:hidden; box-shadow:14px 14px 0 var(--ink); transform:rotate(.7deg); }
.article-layout { display:grid; grid-template-columns:minmax(0,820px) 250px; gap:32px; align-items:start; }
.article-wrap { background:var(--cream); color:var(--ink); padding:52px 0 86px; }
.article-body { background:var(--paper); border:4px solid var(--ink); border-radius:30px; padding:clamp(24px,5vw,58px); box-shadow:10px 10px 0 var(--ink); font-family:Georgia,"Times New Roman",serif; font-size:1.08rem; line-height:1.84; }
.article-body > p:first-child { font-size:1.25rem; line-height:1.65; }
.article-body h2 { font-family:Inter,ui-sans-serif,sans-serif; font-size:clamp(2rem,4vw,3.2rem); line-height:1.02; letter-spacing:-.04em; margin:2.4em 0 .55em; scroll-margin-top:160px; }
.article-body h3 { font-family:Inter,ui-sans-serif,sans-serif; font-size:1.45rem; line-height:1.15; margin:1.8em 0 .45em; }
.article-body p { margin:0 0 1.2em; }
.article-body ul, .article-body ol { margin:0 0 1.3em; padding-left:1.4em; }
.article-body li { margin:.5em 0; }
.article-body a { color:#0a5b3b; font-weight:750; }
.article-body a[target="_blank"] { background:linear-gradient(transparent 65%,rgba(183,255,42,.55) 65%); }
.article-side { position:sticky; top:150px; display:grid; gap:14px; }
.side-card { background:var(--ink); color:var(--cream); border:3px solid var(--ink); border-radius:22px; padding:18px; }
.side-card.light { background:var(--lime); color:var(--ink); }
.side-card h2, .side-card h3 { margin:0 0 10px; line-height:1.1; }
.side-card a { font-weight:850; }
.tag-list { display:flex; flex-wrap:wrap; gap:7px; }
.archive-header { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:26px; }
.archive-header h1, .archive-header h2 { font-size:clamp(3rem,7vw,6.2rem); }
.prose-box { background:var(--paper); color:var(--ink); border:4px solid var(--ink); border-radius:30px; padding:clamp(24px,4vw,42px); box-shadow:10px 10px 0 var(--ink); }
.prose-box h2 { font-size:clamp(2rem,4vw,3.5rem); line-height:1.05; margin:1.4em 0 .45em; }
.prose-box h2:first-child { margin-top:0; }
.prose-box p, .prose-box li { font-size:1.05rem; }
.footer { background:#050d09; color:#dce8e0; padding:54px 0 30px; border-top:1px solid rgba(255,255,255,.12); }
.footer-grid { display:grid; grid-template-columns:1.3fr .8fr .8fr .8fr; gap:30px; }
.footer h2, .footer h3 { color:white; margin-top:0; }
.footer .brand { font-size:1.5rem; }
.footer ul { list-style:none; padding:0; margin:0; display:grid; gap:8px; }
.footer a { color:#dce8e0; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,.15); padding-top:22px; margin-top:36px; font-size:.85rem; color:#aebdb4; }
.notice { border-left:7px solid var(--orange); padding:14px 18px; background:#fff1dc; color:var(--ink); border-radius:0 18px 18px 0; font-weight:650; }
.reveal { opacity:1; transform:none; }
.reveal.is-visible { animation:reveal-in .65s ease both; }
@keyframes reveal-in {
  from { opacity:.28; transform:translateY(20px); }
  to { opacity:1; transform:none; }
}
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; }
  .reveal, .reveal.is-visible { opacity:1; transform:none; animation:none; }
}
@media (max-width: 1080px) {
  .menu-toggle { display:inline-flex; }
  .site-nav { display:none; position:fixed; z-index:1200; inset:88px 16px auto; max-height:calc(100vh - 120px); overflow:auto; flex-direction:column; align-items:stretch; padding:16px; border:3px solid var(--ink); border-radius:26px; background:var(--paper); box-shadow:12px 12px 0 var(--ink); }
  .site-nav.is-open { display:flex; }
  .site-nav a { color:var(--ink); font-size:1rem; padding:12px 14px; }
  .hero-grid, .article-hero-grid, .content-grid, .callout-grid { grid-template-columns:1fr; }
  .hero-art { max-width:760px; }
  .article-layout { grid-template-columns:1fr; }
  .article-side { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .footer-grid { grid-template-columns:1.2fr 1fr 1fr; }
  .footer-grid > :first-child { grid-column:1/-1; }
}
@media (max-width: 820px) {
  .card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .topic-card:nth-child(n) { grid-column:span 6; }
  .topic-card:nth-child(7) { grid-column:span 12; }
  .section-head { align-items:start; flex-direction:column; }
  .hero-stats { grid-template-columns:1fr; }
}
@media (max-width: 620px) {
  .container { width:min(100% - 24px,var(--max)); }
  .brand-mark { display:none; }
  .brand { font-size:1rem; }
  .nav-shell { padding-left:13px; }
  .hero { padding-top:48px; }
  .hero h1, .page-hero h1, .article-hero h1 { font-size:clamp(2.75rem,15vw,4.7rem); }
  .hero-art, .article-feature { box-shadow:8px 8px 0 var(--ink); }
  .hero-actions { flex-direction:column; align-items:stretch; }
  .btn { width:100%; }
  .topic-grid, .card-grid { grid-template-columns:1fr; }
  .topic-card:nth-child(n) { grid-column:span 12; }
  .article-side { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-grid > :first-child { grid-column:1/-1; }
  .archive-header { align-items:start; flex-direction:column; }
  .article-body { border-width:3px; }
}
