.content-page { width:min(100%,54rem); margin:0 auto; }
.content-page header { margin-bottom:2rem; }
.content-page header > p { font-size:1.15rem; line-height:1.7; }
.content-page h1 { font-size:clamp(2.2rem,5vw,4.2rem); letter-spacing:-.055em; margin:0 0 1rem; }
.content-page h2 { margin:2rem 0 .75rem; font-size:clamp(1.45rem,3vw,2.2rem); letter-spacing:-.035em; }
.content-page p,.content-page li { line-height:1.75; }
.content-page img { max-width:100%; height:auto; border-radius:1rem; }
.content-page blockquote,.content-callout,.related-pages { margin:2rem 0; padding:1.5rem; border-left:4px solid var(--accent); background:var(--card); border-radius:.75rem; }
.content-page blockquote p { font-size:1.2rem; margin:0; }
.content-embed { position:relative; padding-top:56.25%; margin:2rem 0; }
.content-embed iframe { position:absolute; inset:0; width:100%; height:100%; border:0; border-radius:1rem; }
.category-nav { display:flex; flex-wrap:wrap; gap:.5rem; margin:1rem 0 2rem; }
.category-nav a { padding:.45rem .7rem; border:1px solid var(--border); border-radius:999px; color:var(--muted); }
.category-nav a[aria-current="page"] { background:var(--accent); color:#fff; border-color:var(--accent); }
.article-page > header > img { margin-top:1.5rem; }
.stat-value { display:block; font-size:clamp(2rem,4vw,3.2rem); color:var(--accent); }
.partners { color:#fff; background:linear-gradient(180deg,#18362f,#132b26); }
.partners-shell { width:min(100%,var(--shell)); margin:auto; display:flex; align-items:center; gap:4rem; padding:2rem 1.5rem; }
.partners p { flex:0 0 11rem; margin:0; color:rgb(209 250 229 / .65); font-size:.7rem; font-weight:600; letter-spacing:.24em; text-transform:uppercase; }
.partner-grid { display:grid; flex:1; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:center; gap:1.5rem; }
.partner-grid a,.partner-grid span { display:flex; min-height:5rem; align-items:center; justify-content:center; }
.partner-grid img { max-width:100%; max-height:7rem; object-fit:contain; opacity:.85; transition:opacity .2s ease,transform .2s ease; }
.partner-grid a:hover img { opacity:1; transform:scale(1.04); }
@media (max-width:50rem) { .partners-shell { display:block; }.partners p { margin-bottom:1rem; }.partner-grid { grid-template-columns:1fr; gap:.25rem; }.partner-grid a,.partner-grid span { min-height:3.5rem; } }
