/* Scanapse 1.5.2 - telemetry, public ranking, scan ledger, and module catalogue */
.engine-telemetry {
    position: relative;
    padding: clamp(4.5rem, 7vw, 7rem) 0;
    overflow: hidden;
}
.engine-telemetry::after {
    position: absolute;
    inset: 0;
    pointer-events: none;
    content: "";
    opacity: .14;
    background-image:
        linear-gradient(to right, transparent calc(100% - 1px), var(--inverse-line) 1px),
        linear-gradient(to bottom, transparent calc(100% - 1px), var(--inverse-line) 1px);
    background-size: 4.5rem 4.5rem;
    mask-image: linear-gradient(120deg, #000 0, transparent 74%);
}
.engine-telemetry > * { position: relative; z-index: 1; }
.engine-telemetry-heading {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(20rem, .78fr);
    gap: clamp(2rem, 7vw, 7rem);
    align-items: end;
    margin-bottom: 2.5rem;
}
.engine-telemetry-heading h2 {
    max-width: 14ch;
    margin: 0;
    font-size: clamp(2.25rem, 4.4vw, 4.35rem);
}
.engine-telemetry-heading .lead-small { max-width: 44rem; margin-bottom: 1.1rem; }
.engine-version,
.module-rule-version {
    margin: 0;
    color: var(--inverse-soft);
    font-family: var(--font-mono);
    font-size: .64rem;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.engine-telemetry-primary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border: 1px solid var(--inverse-line);
    background: color-mix(in srgb, var(--inverse-surface) 78%, transparent);
}
.engine-telemetry-primary .telemetry-card {
    position: relative;
    display: flex;
    min-height: 13.5rem;
    padding: 1.35rem;
    flex-direction: column;
    justify-content: space-between;
    border-right: 1px solid var(--inverse-line);
    overflow: hidden;
}
.engine-telemetry-primary .telemetry-card:last-child { border-right: 0; }
.engine-telemetry-primary .telemetry-card::before {
    position: absolute;
    right: -3rem;
    bottom: -3rem;
    width: 8rem;
    height: 8rem;
    border: 1px solid var(--inverse-line);
    border-radius: 50%;
    content: "";
}
.engine-telemetry-primary .telemetry-card::after {
    position: absolute;
    right: 1.2rem;
    bottom: 1.2rem;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--inverse-text);
    content: "";
}
.engine-telemetry-primary dt {
    position: relative;
    z-index: 1;
    max-width: 17ch;
    color: var(--inverse-soft);
    font-family: var(--font-mono);
    font-size: .64rem;
    font-weight: 650;
    letter-spacing: .1em;
    line-height: 1.45;
    text-transform: uppercase;
}
.engine-telemetry-primary dd {
    position: relative;
    z-index: 1;
    margin: auto 0 0;
    font-size: clamp(2.8rem, 5.4vw, 5rem);
    font-weight: 420;
    letter-spacing: -.075em;
    line-height: .9;
}
.engine-telemetry-primary dd small,
.engine-telemetry-secondary dd small {
    margin-left: .3rem;
    color: var(--inverse-soft);
    font-family: var(--font-mono);
    font-size: .62rem;
    font-weight: 600;
    letter-spacing: 0;
}
.engine-telemetry-primary .telemetry-card > span {
    position: absolute;
    top: 1.2rem;
    right: 1.2rem;
    color: var(--inverse-soft);
    font-family: var(--font-mono);
    font-size: .58rem;
}
.engine-telemetry-secondary {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-bottom: 0;
    border-inline: 1px solid var(--inverse-line);
}
.engine-telemetry-secondary > div {
    min-width: 0;
    min-height: 6.5rem;
    padding: 1rem 1.2rem;
    border-right: 1px solid var(--inverse-line);
    border-bottom: 1px solid var(--inverse-line);
}
.engine-telemetry-secondary > div:last-child { border-right: 0; }
.engine-telemetry-secondary dt {
    color: var(--inverse-soft);
    font-family: var(--font-mono);
    font-size: .55rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.engine-telemetry-secondary dd {
    margin: .8rem 0 0;
    font-size: 1.55rem;
    font-weight: 520;
    line-height: 1;
}
.telemetry-trajectory dd { display: flex; gap: .8rem; font-family: var(--font-mono); font-size: .85rem; }
.engine-telemetry-status {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-inline: 1px solid var(--inverse-line);
    border-bottom: 1px solid var(--inverse-line);
}
.engine-telemetry-status > span {
    display: grid;
    gap: .25rem;
    min-width: 0;
    padding: 1rem 1.2rem;
    border-right: 1px solid var(--inverse-line);
    color: var(--inverse-soft);
    font-family: var(--font-mono);
    font-size: .6rem;
    line-height: 1.5;
}
.engine-telemetry-status > span:nth-child(3) { border-right: 0; }
.engine-telemetry-status b {
    color: var(--inverse-text);
    font-size: .54rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.engine-telemetry-status .telemetry-privacy-note {
    grid-column: 1 / -1;
    display: block;
    border-top: 1px dashed var(--inverse-line);
    border-right: 0;
}

.home-ranking {
    padding: clamp(4.5rem, 7vw, 7rem) 0;
    background: var(--bg);
}
.home-ranking-heading {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(20rem, .78fr);
    gap: clamp(2rem, 7vw, 7rem);
    align-items: end;
}
.home-ranking-heading h2 {
    max-width: 15ch;
    margin: 0;
    font-size: clamp(2.25rem, 4.4vw, 4.35rem);
}
.home-ranking-intro .lead-small { max-width: 45rem; margin-bottom: 1rem; }
.home-ranking-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: clamp(2.5rem, 5vw, 4rem);
    border: 1px solid var(--line-strong);
    background: var(--surface);
}
.home-ranking-band {
    min-width: 0;
    border-right: 1px solid var(--line-strong);
}
.home-ranking-band:last-child { border-right: 0; }
.home-ranking-band > header {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 1rem;
    min-height: 13.5rem;
    padding: 1.25rem;
    border-bottom: 1px solid var(--line-strong);
    overflow: hidden;
}
.home-ranking-band > header::after {
    position: absolute;
    inset: 0;
    pointer-events: none;
    content: "";
    opacity: .42;
}
.home-ranking-band-clear > header { border-top: 4px solid var(--text); }
.home-ranking-band-clear > header::after {
    background: linear-gradient(135deg, transparent 0 73%, color-mix(in srgb, var(--text) 7%, transparent) 73% 100%);
}
.home-ranking-band-watch > header { border-top: 4px double var(--text); }
.home-ranking-band-watch > header::after {
    background: repeating-linear-gradient(135deg, transparent 0 10px, color-mix(in srgb, var(--text) 6%, transparent) 10px 11px);
}
.home-ranking-band-blind > header { border-top: 4px dotted var(--text-soft); }
.home-ranking-band-blind > header::after {
    background-image: radial-gradient(circle, color-mix(in srgb, var(--text) 13%, transparent) 1px, transparent 1px);
    background-size: 12px 12px;
    mask-image: linear-gradient(135deg, transparent, #000);
}
.home-ranking-band > header > * { position: relative; z-index: 1; }
.home-ranking-band > header > span {
    display: grid;
    width: 2.1rem;
    height: 2.1rem;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 50%;
    background: var(--bg);
    font-family: var(--font-mono);
    font-size: .58rem;
}
.ranking-threshold {
    width: fit-content;
    margin: 0 0 2rem;
    padding: .28rem .48rem;
    border: 1px solid var(--line);
    background: var(--bg);
    color: var(--text-soft);
    font-family: var(--font-mono);
    font-size: .58rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.home-ranking-band h3 { margin: 0 0 .7rem; font-size: clamp(1.3rem, 2vw, 1.75rem); }
.home-ranking-band header div > p:last-child { max-width: 31rem; margin: 0; color: var(--text-soft); font-size: .78rem; line-height: 1.55; }
.home-ranking-band ol { margin: 0; padding: 0; list-style: none; }
.home-ranking-band li { border-bottom: 1px solid var(--line); }
.home-ranking-band li:last-child { border-bottom: 0; }
.home-ranking-band li a {
    display: grid;
    grid-template-columns: 2.2rem minmax(0, 1fr) 4.15rem 2.3rem;
    gap: .7rem;
    align-items: center;
    min-height: 5.9rem;
    padding: .85rem 1rem;
    text-decoration: none;
    transition: background .15s var(--ease);
}
.home-ranking-band li a:hover,
.home-ranking-band li a:focus-visible { background: var(--bg); }
.home-ranking-rank,
.home-ranking-delta { color: var(--text-soft); font-family: var(--font-mono); font-size: .58rem; }
.home-ranking-domain { min-width: 0; }
.home-ranking-domain strong {
    display: block;
    overflow: hidden;
    font-size: .89rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.home-ranking-domain small {
    display: block;
    margin-top: .28rem;
    overflow: hidden;
    color: var(--text-soft);
    font-family: var(--font-mono);
    font-size: .51rem;
    line-height: 1.45;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.home-ranking-score {
    justify-self: end;
    min-width: 3.8rem;
    padding: .36rem .42rem;
    border: 1px solid var(--line);
    background: var(--bg);
    font-size: 1.04rem;
    font-weight: 680;
    text-align: right;
}
.home-ranking-score small { color: var(--text-soft); font-family: var(--font-mono); font-size: .43rem; }
.home-ranking-delta { text-align: right; }
.home-ranking-band-empty {
    min-height: 5.9rem;
    margin: 0;
    padding: 1.25rem;
    color: var(--text-soft);
    font-size: .75rem;
}
.home-ranking-empty {
    margin-top: 2rem;
    padding: 1.4rem;
    border: 1px solid var(--line);
    background: var(--surface);
}
.home-ranking-empty p { max-width: 42rem; margin: 0 0 1rem; color: var(--text-soft); }

.home-scan-ledger { padding: clamp(4.5rem, 7vw, 7rem) 0; }
.compact-heading-row h2 { max-width: 14ch; font-size: clamp(2.15rem, 4vw, 4rem); }
.scan-ledger-frame {
    margin-top: 2.5rem;
    border: 1px solid var(--line-strong);
    background: var(--surface);
    overflow-x: auto;
}
.scan-ledger-table { min-width: 66rem; }
.scan-ledger-row {
    display: grid;
    grid-template-columns: minmax(13rem, 1.45fr) 6rem 9.5rem 7rem 5.25rem 4.5rem 11rem;
    align-items: center;
    min-height: 4.5rem;
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid var(--line);
}
.scan-ledger-row:last-child { border-bottom: 0; }
.scan-ledger-row > * { min-width: 0; padding: .85rem 1rem; }
.scan-ledger-row > * + * { border-left: 1px solid var(--line); }
.scan-ledger-head {
    min-height: 3.25rem;
    background: var(--bg);
    color: var(--text-soft);
    font-family: var(--font-mono);
    font-size: .55rem;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.scan-ledger-row:not(.scan-ledger-head):hover { background: var(--bg); }
.scan-ledger-row strong { overflow: hidden; font-size: .86rem; text-overflow: ellipsis; white-space: nowrap; }
.scan-ledger-row span,
.scan-ledger-row time { color: var(--text-soft); font-family: var(--font-mono); font-size: .6rem; }
.scan-ledger-row .ledger-score { color: var(--text); font-family: var(--font-sans); font-size: 1.05rem; font-weight: 700; }
.scan-ledger-row .ledger-score small { margin-left: .16rem; color: var(--text-soft); font-family: var(--font-mono); font-size: .44rem; }
.coverage-mark {
    display: inline-block;
    width: .48rem;
    height: .48rem;
    margin-right: .55rem;
    border: 1px solid currentColor;
    border-radius: 50%;
}
.coverage-mark-full { background: currentColor; }
.coverage-mark-partial { background: linear-gradient(90deg, currentColor 50%, transparent 50%); }
.coverage-mark-infrastructure { border-radius: 0; transform: rotate(45deg); }
.coverage-mark-minimal { border-style: dotted; }
.scan-ledger-empty { min-height: 5.25rem; color: var(--text-soft); }
.scan-ledger-empty p { grid-column: 1 / -1; margin: 0; padding: 1.5rem; }

.home-modules-preview { padding: clamp(4.5rem, 7vw, 7rem) 0; }
.module-preview-layout {
    display: grid;
    grid-template-columns: minmax(18rem, .72fr) minmax(0, 1.28fr);
    gap: clamp(2.5rem, 8vw, 8rem);
    align-items: start;
}
.module-preview-layout h2 { max-width: 11ch; margin-bottom: 1.2rem; font-size: clamp(2.25rem, 4.4vw, 4.25rem); }
.module-preview-layout .lead-small { max-width: 34rem; margin-bottom: 1.5rem; }
.module-preview-list { border-top: 1px solid var(--line-strong); }
.module-preview-list a {
    display: grid;
    grid-template-columns: 2.5rem minmax(9rem, .7fr) minmax(13rem, 1.3fr) 2rem;
    gap: 1rem;
    align-items: center;
    min-height: 5.25rem;
    padding: .8rem .25rem;
    border-bottom: 1px solid var(--line);
    text-decoration: none;
}
.module-preview-list a:hover { background: color-mix(in srgb, var(--surface) 70%, transparent); }
.module-preview-list span,
.module-preview-list small { color: var(--text-soft); font-family: var(--font-mono); font-size: .58rem; }
.module-preview-list strong { font-size: .88rem; }
.module-preview-list small {
    display: -webkit-box;
    overflow: hidden;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.module-preview-list b { justify-self: end; font-size: .85rem; }

/* The quick index is intentionally styled independently from the cards.
   It remains useful even when a browser jumps directly to /modules/. */
.module-index-section {
    position: relative;
    padding: 0 0 clamp(3.5rem, 6vw, 6rem);
    border-bottom: 1px solid var(--line);
}
.module-index-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--line-strong);
    border-left: 1px solid var(--line-strong);
    background: var(--surface);
}
.module-index-grid a {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr) 1rem;
    gap: .75rem;
    align-items: start;
    min-height: 7rem;
    padding: 1rem;
    border-right: 1px solid var(--line-strong);
    border-bottom: 1px solid var(--line-strong);
    text-decoration: none;
    transition: background .15s var(--ease), color .15s var(--ease);
}
.module-index-grid a:hover,
.module-index-grid a:focus-visible {
    background: var(--text);
    color: var(--bg);
}
.module-index-grid span {
    color: var(--text-soft);
    font-family: var(--font-mono);
    font-size: .56rem;
}
.module-index-grid strong {
    align-self: center;
    font-size: .82rem;
    line-height: 1.35;
}
.module-index-grid b {
    justify-self: end;
    font-size: .75rem;
    font-weight: 500;
}
.module-index-grid a:hover span,
.module-index-grid a:focus-visible span { color: currentColor; opacity: .66; }
.module-catalog-empty {
    margin-bottom: 3rem;
    padding: 1.2rem;
    border: 1px solid var(--line-strong);
    background: var(--surface);
}
.module-catalog-empty p { margin: 0; color: var(--text-soft); }

.modules-hero {
    padding: clamp(4.5rem, 8vw, 8rem) 0;
}
.modules-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(25rem, .8fr);
    gap: clamp(3rem, 8vw, 8rem);
    align-items: end;
}
.modules-hero h1 {
    max-width: 12ch;
    margin-bottom: 1.6rem;
    font-size: clamp(3rem, 6vw, 6rem);
}
.modules-hero .lead { max-width: 50rem; }
.modules-hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }
.modules-hero-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
    border: 1px solid var(--line-strong);
    background: var(--surface);
}
.modules-hero-stats > div { min-height: 9rem; padding: 1.15rem; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.modules-hero-stats > div:nth-child(2n) { border-right: 0; }
.modules-hero-stats > div:nth-last-child(-n+2) { border-bottom: 0; }
.modules-hero-stats dt { color: var(--text-soft); font-family: var(--font-mono); font-size: .57rem; letter-spacing: .09em; text-transform: uppercase; }
.modules-hero-stats dd { margin: 1.4rem 0 0; font-size: 2.5rem; font-weight: 500; line-height: .9; }
.modules-hero-stats dd small { display: block; margin-top: .7rem; color: var(--text-soft); font-family: var(--font-mono); font-size: .52rem; font-weight: 500; letter-spacing: .05em; }
.modules-pipeline-section,
.modules-catalog-section,
.modules-boundaries,
.modules-contract-section,
.modules-final-cta { padding: clamp(4.5rem, 7vw, 7rem) 0; }
.modules-section-heading h2,
.modules-catalog-intro h2,
.modules-boundaries h2,
.modules-contract-section h2,
.modules-final-cta h2 { font-size: clamp(2.2rem, 4.2vw, 4.15rem); }
.module-pipeline {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border: 1px solid var(--line-strong);
    background: var(--surface);
}
.module-pipeline article {
    position: relative;
    min-height: 19rem;
    padding: 1.3rem;
    border-right: 1px solid var(--line);
}
.module-pipeline article:last-child { border-right: 0; }
.module-pipeline article > span { color: var(--text-soft); font-family: var(--font-mono); font-size: .58rem; }
.module-pipeline svg { width: 3rem; margin: 3.2rem 0 2rem; fill: none; stroke: currentColor; stroke-width: 1.2; vector-effect: non-scaling-stroke; }
.module-pipeline h3 { margin-bottom: .75rem; font-size: 1.2rem; }
.module-pipeline p { margin: 0; color: var(--text-soft); font-size: .8rem; line-height: 1.6; }
.modules-catalog-intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(20rem, .78fr);
    gap: clamp(2rem, 7vw, 7rem);
    align-items: end;
    margin-bottom: 4rem;
}
.modules-catalog-intro h2 { max-width: 14ch; margin: 0; }
.modules-catalog-intro .lead-small { margin-bottom: 1rem; }
.modules-catalog-intro .module-rule-version { color: var(--text-soft); }
.module-group { margin-bottom: clamp(4rem, 7vw, 7rem); }
.module-group:last-child { margin-bottom: 0; }
.module-group-heading {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(20rem, 1.15fr);
    gap: 2rem;
    align-items: end;
    padding-bottom: 1.3rem;
    border-bottom: 1px solid var(--line-strong);
}
.module-group-heading > div { display: flex; gap: 1rem; align-items: baseline; }
.module-group-heading span { color: var(--text-soft); font-family: var(--font-mono); font-size: .6rem; }
.module-group-heading h3 { margin: 0; font-size: 1.65rem; }
.module-group-heading > p { max-width: 45rem; margin: 0; color: var(--text-soft); font-size: .82rem; }
.module-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-left: 1px solid var(--line-strong);
}
.module-detail-card {
    min-width: 0;
    padding: 1.35rem;
    border-right: 1px solid var(--line-strong);
    border-bottom: 1px solid var(--line-strong);
    background: var(--surface);
    scroll-margin-top: 7rem;
}
.module-detail-card > header { display: flex; gap: 1rem; justify-content: space-between; align-items: start; }
.module-detail-card > header > div { display: flex; gap: .55rem; align-items: center; }
.module-detail-number,
.module-detail-status,
.module-detail-card code,
.module-detail-signals h5,
.module-detail-output > span,
.module-detail-card footer > span {
    font-family: var(--font-mono);
    font-size: .54rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.module-detail-number { color: var(--text-soft); }
.module-detail-status { padding: .25rem .42rem; border: 1px solid var(--line); background: var(--bg); }
.module-detail-card code { max-width: 46%; overflow: hidden; color: var(--text-soft); text-overflow: ellipsis; white-space: nowrap; }
.module-detail-card h4 { margin: 2.5rem 0 .8rem; font-size: 1.55rem; font-weight: 520; letter-spacing: -.035em; }
.module-detail-summary { max-width: 50rem; min-height: 4.8rem; margin-bottom: 1.6rem; color: var(--text-soft); font-size: .82rem; line-height: 1.65; }
.module-detail-signals { padding: 1rem 0; border-block: 1px solid var(--line); }
.module-detail-signals h5 { margin: 0 0 .8rem; color: var(--text-soft); }
.module-detail-signals ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem 1rem; margin: 0; padding: 0; list-style: none; }
.module-detail-signals li { position: relative; padding-left: .85rem; color: var(--text-soft); font-size: .72rem; }
.module-detail-signals li::before { position: absolute; top: .68em; left: 0; width: .28rem; height: .28rem; border: 1px solid currentColor; border-radius: 50%; content: ""; }
.module-detail-output { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--line); }
.module-detail-output > span { color: var(--text-soft); }
.module-detail-output p { margin: 0; font-size: .76rem; line-height: 1.55; }
.module-detail-card footer { display: flex; gap: 1rem; justify-content: space-between; align-items: center; padding-top: 1rem; }
.module-detail-card footer > span { color: var(--text-soft); }
.module-detail-card footer div { display: flex; flex-wrap: wrap; gap: .35rem; justify-content: flex-end; }
.module-detail-card footer b { padding: .25rem .4rem; border: 1px solid var(--line); background: var(--bg); font-family: var(--font-mono); font-size: .5rem; font-weight: 600; }
.modules-boundaries-grid {
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
    gap: clamp(3rem, 8vw, 8rem);
    align-items: start;
}
.modules-boundaries h2 { max-width: 13ch; }
.module-boundary-list { border-top: 1px solid var(--inverse-line); }
.module-boundary-list article { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: 1rem; padding: 1.2rem 0; border-bottom: 1px solid var(--inverse-line); }
.module-boundary-list article > span { color: var(--inverse-soft); font-family: var(--font-mono); font-size: .58rem; }
.module-boundary-list h3 { margin: 0 0 .45rem; font-size: 1rem; }
.module-boundary-list p { margin: 0; color: var(--inverse-soft); font-size: .75rem; line-height: 1.55; }
.modules-contract-grid,
.modules-final-cta-grid {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(20rem, 1.15fr);
    gap: clamp(3rem, 8vw, 8rem);
    align-items: center;
}
.code-sample {
    margin: 0;
    padding: 1.5rem;
    overflow: auto;
    border: 1px solid var(--line-strong);
    background: var(--surface);
    font-size: .75rem;
    line-height: 1.8;
}
.modules-final-cta { border-top: 1px solid var(--line); }
.modules-final-cta h2 { max-width: 13ch; margin: 0; }
.modules-final-cta .lead-small { max-width: 42rem; margin-bottom: 1.5rem; }

