:root {
    --narc-font-family: 'Segoe UI', Arial, sans-serif;
    --narc-container-max-width: 1280px;
    --narc-container-padding: 48px;
    --narc-radius-md: 8px;
    --narc-radius-lg: 10px;
    --narc-card-padding: 24px;
    --narc-shadow-sm: none;
    --narc-control-height-md: 44px;
    --narc-font-size-md: .9375rem;
    --narc-line-height-text: 1.65;
    --narc-heading-size-xl: 3rem;
    font-synthesis: none;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--narc-color-surface-muted); color: var(--narc-color-text); font-family: var(--narc-font-family); font-size: 15px; line-height: 1.65; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--narc-color-primary); }
button, input, select { font: inherit; }
button, summary { cursor: pointer; }
button:disabled { cursor: default; }
a, button, input, select, summary { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--narc-color-primary); outline-offset: 4px; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.2; }
h1 { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; font-size: clamp(2.5rem, 4.5vw, 3.9rem); letter-spacing: -.045em; margin-bottom: 24px; }
h1 em { color: var(--narc-color-primary); font-weight: 400; }
h1:focus { outline: none; }
h2 { font-size: 1.5rem; font-weight: 600; letter-spacing: -.035em; }
h3 { font-size: 1.15rem; font-weight: 600; }
p { margin-bottom: 16px; }
main { min-height: 65vh; padding-bottom: 80px; }
.sr-only, .search-field label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: -100px; left: 20px; padding: 12px 20px; background: var(--narc-color-surface); z-index: 100; }
.skip-link:focus { top: 10px; }
.site-header { background: var(--narc-color-surface); border-bottom: 1px solid var(--narc-color-border); }
.header-inner { min-height: 96px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: flex; align-items: center; gap: 12px; font-size: 21px; font-weight: 750; letter-spacing: -.9px; color: var(--narc-color-text); }
.brand-light { font-weight: 400; }
.brand small { display: block; color: var(--narc-color-text-muted); font-size: 8px; font-weight: 600; letter-spacing: 1.55px; margin-top: 2px; }
.brand-mark { display: flex; align-items: center; justify-content: center; gap: 3px; background: var(--narc-color-primary); border-radius: 9px; width: 40px; height: 43px; }
.brand-mark i { width: 3px; height: 17px; background: var(--narc-color-surface); border-radius: 3px; }
.brand-mark i:nth-child(2) { height: 24px; }.brand-mark i:nth-child(3) { height: 30px; }.brand-mark i:nth-child(4) { height: 21px; }.brand-mark i:nth-child(5) { height: 11px; }
.main-nav { display: flex; align-items: center; gap: 30px; height: 96px; font-size: 13px; font-weight: 600; }
.main-nav a { position: relative; display: flex; align-items: center; gap: 8px; height: 100%; }
.main-nav a.active { color: var(--narc-color-primary); }
.main-nav a.active::after { content: ''; height: 3px; background: var(--narc-color-primary); position: absolute; bottom: 0; left: 0; right: 0; }
.mobile-navigation { display: none; }
.menu-toggle { min-width: 44px; min-height: 44px; padding: 10px 8px; box-sizing: border-box; border-radius: 6px; cursor: pointer; list-style: none; font: inherit; font-size: 12px; font-weight: 600; color: var(--narc-color-primary); background: var(--narc-color-surface); }
.menu-toggle::-webkit-details-marker { display: none; }
@media (hover: hover) { .menu-toggle:hover { color: var(--narc-color-primary-hover); background: var(--app-accent-soft); } }
.menu-toggle:active { color: var(--narc-color-on-primary); background: var(--narc-color-primary); }
.menu-toggle:focus-visible { color: var(--narc-color-primary-hover); background: var(--app-accent-soft); outline: 3px solid var(--narc-color-primary); outline-offset: 3px; }
.demo-ribbon { background: var(--app-surface-raised); color: var(--narc-color-text-muted); font-size: 11px; padding: 9px 0; }
.demo-ribbon .narc-container { display: flex; align-items: center; gap: 7px; }
.demo-ribbon a { margin-left: auto; text-decoration: underline; text-underline-offset: 3px; }
.preprod-ribbon { background: var(--narc-alert-warning-background); color: var(--narc-alert-warning-text); border-bottom: 1px solid var(--narc-alert-warning-border); font-size: 12px; padding: 9px 0; }
.status-dot { width: 5px; height: 5px; background: var(--narc-color-text-muted); border-radius: 50%; }
.explore-hero { display: grid; grid-template-columns: 1fr 300px; gap: 54px; align-items: center; padding: 64px 0 46px; }
.eyebrow { font-size: 10px; letter-spacing: 1.7px; font-weight: 650; color: var(--narc-color-text-muted); margin-bottom: 20px; line-height: 1.6; }
.hero-copy .eyebrow { display: flex; align-items: center; gap: 10px; }
.line-mark { display: inline-block; height: 1px; width: 28px; background: var(--narc-color-primary); }
.hero-description, .page-lead { color: var(--narc-color-text-muted); font-size: 15px; line-height: 1.8; max-width: 700px; }
.corpus-stats { display: flex; align-items: center; gap: 22px; font-size: 11px; color: var(--narc-color-text-muted); margin-top: 30px; flex-wrap: wrap; }
.corpus-stats > span { display: flex; align-items: baseline; gap: 7px; }
.corpus-stats strong { color: var(--narc-color-text); font-size: 21px; font-weight: 500; }
.corpus-stats .stats-note { border-left: 1px solid var(--narc-color-border); padding-left: 20px; font-size: 10px; }
.hero-note { background: var(--narc-color-text-muted); color: var(--narc-color-surface); padding: 25px; border-radius: 3px; transform: rotate(2deg); box-shadow: 8px 9px 0 var(--narc-color-border); overflow: hidden; }
.note-top { display: flex; justify-content: space-between; align-items: center; color: var(--narc-color-border); font-size: 7px; letter-spacing: 1.1px; }
.note-top > span:last-child { font-size: 20px; }
.waveform { display: flex; height: 74px; gap: 4px; align-items: center; margin: 16px 0 5px; }
.waveform i { flex: 1; height: var(--bar); background: var(--narc-color-border); border-radius: 2px; opacity: .7; }
.hero-note > p { font-family: Georgia, serif; font-size: 36px; letter-spacing: -.7px; line-height: 1.13; margin: 17px 0 24px; }
.hero-note em { color: var(--narc-color-border); }
.note-bottom { border-top: 1px solid var(--narc-color-text-muted); padding-top: 14px; display: flex; justify-content: space-between; font-size: 9px; color: var(--narc-color-border); }
.note-bottom a { font-size: 18px; line-height: 1; color: var(--narc-color-surface); }
.search-bar { display: flex; align-items: center; gap: 16px; padding: 10px 12px 10px 22px; border: 1px solid var(--narc-color-border); background: var(--narc-color-surface); border-radius: 9px; box-shadow: 0 3px 6px #253c2010; }
.search-glyph { font-family: Georgia, serif; font-size: 35px; line-height: 1; color: var(--narc-color-text-muted); }
.search-field { flex: 1; min-width: 0; margin: 0 !important; }
.search-field input { border: 0 !important; box-shadow: none !important; background: transparent !important; font-size: 15px !important; padding: 12px 4px !important; }
.search-submit { gap: 26px !important; padding: 14px 24px !important; min-height: 48px; }
.suggested-topics { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; font-size: 11px; margin: 17px 0 42px; }
.suggested-topics > span { color: var(--narc-color-text-muted); margin-right: 5px; }
.suggested-topics a { border: 1px solid var(--narc-color-border); padding: 4px 11px; border-radius: 5px; display: flex; gap: 13px; background: var(--app-surface-raised); color: var(--narc-color-text-muted); }
.suggested-topics a:hover { border-color: var(--narc-color-primary); color: var(--narc-color-primary); background: var(--app-accent-soft); }
.catalog-layout { display: grid; grid-template-columns: 218px minmax(0,1fr); gap: 38px; }
.filter-sidebar { padding-right: 26px; border-right: 1px solid var(--narc-color-border); }
.filter-heading { display: flex; align-items: center; justify-content: space-between; margin: 8px 0 28px; }
.filter-heading h2 { font-size: 13px; letter-spacing: -.25px; margin: 0; }
.filter-heading > span { font-size: 21px; color: var(--narc-color-text-muted); }
.filter-details > summary { display: list-item; font-size: 11px; color: var(--narc-color-text-muted); margin-bottom: 18px; }
.filter-controls { display: flex; flex-direction: column; gap: 20px; }
.filter-controls label { font-size: 11px !important; font-weight: 600; color: var(--narc-color-text-muted); }
.filter-controls input, .filter-controls select { font-size: 11px !important; border-color: var(--narc-color-border) !important; padding: 10px !important; height: 42px; border-radius: 5px !important; }
.filter-controls button { font-size: 11px; min-height: 39px; }
.filter-controls .narc-button--ghost { margin-top: -12px; }
.filter-dates { display: grid; gap: 16px; }
.filter-note { border-top: 1px solid var(--narc-color-border); padding-top: 22px; display: flex; gap: 8px; font-size: 10px; line-height: 1.8; margin-top: 27px; color: var(--narc-color-text-muted); }
.filter-note p { margin: 0; }
.filter-note a { color: var(--narc-color-text-muted); text-decoration: underline; text-underline-offset: 3px; }
.section-heading { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 22px; }
.section-heading .eyebrow { font-size: 8px; margin-bottom: 5px; }
.section-heading h2 { font-size: 23px; margin: 0; font-family: Georgia, serif; font-weight: 400; }
.result-count { font-size: 10px; color: var(--narc-color-text-muted); white-space: nowrap; }
.recording-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.recording-card { border: 1px solid var(--narc-color-border) !important; border-radius: 7px !important; background: var(--narc-color-surface) !important; box-shadow: none !important; transition: border-color .2s, box-shadow .2s; }
.recording-card:hover { border-color: var(--narc-color-text-muted) !important; box-shadow: 0 5px 18px #223d6210 !important; }
.recording-card .narc-card__body { height: 100%; display: flex; flex-direction: column; }
.card-meta { display: flex; justify-content: space-between; gap: 8px; align-items: center; font-size: 9px; color: var(--narc-color-text-muted); margin-bottom: 19px; }
.card-meta > span { display: flex; align-items: center; gap: 5px; }
.source-icon { font-size: 17px; color: var(--narc-color-text-muted); }
.recording-card h3 { font-size: 21px; font-family: Georgia, serif; font-weight: 400; letter-spacing: -.45px; line-height: 1.3; margin-bottom: 13px; }
.recording-card h3 a:hover { text-decoration: underline; text-underline-offset: 4px; }
.recording-card h3 a { display: block; }
.recording-excerpt { font-size: 11px; color: var(--narc-color-text-muted); line-height: 1.8; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin-bottom: 18px; }
.topic-tags { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; }
.topic-tags .topic-badge { font-size: 9px !important; font-weight: 500 !important; color: var(--app-accent-text) !important; background: var(--app-accent-soft) !important; border: 1px solid var(--narc-color-border) !important; padding: 3px 9px !important; }
.topic-tags a:nth-child(even) .topic-badge { color: var(--app-accent-text) !important; background: var(--app-accent-soft) !important; border-color: var(--narc-color-border) !important; }
.topic-tags a:hover .topic-badge { text-decoration: underline; }
.card-bottom { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 22px; padding-top: 17px; border-top: 1px solid var(--narc-color-border); }
.card-person { display: flex; gap: 9px; align-items: center; font-size: 10px; font-weight: 600; }
.card-person small, .speaker-person small { display: block; font-size: 9px; color: var(--narc-color-text-muted); font-weight: 400; margin-top: 2px; }
.avatar { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; flex-shrink: 0; border-radius: 50%; background: var(--app-accent-soft); color: var(--app-accent-text); font-family: Georgia, serif; font-size: 18px; }
.avatar-small { width: 30px; height: 30px; font-size: 11px; }
.avatar-large { width: 88px; height: 88px; font-size: 32px; }
.round-link { display: inline-flex; width: 30px; height: 30px; border: 1px solid var(--narc-color-border); border-radius: 50%; align-items: center; justify-content: center; font-size: 15px; flex-shrink: 0; }
.round-link:hover { background: var(--app-accent-soft); border-color: var(--narc-color-border); }
.pagination { display: flex; align-items: center; justify-content: center; gap: 7px; margin-top: 30px; }
.pagination a { display: inline-flex; justify-content: center; align-items: center; width: 36px; height: 36px; font-size: 12px; border: 1px solid var(--narc-color-border); border-radius: 5px; }
.pagination .current { background: var(--narc-color-primary); color: var(--narc-color-on-primary); border-color: var(--narc-color-primary); }
.method-callout { margin-top: 65px; padding: 30px 36px; background: var(--app-surface-raised); display: flex; align-items: center; gap: 30px; border-radius: 7px; }
.callout-symbol { font-size: 95px; line-height: .8; font-family: Georgia, serif; color: var(--narc-color-text-muted); align-self: flex-start; margin-top: 14px; }
.method-callout h2 { font-family: Georgia, serif; font-weight: 400; font-size: 26px; margin-bottom: 9px; }
.method-callout .eyebrow { font-size: 8px; margin-bottom: 6px; }
.method-callout p:last-child { font-size: 11px; color: var(--narc-color-text-muted); margin: 0; }
.text-link { font-size: 12px; color: var(--narc-color-primary); font-weight: 600; display: inline-flex; gap: 18px; align-items: center; }
.method-callout > a { margin-left: auto; flex-shrink: 0; }
.site-footer { border-top: 1px solid var(--narc-color-border); background: var(--app-surface-raised); }
.footer-top { display: flex; align-items: flex-start; gap: 80px; padding: 38px 0; }
.footer-brand { font-weight: 650; letter-spacing: -.8px; font-size: 20px; }.blue-dot { color: var(--narc-color-primary); }
.footer-top p { color: var(--narc-color-text-muted); font-size: 11px; line-height: 1.7; margin: 0; }
.footer-top > a:last-child { margin-left: auto; font-size: 11px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding: 18px 0; border-top: 1px solid var(--narc-color-border); color: var(--narc-color-text-muted); font-size: 9px; }
.breadcrumb { display: flex; flex-wrap: wrap; gap: 12px; font-size: 11px; color: var(--narc-color-text-muted); padding: 28px 0; }
.breadcrumb a:hover { text-decoration: underline; }
.page-heading { padding: 26px 0 38px; max-width: 850px; }.page-heading h1 { font-size: 55px; }
.directory-grid { margin-bottom: 25px; gap: 24px !important; }
.figure-card, .topic-card { background: var(--narc-color-surface); }.figure-card h2, .topic-card h2 { font-family: Georgia, serif; font-size: 28px; font-weight: 400; margin-bottom: 8px; }
.figure-card .eyebrow { margin: 22px 0 8px; font-size: 8px; }.figure-role { font-size: 11px !important; color: var(--narc-color-primary) !important; }
.figure-card p, .topic-card p { font-size: 13px; color: var(--narc-color-text-muted); }.figure-card .narc-card__body, .topic-card .narc-card__body { display: flex; flex-direction: column; height: 100%; }
.directory-card-bottom { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 20px; border-top: 1px solid var(--narc-color-border); font-size: 11px; color: var(--narc-color-text-muted); }
.topic-symbol { width: 52px; height: 52px; display: inline-flex; align-items: center; justify-content: center; font-family: Georgia, serif; font-size: 28px; border: 1px solid var(--narc-color-border); background: var(--app-accent-soft); color: var(--app-accent-text); border-radius: 12px; margin-bottom: 24px; }
.topic-card:nth-child(even) .topic-symbol { background: var(--app-accent-soft); color: var(--narc-color-primary); border-color: var(--narc-color-border); }
.topic-symbol.large { width: 100px; height: 100px; font-size: 50px; flex-shrink: 0; margin: 0; }
.profile-heading { display: flex; align-items: center; gap: 32px; padding: 32px 0 56px; }.profile-heading .eyebrow { margin-bottom: 8px; }.profile-heading h1 { margin-bottom: 15px; }.profile-heading .page-lead { max-width: 700px; }
.directory-link { text-align: center; margin: 32px 0 0; }
.mobile-analysis { display: none; }
.recording-heading { display: flex; justify-content: space-between; gap: 50px; padding: 24px 0 38px; border-bottom: 1px solid var(--narc-color-border); }.recording-heading h1 { max-width: 870px; font-size: 52px; }.recording-heading .eyebrow { margin-bottom: 18px; }
.duration-stamp { min-width: 100px; align-self: center; text-align: center; font-size: 22px; color: var(--narc-color-text-muted); }.duration-stamp > span { display: block; font-size: 35px; line-height: 1.2; }.duration-stamp small { display: block; font-size: 8px; letter-spacing: 2px; }
.recording-context { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; padding: 35px 0 48px; }.speakers-panel { padding: 20px 0; }.speakers-panel h2 { font-family: Georgia, serif; font-weight: 400; }.speakers-panel .eyebrow { margin-bottom: 12px; }
.speaker-list { display: flex; flex-wrap: wrap; gap: 23px; margin-top: 25px; }.speaker-person { display: flex; gap: 12px; align-items: center; font-size: 13px; }.speaker-person small { max-width: 170px; font-size: 10px; }.speaker-person a { font-weight: 600; }
.source-panel { background: var(--app-surface-raised) !important; border-color: var(--narc-color-border) !important; }.source-panel .eyebrow { font-size: 8px; margin-bottom: 12px; }.source-panel h2 { font-size: 18px; margin-bottom: 8px; }.source-panel p { font-size: 12px; color: var(--narc-color-text-muted); }.source-panel .fine-print { font-size: 10px; margin: 12px 0 0; }
.source-unavailable { border-top: 1px solid var(--narc-color-border); padding-top: 12px; font-weight: 600; }.button-link { display: inline-flex; gap: 20px; background: var(--narc-color-primary); color: var(--narc-color-on-primary); padding: 10px 16px; border-radius: 5px; font-size: 12px; }.button-link:hover { background: var(--narc-color-primary-hover); color: var(--narc-color-on-primary); }
.transcript-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 40px; }.section-intro { font-size: 12px; color: var(--narc-color-text-muted); margin-top: -10px; }
.transcript-segment { padding: 18px 24px 10px; background: var(--narc-color-surface); border: 1px solid var(--narc-color-border); border-left: 3px solid var(--narc-color-border); border-radius: 5px; margin-bottom: 18px; }.transcript-segment.selected { border-left-color: var(--narc-color-primary); background: var(--narc-color-surface); }
.segment-selector { display: flex !important; justify-content: space-between !important; width: 100%; text-align: left; padding: 8px 0 16px !important; border: 0 !important; background: none !important; color: var(--narc-color-primary) !important; gap: 14px; font-size: 13px !important; }.segment-range { font-size: 10px; font-weight: 400; color: var(--narc-color-text-muted); white-space: nowrap; }
.utterance { display: grid; grid-template-columns: 40px 1fr; gap: 14px; padding: 14px 0; }.timestamp { font-family: Consolas, monospace; color: var(--narc-color-text-muted); font-size: 10px; padding-top: 2px; }.utterance h3 { font-size: 11px; margin-bottom: 9px; }.utterance p { font-size: 14px; color: var(--narc-color-text-muted); line-height: 1.9; }
.analysis-card { position: sticky; top: 24px; background: var(--app-surface-raised) !important; border-color: var(--narc-color-border) !important; }.analysis-card .eyebrow { font-size: 8px; margin-bottom: 16px; }.analysis-card h2 { font-family: Georgia, serif; font-size: 25px; font-weight: 400; margin-bottom: 28px; }.analysis-label { font-size: 8px; letter-spacing: 1px; color: var(--narc-color-text-muted); font-weight: 650; }.analysis-summary { font-size: 13px; color: var(--narc-color-text-muted); margin-top: 10px; }.analysis-card h3 { font-size: 12px; margin-top: 24px; }.fine-print { font-size: 11px; color: var(--narc-color-text-muted); }.mention { display: flex; justify-content: space-between; font-size: 11px; padding: 10px 0; border-bottom: 1px solid var(--narc-color-border); }.mention span { color: var(--narc-color-text-muted); }.analysis-disclaimer { font-size: 10px; color: var(--narc-color-text-muted); border-top: 1px solid var(--narc-color-border); padding-top: 20px; margin: 25px 0 0; }
.method-layout { display: grid; grid-template-columns: 260px 1fr; gap: 85px; margin-top: 15px; }.method-aside { padding-top: 20px; }.method-aside blockquote { font-family: Georgia, serif; font-size: 36px; line-height: 1.2; margin: 0 0 25px; letter-spacing: -1px; }.method-aside blockquote em { color: var(--narc-color-primary); }.method-aside > p:last-child { font-size: 12px; color: var(--narc-color-text-muted); max-width: 220px; }
.method-content .narc-alert { font-size: 13px; }.method-step { display: flex; align-items: flex-start; gap: 25px; padding: 34px 0 17px; border-bottom: 1px solid var(--narc-color-border); }.step-number { font-family: Georgia, serif; font-size: 28px; color: var(--narc-color-text-muted); line-height: 1.2; }.method-step h2 { font-family: Georgia, serif; font-size: 26px; font-weight: 400; }.method-step p, .method-content details p { font-size: 13px; color: var(--narc-color-text-muted); }.method-step code { font-size: 11px; color: var(--narc-color-primary); }.method-content > h2 { margin-top: 45px; }.method-content details { margin: 14px 0; }
.empty-state { text-align: center; border: 1px dashed var(--narc-color-border); padding: 65px 25px; border-radius: 8px; background: var(--app-surface-raised); }.empty-state p { color: var(--narc-color-text-muted); font-size: 13px; max-width: 500px; margin: 0 auto 25px; }.empty-state h2 { font-family: Georgia, serif; font-size: 30px; font-weight: 400; }.empty-symbol { display: inline-flex; font-size: 30px; color: var(--narc-color-text-muted); margin-bottom: 15px; }
#blazor-error-ui { display: none; position: fixed; z-index: 1000; bottom: 0; left: 0; right: 0; padding: 16px 30px; background: var(--narc-alert-warning-background); box-shadow: 0 -2px 8px #0002; }#blazor-error-ui .reload { text-decoration: underline; }#blazor-error-ui .dismiss { float: right; border: none; background: transparent; }
@media (min-width: 1200px) { .topic-directory { grid-template-columns: repeat(4,minmax(0,1fr)) !important; } }
@media (max-width: 1050px) {
    :root { --narc-container-padding: 30px; }
    .main-nav { gap: 20px; font-size: 12px; }.brand { font-size: 18px; }.brand small { font-size: 7px; }
    .explore-hero { grid-template-columns: 1fr 250px; gap: 35px; }.hero-note { padding: 20px; }.hero-note > p { font-size: 30px; }.hero-copy h1 { font-size: 47px; }.hero-description { font-size: 13px; }.stats-note { display: none !important; }
    .catalog-layout { grid-template-columns: 180px minmax(0,1fr); gap: 25px; }.filter-sidebar { padding-right: 20px; }.recording-grid { gap: 14px; }.recording-card { --narc-card-padding: 18px; }.card-meta { font-size: 8px; flex-wrap: wrap; }.recording-card h3 { font-size: 20px; }
    .transcript-layout { grid-template-columns: minmax(0,1fr) 290px; gap: 22px; }.method-layout { gap: 40px; grid-template-columns: 230px 1fr; }.corpus-stats { gap: 14px; }
}
@media (max-width: 760px) {
    :root { --narc-container-padding: 22px; }
    .header-inner { position: relative; min-height: 78px; flex-wrap: wrap; gap: 0; }.brand { font-size: 18px; }.brand small { font-size: 6px; letter-spacing: 1.3px; }.brand-mark { width: 34px; height: 38px; }
    .header-inner > .brand { min-height: 78px; margin-right: 76px; }
    .desktop-navigation { display: none; }
    .mobile-navigation { display: block; width: 100%; }
    .menu-toggle { position: absolute; top: 17px; right: 0; display: flex; align-items: center; gap: 6px; }
    .mobile-navigation .main-nav { height: auto; width: 100%; padding: 12px 0 20px; gap: 8px; flex-direction: column; align-items: stretch; }
    .mobile-navigation .main-nav a { padding: 10px 3px; min-height: 44px; box-sizing: border-box; }
    .main-nav a.active::after { width: 22px; right: auto; }
    .ribbon-note { display: none; }.demo-ribbon { font-size: 9px; }.demo-ribbon a { font-size: 9px; }
    .explore-hero { display: block; padding: 42px 0 32px; }.hero-copy h1 { font-size: clamp(37px,7.8vw,54px); }.hero-copy .eyebrow { font-size: 8px; letter-spacing: 1.2px; }.hero-description { font-size: 13px; }.desktop-break { display: none; }.hero-note { display: none; }.corpus-stats { gap: 20px; font-size: 10px; margin-top: 23px; }.corpus-stats strong { font-size: 20px; }
    .search-bar { gap: 8px; padding: 8px 8px 8px 13px; }.search-glyph { font-size: 26px; }.search-field input { font-size: 12px !important; }.search-submit { padding: 12px !important; font-size: 11px !important; min-height: 42px; }.search-submit > span { display: none; }
    .suggested-topics { margin-bottom: 28px; gap: 7px; font-size: 10px; }.suggested-topics a { padding: 3px 8px; gap: 8px; }
    .catalog-layout { display: block; }.filter-sidebar { border: 0; padding: 0; margin-bottom: 25px; }.filter-heading, .filter-note { display: none; }.filter-details { border: 1px solid var(--narc-color-border); border-radius: 6px; background: var(--app-surface-raised); }.filter-details > summary { display: list-item; font-size: 12px; padding: 13px 17px; font-weight: 600; }.filter-controls { padding: 8px 18px 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }.filter-dates { display: contents; }.filter-controls input, .filter-controls select { width: 100%; min-width: 0; }.filter-controls .narc-button--ghost { margin: 0; }
    .section-heading h2 { font-size: 23px; }.section-heading .eyebrow { font-size: 8px; }.recording-grid { grid-template-columns: 1fr; gap: 17px; }.recording-card { --narc-card-padding: 23px; }.card-meta { font-size: 10px; }.recording-card h3 { font-size: 25px; }.recording-excerpt { font-size: 12px; }.card-person { font-size: 11px; }.topic-tags .topic-badge { font-size: 10px !important; }.result-count { font-size: 10px; }
    .method-callout { margin-top: 42px; padding: 24px; gap: 18px; flex-wrap: wrap; }.callout-symbol { display: none; }.method-callout h2 { font-size: 26px; }.method-callout > a { margin: 0; }.method-callout p:last-child { font-size: 12px; }
    .footer-top { flex-wrap: wrap; gap: 20px 30px; }.footer-top > a:last-child { margin: 0; }.footer-brand { width: 100%; }.footer-bottom { flex-direction: column; gap: 7px; }.site-footer { margin-top: 0; }main { padding-bottom: 45px; }
    .page-heading h1 { font-size: 41px; }.page-heading { padding: 16px 0 28px; }.page-lead { font-size: 14px; }.breadcrumb { font-size: 10px; padding: 22px 0; }.directory-grid { grid-template-columns: 1fr !important; }.profile-heading { flex-direction: column; align-items: flex-start; gap: 22px; padding: 20px 0 35px; }.profile-heading h1 { font-size: 41px; }
    .recording-heading { padding: 15px 0 28px; }.recording-heading h1 { font-size: 37px; }.duration-stamp { display: none; }.recording-context { grid-template-columns: 1fr; gap: 20px; padding: 20px 0 35px; }.speakers-panel { padding: 10px 0; }.source-panel { --narc-card-padding: 22px; }
    .transcript-layout { display: flex; flex-direction: column; gap: 22px; }.analysis-column { order: -1; }.analysis-card { position: static; }.analysis-card h2 { margin-bottom: 18px; }.analysis-card .topic-tags { margin-bottom: 10px; }.transcript-segment { padding: 15px; }.segment-selector { flex-wrap: wrap; }.utterance { grid-template-columns: 33px 1fr; gap: 9px; }.utterance p { font-size: 13px; }.analysis-card { scroll-margin-top: 15px; }
    .method-layout { display: block; }.method-aside { padding-bottom: 30px; }.method-aside blockquote { font-size: 33px; }.method-aside > p:last-child { max-width: none; }.method-step { gap: 17px; }.method-step h2 { font-size: 24px; }.method-content code { overflow-wrap: anywhere; }
}
@media (max-width: 760px) {
    .analysis-column { display: none; }
    .mobile-analysis { display: block; position: static; margin: 4px 0 22px; --narc-card-padding: 18px; }
    .filter-details > summary { margin-bottom: 0; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; }*, *::before, *::after { transition-duration: 0s !important; animation-duration: 0s !important; } }
/* Public showcase */
.landing-hero {padding:72px 0 48px;max-width:850px}.landing-hero h1 {font-size:clamp(3rem,6vw,5.4rem);line-height:1.05;margin:20px 0}.landing-hero h1 em {color:var(--narc-color-primary,var(--narc-color-primary));font-weight:400}.landing-hero .button-link{margin-top:12px}.landing-section{margin:64px 0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:28px 0}.metric-grid strong{display:block;font-size:clamp(1.4rem,2.5vw,2.4rem);font-weight:600;color:var(--narc-color-primary)}.metric-grid span{display:block;margin-top:10px;font-size:.9rem}.people-grid,.latest-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.illustrated-figure img{width:100%;height:210px;object-fit:cover;object-position:center 24%;border-radius:8px}.illustrated-figure h3{font-size:1.65rem;margin:10px 0}.illustrated-figure .eyebrow{margin-top:20px}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}.chart-grid>*,.chart-grid .narc-card{min-width:0}.chart-grid h3{font-size:1.4rem}.chart-grid details{margin-top:18px;overflow:auto}.chart-grid summary{cursor:pointer;color:var(--narc-color-primary);padding:8px 0}.data-table{width:100%;border-collapse:collapse;font-size:.85rem}.data-table th,.data-table td{padding:10px;text-align:left;border-bottom:1px solid var(--narc-color-border)}.video-thumbnail{display:block;margin-bottom:16px}.video-thumbnail img,.source-panel img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:8px}.video-channel{font-size:.75rem;color:var(--narc-color-text-muted);margin:8px 0 14px}.profile-heading>img{width:180px;height:194px;object-fit:cover;border-radius:12px}.search-heading{padding-bottom:20px}.main-nav{gap:20px}.latest-grid .recording-excerpt{display:none}.section-heading>span{font-size:.8rem;color:var(--narc-color-text-muted)}.topic-tags a{display:inline-block;padding:5px 9px;background:var(--app-accent-soft);border-radius:20px;margin:3px;font-size:.8rem}
@media(max-width:900px){.people-grid,.latest-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.chart-grid{grid-template-columns:1fr}.main-nav{gap:12px}}
@media(max-width:600px){.landing-hero{padding:40px 0 24px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.people-grid,.latest-grid{grid-template-columns:1fr!important}.landing-section{margin:40px 0}.section-heading{flex-wrap:wrap;gap:12px}.illustrated-figure img{height:230px}.profile-heading>img{width:130px;height:140px}.chart-grid{gap:16px}}
.opinion{font-size:12px;padding:10px 0;border-bottom:1px solid var(--narc-color-border)}.opinion strong{display:inline-block;margin-right:6px}.opinion-evidence{margin:8px 0 0;padding-left:10px;border-left:2px solid var(--narc-color-border);font-family:Georgia,serif;font-style:italic;color:var(--narc-color-text-muted);font-size:12px}.stance-badge{font-size:.72rem}.stance-favorable{background:var(--narc-alert-success-background)!important;color:var(--narc-alert-success-text)!important}.stance-unfavorable{background:var(--narc-alert-danger-background)!important;color:var(--narc-alert-danger-text)!important}.stance-nuanced{background:var(--narc-alert-warning-background)!important;color:var(--narc-alert-warning-text)!important}.position-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}.position-card h3{font-family:Georgia,serif;font-size:1.25rem;font-weight:400;margin:6px 0 12px}.position-card .eyebrow{font-size:8px;margin:0}.position-line{padding:8px 0;border-top:1px solid var(--narc-color-border)}.position-line p{margin:0 0 4px}.opinion-subject{display:block;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--narc-color-text-muted);margin-bottom:2px}
@media(max-width:600px){.position-grid{grid-template-columns:1fr!important}}

