:root {
    --oa-page: var(--paper, #f0efeb);
    --oa-accent: #B42A1A;
    --oa-ink: #141410;
    --oa-ink2: #2E2E28;
    --oa-ink3: #4A4A42;
    --oa-ink4: #7A7A6E;
    --oa-ink5: #AEAE9E;
    /* Structural hairlines — ecosystem-company + data-pages-typography */
    --oa-line: var(--profile-line-structural, 1px solid rgba(20, 20, 16, 0.14));
    --oa-rule: rgba(20, 20, 16, 0.1);
    --oa-rule2: rgba(20, 20, 16, 0.18);
    --oa-bar: var(--oa-ink);
    --oa-bar-hi: var(--oa-accent);
    --oa-body-size: var(--t-size, 11.5px);
    --oa-body-lh: var(--t-height, 1.48);
}
.page-orders-awards {
    font-family: var(--site-body);
    font-size: var(--oa-body-size);
    line-height: var(--oa-body-lh);
    color: rgba(20, 20, 16, var(--t-body-opacity, 0.94));
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: var(--oa-page);
    min-height: 100vh;
}
.oa-shell { padding-bottom: 3rem; }
.oa-main {
    padding: 0 40px 3rem;
    max-width: 1320px;
    margin: 0 auto;
    min-width: 0;
}
@media (max-width: 720px) {
    .oa-main { padding: 0 18px 2.5rem; }
}
.oa-main a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid var(--oa-rule2);
}
.oa-main a:hover { color: var(--oa-accent); border-bottom-color: var(--oa-accent); }

/* Section rails — topnav --korthos-header-* (same tier as Funding Monitor section titles) */
.page-orders-awards .oa-section-head,
.page-orders-awards .oa-col-head,
.page-orders-awards .oa-band-title,
.page-orders-awards .oa-band-bottom-title {
    font-family: var(--korthos-header-font);
    font-size: var(--korthos-header-size);
    font-weight: var(--korthos-header-weight);
    letter-spacing: var(--korthos-header-tracking);
    line-height: var(--korthos-header-line-height);
    color: var(--korthos-header-color);
    text-transform: uppercase;
}
.page-orders-awards .oa-section-head { margin-bottom: 6px; }
.page-orders-awards .oa-section--lead .oa-section-head { margin-bottom: 8px; }
.page-orders-awards .oa-col-head { margin: 0 0 6px; }
.page-orders-awards .oa-band-title { margin: 0 0 4px; }
.page-orders-awards .oa-band-bottom-title { margin: 0 0 6px; }

