:root {
  --ukcho-ink: #15324a;
  --ukcho-ink-deep: #0b263b;
  --ukcho-text: #20282e;
  --ukcho-muted: #687883;
  --ukcho-paper: #f5f4ef;
  --ukcho-surface: #ffffff;
  --ukcho-line: #c9d1d6;
  --ukcho-link: #8b3138;
  --ukcho-link-dark: #6f252c;
  --ukcho-max: 1180px;
  --ukcho-reading: 760px;
}

.ukcho-container { width: min(var(--ukcho-max), calc(100% - 48px)); margin-inline: auto; }
.ukcho-reading { width: min(var(--ukcho-reading), 100%); }
.ukcho-page-root { overflow: hidden; }
.ukcho-section { padding: clamp(46px, 6vw, 78px) 0; border-bottom: 1px solid var(--ukcho-line); }
.ukcho-section--white { background: var(--ukcho-surface); }
.ukcho-section--ink { background: var(--ukcho-ink); color: var(--ukcho-surface); border-bottom-color: rgba(255,255,255,.2); }
.ukcho-kicker {
  margin: 0 0 12px; color: var(--ukcho-muted); font-size: 11px; line-height: 1.3;
  font-weight: 680; letter-spacing: .13em; text-transform: uppercase;
}
.ukcho-section--ink .ukcho-kicker { color: #c7d1d8; }
.ukcho-title, .ukcho-section-title, .ukcho-subtitle {
  font-family: "Newsreader", Georgia, serif; color: var(--ukcho-ink); font-weight: 500; letter-spacing: -.01em;
}
.ukcho-title { max-width: 680px; margin: 0; font-size: clamp(38px, 4.2vw, 50px); line-height: 1.04; }
.ukcho-section-title { margin: 0 0 18px; font-size: clamp(29px, 3vw, 37px); line-height: 1.1; }
.ukcho-subtitle { margin: 0 0 10px; font-size: 23px; line-height: 1.2; }
.ukcho-section--ink .ukcho-section-title, .ukcho-section--ink .ukcho-subtitle { color: var(--ukcho-surface); }
.ukcho-lead { max-width: 690px; margin: 18px 0 0; color: #34434d; font-size: clamp(17px, 1.7vw, 20px); line-height: 1.58; }
.ukcho-copy { max-width: 760px; color: #3c4850; }
.ukcho-copy p { margin: 0 0 16px; }
.ukcho-source-note { margin-top: 22px; color: var(--ukcho-muted); font-size: 12px; line-height: 1.55; }
.ukcho-source-note a, .ukcho-figcaption a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.ukcho-link { color: var(--ukcho-link); font-weight: 620; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.ukcho-link:hover, .ukcho-link:focus-visible { color: var(--ukcho-link-dark); text-decoration-thickness: 2px; }
.ukcho-link-row { display: flex; flex-wrap: wrap; gap: 14px 28px; margin-top: 25px; }

.ukcho-hero { padding: clamp(42px, 5vw, 68px) 0 28px; background: var(--ukcho-paper); }
.ukcho-hero-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(320px, .88fr); gap: clamp(34px, 5vw, 70px); align-items: center; }
.ukcho-hero-figure { margin: 0; border-left: 1px solid var(--ukcho-line); padding-left: 24px; }
.ukcho-hero-figure img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; filter: saturate(.78) contrast(.98); }
.ukcho-figcaption { margin-top: 10px; color: var(--ukcho-muted); font-size: 11px; line-height: 1.45; }
.ukcho-status {
  display: grid; grid-template-columns: auto 1fr auto; gap: 24px; align-items: center;
  margin-top: 28px; padding: 17px 10px; border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line);
  color: #46555f; font-size: 13px;
}
.ukcho-status strong { color: var(--ukcho-ink); }

.ukcho-facts { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 24px; border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-fact { min-height: 108px; padding: 22px 20px; border-right: 1px solid var(--ukcho-line); }
.ukcho-fact:last-child { border-right: 0; }
.ukcho-fact strong { display: block; color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 29px; line-height: 1.05; font-weight: 500; }
.ukcho-fact span { display: block; margin-top: 8px; color: var(--ukcho-muted); font-size: 12px; line-height: 1.4; }

.ukcho-route-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 26px; border-top: 1px solid var(--ukcho-line); }
.ukcho-route { min-height: 150px; padding: 22px 22px 20px 0; border-right: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-route + .ukcho-route { padding-left: 22px; }
.ukcho-route:last-child { border-right: 0; }
.ukcho-route a { color: var(--ukcho-link); font-family: "Newsreader", Georgia, serif; font-size: 21px; line-height: 1.2; font-weight: 520; text-decoration: none; }
.ukcho-route p { margin: 10px 0 0; color: var(--ukcho-muted); font-size: 13px; line-height: 1.55; }

.ukcho-two-col { display: grid; grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr); gap: clamp(36px, 6vw, 80px); align-items: start; }
.ukcho-pathway-summary, .ukcho-knowledge-summary { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 68px); max-width: none; margin-top: 18px; }
.ukcho-pathway-summary p, .ukcho-knowledge-summary p { margin: 0; color: #3c4850; }
.ukcho-stage-list { display: grid; grid-template-columns: repeat(3, 1fr); margin: 30px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-stage { display: grid; grid-template-columns: 48px 1fr; gap: 14px; min-height: 142px; padding: 22px 22px 22px 0; border-right: 1px solid var(--ukcho-line); }
.ukcho-stage + .ukcho-stage { padding-left: 22px; }
.ukcho-stage:last-child { border-right: 0; }
.ukcho-stage-num { color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 25px; line-height: 1; }
.ukcho-stage strong { display: block; color: var(--ukcho-ink); font-size: 14px; }
.ukcho-stage p { margin: 4px 0 0; color: var(--ukcho-muted); font-size: 13px; }
.ukcho-pathway-footer { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 10px 28px; margin-top: 18px; }
.ukcho-pathway-footer span { color: var(--ukcho-muted); font-size: 12px; }

.ukcho-skill-list { margin: 26px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--ukcho-line); }
.ukcho-skill-list li { display: grid; grid-template-columns: minmax(190px, .72fr) 1.28fr; gap: 28px; padding: 16px 0; border-bottom: 1px solid var(--ukcho-line); }
.ukcho-skill-list strong { color: var(--ukcho-link); font-family: "Newsreader", Georgia, serif; font-size: 19px; font-weight: 520; }
.ukcho-skill-list span { color: var(--ukcho-muted); font-size: 13px; }
.ukcho-academic-figure { margin: 30px 0 0; display: grid; grid-template-columns: minmax(300px, .82fr) minmax(0, 1.18fr); gap: 0; align-items: stretch; background: var(--ukcho-ink-deep); }
.ukcho-academic-figure img { width: 100%; height: 100%; min-height: 330px; object-fit: cover; filter: saturate(.82); }
.ukcho-academic-note { display: flex; flex-direction: column; justify-content: center; padding: clamp(28px, 4vw, 48px); border: 0; background: var(--ukcho-ink-deep); }
.ukcho-academic-note .ukcho-kicker { color: #aebdc6; }
.ukcho-academic-note .ukcho-subtitle { color: #fff; }
.ukcho-academic-note > p:not(.ukcho-kicker):not(.ukcho-source-note) { margin: 0; color: #d9e1e6; font-size: 14px; }
.ukcho-diagnostic-list { display: grid; grid-template-columns: repeat(3, 1fr); margin: 22px 0 0; border-top: 1px solid rgba(255,255,255,.22); }
.ukcho-diagnostic-list > div { padding: 15px 14px 0 0; border-right: 1px solid rgba(255,255,255,.22); }
.ukcho-diagnostic-list > div + div { padding-left: 14px; }
.ukcho-diagnostic-list > div:last-child { border-right: 0; }
.ukcho-diagnostic-list dt { color: #efc8cb; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.ukcho-diagnostic-list dd { margin: 5px 0 0; color: #bdc9d0; font-size: 11px; line-height: 1.5; }
.ukcho-academic-note .ukcho-source-note { margin: 20px 0 0; color: #aebdc6; }
.ukcho-prep-cycle { margin-top: 34px; padding-top: 26px; border-top: 1px solid var(--ukcho-line); }
.ukcho-prep-cycle ol { display: grid; grid-template-columns: repeat(4, 1fr); margin: 18px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); counter-reset: prep; }
.ukcho-prep-cycle li { padding: 20px 20px 22px; border-right: 1px solid var(--ukcho-line); counter-increment: prep; }
.ukcho-prep-cycle li:first-child { padding-left: 0; }
.ukcho-prep-cycle li:last-child { padding-right: 0; border-right: 0; }
.ukcho-prep-cycle strong { display: block; color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 18px; line-height: 1.2; font-weight: 520; }
.ukcho-prep-cycle strong::before { content: "0" counter(prep) " "; color: var(--ukcho-link); font-family: "Public Sans", sans-serif; font-size: 10px; font-weight: 700; letter-spacing: .08em; }
.ukcho-prep-cycle span { display: block; margin-top: 9px; color: var(--ukcho-muted); font-size: 12px; line-height: 1.55; }

.ukcho-resource-split { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-resource-panel { padding: 28px 34px 30px 0; }
.ukcho-resource-panel + .ukcho-resource-panel { padding-left: 34px; border-left: 1px solid var(--ukcho-line); }
.ukcho-paper-list { margin: 18px 0 0; padding: 0; list-style: none; }
.ukcho-paper-list li { display: grid; grid-template-columns: 58px 1fr; gap: 18px; padding: 12px 0; border-bottom: 1px solid var(--ukcho-line); }
.ukcho-paper-list strong { color: var(--ukcho-ink); font-variant-numeric: tabular-nums; }
.ukcho-paper-list span { color: var(--ukcho-muted); font-size: 13px; }
.ukcho-table { width: 100%; margin-top: 18px; border-collapse: collapse; font-size: 13px; }
.ukcho-table th, .ukcho-table td { padding: 10px 8px; border-bottom: 1px solid var(--ukcho-line); text-align: left; }
.ukcho-table th { color: var(--ukcho-ink); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.ukcho-table td { color: #3e4b53; font-variant-numeric: tabular-nums; }
.ukcho-table th:first-child, .ukcho-table td:first-child { padding-left: 0; }
.ukcho-table th:last-child, .ukcho-table td:last-child { padding-right: 0; }

.ukcho-paper-visuals { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 28px; }
.ukcho-paper-visuals figure { margin: 0; }
.ukcho-paper-visuals img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: top; border: 1px solid var(--ukcho-line); }

.ukcho-results-grid { display: grid; grid-template-columns: minmax(0, .92fr) minmax(320px, 1.08fr); gap: 52px; align-items: center; }
.ukcho-results-figure { margin: 0; padding: 18px; background: #fff; border: 1px solid var(--ukcho-line); }
.ukcho-results-figure img { display: block; width: 100%; }
.ukcho-distribution { padding: 24px; background: #fff; border: 1px solid var(--ukcho-line); }
.ukcho-distribution-track { display: flex; width: 100%; min-height: 54px; overflow: hidden; border: 1px solid var(--ukcho-line); }
.ukcho-distribution-segment { display: flex; flex: 0 0 var(--share); align-items: center; justify-content: center; min-width: 0; color: #fff; font-size: 12px; font-weight: 700; font-variant-numeric: tabular-nums; }
.ukcho-distribution-segment--gold { background: #9a721d; }
.ukcho-distribution-segment--silver { background: #667985; }
.ukcho-distribution-segment--bronze { background: #8f563b; }
.ukcho-distribution-segment--none { background: #dce2e5; color: var(--ukcho-ink); }
.ukcho-distribution-key { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 16px; border-top: 1px solid var(--ukcho-line); }
.ukcho-distribution-key > div { padding: 14px 14px 0 0; }
.ukcho-distribution-key strong { display: block; color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 22px; line-height: 1.1; font-weight: 520; }
.ukcho-distribution-key span { display: block; margin-top: 4px; color: #52636d; font-size: 13px; line-height: 1.45; }
.ukcho-chart-note { margin: 14px 0 0; color: #52636d; font-size: 13px; line-height: 1.55; }
.ukcho-outcomes { margin-top: 24px; border-top: 1px solid var(--ukcho-line); }
.ukcho-outcome-row { display: grid; grid-template-columns: 80px repeat(3, 1fr); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-outcome-row > * { padding: 13px 10px; border-right: 1px solid var(--ukcho-line); }
.ukcho-outcome-row > *:last-child { border-right: 0; }
.ukcho-outcome-row--head { color: var(--ukcho-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ukcho-outcome-row:not(.ukcho-outcome-row--head) { color: var(--ukcho-ink); font-variant-numeric: tabular-nums; }

.ukcho-faq-list { margin-top: 24px; border-top: 1px solid var(--ukcho-line); }
.ukcho-faq { border-bottom: 1px solid var(--ukcho-line); }
.ukcho-faq summary { position: relative; padding: 18px 48px 18px 0; color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 20px; line-height: 1.3; cursor: pointer; list-style: none; }
.ukcho-faq summary::-webkit-details-marker { display: none; }
.ukcho-faq summary::after { content: "+"; position: absolute; right: 5px; top: 17px; font-family: "Public Sans", sans-serif; font-size: 18px; font-weight: 400; }
.ukcho-faq[open] summary::after { content: "−"; }
.ukcho-faq-answer { max-width: 780px; padding: 0 0 20px; color: #42515a; font-size: 14px; }
.ukcho-faq-answer p { margin: 0 0 10px; }

.ukcho-method-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.26); }
.ukcho-method { padding: 22px 26px 8px 0; border-right: 1px solid rgba(255,255,255,.26); }
.ukcho-method + .ukcho-method { padding-left: 26px; }
.ukcho-method:last-child { border-right: 0; }
.ukcho-method strong { color: #fff; font-family: "Newsreader", Georgia, serif; font-size: 19px; font-weight: 520; }
.ukcho-method p { margin: 8px 0 0; color: #d5dde2; font-size: 13px; }

.ukcho-home-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); margin-top: 28px; border-top: 1px solid var(--ukcho-line); }
.ukcho-home-news-card { display: flex; flex-direction: column; min-width: 0; padding: 22px 24px 24px 0; border-bottom: 1px solid var(--ukcho-line); }
.ukcho-home-news-card + .ukcho-home-news-card { padding-left: 24px; border-left: 1px solid var(--ukcho-line); }
.ukcho-home-news-card time { color: #52636d; font-size: 12px; font-variant-numeric: tabular-nums; }
.ukcho-home-news-card h3 { margin: 12px 0 10px; font-family: "Newsreader", Georgia, serif; font-size: 24px; line-height: 1.18; font-weight: 520; }
.ukcho-home-news-card h3 a { color: var(--ukcho-ink); text-decoration: none; }
.ukcho-home-news-card h3 a:hover, .ukcho-home-news-card h3 a:focus-visible { color: var(--ukcho-link); }
.ukcho-home-news-card p { margin: 0; color: #52636d; font-size: 14px; line-height: 1.6; }
.ukcho-home-news-card .ukcho-link { margin-top: auto; padding-top: 16px; font-size: 13px; }
.ukcho-home-news-empty { margin: 24px 0 0; padding: 20px 0; border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); color: #52636d; }

.ukcho-cta-band { display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: center; padding: 28px 0; }
.ukcho-cta-band p { margin: 5px 0 0; color: var(--ukcho-muted); font-size: 13px; }
.ukcho-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.ukcho-button {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 17px;
  border: 1px solid var(--ukcho-ink); background: var(--ukcho-ink); color: #fff;
  font-size: 12px; font-weight: 660; text-decoration: none;
}
.ukcho-button--quiet { background: transparent; color: var(--ukcho-ink); }
.ukcho-button:hover, .ukcho-button:focus-visible { background: var(--ukcho-link); border-color: var(--ukcho-link); color: #fff; }

.ukcho-page-root a:focus-visible, .ukcho-page-root button:focus-visible, .ukcho-page-root summary:focus-visible { outline: 3px solid #d6aa2e; outline-offset: 3px; }

@media (max-width: 980px) {
  .ukcho-hero-grid, .ukcho-results-grid { grid-template-columns: 1fr; }
  .ukcho-hero-figure { padding-left: 0; border-left: 0; }
  .ukcho-hero-figure img { max-height: 430px; object-position: center 28%; }
  .ukcho-route-grid { grid-template-columns: 1fr 1fr; }
  .ukcho-route:nth-child(2) { border-right: 0; }
  .ukcho-route:nth-child(3) { padding-left: 0; }
  .ukcho-resource-split { grid-template-columns: 1fr; }
  .ukcho-stage-list { grid-template-columns: 1fr; }
  .ukcho-stage, .ukcho-stage + .ukcho-stage { min-height: 0; padding: 18px 0; border-right: 0; border-bottom: 1px solid var(--ukcho-line); }
  .ukcho-stage:last-child { border-bottom: 0; }
  .ukcho-prep-cycle ol { grid-template-columns: 1fr 1fr; }
  .ukcho-prep-cycle li:nth-child(2) { border-right: 0; }
  .ukcho-prep-cycle li:nth-child(-n+2) { border-bottom: 1px solid var(--ukcho-line); }
  .ukcho-prep-cycle li:first-child, .ukcho-prep-cycle li:last-child { padding: 20px; }
  .ukcho-resource-panel { padding-right: 0; }
  .ukcho-resource-panel + .ukcho-resource-panel { padding-left: 0; border-left: 0; border-top: 1px solid var(--ukcho-line); }
  .ukcho-home-news-grid { grid-template-columns: 1fr; }
  .ukcho-home-news-card, .ukcho-home-news-card + .ukcho-home-news-card { padding: 20px 0; border-left: 0; }
}

@media (max-width: 720px) {
  .ukcho-container { width: min(100% - 40px, var(--ukcho-max)); }
  .ukcho-title { font-size: 39px; }
  .ukcho-status { grid-template-columns: 1fr; gap: 7px; padding-inline: 0; }
  .ukcho-facts { grid-template-columns: 1fr 1fr; }
  .ukcho-fact:nth-child(2) { border-right: 0; }
  .ukcho-fact:nth-child(-n+2) { border-bottom: 1px solid var(--ukcho-line); }
  .ukcho-route-grid, .ukcho-two-col, .ukcho-pathway-summary, .ukcho-knowledge-summary, .ukcho-academic-figure, .ukcho-paper-visuals, .ukcho-method-grid { grid-template-columns: 1fr; }
  .ukcho-pathway-summary, .ukcho-knowledge-summary { gap: 14px; }
  .ukcho-academic-figure img { min-height: 0; aspect-ratio: 3 / 2; }
  .ukcho-academic-note { padding: 26px 22px; }
  .ukcho-diagnostic-list { grid-template-columns: 1fr; }
  .ukcho-diagnostic-list > div, .ukcho-diagnostic-list > div + div { padding: 12px 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
  .ukcho-diagnostic-list > div:last-child { border-bottom: 0; }
  .ukcho-prep-cycle ol { grid-template-columns: 1fr; }
  .ukcho-prep-cycle li, .ukcho-prep-cycle li:first-child, .ukcho-prep-cycle li:last-child { padding: 18px 0; border-right: 0; border-bottom: 1px solid var(--ukcho-line); }
  .ukcho-prep-cycle li:last-child { border-bottom: 0; }
  .ukcho-route { min-height: 0; padding: 18px 0 !important; border-right: 0; }
  .ukcho-skill-list li { grid-template-columns: 1fr; gap: 5px; }
  .ukcho-method, .ukcho-method + .ukcho-method { padding: 18px 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.26); }
  .ukcho-method:last-child { border-bottom: 0; }
  .ukcho-cta-band { grid-template-columns: 1fr; }
  .ukcho-actions { display: grid; grid-template-columns: 1fr; }
  .ukcho-outcome-row { grid-template-columns: 64px repeat(3, 1fr); font-size: 12px; }
  .ukcho-outcome-row > * { padding: 10px 6px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media print {
  .ukcho-actions { display: none !important; }
  .ukcho-section { break-inside: avoid; }
  body.ukcho-custom-shell { background: #fff; }
}

/* Inner pages: scholarly registry system. All selectors are scoped to prevent homepage drift. */
.ukcho-inner-root { background: var(--ukcho-paper); color: var(--ukcho-text); }
.ukcho-inner-hero { padding: clamp(44px, 6vw, 76px) 0 38px; border-bottom: 1px solid var(--ukcho-line); background: var(--ukcho-paper); }
.ukcho-inner-hero-grid { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr); gap: clamp(42px, 7vw, 92px); align-items: start; }
/* Standard inner-page heroes: keep title + evidence in the top split, then let
   the explanatory copy span the full width. This removes the dead lower-right
   quadrant created when a long left column sets the height of a short ledger. */
.ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) { column-gap: clamp(42px, 7vw, 92px); row-gap: 0; }
.ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child { display: contents; }
.ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child > .ukcho-breadcrumbs { grid-column: 1; grid-row: 1; }
.ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child > .ukcho-kicker { grid-column: 1; grid-row: 2; }
.ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child > .ukcho-inner-title { grid-column: 1; grid-row: 3; }
.ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > .ukcho-evidence-panel { grid-column: 2; grid-row: 1 / 4; align-self: start; width: 100%; }
.ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child > .ukcho-inner-lead { grid-column: 1 / -1; grid-row: 4; max-width: 1120px; margin-top: 30px; }
.ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child > .ukcho-reviewed { grid-column: 1 / -1; grid-row: 5; margin-top: 15px; }
.ukcho-breadcrumbs { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 20px; color: var(--ukcho-muted); font-size: 11px; }
.ukcho-breadcrumbs a { color: inherit; text-underline-offset: 3px; }
.ukcho-inner-title { max-width: 820px; margin: 0; color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: clamp(38px, 4.5vw, 54px); line-height: 1.03; font-weight: 500; letter-spacing: -.015em; }
.ukcho-inner-lead { max-width: 790px; margin: 20px 0 0; color: #34434d; font-size: clamp(17px, 1.6vw, 20px); line-height: 1.62; }
.ukcho-reviewed { margin: 22px 0 0; color: var(--ukcho-muted); font-size: 11px; }
.ukcho-evidence-panel { border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-evidence-row { display: grid; grid-template-columns: 116px 1fr; gap: 18px; padding: 14px 0; border-bottom: 1px solid var(--ukcho-line); }
.ukcho-evidence-row:last-child { border-bottom: 0; }
.ukcho-evidence-row dt { color: var(--ukcho-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ukcho-evidence-row dd { margin: 0; color: var(--ukcho-ink); font-size: 13px; line-height: 1.45; }
.ukcho-evidence-row a { color: var(--ukcho-link); text-underline-offset: 3px; }

.ukcho-inner-section { padding: clamp(44px, 6vw, 76px) 0; border-bottom: 1px solid var(--ukcho-line); }
.ukcho-inner-section--white { background: #fff; }
.ukcho-inner-section--ink { background: var(--ukcho-ink-deep); color: #d9e1e6; border-bottom-color: rgba(255,255,255,.18); }
.ukcho-inner-section--ink .ukcho-section-title, .ukcho-inner-section--ink .ukcho-subtitle { color: #fff; }
.ukcho-inner-section--ink .ukcho-kicker { color: #aebdc6; }
.ukcho-inner-section--ink .ukcho-inner-copy { color: #d9e1e6; }
.ukcho-inner-section--ink .ukcho-answer-first { color: #fff; border-left-color: #d6a8ac; }
.ukcho-inner-copy { max-width: 820px; color: #3c4850; }
.ukcho-inner-copy p { margin: 0 0 16px; }
.ukcho-inner-copy--wide { max-width: 980px; }
.ukcho-answer-first { max-width: 940px; margin: 0 0 30px; padding: 18px 0 19px 22px; border-left: 3px solid var(--ukcho-link); color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: clamp(20px, 2.2vw, 27px); line-height: 1.38; }
.ukcho-balanced-copy { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 68px); margin-top: 20px; }
.ukcho-balanced-copy > * { margin: 0; color: #3c4850; }
.ukcho-section-intro { max-width: 850px; margin-bottom: 28px; color: #3c4850; }
.ukcho-section-intro p { margin: 0; }
.ukcho-section-intro--spaced { margin-top: 24px; }

.ukcho-data-strip { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-data-cell { padding: 20px 18px; border-right: 1px solid var(--ukcho-line); }
.ukcho-data-cell:first-child { padding-left: 0; }
.ukcho-data-cell:last-child { border-right: 0; }
.ukcho-data-cell strong { display: block; color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 27px; line-height: 1.05; font-weight: 500; }
.ukcho-data-cell span { display: block; margin-top: 7px; color: var(--ukcho-muted); font-size: 11px; line-height: 1.45; }

.ukcho-ruled-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-ruled-item { padding: 22px 22px 24px 0; border-right: 1px solid var(--ukcho-line); }
.ukcho-ruled-item + .ukcho-ruled-item { padding-left: 22px; }
.ukcho-ruled-item:last-child { border-right: 0; }
.ukcho-ruled-item .ukcho-index { display: block; margin-bottom: 12px; color: var(--ukcho-link); font-size: 10px; font-weight: 700; letter-spacing: .08em; }
.ukcho-ruled-item h3 { margin: 0; color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 22px; line-height: 1.2; font-weight: 520; }
.ukcho-ruled-item p { margin: 9px 0 0; color: var(--ukcho-muted); font-size: 13px; line-height: 1.55; }

.ukcho-ledger { margin: 24px 0 0; border-top: 1px solid var(--ukcho-line); }
.ukcho-ledger-row { display: grid; grid-template-columns: minmax(150px, .48fr) minmax(0, 1.52fr); gap: 30px; padding: 18px 0; border-bottom: 1px solid var(--ukcho-line); }
.ukcho-ledger-row dt { color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 19px; line-height: 1.25; }
.ukcho-ledger-row dd { margin: 0; color: #42515a; font-size: 13px; line-height: 1.6; }
.ukcho-ledger-row dd strong { color: var(--ukcho-link); }

.ukcho-process-band { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-process-step { display: grid; grid-template-columns: 42px 1fr; gap: 14px; padding: 22px 22px 23px 0; border-right: 1px solid var(--ukcho-line); }
.ukcho-process-step + .ukcho-process-step { padding-left: 22px; }
.ukcho-process-step:last-child { border-right: 0; }
.ukcho-process-step > span { color: var(--ukcho-link); font-family: "Newsreader", Georgia, serif; font-size: 23px; }
.ukcho-process-step h3 { margin: 0; color: var(--ukcho-ink); font-size: 14px; }
.ukcho-process-step p { margin: 6px 0 0; color: var(--ukcho-muted); font-size: 12px; line-height: 1.55; }

.ukcho-table-wrap { max-width: 100%; overflow-x: auto; border-top: 1px solid var(--ukcho-line); }
.ukcho-registry-table { width: 100%; min-width: 680px; border-collapse: collapse; font-size: 13px; }
.ukcho-registry-table th, .ukcho-registry-table td { padding: 13px 14px; border-bottom: 1px solid var(--ukcho-line); border-right: 1px solid var(--ukcho-line); text-align: left; vertical-align: top; }
.ukcho-registry-table th:first-child, .ukcho-registry-table td:first-child { padding-left: 0; }
.ukcho-registry-table th:last-child, .ukcho-registry-table td:last-child { border-right: 0; }
.ukcho-registry-table th { color: var(--ukcho-ink); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.ukcho-registry-table td { color: #42515a; }
.ukcho-registry-table a { color: var(--ukcho-link); font-weight: 650; text-underline-offset: 3px; }
.ukcho-registry-table .ukcho-year { color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 19px; }

.ukcho-status-banner { display: grid; grid-template-columns: 150px 1fr; gap: 24px; padding: 20px 0; border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-status-banner strong { color: var(--ukcho-link); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.ukcho-status-banner p { margin: 0; color: #3c4850; }
.ukcho-caution { margin-top: 24px; padding: 18px 0 18px 22px; border-left: 3px solid #d6aa2e; color: #42515a; font-size: 13px; }
.ukcho-caution strong { color: var(--ukcho-ink); }

.ukcho-source-register { margin: 24px 0 0; border-top: 1px solid var(--ukcho-line); }
.ukcho-source-entry { display: grid; grid-template-columns: 170px 1fr auto; gap: 24px; align-items: baseline; padding: 18px 0; border-bottom: 1px solid var(--ukcho-line); }
.ukcho-source-entry strong { color: var(--ukcho-ink); font-size: 15px; line-height: 1.5; }
.ukcho-source-entry span { color: #52636d; font-size: 14px; line-height: 1.55; }
.ukcho-source-entry a { color: var(--ukcho-link); font-size: 14px; line-height: 1.5; font-weight: 650; white-space: nowrap; }
.ukcho-inner-section--ink .ukcho-source-register { border-top-color: rgba(255,255,255,.38); }
.ukcho-inner-section--ink .ukcho-source-entry { border-bottom-color: rgba(255,255,255,.38); }
.ukcho-inner-section--ink .ukcho-source-entry strong { color: #fff; }
.ukcho-inner-section--ink .ukcho-source-entry span { color: #d9e1e6; }
.ukcho-inner-section--ink .ukcho-source-entry a { color: #efc8cb; }
.ukcho-inner-section--ink .ukcho-source-entry a:hover,
.ukcho-inner-section--ink .ukcho-source-entry a:focus-visible { color: #fff; }

.ukcho-figure-band { display: grid; grid-template-columns: 1fr 1fr; margin-top: 28px; border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-figure-band figure { margin: 0; padding: 22px 24px 22px 0; }
.ukcho-figure-band figure + figure { padding-left: 24px; border-left: 1px solid var(--ukcho-line); }
.ukcho-figure-band img { display: block; width: 100%; max-height: 420px; object-fit: contain; background: #fff; }
.ukcho-figure-band .ukcho-crop-image { object-fit: cover; aspect-ratio: 4 / 3; }
.ukcho-figure-band figcaption { margin-top: 10px; color: var(--ukcho-muted); font-size: 11px; line-height: 1.45; }
.ukcho-figure-band figcaption a { color: inherit; }
.ukcho-wide-figure { margin: 28px 0 0; padding: 22px; border: 1px solid var(--ukcho-line); background: #fff; }
.ukcho-wide-figure img { display: block; width: 100%; max-height: 520px; object-fit: contain; }
.ukcho-wide-figure figcaption { margin-top: 10px; color: var(--ukcho-muted); font-size: 11px; }
.ukcho-document-pair { display: grid; grid-template-columns: 1fr 1fr; margin-top: 24px; border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-document-pair article { padding: 24px 30px 26px 0; }
.ukcho-document-pair article + article { padding-left: 30px; border-left: 1px solid var(--ukcho-line); }
.ukcho-document-pair h3 { margin: 0; color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 24px; line-height: 1.2; font-weight: 520; }
.ukcho-document-pair article > p:not(.ukcho-kicker) { margin: 12px 0; color: var(--ukcho-muted); font-size: 14px; line-height: 1.65; }
.ukcho-boundary-chart { margin: 30px 0 0; padding: 24px; border: 1px solid var(--ukcho-line); background: #fff; }
.ukcho-boundary-chart svg { display: block; width: 100%; height: auto; overflow: visible; }
.ukcho-boundary-chart .grid { stroke: #d6dde1; stroke-width: 1; }
.ukcho-boundary-chart .axis-label { fill: #52636d; font: 14px "Public Sans", sans-serif; }
.ukcho-boundary-chart .value-label { fill: var(--ukcho-ink); font: 700 13px "Public Sans", sans-serif; }
.ukcho-boundary-chart .series { fill: none; stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; }
.ukcho-boundary-chart .series--gold { stroke: #9a721d; fill: none; }
.ukcho-boundary-chart .series--silver { stroke: #667985; fill: none; }
.ukcho-boundary-chart .series--bronze { stroke: #8f563b; fill: none; }
.ukcho-boundary-chart .dot--gold { stroke: #9a721d; fill: #9a721d; }
.ukcho-boundary-chart .dot--silver { stroke: #667985; fill: #667985; }
.ukcho-boundary-chart .dot--bronze { stroke: #8f563b; fill: #8f563b; }
.ukcho-chart-legend { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 18px; color: #42515a; font-size: 14px; }
.ukcho-chart-legend span { display: inline-flex; align-items: center; gap: 8px; }
.ukcho-chart-legend i { width: 24px; height: 3px; background: currentColor; }
.ukcho-chart-legend .gold { color: #9a721d; }
.ukcho-chart-legend .silver { color: #667985; }
.ukcho-chart-legend .bronze { color: #8f563b; }

.ukcho-score-history { display: grid; grid-template-columns: 160px repeat(4, 1fr); border-top: 1px solid var(--ukcho-line); }
.ukcho-score-history > * { padding: 13px 12px; border-right: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-score-history > *:nth-child(5n) { border-right: 0; }
.ukcho-score-history .ukcho-head { color: var(--ukcho-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ukcho-score-history .ukcho-row-year { color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 18px; }
.ukcho-score-history span:not(.ukcho-head):not(.ukcho-row-year) { color: #42515a; font-size: 13px; font-variant-numeric: tabular-nums; }

.ukcho-faq-group { margin-top: 34px; }
.ukcho-faq-group-title { margin: 0 0 8px; color: var(--ukcho-link); font-size: 11px; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.ukcho-faq-group .ukcho-faq-list { margin-top: 0; }
.ukcho-faq-answer ul { margin: 10px 0 0; padding-left: 20px; }

.ukcho-week-plan { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-week-block { padding: 22px 20px 24px 0; border-right: 1px solid var(--ukcho-line); }
.ukcho-week-block + .ukcho-week-block { padding-left: 20px; }
.ukcho-week-block:last-child { border-right: 0; }
.ukcho-week-block time { color: var(--ukcho-link); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ukcho-week-block h3 { margin: 10px 0 0; color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 20px; font-weight: 520; }
.ukcho-week-block p { margin: 8px 0 0; color: var(--ukcho-muted); font-size: 12px; }

.ukcho-timeline { margin-top: 24px; border-top: 1px solid var(--ukcho-line); }
.ukcho-timeline-row { display: grid; grid-template-columns: 130px 1fr; gap: 28px; padding: 18px 0; border-bottom: 1px solid var(--ukcho-line); }
.ukcho-timeline-row time { color: var(--ukcho-link); font-family: "Newsreader", Georgia, serif; font-size: 20px; }
.ukcho-timeline-row h3 { margin: 0; color: var(--ukcho-ink); font-size: 14px; }
.ukcho-timeline-row p { margin: 5px 0 0; color: var(--ukcho-muted); font-size: 13px; }

.ukcho-course-schedule { display: grid; grid-template-columns: 1.25fr .7fr .55fr .8fr; border-top: 1px solid var(--ukcho-line); }
.ukcho-course-schedule > * { padding: 14px 12px; border-right: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-course-schedule > *:nth-child(4n) { border-right: 0; }
.ukcho-course-schedule .ukcho-head { color: var(--ukcho-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ukcho-course-schedule strong { color: var(--ukcho-ink); font-size: 13px; }
.ukcho-course-schedule span { color: #42515a; font-size: 12px; }
.ukcho-outcome-note { padding: 24px 0; border-top: 1px solid var(--ukcho-line); border-bottom: 1px solid var(--ukcho-line); }
.ukcho-outcome-note strong { color: var(--ukcho-ink); }
.ukcho-outcome-note p { margin: 7px 0 0; color: var(--ukcho-muted); font-size: 13px; }

.ukcho-next-band { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 30px; padding: 28px 0; }
.ukcho-next-band h2 { margin: 0; color: var(--ukcho-ink); font-family: "Newsreader", Georgia, serif; font-size: 24px; font-weight: 520; }
.ukcho-next-links { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.ukcho-next-links a { color: var(--ukcho-link); font-size: 13px; font-weight: 650; text-underline-offset: 4px; }

@media (max-width: 980px) {
  .ukcho-inner-hero-grid { grid-template-columns: 1fr; }
  .ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) { row-gap: 0; }
  .ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child > .ukcho-breadcrumbs,
  .ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child > .ukcho-kicker,
  .ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child > .ukcho-inner-title,
  .ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child > .ukcho-inner-lead,
  .ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > div:first-child > .ukcho-reviewed,
  .ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > .ukcho-evidence-panel { grid-column: 1; grid-row: auto; }
  .ukcho-inner-hero-grid:has(> .ukcho-evidence-panel) > .ukcho-evidence-panel { margin-top: 28px; }
  .ukcho-data-strip, .ukcho-ruled-grid, .ukcho-process-band, .ukcho-week-plan { grid-template-columns: 1fr 1fr; }
  .ukcho-data-cell:nth-child(2), .ukcho-ruled-item:nth-child(2), .ukcho-process-step:nth-child(2), .ukcho-week-block:nth-child(2) { border-right: 0; }
  .ukcho-data-cell:nth-child(-n+2), .ukcho-ruled-item:nth-child(-n+2), .ukcho-process-step:nth-child(-n+2), .ukcho-week-block:nth-child(-n+2) { border-bottom: 1px solid var(--ukcho-line); }
  .ukcho-data-cell:first-child, .ukcho-ruled-item:first-child, .ukcho-process-step:first-child, .ukcho-week-block:first-child { padding-left: 0; }
  .ukcho-data-cell:nth-child(3), .ukcho-ruled-item:nth-child(3), .ukcho-process-step:nth-child(3), .ukcho-week-block:nth-child(3) { padding-left: 0; }
}

@media (max-width: 720px) {
  .ukcho-inner-hero { padding-top: 34px; }
  .ukcho-inner-title { font-size: 38px; }
  .ukcho-balanced-copy, .ukcho-data-strip, .ukcho-ruled-grid, .ukcho-process-band, .ukcho-figure-band, .ukcho-week-plan, .ukcho-document-pair { grid-template-columns: 1fr; }
  .ukcho-evidence-row, .ukcho-ledger-row, .ukcho-status-banner, .ukcho-source-entry, .ukcho-timeline-row { grid-template-columns: 1fr; gap: 7px; }
  .ukcho-data-cell, .ukcho-data-cell:first-child, .ukcho-ruled-item, .ukcho-ruled-item + .ukcho-ruled-item, .ukcho-process-step, .ukcho-process-step + .ukcho-process-step, .ukcho-week-block, .ukcho-week-block + .ukcho-week-block { padding: 18px 0; border-right: 0; border-bottom: 1px solid var(--ukcho-line); }
  .ukcho-data-cell:last-child, .ukcho-ruled-item:last-child, .ukcho-process-step:last-child, .ukcho-week-block:last-child { border-bottom: 0; }
  .ukcho-figure-band figure, .ukcho-figure-band figure + figure { padding: 18px 0; border-left: 0; border-bottom: 1px solid var(--ukcho-line); }
  .ukcho-figure-band figure:last-child { border-bottom: 0; }
  .ukcho-document-pair article, .ukcho-document-pair article + article { padding: 20px 0; border-left: 0; border-bottom: 1px solid var(--ukcho-line); }
  .ukcho-document-pair article:last-child { border-bottom: 0; }
  .ukcho-distribution { padding: 18px; }
  .ukcho-distribution-track { min-height: 44px; }
  .ukcho-distribution-segment { font-size: 11px; }
  .ukcho-distribution-key { grid-template-columns: 1fr 1fr; }
  .ukcho-boundary-chart { padding: 16px 12px; overflow-x: auto; }
  .ukcho-boundary-chart svg { min-width: 680px; }
  .ukcho-source-entry a { white-space: normal; }
  .ukcho-score-history { grid-template-columns: 86px repeat(4, minmax(74px, 1fr)); overflow-x: auto; }
  .ukcho-score-history > * { padding: 10px 7px; font-size: 12px !important; }
  .ukcho-course-schedule { grid-template-columns: 1.2fr .65fr .55fr .8fr; overflow-x: auto; }
  .ukcho-course-schedule > * { padding: 10px 7px; }
  .ukcho-next-band { align-items: flex-start; }
}