@media (max-width: 72rem) {
    .engine-telemetry-primary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .engine-telemetry-primary .telemetry-card:nth-child(2) { border-right: 0; }
    .engine-telemetry-primary .telemetry-card:nth-child(-n+2) { border-bottom: 1px solid var(--inverse-line); }
    .engine-telemetry-secondary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .engine-telemetry-secondary > div:nth-child(3) { border-right: 0; }
    .engine-telemetry-secondary > div:nth-child(n+4) { border-top: 0; }
    .home-ranking-grid { grid-template-columns: 1fr; }
    .home-ranking-band { border-right: 0; border-bottom: 1px solid var(--line-strong); }
    .home-ranking-band:last-child { border-bottom: 0; }
    .home-ranking-band > header { min-height: auto; }
    .modules-hero-grid { grid-template-columns: 1fr; }
    .module-index-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .module-pipeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .module-pipeline article:nth-child(2) { border-right: 0; }
    .module-pipeline article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
}

@media (max-width: 54rem) {
    .engine-telemetry-heading,
    .home-ranking-heading,
    .modules-catalog-intro,
    .module-group-heading,
    .module-preview-layout,
    .modules-boundaries-grid,
    .modules-contract-grid,
    .modules-final-cta-grid { grid-template-columns: 1fr; gap: 1.5rem; }
    .engine-telemetry-status { grid-template-columns: 1fr; }
    .engine-telemetry-status > span,
    .engine-telemetry-status > span:nth-child(3) { border-right: 0; border-bottom: 1px solid var(--inverse-line); }
    .engine-telemetry-status .telemetry-privacy-note { border-bottom: 0; }
    .module-card-grid { grid-template-columns: 1fr; }
    .module-index-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .module-preview-list a { grid-template-columns: 2rem minmax(0, 1fr) 1.5rem; }
    .module-preview-list small { grid-column: 2 / 3; }
    .module-preview-list b { grid-column: 3; grid-row: 1 / span 2; }
}

@media (max-width: 36rem) {
    .engine-telemetry-primary,
    .engine-telemetry-secondary,
    .module-index-grid,
    .module-pipeline,
    .modules-hero-stats { grid-template-columns: 1fr; }
    .engine-telemetry-primary .telemetry-card:nth-child(n),
    .engine-telemetry-secondary > div:nth-child(n),
    .module-pipeline article:nth-child(n),
    .modules-hero-stats > div:nth-child(n) { border-right: 0; border-bottom: 1px solid var(--inverse-line); }
    .engine-telemetry-primary .telemetry-card:last-child,
    .engine-telemetry-secondary > div:last-child,
    .module-pipeline article:last-child,
    .modules-hero-stats > div:last-child { border-bottom: 0; }
    .module-pipeline article { min-height: auto; }
    .home-ranking-band li a { grid-template-columns: 1.7rem minmax(0, 1fr) 3.75rem; }
    .home-ranking-delta { grid-column: 2 / 4; text-align: left; }
    .module-detail-signals ul { grid-template-columns: 1fr; }
    .module-detail-output { grid-template-columns: 1fr; gap: .45rem; }
    .module-detail-card footer { align-items: flex-start; flex-direction: column; }
    .module-detail-card footer div { justify-content: flex-start; }
}


/* Scanapse 1.5.1 - synchronized telemetry, wall, and module catalogue */
.module-index-heading { padding: 1rem 0; border-top: 1px solid var(--line-strong); }
.engine-telemetry-heading h2,
.home-ranking-heading h2 { font-size: clamp(2.4rem, 4.8vw, 4.8rem); }
.modules-hero h1 { max-width: 15ch; font-size: clamp(2.8rem, 5.4vw, 5.4rem); }
.modules-section-heading h2,
.modules-catalog-intro h2,
.modules-boundaries h2,
.modules-contract-section h2,
.modules-final-cta h2 { font-size: clamp(2rem, 3.6vw, 3.5rem); }
.scan-ledger-table { min-width: 64rem; }
.scan-ledger-row { grid-template-columns: minmax(11rem, 1.7fr) .65fr 1fr .65fr .6fr .55fr 1.25fr; }

/* Scanapse 2.0 evidence-first report */
.v2-report-header { padding: clamp(4rem, 8vw, 8rem) 0 2rem; }
.v2-report-hero { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(18rem, .5fr); gap: clamp(2rem, 5vw, 6rem); align-items: end; }
.v2-report-hero h1 { margin-bottom: 1.5rem; font-size: clamp(3rem, 7vw, 7rem); overflow-wrap: anywhere; }
.v2-report-hero h2 { max-width: 56rem; margin-top: 3rem; font-size: clamp(2rem, 4vw, 4.3rem); }
.v2-coverage-card { padding: 1.5rem; border: 1px solid var(--line); background: var(--surface); }
.v2-coverage-card > span, .v2-dimension-id, .v2-signal-meta, .v2-relation-grid span, .v2-change-list span, .v2-unknown-grid span { color: var(--text-soft); font-family: var(--font-mono); font-size: .65rem; letter-spacing: .06em; text-transform: uppercase; }
.v2-coverage-card > strong { display: block; margin: 1rem 0; font-size: clamp(4rem, 8vw, 7rem); font-weight: 320; letter-spacing: -.08em; line-height: .85; }
.v2-coverage-card > strong small { color: var(--text-soft); font-size: 1rem; letter-spacing: 0; }
.v2-coverage-card progress, .v2-dimension-card progress { width: 100%; height: 3px; border: 0; background: var(--line); appearance: none; }
.v2-coverage-card progress::-webkit-progress-bar, .v2-dimension-card progress::-webkit-progress-bar { background: var(--line); }
.v2-coverage-card progress::-webkit-progress-value, .v2-dimension-card progress::-webkit-progress-value { background: var(--text); }
.v2-coverage-card progress::-moz-progress-bar, .v2-dimension-card progress::-moz-progress-bar { background: var(--text); }
.v2-coverage-card p { margin: 1rem 0 0; color: var(--text-soft); font-size: .78rem; }
.v2-dimension-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--line); }
.v2-dimension-card { min-height: 18rem; padding: 1.4rem; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.v2-dimension-card:nth-child(3n) { border-right: 0; }
.v2-dimension-card:nth-last-child(-n+3) { border-bottom: 0; }
.v2-dimension-card h3 { margin: 1.6rem 0 .8rem; }
.v2-band-label { display: block; margin-bottom: 2rem; font-size: 1rem; font-weight: 550; }
.v2-dimension-card dl { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin: 0 0 1rem; }
.v2-dimension-card dl div { border-top: 1px solid var(--line); padding-top: .7rem; }
.v2-dimension-card dt, .v2-dimension-card small { color: var(--text-soft); font-size: .7rem; }
.v2-dimension-card dd { margin: .2rem 0 0; font-family: var(--font-mono); }
.v2-dimension-card small { display: block; margin-top: 1rem; font-family: var(--font-mono); }
.v2-signal-list { border-top: 1px solid var(--inverse-line); }
.v2-signal-item { padding: 2rem 0; border-bottom: 1px solid var(--inverse-line); }
.v2-signal-item h3 { max-width: 62rem; margin: .7rem 0; color: var(--inverse-text); }
.v2-signal-item p { max-width: 72rem; color: var(--inverse-soft); }
.v2-signal-meta { display: flex; flex-wrap: wrap; gap: .75rem; }
.v2-signal-meta span { padding: .25rem .45rem; border: 1px solid var(--inverse-line); color: var(--inverse-soft); }
.v2-limitation { padding-left: 1rem; border-left: 2px solid var(--inverse-line); }
.v2-relation-grid, .v2-unknown-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--line); }
.v2-relation-grid article, .v2-unknown-grid article { min-height: 10rem; padding: 1.2rem; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.v2-relation-grid strong { display: block; margin: .8rem 0 .3rem; font-family: var(--font-mono); font-size: .78rem; }
.v2-relation-grid p { color: var(--text-soft); overflow-wrap: anywhere; }
.v2-change-list { border-top: 1px solid var(--line); }
.v2-change-list article { display: grid; grid-template-columns: 7rem minmax(0, 1fr) minmax(0, 1.3fr); gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--line); align-items: baseline; }
.v2-change-list p { margin: 0; color: var(--text-soft); font-family: var(--font-mono); font-size: .72rem; overflow-wrap: anywhere; }
.v2-evidence-list { border-top: 1px solid var(--line); }
.v2-evidence-list details { border-bottom: 1px solid var(--line); }
.v2-evidence-list summary { display: grid; grid-template-columns: minmax(8rem, .5fr) 1fr; gap: 1rem; padding: 1rem 0; cursor: pointer; }
.v2-evidence-list summary span, .v2-evidence-list small { color: var(--text-soft); font-family: var(--font-mono); font-size: .66rem; }
.v2-evidence-list details > div { padding: 0 0 1.5rem; }
.v2-evidence-list details p { max-width: 70rem; font-family: var(--font-mono); font-size: .72rem; overflow-wrap: anywhere; }
.v2-unknowns-section .v2-unknown-grid { border-color: var(--inverse-line); }
.v2-unknowns-section .v2-unknown-grid article { border-color: var(--inverse-line); }
.v2-unknowns-section .v2-unknown-grid h3 { margin: .8rem 0; color: var(--inverse-text); }
.v2-unknowns-section .v2-unknown-grid p { color: var(--inverse-soft); }
.v2-unknown-grid article { min-width: 0; }
.v2-unknown-grid p { overflow-wrap: anywhere; }
.v2-methodology-section .microcopy { max-width: 60rem; margin: 2rem 0; }

