.article-page--rag .rag-header{max-width:960px;margin:0 auto 40px}
.article-page--rag .rag-draft{padding:12px 16px;background:#edf3f7;color:#25485f;font-size:14px;border-left:3px solid #0075e1;margin:0 0 30px}
.article-page--rag .rag-eyebrow,.article-page--rag .rag-article .eyebrow{font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#075ca8}
.article-page--rag .rag-header h1{font-size:clamp(32px,4.3vw,56px);line-height:1.13;letter-spacing:-.035em;font-weight:700;margin:18px 0 24px;max-width:850px}
.article-page--rag .rag-deck{font-size:22px;line-height:1.55;color:#405d71;max-width:810px;margin:0 0 24px}
.article-page--rag .rag-byline{font-size:13px;line-height:1.7;color:#526779;margin:0 0 28px}
.article-page--rag .rag-cover{margin:0}
.article-page--rag .rag-cover img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;border-radius:12px}
.article-page--rag .rag-cover figcaption{font-size:12px;color:#526779;line-height:1.6;margin:12px 0 0}
.article-page--rag .main-text1{max-width:850px;margin-inline:auto}
.article-page--rag .rag-article{font-size:18px;line-height:1.75;color:#1b3040}
.article-page--rag .rag-article p{margin:0 0 22px}
.article-page--rag .rag-article section{margin:0 0 48px;scroll-margin-top:150px}
.article-page--rag .rag-article h2{font-size:32px;line-height:1.25;font-weight:700;margin:0 0 24px;letter-spacing:-.025em}
.article-page--rag .rag-article h3{font-size:23px;line-height:1.4;margin:30px 0 14px}
.article-page--rag .rag-article ul,.article-page--rag .rag-article ol{padding-left:24px;margin:0 0 25px}
.article-page--rag .rag-article li{margin-bottom:12px;line-height:1.7}
.article-page--rag .rag-contents{border-block:1px solid #d9e2ec;padding:24px 0;margin:0 0 36px;font-size:15px}
.article-page--rag .rag-contents>p{font-weight:700;margin-bottom:14px}
.article-page--rag .rag-contents nav{display:grid;grid-template-columns:1fr 1fr;gap:8px 26px}
.article-page--rag .rag-contents a{display:block;padding:7px 0;line-height:1.5;color:#075ca8;text-underline-offset:3px}
.article-page--rag .aside-cta{margin-top:14px}
.article-page--rag .answer{border-left:3px solid #0075e1;padding-left:24px}
.article-page--rag .example,.article-page--rag .access-diagram{background:#edf3f7;padding:26px;margin:30px 0;border-radius:10px}
.article-page--rag .example .question{font-size:23px;font-weight:700;line-height:1.4}
.article-page--rag .source-chip{font-size:14px;border-top:1px solid #cfdae2;padding-top:16px;color:#075ca8}
.article-page--rag .rag-article .small{font-size:14px;line-height:1.65;color:#526779}
.article-page--rag .diagram{margin:32px 0;background:#eaf0f4;border-radius:10px;overflow:hidden}
/* ps.css enforces a 400px !important article-photo crop; diagrams must stay whole. */
.article-page--rag .rag-article .diagram img{display:block;width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important;object-fit:contain!important}
.article-page--rag .rag-article figcaption{font-size:13px;line-height:1.6;color:#526779}
.article-page--rag .diagram figcaption{padding:0 22px 22px}
.article-page--rag .diagram-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#526779}
.article-page--rag .access-row{display:grid;grid-template-columns:1fr auto 1fr auto 1.2fr;gap:9px;align-items:center;font-size:15px;line-height:1.4}
.article-page--rag .actor,.article-page--rag .gate,.article-page--rag .allowed{display:block;padding:18px 14px;background:#fff;border:1px solid #d0dce6;min-width:0}
.article-page--rag .gate{background:#172c3c;color:white;border-color:#172c3c}
.article-page--rag .allowed{color:#075ca8;border-color:#85accb}
.article-page--rag .arrow{font-size:22px;color:#075ca8}
.article-page--rag .blocked{display:flex;gap:14px;margin-top:20px;padding-top:18px;border-top:1px solid #cfdae2}
.article-page--rag .blocked>span{font-size:28px;color:#934831}
.article-page--rag .blocked p{font-size:14px;line-height:1.65}
.article-page--rag .equipment-list{border-top:1px solid #d9e2ec;margin:28px 0}
.article-page--rag .equipment-list>div{border-bottom:1px solid #d9e2ec;padding:24px 0}
.article-page--rag .equipment-list .equipment-name{font-size:21px;font-weight:700;margin-bottom:10px;line-height:1.45}
.article-page--rag .equipment-list p{font-size:17px;margin-bottom:0}
.article-page--rag .note{border-top:2px solid #172c3c;padding-top:24px;margin:32px 0}
.article-page--rag .note p{margin-top:12px}
.article-page--rag details{border-top:1px solid #d9e2ec}
.article-page--rag details:last-child{border-bottom:1px solid #d9e2ec}
.article-page--rag summary{cursor:pointer;padding:20px 0;font-size:19px;font-weight:700;line-height:1.5;min-height:60px}
.article-page--rag details p{font-size:17px}
.article-page--rag .brief{background:#edf3f7;padding:30px;border-radius:12px}
.article-page--rag .brief .button{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;border-radius:8px;background:#0075e1;color:#fff;text-decoration:none;font-size:16px;font-weight:700;line-height:1.5}
.article-page--rag .sources{font-size:14px;line-height:1.7}
.article-page--rag .sources h2{font-size:24px}
.article-page--rag .sources li{font-size:14px}
@media(max-width:760px){
 .article-page--rag .rag-header{margin-bottom:30px}
 .article-page--rag .rag-draft{margin-bottom:24px}
 .article-page--rag .rag-header h1{font-size:34px;line-height:1.15;margin:16px 0 20px}
 .article-page--rag .rag-deck{font-size:18px;line-height:1.6}
 .article-page--rag .rag-byline{font-size:12px;margin-bottom:22px}
 .article-page--rag .rag-cover figcaption{font-size:11px}
 .article-page--rag .rag-article{font-size:17px;line-height:1.75}
 .article-page--rag .rag-article h2{font-size:26px;line-height:1.3}
 .article-page--rag .rag-article h3{font-size:21px}
 .article-page--rag .rag-contents nav{grid-template-columns:1fr}
 .article-page--rag .answer{padding-left:18px}
 .article-page--rag .example,.article-page--rag .access-diagram,.article-page--rag .brief{padding:20px}
 .article-page--rag .access-row{display:flex;flex-direction:column;gap:6px;align-items:stretch}
 .article-page--rag .actor,.article-page--rag .gate,.article-page--rag .allowed{text-align:center;padding:15px}
 .article-page--rag .arrow{align-self:center;transform:rotate(90deg);height:28px}
 .article-page--rag .brief .button{padding:16px;font-size:15px}
}
@media(max-width:640px){.article-page--rag .rag-article .diagram img{aspect-ratio:480/1000}}
