/* Reading refinement: homepage only, after the established visual system.
   Keep original imagery, motion artwork, touch targets and product terms. */
body.home-renewal .hm-hero { padding-bottom: 32px; border-bottom: 1px solid var(--hm-line); }
body.home-renewal .hm-partner-copy > .hm-actions { margin-top: 24px; padding-top: 0; }
body.home-renewal .hm-partner-commitment > h3 { margin-top: 0; }
body.home-renewal .hm-flow-enhanced .hm-flow-copy > .hm-flow-steps { margin-top: 16px; }
body.home-renewal .hm-flow-panel > figcaption { min-height: 120px; }
body.home-renewal .hm-flow-panel > figcaption p { font-size: 16px; line-height: 1.65; }
body.home-renewal .hm-contact-card,
body.home-renewal .hm-contact-card--branding { min-height: 126px; padding-block: 12px; }
body.home-renewal .hm-contact-art { margin-top: 0; }

/* Labels and actions are never gated by scroll animation. The existing line,
   book, product and expertise-background animations remain independently active. */
body.home-renewal [data-hm-reveal].hm-reveal-armed,
body.home-renewal [data-hm-reveal].hm-reveal-armed.hm-reveal-pending,
body.home-renewal .hm-experts-enhanced [data-hm-expert],
body.home-renewal .hm-experts-enhanced [data-hm-expert]:not(.is-visible) {
  opacity: 1; transform: none; transition: none;
}
body.home-renewal .hm-contact-card.hm-contact-motion-ready:not(.hm-contact-motion-visible),
body.home-renewal .hm-contact-card.hm-contact-motion-visible {
  opacity: 1; transform: none; animation: none;
}
body.home-renewal .hm-contact-card::before { display: none; }

@media screen {
  /* One caption is shown with the selected image. All three text summaries
     remain available in the unenhanced HTML and printed version. */
  body.home-renewal .hm-flow-enhanced .hm-flow-step > p { display: none; }
}
@media (max-width: 900px) {
  body.home-renewal .hm-flow-enhanced .hm-flow-copy > .hm-flow-steps { margin-top: 0; }
  body.home-renewal .hm-flow-visuals { margin-top: 16px; }
}
@media (max-width: 640px) {
  body.home-renewal .hm-hero { padding-bottom: 28px; }
  body.home-renewal .hm-hero .hm-title { font-size: clamp(26px, 8.3vw, 38px); line-height: 1.38; }
  body.home-renewal .hm-definition { margin-top: 22px; }
  body.home-renewal .hm-partner-copy > .hm-actions { margin-top: 18px; }
  body.home-renewal .hm-partner-commitment > ol { margin-top: 14px; }
  body.home-renewal .hm-partner-commitment li { padding-block: 12px; }
  body.home-renewal .hm-flow-panel > figcaption { min-height: 138px; padding: 14px 16px; }
  body.home-renewal .hm-flow-panel > figcaption p { font-size: 16px; line-height: 1.65; }
}
@media (max-width: 600px) {
  body.home-renewal .hm-contact-card,
  body.home-renewal .hm-contact-card--branding { min-height: 98px; padding-block: 9px; }
  body.home-renewal .hm-contact-art,
  body.home-renewal .hm-contact-card--branding .hm-contact-art { margin-top: 0; }
}
@media (max-width: 360px) {
  body.home-renewal .hm-flow-panel > figcaption { min-height: 166px; }
}