@media (max-width: 900px) {
    .v2-report-hero { grid-template-columns: 1fr; }
    .v2-dimension-grid, .v2-relation-grid, .v2-unknown-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .v2-dimension-card:nth-child(n), .v2-relation-grid article, .v2-unknown-grid article { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
    .v2-dimension-card:nth-child(2n), .v2-relation-grid article:nth-child(2n), .v2-unknown-grid article:nth-child(2n) { border-right: 0; }
}

@media (max-width: 620px) {
    .v2-dimension-grid, .v2-relation-grid, .v2-unknown-grid { grid-template-columns: 1fr; }
    .v2-dimension-card:nth-child(n), .v2-relation-grid article:nth-child(n), .v2-unknown-grid article:nth-child(n) { min-height: auto; border-right: 0; border-bottom: 1px solid var(--line); }
    .v2-change-list article { grid-template-columns: 1fr; gap: .3rem; }
    .v2-evidence-list summary { grid-template-columns: 1fr; gap: .25rem; }
}

/* Scanapse 2.0 knowledge observatory */
.v2-observatory-list { border-top: 1px solid var(--line); }
.v2-observatory-row { border-bottom: 1px solid var(--line); }
.v2-observatory-row > a { display: grid; grid-template-columns: minmax(14rem, 1.4fr) minmax(0, 2fr); gap: 2rem; padding: 1.4rem 0; color: inherit; text-decoration: none; }
.v2-observatory-row > a:hover h3 { text-decoration: underline; text-underline-offset: .2em; }
.v2-observatory-domain > span, .v2-observatory-domain small { color: var(--text-soft); font-family: var(--font-mono); font-size: .65rem; }
.v2-observatory-domain h3 { margin: .3rem 0 .7rem; overflow-wrap: anywhere; }
.v2-observatory-metrics { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0; }
.v2-observatory-metrics div { padding: .5rem .8rem; border-left: 1px solid var(--line); }
.v2-observatory-metrics dt { color: var(--text-soft); font-size: .67rem; }
.v2-observatory-metrics dd { margin: .35rem 0 0; font-family: var(--font-mono); font-size: 1.05rem; }
.v2-observatory-row > progress { display: block; width: 100%; height: 2px; border: 0; background: var(--line); appearance: none; }
.v2-observatory-row > progress::-webkit-progress-bar { background: var(--line); }
.v2-observatory-row > progress::-webkit-progress-value { background: var(--text); }
.v2-observatory-row > progress::-moz-progress-bar { background: var(--text); }
.v2-observatory-row.is-legacy { opacity: .72; }
.v2-observatory-map-section .constellation-plot { border-color: var(--inverse-line); }
.v2-observatory-map-section .constellation-zones rect, .v2-observatory-map-section .constellation-zones line { stroke: var(--inverse-line); }
.v2-observatory-map-section .constellation-zones text { fill: var(--inverse-soft); }
.v2-observatory-map-section .constellation-point circle { fill: var(--inverse-text); stroke: var(--inverse-text); }
.v2-observatory-map-section .constellation-point text { fill: var(--inverse-text); }

@media (max-width: 900px) {
    .v2-observatory-row > a { grid-template-columns: 1fr; gap: 1rem; }
    .v2-observatory-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
    .v2-observatory-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .v2-observatory-metrics div { min-height: 4.5rem; }
}

/* Scanapse 2.1 intelligent Evidence-first dashboard */
.dashboard-hero { padding: clamp(3.5rem, 8vw, 7rem) 0 3rem; }
.dashboard-reading-nav { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1.2rem; }
.dashboard-reading-nav a { border:1px solid var(--line); border-radius:999px; padding:.45rem .8rem; text-decoration:none; background:var(--surface); }
.dashboard-reading-nav a:hover,.dashboard-reading-nav a:focus-visible { border-color:var(--line-strong); }
.dashboard-hero-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr); gap:clamp(2rem,5vw,5rem); align-items:start; }
.dashboard-domain { color:var(--text-soft); font-size:.82rem; letter-spacing:.06em; text-transform:uppercase; margin-bottom:.8rem; overflow-wrap:anywhere; }
.dashboard-hero h1 { max-width:13ch; font-size:clamp(2.7rem,7vw,6rem); }
.dashboard-meta-line { display:flex; flex-wrap:wrap; gap:.65rem 1rem; margin-top:1.5rem; color:var(--text-soft); font-family:var(--font-mono); font-size:.72rem; }
.dashboard-summary-card { border:1px solid var(--line); border-radius:var(--radius-md); padding:1.1rem; background:var(--surface); min-width:0; }
.dashboard-summary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); }
.dashboard-summary-grid > div { min-width:0; background:var(--bg); padding:1rem; }
.dashboard-summary-grid span { display:block; color:var(--text-soft); font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; }
.dashboard-summary-grid strong { display:block; margin-top:.35rem; font-size:1.7rem; font-weight:500; overflow-wrap:anywhere; }
.dashboard-summary-grid strong.textual { font-size:.95rem; line-height:1.35; }
.dashboard-summary-card progress { width:100%; margin-top:1rem; accent-color:var(--success); }
.dashboard-summary-card p { color:var(--text-soft); font-size:.8rem; margin:.55rem 0 0; }
.dashboard-drift-list { border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden; }
.dashboard-drift-list article { display:grid; grid-template-columns:8rem minmax(0,1fr); gap:1rem; padding:1rem 1.15rem; border-bottom:1px solid var(--line); }
.dashboard-drift-list article:last-child { border-bottom:0; }
.dashboard-drift-list p { margin:.25rem 0 0; color:var(--text-soft); overflow-wrap:anywhere; }
.dashboard-change-status { font-family:var(--font-mono); font-size:.7rem; color:var(--text-soft); }
.dashboard-empty { padding:1.25rem; border:1px dashed var(--line-strong); border-radius:var(--radius-md); color:var(--text-soft); }
.dependency-evidence-graph-wrap { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr); gap:2rem; align-items:center; }
.dependency-evidence-graph { margin:0; min-width:0; }
.dependency-evidence-graph svg { width:min(100%,38rem); margin-inline:auto; }
.graph-center-node { fill:color-mix(in srgb,var(--success) 20%, transparent); stroke:var(--success); stroke-width:1.5; }
.graph-center-text,.graph-node-text { fill:var(--text); font-family:var(--font-mono); font-size:11px; }
.graph-center-subtext,.graph-node-meta { fill:var(--text-soft); font-family:var(--font-mono); font-size:8px; }
.graph-node { fill:var(--surface); stroke-width:1.4; }
.graph-link { stroke-width:1.5; fill:none; }
.relation-observed { stroke:var(--success); }
.relation-corroborated { stroke:var(--success); stroke-width:2.5; }
.relation-inferred { stroke:var(--warning); stroke-dasharray:7 5; }
.relation-unknown { stroke:var(--text-soft); stroke-dasharray:2 5; }
.dependency-evidence-graph figcaption { color:var(--text-soft); font-size:.78rem; text-align:center; }
.dependency-graph-text { border:1px solid var(--line); border-radius:var(--radius-md); padding:1rem; min-width:0; }
.dependency-graph-text ul { list-style:none; margin:0; padding:0; display:grid; gap:.8rem; }
.dependency-graph-text li { display:grid; grid-template-columns:.75rem minmax(0,1fr); gap:.25rem .6rem; min-width:0; }
.dependency-graph-text li strong,.dependency-graph-text li span:last-child { grid-column:2; overflow-wrap:anywhere; }
.relation-state { width:.65rem; height:.65rem; border-radius:50%; margin-top:.4rem; border:1px solid currentColor; }
.dashboard-dimension-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.dashboard-dimension-card { min-width:0; border:1px solid var(--line); border-radius:var(--radius-md); padding:1rem; background:var(--surface); }
.dashboard-dimension-top { display:flex; justify-content:space-between; gap:1rem; align-items:flex-start; }
.dashboard-dimension-top > span { font-weight:600; }
.dashboard-dimension-top strong { font-size:.75rem; color:var(--text-soft); text-align:right; }
.dashboard-dimension-card dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.6rem; margin:1rem 0 .65rem; }
.dashboard-dimension-card dt { color:var(--text-soft); font-size:.68rem; text-transform:uppercase; }
.dashboard-dimension-card dd { margin:0; font-family:var(--font-mono); }
.dashboard-dimension-card progress { width:100%; accent-color:var(--success); }
.dashboard-evidence-list { display:grid; gap:1rem; }
.evidence-proof-card { border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); min-width:0; overflow:hidden; }
.evidence-proof-head { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; padding:1.1rem 1.2rem; cursor:pointer; list-style:none; }
.evidence-proof-head::-webkit-details-marker { display:none; }
.evidence-proof-head::after { content:"+"; font-family:var(--font-mono); color:var(--text-soft); margin-left:auto; }
.evidence-proof-card[open] .evidence-proof-head { border-bottom:1px solid var(--line); }
.evidence-proof-card[open] .evidence-proof-head::after { content:"−"; }
.evidence-proof-body { padding:0 1.2rem 1.2rem; }
.evidence-proof-plain { margin:.45rem 0 0; color:var(--text-soft); max-width:66ch; }
.evidence-km-callout { margin:1rem 0; padding:1rem; border-left:3px solid var(--success); background:color-mix(in srgb,var(--success) 8%,var(--surface)); }
.evidence-km-callout p { margin:.25rem 0 0; }
.evidence-normative-context { margin-top:1rem; padding:1rem; border:1px solid var(--line); border-radius:var(--radius-sm); background:var(--surface-2); }
.evidence-normative-context h4 { margin:0; }
.evidence-normative-context p { color:var(--text-soft); }
.evidence-normative-context ul { margin:.75rem 0 0; padding-left:1.25rem; }
.evidence-proof-index { font-family:var(--font-mono); color:var(--text-soft); font-size:.72rem; }
.evidence-proof-head h3 { margin:.3rem 0 0; font-size:1.25rem; }
.evidence-proof-tags { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.35rem; }
.evidence-proof-tags span { border:1px solid var(--line-strong); border-radius:999px; padding:.2rem .5rem; font-size:.68rem; color:var(--text-soft); }
.evidence-proof-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem 1.4rem; margin:1rem 0 0; }
.evidence-proof-fields > div { min-width:0; }
.evidence-proof-fields .wide { grid-column:1/-1; }
.evidence-proof-fields dt { font-family:var(--font-mono); color:var(--text-soft); font-size:.68rem; text-transform:uppercase; }
.evidence-proof-fields dd { margin:.25rem 0 0; overflow-wrap:anywhere; }
.evidence-proof-raw { margin-top:1rem; border-top:1px dashed var(--line); padding-top:.8rem; }
.evidence-proof-raw summary { cursor:pointer; font-weight:600; }
.evidence-proof-raw pre,.dashboard-expert-section pre { max-width:100%; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; background:var(--surface-2); padding:1rem; border-radius:var(--radius-sm); }
.dashboard-unknown-grid,.dashboard-standards-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.dashboard-unknown-grid article { min-width:0; border:1px solid var(--line); padding:1rem; border-radius:var(--radius-md); }
.dashboard-unknown-grid article span { color:var(--text-soft); font-family:var(--font-mono); font-size:.7rem; }
.dashboard-unknown-grid article p { color:var(--text-soft); overflow-wrap:anywhere; }
.dashboard-context-notice { margin-bottom:1rem; padding:1rem 1.2rem; border-left:3px solid var(--warning); background:color-mix(in srgb,var(--warning) 9%, var(--surface)); }
.dashboard-context-notice p { margin:.25rem 0 0; color:var(--text-soft); }
.dashboard-standards-grid article { min-width:0; border:1px solid var(--line); padding:1rem; border-radius:var(--radius-md); background:var(--surface); }
.dashboard-standards-grid article > span { font-family:var(--font-mono); font-size:.68rem; color:var(--text-soft); }
.dashboard-standards-grid h3 { margin:.45rem 0; font-size:1.1rem; }
.dashboard-standards-grid p,.dashboard-standards-grid small { color:var(--text-soft); }
.dashboard-standards-grid a { display:inline-block; margin-top:.7rem; }
.dashboard-expert-section details { border:1px solid var(--line); border-radius:var(--radius-md); padding:1rem; }
.dashboard-expert-section summary { cursor:pointer; font-weight:600; }
@media (max-width: 900px) {
    .dashboard-hero-grid,.dependency-evidence-graph-wrap { grid-template-columns:1fr; }
    .dashboard-dimension-grid,.dashboard-unknown-grid,.dashboard-standards-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
    .dashboard-summary-grid,.dashboard-dimension-grid,.dashboard-unknown-grid,.dashboard-standards-grid,.evidence-proof-fields { grid-template-columns:1fr; }
    .dashboard-drift-list article { grid-template-columns:1fr; }
    .evidence-proof-head { flex-direction:column; }
    .evidence-proof-tags { justify-content:flex-start; }
    .dashboard-dimension-card dl { grid-template-columns:1fr 1fr; }
}
@media (prefers-reduced-motion: reduce) {
    .dependency-evidence-graph *, .dashboard-drift-list *, .evidence-proof-card * { animation:none !important; transition:none !important; }
}
.contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(1.5rem,4vw,4rem);align-items:start}.contact-form-card{padding:clamp(1.2rem,3vw,2rem);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.contact-form{display:grid;gap:1rem}.contact-form label{display:grid;gap:.45rem;color:var(--text-soft);font-size:.78rem;font-weight:650}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:.8rem .9rem;border:1px solid var(--line);border-radius:.55rem;background:var(--bg);color:var(--text);font:inherit}.contact-form textarea{resize:vertical;min-height:10rem}@media(max-width:760px){.contact-layout{grid-template-columns:1fr}}

/* Scanapse 2.3.1 - twelve explanatory pillars */
.dashboard-pillars-section { overflow: clip; }
.pillar-grid { display:grid; grid-template-columns:1fr; gap:.85rem; }
.pillar-card { display:flex; min-width:0; min-height:19rem; padding:1rem; flex-direction:column; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); }
.pillar-card-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.1rem; }
.pillar-number { font-family:var(--font-mono); font-size:.72rem; letter-spacing:.12em; color:var(--text-soft); }
.pillar-icon { display:grid; width:2.8rem; height:2.8rem; place-items:center; border:1px solid var(--line); border-radius:50%; }
.pillar-icon svg { width:1.6rem; height:1.6rem; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; }
.pillar-card h3 { margin-bottom:.55rem; font-size:clamp(1.05rem,2vw,1.3rem); line-height:1.2; }
.pillar-summary { margin-bottom:1rem; color:var(--text-soft); font-size:.92rem; }
.pillar-status { display:grid; gap:.45rem; margin:0 0 .8rem; }
.pillar-status div { display:flex; align-items:baseline; justify-content:space-between; gap:.8rem; padding-top:.45rem; border-top:1px solid var(--line); }
.pillar-status dt { color:var(--text-soft); font-size:.76rem; }
.pillar-status dd { margin:0; font-weight:700; font-size:.78rem; text-align:right; }
.pillar-card.state-attention { border-width:2px; }
.pillar-card.state-unknown,.pillar-card.state-untested,.pillar-card.state-partial { border-style:dashed; }
.pillar-key-elements { display:flex; flex-wrap:wrap; gap:.45rem .8rem; margin:auto 0 .9rem; color:var(--text-soft); font-family:var(--font-mono); font-size:.68rem; }
.pillar-actions { display:grid; grid-template-columns:1fr; gap:.5rem; }
.pillar-actions .button { min-height:44px; width:100%; padding:.65rem .8rem; }
.pillar-dialog { width:min(100%,46rem); max-width:none; max-height:92dvh; margin:auto 0 0; padding:0; border:1px solid var(--line); border-radius:var(--radius-lg) var(--radius-lg) 0 0; background:var(--surface); color:var(--text); box-shadow:var(--shadow); }
.pillar-dialog::backdrop { background:rgba(0,0,0,.52); }
.pillar-dialog-shell { max-height:92dvh; overflow:auto; overscroll-behavior:contain; }
.pillar-dialog-head { position:sticky; top:0; z-index:2; display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; padding:1rem; border-bottom:1px solid var(--line); background:var(--surface); }
.pillar-dialog-head h2 { margin:0; font-size:clamp(1.45rem,4vw,2.2rem); }
.pillar-dialog-close { display:grid; flex:0 0 44px; width:44px; height:44px; place-items:center; border:1px solid var(--line); border-radius:50%; background:transparent; color:inherit; cursor:pointer; font-size:1.5rem; line-height:1; }
.pillar-dialog-section { padding:1.1rem; border-bottom:1px solid var(--line); scroll-margin-top:5.5rem; }
.pillar-dialog-section:last-child { border-bottom:0; }
.pillar-dialog-section h3 { margin-bottom:.75rem; }
.pillar-question { padding:.8rem; border-left:3px solid var(--line-strong); background:var(--surface-2); }
.pillar-observation-list { display:grid; gap:.65rem; margin:0; padding:0; list-style:none; }
.pillar-observation-list li { display:grid; gap:.25rem; padding:.8rem; border:1px solid var(--line); border-radius:var(--radius-sm); }
.pillar-observation-list code,.pillar-tech-list code { overflow-wrap:anywhere; }
.pillar-unknowns { margin-top:1rem; padding:1rem; border:1px dashed var(--line-strong); }
.pillar-tech-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; margin-bottom:1rem; }
.pillar-tech-summary div { padding:.7rem; border:1px solid var(--line); }
.pillar-tech-summary dt { color:var(--text-soft); font-size:.72rem; }
.pillar-tech-summary dd { margin:.15rem 0 0; }
.pillar-tech-list { display:grid; gap:.7rem; }
.pillar-tech-list article { min-width:0; padding:.8rem; border:1px solid var(--line); border-radius:var(--radius-sm); }
.pillar-tech-list article > * { display:block; margin-bottom:.35rem; }
.pillar-tech-list pre { max-width:100%; max-height:14rem; overflow:auto; padding:.7rem; background:var(--surface-2); font-size:.72rem; white-space:pre-wrap; overflow-wrap:anywhere; }
.pillar-open:focus-visible,.pillar-dialog-close:focus-visible { outline:3px solid var(--text); outline-offset:3px; }
body:has(.pillar-dialog[open]) { overflow:hidden; }

@media (min-width:26rem) {
    .pillar-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width:48rem) {
    .pillar-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
    .pillar-actions { grid-template-columns:1fr 1fr; }
}
@media (min-width:68.75rem) {
    .pillar-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
    .pillar-dialog { width:min(46rem,calc(100vw - 4rem)); max-height:100dvh; height:100dvh; margin:0 0 0 auto; border-radius:0; }
    .pillar-dialog-shell { max-height:100dvh; }
}

/* Scanapse 2.3.1 - legacy technical dimensions stay available but collapsed */
.dashboard-legacy-details{border:1px solid var(--line);border-radius:var(--radius,1rem);padding:1rem;background:var(--surface)}
.dashboard-legacy-details>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:700;list-style-position:inside}
.dashboard-legacy-details>summary:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.dashboard-legacy-details[open]>summary{margin-bottom:1rem}

/* Scanapse 2.3.3 narrative report */
.report233-hero { padding:clamp(4rem,7vw,7rem) 0 2.2rem; border-bottom:1px solid var(--line); }
.report233-hero-grid { display:grid; grid-template-columns:1fr; gap:2rem; align-items:start; }
.report233-hero-copy { min-width:0; }
.report233-hero h1 { max-inline-size:24ch; margin:1rem 0 1.2rem; font-size:clamp(2.8rem,7vw,5.2rem); line-height:.98; }
.report233-intro { max-inline-size:62rem; }
.report233-meta { flex-wrap:wrap; }
.report233-summary-card { padding:1.15rem; border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface); }
.report233-summary-card h2 { max-inline-size:24ch; margin:.2rem 0 1rem; font-size:clamp(1.5rem,3vw,2.4rem); }
.report233-summary-list { display:grid; gap:0; margin:0; padding:0; list-style:none; }
.report233-summary-list li { display:grid; grid-template-columns:auto minmax(0,1fr); gap:1rem; align-items:start; padding:.85rem 0; border-top:1px solid var(--line); }
.report233-summary-list strong { min-width:3.4rem; font-size:1.15rem; }
.report233-summary-list span { color:var(--text-soft); }
.report233-dependency-summary { margin:.9rem 0 0; padding:.9rem; border-radius:var(--radius-sm); background:var(--surface-2); }
.report233-anchor-nav { display:flex; gap:.55rem; overflow-x:auto; padding-top:1.25rem; scrollbar-width:thin; }
.report233-anchor-nav a { flex:0 0 auto; padding:.55rem .8rem; border:1px solid var(--line); border-radius:999px; text-decoration:none; font-size:.8rem; }
.report233-section-heading > div { min-width:0; }
.report233-section-heading h2 { max-inline-size:30ch; font-size:clamp(2.2rem,5vw,4.5rem); }
.report233-section-heading .lead-small { max-inline-size:50rem; }
.report233-takeaway-grid { display:grid; grid-template-columns:1fr; gap:.85rem; }
.report233-takeaway-card,.report233-empty-takeaway { padding:1.2rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); }
.report233-takeaway-grid.count-1 .report233-takeaway-card { max-width:54rem; }
.report233-signal-meta { display:flex; flex-wrap:wrap; gap:.45rem; margin-bottom:1rem; color:var(--text-soft); font-family:var(--font-mono); font-size:.68rem; }
.report233-takeaway-card h3,.report233-empty-takeaway h3 { max-inline-size:28ch; font-size:clamp(1.3rem,2.5vw,2rem); }
.report233-takeaway-card p,.report233-empty-takeaway p { max-inline-size:60rem; }
.report233-takeaway-card small { display:block; margin-top:1rem; color:var(--text-soft); }
.report233-legacy-coverage { margin:1rem 0; padding:1rem; border:1px dashed var(--line-strong); border-radius:var(--radius-sm); }
.report233-legacy-coverage p { margin:.35rem 0 0; color:var(--text-soft); }

