/* insights.css (sample, not deployed): one source for every Insights page. Part 1 = legacy .ins-art rules (was inlined per page, 5 drifting copies);
   part 2 = editorial.css as live; part 3 = unification layer. Tokens are the site tokens in styles.css. */

/* article-local styles, scoped to .ins-art by build/insights.mjs , cannot reach site chrome */
.ins-art{--gold:#C9A96E;--gold-br:#DCC18C;--bg:#0A0A0A;--panel:#0E0E10;--panel2:#141416;
--txt:#ECE7DD;--mut:#B9B4A9;--faint:#8E897E;--line:rgba(236,231,221,.12);
--serif:'Playfair Display',Georgia,serif;--sans:'Inter',system-ui,sans-serif;
--mono:ui-monospace,'SF Mono',Menlo,monospace}
.ins-art{margin:0;background:var(--bg);color:var(--txt);font-family:var(--sans);font-size:17.5px;line-height:1.72;-webkit-font-smoothing:antialiased}
.ins-art .article{max-width:74ch;margin:0 auto;padding:64px 26px 110px}
.ins-art .eyebrow{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.ins-art h1{font-family:var(--serif);font-weight:400;font-size:clamp(34px,5vw,48px);line-height:1.14;letter-spacing:-.01em;margin:0 0 18px}
.ins-art h2{font-family:var(--serif);font-weight:400;font-size:clamp(25px,3.2vw,30px);line-height:1.2;margin:52px 0 14px}
.ins-art p{margin:15px 0;color:var(--mut)}
.ins-art p strong{color:var(--txt);font-weight:600}
.ins-art .byline{font-size:18px;color:var(--faint);margin:0 0 8px}
.ins-art .byline b{color:var(--txt);font-weight:500}
.ins-art .stance{font-family:var(--mono);font-size:14px;color:var(--faint);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 2px;margin:22px 0 8px;line-height:1.6}
.ins-art .stance b{color:var(--gold);font-weight:500}
.ins-art .hallmark{display:inline-block;color:var(--gold);letter-spacing:.1em;font-size:12.5px}
.ins-art .fig{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:26px 24px 16px;margin:38px 0}
.ins-art .fig figcaption{border-top:1px solid var(--line);margin-top:18px;padding-top:13px;font-size:15px;color:var(--mut);line-height:1.55}
.ins-art .fign{font-family:var(--mono);font-size:12.5px;color:var(--gold);margin-right:9px}
.ins-art .figsrc{display:block;margin-top:6px;font-family:var(--mono);font-size:12.5px;color:var(--faint)}
.ins-art figure{margin:0}
.ins-art svg{display:block;width:100%;height:auto}
.ins-art svg text{font-family:Inter,system-ui,sans-serif}
.ins-art svg .serif{font-family:'Playfair Display',Georgia,serif}
.ins-art svg .mono{font-family:ui-monospace,Menlo,monospace}



.ins-art .con{border:1px solid var(--line);border-left:2px solid var(--gold);border-radius:8px;background:var(--panel2);padding:18px 20px;margin:30px 0}
.ins-art .con .t{font-family:var(--mono);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:7px}
.ins-art .con p{margin:8px 0}
.ins-art .close{border-top:1px solid var(--line);margin-top:52px;padding-top:22px}
.ins-art .close p{color:var(--mut);font-size:18px}
.ins-art a{color:var(--gold-br);text-decoration:none;border-bottom:1px solid rgba(220,193,140,.35)}
.ins-art a:hover{border-bottom-color:var(--gold-br)}
/* v2: plate figures + print */
.ins-art .plate{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:9px;margin:40px 0;
  color:var(--txt)}                        /* plate ink = canon cream, inherited by currentColor */
.ins-art .plate svg{width:100%;height:auto;display:block;border-radius:5px}
.ins-art .plate-coda{max-width:340px;margin-left:auto;margin-right:auto}
.ins-art .plate figcaption{border-top:1px solid var(--line);margin:11px 3px 2px;padding-top:10px;
  font-size:15px;color:var(--faint);line-height:1.5}
@media print{
  .ins-art{background:#fff;color:#111;font-size:11.5pt}
  .ins-art p{color:#222}
  .ins-art .article{max-width:none;padding:0}
  .ins-art .fig,.ins-art .plate{break-inside:avoid;page-break-inside:avoid;background:#fff;border-color:#bbb}
  /* logo-kit-v3: brass fails AA on light grounds , swap to canon Dark Gold */
  .ins-art .plate{color:#111;--plate-ground:#fff;--plate-gold:#8A6B34}
  .ins-art .con{background:#f6f4ef;border-color:#bbb;border-left-color:#8A6B34;color:#111}
  .ins-art a{color:#111;border-bottom-color:#999}
  .ins-art a[href^="/"]::after{content:" (heritageplatformgroup.com" attr(href) ")";font-size:9pt;color:#666}
  .site-head,.site-foot,.ins-pnwrap,.skip{display:none!important}
  .ins-art svg text{fill:#111!important}
  .ins-art svg rect[fill^="#0"],.ins-art svg rect[fill^="#1"]{fill:#fff!important}
}
@media (max-width:640px){
  .ins-art .fig{padding:14px 10px 10px;overflow-x:auto}
  .ins-art .fig>svg{min-width:560px}
}

/* v9.2 blocks */
.ins-art .iyrne{border:1px solid var(--gold);border-radius:8px;background:rgba(201,169,110,.06);padding:16px 20px;margin:26px 0}
.ins-art .iyrne .t,.ins-art .rgap .t,.ins-art .arm .t,.ins-art .vleak .t,.ins-art .seq .t{font-family:var(--mono);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.ins-art .iyrne p{margin:0;color:var(--txt)}
.ins-art .secs{font-size:14px;color:var(--faint);margin:18px 0 6px;line-height:2;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
.ins-art .secs a{margin-right:14px;white-space:nowrap;border-bottom-color:rgba(220,193,140,.2)}
.ins-art .asof{font-family:var(--mono);font-size:12.5px;color:var(--faint);margin:6px 0 0}
.ins-art .rgap{border:1px solid var(--line);border-left:2px solid var(--gold);border-radius:8px;background:var(--panel2);padding:18px 20px;margin:34px 0}
.ins-art .rgap dl{margin:0;display:grid;grid-template-columns:minmax(96px,130px) 1fr;gap:8px 18px}
.ins-art .rgap dt{font-family:var(--mono);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);padding-top:2px}
.ins-art .rgap dd{margin:0;color:var(--mut)}
.ins-art .arm{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:18px 20px;margin:34px 0}
.ins-art .arm p{margin:9px 0}
.ins-art .arm .armdisc{font-size:14px;color:var(--faint);border-top:1px solid var(--line);padding-top:10px;margin-top:12px}
.ins-art .arm .small b,.ins-art .arm p b{color:var(--txt)}
.ins-art .vleak{border:1px solid var(--line);border-left:2px solid var(--gold-br);border-radius:8px;background:var(--panel2);padding:16px 20px;margin:28px 0}
.ins-art .vleak p{margin:7px 0;font-size:18px}
.ins-art .seq{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:20px 22px;margin:34px 0}
.ins-art .seq .step{border-top:1px solid var(--line);padding:12px 0 4px;margin-top:10px}
.ins-art .seq .step:first-of-type{border-top:none;margin-top:0}
.ins-art .seq .sn{font-family:var(--mono);font-size:12.5px;color:var(--gold)}
.ins-art .seq .sm{color:var(--faint)}
.ins-art .seq .step p{margin:6px 0;font-size:18px}
.ins-art .seq .trap{border-top:1px solid var(--line);margin-top:14px;padding-top:12px;font-size:15px;color:var(--mut)}
.ins-art .tablewrap{overflow-x:auto}
.ins-art table.evtable{border-collapse:collapse;width:100%;min-width:640px;font-size:14.5px}
.ins-art table.evtable caption{text-align:left;font-family:var(--mono);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);padding-bottom:10px}
.ins-art table.evtable th,.ins-art table.evtable td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top;color:var(--mut)}
.ins-art table.evtable thead th{color:var(--txt);font-weight:600;background:var(--panel2)}
.ins-art table.evtable tbody th{color:var(--txt);font-weight:600;white-space:nowrap}
.ins-art .ins-pn.prev span::before{content:"← "}
.ins-art .pos{font-family:var(--mono);font-size:12.5px;color:var(--faint)}
@media (max-width:560px){
  .ins-art .rgap dl{grid-template-columns:1fr;gap:2px 0}
  .ins-art .rgap dd{margin-bottom:10px}
}
@media print{
  .ins-art .iyrne,.ins-art .rgap,.ins-art .arm,.ins-art .vleak,.ins-art .seq{background:#fff;border-color:#bbb;break-inside:avoid}
  .ins-art .rgap dt,.ins-art .iyrne .t,.ins-art .arm .t,.ins-art .vleak .t,.ins-art .seq .t,.ins-art .seq .sn{color:#8A6B34}
  .ins-art .iyrne p,.ins-art .rgap dd{color:#222}
  .ins-art table.evtable th,.ins-art table.evtable td{border-color:#bbb;color:#222}
  .ins-art .secs{display:none}
}

.editorial .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.editorial.editorial-content{background:var(--paper);color:var(--body);font-family:var(--sans);font-size:18px;line-height:1.72}.editorial .table-scroll{overflow-x:auto}.editorial .figure-table{width:100%;border-collapse:collapse;font-size:.92rem;line-height:1.5}.editorial .figure-table th,.editorial .figure-table td{text-align:left;vertical-align:top;border-top:1px solid var(--line);padding:.8rem}.editorial .figure-table thead th{color:var(--ink);font-size:1rem}.editorial .figure-table tbody th{color:var(--ink);font-weight:650}.editorial{--paper:var(--bg);--white:var(--panel);--ink:var(--txt);--body:var(--txt);--muted:var(--mut);--bronze:var(--gold);--line:rgba(236,231,221,.14);--tint:var(--panel2);--field-line:var(--faint);color-scheme:dark}.editorial *{box-sizing:border-box}.editorial{scroll-behavior:smooth;font-size:16px}body.editorial{margin:0;background:var(--paper);color:var(--body);font-family:var(--sans);font-size:18px;line-height:1.72}.editorial a{color:var(--gold-br);text-underline-offset:.2em;text-decoration-thickness:1px}.editorial a:hover{text-decoration-thickness:2px}.editorial a:focus-visible,.editorial button:focus-visible,.editorial textarea:focus-visible{outline:3px solid var(--bronze);outline-offset:4px}.editorial h1,.editorial h2,.editorial h3,.editorial p,.editorial ul,.editorial ol,.editorial figure{margin-top:0}.editorial h1,.editorial h2,.editorial h3{color:var(--ink)}.editorial h1,.editorial h2{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.01em}.editorial h1{font-size:clamp(2.1rem,3.4vw,3rem);max-width:20ch;margin-bottom:1.4rem}.editorial h2{font-size:1.875rem;margin:2.6rem 0 1.2rem}.editorial h3{font-size:1.12rem;line-height:1.4}.editorial p{margin-bottom:1.2rem}.editorial strong{font-weight:650}.editorial sup{line-height:0}.editorial sup a{font-size:.8rem;padding:.15rem}.editorial button,.editorial textarea{font:inherit}.editorial button{border:1px solid var(--gold);padding:.75rem 1.2rem;min-height:48px;cursor:pointer;background:var(--gold);color:#1a1408;border-radius:2px}.editorial button.secondary{background:transparent;color:var(--txt)}.editorial button:hover{background:var(--gold-br);border-color:var(--gold-br);color:#1a1408}.editorial button.secondary:hover{background:rgba(201,169,110,.12);color:var(--txt)}.editorial [hidden]{display:none!important}.editorial .skip{position:absolute;left:1rem;top:-8rem;background:var(--white);padding:1rem;z-index:10}.editorial .skip:focus{top:1rem}.editorial .review-band{padding:.6rem 1.2rem;background:var(--ink);color:var(--white);font-size:.8rem;text-align:center}.editorial .review-band a{color:inherit}.editorial .site-header{max-width:1320px;margin:auto;padding:1.5rem 5%;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-bottom:1px solid var(--line)}.editorial .brand{font-family:var(--serif);font-size:1.6rem;letter-spacing:.14em;text-decoration:none}.editorial .site-header nav{font-size:.9rem;display:flex;gap:1.5rem}.editorial .site-header nav a{padding:.35rem 0}.editorial .eyebrow{font-size:.78rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--bronze);margin-bottom:1rem}.editorial .article-header{max-width:1160px;margin:auto;padding:4.5rem 5% 3rem}.editorial .lede{font-family:var(--sans);font-size:1.1875rem;line-height:1.65;max-width:58ch}.editorial .byline{font-size:.85rem;color:var(--muted);margin-top:1.8rem}.editorial .article-layout{display:grid;grid-template-columns:minmax(0,1fr) 210px;column-gap:80px;max-width:1160px;margin:auto;padding:0 5% 5rem}.editorial .body-copy{min-width:0;max-width:70ch}.editorial .article-sidebar{font-size:.85rem;padding-top:2.7rem}.editorial .article-sidebar p{border-top:1px solid var(--line);padding-top:1rem}.editorial .article-sidebar a{display:inline-block;padding:.4rem 0}.editorial .section-number{display:block;color:var(--bronze);font-size:.8rem;font-family:var(--sans);font-weight:600;letter-spacing:.15em;margin-bottom:.75rem}.editorial .job{border-left:3px solid var(--bronze);padding:.5rem 0 .5rem 1.2rem;font-size:1rem;margin-bottom:2.2rem}.editorial .job p{margin:0}.editorial .wide-figure{margin:2.5rem 0;padding:1.5rem;background:var(--tint);border:1px solid var(--line);border-top:3px solid var(--gold);break-inside:avoid}.editorial .wide-figure h2{font-size:1.7rem;margin:.3rem 0 1.4rem}.editorial .wide-figure figcaption{font-size:.88rem;line-height:1.55;margin-top:1.25rem;color:var(--muted)}.editorial .figure-grid{display:grid;gap:1.4rem}.editorial .figure-grid>section{min-width:0}.editorial .figure-grid h3{font-size:1rem;margin:0 0 .7rem}.editorial .figure-grid p,.editorial .figure-grid dd,.editorial .figure-grid dt{font-size:.92rem;line-height:1.55}.editorial .figure-grid p:last-child{margin-bottom:0}.editorial .routes{grid-template-columns:repeat(3,minmax(0,1fr))}.editorial .routes dl{margin:0}.editorial .routes dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;margin-top:1rem}.editorial .routes dd{margin:.2rem 0 0}.editorial .handoff{grid-template-columns:repeat(2,minmax(0,1fr))}.editorial .handoff section{border-top:1px solid var(--line);padding-top:1rem}.editorial .matrix{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem}.editorial .matrix section{border-top:1px solid var(--line);padding:1rem 0}.editorial .matrix p{margin:0}.editorial .flow{list-style:none;padding:0;counter-reset:step;display:block}.editorial .flow li{display:grid;grid-template-columns:125px minmax(0,1fr);gap:1rem;padding:1rem 0;border-top:1px solid var(--line);counter-increment:step}.editorial .flow h3:before{content:counter(step,decimal-leading-zero) ' · ';color:var(--bronze)}.editorial .flow p{margin:0}.editorial .positioning section{border-left:2px solid var(--bronze);padding:.6rem 1.2rem}.editorial .positioning .sub{color:var(--muted);font-style:italic}.editorial .contract dl{margin:0}.editorial .contract .row{display:grid;grid-template-columns:140px minmax(0,1fr);gap:1.2rem;border-top:1px solid var(--line);padding:.9rem 0;font-size:.94rem}.editorial .contract dt{font-weight:650}.editorial .contract dd{margin:0;line-height:1.5}.editorial .worksheet{margin:3rem 0;padding:1.7rem;background:var(--white);border:1px solid var(--line);border-top:3px solid var(--bronze)}.editorial .worksheet h2{margin:.2rem 0 1rem}.editorial .worksheet-intro,.editorial .local-note{font-size:.9rem}.editorial .local-note{color:var(--muted)}.editorial .field{margin:1.4rem 0}.editorial label{font-weight:650;display:block;line-height:1.4;margin-bottom:.4rem;font-size:1rem}.editorial .hint{display:block;color:var(--muted);font-size:.84rem;line-height:1.5;margin-bottom:.5rem}.editorial textarea{width:100%;display:block;min-height:108px;resize:vertical;border:1px solid var(--field-line);background:var(--white);color:var(--body);padding:.75rem;font-size:1rem;line-height:1.5;border-radius:2px}.editorial .actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.5rem}.editorial .status{font-size:.85rem;margin:1rem 0 0;min-height:1.5em}.editorial .print-answer{display:none}.editorial .sources,.editorial .interest{border-top:1px solid var(--line);margin-top:3rem;padding-top:1.5rem}.editorial .sources h2,.editorial .interest h2{font-size:1.5rem;margin:0 0 1rem}.editorial .sources ol{padding-left:1.4rem}.editorial .sources li{font-size:.86rem;margin-bottom:1rem;overflow-wrap:anywhere}.editorial .source-limit{display:block;color:var(--muted)}.editorial .interest p,.editorial .education{font-size:.85rem;line-height:1.6}.editorial .related{display:block;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--line);text-decoration:none}.editorial .related small{display:block;color:var(--bronze);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.editorial .related strong{color:var(--txt);font-family:var(--serif);font-size:1.6rem;font-weight:400;display:block;margin:.5rem 0}.editorial .related span{font-size:.9rem}.editorial .site-footer{border-top:1px solid var(--line);padding:2rem 5%;font-size:.85rem;color:var(--muted);max-width:1320px;margin:auto}.editorial .site-footer p{margin:0}.editorial .hub{max-width:1180px;margin:auto;padding:4.5rem 5%}.editorial .hub .lede{max-width:56ch}.editorial .guide-list{margin-top:3rem}.editorial .guide-link{display:grid;grid-template-columns:170px minmax(0,1fr) 40px;gap:2rem;border-top:1px solid var(--line);padding:2rem 0;text-decoration:none;align-items:start}.editorial .guide-link .kind{font-size:.8rem;line-height:1.5;color:var(--muted);padding-top:.3rem}.editorial .guide-link h2{margin:0 0 .7rem;font-size:2rem}.editorial .guide-link p{margin:0;font-size:1rem;max-width:66ch}.editorial .guide-link .arrow{font-size:1.6rem}.editorial .review-status{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line);font-size:.95rem}.editorial .review-status h2{margin-top:0}.editorial .review-status ul{padding-left:1.2rem}.editorial .review-status li{margin-bottom:.6rem}@media(max-width:1000px){.editorial .article-layout{grid-template-columns:minmax(0,1fr);max-width:850px}.editorial .article-sidebar{grid-row:1;padding:0 0 1rem;display:flex;gap:1.4rem;flex-wrap:wrap}.editorial .article-sidebar p{border:none;padding:0;margin:0}.editorial .article-sidebar .sidebar-frame{display:none}.editorial .article-header{max-width:850px}.editorial .article-header h1{max-width:22ch}.editorial .body-copy{max-width:none}}@media(max-width:650px){body.editorial{font-size:17px;line-height:1.7}.editorial .site-header{padding:1.2rem 6%;align-items:flex-start}.editorial .brand{font-size:1.22rem}.editorial .site-header nav{gap:1rem;font-size:.82rem}.editorial .review-band{font-size:.78rem}.editorial .article-header,.editorial .hub{padding:2.6rem 6% 2rem}.editorial .article-layout{padding:0 6% 3rem}.editorial .lede{font-size:1.0625rem}.editorial .article-header h1{font-size:2.1rem;line-height:1.14}.editorial h2{font-size:1.5625rem}.editorial h3{font-size:1.1rem}.editorial .wide-figure{margin:2rem 0;padding:1.1rem}.editorial .wide-figure h2{font-size:1.5rem}.editorial .routes,.editorial .handoff,.editorial .matrix{grid-template-columns:1fr}.editorial .routes section{border-top:1px solid var(--line);padding-top:1rem}.editorial .routes dt{margin-top:.6rem}.editorial .routes h3{font-size:1.2rem}.editorial .figure-grid p,.editorial .figure-grid dd,.editorial .figure-grid dt,.editorial .wide-figure figcaption{font-size:.9rem}.editorial .flow li,.editorial .contract .row{grid-template-columns:1fr;gap:.2rem}.editorial .flow h3{margin-bottom:.2rem}.editorial .positioning section{padding:.4rem 0 .4rem 1rem}.editorial .worksheet{padding:1.1rem}.editorial .worksheet h2{font-size:1.6rem}.editorial .actions{display:grid;grid-template-columns:1fr}.editorial .guide-link{grid-template-columns:minmax(0,1fr) 22px;gap:.7rem;padding:1.6rem 0}.editorial .guide-link .kind{grid-column:1/-1}.editorial .guide-link h2{font-size:1.8rem}.editorial .source-limit{margin-top:.2rem}}@media(prefers-reduced-motion:reduce){.editorial{scroll-behavior:auto}}@media print{@page{margin:16mm}.editorial{--paper:#fff;--white:#fff;--ink:#000;--body:#000;--muted:#333;--bronze:#000;--line:#777;--tint:#fff;--field-line:#777;--bg:#fff;--txt:#000;--mut:#333;--faint:#555;--gold:#000;--gold-br:#000;--panel:#fff;--panel2:#fff;color-scheme:light}.editorial.editorial-content{background:#fff;color:#000}body.editorial{font-size:11pt;background:white;color:black}.editorial .review-band,.editorial .site-header,.editorial .site-footer,.editorial .article-sidebar,.editorial .skip,.editorial .actions,.editorial .local-note,.editorial .status,.editorial .related{display:none!important}.editorial .article-header{padding:0;max-width:none}.editorial .article-header h1{font-size:26pt;max-width:none}.editorial .article-header .lede{font-size:13pt}.editorial .article-layout{display:block;max-width:none;padding:0}.editorial .body-copy{max-width:none}.editorial .wide-figure,.editorial .worksheet{background:white;border-color:#777;padding:12pt}.editorial .wide-figure{break-inside:auto}.editorial .wide-figure section,.editorial .field{break-inside:avoid}.editorial h2{font-size:18pt}.editorial a{color:black}.editorial .print-answer{display:block;white-space:pre-wrap;overflow-wrap:anywhere;min-height:45pt;border-bottom:1px solid #aaa;padding:6pt 0}.editorial textarea{display:none}.editorial .worksheet-print .article-header .eyebrow,.editorial .worksheet-print .article-header .lede,.editorial .worksheet-print .job,.editorial .worksheet-print .prose-section,.editorial .worksheet-print .wide-figure,.editorial .worksheet-print .sources,.editorial .worksheet-print .interest{display:none}.editorial .worksheet-print .worksheet{margin-top:1rem}.editorial .worksheet-print .byline{font-size:9pt}.editorial .worksheet-print .hint{font-size:9pt}}


/* ===== UNIFICATION LAYER (CTO sample, 2026-10-12): one frame for both generations =====
   Tokens stay the site's own (styles.css :root). Only roles are added. Print rules above are kept as they were. */
:root{--ins-body:18px;--ins-min:17px;--ins-meta:12.5px;--ins-measure:66ch;--ins-lh:1.72}
.ins-art,.editorial.editorial-content{font-size:var(--ins-body);line-height:var(--ins-lh)}
.ins-art h1,.editorial h1{font-family:var(--serif);font-weight:400;font-size:clamp(34px,4.2vw,46px);line-height:1.14;letter-spacing:-.01em;max-width:none}
.ins-art h2,.editorial h2{font-size:clamp(25px,3vw,30px);line-height:1.2}
.ins-art .article{max-width:calc(var(--ins-measure) + 52px)}
.editorial .article-header,.editorial .article-layout{font-size:var(--ins-body);max-width:calc(var(--ins-measure) + 10%);margin-left:auto;margin-right:auto}
.editorial .article-layout{display:block;padding:0 5% 5rem}
.editorial .body-copy{max-width:none}
.editorial .article-sidebar{display:none}
.editorial .lede{max-width:none}
.ins-art .stance{font-family:var(--sans);font-size:16px;line-height:1.6;color:var(--mut)}
.ins-art .stance b{font-family:var(--sans);font-weight:600;color:var(--gold)}
.ins-art .secs,.editorial .contents-line{font-size:15px;line-height:2;color:var(--faint)}
.editorial .contents-line{margin:0 0 2rem;padding:.7rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.editorial .contents-line span{font-size:var(--ins-meta);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-right:.8rem}
.editorial .contents-line a{white-space:nowrap}
/* figure status line, one anatomy: title, visual, interpretive caption, status */
.ins-art .figsrc,.ins-art .figstatus,.editorial .figstatus{display:block;margin-top:6px;font-family:var(--sans);font-size:15px;letter-spacing:.02em;color:var(--faint)}
.editorial .figstatus{padding:0 0 .2rem}
/* labelled example (Illustration / Practice / Method) */
.ins-art .eg,.editorial .eg{border:1px dashed var(--line);border-left:2px solid var(--gold);border-radius:8px;padding:16px 20px;margin:28px 0;background:transparent}
.ins-art .eg .t,.editorial .eg .t{font-size:var(--ins-meta);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.ins-art .eg p,.editorial .eg p{margin:6px 0}
/* line plate (guides): one engraved line, gold as the single accent */
.ins-art .plate-lite,.editorial .plate-lite{margin:34px 0;padding:6px 4px;color:var(--txt)}
.ins-art .plate-lite svg,.editorial .plate-lite svg{width:100%;height:auto;display:block}
.ins-art .tablewrap:focus-visible,.editorial .tablewrap:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media print{.editorial .contents-line{display:none}.ins-art .figsrc,.ins-art .figstatus,.editorial .figstatus{color:#444}}
/* type floors: body >= 17px; secondary reading text >= 15px; labels and meta >= 12.5px */
.ins-art .byline,.editorial .byline{font-size:16px}
.editorial .eyebrow,.ins-art .align-kicker{font-size:var(--ins-meta)}
.editorial .interest p,.editorial .education,.editorial .worksheet-intro,.editorial .local-note,.editorial .figure-grid p{font-size:16px}
.ins-art .align-note,.editorial .related{font-size:15px}
.ins-art table.evtable{font-size:15px}
.editorial .field .hint,.editorial figcaption,.editorial .wide-figure figcaption{font-size:15px}
.editorial .job p{font-size:var(--ins-body)}
.ins-art table.evtable caption{position:sticky;left:0;white-space:normal;max-width:calc(100vw - 80px)}

/* figure component: a scroll region always shows a cue; tables stack below 600px */
.ins-art .swipe-cue{display:none}
@media screen and (max-width:640px){
  .ins-art .swipe-cue{white-space:nowrap;display:block;position:sticky;left:0;margin:0 0 10px;font-family:var(--sans);font-size:var(--ins-meta);letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
  .ins-art .swipe-cue::after{content:" \203A"}
  .ins-art .fig{background-image:linear-gradient(to right,var(--panel),var(--panel)),linear-gradient(to right,var(--panel),var(--panel)),linear-gradient(to right,rgba(0,0,0,.55),transparent),linear-gradient(to left,rgba(0,0,0,.55),transparent);
    background-position:left,right,left,right;background-size:28px 100%,28px 100%,16px 100%,16px 100%;background-repeat:no-repeat;background-attachment:local,local,scroll,scroll}
}
@media screen and (max-width:600px){
  .ins-art .tablewrap{overflow:visible}
  .ins-art table.evtable{display:block;min-width:0;width:100%}
  .ins-art table.evtable caption{display:block;max-width:none;position:static}
  .ins-art table.evtable thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .ins-art table.evtable tbody,.ins-art table.evtable tr{display:block}
  .ins-art table.evtable tr{border:1px solid var(--line);border-radius:8px;background:var(--panel);margin:0 0 14px;padding:14px 16px}
  .ins-art table.evtable th,.ins-art table.evtable td{display:block;border:0;padding:0;white-space:normal;background:transparent}
  .ins-art table.evtable tbody th{font-family:var(--serif);font-weight:400;font-size:20px;color:var(--txt);margin-bottom:6px}
  .ins-art table.evtable td::before{content:attr(data-label);display:block;font-size:var(--ins-meta);letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin:12px 0 2px}
}
/* strongest objection (both families) and figure title */
.editorial .objection{border:1px solid var(--line);border-left:2px solid var(--gold);border-radius:8px;background:var(--panel2);padding:16px 20px;margin:28px 0}
.editorial .objection p{margin:0;font-size:var(--ins-body)}
.ins-art .figtitle,.editorial .figtitle{font-family:var(--serif);font-weight:400;font-size:20px;line-height:1.25;color:var(--txt);margin:0 0 8px}
.ins-art .plate-lite figcaption,.editorial .plate-lite figcaption{font-size:15px;color:var(--mut);line-height:1.55;margin-top:6px}
.ins-art .secs{white-space:normal;overflow:visible}
.ins-art .secs a{white-space:normal}

/* ===== PRINT FIXES (CTO, 2026-10-12; CPMO re-sign list items 1 to 3). Everything below is inside @media print: screen is untouched. ===== */
@media print{
  /* 1. Emphasis printed pale gold on white. Reset the .ins-art tokens to ink so every accent prints dark (the .editorial pages already did this). */
  .ins-art{--gold:#000;--gold-br:#000;--txt:#000;--mut:#333;--faint:#555;--bg:#fff;--panel:#fff;--panel2:#fff}
  body{background:#fff}
  .ins-crumb{color:#555}.ins-crumb a{color:#000}
  .ins-art .rgap dt,.ins-art .iyrne .t,.ins-art .arm .t,.ins-art .vleak .t,.ins-art .seq .t,.ins-art .seq .sn{color:#000}
  .ins-art a[href^="/"]::after{color:#555}
  .ins-art svg tspan{fill:#111!important}
  /* 2. The evidence table breaks between rows, never inside one, and its header repeats on each page. */
  .ins-art .fig:has(table.evtable){break-inside:auto;page-break-inside:auto}
  .ins-art .tablewrap{overflow:visible}
  .ins-art table.evtable{break-inside:auto;page-break-inside:auto}
  .ins-art table.evtable thead{display:table-header-group}
  .ins-art table.evtable tr{break-inside:avoid;page-break-inside:avoid}
  /* 3. A plate title stays with its figure. */
  .ins-art .plate-lite,.editorial .plate-lite{break-inside:avoid;page-break-inside:avoid}
  .ins-art .figtitle,.editorial .figtitle{break-after:avoid;page-break-after:avoid}
  /* 4. A heading never ends a page (round 2, chair ruling). */
  .ins-art h2,.editorial h2,.ins-art h3,.editorial h3,.editorial .section-number{break-after:avoid;page-break-after:avoid}
  /* 5. The site hides .align-next in print; the Our interest disclosure must print (round 3, CPMO print sign). */
  .ins-art .align-next{display:block;margin:18pt 0;padding:0;border:0;background:#fff;color:#000}
  .ins-art .align-next .align-kicker{color:#000}
  .ins-art .align-next h2{break-after:avoid;page-break-after:avoid}
  .editorial .interest{break-inside:avoid;page-break-inside:avoid}
}
