/* Shared type and spacing adapter for the approved Solutions handoffs. */
.solutions-page {
  --solutions-inline-gutter: clamp(20px, 4vw, 32px);
}

.solutions-page h1,
.solutions-page .h1,
.solutions-page h2,
.solutions-page .h2,
.solutions-page h3,
.solutions-page .h3 { font-family: var(--font-display) !important; }
.solutions-page p,
.solutions-page .body,
.solutions-page .lead,
.solutions-page .hero__lead { font-family: var(--font-body) !important; }
.solutions-page div[style*="font-size: 13px"][style*="line-height: 1.6"] { font-family: var(--font-body) !important; }
.solutions-page h1,
.solutions-page .h1 { font-weight: 700 !important; font-size: clamp(40px, 6vw, 76px) !important; line-height: 1.04 !important; letter-spacing: -0.02em !important; margin: 20px 0 26px !important; }
.solutions-page h2:not(.cta-mega__h),
.solutions-page .h2:not(.cta-mega__h) { font-weight: 700 !important; font-size: clamp(28px, 3.6vw, 44px) !important; line-height: 1.12 !important; letter-spacing: -0.015em !important; margin: 16px 0 10px !important; }
.solutions-page h3:not(.hw__sh),
.solutions-page .h3:not(.hw__sh) { font-weight: 600 !important; font-size: 22px !important; line-height: 1.25 !important; letter-spacing: -0.01em !important; margin: 14px 0 10px !important; }
.solutions-page p,
.solutions-page .wl__desc { font-size: 15.5px !important; line-height: 1.6 !important; }
.solutions-page p.lead,
.solutions-page .hero__copy .lead { font-size: 16px !important; line-height: 1.6 !important; }
.solutions-page .hero__lead { font-size: 17px !important; line-height: 1.6 !important; }
.solutions-page .kicker,
.solutions-page .tag-header,
.solutions-page .tag-header span { font-size: 13px !important; font-weight: 600 !important; letter-spacing: 0.14em !important; }
.solutions-page div[style*="font-size: 12px"][style*="line-height: 1.45"] { font-family: var(--font-body) !important; font-size: 13.5px !important; }
.solutions-page .container { max-width: 1120px !important; }
.solutions-page .section { padding: 76px 0 !important; }
.solutions-page .tag-header .num,
.solutions-page .tag-header .rule { display: none !important; }
.solutions-page .tag-header { display: block !important; text-transform: uppercase !important; }
.solutions-page [style*="grid-template-columns: repeat(4, 1fr)"][style*="border: 1px solid var(--rule)"] { background: transparent !important; border: none !important; border-top: 1px solid var(--rule) !important; border-bottom: 1px solid var(--rule) !important; }
.solutions-page [style*="grid-template-columns: repeat(4, 1fr)"][style*="border: 1px solid var(--rule)"] > div { background: transparent !important; }
.solutions-page [style*="font-size: 10px"][style*="margin-bottom: 14px"] { display: none !important; }
.solutions-page [style*="font-size: 30px"][style*="letter-spacing: -0.02em"],
.solutions-page [style*="font-size: 30px"][style*="letter-spacing: -0.02em"] * { color: var(--accent) !important; }
.solutions-page [style*="font-size: 30px"][style*="letter-spacing: -0.02em"] { font-weight: 600 !important; }

/*
 * The handoffs use a flush hero at desktop widths. Once the navbar switches
 * to its compact layout, restore the site's responsive container gutter so
 * hero copy, CTA, and proof points reflow as one balanced composition.
 */
.solutions-page .hero .container,
.solutions-page .hero__inner {
  padding-inline: 0 !important;
}

@media (max-width: 1160px) {
  .solutions-page .hero .container,
  .solutions-page .hero__inner {
    padding-inline: var(--solutions-inline-gutter) !important;
  }
}