.dependency-group-map { display:grid; gap:1rem; }
.dependency-domain-card { display:flex; flex-wrap:wrap; align-items:baseline; gap:.55rem 1rem; padding:1rem 1.15rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface-2); }
.dependency-domain-card span { color:var(--text-soft); font-family:var(--font-mono); font-size:.68rem; text-transform:uppercase; }
.dependency-domain-card strong { overflow-wrap:anywhere; font-size:clamp(1.2rem,2vw,1.7rem); }
.dependency-group-grid { display:grid; grid-template-columns:1fr; gap:.85rem; }
.dependency-group { min-width:0; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); overflow:hidden; }
.dependency-group-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem; border-bottom:1px solid var(--line); }
.dependency-group-head h3 { max-inline-size:24ch; margin:0; font-size:1.15rem; }
.dependency-group-head > span { display:grid; min-width:2rem; height:2rem; place-items:center; border:1px solid var(--line); border-radius:50%; font-family:var(--font-mono); font-size:.68rem; }
.dependency-group-items { display:grid; }
.dependency-item { min-width:0; padding:1rem; border-bottom:1px solid var(--line); }
.dependency-item:last-child { border-bottom:0; }
.dependency-item-top { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.5rem 1rem; align-items:start; }
.dependency-item-top strong { max-inline-size:30ch; }
.dependency-item-state { color:var(--text-soft); font-size:.72rem; }
.dependency-item > p { margin:.5rem 0 .7rem; overflow-wrap:anywhere; font-family:var(--font-mono); font-size:.82rem; }
.dependency-item details { border-top:1px dashed var(--line); padding-top:.55rem; }
.dependency-item summary { cursor:pointer; color:var(--text-soft); font-size:.72rem; }
.dependency-item dl { display:grid; gap:.45rem; margin:.7rem 0 0; }
.dependency-item dl div { display:grid; grid-template-columns:5rem minmax(0,1fr); gap:.7rem; }
.dependency-item dt { color:var(--text-soft); font-size:.68rem; }
.dependency-item dd { margin:0; min-width:0; overflow-wrap:anywhere; }
.dependency-group-empty { padding:1.2rem; border:1px dashed var(--line-strong); border-radius:var(--radius-md); }

@media (min-width: 48rem) {
    .report233-takeaway-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .report233-takeaway-grid.count-1 { grid-template-columns:1fr; }
    .dependency-group-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (min-width: 64rem) {
    .report233-hero-grid { grid-template-columns:minmax(0,1.3fr) minmax(22rem,.7fr); gap:clamp(3rem,6vw,7rem); }
    .report233-hero h1 { font-size:clamp(3.8rem,5vw,5.2rem); }
    .report233-takeaway-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .report233-takeaway-grid.count-1 { grid-template-columns:minmax(0,1fr); }
    .report233-takeaway-grid.count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .dependency-group-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width: 760px) {
    .report233-hero { padding-top:3rem; }
    .report233-hero h1 { font-size:clamp(2.5rem,12vw,3.7rem); }
    .report233-summary-list li { grid-template-columns:1fr; gap:.2rem; }
    .report233-anchor-nav { margin-inline:0; width:100%; padding-inline:max(.65rem,calc((100vw - var(--shell))/2)); }
    .dependency-item dl div { grid-template-columns:1fr; gap:.15rem; }
}

/* Scanapse 2.3.4 visual pass */
.header-baseline {
    display:none;
    color:var(--text-soft);
    font-size:.72rem;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.home233-hero,
.report233-hero {
    background:
        radial-gradient(circle at top right, color-mix(in srgb, var(--brand) 12%, transparent), transparent 34%),
        radial-gradient(circle at left center, color-mix(in srgb, var(--success) 10%, transparent), transparent 28%);
}

.home233-dossier-card,
.report233-summary-card,
.report233-reading-card,
.report233-takeaway-card,
.pillar-card,
.pillar-dialog-shell {
    box-shadow:0 18px 40px rgba(9, 24, 43, .05);
}

.home233-dossier-card {
    border-color:color-mix(in srgb, var(--brand) 18%, var(--line));
}

.home233-dossier-list {
    display:grid;
    gap:.9rem;
    margin:1.25rem 0 0;
    padding:0;
    list-style:none;
}

.home233-dossier-list li {
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:.9rem;
    align-items:start;
    padding:.9rem 0;
    border-top:1px solid var(--line);
}

.home233-dossier-list li > span {
    display:grid;
    place-items:center;
    width:2rem;
    height:2rem;
    border-radius:999px;
    background:color-mix(in srgb, var(--brand) 12%, var(--surface-2));
    color:var(--text);
    font-family:var(--font-mono);
    font-size:.72rem;
}

.home233-dossier-list strong,
.home233-dossier-list p {
    margin:0;
}

.home233-dossier-list p {
    margin-top:.25rem;
    color:var(--text-soft);
}

.home233-pillar-card {
    position:relative;
    overflow:hidden;
}

.home233-pillar-card::before,
.pillar-card::before,
.report233-reading-card::before,
.report233-summary-card::before {
    content:"";
    position:absolute;
    inset:0 auto auto 0;
    width:100%;
    height:3px;
    background:linear-gradient(90deg, color-mix(in srgb, var(--brand) 70%, white), color-mix(in srgb, var(--warning) 62%, white));
}

.home233-pillar-top,
.pillar-card-identity,
.pillar-dialog-head-main {
    display:flex;
    align-items:center;
    gap:.75rem;
}

.home233-pillar-icon,
.pillar-card-icon,
.pillar-dialog-icon {
    width:2.55rem;
    height:2.55rem;
    border-radius:999px;
    background:color-mix(in srgb, var(--brand) 10%, var(--surface-2));
    border:1px solid color-mix(in srgb, var(--brand) 15%, var(--line));
}

.home233-pillar-icon svg,
.pillar-card-icon svg,
.pillar-dialog-icon svg {
    stroke:currentColor;
    stroke-width:1.75;
    stroke-linecap:round;
    stroke-linejoin:round;
    width:100%;
    height:100%;
    padding:.55rem;
}

.pillar-card-head {
    display:flex;
    align-items:start;
    justify-content:space-between;
    gap:1rem;
}

.pillar-state-pill {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:2rem;
    padding:.35rem .75rem;
    border-radius:999px;
    border:1px solid var(--line);
    font-size:.72rem;
    line-height:1.1;
    white-space:nowrap;
    background:var(--surface-2);
}

.pillar-state-pill.state-observed,
.pillar-state-pill.evolution-stable,
.report233-takeaway-card.importance-info .report233-signal-meta span:first-child {
    background:color-mix(in srgb, var(--success) 14%, var(--surface-2));
    border-color:color-mix(in srgb, var(--success) 20%, var(--line));
}

.pillar-state-pill.state-attention,
.pillar-state-pill.state-partial,
.pillar-state-pill.evolution-changed {
    background:color-mix(in srgb, var(--warning) 16%, var(--surface-2));
    border-color:color-mix(in srgb, var(--warning) 24%, var(--line));
}

.pillar-state-pill.state-contradictory,
.pillar-state-pill.evolution-degraded,
.pillar-state-pill.evolution-removed {
    background:color-mix(in srgb, var(--danger) 14%, var(--surface-2));
    border-color:color-mix(in srgb, var(--danger) 20%, var(--line));
}

.pillar-state-pill.state-unknown,
.pillar-state-pill.evolution-unknown {
    background:var(--surface-2);
}

.pillar-card h3 {
    margin-top:1rem;
}

.pillar-detail-link {
    background:transparent;
}

.pillar-dialog-badges {
    display:flex;
    flex-wrap:wrap;
    gap:.5rem;
    margin-top:.75rem;
}

.report233-summary-card {
    position:relative;
    overflow:hidden;
    background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 78%, white), var(--surface));
}

.report233-summary-list li:first-child {
    border-top:0;
}

.report233-reading-notes {
    padding-top:1.4rem;
}

.report233-reading-grid {
    display:grid;
    grid-template-columns:1fr;
    gap:.9rem;
}

.report233-reading-card {
    position:relative;
    overflow:hidden;
    padding:1.15rem;
    border:1px solid var(--line);
    border-radius:var(--radius-md);
    background:var(--surface);
}

.report233-reading-card-accent {
    border-color:color-mix(in srgb, var(--brand) 22%, var(--line));
    background:linear-gradient(180deg, color-mix(in srgb, var(--brand) 6%, var(--surface)), var(--surface));
}

.report233-reading-value {
    display:block;
    margin-bottom:.9rem;
    font-family:var(--font-mono);
    font-size:.8rem;
    color:var(--text-soft);
    text-transform:uppercase;
    letter-spacing:.04em;
    overflow-wrap:anywhere;
}

.report233-reading-card h3 {
    margin-bottom:.5rem;
    font-size:1.1rem;
}

.report233-reading-card p {
    margin:0;
    color:var(--text-soft);
}

.report233-takeaway-card {
    position:relative;
    overflow:hidden;
}

.report233-takeaway-card.importance-high::before,
.report233-takeaway-card.importance-critical::before {
    background:linear-gradient(90deg, color-mix(in srgb, var(--danger) 68%, white), color-mix(in srgb, var(--warning) 62%, white));
}

.report233-takeaway-card.importance-medium::before {
    background:linear-gradient(90deg, color-mix(in srgb, var(--warning) 68%, white), color-mix(in srgb, var(--brand) 56%, white));
}

.report233-takeaway-card.importance-low::before,
.report233-takeaway-card.importance-info::before {
    background:linear-gradient(90deg, color-mix(in srgb, var(--success) 62%, white), color-mix(in srgb, var(--brand) 56%, white));
}

.report233-section-heading .lead-small,
.report233-summary-list span,
.report233-dependency-summary {
    max-inline-size:60rem;
}

