.workspace-nav > header > div { min-width: 0; display: grid; gap: 4px; }
.workspace-nav > header > div > small { font-size: 7px; color: var(--muted); }
.nav-logo { display: block; width: auto; max-width: 150px; height: 22px; object-fit: contain; object-position: left center; }
.product-next { margin-top: 18px; border-top: 1px solid var(--line); padding-top: 14px; display: flex; align-items: center; justify-content: flex-end; gap: 12px; }
.product-next > span { color: var(--muted); font-size: 8px; }
.experiences-page .experience { margin-top: 0; padding-top: 0; border-top: 0; }
.profile-header-logo { float: right; display: block; width: auto; max-width: 185px; height: 28px; object-fit: contain; object-position: right center; margin: 0 0 15px 18px; }
.profile-rail-logo { display: block; width: 100%; max-width: 165px; height: 36px; object-fit: contain; object-position: left center; margin-bottom: 24px; }
.profile-sheet-full { max-width: 980px; }
.profile-sheet-full .profile-main { padding: 32px 34px; }
.profile-sheet-full .profile-main section { margin-top: 17px; }
.profile-sheet-full .profile-main li { font-size: 8.5px; line-height: 1.48; margin-bottom: 5px; }
.outreach { margin-top: 52px; border-top: 1px solid var(--line-dark); padding-top: 28px; }
.outreach > header { display: grid; grid-template-columns: 125px minmax(0, 720px); gap: 8px 26px; margin-bottom: 18px; }
.outreach > header > span { grid-row: 1 / 4; font: 500 7px var(--mono); color: var(--accent); text-transform: uppercase; }
.outreach > header h2 { margin: 0; font-size: 28px; letter-spacing: -.04em; }
.outreach > header p { margin: 0; color: var(--muted); font-size: 9px; line-height: 1.55; }
.contact-card { display: grid; grid-template-columns: 235px minmax(0, 1fr); border: 1px solid var(--line-dark); background: var(--paper); box-shadow: var(--shadow); }
.contact-card > div { padding: 22px; background: var(--paper-2); border-right: 1px solid var(--line); }
.contact-logo { display: block; max-width: 160px; width: auto; height: 28px; object-fit: contain; object-position: left center; margin-bottom: 25px; }
.contact-card dl { margin: 0; }
.contact-card dt { margin-top: 12px; font: 500 6px var(--mono); text-transform: uppercase; color: var(--muted); }
.contact-card dd { margin: 4px 0 0; font-size: 9px; font-weight: 700; line-height: 1.4; }
.contact-card dd a { color: var(--accent); }
.contact-card > article { padding: 22px; }
.contact-card > article > span { display: block; margin-bottom: 6px; font: 500 6px var(--mono); color: var(--accent); text-transform: uppercase; }
.contact-card > article > strong { display: block; margin-bottom: 19px; font-size: 11px; }
.contact-card > article > textarea { display: block; width: 100%; min-height: 214px; margin: 0; padding: 14px; resize: vertical; border: 1px solid var(--line); border-radius: 0; background: #fff; color: var(--ink); font: 9px/1.58 var(--sans); }
.contact-card > article > footer { display: flex; align-items: center; gap: 8px; margin-top: 13px; }
.contact-card > article > footer small { color: var(--green); font: 7px var(--mono); }

/* Readability scale: primary reading text targets roughly 11–12pt on screen. */
.workspace { grid-template-columns: 236px minmax(0, 1fr) 320px; }
.page { font-size: 15px; }
.workspace-nav > header > div > small { font-size: 11px; }
.nav-search { height: 40px; font-size: 12px; }
.nav-search kbd { font-size: 10px; }
.nav-label { font-size: 10px; padding-top: 18px; }
.workspace-nav nav button { height: 44px; font-size: 13px; }
.workspace-nav nav button b { font-size: 14px; }
.workspace-nav nav button i { font-size: 9px; }
.lens-list span { font-size: 12px; line-height: 1.45; }
.workspace-nav > footer { font-size: 9px; line-height: 1.45; }
.breadcrumbs { font-size: 12px; }
.view-label { font-size: 10px; }
.top-actions > span { font-size: 10px; }
.top-actions button { font-size: 12px; }
.eyebrow,
.section-heading > span,
.definition-card > span,
.boundary-card > span,
.experience header span,
.layer-detail > div > span,
.proof-grid article > span,
.direction-strip > span,
.market-summary article > span,
.reference-grid article > span,
.context-label { font-size: 10px; line-height: 1.35; }
.hero-copy > p { font-size: clamp(18px, 1.5vw, 21px); line-height: 1.52; }
.primary-button, .quiet-button { min-height: 42px; height: auto; padding: 10px 16px; font-size: 13px; line-height: 1.25; }
.metric-strip span { font-size: 10px; }
.metric-strip small { font-size: 11px; line-height: 1.5; }
.metric-strip strong { font-size: 32px; }
.definition-card h2 { font-size: 25px; }
.definition-card p, .boundary-card p { font-size: 15px; line-height: 1.58; }
.formula em { font-size: 12px; }
.citation { min-width: 24px; height: 20px; font-size: 9px; }
.section-heading p { font-size: 17px; line-height: 1.55; }
.product-node span { font-size: 10px; }
.product-node strong { font-size: 18px; }
.product-node small { font-size: 13px; line-height: 1.4; }
.layer-detail p { font-size: 15px; line-height: 1.58; }
.layer-detail dt { font-size: 10px; }
.layer-detail dd { font-size: 14px; line-height: 1.5; }
.layer-detail footer strong { font-size: 13px; }
.layer-detail footer p { font-size: 15px; line-height: 1.55; }
.product-next > span { font-size: 13px; }
.experience header p { font-size: 15px; line-height: 1.55; }
.scenario-tabs button { min-height: 40px; height: auto; padding: 9px 13px; font-size: 13px; }
.experience-stage > aside > span { font-size: 10px; }
.experience-stage > aside h3 { font-size: 18px; }
.experience-stage ul { font-size: 14px; line-height: 1.55; }
.stepper button { min-height: 48px; height: auto; padding: 8px; font-size: 11px; line-height: 1.3; }
.stepper button span { font-size: 9px; }
.step-output > span { font-size: 10px; }
.step-output h3 { font-size: 24px; }
.step-output > p, .handoff p { font-size: 15px; line-height: 1.55; }
.output-window { font-size: 12px; line-height: 1.5; }
.step-controls span, .handoff small { font-size: 10px; line-height: 1.45; }
.proof-grid h2 { font-size: 19px; }
.proof-grid p, .case-grid p, .direction-strip p, .reference-grid p { font-size: 15px; line-height: 1.55; }
.subheading span { font-size: 10px; }
.subheading h2 { font-size: 30px; }
.case-grid header strong { font-size: 16px; }
.case-grid h3 { font-size: 18px; }
.direction-strip h2 { font-size: 24px; }
.direction-strip em { font-size: 11px; }
.market-summary p { font-size: 13px; line-height: 1.5; }
table { font-size: 13px; line-height: 1.45; }
th { padding: 13px 11px; font-size: 10px; line-height: 1.35; }
td { padding-top: 13px; padding-bottom: 13px; }
td:first-child { font-size: 14px; }
.reference-grid h3 { font-size: 16px; }
.export-toolbar strong { font-size: 13px; }
.export-toolbar span { font-size: 11px; }
.profile-main header > span { font-size: 10px; }
.profile-main header p { font-size: 15px; line-height: 1.58; }
.profile-sheet-full .profile-main li, .profile-main li { font-size: 15px; line-height: 1.52; margin-bottom: 8px; }
.profile-main section h3, .profile-sheet > aside h3 { font-size: 11px; line-height: 1.35; }
.profile-sheet dt { font-size: 10px; }
.profile-sheet dd { font-size: 14px; line-height: 1.4; }
.profile-sheet > aside a { font-size: 12px; line-height: 1.45; padding: 10px 0; }
.source-list > a { min-height: 64px; }
.source-list > a > span { font-size: 10px; }
.source-list strong { font-size: 14px; line-height: 1.4; }
.source-list small { font-size: 11px; line-height: 1.4; }
.source-list em { font-size: 9px; }
.glossary strong { font-size: 14px; }
.glossary p { font-size: 13px; line-height: 1.5; }
.inspector { grid-template-rows: 58px 44px minmax(0, 1fr) 50px; }
.inspector > header strong { font-size: 13px; }
.inspector-tabs button { font-size: 10px; }
.inspector-body { padding: 25px 20px; }
.inspector-body h2 { font-size: 23px; }
.inspector-body > p { font-size: 14px; line-height: 1.55; }
.context-points span { font-size: 13px; line-height: 1.5; }
.inspector-sources a > b { font-size: 9px; }
.inspector-sources strong { font-size: 13px; line-height: 1.4; }
.inspector-sources small { font-size: 10px; }
.inspector textarea { font-size: 14px; line-height: 1.5; }
.note-status { font-size: 9px; }
.inspector > footer { font-size: 9px; }
.outreach > header > span { font-size: 10px; }
.outreach > header p { font-size: 15px; line-height: 1.55; }
.contact-card dt, .contact-card > article > span { font-size: 10px; }
.contact-card dd { font-size: 14px; }
.contact-card > article > strong { font-size: 15px; line-height: 1.4; }
.contact-card > article > textarea { min-height: 360px; font-size: 15px; line-height: 1.55; }
.contact-card > article > footer small { font-size: 10px; }


@media (max-width: 1180px) {
  .workspace { grid-template-columns: 210px minmax(0, 1fr); }
}

@media (max-width: 800px) {
  .product-next { justify-content: flex-start; flex-wrap: wrap; }
  .outreach > header { grid-template-columns: 1fr; }
  .outreach > header > span { grid-row: auto; }
  .contact-card { grid-template-columns: 1fr; }
  .contact-card > div { border-right: 0; border-bottom: 1px solid var(--line); }
  .contact-card > article > footer { flex-wrap: wrap; }
}

/* Structured research workspace: technology, product, experience, evidence and outreach */
.workspace-nav nav button { min-height: 38px; height: auto; padding-top: 7px; padding-bottom: 7px; }
.product-tabs { display: grid; grid-template-columns: repeat(7, minmax(118px, 1fr)); overflow-x: auto; border: 1px solid var(--line-dark); background: var(--paper); }
.product-tabs button { min-height: 84px; border: 0; border-right: 1px solid var(--line); padding: 14px; background: transparent; text-align: left; cursor: pointer; display: grid; align-content: start; gap: 7px; }
.product-tabs button:last-child { border-right: 0; }
.product-tabs button span { font-size: 15px; font-weight: 750; }
.product-tabs button small { color: var(--muted); font-size: 12px; line-height: 1.35; }
.product-tabs button.is-active { color: white; background: var(--accent); }
.product-tabs button.is-active small { color: white; }
.product-detail { margin-top: 14px; border: 1px solid var(--line-dark); background: var(--paper); box-shadow: var(--shadow); }
.product-detail > header { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(210px, .65fr); border-bottom: 1px solid var(--line); }
.product-detail > header > div { padding: 27px 30px; }
.product-detail > header > div > span, .product-detail > header aside span, .product-flow span, .experience-key span, .outreach-compose > header > span, .outreach-grid article > span { font: 500 10px var(--mono); color: var(--accent); text-transform: uppercase; letter-spacing: .08em; }
.product-detail h2 { margin: 10px 0 8px; font-size: 32px; letter-spacing: -.04em; }
.product-detail header p { margin: 0; color: var(--muted); font-size: 15px; line-height: 1.55; max-width: 720px; }
.product-detail > header aside { padding: 27px 24px; background: var(--accent-soft); border-left: 1px solid var(--line); }
.product-detail > header aside strong { display: block; margin-top: 16px; font-size: 17px; line-height: 1.45; }
.product-flow { display: grid; grid-template-columns: 1fr 34px 1fr 34px 1fr; align-items: stretch; border-bottom: 1px solid var(--line); }
.product-flow article { min-height: 118px; padding: 21px; display: grid; align-content: start; gap: 15px; }
.product-flow article strong { font-size: 15px; line-height: 1.45; }
.product-flow i { display: grid; place-items: center; color: var(--accent); font-style: normal; border-left: 1px solid var(--line); border-right: 1px solid var(--line); }
.product-utility { display: grid; grid-template-columns: repeat(4, 1fr); }
.product-utility dl { margin: 0; min-height: 112px; padding: 18px; border-right: 1px solid var(--line); }
.product-utility dl:last-child { border-right: 0; }
.product-utility dt { color: var(--accent); font: 500 10px var(--mono); text-transform: uppercase; }
.product-utility dd { margin: 10px 0 0; font-size: 14px; line-height: 1.45; }
.product-detail > footer { display: flex; gap: 18px; align-items: center; padding: 16px 21px; border-top: 1px solid var(--line); background: var(--paper-2); }
.product-detail > footer p { flex: 1; margin: 0; font-size: 14px; line-height: 1.5; }

.scenario-overview { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line-dark); background: var(--paper); }
.scenario-overview button { min-height: 164px; padding: 19px; border: 0; border-right: 1px solid var(--line); background: transparent; text-align: left; cursor: pointer; display: grid; align-content: start; gap: 9px; }
.scenario-overview button:last-child { border-right: 0; }
.scenario-overview button > span { color: var(--accent); font: 500 10px var(--mono); text-transform: uppercase; }
.scenario-overview button strong { font-size: 19px; }
.scenario-overview button small { color: var(--muted); font-size: 14px; line-height: 1.45; }
.scenario-overview button em { align-self: end; margin-top: 8px; font: 500 10px var(--mono); font-style: normal; }
.scenario-overview button.is-active { background: var(--accent-soft); box-shadow: inset 0 -4px var(--accent); }
.experience { margin-top: 24px; }
.experience-key { min-width: 220px; padding: 13px 15px; border: 1px solid var(--line); background: var(--paper); }
.experience-key strong { display: block; margin-top: 6px; font-size: 13px; line-height: 1.4; }
.stepper { grid-template-columns: repeat(var(--steps), 1fr); }
.plain-language { margin-top: 15px; padding: 13px 15px; border-left: 3px solid var(--accent); background: var(--accent-soft); }
.plain-language strong { font-size: 12px; }
.plain-language p { margin: 5px 0 0; font-size: 13px; line-height: 1.45; color: var(--muted); }

