/* Targeted small-type corrections. Approved display heading sizes are unchanged. */
.nav-item>a{font-size:clamp(14px,1.05vw,16px)}
.button,.header-cta,.hero-actions .button,.footer-brand .button,.cap-expanded .button,.mega-call .button{font-size:16px;letter-spacing:.015em}
.header-cta{padding-inline:18px;gap:14px;font-size:clamp(14px,1.12vw,16px)}
.text-link,.hero-actions .text-link,.thinking-all{font-size:15px;letter-spacing:.035em}
.eyebrow,.hero .eyebrow,.problem-intro .eyebrow,.final-cta .eyebrow{font-size:14px;letter-spacing:.10em}
.hero-support{font-size:18px}
.hero-footnote{font-size:12px;letter-spacing:.13em}
.signal-node small{font-size:12px;letter-spacing:.025em}
.system-core>span{font-size:12px;letter-spacing:.035em}
.system-core strong{font-size:18px}
.system-caption{font-size:12px;letter-spacing:.10em}
.problem-intro>p:not(.eyebrow),.capabilities-intro>p:not(.eyebrow):not(.micro),.thinking-heading>p{font-size:18px}
.scroll-cue,.problem-intro .scroll-cue{font-size:12px;letter-spacing:.075em}
.problem-card header,.problem-card header small{font-size:14px}
.problem-card-body .micro{font-size:12px;letter-spacing:.07em}
.card-bottom{font-size:13px}.card-bottom .text-link{font-size:13px}
.cap-heading strong{font-size:16px}.cap-heading>span{font-size:14px}.cap-expanded p,.cap-expanded ul{font-size:15px}
.partner-note{font-size:12px;letter-spacing:.12em}
.work-copy>.micro,.work-tags{font-size:12px}.work-status{font-size:11px}.work-link{font-size:14px}
.article-row .micro{font-size:12px}.preview-label{font-size:11px}
.footer-links summary,.footer-for h3,.footer-connect h3{font-size:12px}
.footer-links a,.footer-for a,.footer-connect button,.footer-connect>a{font-size:16px}
.footer-bottom,.footer-bottom p,.footer-bottom button,.footer-bottom a,.footer-bottom>div>span{font-size:14px}
.footer-signoff{font-size:12px;letter-spacing:.12em}.footer-brand .eyebrow{font-size:12px}
@media(min-width:961px) and (max-width:1150px){
  .desktop-nav{gap:13px}.header-cta{padding-inline:12px;gap:10px;font-size:14px}
  .brand-artwork{width:min(170px,48vw);height:auto}
  .hero-actions{gap:18px}.hero-actions .button{font-size:15px;padding-inline:16px;gap:16px}
  .hero-actions .text-link{font-size:14px}
}
/* The existing retractable menu is reused when readable desktop navigation cannot fit. */
@media(min-width:769px) and (max-width:960px){
  .header-inner,.scrolled .header-inner{height:76px}.desktop-nav,.header-cta{display:none}
  .menu-toggle{display:flex;flex-direction:column;gap:5px;width:40px;height:40px;justify-content:center;align-items:center;background:none;border:0}
  .menu-toggle span{height:1px;width:19px;background:#111;transition:transform .25s}
  .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}
  .mobile-menu{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .35s var(--ease),visibility .35s;border-bottom:1px solid transparent}
  .mobile-menu>div{overflow:hidden;padding-inline:32px}.mobile-menu.open{grid-template-rows:1fr;visibility:visible;border-color:#ddd}
  .mobile-menu a{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:17px;padding:12px 0;border-top:1px solid var(--border)}
  .mobile-menu a>span{color:var(--red);font-size:23px;font-weight:400}
  .mobile-menu .button{width:100%;border-radius:7px;margin-top:9px;min-height:44px}
  .menu-social{display:flex;justify-content:center;gap:24px;padding-block:17px}.menu-social button,.menu-social a{border:0;background:none;font-size:14px;padding:0}
}
@media(max-width:768px){
  .button,.hero-actions .button,.footer-brand .button,.cap-expanded .button,.work-next .button{font-size:16px;gap:16px;padding-inline:18px}
  .hero-actions .text-link,.text-link,.thinking-all{font-size:15px}
  .eyebrow,.hero .eyebrow,.problem-intro .eyebrow,.final-cta .eyebrow{font-size:12px;letter-spacing:.07em}
  .hero .eyebrow{font-size:11px;gap:10px}
  .hero-support,.problem-intro>p:not(.eyebrow),.capabilities-intro>p:not(.eyebrow):not(.micro),.thinking-heading>p{font-size:16px}
  .hero-footnote{font-size:10px;letter-spacing:.08em}
  .system-core>span{font-size:11px}.system-core strong{font-size:16px}.system-caption{font-size:10px}
  .problem-intro .scroll-cue{font-size:10px;max-width:280px}
  .problem-card-body .micro{font-size:10px}.problem-card header,.problem-card header small{font-size:12px}
  .card-bottom,.card-bottom .text-link{font-size:11px}.cap-heading strong{font-size:14px;line-height:1.35}.cap-expanded ul{font-size:14px}
  .work-copy>.micro{font-size:10px}.work-tags{font-size:10px}.work-status{font-size:9px}.work-link{font-size:12px}
  .article-row .micro{font-size:11px}.preview-label{font-size:10px}
  .footer-links summary{font-size:16px}.footer-links a,.footer-connect button,.footer-connect>a{font-size:16px}
  .footer-bottom p,.footer-bottom button,.footer-bottom a,.footer-bottom>div>span{font-size:14px}
  .footer-brand .eyebrow{font-size:12px}.menu-social button,.menu-social a{font-size:14px}
}
@media(max-width:430px){.footer-bottom>div>span{flex-basis:100%}.footer-bottom>div{row-gap:10px}.hero-actions{gap:16px}.hero .eyebrow>span{width:24px;flex-shrink:0}}
@media(max-width:374px){
  .hero .eyebrow{font-size:10px;letter-spacing:.035em}.hero .eyebrow>span{width:18px}
  .hero-actions .button{font-size:15px;padding-inline:16px}.system-core>span{font-size:10px}
  .problem-card header,.problem-card header small{font-size:11px}.problem-card-body .micro{font-size:9px}
  .cap-heading strong{font-size:14px}.work-copy>.micro{font-size:9px}.work-tags{font-size:9px}
}
@media(max-width:768px) and (max-height:700px){
  .problem-intro>p:not(.eyebrow){font-size:15px}.problem-intro .scroll-cue{font-size:9px}
  .work-copy>.micro{font-size:9px}.work-tags{font-size:9px}.work-status{font-size:8px}.work-link{font-size:11px}
}
.mega-services a{font-size:14px}.mega-services span{font-size:13px}.mega-intro p,.mega-call p{font-size:14px}
@media(min-width:961px) and (max-width:1150px){.mega-call .button{font-size:13px;gap:8px;padding-inline:10px}}