.oa-hero {
    margin-left: -40px;
    margin-right: -40px;
    padding: 44px 40px 28px;
    border-bottom: 1px solid var(--oa-rule2);
}
@media (max-width: 720px) {
    .oa-hero { margin-left: -18px; margin-right: -18px; padding: 32px 18px 22px; }
}
.oa-kicker {
    font-family: var(--site-body);
    font-size: 7.5px;
    font-weight: 400;
    letter-spacing: 0.17em;
    text-transform: uppercase;
    color: rgba(20, 20, 16, 0.34);
    margin-bottom: 10px;
}
@media (min-width: 769px) {
    .oa-kicker {
        font-size: 8px;
        letter-spacing: 0.15em;
        color: rgba(20, 20, 16, 0.4);
    }
}
.oa-title {
    font-family: var(--site-display);
    font-size: clamp(44px, 6vw, 76px);
    line-height: 0.9;
    letter-spacing: 0.02em;
    font-weight: 400;
    text-transform: uppercase;
    color: var(--oa-ink);
    margin: 0 0 12px;
}
.oa-deck {
    font-family: var(--site-body);
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 0.02em;
    font-weight: 400;
    color: rgba(20, 20, 16, 0.72);
    max-width: 68ch;
    margin: 0 0 18px;
}
.oa-scope {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    font-family: var(--site-body);
    font-size: 10px;
    line-height: 1.35;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(20, 20, 16, 0.5);
}
.oa-scope-label { color: var(--oa-ink3); font-weight: 600; }
.oa-win-switch {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.oa-win-link {
    color: var(--oa-ink2);
    border-bottom: 1px solid transparent;
    font-weight: 600;
    letter-spacing: 0.12em;
}
.oa-win-link:hover { color: var(--oa-accent); border-bottom-color: var(--oa-accent); }
.oa-win-link.is-active {
    color: var(--oa-accent);
    border-bottom-color: var(--oa-accent);
}
.oa-win-sep { color: var(--oa-ink5); user-select: none; }
.oa-pill {
    border: 1px solid var(--oa-rule2);
    padding: 4px 10px;
    font-size: 9px;
    letter-spacing: 0.12em;
    color: var(--oa-ink3);
}
.oa-pill--quiet {
    border-color: var(--oa-rule);
    color: var(--oa-ink4);
    font-weight: 500;
}

.oa-error {
    margin: 16px 0 0;
    padding: 12px 16px;
    border-left: 3px solid var(--oa-accent);
    font-family: var(--site-body);
    font-size: var(--oa-body-size);
    line-height: var(--oa-body-lh);
    color: var(--oa-ink2);
    max-width: 70ch;
}

/* Summary: one primary number + aside context — not a stats grid */
.oa-strip {
    margin-left: -40px;
    margin-right: -40px;
    border-bottom: 1px solid var(--oa-rule2);
    background: var(--oa-ink2);
}
@media (max-width: 720px) {
    .oa-strip { margin-left: -18px; margin-right: -18px; }
}
.oa-strip-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 32px 48px;
    padding: 26px 40px 28px;
}
@media (max-width: 720px) {
    .oa-strip-inner { padding: 22px 18px 24px; }
}
.oa-strip-primary {
    flex: 1.15 1 300px;
    min-width: 0;
    max-width: 520px;
}
.oa-strip-primary .oa-strip-k {
    display: block;
    font-size: 8px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(238, 234, 224, 0.35);
    margin-bottom: 12px;
}
.oa-strip-massive {
    display: block;
    font-family: var(--site-display);
    font-size: clamp(44px, 7.5vw, 72px);
    line-height: 0.98;
    letter-spacing: 0.02em;
    font-weight: 400;
    color: rgba(238, 234, 224, 0.99);
    font-variant-numeric: tabular-nums;
}
.oa-strip-micro {
    display: block;
    margin-top: 12px;
    font-size: 10px;
    line-height: 1.45;
    color: rgba(238, 234, 224, 0.42);
    max-width: 36ch;
}
.oa-strip-aside {
    flex: 1 1 260px;
    min-width: 0;
    max-width: 380px;
    padding-top: 4px;
    border-left: 1px solid rgba(238, 234, 224, 0.14);
    padding-left: 28px;
}
@media (max-width: 720px) {
    .oa-strip-aside {
        border-left: none;
        padding-left: 0;
        border-top: 1px solid rgba(238, 234, 224, 0.1);
        padding-top: 20px;
        max-width: none;
    }
}
.oa-aside-signals {
    list-style: none;
    margin: 0;
    padding: 0;
}
.oa-aside-signal {
    display: grid;
    grid-template-columns: 108px minmax(0, 1fr);
    gap: 10px 14px;
    align-items: baseline;
    padding: 7px 0;
    border-bottom: 1px solid rgba(238, 234, 224, 0.07);
    font-family: var(--site-body);
    font-size: 11px;
    line-height: 1.4;
}
.oa-aside-signal:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.oa-aside-signal-k {
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: rgba(238, 234, 224, 0.45);
}
.oa-aside-signal-v {
    color: rgba(238, 234, 224, 0.88);
    font-weight: 500;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
@media (max-width: 520px) {
    .oa-aside-signal {
        grid-template-columns: 1fr;
        gap: 2px;
    }
}

.oa-section {
    margin-top: 2.5rem;
    padding-top: 1.5rem;
    border-top: var(--oa-line);
}
.oa-section--lead {
    margin-top: 1.75rem;
    padding-top: 1.2rem;
    border-top: var(--oa-line);
}
.oa-section--support {
    margin-top: 1.85rem;
    padding-top: 1.15rem;
}
.oa-section--support.oa-section--sector {
    margin-top: 1.65rem;
}
.oa-section-note {
    font-family: var(--site-body);
    font-size: var(--oa-body-size);
    line-height: var(--oa-body-lh);
    color: rgba(20, 20, 16, var(--t-meta-opacity, 0.68));
    max-width: 62ch;
    margin-bottom: 14px;
}
.oa-section-note--compact {
    margin-bottom: 12px;
    font-size: 10px;
    color: rgba(20, 20, 16, 0.52);
}

.oa-viewpick {
    display: flex;
    flex-wrap: wrap;
    gap: 0 18px;
    row-gap: 6px;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: var(--oa-line);
}
.oa-viewpick-item {
    font-family: var(--site-body);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.04em;
    text-transform: none;
    padding: 0 0 2px;
    border: none;
    border-bottom: 2px solid transparent;
    background: none;
    color: var(--oa-ink4);
    cursor: pointer;
}
.oa-viewpick-item:hover { color: var(--oa-ink2); }
.oa-viewpick-item.is-on {
    color: var(--oa-ink);
    border-bottom-color: var(--oa-accent);
}

/* Bars: no track fill — ink on canvas only */
.oa-bchart {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.oa-bchart--lead {
    gap: 9px;
    margin-top: 6px;
}
.oa-brow {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
}
.oa-brow-core {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.oa-brow-label {
    font-family: var(--site-display);
    font-size: 13px;
    letter-spacing: 0.02em;
    color: var(--oa-ink);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.oa-bchart--lead .oa-brow-label {
    font-size: 14px;
}
.oa-brow-track {
    width: 100%;
    height: 3px;
    display: flex;
    align-items: center;
}
.oa-bfill {
    display: block;
    height: 3px;
    background: var(--oa-bar);
    min-width: 1px;
    max-width: 100%;
}
.oa-bfill--hi { background: var(--oa-bar-hi); }
.oa-brow-val {
    font-family: var(--site-display);
    font-size: 14px;
    letter-spacing: 0.02em;
    color: var(--oa-ink2);
    text-align: right;
    flex-shrink: 0;
    line-height: 1.2;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
.oa-bchart--lead .oa-brow-val {
    font-size: 15px;
}
.oa-brow--ranked .oa-brow-core {
    gap: 6px;
}
.oa-brow-label--ranked {
    font-family: var(--site-body) !important;
    font-size: 11px !important;
    font-weight: 500;
    letter-spacing: 0.03em;
    color: var(--oa-ink4) !important;
    white-space: normal !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.35;
    max-height: 2.8em;
}
.oa-brow-val--ranked {
    font-size: 17px !important;
    font-weight: 600;
    color: var(--oa-ink) !important;
    min-width: 4.5rem;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
.oa-brow--ranked .oa-bfill {
    height: 4px;
}
.oa-brow--ranked .oa-brow-track {
    height: 4px;
}
.oa-bchart--sector {
    gap: 10px;
    margin-top: 6px;
}
.oa-brow--sector .oa-bfill {
    height: 5px;
}
.oa-brow--sector .oa-brow-track {
    height: 5px;
}
.oa-brow--sector .oa-brow-label {
    font-size: 12px;
    font-weight: 500;
    color: var(--oa-ink2);
}
.oa-brow--sector .oa-brow-pct {
    font-size: 19px;
    font-weight: 500;
    color: var(--oa-ink);
}
.oa-brow--sector .oa-brow-ct {
    font-size: 8px;
}
.oa-brow-valstack {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    flex-shrink: 0;
    text-align: right;
}
.oa-brow-pct {
    font-family: var(--site-display);
    font-size: 16px;
    letter-spacing: 0.02em;
    color: var(--oa-ink);
    line-height: 1;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
.oa-brow-ct {
    font-family: var(--site-body);
    font-size: 9px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--oa-ink5);
}

/* Composed bands (layout, not chrome) */
.oa-band {
    margin-top: 1.85rem;
    padding-top: 1.2rem;
    border-top: var(--oa-line);
}
.oa-band-grid--analysis {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    gap: 28px 44px;
    align-items: start;
}
@media (max-width: 900px) {
    .oa-band-grid--analysis {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}
.oa-band-col--divide {
    padding-left: 0;
    border-left: none;
}
@media (min-width: 901px) {
    .oa-band-col--divide {
        padding-left: 36px;
        border-left: 1px solid var(--oa-rule2);
    }
}

.oa-col-note {
    font-family: var(--site-body);
    font-size: var(--oa-body-size);
    line-height: var(--oa-body-lh);
    color: rgba(20, 20, 16, var(--t-meta-opacity, 0.68));
    margin: 0 0 12px;
    max-width: 48ch;
}

.oa-band-lead {
    font-family: var(--site-body);
    font-size: var(--oa-body-size);
    line-height: var(--oa-body-lh);
    color: rgba(20, 20, 16, var(--t-meta-opacity, 0.68));
    margin: 0 0 14px;
    max-width: 70ch;
}
.oa-wins-composed {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    gap: 8px 40px;
    align-items: start;
}
@media (max-width: 900px) {
    .oa-wins-composed {
        grid-template-columns: 1fr;
        gap: 8px;
    }
}
.oa-win-lead-slot .oa-win--lead {
    padding: 0 0 22px;
    border-bottom: 1px solid var(--oa-rule2);
    margin: 0;
}
.oa-win--lead .oa-win-h {
    font-size: 18px;
    margin-bottom: 12px;
    line-height: 1.22;
}
.oa-win--lead .oa-win-line {
    font-size: 10px;
    line-height: 1.55;
    margin: 0;
    max-width: 52ch;
    color: var(--oa-ink4);
    opacity: 0.92;
}
.oa-win--lead .oa-win-meta {
    margin-top: 14px;
    font-size: 9px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--oa-ink5);
}
.oa-wins-compact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 20px;
    align-content: start;
}
@media (max-width: 640px) {
    .oa-wins-compact-grid { grid-template-columns: 1fr; }
}
.oa-win-tile {
    padding: 16px 0 18px;
    border-bottom: 1px solid var(--oa-rule);
    min-width: 0;
}
.oa-win-tile-h {
    font-family: var(--site-display);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 0.02em;
    margin: 0 0 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.oa-win-tile-h a {
    border-bottom: none;
}
.oa-win-tile-h a:hover {
    color: var(--oa-accent);
}
.oa-win-tile-line {
    font-family: var(--site-body);
    font-size: 9px;
    line-height: 1.5;
    color: var(--oa-ink5);
    opacity: 0.95;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.oa-win-tile-meta {
    font-family: var(--site-body);
    font-size: 9px;
    color: var(--oa-ink5);
    margin-top: 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.oa-band--bottom {
    margin-top: 2rem;
    padding-top: 1.35rem;
}
.oa-band--bottom .oa-conc-windowline {
    margin: 0 0 16px;
}
.oa-conc--flagship {
    max-width: 720px;
}
.oa-conc--flagship .oa-conc-lede {
    font-size: clamp(20px, 2.4vw, 26px);
    line-height: 1.28;
    font-weight: 500;
    margin-bottom: 16px;
    color: var(--oa-ink);
}
.oa-conc-names {
    font-family: var(--site-display);
    font-size: 15px;
    line-height: 1.4;
    letter-spacing: 0.02em;
    color: var(--oa-ink2);
    margin: 0 0 14px;
}
.oa-conc-names-label {
    display: block;
    font-family: var(--site-body);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--oa-ink5);
    margin-bottom: 5px;
}
.oa-conc-names-vals {
    color: var(--oa-ink);
}
.oa-conc--flagship .oa-conc-body {
    font-size: 11px;
    line-height: 1.6;
    color: var(--oa-ink4);
    margin-bottom: 12px;
    max-width: 62ch;
}
.oa-conc--flagship .oa-conc-facts {
    font-size: 9px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--oa-ink5);
    margin-bottom: 16px;
}
.oa-conc-geo-foot {
    font-family: var(--site-body);
    font-size: 10px;
    line-height: 1.45;
    color: var(--oa-ink5);
    margin: 0;
    padding-top: 12px;
    border-top: 1px solid var(--oa-rule);
    max-width: 52ch;
}

/* Lanes: single merged rank */
.oa-lane-unified--inband {
    margin-top: 0;
    padding-top: 0;
}
.oa-lane-merged-deck {
    font-family: var(--site-body);
    font-size: 10px;
    line-height: 1.4;
    color: var(--oa-ink5);
    margin: 0 0 12px;
    max-width: 52ch;
}
.oa-lane-merged-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.oa-brow--merged {
    align-items: flex-end;
    gap: 16px;
}
.oa-brow-merge-main {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.oa-brow-merge-top {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
}
.oa-brow-label--merge {
    font-family: var(--site-display);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.02em;
    color: var(--oa-ink);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}
.oa-brow-track--merge .oa-bfill {
    height: 5px;
}
.oa-brow-track--merge {
    height: 5px;
}
.oa-brow-val--merge {
    font-size: 15px;
    font-weight: 600;
    color: var(--oa-ink);
    min-width: 2rem;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
.oa-lane-tag {
    flex-shrink: 0;
    font-family: var(--site-body);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--oa-ink5);
}
.oa-lane-tag--order { color: var(--oa-ink4); }
.oa-lane-tag--award { color: var(--oa-accent); }

/* Stage: short lines per dimension */
.oa-stage-grid {
    margin-top: 2px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.oa-stage-block {
    padding-bottom: 14px;
    border-bottom: 1px solid var(--oa-rule);
}
.oa-stage-block:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.oa-stage-block-h {
    font-family: var(--site-body);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--oa-ink3);
    margin: 0 0 8px;
}
.oa-stage-lines {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.oa-stage-line {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    font-family: var(--site-body);
    font-size: 12px;
    line-height: 1.35;
    color: var(--oa-ink2);
}
.oa-stage-line-k {
    min-width: 0;
    flex: 1;
    color: var(--oa-ink3);
}
.oa-stage-line-pct {
    font-family: var(--site-display);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.02em;
    color: var(--oa-ink);
    flex-shrink: 0;
}
.oa-stage-empty {
    margin: 0;
    font-size: 11px;
    color: var(--oa-ink5);
}

.oa-conc-windowline {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 0 0 18px;
    font-family: var(--site-body);
    font-size: 10px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.oa-conc-win {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    color: var(--oa-ink4);
    font: inherit;
    letter-spacing: inherit;
    text-transform: inherit;
    border-bottom: 1px solid transparent;
}
.oa-conc-win:hover { color: var(--oa-ink2); }
.oa-conc-win.is-on {
    color: var(--oa-ink);
    font-weight: 700;
    border-bottom-color: var(--oa-accent);
}
.oa-conc-win-sep { color: var(--oa-ink5); user-select: none; }
.oa-conc {
    max-width: 58ch;
}
.oa-conc-lede {
    font-family: var(--site-display);
    font-size: 17px;
    line-height: 1.35;
    color: var(--oa-ink);
    margin: 0 0 14px;
    letter-spacing: 0.02em;
}
.oa-conc-body {
    font-family: var(--site-body);
    font-size: 12px;
    line-height: 1.65;
    color: var(--oa-ink3);
    margin: 0 0 16px;
}
.oa-conc-winners {
    font-family: var(--site-body);
    font-size: 12px;
    line-height: 1.55;
    color: var(--oa-ink2);
    margin: 0 0 12px;
}
.oa-conc-winners-label {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--oa-ink5);
    display: block;
    margin-bottom: 4px;
}
.oa-conc-facts {
    font-family: var(--site-body);
    font-size: 10px;
    line-height: 1.5;
    color: var(--oa-ink5);
    margin: 0;
}

