/* RECALL / visual edition. All illustration resources are local to this folder. */
@font-face{
  font-family:"Recall Local Condensed";
  src:local("Noto Sans ExtraCondensed Black"),local("Impact"),local("Arial Narrow Bold");
  font-weight:400;font-style:normal;font-display:swap;
}
:root{--display:"Anton","Recall Local Condensed","Editorial Fallback",Impact,"Arial Narrow",sans-serif}
img{max-width:100%}
.article-opener{display:grid;gap:22px;padding:36px 0 42px;align-items:center;border-bottom:1px solid var(--line);margin-bottom:40px}
.article-opener .article-header{max-width:none;padding:0;min-width:0}
.article-opener .article-header h1{font-size:clamp(36px,4.3vw,58px);line-height:1.09;letter-spacing:-.025em;margin:17px 0 21px;text-wrap:balance}
.article-opener .article-lead{font-size:17px;line-height:1.65;max-width:57ch}
.article-cover{margin:0;min-width:0;align-self:center;position:relative}
.article-cover-media{position:relative;display:block;overflow:hidden;background:#eee8dc;aspect-ratio:3/2;box-shadow:0 15px 35px rgb(20 19 17 / 9%)}
.article-cover-media::after{content:"";position:absolute;left:0;bottom:0;width:72px;height:5px;background:var(--red)}
.article-cover-media img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/2}
.article-cover figcaption{margin-top:13px;color:var(--muted);font-size:10px;line-height:1.6;max-width:62ch}
.article-cover-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.article-cover-label span:last-child{color:var(--red-text)}
.editorial-diagram{display:block;margin:35px 0 40px;padding:0;break-inside:avoid}
.editorial-diagram picture{display:block;background:#f6f2e9;border:1px solid #e2dccf;overflow:hidden;border-radius:9px}
.editorial-diagram img{width:100%;height:auto;max-width:100%;object-fit:contain;display:block}
.editorial-diagram figcaption{font:400 12px/1.65 var(--body);color:var(--muted);margin-top:11px}
.editorial-diagram .diagram-open{display:inline-block;margin-top:5px;font-size:12px;font-weight:600;text-underline-offset:4px;min-height:36px;padding-top:3px}
.editorial-diagram .figure-heading{display:block;font:700 10px/1.5 var(--body);letter-spacing:.13em;text-transform:uppercase;color:var(--red-text);margin-bottom:12px}
.reading-card{padding:0 0 22px;overflow:hidden;min-width:0;border-top:0;display:flex;flex-direction:column;align-items:stretch}
.reading-card .reading-cover{display:block;position:relative;overflow:hidden;aspect-ratio:3/2;background:#eee8dc;margin-bottom:20px;text-decoration:none}
.reading-card .reading-cover img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease;aspect-ratio:3/2}
.reading-card:hover .reading-cover img{transform:scale(1.035)}
.reading-card .reading-cover::after{content:"↗";position:absolute;bottom:0;right:0;background:var(--red);color:#111;padding:8px 13px;font-size:20px;line-height:1}
.reading-card>.eyebrow{padding-top:14px;border-top:1px solid var(--line)}
.reading-card h3{font-size:25px;line-height:1.17;margin:10px 0 13px;text-wrap:balance}
.reading-card h3 a{display:block;text-decoration:none}
.reading-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px}
.reading-grid{gap:32px 22px}
.scenario-card{padding-top:26px;overflow:hidden}
.scenario-card .scenario-image{height:180px;margin:-26px -26px 25px;background:#e9e3d8;overflow:hidden}
.scenario-card .scenario-image img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.scenario-card .scenario-number{z-index:1;background:var(--paper);padding:5px 9px;border-radius:3px;line-height:1.2;top:13px;right:13px}
.section-visual{margin-top:26px;max-width:510px}
.section-visual img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;border-radius:5px}
.section-visual figcaption{font:400 10px/1.6 var(--body);margin-top:9px;color:var(--muted)}
.home-diagram{max-width:910px;margin:36px auto 0}
.hero-portrait img{object-position:55% 36%}
.article-aside nav{max-height:65vh;overflow:auto;padding-right:8px;scrollbar-width:thin}
@media(min-width:900px){
 .article-opener{grid-template-columns:1.14fr 1fr;gap:46px;padding-top:45px;padding-bottom:45px}
 .article-cover{transform:rotate(-1.3deg);margin-top:12px}
 .article-cover figcaption{transform:rotate(1.3deg);transform-origin:left top}
 .article-opener .article-header h1{font-size:clamp(40px,4.3vw,58px)}
 .article-layout{grid-template-columns:minmax(0,760px) minmax(0,240px);gap:48px}
}
@media(max-width:899px){
 .article-opener{gap:28px}
 .article-cover{max-width:650px;width:100%}
 .article-cover-media{aspect-ratio:3/2}
 .article-opener .article-header h1{max-width:21ch}
 .article-opener .article-lead{max-width:64ch}
}
@media(max-width:599px){
 .article-opener{padding-top:28px;margin-bottom:30px;gap:22px}
 .article-opener .article-header h1{font-size:clamp(34px,9.1vw,47px);max-width:none}
 .article-opener .article-lead{font-size:16px}
 .article-cover-label{font-size:8px}
 .editorial-diagram{margin:26px 0 30px}
 .editorial-diagram img{aspect-ratio:600/950}
 .scenario-card{padding-top:22px}
 .scenario-card .scenario-image{margin:-22px -22px 23px;height:210px}
 .reading-card .reading-cover{margin-bottom:16px}
 .section-visual{max-width:none}
}
@media(prefers-reduced-motion:reduce){.reading-card .reading-cover img{transition:none}.reading-card:hover .reading-cover img{transform:none}}
@media print{
 .article-opener{display:block;padding-block:20px}
 .article-cover{max-width:390px;transform:none;margin:20px 0}
 .article-cover figcaption{transform:none}
 .editorial-diagram{max-width:650px}
 .diagram-open{display:none!important}
 .reading-card .reading-cover{max-width:240px}
}
