/* Article-specific layout. Shared navigation and footer remain authoritative. */
.ie-skip { position:fixed; top:12px; left:12px; z-index:1000; padding:14px 20px; background:#fff; color:#101820; transform:translateY(-180%); }
.ie-skip:focus { transform:none; }
.ie-kicker { margin:39px 0 18px; color:#93b8dd; font:11px/1.5 'Share Tech Mono',monospace; letter-spacing:.15em; text-transform:uppercase; }
.ie-cover { margin:0; padding:0 24px 24px; background:#0b1016; }
.ie-cover img { display:block; width:100%; height:auto; max-width:1440px; margin:auto; }
.ie-shell { max-width:1320px; margin:auto; display:grid; grid-template-columns:240px minmax(0,1fr); align-items:start; }
.ie-toc { position:sticky; top:98px; margin:66px 0; padding:0 28px; }
.ie-toc-title { margin:0 0 20px; color:#69717b; font:10px 'Share Tech Mono',monospace; letter-spacing:.13em; text-transform:uppercase; }
.ie-toc a { display:block; padding:13px 0; border-bottom:1px solid #d3d6d6; color:#414950; text-decoration:none; font-size:12px; line-height:1.5; }
.ie-toc a span { display:inline-block; width:24px; color:#677986; font:10px 'Share Tech Mono',monospace; }
.ie-toc a:hover { color:#174f93; }
.ie-toc .ie-toc-back { margin-top:26px; border-bottom:0; font-size:11px; }
.ie-story { min-width:0; padding:64px 54px 40px; border-left:1px solid #d4d7d6; }
.ie-section { margin:0 0 70px; scroll-margin-top:100px; }
.ie-byline { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px; margin:0 0 24px; color:#596773; font-size:13px; line-height:1.6; }
.ie-byline strong { color:#253c50; font-weight:600; }
.ie-section-label { color:#365d7e; font:10px/1.5 'Share Tech Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
.ie-section h2 { max-width:800px; margin:20px 0 27px; color:#18232b; font:800 clamp(35px,4.1vw,56px)/1.02 'Barlow Condensed',Arial,sans-serif; letter-spacing:-.02em; text-transform:uppercase; }
.ie-prose { max-width:750px; }
.ie-prose p { margin:0 0 22px; color:#434b53; font-size:17px; line-height:1.85; }
.ie-section:first-child .ie-prose p:first-child { color:#202e39; font-size:21px; line-height:1.7; }
.ie-photo { margin:0 0 37px; }
.ie-photo img { display:block; width:100%; height:auto; background:#15202a; }
.ie-photo figcaption { margin:13px 0 0; color:#69717b; font:10px/1.7 'Share Tech Mono',monospace; }
.ie-statement { max-width:750px; margin:34px 0 0; padding:30px 0; border-top:2px solid #263746; border-bottom:1px solid #b9c2c9; color:#253c50; font-size:clamp(25px,3vw,38px); line-height:1.28; font-weight:600; letter-spacing:-.025em; }
.ie-related { max-width:1320px; margin:0 auto 72px; padding:0 36px; }
.ie-related-title { padding-top:34px; border-top:1px solid #b9c2c9; color:#3d566a; font:11px 'Share Tech Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }
.ie-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin-top:25px; }
.ie-related a { padding:24px; border:1px solid #c9cfce; background:#fbfaf6; text-decoration:none; }
.ie-related a:hover { border-color:#365d7e; }
.ie-related span { display:block; margin-bottom:18px; color:#69717b; font:10px 'Share Tech Mono',monospace; text-transform:uppercase; }
.ie-related strong { font-size:19px; line-height:1.35; font-weight:600; }
.ie-cta { background:#0b1016; color:#fff; padding:65px 28px 72px; text-align:center; }
.ie-cta .ie-kicker { margin:0 0 22px; }
.ie-cta h2 { margin:0; font:800 clamp(40px,5.4vw,72px)/1 'Barlow Condensed',Arial,sans-serif; text-transform:uppercase; }
.ie-cta p { max-width:660px; margin:22px auto 30px; color:#c1c9d0; font-size:17px; line-height:1.7; }
.ie-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
.ie-actions a { min-height:48px; padding:14px 24px; display:inline-flex; align-items:center; border:1px solid #788895; text-decoration:none; font-size:12px; font-weight:650; }
.ie-actions .ie-primary { background:#fff; border-color:#fff; color:#0b1016; }
.ie-actions a:hover { background:#d4e5f0; color:#0b1016; border-color:#d4e5f0; }
body:has(.ie-cover) { background:#f2f2ed; }
.ie-toc a:focus-visible,.ie-related a:focus-visible,.ie-actions a:focus-visible { outline:3px solid #438bd2; outline-offset:5px; }
@media(max-width:1050px) {
  .ie-shell { grid-template-columns:200px minmax(0,1fr); }
  .ie-story { padding:52px 30px 30px; }
  .ie-toc { padding:0 20px; }
}
@media(max-width:760px) {
  .ie-kicker { margin-top:28px; font-size:10px; }
  .ie-cover { padding:0 0 14px; }
  .ie-shell { display:block; }
  .ie-toc { position:static; margin:0; padding:26px 23px 18px; border-bottom:1px solid #c9cfce; }
  .ie-toc-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; }
  .ie-toc a { padding:10px 0; font-size:12px; }
  .ie-toc .ie-toc-back { margin:12px 0 0; }
  .ie-story { padding:42px 23px 10px; border:0; }
  .ie-section { margin-bottom:54px; }
  .ie-prose p { font-size:16px; line-height:1.8; }
  .ie-section:first-child .ie-prose p:first-child { font-size:19px; }
  .ie-related { margin-bottom:42px; padding:0 23px; }
  .ie-related-grid { grid-template-columns:1fr; gap:12px; }
  .ie-related a { padding:22px; }
  .ie-cta { padding:48px 23px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media print {
  #announce-bar,#main-nav,.ie-toc,.ie-related,.ie-cta,.site-footer,.ie-skip { display:none !important; }
  .ie-cover { background:white; color:black; }
  .ie-shell { display:block; }
  .ie-story { padding:30px 0; border:0; }
  .ie-photo { break-inside:avoid; }
  .ie-section h2 { break-after:avoid; }
}