.footer-links { display: flex; flex-wrap: wrap; gap: 6px 18px; }.footer-links a { color: inherit; text-decoration: underline; }.legal-content { max-width: 720px; }.legal-content p, .legal-content li { font-size: 14px; line-height: 1.6; }

@media (max-width: 360px) {
    .header-inner > .brand { font-size: 15px; gap: 7px; letter-spacing: -.7px; }
    .header-inner > .brand small { font-size: 5px; letter-spacing: .8px; }
    .header-inner > .brand .brand-mark { width: 28px; flex-shrink: 0; }
}

.transcript-segment { scroll-margin-top: 16px; }
.passage-link { margin: 0 0 10px; }

/* A page that waits for its data keeps its room, so the content does not jump when it arrives. */
.loading-state { display: flex; align-items: center; justify-content: center; min-height: 200px; padding: 32px 0; }

/* Standing of a figure in the current election: a badge, and larger cards for the official candidates. */
.figure-badge { display: inline-block; align-self: flex-start; margin: 0 0 8px; padding: 2px 10px; border-radius: 999px; font-size: 11px !important; font-weight: 650; letter-spacing: .3px; background: var(--app-accent-soft); color: var(--narc-color-primary) !important; }
.figure-badge--candidate { background: var(--narc-color-primary); color: var(--narc-color-surface) !important; }
.figure-badge--withdrawn, .figure-badge--primarydefeated { background: var(--app-surface-raised); color: var(--narc-color-text-muted) !important; }
.figure-tier + .figure-tier { margin-top: 8px; }
.people-grid--featured .figure-card { border-color: var(--narc-color-primary); }

