
/* Additive only: no changes to homepage styles. */
.article-page{max-width:1160px;margin:0 auto;padding:64px 28px 110px;position:relative}
.article-page a{color:#47d3ff}
.article-back{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-weight:650;font-size:14px;margin-bottom:38px}
.article-tag{font-size:12px;font-weight:750;letter-spacing:.15em;color:#43cbff}
.article-page h1{font-size:clamp(34px,5.1vw,66px);letter-spacing:-.045em;line-height:1.1;max-width:1000px;margin:24px 0;color:#fff}
.article-page h1 span,.article-page h2 em{color:#46d3ff;font-style:normal}
.article-deck{max-width:850px;line-height:1.8;color:#c3d8e8;font-size:18px;margin:0 0 25px}
.article-meta{display:flex;align-items:center;gap:14px;color:#9bbcd1;font-size:13px;flex-wrap:wrap;margin:28px 0 38px}
.article-cover{border:1px solid #1a6d9c;border-radius:18px;background:radial-gradient(ellipse at 65% 48%,#135178 0%,#092338 35%,#041422 78%);padding:35px 28px;position:relative;overflow:hidden;box-shadow:0 16px 65px #00101b7d}
.article-cover:before{content:'';position:absolute;width:440px;height:440px;border:1px solid #0e669870;border-radius:50%;right:-120px;top:-195px;box-shadow:0 0 0 65px #098ac00a,0 0 0 140px #098ac00b}
.flow-diagram{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;position:relative;z-index:1}
.flow-diagram .node{padding:16px 18px;min-width:120px;text-align:center;background:#09283f;border:1px solid #3083af;border-radius:10px;color:#f3fbff;font-size:14px;font-weight:700}
.flow-diagram .arrow{font-size:27px;color:#47d3ff}
.diagram-note{position:relative;z-index:1;color:#a4c6d9;text-align:center;font-size:12px;margin-top:20px}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:48px;align-items:start;margin-top:55px}
.article-content{font-size:16px;line-height:1.9;color:#d1e2ef;min-width:0}
.article-content h2{font-size:27px;line-height:1.3;color:#fff;margin:47px 0 15px;scroll-margin-top:110px}
.article-content p{margin:14px 0}
.article-content ul{padding-left:26px}
.article-content li{margin:11px 0}
.article-content strong{color:white}
.article-aside{position:sticky;top:120px;background:#081d30;border:1px solid #235e83;padding:22px;border-radius:15px}
.article-aside h3{margin:0 0 16px;font-size:16px}
.article-aside a{display:block;text-decoration:none;font-size:13px;padding:10px 0;border-bottom:1px solid #21445d;line-height:1.5}
.article-aside a:last-child{border:0}
.article-callout{border-left:4px solid #39cff7;background:#0a2a42;border-radius:0 10px 10px 0;padding:18px 23px;margin:26px 0;color:white;font-weight:650}
.article-sources{border-top:1px solid #2d617f;margin-top:50px;padding-top:16px;font-size:14px}
.article-sources li{overflow-wrap:anywhere}
.article-end{margin-top:50px;border:1px solid #236b96;border-radius:14px;padding:25px;background:#081e31}
.article-end a{display:inline-flex;margin-top:14px}
.article-footer{border-top:1px solid #1b4562;text-align:center;padding:25px;color:#8cb0c9;font-size:13px}
@media(max-width:850px){.article-layout{grid-template-columns:1fr}.article-aside{position:static;order:-1}.article-page{padding:36px 20px 70px}}
@media(max-width:560px){.article-page{padding:27px 15px 60px}.article-deck{font-size:16px}.flow-diagram .node{min-width:0;flex:1 1 110px;padding:14px 8px}.flow-diagram .arrow{display:none}.article-cover{padding:25px 15px}.article-page h1{font-size:35px}}
