/* Wide screens retain the physical 1920px canvas from viewport-contract.css.
   Audit corrections use the same tokens; do not scale the page or hide overflow. */

/* Native services links must leave the heading below the sticky home header.
   Compensate the legacy content zoom so this remains a physical viewport
   offset, including the section's reveal shift and 64/80px header profiles. */
body.page-home #services {
  scroll-margin-block-start: calc(clamp(128px, 8vw, 160px) / var(--site-fluid-scale, 1));
}

/* This page previously kept the 1360px type and inset at every desktop size.
   Figma 4372:11866 / 11868 and NEW-DESIGN sections 4-5 define the larger profile. */
body.page-software-approach .software-approach-container {
  width: calc(100% - var(--layout-inline) * 2);
  max-width: 1620px;
}

body.page-software-approach .software-approach-hero__title {
  max-width: 100%;
  font-size: var(--layout-h1);
  line-height: 1.1;
}

body.page-software-approach .software-approach-hero__lead {
  font-size: var(--layout-lead);
  line-height: 1.3;
}

body.page-software-approach .software-approach-section__title {
  font-size: var(--layout-h2);
  line-height: 1.3;
}

/* Legal information is ordinary text, even when visually secondary. */
body:not(.page-cms) .site-footer :is(.site-footer-legal-links, .site-footer-company) {
  min-width: 0;
  color: #4a5565;
  overflow-wrap: anywhere;
}

body:not(.page-cms) .site-footer .site-footer-contact-link {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

@media (min-width: 1360px) {
  body:not(.page-cms) .site-footer .site-footer-contacts {
    flex: 0 0 auto;
    width: max-content;
    max-width: min(320px, 100%);
  }
}

/* Tablet contact content is stacked in the 800px frame. A desktop flex row
   pushed the full-width form outside the clipped catalogue canvas. */
@media (min-width: 800px) and (max-width: 1359px) {
  body.page-cases .cases-contact__inner {
    flex-direction: column;
  }

  body.page-cases .cases-contact__info {
    flex: 0 0 auto;
    min-width: 0;
  }

  body.page-cases .cases-contact__form.contact-form {
    min-width: 0;
    align-self: flex-start;
    margin-left: 0;
  }
}