/* Anonymous error reports: a disclosure that opens a small form. */
.report-error{margin:12px 0;font-size:.85rem}
.report-error>summary{cursor:pointer;color:var(--narc-color-primary);text-decoration:underline;padding:6px 0}
.report-compact{margin:6px 0 0;font-size:.75rem}
.report-form{display:grid;gap:10px;max-width:520px;padding:12px;border:1px solid var(--narc-color-border);border-radius:8px;background:var(--narc-color-surface)}
.report-form label{display:grid;gap:4px;font-weight:600}
.report-form select,.report-form textarea{font:inherit;padding:8px;border:1px solid var(--narc-color-border);border-radius:5px}
.report-form button{justify-self:start;border:0;cursor:pointer}
.report-form button:disabled{opacity:.6;cursor:progress}
.report-status{margin:8px 0;font-weight:600}
.report-problem{color:var(--narc-alert-danger-text)}
.report-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}

/* E2: editorial typography, quiet neutral surfaces and a selective jade accent. */
h1, h2, .recording-card h3 { font-family: Georgia, 'Times New Roman', serif; }
h1 { font-weight: 600; letter-spacing: -.04em; }
h1 em { font-style: normal; font-weight: inherit; }
.header-inner { gap: 18px; min-height: 86px; }
.header-inner > .theme-picker { margin-left: auto; order: 3; }
.header-inner > .menu-toggle { order: 4; }
.main-nav { height: 86px; }
.brand { font-family: Georgia, 'Times New Roman', serif; font-size: 20px; letter-spacing: -.6px; }
.brand small { font-family: var(--narc-font-family); }
.landing-hero { position: relative; max-width: none; padding: 70px 260px 44px 0; }
.landing-hero h1 { font-size: clamp(2.7rem, 5vw, 4.4rem); }
.landing-hero h1 em { font-style: normal; font-weight: inherit; }
.button-link { color: var(--narc-color-on-primary); padding: 12px 20px; font-weight: 600; }
.metric-grid { margin: 12px 0 38px; gap: 0; }
.metric-grid > * { border-radius: 0; border: 0; border-inline-end: 1px solid var(--narc-color-border); background: transparent; box-shadow: none; }
.metric-grid > :last-child { border-inline-end: 0; }
.metric-grid strong { color: var(--narc-color-text); font-family: Georgia, serif; }
.topic-tags .topic-badge, .topic-tags a:nth-child(even) .topic-badge { background: var(--app-surface-raised) !important; color: var(--narc-color-text-muted) !important; border-color: var(--narc-color-border) !important; }
.recording-card:hover { box-shadow: var(--narc-shadow-sm); }
.section-heading > a { color: var(--narc-color-primary); font-weight: 600; }
@media(max-width:1100px) { .header-inner { flex-wrap: wrap; padding-block: 12px; gap: 12px; } .main-nav { height: 40px; } }
@media(max-width:760px) {
 .header-inner > .main-nav { order: 5; height: auto; }
 .header-inner { min-height: 74px; }
 .brand { font-size: 17px; gap: 5px; }.brand small { display: none; }.brand-building { width: 28px; }
 .landing-hero { padding: 38px 0 24px; }.landing-hero .eyebrow { max-width: 65%; }
 .landing-hero h1 { position: relative; font-size: clamp(2.5rem, 8vw, 3.3rem); }
 .metric-grid > :nth-child(2) { border-inline-end: 0; }
}
/* Containers retain their horizontal gutter without inflating compact chrome. */
.site-header .narc-container, .demo-ribbon .narc-container, .preprod-ribbon .narc-container,
.site-footer .narc-container, main > .narc-container { padding-block: 0; }
.metric-grid .narc-card { border-radius: 0; border: 0; border-inline-end: 1px solid var(--narc-color-border); background: transparent; box-shadow: none; }
.metric-grid .narc-card:last-child { border-inline-end: 0; }
@media(max-width:600px) { .metric-grid .narc-card:nth-child(2) { border-inline-end: 0; } }

