/* Shared editorial rules. See docs/TYPOGRAPHY_REVIEW.md for decisions and sources. */
:root{
  --type-section:clamp(2.125rem,3.6vw,3.25rem);
  --type-card:clamp(1.375rem,2vw,1.625rem);
  --type-body:1rem;
  --type-support:.875rem;
  --type-meta:.75rem;
}
.value-site{line-break:strict;word-break:normal}
.value-site main p{text-wrap:pretty}
/* Normal-sized phrases stay together; enlarged text can still reflow inside them. */
.copy-line{display:block}
.copy-phrase{display:inline-block;max-inline-size:100%;white-space:normal}
.value-site :is(h1,h2,h3,.example-story,.leadership-promise){text-wrap:wrap}
.value-site .editorial-grid h2,
.value-site #training .section-intro h2,
.value-site #process .section-intro h2,
.value-site .faq h2,
.value-site .contact-grid h2{font-size:var(--type-section);line-height:1.45;letter-spacing:-.035em}
.value-site :is(.section-summary,.approach-copy>p,.experience-detail p,.faq-items details p){font-size:var(--type-body);line-height:1.85}
.value-site :is(.section-intro,.editorial-grid,.profile-grid,.contact-grid)>*{min-width:0}
.value-site .example-story .copy-line{display:inline}
.value-site .example-story{letter-spacing:-.025em}
.value-site .service-row h3{font-size:var(--type-card);line-height:1.5;letter-spacing:-.025em}
.value-site .learning-paths h3{font-size:var(--type-card);line-height:1.5;letter-spacing:-.025em}
.brief-note strong .copy-line+.copy-line{margin-top:0}
.brief-note strong :is(.copy-line,.copy-phrase){font:inherit;color:inherit}
.brief-note>span,.brief-focus>span,.plan-caption,.plan-spec,.delivery-result>span{font-size:var(--type-support);line-height:1.6}
.iteration-loop .loop-return{font-size:var(--type-support);white-space:normal}
.value-site .profile-evidence h3{line-height:1.5}
.value-site :is(.training-closing>p,.learning-materials>div,.lesson-prompt>div,.process-agreements dd){font-size:var(--type-body);line-height:1.85}
.value-site :is(.human-check,.sample-review p,.input-document .source-note){font-size:var(--type-support);line-height:1.75}
.value-site .hero-copy .keep-phrase{max-inline-size:100%;white-space:normal}

@media(max-width:900px){
  :root{--type-section:clamp(1.75rem,7.5vw,2rem);--type-card:1.375rem}
  .value-site #process .section-intro{grid-template-columns:minmax(0,1fr);gap:1.25rem}
  .value-site .work-heading{display:block}
  .value-site .work-heading>p{margin-top:1.25rem}
  .value-site .section-intro .section-summary{max-width:34em}
  .value-site .example-story .copy-line{display:block}
  .value-site .example-story{font-size:1.625rem;line-height:1.5}
  .value-site .learning-message h3{font-size:1.75rem;line-height:1.45}
  .value-site .learning-paths h3{font-size:1.3125rem}
  .value-site .journey-caption h3{font-size:1.1875rem;line-height:1.5}
  .brief-note>span,.brief-focus>span{font-size:.8125rem}
  .plan-caption,.plan-spec,.delivery-result>span{font-size:.875rem}
  .brief-note strong{font-size:1rem;line-height:1.65}
  .brief-focus strong{font-size:1rem;line-height:1.65}
  .iteration-loop{font-size:1rem}
  .iteration-loop .loop-return{font-size:.875rem}
  .value-site .process-terms h3{font-size:1.25rem;line-height:1.65}
}
@media(max-width:480px){
  .value-site .proposal-reader h3{font-size:1.625rem;line-height:1.5}
  .value-site .proposal-table{table-layout:fixed}
  .value-site .proposal-table :is(th,td){font-size:.875rem;padding:.625rem .25rem;line-height:1.5}
  .value-site .proposal-table th:nth-child(1){width:21%}
  .value-site .proposal-table th:nth-child(2){width:27%}
  .value-site .proposal-table th:nth-child(3){width:24%}
  .value-site .proposal-table th:nth-child(4){width:28%}
  .value-site .profile-evidence>div{display:block}
  .value-site .profile-evidence .profile-category{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.875rem}
  .value-site .profile-evidence .profile-category>span{margin:0}
  .value-site .profile-evidence h3{font-size:1.5rem}
  .value-site .profile-evidence .evidence-description{margin-top:.625rem}
  .value-site .profile-lead .leadership-promise{font-size:clamp(1.625rem,7.4vw,1.875rem);line-height:1.6}
  .value-site .workspace :is(#source-title,#result-title){font-size:1.125rem;line-height:1.6}
}
@media(max-width:360px){
  .value-site .service-row{grid-template-columns:1.25rem minmax(0,1fr) 1.125rem;gap:.5rem}
  .value-site .service-row h3{font-size:1.25rem}
  .brief-diagram{grid-template-columns:minmax(0,1fr);gap:.625rem}
  .brief-note,.brief-focus{width:100%;padding:1rem 1.125rem}
  .brief-diagram>.diagram-arrow{transform:none}
  .brief-focus strong{font-size:1.125rem}
  .delivery-diagram{grid-template-columns:minmax(0,1fr);gap:1rem}
  .delivery-result{padding:1rem}
  .iteration-loop{font-size:1rem;grid-template-columns:minmax(0,1fr) 1.5rem minmax(0,1fr)}
  .iteration-loop>span:first-child,.iteration-loop>span:nth-child(3){white-space:normal}
}