.evidence-ledger { border: 1px solid var(--line-dark); background: var(--paper); }
.evidence-ledger > header, .evidence-ledger > article { display: grid; grid-template-columns: minmax(125px,.6fr) minmax(260px,1.4fr) minmax(250px,1.15fr) 76px; }
.evidence-ledger > header { background: var(--paper-2); }
.evidence-ledger > header span { padding: 11px 14px; border-right: 1px solid var(--line); font: 500 10px var(--mono); text-transform: uppercase; color: var(--muted); }
.evidence-ledger > article { border-top: 1px solid var(--line); }
.evidence-ledger > article > * { padding: 17px 14px; border-right: 1px solid var(--line); margin: 0; }
.evidence-ledger > article > *:last-child { border-right: 0; }
.evidence-ledger article > div:first-child { display: grid; align-content: start; gap: 12px; }
.evidence-ledger article > div:first-child span { color: var(--accent); font: 500 10px var(--mono); text-transform: uppercase; }
.evidence-ledger article > div:first-child strong { font: 500 20px var(--mono); }
.evidence-ledger h2 { margin: 0 0 6px; font-size: 16px; }
.evidence-ledger p { color: var(--muted); font-size: 13px; line-height: 1.5; }
.case-table td { font-size: 13px; }
.case-table th { font-size: 10px; }
.case-metric { color: var(--accent); font: 500 15px var(--mono); }

