/* Phase 1.0.4 — responsive legibility corrections only. Desktop >= 1025px unchanged. */
@media (max-width: 1024px) {
  :root { --color-text-muted: #A9A5A0; --color-text-tertiary: #B8B4AF; --color-text-secondary: #C6C2BC; }
  .footer__logo, .footer__links a, .cs-nav__item, .cs-nav__label,
  .hero__bar-label, .about-fact__label, .hub-project__category,
  .project__category, .project__outcome-label, .hub-project__outcome-label,
  .cs-snapshot__label { color: #B4AFA9; }
  a:focus-visible, button:focus-visible { outline: 2px solid #D6A05C; outline-offset: 4px; }
  .cs-section-images, .cs-image-group, .cs-image-group--breakout { min-width: 0; max-width: 100%; }
  .cs-image, .cs-image img, .cs-image-group img, .hub-project__thumb img, .project__thumb img { max-width: 100%; height: auto; }
}
@media (max-width: 768px) {
  :root { --text-xs: .8125rem; --text-sm: .875rem; --text-base: 1.0625rem; --text-md: 1.125rem; }
  html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
  body { font-size: 1.0625rem; line-height: 1.65; }
  p { font-size: inherit; line-height: 1.65; }
  .site-nav { display: flex; justify-content: space-between; align-items: center; padding: 0 20px; }
  .site-nav .nav-center { margin: 0; text-align: left; font-size: 1.125rem; order: 0; }
  .site-nav .nav-right { margin-left: auto; order: 1; }
  .site-nav .nav-toggle { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 10px; flex-shrink: 0; }
  .site-nav .nav-toggle span { width: 24px; background: #E8E5E0; }
  .nav-mobile a { color: #E8E5E0; }
  .hero__body, .about-body__text, .cs-section__text, .cs-decision__text,
  .cs-outcome-highlight__text, .hub-header__desc, .hub-project__desc,
  .project__desc, .project__outcome-desc, .hub-project__outcome-desc,
  .testimonial__body, .about-pillar__body, .home-about__body { font-size: 1.0625rem; line-height: 1.7; color: #C2BDB7; }
  .about-body__opening { font-size: 1.25rem; line-height: 1.6; }
  .hero__h1-intro { color: #B7B1AB; font-size: 1rem; }
  .hero__h1-b { color: #9F9A94; }
  .hero__bar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hero__bar-cell { padding: 20px; min-width: 0; }
  .hero__bar-cell:nth-of-type(5) { grid-column: 1 / -1; }
  .hero__bar-label, .about-fact__label { font-size: .8125rem; line-height: 1.5; letter-spacing: .07em; }
  .hero__bar-value { font-size: 1.625rem; }
  .hero__bar-cta { padding: 20px; }
  .project__info, .hub-project__info { padding: 24px 20px; }
  .project__name, .hub-project__name { font-size: 1.375rem; line-height: 1.3; }
  .project__outcome, .hub-project__outcome { padding: 20px; }
  .project__outcome-desc, .hub-project__outcome-desc { width: 100%; }
  .about-body__content, .cs-body__content { padding-left: 20px; padding-right: 20px; min-width: 0; }
  .about-body__break { display: block; margin-top: 8px; }
  .about-body__break + .about-body__text { margin-top: 0; }
  .about-body__break-label, .cs-section__label { font-size: .875rem; letter-spacing: .08em; line-height: 1.5; }
  .about-pillar__num { color: #B88B55; }
  .about-pillar__title { font-size: 1.25rem; }
  .about-fact__value { font-size: 1.0625rem; }
  .cs-header__main { padding-left: 20px; padding-right: 20px; }
  .cs-snapshot { padding-left: 20px; padding-right: 20px; }
  .cs-snapshot__label { font-size: .8125rem; }
  .cs-snapshot__value { font-size: 1rem; }
  .cs-section { display: block; min-width: 0; }
  .cs-section__label { margin-bottom: 16px; }
  .cs-decisions { gap: 0; }
  .cs-decision { grid-template-columns: 42px minmax(0,1fr); gap: 12px; padding: 20px 0; }
  .cs-decision::before { font-size: 1rem; font-weight: 600; padding-top: 2px; }
  .cs-outcome-content { min-width: 0; }
  .cs-outcome-highlight { padding: 22px; }
  .cs-outcome-highlight__num { font-size: 2.75rem; }
  .cs-section:has(.cs-retrospective) .cs-retrospective { margin: 0; padding-left: 18px; min-width: 0; }
  .cs-section:has(.cs-retrospective) .cs-section__label { white-space: normal; overflow-wrap: anywhere; }
  .cs-image-group, .cs-image-group--breakout { width: 100%; gap: 12px; grid-template-columns: minmax(0,1fr); }
  .cs-image-group .cs-image:first-child:nth-last-child(3) { grid-column: auto; }
  .cs-image img, .cs-image-group img { display: block; max-width: 100%; height: auto; object-fit: contain; }
  .cs-nav__item { padding: 24px 20px; min-height: 64px; }
  .cs-nav__label { font-size: .875rem; }
  .contact-strip__right a, .footer__links a { font-size: 1rem; color: #BDB8B2; }
  .footer__logo { font-size: .9375rem; color: #BDB8B2; white-space: normal; }
  .footer__main { padding: 24px 20px; }
}
@media (max-width: 430px) {
  .hero__h1-a, .hero__h1-b, .hero__h1-c { font-size: clamp(2.5rem, 10.5vw, 3rem); }
  .project__name, .hub-project__name { font-size: 1.375rem; }
  .testimonial__body { font-size: 1.0625rem; }
  .about-body__opening { font-size: 1.25rem; }
  .contact-strip__headline { font-size: 1.625rem; }
}
@media (prefers-reduced-motion: reduce) {
  .nav-mobile a, .nav-toggle span { transition: none; }
}
