/* NUVAREL readability pass. Preserve the display hierarchy and existing families. */
:root{
  --type-body:1rem;
  --type-reading:1.0625rem;
  --type-support:.875rem;
  --type-label:.8125rem;
  --leading-body:1.8;
  --leading-support:1.7;
}

/* Long reading and explanation text; the existing large lead paragraphs stay large. */
.prose{font-size:var(--type-reading);line-height:1.85;max-width:68ch}
.prose p:not(.article-lede):not(.small),.prose li{font-size:inherit;line-height:inherit}
.prose .small,.article-meta{font-size:var(--type-support);line-height:var(--leading-support)}
.article-meta{min-width:0}
.comparison p:not(.comparison-label),.roadmap p,.journal-feature p,.journal-side p,
.journal-list p,.journal-policy p,.team-grid article>p:last-child,.company-bottom p,
.updates-list p,.governance-label p,.governance-flow p,.life-copy>p:last-child{
  font-size:var(--type-body);line-height:var(--leading-body);
}
.query-list{font-size:var(--type-support);line-height:1.8}
.dimension-list summary{font-size:var(--type-body);line-height:1.7}
.dimension-list summary>span,.dimension-evidence strong{font-size:var(--type-support)}
.dimension-detail-body p,.dimension-evidence p,.evidence-definitions dd{font-size:var(--type-body);line-height:var(--leading-body)}
.development-record dt,.development-record dd{font-size:var(--type-body);line-height:var(--leading-body)}

/* Status, scope and limitations are information, rather than decorative microcopy. */
.small,.hero .hero-footnote,.comparison-foot,.roadmap-note,.journal-category,
.updates-list .small,.governance-status,.life-film figcaption,
.product-preview .product-preview-status,.footer-top .small{
  font-size:var(--type-support);line-height:var(--leading-support);
}
.badge{font-size:var(--type-label);line-height:1.65}
.governance-label{flex-wrap:wrap}
.governance-label .badge{flex-shrink:1;max-width:100%}
.follow-note{font-size:var(--type-support)!important;line-height:var(--leading-support)!important}
.product-preview .product-preview-message{font-size:var(--type-body);line-height:var(--leading-body)}

/* Controls retain their hierarchy while labels remain comfortable to read. */
.btn,.text-link,.journal-filters button,.film-control{font-size:.9375rem;line-height:1.5}
.hero-visual .film-control{bottom:calc(3em + 30px)}
.nav{height:auto;min-height:98px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px;row-gap:16px}
.navlinks{min-width:0;flex-wrap:wrap;justify-content:flex-end}
.navlinks a{line-height:1.6}
.menu-toggle{margin-left:auto}
.footer-bottom{font-size:var(--type-support);line-height:var(--leading-support);flex-wrap:wrap;align-items:flex-start}
.team-contact summary{font-size:var(--type-body)}
.team-contact .team-contact-body>p,.team-contact .contact-status,.team-contact-actions button{font-size:var(--type-support);line-height:var(--leading-support)}

/* Walkthrough: leave display titles alone, enlarge reasons and usable context. */
#experience .demo-introduction-note>p,#experience .demo-explanation,
#experience .active-decision-brief p:not(.brief-result-label):not(.scenario-scope),
#experience .area-intro,#experience .observation-fact,#experience .observation-pane dd,
#experience .brief-result>p:last-child,#experience .project-comparison article>p,
#experience .packet-shortlist p,#experience .packet-checks li,
#experience .next-brief>p:not(.next-context),#experience .action-plan li p{
  font-size:var(--type-body);line-height:var(--leading-body);
}
#experience .demo-context-bar>p,#experience .decision-step-heading small,
#experience .result-status,#experience .observation-pane dt,
#experience .stage-output>p,#experience .stage-output>span,
#experience .packet-masthead span,#experience .next-context{
  font-size:var(--type-support);line-height:var(--leading-support);
}
#experience .demo-context-help,#experience .scenario-scope,
#experience .brief-result-label,#experience .project-status,#experience .packet-boundary{
  font-size:var(--type-support)!important;line-height:var(--leading-support)!important;
}
#experience .active-decision-brief>.scenario-scope,#experience .packet-shortlist .project-status{
  font-size:var(--type-support)!important;line-height:var(--leading-support)!important;
}
#experience .project-fixed-fact,#experience .packet-action{font-size:var(--type-body)!important;line-height:var(--leading-body)}
.decision-lenses button{font-size:.9375rem;line-height:1.5;min-height:48px}
#experience .observation-switch span,#experience .observation-time{font-size:var(--type-label);line-height:1.65}
#experience .observation-switch strong{font-size:var(--type-support);line-height:1.5}
#experience .observation-switch button{min-width:0;min-height:78px}
.tuesday-scene figcaption,.tuesday-scene .scene-key{font-size:var(--type-support);line-height:var(--leading-support)}
#experience .decision-step-heading small{max-width:22ch}
#experience .decision-step-heading button>span:nth-child(2){min-width:0;flex:1}
#experience .decision-step-mark{line-height:1;width:1em;flex:0 0 1em;text-align:center}
.reason-panel .brief-result p:not(.brief-result-label),.lens-action-summary li,
.shared-facts p,.reason-panel .shared-scenario-detail{font-size:var(--type-body);line-height:var(--leading-body)}
.shared-facts summary{font-size:var(--type-support);line-height:1.7;min-height:44px}
.reason-panel .brief-result-label{font-size:var(--type-support)!important}
.lens-copy .lens-note{font-size:var(--type-support)!important;line-height:var(--leading-support)}
.lens-outcome .stage-output>span,.reason-panel .panel-bottom{font-size:var(--type-support);line-height:var(--leading-support)}

