
/* Incident Insights — v2.0.0 */
:focus-visible { outline: 2px solid var(--triarii-gold-light); outline-offset: 5px; }
.insights-section .section-head { text-align:left; margin-bottom:2.2rem; max-width:760px; }
.insights-intro { color:#adb7c7; margin-top:1rem; font-size:1.03rem; }
.insights-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.insight-card { background:linear-gradient(145deg,rgba(22,27,39,.96),rgba(10,13,20,.98)); border:1px solid var(--border-subtle); border-radius:8px; padding:1.8rem; display:flex; flex-direction:column; position:relative; overflow:hidden; transition:border-color .2s,transform .2s; }
.insight-card::before { content:''; position:absolute; inset:0 0 auto; height:3px; background:linear-gradient(90deg,var(--triarii-crimson-bright),var(--triarii-gold)); }
.insight-card:hover { border-color:var(--border-focus); transform:translateY(-4px); }
.insight-meta { font-family:var(--font-mono); font-size:.68rem; color:var(--triarii-gold-light); display:flex; flex-wrap:wrap; justify-content:space-between; gap:.7rem; margin-bottom:1.3rem; }
.insight-card h3 { font-size:1.27rem; line-height:1.45; margin-bottom:1rem; }
.insight-card p { color:#adb7c7; font-size:.92rem; margin-bottom:1.5rem; }
.insight-card .insight-link { margin-top:auto; color:var(--triarii-gold-light); text-decoration:none; font-size:.87rem; font-weight:600; padding-top:1rem; border-top:1px solid var(--border-subtle); }
.insight-link:hover { color:#fff; }
.insights-scope { margin-top:1.6rem; font-size:.8rem; color:#a5afbf; max-width:880px; }
.article-shell { padding-top:3rem; max-width:1020px; }
.article-back { color:var(--triarii-gold-light); text-decoration:none; font-size:.85rem; display:inline-block; margin-bottom:2rem; }
.article-heading h1 { font-size:clamp(2rem,4.5vw,3.2rem); line-height:1.16; letter-spacing:-.025em; max-width:850px; margin:.8rem 0 1.4rem; }
.article-deck { color:#b7c1d1; font-size:1.13rem; max-width:760px; }
.article-byline { color:#9ca8b9; font-family:var(--font-mono); font-size:.73rem; margin:1.4rem 0 2rem; }
.article-lesson { padding:1.25rem 1.5rem; border-left:3px solid var(--triarii-gold); background:rgba(197,155,72,.07); margin-bottom:2.5rem; color:#e5c88f; }
.article-lesson small { display:block; font-family:var(--font-mono); font-size:.68rem; letter-spacing:.12em; margin-bottom:.4rem; }
.article-body { max-width:760px; }
.article-body section { margin:0 0 2.4rem; }
.article-body h2 { font-size:1.4rem; line-height:1.4; color:#f0f3f8; margin-bottom:.9rem; }
.article-body p,.article-body li { color:#bcc5d3; font-size:1rem; line-height:1.85; }
.article-body p+p { margin-top:1rem; }
.article-body ul { padding-left:1.3rem; }
.article-body li { padding-left:.3rem; margin-bottom:.75rem; }
.article-body strong { color:#edf1f7; font-weight:600; }
.article-body a { color:var(--triarii-gold-light); text-underline-offset:4px; overflow-wrap:anywhere; }
.article-scope { border:1px solid var(--border-subtle); border-radius:6px; padding:1.4rem; margin:2rem 0; background:var(--bg-card); }
.article-scope h2 { font-size:1rem; }
.article-scope p { font-size:.85rem; }
.article-sources { border-top:1px solid var(--border-subtle); padding-top:1.8rem; }
.article-sources ol { padding-left:1.3rem; }
.article-sources li { font-size:.85rem; margin-bottom:1rem; }
.article-source-date { display:block; font-size:.75rem; color:#97a5b8; }
.article-next { border-top:1px solid var(--border-subtle); padding-top:2rem; margin-top:2rem; }
.article-next p { margin-bottom:1rem; }
.article-footer { padding:2rem; }
.article-footer-inner { max-width:956px; margin:auto; display:flex; flex-wrap:wrap; gap:1rem; justify-content:space-between; color:#9ba8ba; font-size:.8rem; }
.article-footer a { color:var(--triarii-gold-light); text-decoration:none; }
.skip-link { position:fixed; top:-100px; left:1rem; z-index:2000; background:#dfb76c; color:#08090d; padding:.6rem 1rem; }
.skip-link:focus { top:1rem; }
@media(max-width:960px) { .insights-grid { grid-template-columns:1fr; } .insight-card { padding:1.6rem; } .article-shell { padding-top:2rem; } }
@media(max-width:600px) { .article-lesson { padding:1rem; } .article-body p,.article-body li { font-size:.95rem; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important; transition:none!important; } }
