/* Homepage body alignment. Load after reference.css and site.css. */
body.mgs-site .mgs-home .mgs-home-intro {
  min-height: 0;
  padding: 24px 0 0 !important;
}
body.mgs-site .mgs-home .mgs-home-intro > .pb-4 { padding-bottom: 24px !important; }
body.mgs-site .mgs-home .mgs-home-intro .row { margin-right: -15px; margin-left: -15px; }
body.mgs-site .mgs-home .mgs-home-intro-copy { margin: 24px 16px 16px !important; }
body.mgs-site .mgs-home .mgs-home-intro-photo {
  width: 217px;
  max-width: 100%;
  margin: 0 auto;
}
body.mgs-site .mgs-home .mgs-home-production-image {
  display: block;
  width: 217px;
  max-width: 100%;
  height: 200px;
  margin: 0 auto;
  object-fit: contain;
  border-radius: 0;
  -webkit-box-reflect: initial;
}
body.mgs-site .mgs-home .mgs-home-intro h1,
body.mgs-site .mgs-home .mgs-action-copy .heading-lg {
  font-size: 30px !important;
  line-height: 34px;
}
body.mgs-site .mgs-home .mgs-home-intro p,
body.mgs-site .mgs-home .mgs-action-copy p,
body.mgs-site .mgs-home .mgs-content-row p,
body.mgs-site .mgs-home .mgs-content-row ul {
  font-size: 18.7px;
  line-height: 1.618;
}

/* Match the source button's 36px fill, 6px white gap and gray outer ring. */
body.mgs-site .mgs-home .mgs-home-action-link {
  display: block;
  margin: 24px 0;
  color: var(--mgs-blue);
  text-align: center;
}
body.mgs-site .mgs-home .mgs-home-action-button,
body.mgs-site .mgs-home .mgs-home-service-cta {
  min-height: 36px;
  padding: 5px 15px !important;
  border: 1px solid var(--mgs-blue) !important;
  border-radius: 5px;
  outline: 2px solid #ccc;
  outline-offset: 6px;
  font-family: Oswald, Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  text-align: center;
}
body.mgs-site .mgs-home .mgs-home-action-button { display: block; width: 100%; }
body.mgs-site .mgs-home .mgs-home-action-button .mgs-icon {
  width: 16px;
  height: 16px;
  margin-right: 4px;
}
body.mgs-site .mgs-home .mgs-home-action-link:hover .mgs-home-action-button,
body.mgs-site .mgs-home .mgs-home-service-cta:hover { background: var(--mgs-blue-dark) !important; color: #fff !important; }
body.mgs-site .mgs-home .mgs-home-action-link:focus-visible .mgs-home-action-button,
body.mgs-site .mgs-home .mgs-home-service-cta:focus-visible { outline: 3px solid #0086c0; outline-offset: 6px; }
body.mgs-site .mgs-home .mgs-action-copy { margin: 16px !important; }

/* Genuine service information occupies the reference's independent card band. */
body.mgs-site .mgs-home .mgs-home-services-icon {
  display: block;
  height: 36px;
  margin-top: 48px;
  color: var(--mgs-blue);
}
body.mgs-site .mgs-home .mgs-home-services-icon .mgs-icon { width: 28px; height: 28px; }
body.mgs-site .mgs-home .mgs-home-services h2 {
  margin: 0 !important;
  padding: 0 0 8px !important;
  font-size: 30px !important;
  line-height: 36px;
}
/* reference.css resets every article margin-bottom with !important. */
body.mgs-site .mgs-home .mgs-home-service-card { margin: 0 0 50px !important; }
body.mgs-site .mgs-home .mgs-home-service-icon {
  position: relative;
  z-index: 1;
  height: 32px;
  margin-top: 7px;
  color: var(--mgs-blue);
  text-align: center;
}
body.mgs-site .mgs-home .mgs-home-service-icon .mgs-icon { width: 26px; height: 26px; background: #fff; }
body.mgs-site .mgs-home .mgs-home-service-copy {
  margin-top: -16px;
  padding: 8px 24px;
  background: #fff;
  color: #222;
  font-size: 18.7px;
  line-height: 1.618;
}
body.mgs-site .mgs-home .mgs-home-service-copy h3 {
  margin: 10px 0 5px !important;
  padding: 0 !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: 1.618;
  text-align: center;
}
body.mgs-site .mgs-home .mgs-home-service-copy p { margin: 0 0 5px; font-size: inherit; line-height: inherit; }
body.mgs-site .mgs-home .mgs-home-service-copy .mgs-home-service-moq { margin: 0 0 12px; text-align: center; }
body.mgs-site .mgs-home .mgs-home-service-moq strong { font-size: 17px; font-weight: 500; }
body.mgs-site .mgs-home .mgs-home-service-cta { text-transform: uppercase; text-decoration: none !important; }

/* Keep the five-section hierarchy and real information, separated as in the source. */
body.mgs-site .mgs-home .mgs-trust-content { margin-top: 48px !important; margin-bottom: 48px !important; }
body.mgs-site .mgs-home .mgs-trust-content > .col > h2 {
  margin-bottom: 48px !important;
  font-size: 30px !important;
  line-height: 36px;
}
body.mgs-site .mgs-home .mgs-content-row { margin: 0; }
body.mgs-site .mgs-home .mgs-content-row h3 {
  margin: 0 0 8px !important;
  padding: 10px 0 0 !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1.618;
}
body.mgs-site .mgs-home .mgs-content-row .mgs-icon {
  width: 24px;
  height: 24px;
  margin-right: 8px;
  color: var(--mgs-blue);
}
body.mgs-site .mgs-home .mgs-content-row p { margin: 0 0 1em; }
body.mgs-site .mgs-home .mgs-content-row ul { margin: 0 0 1em 40px; padding: 0; }
body.mgs-site .mgs-home .mgs-content-row li { padding: 0; }
body.mgs-site .mgs-home .mgs-trust-content .wp-block-separator {
  width: 100%;
  height: 1px !important;
  margin: 50px auto 50px 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--mgs-blue) !important;
  background: transparent;
}

@media (min-width: 768px) {
  /* The final desktop button ends 48px above the next band; mobile keeps its 40px heading gap. */
  body.mgs-site .mgs-home .mgs-home-action-link:last-child { margin-bottom: 0; }
}
@media (min-width: 1200px) {
  body.mgs-site .mgs-home .mgs-home-intro { padding-top: 16px !important; }
}
@media (max-width: 1200px) {
  body.mgs-site .mgs-home .mgs-home-intro h1 { margin-top: -40px !important; }
}
@media (max-width: 767px) {
  body.mgs-site .mgs-home .mgs-home-intro-copy { flex: 0 1 calc(100% - 32px); max-width: calc(100% - 32px); }
  body.mgs-site .mgs-home .mgs-home-intro-media { display: none; }
  body.mgs-site .mgs-home .mgs-action-links { margin-top: 24px !important; }
  body.mgs-site .mgs-home .mgs-action-copy { flex: 0 1 calc(100% - 32px); width: calc(100% - 32px); max-width: calc(100% - 32px); margin: 16px !important; }
}
@media (max-width: 568px) {
  body.mgs-site .mgs-home .mgs-home-services-icon { height: 32px; }
  body.mgs-site .mgs-home .mgs-home-intro h1,
  body.mgs-site .mgs-home .mgs-action-copy .heading-lg { font-size: 24px !important; }
  body.mgs-site .mgs-home .mgs-home-services h2,
  body.mgs-site .mgs-home .mgs-trust-content > .col > h2 { font-size: 24px !important; line-height: 28.8px; }
}
