/* ==========================================================================
   INN8 Industries | Technical Review
   Remington house style. NC Master Branding, navy #0e1a2b (2026-08-20).
   Null glyph: Doctrine B, U+2013. Theme locked light. No web fonts.
   ========================================================================== */

*{box-sizing:border-box}
html{color-scheme:light;-webkit-text-size-adjust:100%}

:root{
  --navy:#0e1a2b; --gold:#998062; --goldlt:#bfa77f; --charcoal:#3c3c3b;
  --steel:#7c9ac0; --ink:#0e1a2b; --ink2:#3c3c3b; --sec2:#63666b;
  --grid:#e7e6e6; --axis:#c7ccd6; --line:rgba(14,26,43,.12);
  --card:#ffffff; --plane:#f5f5f5; --subbg:#eff1f4; --totbg:#f0f1f5;
  --w1:#faf9f7; --w1row:#fdfcfb; --w1hair:#eae4dc; --w1dh:#dbd3c8;
  --stamp:#93a3bd;
  --shadow:0 1px 2px rgba(14,26,43,.06),0 6px 20px rgba(14,26,43,.06);
  --page:1280px; --gut:clamp(20px,4vw,64px);
  --body:'Segoe UI',Avenir,'Avenir Next',Tahoma,Arial,sans-serif;
  --serif:'Palatino Linotype',Palatino,'Book Antiqua',serif;
  --mono:Consolas,'SFMono-Regular',Menlo,'Liberation Mono',monospace;
  --t:180ms cubic-bezier(.2,.7,.3,1);
}

body{margin:0;background:var(--plane);color:var(--ink2);font-family:var(--body);
  font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased;
  print-color-adjust:exact;-webkit-print-color-adjust:exact}

a{color:#1c4670}
a:hover{color:var(--navy)}

:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:3px}

.skip{position:absolute;left:-9999px;top:0;z-index:60}
.skip:focus{left:10px;top:10px;background:var(--navy);color:#fff;padding:11px 18px;
  border:2px solid var(--goldlt);border-radius:8px;font-weight:700;text-decoration:none}

/* --- Context banner ------------------------------------------------------ */
.cb{background:var(--charcoal);color:#fff;border-bottom:2px solid var(--gold);
  print-color-adjust:exact;-webkit-print-color-adjust:exact}
.cb-in{max-width:var(--page);margin:0 auto;padding:12px var(--gut);
  display:flex;gap:18px;align-items:flex-start}
.cb p{margin:0;font-size:.8125rem;line-height:1.6;max-width:104ch}
.cb strong{font-weight:700;letter-spacing:.09em;text-transform:uppercase;font-size:.75rem}
.cb-x{margin-left:auto;flex:none;width:32px;height:32px;border-radius:20px;cursor:pointer;
  border:1px solid rgba(255,255,255,.5);background:transparent;color:#fff;
  display:flex;align-items:center;justify-content:center;transition:background var(--t)}
.cb-x:hover{background:rgba(255,255,255,.16)}

/* --- Masthead, section 14.4 ---------------------------------------------- */
.mast{background:var(--navy);border-bottom:4px solid var(--gold);
  print-color-adjust:exact;-webkit-print-color-adjust:exact}
