.post-single { padding: 40px 0 64px; }
.post-narrow { max-width: 760px; } .post-breadcrumb {
font-family: var(--font-sans);
font-size: 13px;
color: var(--aib-slate-500);
margin-bottom: 18px;
display: flex; gap: 8px; align-items: center; flex-wrap: wrap;
}
.post-breadcrumb .crumb-sep { color: var(--aib-slate-300); }
.post-single .kicker {
font-family: var(--font-mono);
text-transform: uppercase;
letter-spacing: .12em;
font-size: 12px;
font-weight: 600;
color: var(--aib-blue-600);
margin-bottom: 12px;
}
.post-title {
font-family: var(--font-serif);
font-weight: 700;
font-size: clamp(28px, 4.4vw, 46px);
line-height: 1.12;
letter-spacing: -.01em;
color: var(--aib-ink);
margin: 0 0 18px;
}
.post-byline {
font-family: var(--font-sans);
font-size: 14px;
color: var(--aib-slate-600);
display: flex; gap: 8px; align-items: center; flex-wrap: wrap;
padding-bottom: 22px;
border-bottom: 1px solid var(--aib-slate-200);
}
.post-byline .by { font-weight: 600; color: var(--aib-ink-2); }
.post-byline .sep { color: var(--aib-slate-300); } .post-hero {
margin: 26px 0 8px;
border-radius: 14px;
overflow: hidden;
background: var(--aib-slate-100);
}
.post-hero img { display: block; width: 100%; height: auto; } .post-content {
font-family: var(--font-serif);
font-size: 19px;
line-height: 1.75;
color: var(--aib-ink-2);
margin-top: 26px;
}
.post-content > * + * { margin-top: 1.15em; }
.post-content p { margin: 0 0 1.15em; }
.post-content h2 {
font-family: var(--font-sans);
font-weight: 700;
font-size: 26px;
line-height: 1.25;
color: var(--aib-ink);
margin: 1.8em 0 .5em;
letter-spacing: -.01em;
}
.post-content h3 {
font-family: var(--font-sans);
font-weight: 700;
font-size: 21px;
color: var(--aib-ink);
margin: 1.5em 0 .4em;
}
.post-content h4 { font-family: var(--font-sans); font-weight: 600; font-size: 18px; color: var(--aib-ink); margin: 1.3em 0 .3em; }
.post-content a { color: var(--aib-blue-600); text-decoration: underline; text-underline-offset: 2px; }
.post-content a:hover { color: var(--aib-blue-500); }
.post-content ul, .post-content ol { margin: 0 0 1.15em; padding-left: 1.4em; }
.post-content li { margin: .4em 0; }
.post-content img { max-width: 100%; height: auto; border-radius: 10px; margin: 1.4em 0; }
.post-content figure { margin: 1.6em 0; }
.post-content figcaption { font-family: var(--font-sans); font-size: 13px; color: var(--aib-slate-500); margin-top: .5em; text-align: center; }
.post-content blockquote {
margin: 1.6em 0;
padding: 6px 0 6px 22px;
border-left: 3px solid var(--aib-blue-500);
font-style: italic;
color: var(--aib-ink);
}
.post-content pre { background: var(--aib-navy-900); color: var(--aib-white); padding: 16px 18px; border-radius: 10px; overflow: auto; font-family: var(--font-mono); font-size: 14px; }
.post-content code { font-family: var(--font-mono); font-size: .9em; }
.post-content table { width: 100%; border-collapse: collapse; font-family: var(--font-sans); font-size: 15px; margin: 1.4em 0; }
.post-content th, .post-content td { border: 1px solid var(--aib-slate-200); padding: 10px 12px; text-align: left; }
.post-content th { background: var(--aib-slate-50); font-weight: 600; }
.post-content h2:first-child, .post-content p:first-child { margin-top: 0; } .post-tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 30px 0 0; }
.post-tag {
font-family: var(--font-sans); font-size: 12px; font-weight: 500;
color: var(--aib-slate-600); background: var(--aib-slate-100);
padding: 5px 11px; border-radius: 999px; text-decoration: none;
}
.post-tag:hover { background: var(--aib-slate-200); }
.post-backlink { margin-top: 30px; } .post-single .section-head { margin-top: 56px; padding-top: 30px; border-top: 1px solid var(--aib-slate-200); } .archive-head { margin-bottom: 28px; }
.archive-head .section-title { font-family: var(--font-serif); font-size: clamp(26px, 3.6vw, 40px); }
.archive-grid { margin-top: 8px; }
.archive-pagination { margin-top: 40px; }
.archive-pagination .nav-links { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; font-family: var(--font-sans); }
.archive-pagination .page-numbers {
display: inline-flex; align-items: center; justify-content: center;
min-width: 40px; height: 40px; padding: 0 12px;
border: 1px solid var(--aib-slate-200); border-radius: 8px;
color: var(--aib-ink-2); text-decoration: none; font-size: 14px; font-weight: 500;
}
.archive-pagination .page-numbers.current { background: var(--aib-navy-900); color: var(--aib-white); border-color: var(--aib-navy-900); }
.archive-pagination .page-numbers:hover:not(.current) { background: var(--aib-slate-50); }
.archive-empty { font-family: var(--font-sans); color: var(--aib-slate-500); padding: 30px 0; } .post-wide { max-width: 1040px; margin-inline: auto; } .aibmag-pillar .post-content > ul:first-of-type {
background: var(--aib-slate-50);
border: 1px solid var(--aib-slate-200);
border-radius: var(--radius-lg);
padding: 18px 22px 18px 40px;
margin: 0 0 1.6em;
font-family: var(--font-sans);
font-size: 16px;
columns: 2;
column-gap: 32px;
}
.aibmag-pillar .post-content > ul:first-of-type li { margin: .25em 0; break-inside: avoid; } :where(.post-content h1, .post-content h2, .post-content h3,
.post-content h4, .post-content h5, .post-content h6) span,
:where(.post-content h1, .post-content h2, .post-content h3,
.post-content h4, .post-content h5, .post-content h6) {
font-size: inherit;
line-height: inherit;
} .aib-cta {
display: flex; flex-wrap: wrap; align-items: center;
justify-content: space-between; gap: 20px;
clear: both; margin: 40px 0; padding: 28px 30px;
border-radius: var(--radius-lg);
background: linear-gradient(90deg, var(--aib-navy-900) 0%, var(--aib-blue-600) 100%);
color: var(--aib-white);
font-family: var(--font-sans);
box-shadow: var(--shadow-lg);
}
.aib-cta-text { display: flex; flex-direction: column; gap: 6px; flex: 1; min-width: 260px; }
.aib-cta-eyebrow {
font-size: 12px; font-weight: 700; text-transform: uppercase;
letter-spacing: .12em; color: var(--aib-blue-200);
}
.aib-cta-head { font-family: var(--font-serif); font-size: 21px; font-weight: 600; line-height: 1.2; color: var(--aib-white); }
.aib-cta-btn {
background: var(--aib-white); color: var(--aib-blue-600);
padding: 13px 26px; border-radius: var(--radius-pill);
font-weight: 700; font-size: 15px; text-decoration: none;
white-space: nowrap; transition: background var(--dur-fast) var(--ease-standard);
}
.aib-cta-btn:hover { background: var(--aib-blue-50); color: var(--aib-blue-600); } .post-content table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
@media (max-width: 980px) {
.post-wide { max-width: 100%; }
.aibmag-pillar .post-content > ul:first-of-type { columns: 1; }
}
@media (max-width: 640px) {
.post-content { font-size: 18px; }
.post-single { padding: 24px 0 48px; }
.post-content img { margin: 1.1em 0; }
.aib-cta { padding: 22px; gap: 14px; }
.aib-cta-btn { width: 100%; text-align: center; }
}