@media (min-width: 48rem) {
    .header-baseline {
        display:inline-flex;
        align-items:center;
    }

    .report233-reading-grid {
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .pillar-card-head {
        flex-direction:column;
        align-items:flex-start;
    }

    .pillar-dialog-head-main {
        align-items:flex-start;
    }
}

/* Scanapse 2.4 explanatory dossier */
:root {
    --brand:#173b4d;
    --knowledge:#173b4d;
    --context:#5d4f79;
    --regulation:#9a681f;
    --undetermined:#6c7480;
    --knowledge-soft:#e6eef1;
    --context-soft:#eeeaf3;
    --regulation-soft:#f6eddd;
}
html[data-theme="dark"] {
    --brand:#9bc5d5;
    --knowledge:#9bc5d5;
    --context:#c5b5dc;
    --regulation:#e4bb75;
    --undetermined:#aab2bc;
    --knowledge-soft:#17303a;
    --context-soft:#2b2535;
    --regulation-soft:#3a2e1e;
}
@media (prefers-color-scheme: dark) {
    html[data-theme="system"] {
        --brand:#9bc5d5;
        --knowledge:#9bc5d5;
        --context:#c5b5dc;
        --regulation:#e4bb75;
        --undetermined:#aab2bc;
        --knowledge-soft:#17303a;
        --context-soft:#2b2535;
        --regulation-soft:#3a2e1e;
    }
}

.scanapse-angle-symbol {
    display:grid;
    place-items:center;
    color:var(--knowledge);
    border:1px solid color-mix(in srgb,var(--knowledge) 28%,var(--line));
    background:linear-gradient(145deg,color-mix(in srgb,var(--knowledge) 8%,var(--surface)),var(--surface));
}
.scanapse-angle-symbol svg { width:100%; height:100%; stroke:currentColor; stroke-width:1.55; stroke-linecap:round; stroke-linejoin:round; }
.scanapse-angle-symbol .angle-orbit { opacity:.52; stroke-dasharray:2.2 2.6; }
.scanapse-angle-symbol .angle-node { fill:var(--surface); stroke:currentColor; }
.scanapse-angle-symbol .angle-ghost { opacity:.22; }
.angle-identity { color:#365d7b; }
.angle-infrastructure { color:#4f6278; }
.angle-transport { color:#2f6b63; }
.angle-mail { color:#755a82; }
.angle-dns { color:#2f6071; }
.angle-dependencies { color:#8c6332; }
.angle-technology { color:#50649a; }
.angle-exposure { color:#875d45; }
.angle-documents { color:#6e647f; }
.angle-shield { color:#37654d; }
.angle-timeline { color:#74623d; }
.angle-evidence { color:#3d5a65; }
html[data-theme="dark"] .scanapse-angle-symbol,
html[data-theme="system"] .scanapse-angle-symbol { color:var(--knowledge); }

/* Home 2.4 */
.home240-hero { padding:clamp(3.6rem,7vw,7.6rem) 0 clamp(3.2rem,6vw,6.5rem); border-bottom:1px solid var(--line); background:radial-gradient(circle at 88% 14%,color-mix(in srgb,var(--knowledge) 14%,transparent),transparent 30%),radial-gradient(circle at 14% 72%,color-mix(in srgb,var(--context) 10%,transparent),transparent 32%); }
.home240-hero-grid { display:grid; grid-template-columns:1fr; gap:2rem; align-items:start; }
.home240-hero h1 { max-inline-size:19ch; margin:.7rem 0 1.15rem; font-size:clamp(3rem,8vw,6.2rem); line-height:.96; letter-spacing:-.04em; }
.home240-hero .lead { max-inline-size:57rem; }
.home240-scan-box { max-width:48rem; margin-top:1.5rem; padding:1rem; border:1px solid color-mix(in srgb,var(--knowledge) 32%,var(--line)); border-radius:var(--radius-lg); background:color-mix(in srgb,var(--surface) 92%,var(--knowledge-soft)); }
.home240-preview { position:relative; overflow:hidden; padding:clamp(1.2rem,3vw,2rem); border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface); box-shadow:0 22px 60px rgba(17,17,15,.08); }
.home240-preview::before { content:""; position:absolute; inset:0 0 auto; height:4px; background:linear-gradient(90deg,var(--knowledge),var(--context),var(--regulation)); }
.home240-preview h2 { margin:.35rem 0 .75rem; font-size:clamp(1.7rem,3vw,2.6rem); }
.home240-preview-flow { display:grid; gap:.1rem; margin:1.25rem 0 0; padding:0; list-style:none; }
.home240-preview-flow li { display:grid; grid-template-columns:2.5rem minmax(0,1fr); gap:.85rem; padding:1rem 0; border-top:1px solid var(--line); }
.home240-preview-flow li>span { display:grid; width:2rem; height:2rem; place-items:center; border-radius:50%; background:var(--knowledge-soft); color:var(--knowledge); font:700 .68rem var(--font-mono); }
.home240-preview-flow strong { display:block; margin-bottom:.15rem; }
.home240-preview-flow p { margin:0; color:var(--text-soft); }
.home240-section-heading { display:grid; grid-template-columns:1fr; gap:1rem; margin-bottom:clamp(1.6rem,4vw,3rem); }
.home240-section-heading h2 { max-inline-size:24ch; font-size:clamp(2.25rem,5vw,4.6rem); line-height:1; }
.home240-section-heading>p { max-inline-size:55rem; color:var(--text-soft); }
.home240-km-grid { display:grid; grid-template-columns:1fr; gap:1rem; }
.home240-km-card { min-height:14rem; padding:1.25rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); }
.home240-km-card>span { display:grid; width:2.4rem; height:2.4rem; place-items:center; border-radius:50%; font:700 .72rem var(--font-mono); background:var(--knowledge-soft); color:var(--knowledge); }
.home240-km-card:nth-child(2)>span { background:var(--context-soft); color:var(--context); }
.home240-km-card:nth-child(3)>span { background:var(--regulation-soft); color:var(--regulation); }
.home240-km-card h3 { margin:2rem 0 .6rem; font-size:1.55rem; }
.home240-km-card p { color:var(--text-soft); }
.home240-angle-grid { display:grid; grid-template-columns:1fr; gap:.9rem; }
.home240-angle-card { position:relative; display:flex; min-height:17rem; padding:1.15rem; flex-direction:column; overflow:hidden; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); transition:transform .18s var(--ease),border-color .18s var(--ease); }
.home240-angle-card:hover { transform:translateY(-3px); border-color:color-mix(in srgb,var(--knowledge) 38%,var(--line)); }
.home240-angle-symbol-wrap { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.home240-angle-number { font:700 .72rem var(--font-mono); letter-spacing:.12em; color:var(--text-soft); }
.home240-angle-icon { width:4rem; height:4rem; border-radius:1.15rem; }
.home240-angle-icon svg { padding:.55rem; }
.home240-angle-card h3 { margin:1.5rem 0 .55rem; font-size:1.2rem; }
.home240-angle-card p { margin-bottom:1.25rem; color:var(--text-soft); }
.home240-angle-card a { margin-top:auto; text-decoration:none; font-size:.82rem; font-weight:750; }
.home240-time-card { display:grid; grid-template-columns:1fr; gap:2rem; padding:clamp(1.5rem,4vw,3rem); border-radius:var(--radius-lg); background:var(--inverse-bg); color:var(--inverse-text); }
.home240-time-card p { color:var(--inverse-soft); }
.home240-time-flow { display:flex; align-items:center; justify-content:space-between; gap:.5rem; }
.home240-time-flow span { display:grid; flex:0 0 2.6rem; width:2.6rem; height:2.6rem; place-items:center; border:1px solid var(--inverse-line); border-radius:50%; font:700 .7rem var(--font-mono); }
.home240-time-flow i { height:1px; flex:1; background:var(--inverse-line); }
.home240-recent-grid { display:grid; grid-template-columns:1fr; gap:.85rem; }
.home240-recent-card { display:grid; gap:.45rem; min-height:11rem; padding:1.1rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); text-decoration:none; }
.home240-recent-card strong { font-size:1.3rem; }
.home240-recent-card p,.home240-recent-card time { color:var(--text-soft); font-size:.8rem; }
.home240-method-card,.home240-cta-card { display:grid; grid-template-columns:1fr; gap:1.5rem; padding:clamp(1.5rem,4vw,3rem); border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface); }
.home240-method-card h2,.home240-cta-card h2 { max-inline-size:24ch; font-size:clamp(2rem,4vw,3.8rem); }
.home240-cta-card { background:linear-gradient(135deg,var(--knowledge-soft),var(--surface) 52%,var(--regulation-soft)); }

/* Report 2.4 */
.report240 { overflow:clip; }
.report240-hero { padding:clamp(3.2rem,6vw,6.4rem) 0 1.7rem; border-bottom:1px solid var(--line); background:radial-gradient(circle at 90% 8%,color-mix(in srgb,var(--knowledge) 13%,transparent),transparent 30%); }
.report240-hero-grid { display:grid; grid-template-columns:1fr; gap:2rem; align-items:start; }
.report240-hero h1 { max-inline-size:19ch; margin:.8rem 0 1rem; font-size:clamp(2.8rem,7vw,5.7rem); line-height:.96; letter-spacing:-.04em; }
.report240-summary-text { max-inline-size:60rem; }
.report240-meta { display:flex; flex-wrap:wrap; gap:.5rem 1rem; margin-top:1rem; color:var(--text-soft); font:600 .68rem var(--font-mono); text-transform:uppercase; }
.report240-reading-card { position:relative; overflow:hidden; padding:1.25rem; border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface); }
.report240-reading-card::before { content:""; position:absolute; inset:0 0 auto; height:4px; background:linear-gradient(90deg,var(--knowledge),var(--context),var(--regulation)); }
.report240-reading-card h2 { margin:.3rem 0 1.1rem; font-size:clamp(1.6rem,3vw,2.4rem); }
.report240-reading-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.report240-reading-grid>div { min-width:0; padding:.85rem; border-radius:.75rem; background:var(--surface-2); }
.report240-reading-grid strong { display:block; font-size:clamp(1.55rem,4vw,2.4rem); line-height:1; }
.report240-reading-grid strong small { font-size:.7rem; color:var(--text-soft); }
.report240-reading-grid span { display:block; margin-top:.35rem; color:var(--text-soft); font-size:.76rem; }
.report240-reading-note { margin:1rem 0 0; padding-top:1rem; border-top:1px solid var(--line); color:var(--text-soft); font-size:.8rem; }
.report240-anchor-nav { display:flex; gap:.45rem; overflow-x:auto; padding-top:1.3rem; padding-bottom:.2rem; scrollbar-width:thin; }
.report240-anchor-nav a { flex:0 0 auto; padding:.5rem .78rem; border:1px solid var(--line); border-radius:999px; background:var(--surface); text-decoration:none; font-size:.76rem; font-weight:700; }
.report240-heading { display:grid; grid-template-columns:1fr; gap:1rem; margin-bottom:1.8rem; }
.report240-heading h2 { max-inline-size:26ch; font-size:clamp(2.2rem,5vw,4.4rem); line-height:1; }
.report240-heading>p { max-inline-size:54rem; color:var(--text-soft); }
.report240-takeaway-grid { display:grid; grid-template-columns:1fr; gap:.85rem; }
.report240-takeaway-card { position:relative; overflow:hidden; min-height:13rem; padding:1.1rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); }
.report240-takeaway-card::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:var(--knowledge); }
.report240-takeaway-card.importance-critical::before,.report240-takeaway-card.importance-high::before { background:var(--danger); }
.report240-takeaway-card.importance-medium::before,.report240-takeaway-card.importance-warning::before { background:var(--warning); }
.report240-takeaway-card>span { color:var(--text-soft); font:700 .68rem var(--font-mono); }
.report240-takeaway-card h3 { margin:1rem 0 .45rem; font-size:1.2rem; }
.report240-takeaway-card p,.report240-takeaway-card small { color:var(--text-soft); }
.report240-jurisdiction-grid { display:grid; grid-template-columns:1fr; gap:1rem; }
.report240-jurisdiction-card { display:flex; min-height:17rem; padding:1.4rem; flex-direction:column; justify-content:flex-end; border-radius:var(--radius-lg); background:linear-gradient(145deg,var(--context),color-mix(in srgb,var(--context) 72%,#111)); color:#fff; }
.report240-jurisdiction-card strong { margin:.45rem 0 .25rem; font-size:clamp(2.1rem,6vw,4rem); line-height:1; }
.report240-jurisdiction-card p { margin:0; opacity:.78; }
.report240-context-label { align-self:flex-start; padding:.35rem .65rem; border:1px solid rgba(255,255,255,.32); border-radius:999px; font-size:.72rem; }
.report240-jurisdiction-explain { display:grid; gap:1.2rem; padding:1.2rem; border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface); }
.report240-jurisdiction-explain h3 { margin:0 0 .45rem; font-size:1rem; }
.report240-jurisdiction-explain ul { margin:0; padding-left:1.15rem; color:var(--text-soft); }
.report240-regulation-grid { display:grid; grid-template-columns:1fr; gap:.9rem; }
.report240-regulation-card { position:relative; overflow:hidden; padding:1.15rem; border:1px solid color-mix(in srgb,var(--regulation) 28%,var(--line)); border-radius:var(--radius-md); background:linear-gradient(180deg,var(--regulation-soft),var(--surface) 11rem); }
.report240-regulation-head { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.6rem; font-size:.7rem; }
.report240-regulation-head b { padding:.28rem .55rem; border-radius:999px; background:var(--surface); border:1px solid color-mix(in srgb,var(--regulation) 30%,var(--line)); }
.report240-regulation-card h3 { margin:1rem 0 .25rem; font-size:1.55rem; }
.report240-reference { color:var(--text-soft); font-size:.72rem; }
.report240-regulation-km { padding:.75rem 0; border-top:1px solid color-mix(in srgb,var(--regulation) 18%,var(--line)); }
.report240-regulation-km strong { font-size:.76rem; }
.report240-regulation-km p { margin:.25rem 0 0; color:var(--text-soft); }
.report240-regulation-card footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.7rem; padding-top:.85rem; border-top:1px solid var(--line); }
.report240-regulation-card footer small { color:var(--text-soft); }
.report240-regulation-disclaimer { margin-top:1rem; padding:1rem; border-left:3px solid var(--regulation); background:var(--regulation-soft); }
.report240-timeline { position:relative; display:grid; gap:0; }
.report240-timeline::before { content:""; position:absolute; left:.48rem; top:.8rem; bottom:.8rem; width:1px; background:var(--line-strong); }
.report240-timeline>article { position:relative; display:grid; grid-template-columns:1.1rem minmax(0,1fr); gap:1rem; padding:0 0 1.6rem; }
.report240-timeline-dot { position:relative; z-index:1; width:1rem; height:1rem; margin-top:.2rem; border:3px solid var(--bg); border-radius:50%; background:var(--knowledge); box-shadow:0 0 0 1px var(--knowledge); }
.report240-timeline h3 { margin:.2rem 0 .3rem; font-size:1.05rem; }
.report240-timeline p,.report240-timeline small { color:var(--text-soft); }
.report240-timeline-empty { grid-template-columns:1fr!important; padding:1rem!important; border:1px dashed var(--line-strong); border-radius:var(--radius-md); }
.angle-grid240 { display:grid; grid-template-columns:1fr; gap:.9rem; }
.angle-card240 { position:relative; min-height:18rem; overflow:hidden; }
.angle-card240::before { content:""; position:absolute; inset:0 0 auto; height:3px; background:var(--knowledge); opacity:.85; }
.angle-card240-top { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.angle-card240-icon { width:4.4rem; height:4.4rem; border-radius:1.25rem; }
.angle-card240-icon svg { padding:.55rem; }
.angle-card240-statuses { display:flex; flex-wrap:wrap; gap:.35rem; margin-top:1rem; }
.angle-status240 { display:inline-flex; min-height:1.8rem; align-items:center; padding:.28rem .58rem; border:1px solid var(--line); border-radius:999px; background:var(--surface-2); font-size:.68rem; font-weight:700; }
.angle-status240.knowledge-documented { border-color:color-mix(in srgb,var(--success) 34%,var(--line)); background:color-mix(in srgb,var(--success) 10%,var(--surface)); }
.angle-status240.knowledge-partial,.angle-status240.knowledge-to_determine { color:var(--text-soft); }
.angle-status240.evolution-changed { border-color:color-mix(in srgb,var(--warning) 35%,var(--line)); background:color-mix(in srgb,var(--warning) 9%,var(--surface)); }
.angle-card240 h3 { margin:1.25rem 0 .45rem; font-size:1.3rem; }
.angle-card240-headline { color:var(--text-soft); }
.angle-card240-open { margin-top:auto; padding:.65rem 0 0; border:0; border-top:1px solid var(--line); background:transparent; color:var(--text); text-align:left; cursor:pointer; font-weight:750; }
.pillar-dialog-head240 { border-top:4px solid var(--knowledge); }
.angle-dialog240-headline { margin:0; font-size:1.2rem; font-weight:650; }
.angle-dialog240-km { display:grid; grid-template-columns:1fr; gap:.8rem; }
.angle-dialog240-km article { padding:1rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); }
.angle-dialog240-km article>span { font:700 .68rem var(--font-mono); color:var(--text-soft); }
.angle-dialog240-km h3 { margin:.5rem 0 .35rem; font-size:1rem; }
.angle-dialog240-km p { margin:0; color:var(--text-soft); }
.angle-dialog240-proof-numbers { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; }
.angle-dialog240-proof-numbers>div { padding:.8rem; border-radius:.7rem; background:var(--surface-2); }
.angle-dialog240-proof-numbers strong { display:block; font-size:1.5rem; }
.angle-dialog240-proof-numbers span { color:var(--text-soft); font-size:.68rem; }
.report240-question-grid { display:grid; grid-template-columns:1fr; gap:.8rem; }
.report240-question-grid article { padding:1rem; border:1px dashed var(--line-strong); border-radius:var(--radius-md); background:var(--surface); }
.report240-question-grid article>span { font-size:.68rem; color:var(--text-soft); }
.report240-question-grid h3 { margin:.65rem 0 .35rem; font-size:1.05rem; }
.report240-question-grid p { margin:0; color:var(--text-soft); }
.report240-evidence-summary { display:grid; grid-template-columns:auto minmax(0,1fr); gap:.4rem 1rem; align-items:center; margin-bottom:1rem; padding:1rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); }
.report240-evidence-summary strong { grid-row:1/3; font-size:clamp(2.3rem,5vw,4rem); color:var(--knowledge); }
.report240-evidence-summary span { font-weight:700; }
.report240-evidence-summary p { margin:0; color:var(--text-soft); }
.report240-evidence-disclosure { border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface); overflow:hidden; }
.report240-evidence-disclosure>summary { display:flex; min-height:4rem; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.2rem; cursor:pointer; font-weight:800; }
.report240-evidence-disclosure>summary span { font-size:1.5rem; }
.report240-evidence-disclosure[open]>summary { border-bottom:1px solid var(--line); }
.report240-evidence-disclosure .dashboard-evidence-list { padding:1rem; }
.report240-technical-disclosure { margin:1rem; border:1px dashed var(--line-strong); border-radius:var(--radius-md); }
.report240-technical-disclosure>summary { padding:1rem; cursor:pointer; font-weight:700; }
.report240-technical-disclosure pre { max-height:28rem; overflow:auto; margin:0; padding:1rem; border-top:1px dashed var(--line); background:var(--surface-2); white-space:pre-wrap; overflow-wrap:anywhere; }

@media (min-width: 40rem) {
    .home240-angle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .home240-km-grid,.home240-recent-grid,.report240-takeaway-grid,.report240-regulation-grid,.report240-question-grid,.angle-grid240 { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .angle-dialog240-km { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width: 64rem) {
    .home240-hero-grid { grid-template-columns:minmax(0,1.2fr) minmax(23rem,.8fr); gap:clamp(3rem,6vw,7rem); }
    .home240-section-heading,.report240-heading { grid-template-columns:minmax(0,1.05fr) minmax(20rem,.75fr); align-items:end; }
    .home240-km-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .home240-angle-grid,.angle-grid240 { grid-template-columns:repeat(4,minmax(0,1fr)); }
    .home240-recent-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .home240-time-card,.home240-method-card,.home240-cta-card { grid-template-columns:minmax(0,1.2fr) minmax(22rem,.8fr); align-items:center; }
    .report240-hero-grid { grid-template-columns:minmax(0,1.2fr) minmax(23rem,.8fr); gap:clamp(3rem,6vw,7rem); }
    .report240-takeaway-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .report240-jurisdiction-grid { grid-template-columns:minmax(18rem,.7fr) minmax(0,1.3fr); }
    .report240-regulation-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .report240-question-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 48rem) {
    .home240-hero h1,.report240-hero h1 { max-inline-size:none; }
    .header-baseline { display:none; }
    .report240-reading-grid { grid-template-columns:1fr 1fr; }
    .report240-anchor-nav { width:100%; margin-inline:0; padding-inline:max(.75rem,calc((100vw - var(--shell))/2)); }
}

/* Scanapse 2.4.1 visual identity: Constellation Trace */
:root {
    --signal-teal:#22b9c8;
    --signal-teal-soft:color-mix(in srgb,var(--signal-teal) 12%,transparent);
    --signal-copper:#d69a5b;
    --signal-copper-soft:color-mix(in srgb,var(--signal-copper) 13%,transparent);
    --signal-violet:#7c69c8;
    --signal-violet-soft:color-mix(in srgb,var(--signal-violet) 12%,transparent);
    --signal-ivory:#f1eee7;
    --signal-ink:#071016;
    --signal-panel:#0c171e;
    --signal-panel-2:#10212a;
    --signal-grid:color-mix(in srgb,var(--signal-teal) 10%,transparent);
    --signal-glow:0 0 0 1px color-mix(in srgb,var(--signal-teal) 16%,transparent),0 22px 60px rgba(5,19,27,.12);
}

html[data-theme="dark"] {
    --signal-grid:color-mix(in srgb,var(--signal-teal) 13%,transparent);
    --signal-glow:0 0 0 1px rgba(34,185,200,.13),0 28px 72px rgba(0,0,0,.3);
}
@media (prefers-color-scheme:dark) {
    html[data-theme="system"] {
        --signal-grid:color-mix(in srgb,var(--signal-teal) 13%,transparent);
        --signal-glow:0 0 0 1px rgba(34,185,200,.13),0 28px 72px rgba(0,0,0,.3);
    }
}

/* Brand lockup */
.site-header-241 {
    border-bottom-color:color-mix(in srgb,var(--line) 76%,transparent);
    background:color-mix(in srgb,var(--bg) 91%,transparent);
}
.site-header-241::after {
    position:absolute;
    right:0;
    bottom:-1px;
    left:0;
    height:1px;
    pointer-events:none;
    content:"";
    background:linear-gradient(90deg,transparent 0 8%,color-mix(in srgb,var(--signal-teal) 38%,transparent) 20%,transparent 42%,color-mix(in srgb,var(--signal-copper) 36%,transparent) 76%,transparent 94%);
}
.header-inner-241 { min-height:5.4rem!important; }
.brand-lockup-241,
.footer-brand-lockup-241 {
    display:flex;
    min-width:0;
    width:fit-content;
    flex-direction:column;
    align-items:flex-start;
    gap:.18rem;
}
.brand-lockup-241 .brand,
.footer-brand-lockup-241 .brand { align-items:center; }
.brand-baseline-241 {
    display:block;
    max-width:100%;
    margin-left:.15rem;
    color:var(--text-soft);
    font-family:var(--font-mono);
    font-size:.54rem;
    font-weight:700;
    line-height:1.2;
    letter-spacing:.17em;
    text-transform:uppercase;
    white-space:nowrap;
}
.brand-logo-241 { width:11.2rem!important; }
.scanapse-constellation-mark .logo-frame,
.scanapse-constellation-mark .logo-trace,
.scanapse-constellation-mark .logo-link {
    fill:none;
    stroke:currentColor;
    vector-effect:non-scaling-stroke;
}
.scanapse-constellation-mark .logo-frame { stroke-width:1.15; opacity:.72; }
.scanapse-constellation-mark .logo-trace-a { stroke-width:2.15; }
.scanapse-constellation-mark .logo-trace-b { stroke:var(--signal-teal); stroke-width:1.2; opacity:.8; }
.scanapse-constellation-mark .logo-link { stroke-width:1; opacity:.65; }
.scanapse-constellation-mark .logo-node { stroke:var(--bg); stroke-width:.75; }
.scanapse-constellation-mark .logo-node-teal { fill:var(--signal-teal); }
.scanapse-constellation-mark .logo-node-copper { fill:var(--signal-copper); }
.scanapse-constellation-mark .logo-node-violet { fill:var(--signal-violet); }
.scanapse-constellation-mark .logo-node-ivory { fill:currentColor; }
.site-header-241 .primary-nav-241 a::after { background:linear-gradient(90deg,var(--signal-teal),var(--signal-copper)); }
.site-header-241 .header-scan-241 {
    border-color:color-mix(in srgb,var(--signal-copper) 40%,var(--line));
    background:linear-gradient(105deg,color-mix(in srgb,var(--signal-violet) 82%,#111),color-mix(in srgb,var(--signal-copper) 84%,#111));
    color:#fff;
    box-shadow:0 8px 28px color-mix(in srgb,var(--signal-copper) 15%,transparent);
}
.site-header-241 .header-scan-241:hover { filter:brightness(1.08); }

/* Shared constellation field */
.home241-constellation,
.report241-constellation {
    position:absolute;
    z-index:0;
    top:1.5rem;
    right:max(-7rem,calc((100vw - var(--shell))/2 - 8rem));
    width:min(58vw,52rem);
    height:min(47vw,42rem);
    overflow:hidden;
    pointer-events:none;
    color:var(--signal-teal);
    opacity:.46;
    mask-image:linear-gradient(90deg,transparent 0,#000 22%,#000 85%,transparent 100%);
}
.home241-constellation-svg,
.report241-constellation-svg { width:100%; height:100%; }
.constellation-grid-lines path {
    fill:none;
    stroke:currentColor;
    stroke-width:.8;
    opacity:.32;
    vector-effect:non-scaling-stroke;
}
.constellation-orbits path {
    fill:none;
    stroke:url(#scanapseTraceGradient);
    stroke-width:1.15;
    vector-effect:non-scaling-stroke;
}
.constellation-nodes circle { fill:currentColor; }
.constellation-nodes circle:nth-child(3n+1) { fill:var(--signal-copper); }
.constellation-nodes circle:nth-child(4n) { fill:var(--signal-violet); }
.constellation-glow { fill:url(#scanapseNodeGlow); opacity:.2; }
.constellation-glow-b { color:var(--signal-copper); }
.constellation-glow-c { color:var(--signal-violet); }

/* Home 2.4.1 */
.home241 { position:relative; overflow:hidden; }
.home241-hero {
    position:relative;
    isolation:isolate;
    overflow:hidden;
    padding:clamp(4.8rem,9vw,9.5rem) 0 clamp(5rem,8vw,8rem);
    border-bottom:1px solid var(--line);
    background:
        radial-gradient(circle at 82% 18%,color-mix(in srgb,var(--signal-teal) 12%,transparent),transparent 30%),
        radial-gradient(circle at 72% 78%,color-mix(in srgb,var(--signal-copper) 10%,transparent),transparent 32%),
        linear-gradient(180deg,color-mix(in srgb,var(--surface) 62%,transparent),transparent);
}
.home241-hero::before,
.report241-hero::before {
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
    content:"";
    background-image:
        linear-gradient(var(--signal-grid) 1px,transparent 1px),
        linear-gradient(90deg,var(--signal-grid) 1px,transparent 1px);
    background-size:5rem 5rem;
    opacity:.35;
    mask-image:linear-gradient(90deg,transparent,#000 48%,#000 100%);
}
.home241-hero-grid { position:relative; z-index:1; }
.home241-hero-copy { max-width:57rem; }
.home241-hero .eyebrow,
.home241-km .eyebrow,
.home241-angles .eyebrow,
.home241-time .eyebrow,
.home241-recent .eyebrow,
.home241-method .eyebrow,
.home241-cta .eyebrow,
.report241 .eyebrow {
    color:color-mix(in srgb,var(--signal-teal) 74%,var(--text-soft));
}
.home241-hero h1 {
    max-inline-size:12.5ch;
    margin:.7rem 0 1.35rem;
    font-size:clamp(3.3rem,7vw,6.7rem);
    line-height:.94;
    letter-spacing:-.06em;
    text-wrap:balance;
}
.home241-hero .lead { max-width:48rem; }
.home241-hero .home240-scan-box {
    position:relative;
    max-width:49rem;
    margin-top:2rem;
    border-color:color-mix(in srgb,var(--signal-teal) 22%,var(--line));
    background:color-mix(in srgb,var(--surface) 88%,transparent);
    box-shadow:var(--signal-glow);
}
.home241-preview {
    position:relative;
    overflow:hidden;
    border-color:color-mix(in srgb,var(--signal-teal) 20%,var(--line));
    background:
        linear-gradient(145deg,color-mix(in srgb,var(--signal-panel) 94%,#111),color-mix(in srgb,var(--signal-panel-2) 92%,#111));
    color:var(--signal-ivory);
    box-shadow:0 32px 90px rgba(2,10,14,.24);
}
.home241-preview::before {
    position:absolute;
    inset:0 0 auto;
    height:3px;
    content:"";
    background:linear-gradient(90deg,var(--signal-teal),var(--signal-violet),var(--signal-copper));
}
.home241-preview .eyebrow,
.home241-preview>p,
.home241-preview-flow p { color:rgba(241,238,231,.65); }
.home241-preview-flow li>span {
    border-color:color-mix(in srgb,var(--signal-teal) 38%,transparent);
    background:color-mix(in srgb,var(--signal-teal) 13%,transparent);
    color:var(--signal-teal);
}
.home241-preview-flow li:nth-child(2)>span { border-color:color-mix(in srgb,var(--signal-violet) 45%,transparent); background:color-mix(in srgb,var(--signal-violet) 13%,transparent); color:#a796eb; }
.home241-preview-flow li:nth-child(3)>span { border-color:color-mix(in srgb,var(--signal-copper) 45%,transparent); background:color-mix(in srgb,var(--signal-copper) 13%,transparent); color:#efb979; }
.home241-preview-flow li:nth-child(4)>span { border-color:rgba(241,238,231,.28); background:rgba(241,238,231,.06); color:var(--signal-ivory); }

.home241-km { position:relative; }
.home241-km-grid { gap:1rem; }
.home241-km-card {
    position:relative;
    min-height:18rem;
    overflow:hidden;
    padding:1.45rem;
    border-color:color-mix(in srgb,var(--line) 82%,transparent);
    background:linear-gradient(165deg,var(--surface),color-mix(in srgb,var(--surface-2) 42%,var(--surface)));
    box-shadow:0 16px 50px rgba(5,18,25,.06);
}
.home241-km-card::after {
    position:absolute;
    right:-3rem;
    bottom:-3rem;
    width:10rem;
    height:10rem;
    border:1px solid currentColor;
    border-radius:50%;
    content:"";
    opacity:.09;
}
.home241-km-card>span {
    display:grid;
    width:2.5rem;
    height:2.5rem;
    place-items:center;
    border-radius:50%;
    background:var(--signal-teal-soft);
    color:var(--signal-teal);
    font-family:var(--font-mono);
    font-size:.72rem;
    font-weight:800;
}
.home241-km-context>span { background:var(--signal-violet-soft); color:var(--signal-violet); }
.home241-km-purpose>span { background:var(--signal-copper-soft); color:var(--signal-copper); }
.home241-km-card h3 { margin-top:3.6rem; font-size:clamp(1.65rem,3vw,2.4rem); }
.home241-km-card p { max-width:34rem; color:var(--text-soft); }

.home241-angles {
    background:
        radial-gradient(circle at 15% 30%,color-mix(in srgb,var(--signal-teal) 7%,transparent),transparent 30%),
        radial-gradient(circle at 88% 74%,color-mix(in srgb,var(--signal-violet) 6%,transparent),transparent 28%);
}
.home241-angle-grid { gap:.9rem; }
.home241-angle-card {
    --angle-accent:var(--signal-teal);
    position:relative;
    min-height:15.5rem;
    overflow:hidden;
    border-color:color-mix(in srgb,var(--angle-accent) 22%,var(--line));
    background:linear-gradient(160deg,color-mix(in srgb,var(--angle-accent) 5%,var(--surface)),var(--surface) 48%);
    transition:transform .24s var(--ease),border-color .24s var(--ease),box-shadow .24s var(--ease);
}
.home241-angle-card:nth-child(3n+2) { --angle-accent:var(--signal-violet); }
.home241-angle-card:nth-child(4n) { --angle-accent:var(--signal-copper); }
.home241-angle-card:hover {
    border-color:color-mix(in srgb,var(--angle-accent) 56%,var(--line));
    box-shadow:0 18px 52px color-mix(in srgb,var(--angle-accent) 10%,transparent);
    transform:translateY(-3px);
}
.home241-angle-card::after {
    position:absolute;
    right:-2.4rem;
    top:-2.4rem;
    width:8rem;
    height:8rem;
    border:1px solid color-mix(in srgb,var(--angle-accent) 18%,transparent);
    border-radius:50%;
    content:"";
}
.home241-angle-card .home240-angle-icon {
    width:3.5rem;
    height:3.5rem;
    color:var(--angle-accent);
    filter:drop-shadow(0 0 12px color-mix(in srgb,var(--angle-accent) 22%,transparent));
}
.home241-angle-card .angle-orbit { stroke:color-mix(in srgb,var(--angle-accent) 70%,currentColor); }
.home241-angle-card .angle-node { fill:var(--angle-accent); stroke:var(--surface); }
.home241-angle-card>a { color:color-mix(in srgb,var(--angle-accent) 76%,var(--text)); }

.home241-time-card {
    position:relative;
    overflow:hidden;
    min-height:23rem;
    border-color:rgba(255,255,255,.1);
    background:
        radial-gradient(circle at 72% 48%,rgba(34,185,200,.16),transparent 24%),
        radial-gradient(circle at 88% 70%,rgba(214,154,91,.14),transparent 22%),
        linear-gradient(135deg,#071016,#0a171f 60%,#11140f);
    color:var(--signal-ivory);
}
.home241-time-card::after {
    position:absolute;
    inset:auto -8rem -10rem auto;
    width:30rem;
    height:30rem;
    border:1px solid rgba(34,185,200,.18);
    border-radius:50%;
    content:"";
    box-shadow:0 0 0 4rem rgba(214,154,91,.025),0 0 0 8rem rgba(124,105,200,.018);
}
.home241-time-card p { color:rgba(241,238,231,.62); }
.home241-time-flow { position:relative; z-index:1; }
.home241-time-flow span { border-color:rgba(241,238,231,.28); background:rgba(255,255,255,.035); color:var(--signal-ivory); }
.home241-time-flow span:nth-of-type(2) { border-color:color-mix(in srgb,var(--signal-teal) 55%,transparent); color:var(--signal-teal); }
.home241-time-flow span:nth-of-type(3) { border-color:color-mix(in srgb,var(--signal-violet) 55%,transparent); color:#a999e6; }
.home241-time-flow span:nth-of-type(4) { border-color:color-mix(in srgb,var(--signal-copper) 55%,transparent); color:#efb979; }
.home241-time-flow i { background:linear-gradient(90deg,var(--signal-teal),var(--signal-violet),var(--signal-copper)); opacity:.45; }

.home241-recent-card {
    position:relative;
    overflow:hidden;
    border-color:color-mix(in srgb,var(--signal-teal) 13%,var(--line));
    background:linear-gradient(160deg,var(--surface),color-mix(in srgb,var(--signal-teal) 3%,var(--surface-2)));
    transition:border-color .2s var(--ease),transform .2s var(--ease);
}
.home241-recent-card::before {
    position:absolute;
    top:0;
    right:0;
    left:0;
    height:2px;
    content:"";
    background:linear-gradient(90deg,var(--signal-teal),transparent 55%,var(--signal-copper));
    opacity:.45;
}
.home241-recent-card:hover { border-color:color-mix(in srgb,var(--signal-teal) 36%,var(--line)); transform:translateY(-2px); }
.home241-recent-card>span { color:color-mix(in srgb,var(--signal-teal) 70%,var(--text-soft)); }

.home241-method-card {
    position:relative;
    overflow:hidden;
    border-color:color-mix(in srgb,var(--signal-teal) 16%,var(--line));
    background:
        radial-gradient(circle at 88% 40%,color-mix(in srgb,var(--signal-teal) 9%,transparent),transparent 24%),
        var(--surface);
}
.home241-method-card::before {
    position:absolute;
    right:8%;
    top:50%;
    width:11rem;
    height:11rem;
    border:1px solid color-mix(in srgb,var(--signal-teal) 20%,transparent);
    border-radius:50%;
    content:"";
    transform:translateY(-50%);
    box-shadow:0 0 0 2.6rem color-mix(in srgb,var(--signal-violet) 3%,transparent),0 0 0 5.2rem color-mix(in srgb,var(--signal-copper) 2%,transparent);
}
.home241-cta-card {
    position:relative;
    overflow:hidden;
    border-color:color-mix(in srgb,var(--signal-violet) 20%,var(--line));
    background:
        radial-gradient(circle at 84% 50%,color-mix(in srgb,var(--signal-copper) 18%,transparent),transparent 30%),
        linear-gradient(115deg,color-mix(in srgb,var(--signal-teal) 8%,var(--surface)),color-mix(in srgb,var(--signal-violet) 9%,var(--surface)) 55%,color-mix(in srgb,var(--signal-copper) 9%,var(--surface)));
    box-shadow:0 25px 70px rgba(6,18,26,.08);
}

/* Report 2.4.1 */
.report241 { position:relative; overflow:hidden; }
.report241-hero {
    position:relative;
    isolation:isolate;
    overflow:hidden;
    padding:clamp(4.5rem,8vw,8rem) 0 2.2rem;
    background:
        radial-gradient(circle at 82% 20%,color-mix(in srgb,var(--signal-teal) 12%,transparent),transparent 31%),
        radial-gradient(circle at 72% 78%,color-mix(in srgb,var(--signal-copper) 8%,transparent),transparent 27%);
}
.report241-hero-grid { position:relative; z-index:1; }
.report241-hero h1 {
    max-inline-size:12ch;
    font-size:clamp(3.35rem,6.5vw,6.5rem);
    line-height:.95;
    text-wrap:balance;
}
.report241-hero .dashboard-domain { color:color-mix(in srgb,var(--signal-teal) 72%,var(--text-soft)); }
.report241-reading-card {
    position:relative;
    overflow:hidden;
    border-color:color-mix(in srgb,var(--signal-teal) 23%,var(--line));
    background:linear-gradient(145deg,color-mix(in srgb,var(--signal-panel) 94%,#111),color-mix(in srgb,var(--signal-panel-2) 90%,#111));
    color:var(--signal-ivory);
    box-shadow:0 30px 85px rgba(3,12,17,.24);
}
.report241-reading-card::before {
    position:absolute;
    inset:0 0 auto;
    height:3px;
    content:"";
    background:linear-gradient(90deg,var(--signal-teal),var(--signal-violet),var(--signal-copper));
}
.report241-reading-card .eyebrow,
.report241-reading-card .report240-reading-note,
.report241-reading-card .report240-reading-grid span { color:rgba(241,238,231,.62); }
.report241-reading-card .report240-reading-grid div {
    border-color:rgba(241,238,231,.12);
    background:rgba(255,255,255,.025);
}
.report241-reading-card .report240-reading-grid strong { color:var(--signal-ivory); }
.report241-reading-card .report240-reading-grid div:nth-child(1) strong { color:var(--signal-teal); }
.report241-reading-card .report240-reading-grid div:nth-child(2) strong { color:var(--signal-copper); }
.report241-reading-card .report240-reading-grid div:nth-child(3) strong { color:#a99be3; }

.report241-takeaway-card {
    border-color:color-mix(in srgb,var(--signal-teal) 14%,var(--line));
    background:linear-gradient(160deg,var(--surface),color-mix(in srgb,var(--surface-2) 40%,var(--surface)));
}
.report241-context { background:linear-gradient(180deg,color-mix(in srgb,var(--signal-violet) 4%,var(--bg)),var(--bg)); }
.report241-jurisdiction-card {
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 82% 16%,rgba(255,255,255,.18),transparent 22%),
        linear-gradient(145deg,#5f4d82,#352d4d 72%,#171722);
    box-shadow:0 25px 65px rgba(59,43,88,.18);
}
.report241-jurisdiction-card::after {
    position:absolute;
    inset:auto -4rem -4rem auto;
    width:13rem;
    height:13rem;
    border:1px solid rgba(255,255,255,.15);
    border-radius:50%;
    content:"";
    box-shadow:0 0 0 2.5rem rgba(255,255,255,.025);
}
.report241-jurisdiction-explain {
    border-color:color-mix(in srgb,var(--signal-violet) 18%,var(--line));
    background:linear-gradient(160deg,color-mix(in srgb,var(--signal-violet) 4%,var(--surface)),var(--surface));
}
.report241-regulation { background:linear-gradient(180deg,var(--bg),color-mix(in srgb,var(--signal-copper) 3%,var(--bg))); }
.report241-regulation-card {
    border-color:color-mix(in srgb,var(--signal-copper) 30%,var(--line));
    background:
        linear-gradient(180deg,color-mix(in srgb,var(--signal-copper) 9%,var(--surface)),var(--surface) 9.5rem);
    box-shadow:0 16px 50px rgba(80,49,19,.05);
}
.report241-regulation-card .report240-regulation-head b {
    border-color:color-mix(in srgb,var(--signal-copper) 36%,var(--line));
    color:color-mix(in srgb,var(--signal-copper) 80%,var(--text));
}
.report241-timeline::before { background:linear-gradient(var(--signal-teal),var(--signal-violet),var(--signal-copper)); opacity:.55; }
.report241-timeline .report240-timeline-dot { background:var(--signal-teal); box-shadow:0 0 0 1px var(--signal-teal),0 0 18px rgba(34,185,200,.24); }
.report241-angles {
    background:
        radial-gradient(circle at 12% 30%,color-mix(in srgb,var(--signal-teal) 5%,transparent),transparent 28%),
        radial-gradient(circle at 88% 70%,color-mix(in srgb,var(--signal-copper) 4%,transparent),transparent 24%);
}
.report241-angles .angle-card240 {
    --angle-accent:var(--signal-teal);
    border-color:color-mix(in srgb,var(--angle-accent) 22%,var(--line));
    background:linear-gradient(160deg,color-mix(in srgb,var(--angle-accent) 5%,var(--surface)),var(--surface) 52%);
}
.report241-angles .angle-card240:nth-child(3n+2) { --angle-accent:var(--signal-violet); }
.report241-angles .angle-card240:nth-child(4n) { --angle-accent:var(--signal-copper); }
.report241-angles .angle-card240-icon { color:var(--angle-accent); }
.report241-angles .angle-card240 .angle-node { fill:var(--angle-accent); stroke:var(--surface); }
.report241-relations .dependency-group {
    border-color:color-mix(in srgb,var(--signal-teal) 14%,var(--line));
    background:linear-gradient(160deg,var(--surface),color-mix(in srgb,var(--signal-teal) 3%,var(--surface-2)));
}
.report241-question-grid,
.report241-questions .report240-question-grid { gap:.9rem; }
.report241-questions .report240-question-grid article {
    border-style:solid;
    border-color:color-mix(in srgb,var(--signal-violet) 24%,var(--line));
    background:linear-gradient(160deg,color-mix(in srgb,var(--signal-violet) 5%,var(--surface)),var(--surface));
}
.report241-evidence .report240-evidence-summary {
    border-color:color-mix(in srgb,var(--signal-teal) 22%,var(--line));
    background:linear-gradient(105deg,color-mix(in srgb,var(--signal-teal) 6%,var(--surface)),var(--surface));
}
.report241-evidence .report240-evidence-summary strong { color:var(--signal-teal); }
.report241-evidence .report240-evidence-disclosure {
    border-color:color-mix(in srgb,var(--signal-teal) 18%,var(--line));
}

.site-footer-241 {
    position:relative;
    overflow:hidden;
    border-top:1px solid color-mix(in srgb,var(--signal-teal) 16%,var(--line));
    background:
        radial-gradient(circle at 10% 0,color-mix(in srgb,var(--signal-teal) 5%,transparent),transparent 24%),
        var(--bg);
}
.footer-brand-241 .brand-logo { width:11.5rem!important; }
.footer-brand-241 .brand-baseline-241 { margin-top:.05rem; }
.footer-bottom-241 { border-top-color:color-mix(in srgb,var(--signal-copper) 18%,var(--line)); }

@media (min-width:64rem) {
    .header-inner-241 {
        grid-template-columns:minmax(12.5rem,.82fr) minmax(0,1.55fr) minmax(13rem,.82fr)!important;
        gap:1.2rem!important;
    }
    .brand-lockup-241 { justify-self:start; }
    .site-header-241 .primary-nav-241 { justify-content:center; }
    .home241-hero-grid { grid-template-columns:minmax(0,1.12fr) minmax(24rem,.72fr); gap:clamp(3rem,6vw,7rem); }
    .home241-angle-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
    .report241-hero-grid { grid-template-columns:minmax(0,1.15fr) minmax(24rem,.65fr); }
}

@media (max-width:63.99rem) {
    .header-inner-241 { grid-template-columns:minmax(0,1fr) auto!important; }
    .brand-lockup-241 { min-width:0; }
    .site-header-241 .primary-nav-241 { top:calc(100% + .65rem); }
    .home241-constellation,.report241-constellation { right:-15rem; width:44rem; height:34rem; opacity:.25; }
}

@media (max-width:48rem) {
    .header-inner-241 { min-height:5.3rem!important; }
    .brand-logo-241 { width:9.8rem!important; }
    .brand-baseline-241 {
        max-width:10.5rem;
        font-size:.45rem;
        letter-spacing:.12em;
        white-space:normal;
    }
    .home241-hero { padding-top:3.7rem; }
    .home241-hero h1,.report241-hero h1 { max-inline-size:none; font-size:clamp(2.8rem,13vw,4rem); }
    .home241-constellation,.report241-constellation { top:2rem; right:-22rem; opacity:.18; }
    .home241-km-card { min-height:14rem; }
    .home241-km-card h3 { margin-top:2.4rem; }
    .home241-angle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
    .home241-angle-card { min-height:13.5rem; padding:.9rem; }
    .home241-angle-card .home240-angle-icon { width:2.8rem; height:2.8rem; }
    .home241-time-card { min-height:22rem; }
    .home241-method-card::before { right:-4rem; opacity:.45; }
    .report241-reading-card { margin-top:.5rem; }
}

@media (max-width:28rem) {
    .home241-angle-grid { grid-template-columns:1fr; }
    .brand-baseline-241 { max-width:9.5rem; }
}

/* 2.4.1 refinements */
.home241-km-how>span { background:var(--signal-violet-soft); color:var(--signal-violet); }
.home241-km-purpose>span { background:var(--signal-copper-soft); color:var(--signal-copper); }

@media (min-width:80rem) {
    .home241-angle-grid { grid-template-columns:repeat(6,minmax(0,1fr)); }
    .home241-angle-card { min-height:16.5rem; }
}

@media (max-width:63.99rem) {
    .site-header-241 .primary-nav-241 {
        overflow:hidden;
        padding:.65rem;
        border-color:color-mix(in srgb,var(--signal-teal) 20%,var(--line));
        background:
            radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--signal-teal) 9%,transparent),transparent 26%),
            linear-gradient(160deg,var(--surface),color-mix(in srgb,var(--signal-panel) 5%,var(--surface)));
        box-shadow:0 28px 80px rgba(2,10,14,.2);
    }
    .site-header-241 .primary-nav-241::before {
        display:block;
        height:2px;
        margin:-.65rem -.65rem .65rem;
        content:"";
        background:linear-gradient(90deg,var(--signal-teal),var(--signal-violet),var(--signal-copper));
        opacity:.65;
    }
    .site-header-241 .primary-nav-241 a {
        min-height:3.25rem;
        display:flex;
        align-items:center;
        padding:.75rem 1rem;
        border-radius:.65rem;
        font-size:.92rem;
    }
    .site-header-241 .primary-nav-241 a[aria-current="page"] {
        background:color-mix(in srgb,var(--signal-teal) 8%,var(--surface-2));
        color:var(--text);
    }
}

/* Scanapse 2.4.2: denser explanatory UX */
.home242 .home241-hero {
    padding:clamp(2.8rem,5vw,4.6rem) 0 clamp(3.2rem,5vw,5rem);
}
.home242 .home241-hero h1 {
    max-inline-size:18ch;
    margin:.55rem 0 1rem;
    font-size:clamp(3rem,5vw,5rem);
    line-height:1;
    letter-spacing:-.045em;
    text-wrap:pretty;
}
.home242 .home240-section-heading,
.report242 .report242-heading {
    display:block;
    margin-bottom:clamp(1.4rem,2.5vw,2.25rem);
}
.home242 .home240-section-heading h2,
.report242 .report242-heading h2 {
    max-inline-size:30ch;
    font-size:clamp(2.1rem,3.8vw,3.5rem);
    line-height:1.03;
    letter-spacing:-.035em;
    text-wrap:pretty;
}
.home242 .home240-section-heading > p,
.report242 .report242-heading > p {
    max-inline-size:68rem;
    margin:.8rem 0 0;
    color:var(--text-soft);
}
.home242 .home241-km-card {
    min-height:14rem;
}
.home242 .home241-km-card h3 {
    margin-top:2.5rem;
}
.home242 .home241-angles {
    background:
        linear-gradient(180deg,color-mix(in srgb,var(--signal-teal) 3.5%,var(--surface)),color-mix(in srgb,var(--signal-violet) 2%,var(--bg))),
        var(--bg);
}
.home242 .home241-angle-card {
    min-height:14rem;
    background:var(--surface);
    box-shadow:0 10px 30px rgba(7,21,27,.045);
}
.home242 .home241-time-card { min-height:18rem; }

.report242 .report241-hero {
    padding:clamp(2.6rem,4.6vw,4.4rem) 0 1.5rem;
}
.report242 .report241-hero-grid {
    gap:clamp(2rem,4vw,4rem);
}
.report242 .report242-domain-title {
    max-inline-size:none;
    margin:.45rem 0 .65rem;
    font-size:clamp(3rem,5.4vw,5.2rem);
    line-height:.98;
    letter-spacing:-.05em;
    text-wrap:pretty;
}
.report242 .report242-hero-statement {
    max-inline-size:38rem;
    margin:0 0 .8rem;
    font-size:clamp(1.7rem,2.8vw,2.7rem);
    line-height:1.05;
    letter-spacing:-.025em;
    color:var(--text);
}
.report242 .report240-summary-text { max-inline-size:52rem; }
.report242 .report242-meta { margin-top:1rem; }
.report242 .report242-actions { margin-top:1.15rem; }
.report242 .report242-reading-card { align-self:start; }
.report242 .report242-anchor-nav { margin-top:1.25rem; }
.report242 > section.section {
    padding-block:clamp(3.5rem,5vw,5.4rem);
}
.report242 .report242-takeaways .report240-takeaway-grid {
    grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));
}
.report242 .report242-jurisdiction-grid {
    grid-template-columns:minmax(17rem,.7fr) minmax(0,1.3fr);
    gap:1rem;
}
.report242 .report242-regulation-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,30rem),1fr));
    gap:1rem;
}
.report242 .report242-regulation-grid > article:only-child {
    max-width:58rem;
}
.report242 .report242-timeline {
    display:grid;
    gap:.75rem;
    padding-left:0;
}
.report242 .report242-timeline::before { display:none; }
.report242 .report242-timeline > article {
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:.85rem;
    padding:1rem 1.15rem;
    border:1px solid color-mix(in srgb,var(--signal-teal) 16%,var(--line));
    border-radius:var(--radius-md);
    background:var(--surface);
}
.report242 .report242-timeline .report240-timeline-dot {
    position:static;
    width:.65rem;
    height:.65rem;
    margin-top:.4rem;
}
.report242 .report242-timeline h3 {
    margin:.2rem 0 .45rem;
    font-size:1.12rem;
}
.report242 .report242-timeline p {
    display:flex;
    flex-wrap:wrap;
    gap:.45rem;
    align-items:center;
    margin:0;
    color:var(--text-soft);
}
.report242 .report242-timeline p span {
    padding:.3rem .55rem;
    border-radius:999px;
    background:var(--surface-2);
}
.report242 .report242-timeline-empty {
    grid-template-columns:1fr;
    max-width:52rem;
}
.report242 .report242-angles {
    background:
        linear-gradient(180deg,color-mix(in srgb,var(--signal-teal) 4%,var(--surface)),color-mix(in srgb,var(--signal-violet) 2.5%,var(--bg))),
        var(--bg);
}
.report242 .report242-angles .angle-card240 {
    background:var(--surface);
    box-shadow:0 10px 28px rgba(7,21,27,.045);
}
.report242 .report242-questions .report240-question-grid article { min-height:auto; }
.report242 .report242-evidence-actions {
    display:flex;
    flex-wrap:wrap;
    gap:.7rem;
    margin-top:1rem;
    margin-bottom:1rem;
}
.report242 .report242-evidence-source-head {
    display:flex;
    align-items:center;
    gap:.55rem;
    margin-bottom:.55rem;
}
.report242 .report242-evidence-source-icon {
    width:2.15rem;
    height:2.15rem;
    border:1px solid color-mix(in srgb,var(--signal-teal) 24%,var(--line));
    border-radius:.65rem;
    color:var(--signal-teal);
    background:color-mix(in srgb,var(--signal-teal) 5%,var(--surface));
}
.report242 .report242-evidence-source-icon svg {
    width:100%;
    height:100%;
    padding:.42rem;
    stroke:currentColor;
    stroke-width:1.75;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.report242 .report242-evidence-source-name {
    font-size:.72rem;
    font-weight:700;
    color:var(--text-soft);
}
.report242 .evidence-proof-index { margin:0; }

@media (min-width:64rem) {
    .home242 .home241-hero-grid {
        grid-template-columns:minmax(0,1.2fr) minmax(23rem,.7fr);
        gap:clamp(2.4rem,4vw,4.8rem);
    }
    .report242 .report241-hero-grid {
        grid-template-columns:minmax(0,1.25fr) minmax(24rem,.7fr);
    }
}

@media (max-width:63.99rem) {
    .report242 .report242-jurisdiction-grid { grid-template-columns:1fr; }
    .report242 .report242-regulation-grid > article:only-child { max-width:none; }
}

@media (max-width:48rem) {
    .home242 .home241-hero { padding-top:2rem; }
    .home242 .home241-hero h1 { font-size:clamp(2.65rem,12vw,3.75rem); max-inline-size:none; }
    .report242 .report241-hero { padding-top:1.8rem; }
    .report242 .report242-domain-title { font-size:clamp(2.75rem,12vw,4rem); }
    .report242 .report242-hero-statement { font-size:clamp(1.55rem,7.5vw,2.1rem); }
    .home242 .home240-section-heading h2,
    .report242 .report242-heading h2 { font-size:clamp(1.9rem,8.5vw,2.75rem); max-inline-size:none; }
    .report242 > section.section { padding-block:3rem; }
    .report242 .report242-evidence-actions { display:grid; grid-template-columns:1fr; }
}

/* Scanapse 2.4.2 final density refinements */
.home242 .home241-hero {
    padding-top:clamp(1.8rem,3vw,2.8rem);
    padding-bottom:clamp(2.8rem,4vw,4rem);
}
.home242 .home241-hero h1 {
    max-inline-size:23ch;
    font-size:clamp(2.9rem,4.25vw,4.55rem);
    line-height:.98;
    text-wrap:pretty;
}
.report242 .report241-hero {
    padding-top:clamp(1.55rem,2.8vw,2.6rem);
    padding-bottom:1.25rem;
}
.home242 .home240-section-heading h2,
.report242 .report242-heading h2 {
    max-inline-size:40ch;
    font-size:clamp(2rem,3.15vw,3.1rem);
    line-height:1.04;
    text-wrap:pretty;
}
.report242 .report242-heading > p,
.home242 .home240-section-heading > p {
    max-inline-size:54rem;
}
@media (max-width:48rem) {
    .home242 .home241-hero h1 { font-size:clamp(2.5rem,10.8vw,3.45rem); }
    .home242 .home240-section-heading h2,
    .report242 .report242-heading h2 { font-size:clamp(1.85rem,7.8vw,2.55rem); }
}

/* Scanapse 2.4.3: compact, explanatory, mobile-first public UX */
:where(.home243,.report243,.public243-hero) :is(h1,h2,h3,h4) {
    max-inline-size:none;
    text-wrap:pretty;
    overflow-wrap:normal;
    word-break:normal;
}

.public243-hero {
    padding-block:clamp(2.25rem,4vw,4.25rem);
}
.public243-hero .shell > h1,
.public243-hero h1 {
    max-inline-size:28ch;
    font-size:clamp(2.25rem,4.1vw,4rem);
    line-height:1.02;
    letter-spacing:-.035em;
}
.public243-hero .lead {
    max-inline-size:58rem;
}

.home243 .home241-hero {
    padding-top:clamp(1.4rem,2.5vw,2.3rem);
    padding-bottom:clamp(2.1rem,3.6vw,3.2rem);
}
.home243 .home241-hero h1 {
    max-inline-size:24ch;
    font-size:clamp(2.7rem,4vw,4.25rem);
    line-height:.99;
}
.home243 .home241-hero-grid {
    align-items:start;
}
.home243 .home243-demo {
    margin-top:1.25rem;
    padding:1rem;
    border:1px solid color-mix(in srgb,var(--signal-teal) 28%,var(--line));
    border-radius:var(--radius-lg);
    background:linear-gradient(135deg,color-mix(in srgb,var(--signal-teal) 7%,var(--surface)),color-mix(in srgb,var(--signal-violet) 6%,var(--surface)));
    box-shadow:0 18px 50px rgba(0,0,0,.08);
}
.home243 .home243-demo-head {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:1rem;
    padding-bottom:.75rem;
    border-bottom:1px solid var(--line);
}
.home243 .home243-demo-head h2 {
    margin:.15rem 0 0;
    font-size:clamp(1.15rem,1.8vw,1.55rem);
    line-height:1.08;
}
.home243 .home243-demo-head > strong {
    padding:.35rem .55rem;
    border-radius:999px;
    background:var(--surface-2);
    font-size:.72rem;
}
.home243 .home243-demo-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.65rem;
    margin-top:.75rem;
}
.home243 .home243-demo-grid > div {
    min-width:0;
    padding:.75rem;
    border-radius:var(--radius-md);
    background:color-mix(in srgb,var(--surface) 88%,transparent);
    border:1px solid color-mix(in srgb,var(--line) 84%,transparent);
}
.home243 .home243-demo-grid span {
    display:block;
    margin-bottom:.45rem;
    color:var(--signal-teal);
    font:700 .7rem/1 var(--font-mono);
}
.home243 .home243-demo-grid strong {
    display:block;
    margin-bottom:.3rem;
}
.home243 .home243-demo-grid p {
    margin:0;
    color:var(--text-soft);
    font-size:.82rem;
    line-height:1.45;
}
.home243 .home243-demo-chain {
    margin:.75rem 0 0;
    font-family:var(--font-mono);
    font-size:.74rem;
    letter-spacing:.04em;
    color:var(--text-soft);
}
.home243 .section {
    padding-block:clamp(3rem,4.8vw,5rem);
}
.home243 .home240-section-heading h2 {
    max-inline-size:28ch;
    font-size:clamp(1.9rem,3vw,2.85rem);
}

.report243 .report241-hero {
    padding-top:clamp(1.15rem,2vw,1.9rem);
    padding-bottom:.9rem;
}
.report243 .report241-hero-grid {
    align-items:start;
    gap:clamp(1.5rem,3vw,3rem);
}
.report243 .report242-domain-title {
    font-size:clamp(2.9rem,4.8vw,4.8rem);
    line-height:.95;
}
.report243 .report242-hero-statement {
    max-inline-size:34ch;
    font-size:clamp(1.55rem,2.3vw,2.25rem);
    line-height:1.02;
    text-wrap:pretty;
}
.report243 .report240-summary-text {
    max-inline-size:62rem;
}
.report243 .report242-anchor-nav {
    margin-top:.8rem;
    padding-bottom:.75rem;
}
.report243 .report242-reading-card {
    max-width:32rem;
}
.report243 .report243-knowledge {
    padding-block:clamp(2.75rem,4vw,4.25rem);
}
.report243 .report243-knowledge-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:1rem;
    align-items:start;
}
.report243 .report243-panel,
.report243 .report243-secondary-panel {
    min-width:0;
    padding:clamp(1rem,1.8vw,1.45rem);
    border:1px solid var(--line);
    border-radius:var(--radius-lg);
    background:color-mix(in srgb,var(--surface) 94%,transparent);
}
.report243 .report243-panel-head {
    margin-bottom:1rem;
}
.report243 .report243-panel-head h2 {
    margin:.25rem 0 .55rem;
    max-inline-size:none;
    font-size:clamp(1.45rem,2.2vw,2.15rem);
    line-height:1.04;
    letter-spacing:-.025em;
}
.report243 .report243-panel-head > p:last-child {
    margin:0;
    max-inline-size:52rem;
    color:var(--text-soft);
    font-size:.92rem;
}
.report243 .report243-signal-list,
.report243 .report243-regulation-list,
.report243 .report243-trajectory-list {
    display:grid;
    gap:.7rem;
}
.report243 .report243-signal,
.report243 .report243-regulation-card,
.report243 .report243-trajectory-item,
.report243 .report243-empty {
    padding:.9rem;
    border:1px solid color-mix(in srgb,var(--line) 88%,transparent);
    border-radius:var(--radius-md);
    background:var(--surface-2);
}
.report243 .report243-signal h3,
.report243 .report243-regulation-card h3,
.report243 .report243-trajectory-item h3,
.report243 .report243-empty strong {
    display:block;
    margin:.2rem 0 .35rem;
    font-size:1rem;
    line-height:1.25;
}
.report243 .report243-signal p,
.report243 .report243-regulation-card p,
.report243 .report243-trajectory-item p,
.report243 .report243-empty p {
    margin:0;
    color:var(--text-soft);
    font-size:.88rem;
    line-height:1.5;
}
.report243 .report243-signal small {
    display:block;
    margin-top:.5rem;
    color:var(--text-soft);
}
.report243 .report243-jurisdiction-body {
    display:grid;
    grid-template-columns:minmax(10rem,.7fr) minmax(0,1.3fr);
    gap:.75rem;
}
.report243 .report243-jurisdiction-copy {
    padding:.9rem;
    border:1px solid var(--line);
    border-radius:var(--radius-md);
    background:var(--surface-2);
}
.report243 .report243-jurisdiction-copy h3 {
    margin:0 0 .4rem;
    font-size:.95rem;
}
.report243 .report243-jurisdiction-copy h3:not(:first-child) {
    margin-top:.8rem;
}
.report243 .report243-jurisdiction-copy ul {
    margin:0;
    padding-left:1.15rem;
    color:var(--text-soft);
    font-size:.87rem;
}
.report243 .report240-regulation-disclaimer {
    margin:1rem 0 0;
    padding:.75rem .85rem;
    font-size:.82rem;
}
.report243 .report243-trajectory-item p {
    display:flex;
    gap:.35rem;
    flex-wrap:wrap;
    align-items:center;
}
.report243 .report243-angles {
    padding-block:clamp(3rem,4.5vw,4.6rem);
}
.report243 .report243-secondary {
    padding-block:clamp(3rem,4.5vw,4.5rem);
}
.report243 .report243-secondary-grid {
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:1rem;
    align-items:start;
}
.report243 .report243-secondary-panel > div:not(.report243-panel-head) {
    min-width:0;
}
.report243 .report243-question-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.7rem;
}
.report243 .report243-question-grid article {
    min-height:0;
}
.report243 .report242-evidence {
    padding-top:clamp(3rem,4.5vw,4.5rem);
}

@media (min-width:72rem) {
    .report243 .report241-hero-grid {
        grid-template-columns:minmax(0,1.5fr) minmax(22rem,.6fr);
    }
    .report243 .report242-hero-statement {
        white-space:nowrap;
    }
}

@media (max-width:71.99rem) {
    .report243 .report243-jurisdiction-body {
        grid-template-columns:1fr;
    }
}

@media (max-width:63.99rem) {
    .report243 .report243-knowledge-grid,
    .report243 .report243-secondary-grid {
        grid-template-columns:1fr;
    }
}

@media (max-width:48rem) {
    .public243-hero {
        padding-block:1.75rem 2.5rem;
    }
    .public243-hero .shell > h1,
    .public243-hero h1 {
        font-size:clamp(2rem,9.5vw,2.85rem);
        line-height:1.02;
    }
    .home243 .home241-hero h1 {
        font-size:clamp(2.35rem,10vw,3.15rem);
        line-height:1;
    }
    .home243 .home243-demo-grid {
        grid-template-columns:1fr;
    }
    .home243 .home243-demo-head {
        display:grid;
    }
    .report243 .report242-domain-title {
        font-size:clamp(2.65rem,12vw,3.65rem);
    }
    .report243 .report242-hero-statement {
        font-size:clamp(1.45rem,6.8vw,1.95rem);
    }
    .report243 .report243-knowledge,
    .report243 .report243-secondary {
        padding-block:2.35rem;
    }
    .report243 .report243-panel,
    .report243 .report243-secondary-panel {
        padding:1rem;
    }
    .report243 .report243-panel-head h2 {
        font-size:clamp(1.4rem,7vw,1.85rem);
    }
    .report243 .report243-question-grid {
        grid-template-columns:1fr;
    }
}

/* Scanapse 2.4.3 home hotfix: wider headings, denser hero, clearer rhythm */
.home243-homefix .home241-hero {
    padding-top:clamp(.9rem,1.7vw,1.5rem);
    padding-bottom:clamp(1.8rem,2.8vw,2.55rem);
}
.home243-homefix .home241-hero-grid {
    gap:clamp(2rem,3vw,3.25rem);
}
.home243-homefix .home241-hero h1 {
    max-inline-size:none;
    margin:.45rem 0 .8rem;
    font-size:clamp(2.85rem,3.55vw,3.8rem);
    line-height:.98;
    letter-spacing:-.04em;
    text-wrap:pretty;
}
.home243-homefix .home241-hero .lead {
    max-width:54rem;
    margin-bottom:0;
}
.home243-homefix .home241-hero .home240-scan-box {
    margin-top:1.35rem;
}
.home243-homefix .home243-demo {
    margin-top:.85rem;
    padding:.9rem;
}
.home243-homefix .home241-preview {
    padding:clamp(1.05rem,1.8vw,1.45rem);
}
.home243-homefix .home241-preview h2 {
    margin:.25rem 0 .55rem;
    font-size:clamp(1.55rem,2vw,2.05rem);
    line-height:1.02;
}
.home243-homefix .home241-preview > p {
    margin-bottom:.55rem;
    max-width:36rem;
}
.home243-homefix .home240-preview-flow {
    margin-top:.75rem;
}
.home243-homefix .home240-preview-flow li {
    grid-template-columns:2.2rem minmax(0,1fr);
    gap:.7rem;
    padding:.72rem 0;
}
.home243-homefix .home240-preview-flow p {
    font-size:.9rem;
    line-height:1.42;
}
.home243-homefix .section {
    padding-block:clamp(2.6rem,4vw,4.25rem);
}
.home243-homefix .home240-section-heading {
    margin-bottom:clamp(1.15rem,2vw,1.8rem);
}
.home243-homefix .home240-section-heading h2 {
    max-inline-size:none;
    font-size:clamp(1.85rem,2.45vw,2.55rem);
    line-height:1.02;
    letter-spacing:-.03em;
    text-wrap:pretty;
}
.home243-homefix .home240-section-heading > p {
    max-inline-size:none;
    margin-top:.55rem;
    line-height:1.55;
}
.home243-homefix .home240-method-card h2,
.home243-homefix .home240-cta-card h2,
.home243-homefix .home240-time-card h2 {
    max-inline-size:none;
    font-size:clamp(1.9rem,2.55vw,2.7rem);
    line-height:1.02;
    letter-spacing:-.03em;
}

@media (min-width:64rem) {
    .home243-homefix .home241-hero-grid {
        grid-template-columns:minmax(0,1.42fr) minmax(22rem,.68fr);
    }
    .home243-homefix .home240-section-heading {
        display:grid;
        grid-template-columns:minmax(36rem,1.18fr) minmax(22rem,.82fr);
        gap:clamp(2rem,4vw,4.5rem);
        align-items:end;
    }
    .home243-homefix .home240-section-heading > p {
        margin:0 0 .1rem;
    }
}

@media (min-width:72rem) {
    .home243-homefix #home240-angles-title,
    .home243-homefix #home240-recent-title,
    .home243-homefix #home240-km-title {
        white-space:nowrap;
    }
}

@media (max-width:48rem) {
    .home243-homefix .home241-hero {
        padding-top:1rem;
    }
    .home243-homefix .home241-hero h1 {
        font-size:clamp(2.25rem,9vw,3rem);
        line-height:1;
    }
    .home243-homefix .home240-section-heading h2 {
        font-size:clamp(1.8rem,7.8vw,2.3rem);
    }
}

@media (min-width:64rem) and (max-width:71.99rem) {
    .home243-homefix .home241-hero-grid {
        grid-template-columns:1fr;
    }
}

/* Scanapse 2.4.4 result-page visual integration */
.report244 .report244-domain-title {
    max-inline-size:16ch;
    overflow-wrap:anywhere;
    text-wrap:balance;
}
.report244 .report244-domain-title span {
    color:color-mix(in srgb,var(--signal-violet) 78%,var(--text));
    background:linear-gradient(180deg,transparent 73%,color-mix(in srgb,var(--signal-teal) 18%,transparent) 0);
    box-decoration-break:clone;
    -webkit-box-decoration-break:clone;
}
.report244 .report244-reading-guide,
.report244 .report244-landscape-heading {
    display:grid;
    justify-items:center;
    gap:.35rem;
    max-inline-size:64rem;
    margin-inline:auto;
    margin-bottom:clamp(1.4rem,2.5vw,2.2rem);
    text-align:center;
}
.report244 .report244-reading-guide h2,
.report244 .report244-landscape-heading h2 {
    margin:.1rem 0 .25rem;
    max-inline-size:none;
    font-size:clamp(2rem,3.1vw,3.15rem);
    line-height:1.02;
    letter-spacing:-.035em;
}
.report244 .report244-reading-guide > p:last-child,
.report244 .report244-landscape-heading > p:last-child {
    margin:0;
    max-inline-size:58rem;
    color:var(--text-soft);
}
.report244 .report244-section-icon {
    display:grid;
    width:2.6rem;
    height:2.6rem;
    place-items:center;
    margin-bottom:.15rem;
    border:1px solid color-mix(in srgb,var(--signal-teal) 34%,var(--line));
    border-radius:50%;
    background:color-mix(in srgb,var(--signal-teal) 8%,var(--surface));
    color:var(--signal-teal);
}
.report244 .report244-section-icon svg {
    width:1.45rem;
    height:1.45rem;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.report244 .report244-section-icon-eye {
    border-color:transparent;
    background:transparent;
}
.report244 .report243-knowledge {
    background:
        radial-gradient(circle at 8% 15%,color-mix(in srgb,var(--signal-copper) 4%,transparent),transparent 28%),
        radial-gradient(circle at 92% 82%,color-mix(in srgb,var(--signal-teal) 4%,transparent),transparent 28%),
        var(--bg);
}
.report244 .report243-knowledge-grid {
    align-items:stretch;
}
.report244 .report243-panel {
    position:relative;
    display:flex;
    flex-direction:column;
    height:100%;
    overflow:hidden;
    box-shadow:0 12px 30px rgba(14,22,27,.045);
}
.report244 .report243-panel::before {
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:2px;
    background:linear-gradient(var(--signal-teal),transparent 82%);
    opacity:.55;
}
.report244 .report243-panel:nth-child(2)::before { background:linear-gradient(var(--signal-violet),transparent 82%); }
.report244 .report243-panel:nth-child(3)::before { background:linear-gradient(var(--signal-copper),transparent 82%); }
.report244 .report243-panel:nth-child(4)::before { background:linear-gradient(var(--signal-teal),transparent 82%); }
.report244 .report243-panel-head {
    position:relative;
    padding-right:3rem;
}
.report244 .report244-card-cue {
    position:absolute;
    top:0;
    right:0;
    display:grid;
    width:2.25rem;
    height:2.25rem;
    place-items:center;
    border:1px solid var(--line);
    border-radius:50%;
    background:var(--surface);
    color:var(--text);
    font-size:1rem;
    transition:transform .18s ease,border-color .18s ease;
}
.report244 .report243-panel:hover .report244-card-cue {
    transform:translateX(2px);
    border-color:color-mix(in srgb,var(--signal-teal) 45%,var(--line));
}
.report244 .report243-panel-body,
.report244 .report243-signal-list,
.report244 .report243-regulation-list,
.report244 .report243-trajectory-list,
.report244 .report243-jurisdiction-body {
    flex:1;
}
.report244 .report243-signal,
.report244 .report243-regulation-card,
.report244 .report243-trajectory-item,
.report244 .report243-empty,
.report244 .report243-jurisdiction-copy {
    background:color-mix(in srgb,var(--surface-2) 86%,var(--surface));
}
.report244 .report243-regulation-card,
.report244 .report243-trajectory-item,
.report244 .report243-empty {
    min-height:100%;
}
.report244 .report243-jurisdiction-body {
    grid-template-columns:minmax(13.5rem,.95fr) minmax(0,1.05fr);
    gap:1rem;
    align-items:stretch;
}
.report244 .report240-jurisdiction-card {
    min-height:16rem;
    padding:1.15rem 1.15rem 1.2rem;
    justify-content:space-between;
    gap:.85rem;
}
.report244 .report240-jurisdiction-card strong {
    max-inline-size:7.5ch;
    font-size:clamp(2rem,3vw,3.1rem);
    line-height:.88;
    letter-spacing:-.035em;
    text-wrap:balance;
    overflow-wrap:anywhere;
}
.report244 .report240-jurisdiction-card p {
    max-inline-size:18ch;
}
.report244 .report241-jurisdiction-card {
    min-height:100%;
}
.report244 .report242-angles {
    background:
        linear-gradient(180deg,color-mix(in srgb,var(--signal-teal) 3.2%,var(--bg)),color-mix(in srgb,var(--signal-teal) 1.2%,var(--bg)));
}
.report244 .report243-secondary {
    background:
        radial-gradient(circle at 50% 0,color-mix(in srgb,var(--signal-teal) 4%,transparent),transparent 32%),
        var(--bg);
}
.report244 .report244-landscape-heading {
    margin-bottom:clamp(1.3rem,2.2vw,2rem);
}
.report244 .report243-secondary-grid {
    grid-template-columns:1fr;
    max-inline-size:70rem;
    margin-inline:auto;
    gap:1rem;
    align-items:stretch;
}
.report244 .report243-secondary-panel {
    display:flex;
    flex-direction:column;
    height:100%;
    box-shadow:0 12px 28px rgba(14,22,27,.035);
}
.report244 .report243-relations .dependency-domain-card {
    justify-content:center;
    padding:.85rem 1rem;
}
.report244 .report243-relations .dependency-domain-card strong {
    color:color-mix(in srgb,var(--signal-violet) 72%,var(--text));
    font-size:clamp(1.1rem,1.7vw,1.45rem);
}
.report244 .report243-relations .dependency-group-head {
    padding:.78rem .85rem;
}
.report244 .report243-relations .dependency-group-head h3 {
    font-size:.98rem;
}
.report244 .report243-relations .dependency-item {
    padding:.72rem .8rem;
}
.report244 .report243-relations .dependency-item-top strong {
    font-size:.83rem;
}
.report244 .report243-relations .dependency-item p {
    margin:.25rem 0 0;
    font-size:.76rem;
    overflow-wrap:anywhere;
}
.report244 .report243-question-grid {
    flex:1;
    align-content:start;
}
.report244 .report243-question-grid article {
    position:relative;
    padding:1rem 1rem 1rem 3.15rem;
    border-style:dashed;
    background:color-mix(in srgb,var(--surface) 94%,var(--context-soft));
}
.report244 .report243-question-grid article > span:not(.report244-unknown-icon) {
    display:block;
    margin-bottom:.2rem;
    color:var(--text-soft);
    font-family:var(--font-mono);
    font-size:.62rem;
    text-transform:uppercase;
}
.report244 .report244-unknown-icon {
    position:absolute;
    top:1rem;
    left:1rem;
    display:grid;
    width:1.55rem;
    height:1.55rem;
    place-items:center;
    color:var(--signal-violet);
}
.report244 .report244-unknown-icon svg {
    width:100%;
    height:100%;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.report244 .report244-question-note {
    display:flex;
    align-items:center;
    gap:.8rem;
    margin-top:.8rem;
    padding:.8rem .9rem;
    border:1px solid color-mix(in srgb,var(--signal-teal) 28%,var(--line));
    border-radius:var(--radius-md);
    background:color-mix(in srgb,var(--signal-teal) 8%,var(--surface));
}
.report244 .report244-question-note p {
    margin:0;
    color:var(--text-soft);
    font-size:.82rem;
}
.report244 .report244-info-icon {
    display:grid;
    flex:0 0 auto;
    width:1.7rem;
    height:1.7rem;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--signal-teal) 45%,var(--line));
    border-radius:50%;
    color:var(--signal-teal);
    font-family:var(--font-mono);
    font-size:.78rem;
    font-weight:800;
}
.report244 .report242-evidence {
    background:linear-gradient(180deg,color-mix(in srgb,var(--signal-copper) 2.2%,var(--bg)),var(--bg));
}

@media (min-width:72rem) {
    .report244 .report243-relations .dependency-group-grid {
        grid-template-columns:repeat(4,minmax(0,1fr));
    }
}

@media (max-width:63.99rem) {
    .report244 .report244-reading-guide,
    .report244 .report244-landscape-heading {
        justify-items:start;
        text-align:left;
    }
    .report244 .report244-reading-guide h2,
    .report244 .report244-landscape-heading h2 {
        font-size:clamp(1.85rem,5vw,2.55rem);
    }
}

@media (max-width:48rem) {
    .report244 .report244-reading-guide,
    .report244 .report244-landscape-heading {
        margin-bottom:1.15rem;
    }
    .report244 .report244-section-icon {
        width:2.3rem;
        height:2.3rem;
    }
    .report244 .report244-card-cue {
        display:none;
    }
    .report244 .report243-panel-head {
        padding-right:0;
    }
    .report244 .report243-question-grid article {
        padding-left:3rem;
    }
}