.mast-in{max-width:var(--page);margin:0 auto;padding:28px var(--gut) 24px;
  display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.mark{height:64px;width:auto;aspect-ratio:47.42/32.72;color:#fff;flex:none}
.mast-t{border-left:1px solid rgba(153,128,98,.45);padding-left:26px;min-width:0}
.eyebrow{margin:0 0 7px;font-size:11px;letter-spacing:.27em;text-transform:uppercase;
  color:var(--goldlt);font-weight:700}
h1{margin:0;font-family:var(--body);font-weight:300;font-size:clamp(1.3rem,4.2vw,2.125rem);
  letter-spacing:.075em;text-transform:uppercase;color:#fff;line-height:1.14}
.stamp{margin:11px 0 0;font-size:10.5px;letter-spacing:.21em;text-transform:uppercase;
  color:var(--stamp)}

/* --- Contents ------------------------------------------------------------ */
.toc{max-width:var(--page);margin:0 auto;padding:0 var(--gut)}
.toc-card{background:var(--card);border:1px solid var(--line);border-radius:12px;
  box-shadow:var(--shadow);margin:26px 0 0;padding:14px 16px 10px}
.toc h2{margin:0 0 9px;font-family:var(--body);font-size:11.5px;font-weight:700;
  letter-spacing:.07em;text-transform:uppercase;color:var(--sec2)}
.toc ol{list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(248px,1fr));gap:1px 20px}
.toc a{display:flex;gap:11px;align-items:baseline;padding:6px 7px;color:var(--ink);
  text-decoration:none;border-radius:7px;transition:background var(--t)}
.toc a:hover{background:#f8f6f3;text-decoration:underline}
.toc a[aria-current]{background:rgba(153,128,98,.16);box-shadow:inset 3px 0 0 var(--gold)}
.toc a[aria-current] .lbl{font-weight:700}
.toc .ord{font-family:var(--mono);font-size:11px;font-weight:700;color:var(--ink);flex:none}
.toc .lbl{font-size:.9375rem}
.tools{display:flex;justify-content:flex-end;padding:10px 0 0}
.allbtn{font-family:var(--body);font-size:11px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--ink);background:var(--card);cursor:pointer;
  border:1px solid var(--gold);border-radius:20px;padding:7px 16px;transition:background var(--t)}
.allbtn:hover{background:rgba(153,128,98,.12)}

/* --- Sections, banner per 14.9, anchoring per 14.10 ---------------------- */
main{max-width:var(--page);margin:0 auto;padding:18px var(--gut) 0}
details.sec{margin:14px 0}
summary.banner{display:grid;grid-template-columns:64px 1fr 132px 34px;align-items:stretch;
  min-height:82px;background:var(--card);border:1px solid var(--line);border-radius:14px;
  box-shadow:0 1px 3px rgba(14,26,43,.06);overflow:hidden;color:var(--navy);cursor:pointer;
  user-select:none;position:sticky;top:0;z-index:5;list-style:none;gap:0;
  transition:box-shadow var(--t)}
summary.banner::-webkit-details-marker{display:none}
summary.banner::marker{content:''}
summary.banner:hover{box-shadow:0 6px 18px rgba(14,26,43,.12)}
details[open]>summary.banner{border-radius:14px 14px 0 0}
.bnum{background:var(--navy);color:var(--goldlt);font-family:var(--serif);font-size:26px;
  font-weight:700;font-variant-numeric:tabular-nums;display:flex;align-items:center;
  justify-content:center;print-color-adjust:exact;-webkit-print-color-adjust:exact}
.bmid{padding:14px 18px;display:flex;flex-direction:column;justify-content:center;
  gap:5px;min-width:0}
.btitle{margin:0;font-family:var(--body);font-size:15px;font-weight:700;text-transform:uppercase;
  letter-spacing:.07em;color:var(--navy);line-height:1.25}
.bsub{font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.05em;
  color:var(--sec2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bmeta{border-left:1px solid var(--line);
  background:linear-gradient(180deg,rgba(153,128,98,.05),transparent);
  display:flex;flex-direction:column;align-items:flex-end;justify-content:center;
  padding:10px 15px;text-align:right}
.bval{font-family:var(--serif);font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;
  color:var(--navy);white-space:nowrap;line-height:1.15}
.blab{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;
  color:var(--sec2);white-space:nowrap;margin-top:3px}
.chev{display:flex;align-items:center;justify-content:center}
.chev span{width:20px;height:20px;border-radius:20px;background:rgba(153,128,98,.16);
  display:flex;align-items:center;justify-content:center;color:var(--navy);
  transition:transform var(--t),background var(--t)}
.chev span:hover{background:rgba(153,128,98,.34)}
details[open] .chev span{transform:rotate(90deg);background:rgba(153,128,98,.3)}

.pane{background:var(--card);border:1px solid var(--line);border-top:0;
  border-radius:0 0 14px 14px;padding:20px clamp(15px,2.4vw,26px) 26px}
.pane>*:first-child{margin-top:0}
.pane p{max-width:68ch;margin:0 0 14px}
.pane h3{font-family:var(--body);font-size:16.5px;line-height:1.3;font-weight:700;
  color:var(--ink);margin:26px 0 11px;border-left:4px solid var(--gold);padding-left:11px}
.pane h4{font-family:var(--body);font-size:11.5px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--sec2);margin:20px 0 8px}
.pane ul{max-width:74ch;margin:0 0 16px;padding-left:20px}
.pane li{margin:0 0 6px}

/* --- Stat tiles ---------------------------------------------------------- */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(186px,1fr));
  gap:12px;margin:0 0 22px}
.stat{background:var(--w1);border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.stat .v{font-family:var(--serif);font-size:26px;font-weight:700;color:var(--navy);
  font-variant-numeric:tabular-nums;line-height:1.1}
.stat .k{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;
  color:var(--sec2);margin-top:6px}

/* --- Fact list, Consolas ordinals ---------------------------------------- */
ol.facts{list-style:none;counter-reset:f;margin:0 0 20px;padding:0}
ol.facts li{counter-increment:f;position:relative;padding:7px 0 7px 42px;
  border-bottom:1px solid var(--grid);max-width:96ch}
ol.facts li:last-child{border-bottom:0}
ol.facts li::before{content:counter(f,decimal-leading-zero);position:absolute;left:0;top:11px;
  font-family:var(--mono);font-size:11px;font-weight:700;color:var(--ink)}

/* --- Tables, 12.6 and 14.6 ----------------------------------------------- */
.tw{overflow-x:auto;margin:0 0 18px;border:1px solid var(--line);border-radius:12px;
  background:var(--card)}
table{table-layout:auto;width:100%;border-collapse:collapse;font-size:.875rem}
th,td{overflow-wrap:normal;word-break:normal;hyphens:none;padding:9px 14px;
  text-align:left;vertical-align:top;border-bottom:1px solid var(--grid)}
th{white-space:nowrap}
tbody th{font-weight:700;color:var(--ink);background:transparent}
td.id{white-space:nowrap;font-weight:700;color:var(--ink)}
td.prose{width:100%}
thead th{background:var(--subbg);color:var(--sec2);font-size:11px;font-weight:700;
  letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--axis)}
thead th.num,tbody td.num,tbody th.num,tfoot td.num{text-align:right}
td.num,th.num{font-variant-numeric:tabular-nums}
tbody tr:nth-child(even){background:var(--w1row)}
tbody tr:last-child th,tbody tr:last-child td{border-bottom:0}
tfoot td,tfoot th{background:var(--totbg);font-weight:700;border-top:2px solid var(--axis);
  border-bottom:0}
/* A code span and a URL have no space to break at, which is the one case rule
   14.6 keeps `anywhere` for. It is set on the span, never on a table cell. */
.u{font-family:var(--mono);font-size:.8125rem;color:var(--ink2);overflow-wrap:anywhere}
.src a{overflow-wrap:anywhere}
thead th[tabindex]{cursor:pointer}
thead th[tabindex]:hover{background:#e6e9ee}
.sortmark{display:inline-block;width:0;height:0;margin-left:7px;vertical-align:middle;
  border-left:4px solid transparent;border-right:4px solid transparent;
  border-top:5px solid var(--axis)}
thead th[aria-sort=ascending] .sortmark{border-top:0;border-bottom:5px solid var(--gold)}
thead th[aria-sort=descending] .sortmark{border-top:5px solid var(--gold);border-bottom:0}

/* --- Source stamp, notes, badges ----------------------------------------- */
.src{margin:0 0 22px;padding:10px 13px;background:var(--w1);border:1px solid var(--w1hair);
  border-radius:10px;font-size:.8125rem;line-height:1.6;color:var(--sec2);max-width:104ch}
.src b{color:var(--ink);font-weight:700;text-transform:uppercase;font-size:10px;
  letter-spacing:.11em;margin-right:8px}
.note{border-left:4px solid var(--steel);background:var(--subbg);padding:13px 15px;
  border-radius:0 10px 10px 0;margin:0 0 18px;max-width:96ch}
.note p{margin:0 0 9px;max-width:none}
.note p:last-child{margin:0}
.badge{display:inline-block;border-radius:20px;font-size:11px;font-weight:700;padding:2px 11px;
  border:1px solid var(--gold);color:var(--ink);background:rgba(153,128,98,.16);
  letter-spacing:.04em;white-space:nowrap}

/* --- Footer -------------------------------------------------------------- */
footer{background:var(--navy);color:#fff;margin-top:38px;border-top:4px solid var(--gold);
  print-color-adjust:exact;-webkit-print-color-adjust:exact}
.foot-in{max-width:var(--page);margin:0 auto;padding:26px var(--gut) 32px}
footer p{margin:0 0 10px;font-size:.8125rem;line-height:1.65;max-width:96ch;color:#dfe4ec}
footer p:last-child{margin:0}
footer .fk{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--goldlt);margin:0 0 10px}

/* --- Responsive ---------------------------------------------------------- */
@media (max-width:860px){
  summary.banner{grid-template-columns:52px 1fr 32px}
  .bmeta{display:none}
  .bsub{white-space:normal;overflow:visible;text-overflow:clip}
  .bnum{font-size:21px}
  .mast-t{border-left:0;padding-left:0}
  .mast-in{gap:18px}
}
@media (max-width:520px){
  .cb-in{flex-wrap:wrap}
  .toc ol{grid-template-columns:1fr}
}

/* --- Motion -------------------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  *{transition:none !important;animation:none !important;scroll-behavior:auto !important}
}

/* --- Print, 14.5 --------------------------------------------------------- */
@media print{
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body{background:#fff}
  .cb,.skip,.toc,.tools,.chev{display:none}
  summary.banner{position:static;box-shadow:none;break-inside:avoid;border-radius:14px 14px 0 0}
  .tw{overflow:visible}
  .pane{border-radius:0 0 14px 14px}
  details.sec{break-inside:auto;margin:10px 0}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:9px;color:#3c3c3b}
}