.section-prompt { margin: -3px 0 9px; color: var(--muted); font-size: 12px; line-height: 1.4; }
.profile-main li { padding-left: 2px; }
.profile-main li strong { display: inline; margin-right: 5px; }
.profile-main li strong::after { content: " —"; }
.terms-table table { table-layout: fixed; }
.terms-table th, .terms-table td { font-size: 13px; line-height: 1.5; }
.terms-table th { font-size: 10px; }
.terms-table th:first-child, .terms-table td:first-child { width: 20%; }
.terms-table th:nth-child(2), .terms-table td:nth-child(2) { width: 38%; }
.terms-table td { padding: 16px; }

.contact-targets, .outreach-compose { border: 1px solid var(--line-dark); background: var(--paper); }
.contact-targets > header, .contact-targets > article { display: grid; grid-template-columns: minmax(150px,.8fr) minmax(130px,.65fr) minmax(180px,.9fr) minmax(260px,1.35fr); }
.contact-targets > header { background: var(--paper-2); }
.contact-targets > header span { padding: 11px 14px; border-right: 1px solid var(--line); color: var(--muted); font: 500 10px var(--mono); text-transform: uppercase; }
.contact-targets > article { border-top: 1px solid var(--line); }
.contact-targets > article > * { padding: 16px 14px; border-right: 1px solid var(--line); margin: 0; font-size: 13px; line-height: 1.45; }
.contact-targets > article > *:last-child { border-right: 0; }
.contact-targets article div { display: grid; gap: 4px; }
.contact-targets article small { color: var(--muted); font-size: 11px; }
.contact-targets a { color: var(--accent); font-weight: 700; }
.outreach-compose { margin-top: 42px; }
.outreach-compose > header { padding: 24px 26px; border-bottom: 1px solid var(--line); }
.outreach-compose > header h2 { margin: 8px 0 6px; font-size: 27px; }
.outreach-compose > header p { margin: 0; max-width: 850px; color: var(--muted); font-size: 14px; line-height: 1.55; }
.outreach-grid { display: grid; grid-template-columns: 250px minmax(0,1fr); }
.outreach-grid > aside { padding: 24px; background: var(--paper-2); border-right: 1px solid var(--line); }
.outreach-grid > aside dl { margin: 22px 0 0; }
.outreach-grid > aside dt { margin-top: 15px; color: var(--muted); font: 500 10px var(--mono); text-transform: uppercase; }
.outreach-grid > aside dd { margin: 6px 0 0; font-size: 14px; font-weight: 700; }
.outreach-grid > article { padding: 24px; }
.subject-options { display: flex; gap: 8px; margin: 10px 0 20px; flex-wrap: wrap; }
.subject-options button { border: 1px solid var(--line-dark); background: var(--paper); padding: 9px 11px; font-size: 13px; cursor: pointer; }
.subject-options button.is-active { color: white; background: var(--accent); border-color: var(--accent); }
.outreach-grid textarea { width: 100%; min-height: 480px; margin-top: 10px; padding: 18px; border: 1px solid var(--line); resize: vertical; background: #fff; font-size: 14px; line-height: 1.6; }
.outreach-grid footer { display: flex; align-items: center; gap: 8px; margin-top: 10px; }
.outreach-grid footer small { color: var(--muted); }

@media (max-height: 820px) and (min-width: 801px) { .workspace-nav .lens-list, .workspace-nav .nav-label:last-of-type { display: none; } }
@media (max-width: 1400px) and (min-width: 1001px) {
  .evidence-ledger > header, .evidence-ledger > article { grid-template-columns: 105px minmax(215px, 1.25fr) minmax(185px, 1fr) 62px; min-width: 0; }
  .evidence-ledger > header span, .evidence-ledger > article > * { padding-left: 11px; padding-right: 11px; }
  .evidence-ledger h2 { font-size: 15px; }
  .evidence-ledger p { font-size: 12px; }
  .evidence-ledger article > div:first-child strong { font-size: 18px; }
  .evidence-ledger footer .citation { display: grid; margin: 0 0 4px; width: max-content; }
}
@media (max-width: 1000px) {
  .product-detail > header, .outreach-grid { grid-template-columns: 1fr; }
  .product-detail > header aside, .outreach-grid > aside { border-left: 0; border-right: 0; border-top: 1px solid var(--line); }
  .product-utility { grid-template-columns: repeat(2, 1fr); }
  .product-utility dl:nth-child(2) { border-right: 0; }
  .product-utility dl:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .evidence-ledger { overflow-x: auto; }
  .evidence-ledger > header, .evidence-ledger > article { min-width: 820px; }
  .contact-targets { overflow-x: auto; }
  .contact-targets > header, .contact-targets > article { min-width: 850px; }
}
@media (max-width: 800px) {
  .product-tabs { grid-template-columns: repeat(7, minmax(150px, 1fr)); }
  .product-flow { grid-template-columns: 1fr; }
  .product-flow i { border: 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); min-height: 30px; transform: rotate(90deg); }
  .product-utility, .scenario-overview { grid-template-columns: 1fr; }
  .product-utility dl, .scenario-overview button { border-right: 0; border-bottom: 1px solid var(--line); }
  .scenario-overview button:last-child { border-bottom: 0; }
  .experience-key { margin-top: 14px; }
  .outreach-grid textarea { min-height: 560px; }
}

