/* Readable copy at every viewport; keep the established typeface and headings. */
:root{--text:#4e5e59;--muted:#607168}
body{font-size:16px}

/* Main explanatory copy. Dark sections retain their light foreground colours. */
.home-hero-product,.moment-copy>p:last-child,.user-quote,.follow-up>p,
.dna-profile li,.property-reason,.open-question>p,.dna-layers p,
.business-grid p,.honest-note p,.approach-steps p,.faq-intro,
.faq-list details>p,.team-description,.reference-copy>p:last-child,
.meaning-grid article>p:last-child,.legal-dialog>p{font-size:16px;line-height:1.7}
.home-hero-product{max-width:440px;color:#f4f0e5}
.moment-copy>p:last-child,.team-description,.reference-copy>p:last-child{color:#4e5e59}
.user-quote{line-height:1.75}
.faq-list summary{font-size:16px;line-height:1.6}

/* Introductions have a clear, comfortable reading size. */
.home-hero-lead{font-size:clamp(18px,1.4vw,20px);line-height:1.7}
.emotional-intro-copy,.aside,.listening-copy>p,.dna-intro>p:last-child,
.team-collaboration>p:last-child,.contact-copy>p:not(.eyebrow){font-size:18px;line-height:1.7}
.emotional-intro-copy{max-width:700px}
.emotional-intro-copy,.listening-copy>p,.team-collaboration>p:last-child{color:#4e5e59}

/* Roles, property facts and explanatory notes remain easy to read. */
.team-role,.reference-status,.reference-action>p,.property-facts,
.framework,.profile-brand strong,.dna-heading strong,.selection-top p,
.comparison summary,.comparison table,.example-note,.listening-steps,
.contact-person>div>span,.contact-person a,.form-explanation,.form-status,
.mail-fallback,.mail-fallback .quiet-link{font-size:14px;line-height:1.6}
.team-role{color:#50675b}
.reference-status{color:#45634e}
.reference-action>p,.property-facts,.profile-brand>div>span,
.example-note,.contact-person>div>span,.form-explanation{color:#56685e}
.profile-brand>div>span,.comparison caption{font-size:12px;line-height:1.6}
.selection-top{flex-wrap:wrap;gap:10px}
.micro-label,.framework>span,.open-question>span{font-size:10px;line-height:1.6}
.fiction-badge,.property-letter,.match-label{font-size:10px;line-height:1.5}
.moment-note{font-size:12px;color:#5b6c60}
.home-hero-image>figcaption{font-size:11px;color:#fff9ee}
.home-hero-bottom>p{font-size:11px;line-height:1.6}
.home-hero-bottom>a{font-size:13px;line-height:1.6}

/* Let the scenario names wrap instead of shrinking them on small screens. */
.scenario-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.scenario-tabs button{font-size:14px;line-height:1.5;margin:0;padding:14px 0 18px;text-align:left;max-width:none;min-width:0;color:#586b60}
.scenario-tabs button>span{display:block;font-size:11px;margin:0 0 4px;color:#607466}
.scenario-tabs button[aria-selected=true]::after{right:0}

/* Contact controls and supporting information. */
.contact-person strong{font-size:16px}
.field label,.field label>.optional{font-size:14px;line-height:1.5}
.field input,.field textarea{font-size:16px;line-height:1.5}
.field input::placeholder,.field textarea::placeholder{font-size:14px}
.form-submit,.reference-action .button,.home-button,.home-hero-actions>.quiet-link{font-size:14px}
.reference-action>p{max-width:300px}
.footer-main p{font-size:16px;line-height:1.7}
.footer-main p>span,.footer-bottom,.footer-bottom>span:nth-child(2),
.footer-bottom button,.footer-collaboration{font-size:14px;line-height:1.6}
.footer-main p>span,.footer-bottom,.footer-collaboration{color:#526457}
.footer-bottom{flex-wrap:wrap;gap:12px 24px}
.legal-dialog h3{font-size:18px}
.legal-dialog .legal-small{font-size:14px;line-height:1.7}

@media(max-width:760px){
  .scenario-tabs{gap:12px}
  .home-hero-bottom>p{max-width:115px;letter-spacing:1px}
  .home-hero-bottom>a{max-width:180px}
}