/* Score explanations and their boundaries must be readable alongside the diagram. */
#score .trace-heading>p,#score .trace-node>p:last-child,#score .trace-takeaway>p,
#score .score-architecture p{font-size:var(--type-body);line-height:var(--leading-body)}
#score .record-label,#score .record-boundary,#score .trace-takeaway>span,
#score .trace-takeaway button,#score .score-publication p{font-size:var(--type-support);line-height:var(--leading-support)}
#score .trace-stage{font-size:var(--type-label)!important;line-height:1.65}
#score .trace-tabs button{font-size:.9375rem;line-height:1.5;min-width:0;min-height:56px}
#score .trace-takeaway{grid-template-columns:minmax(130px,.65fr) minmax(0,2fr) minmax(130px,.7fr)}

/* Future: the distinction between a plan and a live feature is important copy. */
.horizon-nav span,.horizon-nav small,.horizon-note,.future-local-image figcaption,
.pulse-reasoning li p,.future-tools span,.city-origin>span,.city-possibilities>p,
.city-possibilities>span,.future-gates h3,.future-gates ol{
  font-size:var(--type-support);line-height:var(--leading-support);
}
.horizon-nav>a{min-width:0}
.horizon-nav strong{line-height:1.2}
.pulse-process-label,.pulse-reasoning .pulse-limit,.future-invitation .wrap>.future-invitation-note{
  font-size:var(--type-support)!important;line-height:var(--leading-support)!important;
}
.future-tools p,.future-asset-copy>p:not(.future-asset-lede):not(.future-asset-boundary),
.future-editorial>p:not(.eyebrow),.future-invitation .wrap>p:not(.eyebrow):not(.future-invitation-note){
  font-size:var(--type-body);line-height:var(--leading-body);
}
.future-asset-copy .future-asset-boundary{font-size:var(--type-support);line-height:var(--leading-support)}
.future-invitation .text-link{font-size:.9375rem}
.future-gates ol{gap:16px 25px}
.city-possibilities ul{grid-template-columns:repeat(2,minmax(0,1fr))}
.city-origin>strong{overflow-wrap:anywhere}

/* Reflow at increased text size without changing the default display treatment. */
h1,h2,h3,h4,h5,p,li,dt,dd,summary,small,button,a{overflow-wrap:anywhere}
.section-heading>*,.comparison>*,.company-intro>*,.article-layout>*,.editorial-layout>*,
.roadmap>*,.product-preview>*,.local-future>*,.pulse-future-inner>*,.future-experience>*,
.future-assets>*,.future-section-heading>*,.city-horizon>*,.future-gates>*{min-width:0}
.packet-masthead{flex-wrap:wrap}
.decision-lenses{flex-wrap:wrap}
.journal-list>a{grid-template-columns:.65fr 2fr max-content}
.journal-list>a>span:last-child{width:1em;line-height:1}

@media(min-width:701px) and (max-width:900px){.navlinks{font-size:.8125rem;gap:14px}}
@media(max-width:1050px){#score .trace-takeaway{grid-template-columns:minmax(100px,.6fr) minmax(0,2fr)}}
@media(max-width:900px){
  #experience .decision-step-heading small{max-width:none}
  #score .trace-takeaway{display:block}
  #score .trace-takeaway>p{margin-top:14px}
  #score .trace-takeaway button{margin-top:18px}
}
@media(max-width:700px){
  .nav{min-height:77px;padding-top:12px;padding-bottom:12px}
  .navlinks{top:100%;justify-content:flex-start}
}
@media(max-width:650px){
  .prose{font-size:var(--type-body);line-height:1.85;max-width:100%}
  .prose .article-lede{font-size:20px;line-height:1.65}
  .article-meta{font-size:var(--type-support);gap:12px 24px}
  .horizon-nav small{font-size:var(--type-support)}
  .future-gates ol{font-size:var(--type-support)}
  .future-invitation .text-link{font-size:.9375rem}
  .journal-list>a{grid-template-columns:minmax(0,1fr) max-content}
}
