/* Inspection Kit: the shared editorial identity. Product imports own their UI. */
@import url('/assets/inspection-home.css?v=b764fd4eeda7');

:root {
  --blue: #0047ff; --paper: #f3f0df; --orange: #ff713b;
  --ink: #06152b; --ink-2: #40506a; --ink-3: #546179;
  --bg: #f3f0df; --bg-2: #eae7d8; --surface: #fffdf5; --line: #b8bbba;
  --navy-950: #06152b; --navy-900: #06152b; --slate-800: #243447;
  --slate-600: #40506a; --slate-500: #546179;
  --blue-800: #06359c; --blue-700: #003acb; --blue-600: #0047ff;
  --blue-500: #0047ff; --blue-400: #7fabff; --blue-100: #e5ebff; --blue-50: #f0f3ff;
  --ok: #003acb; --warn: #8a4a12; --radius: 0; --shadow: none;
  --display: Impact, 'Arial Narrow', 'Source Sans 3', sans-serif;
  --body: var(--font);
}
body { background: var(--paper); font-size: 17px; line-height: 1.55; }
.wrap { width: min(1280px, 92%); }
a { text-underline-offset: 4px; }
:focus-visible { outline: 3px solid var(--orange); outline-offset: 4px; border-radius: 0; }
h1, h2, h3 { font-family: var(--display); font-weight: 400; letter-spacing: -.015em; }
h2 { font-size: clamp(30px, 3.5vw, 46px); line-height: 1.05; }
h3 { font-size: 27px; line-height: 1.15; }
h4, th, legend, .rc-summary h2, .rc-group h3 { font-family: var(--font); font-weight: 700; }
.eyebrow { color: var(--blue); font: 11px/1.5 var(--mono); letter-spacing: .09em; }
.section-lead { max-width: 80ch; font-size: 18px; color: var(--ink-2); }
.gray, .alt, .clearance-overview, .decision-map { background: var(--paper); }
main > section:not(.hero) { border-bottom: 1px solid #06152b18; }

/* The same folder and wordmark appear on every page. */
.nav { background: var(--blue); border-bottom: 1px solid #ffffff55; box-shadow: none; position: relative; }
.nav .wrap { min-height: 100px; gap: 30px; }
.brand, .brand:hover { color: var(--paper); gap: 11px; flex-shrink: 0; }
.brand-mark, .foot-bottom .brand-mark { width: 53px; height: 53px; background: none; border-radius: 0; }
.brand-name { font: 40px/.95 var(--display); letter-spacing: -.035em; }
.brand-name > span { color: transparent; -webkit-text-stroke: 1px var(--paper); }
.brand-descriptor { color: var(--paper); font: 7px/1.4 var(--mono); letter-spacing: .02em; margin-top: 9px; }
.nav nav, .nav.has-menu nav { margin-left: auto; gap: 16px; }
.nav nav a, .nav-group summary { color: var(--paper); font-size: 15px; }
.nav nav a:hover, .nav nav a[aria-current='page'], .nav-group[open] summary { color: var(--paper); border-bottom-color: var(--paper); }
.nav-group summary:hover { text-decoration: underline; text-underline-offset: 5px; }
.nav-group-links { background: var(--paper); border: 1px solid var(--ink); border-top: 4px solid var(--orange); box-shadow: 5px 5px 0 var(--ink); z-index: 20; }
.nav .nav-group-links a { color: var(--ink); border: 0; }
.nav .nav-group-links a:hover, .nav .nav-group-links a[aria-current='page'] { color: var(--blue); background: #0047ff0b; }
.nav-cta { margin-left: 0; }
.nav-cta .btn { border: 1px solid #ffffff88; background: transparent; box-shadow: none; color: var(--paper); font: 11px var(--mono); text-transform: uppercase; padding: 14px; }
.nav-cta .btn:hover { background: var(--paper); color: var(--ink); }

/* Blue cover pages and paper reading surfaces. */
.hero, .reporting-hero { background: var(--blue); color: var(--paper); border: 0; padding: 50px 0 48px; }
.hero h1 { font: 400 clamp(42px, 5.4vw, 76px)/1.03 var(--display); text-transform: uppercase; letter-spacing: -.02em; max-width: 25ch; }
.hero .eyebrow { color: #d1dfff; }
.hero .eyebrow a, .hero .lead a, .hero-sub a { color: inherit; }
.hero p.lead, .hero-sub { color: var(--paper); max-width: 76ch; }
.hero p.lead b, .hero a.hero-link { color: var(--paper); }
.hero .btn-primary { background: var(--paper); color: var(--ink); border-color: var(--paper); box-shadow: 4px 4px 0 var(--ink); }
.hero .btn-primary:hover { background: var(--orange); border-color: var(--orange); }
.hero .btn-ghost { color: var(--paper); background: transparent; border-color: #ffffff88; }
.hero .btn-ghost:hover { background: #ffffff18; color: var(--paper); }
.hero .clearance-hero-note { background: var(--paper); color: var(--ink); border-left: 5px solid var(--orange); border-radius: 0; }
.hero .clearance-hero-note b { color: var(--ink); }
.hero .clearance-hero-note a { color: var(--blue); }
.btn { border-radius: 0; font-size: 14px; }
.btn-primary { color: var(--paper); background: var(--blue); border-color: var(--blue); box-shadow: 3px 3px 0 var(--ink); }
.btn-primary:hover { background: var(--blue-700); color: var(--paper); }
.btn-light, .btn-ghost { background: transparent; color: var(--ink); border-color: var(--ink); }
.btn-light:hover, .btn-ghost:hover { background: var(--blue-100); color: var(--ink); }
.hero .stats { background: #ffffff66; border: 1px solid #ffffff66; border-radius: 0; }
.hero .stat { background: var(--paper); color: var(--ink); padding: 22px; }
.hero .stat b { color: var(--blue); font-family: var(--display); font-weight: 400; }
.hero .stat span { color: var(--ink-2); }
.hero .stats-note, .hero .stats-note b { color: var(--paper); }
.hero .stats-note { background: transparent; border-left: 3px solid var(--orange); border-radius: 0; }
.hero .reporting-subnav a { background: transparent; color: var(--paper); border-color: #ffffff80; border-radius: 0; }
.hero .reporting-subnav a:hover { background: var(--paper); color: var(--ink); }
.hero .page-meta { background: #ffffff15; color: var(--paper); border-left: 3px solid var(--orange); }
.hero .page-meta a { color: var(--paper); }

/* Reusable reference cards: ruled paper and clipped folder tabs. */
.tile, .card, .tool, .report-card, .reporting-tier, .reporting-detail-grid article,
.journey-detail-grid article, .owner-grid article, .gate-grid li, .branch,
.pathway-branches article, .outcome-branch-map article, .lane, .rc-q,
.rc-summary, .page-toc, .table-responsive, .reporting-choice-card,
.source-year, .source-letters a, .source-issues a { border-radius: 0; box-shadow: none; }
.tile, .card, .report-card, .reporting-tier, .reporting-detail-grid article,
.journey-detail-grid article, .owner-grid article, .gate-grid li, .branch,
.pathway-branches article, .outcome-branch-map article, .rc-q, .rc-summary { background: var(--surface); border-color: var(--line); }
.tile { border-top: 3px solid var(--blue); padding: 25px; }
.tile .icon { border-radius: 0; background: var(--blue); color: var(--paper); }
.tile-link:hover, .card:hover { border-color: var(--blue); box-shadow: 4px 4px 0 #06152b25; }
.clearance-map-card { border: 1px solid var(--line); border-top: 3px solid var(--blue); background: var(--surface); padding: 24px; border-radius: 0; }
.clearance-map-card h3 { font: 400 29px/1.12 var(--display); }
.clearance-overview h2 { font: 400 clamp(30px, 3.5vw, 46px)/1.05 var(--display); }
.lane-heading, .lane-industry .lane-heading { background: var(--ink); }
.lane-heading h3 { font-weight: 400; }
.lane-heading .lane-kicker { color: #cbd9ff; font-family: var(--mono); font-size: 10px; }
.step-num, .rc-num { background: var(--blue); color: var(--paper); border-radius: 0; }
.lane-bridge, .reporting-callout, .clearance-callout, .owner-note, .tier-note,
.branch-return, .journey-loop, .interim-branch, .callout, .foci-aside { border-radius: 0; }
.interim-branch { background: var(--blue-50); border-color: var(--blue); }
.interim-branch b, .branch-answer { color: var(--blue-700); }
.outcome-forward { background: var(--blue-100); color: var(--blue-800); }
.rc-ok { border-left-color: var(--blue); }
.rc-summary { top: 24px; max-height: calc(100vh - 48px); border-top: 4px solid var(--blue); }
.rc-summary h2 { font-size: 20px; letter-spacing: 0; }
.rc-group h3 { font-size: 14px; letter-spacing: .03em; }
.rc-options label, .rc-outcome, .outcome-route, .toc-events a, .chip, .badge { border-radius: 0; }
.rc-options label { background: var(--paper); border-color: var(--line); }
.rc-options label:has(input:checked) { background: var(--blue-100); border-color: var(--blue); }
.page-toc { background: var(--surface); border-left: 4px solid var(--blue); }
.toc-events a { background: var(--paper); color: var(--blue); border-color: var(--line); }
.report-event-table thead th, .tier-table thead th, .foci-table thead th { background: var(--ink); color: var(--paper); }
.report-event-table tbody th, .tier-table tbody th, .foci-table tbody th { background: var(--paper); }
.stack-table .report-event-table td { background: var(--surface); }
.decision-question, .decision-question.nested { background: var(--paper); border-color: #d6d1bb; color: var(--ink); border-radius: 0; }
.decision-question > span { background: var(--blue); color: var(--paper); border-radius: 0; }
.decision-branches > article > .branch-answer { color: var(--paper); }
.reporting-choice-card { background: var(--paper); border: 1px solid var(--paper); border-top: 4px solid var(--orange); }
.reporting-choice-card b { font: 400 28px/1.12 var(--display); }
.reporting-choice-card:hover { transform: none; border-color: var(--ink); }
.guidance-library .guidance-hero { padding-block: 50px 40px; }
.guidance-card h3 { font: 400 30px/1.15 var(--display); }
.guidance-card { padding: 26px 28px; }
.source-year > summary { background: var(--paper); border-radius: 0; color: var(--ink); }
.source-year[open] > summary { background: var(--blue); color: var(--paper); }
.source-year[open] .source-count { color: var(--paper); }
.source-letters a, .source-issues a { background: var(--surface); }
.search { border-radius: 0; box-shadow: 4px 4px 0 var(--ink); border: 1px solid var(--ink); }
.search .btn-primary { box-shadow: none; }
.search input:focus-visible, .search select:focus-visible { outline: 3px solid var(--orange); outline-offset: -3px; }
.band { background: var(--ink); }
.band h2, .band h3 { color: var(--paper); font-weight: 400; }

/* Footer keeps the source and correction links easy to find. */
footer { background: var(--ink); color: var(--paper); border: 0; padding-top: 52px; }
footer h4 { font: 400 24px/1.1 var(--display); color: var(--paper); text-transform: uppercase; letter-spacing: .02em; }
footer a, footer p, footer .foot-cols li, .foot-bottom p { color: #d4d9e3; }
footer a:hover { color: var(--paper); }
.foot-bottom { border-color: #ffffff40; padding-top: 32px; }
.foot-bottom .brand-name { font-size: 38px; }
.foot-bottom .brand-name > span { color: var(--paper); -webkit-text-stroke: 0; }
.foot-bottom .brand-descriptor { color: #d4d9e3; }

/* Homepage components override only their former generic layout rules. */
:where(.inspection-home) .mono { font: 11px/1.5 var(--mono); letter-spacing: .075em; }
.inspection-home main h1, .inspection-home main h2, .inspection-home main h3 { color: inherit; }
.inspection-home .hero { text-transform: none; }
.inspection-home .hero h1 { max-width: none; font-weight: 400; line-height: .86; }
.inspection-home .hero .hero-copy h1 .bring { color: var(--paper); }
.inspection-home .hero .field-index a, .inspection-home .hero-foot a { color: var(--paper); }
.inspection-home .hero .kit-button { color: var(--ink); }
.inspection-home .task-cards { list-style: none; margin: 0; padding: 0; display: block; }
.inspection-home .task-card { background: transparent; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; box-shadow: none; min-height: 0; }
.inspection-home .task-card:hover { transform: none; box-shadow: none; }
.inspection-home .task-card > .drawer-number { display: block; font: 45px/1 var(--display); color: var(--blue); grid-column: auto; }
.inspection-home .task-card > .drawer-arrow { font: 40px var(--body); color: var(--blue); grid-column: auto; }
.inspection-home .task-card > div { min-width: 0; }
.inspection-home .task-card h3 { margin: 8px 0 12px; }
.inspection-home .research a:not(.solid-button) { color: var(--paper); }
.inspection-home .research .solid-button { color: var(--ink); }
.inspection-home .hero-foot { text-transform: uppercase; }
.inspection-home .folder { color: var(--paper); }
.inspection-home .project-link { margin: 42px 0 0; font-size: 15px; }
.inspection-home .about { position: relative; }
.inspection-home .about .section-label { color: var(--ink); }
.inspection-home .about a, .inspection-home .about p { color: var(--ink); }

@media(min-width:900px) {
  .nav.has-menu .nav-toggle { display: none; }
  .nav nav, .nav.has-menu nav, .nav.has-menu.menu-open nav { display: flex; }
}
@media(max-width:1100px) {
  .nav .wrap { gap: 16px; }
  .nav nav, .nav.has-menu nav { gap: 7px; }
  .nav nav a, .nav-group summary { font-size: 13px; }
  .brand-name { font-size: 36px; }
  .brand-descriptor { font-size: 6px; }
}
@media(max-width:899px) {
  .nav .wrap { min-height: 82px; flex-wrap: wrap; }
  .nav.has-menu .nav-toggle { background: transparent; color: var(--paper); border: 1px solid #ffffff88; border-radius: 0; margin-left: 8px; }
  .nav.has-menu nav { display: none; margin-left: 0; }
  .nav.has-menu.menu-open nav { display: flex; flex-direction: column; flex-basis: 100%; border-color: #ffffff55; align-items: stretch; }
  .nav-group-links { position: static; box-shadow: none; margin: 0 10px 12px; border: 0; }
  .nav.has-menu.menu-open nav a { border-bottom-color: #ffffff44; }
  .nav.has-menu.menu-open nav a[aria-current='page'] { background: #ffffff18; color: var(--paper); border-left-color: var(--orange); }
  .nav.has-menu.menu-open .nav-group-links a[aria-current='page'] { background: #0047ff12; color: var(--blue); }
  .nav .nav-group-links a { color: var(--ink); }
  .nav-cta { margin-left: auto; }
  .hero, .clearance-hero { padding-block: 36px; }
  .hero h1 { font-size: clamp(38px,7vw,60px); }
  .hero .stat { padding: 18px; }
}
@media(max-width:600px) {
  .brand-mark { width: 42px; height: 42px; }
  .brand-name { font-size: 34px; }
  .brand { gap: 8px; }
  .brand-descriptor { max-width: 240px; }
  .nav .wrap { gap: 8px; }
  .hero h1 { font-size: 41px; overflow-wrap: break-word; }
  .hero p.lead { font-size: 17px; }
  .inspection-home .task-card > .drawer-number { font-size: 36px; }
  .inspection-home .task-card > .drawer-arrow { font-size: 28px; }
  .hero .actions { gap: 15px; }
  .section-lead { font-size: 17px; }
  .guidance-card { padding: 22px; }
  .guidance-card .actions { flex-wrap: wrap; }
  .guidance-library .guidance-meta b { font-size: 21px; }
  .rc-summary { position: static; max-height: none; }
  .foot-cols { gap: 30px; }
  .foot-bottom .brand { margin-bottom: 20px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition: none !important; } }
@media print {
  body, .hero, .reporting-hero, .gray, .alt, .band { background: white !important; color: #111 !important; }
  .hero h1, .hero p.lead, .hero p.lead b, .hero .eyebrow, .hero .stats-note, .hero .stats-note b { color: #111; }
  .nav, footer, .inspection-home .field-index { display: none; }
  .btn, .tile, .card, .search { box-shadow: none; }
  .hero h1 { font: 700 26pt/1.1 var(--font); }
  h2 { font: 700 18pt/1.2 var(--font); }
  h3 { font: 700 13pt/1.2 var(--font); }
  .source-year > summary { background: white; color: #111; }
}

/* Dated operational references share the paper-and-blue field-guide identity. */
.ops-announcement { background: var(--paper); color: var(--ink); border-bottom: 1px solid var(--ink); padding: 11px 0; font-size: 14px; }
.ops-announcement a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.operational-update p, .operational-update li { max-width: 86ch; }
.operational-update p { margin-block: 14px; }
.ops-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-block: 24px; }
.ops-grid .tile { min-width: 0; padding: 26px; border: 1px solid var(--ink); }
.ops-grid h3 { margin-top: 0; }
.reporting-hero .decision-branch { background: var(--paper); border: 1px solid var(--ink); border-radius: 0; }
.reporting-hero .decision-branch .branch-answer { color: var(--ink); }
.ops-list, .ops-resources { padding-left: 24px; margin-block: 20px; }
.ops-list li, .ops-resources li, .ops-grid li { margin-bottom: 12px; line-height: 1.6; }
.operational-update a { overflow-wrap: anywhere; }
@media (max-width:700px) { .ops-grid { grid-template-columns: 1fr; } .ops-grid .tile { padding: 20px; } }
@media print { .ops-announcement { display: none; } .ops-grid { display: block; } .ops-grid .tile { break-inside: avoid; margin-bottom: 15px; } }
