:root {
  --font-primary: "Google Sans Flex", "Google Sans", sans-serif;
  --color-primary: #ec7028;
  --color-primary-dark: #d9511d;
  --color-text: #454545;
  --color-bg: #fff;
  --color-cream: #fffdf1;
  --container-width: 1320px;
  --section-space: 66px;
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  font-family: var(--font-primary);
  color: var(--color-text);
  background: var(--color-bg);
  font-size: 16px;
  line-height: 1.45;
}
img {
  display: block;
  max-width: 100%;
  height: auto;
}
a {
  color: inherit;
  text-decoration: none;
}
button {
  font: inherit;
  cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  line-height: 1.15;
  text-wrap: balance;
  word-break: normal;
  overflow-wrap: break-word;
}
p,
li,
blockquote {
  margin-top: 0;
  text-wrap: pretty;
  word-break: normal;
  overflow-wrap: break-word;
}
:is(h1, h2, h3, h4, h5, h6,
  .section-heading h2, .section-heading h3, .section-heading__eyebrow,
  .home-message h2, .home-differences__banner h2, .home-impress__banner h2,
  .home-process__heading h2, .home-customer-story__heading h2,
  .about-hero__heading h1, .about-philosophy__banner h2, .about-vision__rows h3,
  .ecosystem-intro h1, .ecosystem-program__heading h2,
  .partnership-hero h1, .partnership-heading h2,
  .contact-hero h1, .contact-heading h2, .contact-faq__banner h2,
  .btn, .site-header__cta, .site-footer__button, .home-cta-strip a span,
  .home-stats__partner-title, .program-pill-heading h2, .m-development-pill-banner__text h2
) {
  text-wrap: balance;
}
:is(p, li, blockquote, figcaption, small,
  .home-differences__copy p, .home-ecosystem__reveal-text,
  .home-process__cycle-text p, .home-impress__item p,
  .home-experts__role, .home-experts__item blockquote,
  .home-training__intro, .home-training__card-heading p,
  .about-hero__heading p, .about-founder__story p,
  .partnership-hero__lead, .partnership-values__grid p, .partnership-process__grid p,
  .contact-lead, .contact-faq__answer p,
  .program-audience__desc, .m-development-step-card__desc
) {
  text-wrap: pretty;
}
.home-message__value,
.site-footer__button-text {
  white-space: nowrap;
}
.container {
  width: min(calc(100% - 64px), var(--container-width));
  margin-inline: auto;
}
.section {
  padding-block: var(--section-space);
}
.section-heading {
  text-align: center;
  margin-bottom: 38px;
}
.section-heading__eyebrow {
  font-size: clamp(18px, 2vw, 26px);
  margin-bottom: 2px;
}
.section-heading__eyebrow strong {
  color: var(--color-primary);
}
.section-heading h2 {
  font-size: clamp(26px, 3vw, 38px);
  font-weight: 800;
  margin: 0;
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 10px 24px;
  border-radius: 14px;
  font-weight: 800;
  font-size: 14px;
}
.btn--primary {
  background: var(--color-primary);
  color: #fff;
}
.btn:hover,
.site-header__cta:hover,
.site-footer__button:hover {
  background: var(--color-primary-dark);
}
.skip-link {
  position: absolute;
  left: -9999px;
  top: 8px;
  z-index: 1000;
  background: #fff;
  padding: 8px;
}
.skip-link:focus {
  left: 8px;
}
:focus-visible {
  outline: 3px solid #154fa1;
  outline-offset: 3px;
}
@media (max-width: 767px) {
  :root {
    --section-space: 48px;
  }
  .container {
    width: min(calc(100% - 36px), var(--container-width));
  }
  .section-heading {
    margin-bottom: 26px;
  }
}
