/* October layout audit: readable text, bounded media and compact supporting cards. */
body main > section:not(.aligned-hero):not(.hero):not(.bottom-impact):not(.faq-categories) {
  padding-top: 32px;
  padding-bottom: 32px;
}
body main > section.aligned-hero.aligned-hero { min-height: 360px; padding-block: 32px; }
body main .audit-text-grid { grid-template-columns: minmax(0, 1fr); max-width: 1100px; }
body main .audit-text-grid h2 { max-width: 800px; }
body main .audit-text-grid p { max-width: 90ch; }
body main .audit-card-icon {
  display: block; width: 30px; height: 30px; margin: 22px 24px 0;
  color: #0c5a2f; stroke-width: 1.6;
}
body main .review-image-card:has(.audit-card-icon) { display: block; }
body main .review-image-card:has(.audit-card-icon) > div,
body main .careers-area-grid article:has(.audit-card-icon) > div,
body main .distribution-support-grid article:has(.audit-card-icon) > div,
body main .sustain-partners-pathway-cards article:has(.audit-card-icon) > div { padding-top: 14px; }
body main .contact-form-support { display: block; }
body main .contact-form-support > div { padding: 20px; }
body main .audit-clothing-visual {
  display: flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: 18px;
  height: 200px; padding: 20px; background: linear-gradient(135deg,#e8efe3,#f8faf5);
  color: #0c5a2f; font-size: 16px; font-weight: 700; line-height: 1.6;
}
body main .audit-clothing-visual svg { width: 62px; height: 62px; stroke-width: 1.3; }
body main .audit-material-route { padding: 26px; border: 1px solid #d6e1d0; border-radius: 14px; background: #fff; }
body main .audit-material-route > p { font-weight: 700; color: #0c5a2f; }
body main .audit-material-route ol { display: grid; gap: 0; list-style: none; margin: 0 0 16px; padding: 0; }
body main .audit-material-route li { display: flex; align-items: center; gap: 16px; padding: 14px 0; border-bottom: 1px solid #e0e6dc; color: #123524; font-size: 16px; font-weight: 600; }
body main .audit-material-route svg { width: 26px; height: 26px; color: #0c5a2f; }
body main .audit-material-route small { font-size: 13px; color: #536358; }
body main .audit-partner-icon { width: 56px; height: 56px; margin: auto; color: #0c5a2f; stroke-width: 1.4; }
body main .homepage-partnership-visual:has(.audit-partner-icon) { display: flex; background: #e6eedf; }
body main .powder-hero-image,
body main .jobs-hero,
body main .quality-hero-image,
body main .liquid-hero-image { background: linear-gradient(110deg,#041b10,#164c31); }
body main .locations-visual-hero-image { background-image: url('images/hq-photo-v124.png'); background-position: center 57%; }
body main .contact-hero-image { background-image: url('images/hq-photo-v124.png'); background-position: center 57%; }
body main .ua-method > img { height: 220px; aspect-ratio: auto; }
body main .ua-more-card > img { height: 200px; aspect-ratio: auto; }
body main.our-locations-page .location-photo-panel { width: 100%; height: 360px; aspect-ratio: auto; }
body main .location-photo-panel > img { object-fit: cover; }
/* Footer uses the same labels and readable, compact scale on every page. */
body #site-footer :is(.footer-brand-description,.footer-equal-opportunities,.footer-col a,.footer-col > span) { font-size: 14px; line-height: 1.6; }
body #site-footer .footer-col h5 { font-size: 12.8px; line-height: 1.5; }
body #site-footer footer { padding-top: 30px; }
body #site-footer .footer-grid { gap: 24px; padding-bottom: 24px; }
@media (max-width: 700px) {
  body main > section:not(.aligned-hero):not(.hero):not(.bottom-impact):not(.faq-categories) { padding-block: 26px; }
  body main > section.aligned-hero.aligned-hero { min-height: 0; padding-block: 36px; }
  body main .audit-clothing-visual { height: 190px; }
  body main .ua-method > img, body main .ua-more-card > img { height: 190px; }
  body main.our-locations-page .location-photo-panel { height: auto; aspect-ratio: 4 / 3; }
  body #site-footer .footer-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-areas: "brand brand" "explore company" "partners company" "contact contact"; gap: 24px 18px; align-items: start; }
  body #site-footer .footer-brand { grid-area: brand; }
  body #site-footer .footer-col:nth-child(2) { grid-area: explore; }
  body #site-footer .footer-col:nth-child(3) { grid-area: company; }
  body #site-footer .footer-col:nth-child(4) { grid-area: partners; }
  body #site-footer .footer-contact { grid-area: contact; }
  body #site-footer .footer-col { min-width: 0; }
  body #site-footer .footer-col a { overflow-wrap: anywhere; }
  body #site-footer .footer-brand-description { max-width: 55ch; }
  body #site-footer .footer-bottom { gap: 16px; padding-top: 20px; }
}