/* Public UX: keep the discourse and its evidence within easy reach. */
.header-inner > .theme-picker { order: 0; }
.header-inner > .menu-toggle { order: 0; }
.home-search { max-width: 580px; margin: 22px 0 12px; }
.home-search label { display: block; font-size: 14px; font-weight: 600; margin-bottom: 8px; }
.home-search__controls { display: flex; gap: 8px; }
.home-search input { min-width: 0; flex: 1; border: 1px solid var(--narc-color-border); border-radius: 8px; background: var(--narc-color-surface); color: var(--narc-color-text); padding: 12px; font: inherit; }
.landing-hero { padding-block: 36px 20px; }
.landing-hero h1 { font-size: clamp(2.5rem, 4vw, 3.7rem); margin: 12px 0 18px; }
.landing-hero .eyebrow { margin-bottom: 10px; }
.landing-hero .page-lead { margin-bottom: 0; }
.landing-section { margin: 36px 0; }
.metric-grid { margin: 12px 0 24px; }
.metric-grid .narc-card { --narc-card-padding: 12px 24px; }
.search-heading { padding: 22px 0 18px; }
.search-heading h1 { font-size: clamp(1.9rem, 3vw, 2.8rem); margin-bottom: 0; }
.search-heading h1 br { display: none; }
.search-heading h1 em::before { content: ' '; }
.search-heading .eyebrow { margin-bottom: 12px; }
.suggested-topics { margin-bottom: 20px; }
.recording-grid { grid-template-columns: 1fr; gap: 16px; }
.recording-card { --narc-card-padding: 20px; }
.recording-card__heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; }
.recording-card__identity { min-width: 0; flex: 1; }
.recording-card .video-thumbnail { width: 176px; height: 99px; flex: 0 0 176px; margin: 0; }
.recording-card .video-thumbnail img { border-radius: 6px; }
.recording-card .video-thumbnail img { height: 100%; width: 100%; object-fit: cover; }
.recording-card h3 { font-size: 1.3rem; line-height: 1.35; margin: 8px 0; }
.recording-card .video-channel { font-size: 12px; margin: 0 0 8px; }
.recording-excerpt { display: block; font-size: 14px; line-height: 1.65; margin: 10px 0 14px; }
.card-meta, .card-person, .card-person small, .segment-range, .timestamp, .result-count { font-size: 12px; }
.card-meta { justify-content: flex-start; gap: 16px; flex-wrap: wrap; }
.card-bottom { margin-top: 14px; padding-top: 12px; }
.latest-grid .recording-card__heading { flex-direction: column-reverse; align-items: stretch; gap: 12px; }
.latest-grid .video-thumbnail { width: 100%; height: auto; flex: none; aspect-ratio: 16/9; }
.latest-grid { align-items: stretch; }
.latest-grid .recording-excerpt { display: none; }
mark { color: var(--narc-color-text); background: var(--app-accent-soft); font-weight: 650; border-radius: 2px; box-shadow: 0 1px 0 var(--narc-color-primary); }
.filter-toggle { display: none; }
.filter-controls { display: grid; gap: 16px; }
.active-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.active-filters a { display: inline-flex; gap: 12px; align-items: center; min-height: 36px; max-width: 100%; overflow-wrap: anywhere; background: var(--app-accent-soft); color: var(--app-accent-text); border: 1px solid var(--narc-color-border); border-radius: 20px; padding: 5px 12px; font-size: 13px; }
.recording-heading { padding: 12px 0 20px; }
.recording-heading h1 { font-size: clamp(2rem, 3.4vw, 3rem); margin-bottom: 16px; }
.recording-heading .eyebrow { margin-bottom: 12px; }
.recording-shortcuts { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 22px; margin: 18px 0 24px; font-size: 14px; }
.recording-shortcuts > a:not(.button-link) { color: var(--narc-color-primary); text-decoration: underline; text-underline-offset: 4px; }
.analysis-shortcut-mobile, .mobile-analysis-toggle, .mobile-analysis-preview { display: none; }
#transcript-title, #recording-source, #recording-speakers, #segment-analysis, #analysis-mobile { scroll-margin-top: 24px; }
.source-panel { scroll-margin-top: 24px; }
a.timestamp { text-decoration: underline; text-underline-offset: 3px; color: var(--narc-color-primary); min-height: 28px; }
@media(max-width:760px) {
    .filter-toggle { display: flex; width: 100%; border: 0; background: transparent; color: var(--narc-color-text); padding: 14px 16px; font: 600 14px/1.4 var(--narc-font-family); text-align: left; cursor: pointer; }
    .filter-controls { display: none; padding: 0 16px 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .filter-controls.is-open { display: grid; }
    .filter-controls .narc-form-field { min-width: 0; }
    .filter-controls input, .filter-controls select { box-sizing: border-box; min-width: 0; max-width: 100%; }
    .filter-sidebar { margin-bottom: 16px; }
    .filter-details { background: var(--narc-color-surface); }
    .header-inner { padding-block: 10px; }
    .home-search__controls { flex-wrap: wrap; }
    .home-search input { flex-basis: 190px; }
    .landing-hero { padding-block: 24px 12px; }
    .landing-hero h1 { font-size: 2.5rem; }
    .search-heading { padding: 18px 0; }
    .search-heading h1 { font-size: 1.8rem; }
    .search-heading h1 br { display: none; }
    .recording-card { --narc-card-padding: 16px; }
    .recording-card__heading { flex-direction: column-reverse; align-items: stretch; }
    .recording-card .video-thumbnail { width: 100%; height: auto; flex-basis: auto; aspect-ratio: 16/9; }
    .recording-card h3 { font-size: 1.15rem; }
    .recording-excerpt { font-size: 14px; }
    .recording-shortcuts { gap: 12px 16px; font-size: 13px; }
    .analysis-shortcut-desktop { display: none; }
    .analysis-shortcut-mobile { display: inline; }
    .mobile-analysis-preview { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 13px; color: var(--narc-color-text-muted); margin: 0 0 10px; }
    .mobile-analysis-toggle { display: block; margin-bottom: 16px; border: 1px solid var(--narc-color-border); border-radius: 6px; }
    .mobile-analysis-toggle > summary { padding: 12px; font-size: 13px; color: var(--narc-color-primary); }
    .mobile-analysis-toggle > summary span { font-size: 12px; color: var(--narc-color-text-muted); }
    .mobile-analysis-toggle .mobile-analysis { margin: 0; border: 0; }
    .utterance { grid-template-columns: 46px minmax(0, 1fr); }
    .utterance h3 { font-size: 13px; }.utterance p { font-size: 15px; }
    .recording-heading h1 { font-size: 2rem; }
    .topic-tags .topic-badge, .topic-tags a { font-size: 12px !important; }
}
.recording-card .topic-tags .topic-badge { font-size: 12px !important; }
.fine-print, .analysis-label, .analysis-disclaimer, .speaker-person small, .opinion-subject { font-size: 12px; }

/* Preserve dev’s native mobile navigation alongside the theme picker. */
@media (max-width:760px) {
 .header-inner { gap:8px; }
 .header-inner > .brand { margin-right:0; min-height:44px; }
 .header-inner > .theme-picker { margin-right:72px; }
 .mobile-navigation > .menu-toggle { top:26px; }
}
@media(max-width:800px) {
 .analysis-shortcut-desktop { display:none; }
 .analysis-shortcut-mobile { display:inline; }
}

/* Recette UI : pastilles sobres, personnalités cliquables, proportions. */
.topic-tags { gap: 6px; }
.topic-tags a:has(.topic-badge) { padding: 0; margin: 0; background: none; border-radius: 0; }
.topic-tags .topic-more { padding: 3px 9px; margin: 0; font-size: 12px; color: var(--narc-color-text-muted); border: 1px dashed var(--narc-color-border); border-radius: 20px; background: none; }
.card-person { flex-wrap: wrap; gap: 6px 12px; min-width: 0; }
.card-person__link { display: inline-flex; align-items: center; gap: 7px; min-width: 0; }
.card-person__link:hover .card-person__name { text-decoration: underline; text-underline-offset: 3px; }
.card-person__name { max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.card-person__more { color: var(--narc-color-text-muted); }
.card-person > small { flex-basis: 100%; margin: 0; }
.figure-card { position: relative; }
.figure-card .card-stretched-link::after { content: ''; position: absolute; inset: 0; z-index: 1; }
.figure-card .topic-tags a { position: relative; z-index: 2; }
.illustrated-figure img { height: 180px; }
.metric-grid strong { font-size: clamp(1.4rem, 2vw, 2rem); }

/* Audit tailles (mobile + PC) : cartes personnalité horizontales, extraits bornés, lecture plus dense. */
.illustrated-figure .narc-card__body { display: grid; grid-template-columns: 104px minmax(0, 1fr); column-gap: 18px; align-content: start; align-items: start; height: auto; }
.illustrated-figure .narc-card__body > a:first-child { grid-row: 1 / span 8; display: block; }
.illustrated-figure .narc-card__body > :not(a:first-child) { grid-column: 2; min-width: 0; }
.illustrated-figure img { width: 104px; height: 112px; object-position: center 20%; }
.people-grid--featured .illustrated-figure .narc-card__body { grid-template-columns: 128px minmax(0, 1fr); }
.people-grid--featured .illustrated-figure img { width: 128px; height: 138px; }
.illustrated-figure .eyebrow { margin: 0 0 6px; }
.illustrated-figure h3 { font-size: 1.35rem; margin: 0 0 6px; }
.illustrated-figure p { margin: 0 0 6px; }
.illustrated-figure .topic-tags { margin-top: 4px; }
.recording-excerpt { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.landing-section { margin: 30px 0; }
@media(max-width:600px) {
    .illustrated-figure .narc-card__body, .people-grid--featured .illustrated-figure .narc-card__body { grid-template-columns: 76px minmax(0, 1fr); column-gap: 14px; }
    .illustrated-figure img, .people-grid--featured .illustrated-figure img { width: 76px; height: 84px; border-radius: 8px; }
    .illustrated-figure h3 { font-size: 1.2rem; }
    .recording-card .video-thumbnail img { max-height: 190px; }
    .utterance { gap: 8px; padding: 10px 0; }
    .utterance p { line-height: 1.55; }
    .transcript-segment { padding: 14px 14px 6px; }
    .landing-section { margin: 26px 0; }
}
.illustrated-figure .figure-badge { justify-self: start; }

/* Audit 2 : symbole de thème, onglets de fiche et colonne Méthode. */
.topic-symbol.large { width: 56px; height: 56px; font-size: 28px; }
.method-aside { align-self: start; position: sticky; top: 24px; }
@media(max-width:600px) {
    .topic-symbol.large { width: 44px; height: 44px; font-size: 22px; }
    .method-aside { position: static; }
    .figure-tabs { gap: 14px !important; }
}

/* En-tête mobile : pas de ligne vide sous le logo quand le menu est fermé. */
@media (max-width:760px) {
    .header-inner { min-height: 0; row-gap: 0; align-content: flex-start; padding-block: 12px; }
    .mobile-navigation:not([open]) { height: 0; overflow: hidden; }
    .header-inner > .theme-picker { margin-block: 0; margin-right: 72px; margin-left: auto; }
    .mobile-navigation > .menu-toggle { top: 12px; }
}
