/* website1 / embedzilla.com customizations, layered on the (now fully static) mirror.
   The site no longer runs any Strikingly JavaScript — it renders purely from HTML + CSS —
   so these rules are the single source of truth for the tweaks below. */

html { scroll-behavior: smooth; }

/* ------------------------------------------------------------------ *
 * Contact section: form removed; center the two remaining columns    *
 * (contact info + Google map) as a group at their original widths.   *
 * ------------------------------------------------------------------ */
.s-contact-section .s-contact-section-columns {
  -webkit-justify-content: center !important;
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  gap: 30px;
}

.s-contact-section .s-contact-section-columns .s-contact-info-column,
.s-contact-section .s-contact-section-columns .s-google-maps-column {
  -webkit-flex: 0 0 auto !important;
  flex: 0 0 auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.s-contact-section .s-contact-section-columns .s-google-maps-column {
  width: 414px !important;
  max-width: 414px !important;
  min-height: 314px;
}

/* Static Google Maps embed that replaced Strikingly's JS-injected map */
.ez-map-frame {
  display: block;
  width: 100%;
  height: 314px;
  border: 0;
}

/* ------------------------------------------------------------------ *
 * Certifications & Memberships section (added at the bottom)          *
 * ------------------------------------------------------------------ */
.ez-certs {
  background: #ffffff;
  padding: 64px 20px 72px;
  border-top: 1px solid #ececec;
  font-family: "dm sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
.ez-certs__inner {
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
}
.ez-certs__title {
  font-size: 34px;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 44px;
  letter-spacing: -0.01em;
}
.ez-certs__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 28px;
}
.ez-certs__card {
  flex: 1 1 340px;
  max-width: 440px;
  background: #f7f7f8;
  border: 1px solid #ececec;
  border-radius: 14px;
  padding: 34px 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.ez-certs__logo-wrap {
  height: 96px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 22px;
}
.ez-certs__logo {
  max-height: 84px;
  max-width: 100%;
  width: auto;
  object-fit: contain;
}
.ez-certs__name {
  font-size: 19px;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 14px;
  line-height: 1.35;
}
.ez-certs__list {
  list-style: none;
  padding: 0;
  margin: 0;
  color: #4a4a4a;
  font-size: 15px;
  line-height: 1.75;
}
.ez-certs__list a {
  color: #2b6cb0;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color 0.15s ease;
}
.ez-certs__list a:hover { border-bottom-color: #2b6cb0; }

@media (max-width: 640px) {
  .ez-certs { padding: 48px 16px 56px; }
  .ez-certs__title { font-size: 27px; margin-bottom: 32px; }
  .ez-certs__card { flex-basis: 100%; }
}

/* Match the "Our Services" and "How We Work" boxes to the lighter certifications cards:
   lighter gray fill + a lighter, thinner boundary (was #f5f5f5 with a 2px #d1d1d1 border). */
.s-feature-list-item-wrapper {
  background-color: #f7f7f8 !important;
  border: 1px solid #ececec !important;
}

/* How We Work: the paragraph column carries a ~214px left padding (grid "offset-three")
   with almost none on the right, leaving a big empty gap on the left. Make it symmetric
   so the text fills the box evenly. */
#section-f_9945f41d-d592-4a0b-a311-24e25f8a97af .offset-three {
  box-sizing: border-box !important;
  width: 100% !important;
  margin-left: 0 !important;
  padding-left: 48px !important;
  padding-right: 48px !important;
}

/* offset anchored sections so the sticky header doesn't overlap them on nav-click */
#section-f_e23a62b2-6aad-4d3e-bda4-5b196112a2f4,
#section-f_9945f41d-d592-4a0b-a311-24e25f8a97af,
#section-f_6a5ed54c-2786-4a6d-82b1-18553082b4d5 { scroll-margin-top: 84px; }

/* ------------------------------------------------------------------ *
 * Hero (added Phase 1) — headline + tagline + primary CTA            *
 * ------------------------------------------------------------------ */
.ez-hero {
  font-family: "dm sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  padding: 104px 20px 68px;
  text-align: center;
  background: #ffffff;
}
.ez-hero__inner { max-width: 900px; margin: 0 auto; }
.ez-hero__title {
  font-size: 44px;
  line-height: 1.12;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #111;
  margin: 0 0 18px;
}
.ez-hero__tagline {
  font-size: 20px;
  color: #6a6a6a;
  margin: 0 0 34px;
  font-style: italic;
}

/* Primary call-to-action button (hero + contact) */
.ez-cta {
  display: inline-block;
  background: #1a1a1a;
  color: #ffffff !important;
  font-weight: 600;
  font-size: 17px;
  line-height: 1;
  padding: 17px 34px;
  border-radius: 10px;
  text-decoration: none !important;
  border: 1px solid #1a1a1a;
  transition: background 0.15s ease, transform 0.05s ease;
}
.ez-cta:hover { background: #000; }
.ez-cta:active { transform: translateY(1px); }
.ez-cta:focus-visible { outline: 3px solid #2b6cb0; outline-offset: 2px; }

.ez-contact-cta { text-align: center; margin: 8px 0 8px; }

@media (max-width: 640px) {
  .ez-hero { padding: 80px 16px 52px; }
  .ez-hero__title { font-size: 32px; }
  .ez-hero__tagline { font-size: 18px; }
}

/* Contact map: the 414px fixed width is for the desktop centered layout; on phones let it
   fill the column so it isn't clipped. */
@media (max-width: 640px) {
  .s-contact-section .s-contact-section-columns .s-google-maps-column {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* How we work: rewritten body (Phase 2.3) — bullet list + CTA */
.ez-hww-list {
  list-style: disc;
  margin: 0 0 26px;
  padding-left: 22px;
  text-align: left;
}
.ez-hww-list li { margin-bottom: 12px; line-height: 1.65; }
.ez-hww-list li strong { color: #111; }
.ez-hww-cta { text-align: center; margin: 0; }

/* Certifications: wide "Federal and state registrations" card with key/value identifier rows */
.ez-certs__card--wide { flex: 1 1 100%; max-width: 908px; }
.ez-certs__card--wide .ez-certs__name { margin-top: 4px; }
.ez-certs__list--ids { width: 100%; }
.ez-certs__list--ids li {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  padding: 7px 0;
  border-top: 1px solid #ececec;
}
.ez-certs__list--ids li:first-child { border-top: 0; }
.ez-certs__k { color: #6a6a6a; }
.ez-certs__v { color: #1a1a1a; font-weight: 600; }

/* ------------------------------------------------------------------ *
 * Case studies — SECTION CURRENTLY REMOVED FROM THE PAGE (2026-07-27).*
 * Styles kept so the section can be restored; draft copy lives in       *
 * content/case-studies.md at the repo root.                            *
 * ------------------------------------------------------------------ */
.ez-cases {
  background: #ffffff;
  padding: 64px 20px 72px;
  border-top: 1px solid #ececec;
  font-family: "dm sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
.ez-cases__inner { max-width: 1160px; margin: 0 auto; }
.ez-cases__title {
  font-size: 34px;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 44px;
  text-align: center;
  letter-spacing: -0.01em;
}
.ez-cases__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
}
.ez-cases__card {
  flex: 1 1 320px;
  max-width: 366px;
  background: #f7f7f8;
  border: 1px solid #ececec;
  border-radius: 14px;
  padding: 28px 26px;
  text-align: left;
}
.ez-cases__name {
  font-size: 19px;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 4px;
  line-height: 1.3;
}
.ez-cases__meta {
  font-size: 13px;
  color: #8a8a8a;
  margin: 0 0 16px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.ez-cases__card p {
  font-size: 15px;
  line-height: 1.65;
  color: #4a4a4a;
  margin: 0 0 12px;
}
.ez-cases__card p strong { color: #1a1a1a; }
.ez-cases__todo em { color: #8a8a8a; }

@media (max-width: 640px) {
  .ez-cases { padding: 48px 16px 56px; }
  .ez-cases__title { font-size: 27px; margin-bottom: 32px; }
  .ez-cases__card { flex-basis: 100%; max-width: 100%; }
}

/* Nav now carries 5 items — tighten spacing so it stays on one line on laptops */
.s-nav-inner .s-nav-li { margin-left: 0 !important; margin-right: 0 !important; }
.s-nav-inner .s-nav-link-container { padding-left: 11px !important; padding-right: 11px !important; }
@media (max-width: 1100px) {
  .s-nav-inner .s-nav-link-container { padding-left: 8px !important; padding-right: 8px !important; }
  .s-nav-inner .s-nav-text { font-size: 15px !important; }
}

/* ------------------------------------------------------------------ *
 * /government capability page (Phase 2.6)                             *
 * ------------------------------------------------------------------ */
.ez-gov {
  font-family: "dm sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  padding: 52px 20px 72px;
  color: #333;
}
.ez-gov__inner { max-width: 820px; margin: 0 auto; }
.ez-gov__back { font-size: 15px; margin: 0 0 28px; }
.ez-gov__back a { color: #2b6cb0; text-decoration: none; }
.ez-gov__back a:hover { text-decoration: underline; }
.ez-gov h1 { font-size: 40px; font-weight: 600; color: #111; margin: 0 0 16px; letter-spacing: -0.02em; }
.ez-gov__lede { font-size: 18px; line-height: 1.65; color: #4a4a4a; margin: 0 0 28px; }
.ez-gov h2 {
  font-size: 26px; font-weight: 600; color: #111;
  margin: 44px 0 16px; padding-top: 22px; border-top: 1px solid #ececec;
}
.ez-gov h3 { font-size: 18px; font-weight: 600; color: #1a1a1a; margin: 24px 0 8px; }
.ez-gov ul { padding-left: 22px; margin: 0 0 12px; }
.ez-gov li { line-height: 1.7; margin-bottom: 6px; }
.ez-gov__ids, .ez-gov__contact { list-style: none; padding: 0; }
.ez-gov__ids li {
  display: flex; flex-wrap: wrap; gap: 10px;
  padding: 10px 0; border-top: 1px solid #f0f0f0; margin: 0;
}
.ez-gov__ids li:first-child { border-top: 0; }
.ez-gov__contact li { margin-bottom: 4px; }
.ez-gov__contact a { color: #2b6cb0; text-decoration: none; }
.ez-gov__todo { color: #8a8a8a; background: #f7f7f8; border: 1px solid #ececec; border-radius: 10px; padding: 14px 16px; }
.ez-gov__foot { margin-top: 52px; padding-top: 22px; border-top: 1px solid #ececec; color: #8a8a8a; font-size: 14px; text-align: center; }

@media (max-width: 640px) {
  .ez-gov h1 { font-size: 30px; }
  .ez-gov__lede { font-size: 16px; }
}

/* ------------------------------------------------------------------ *
 * Positioning band — hardtech focus + founder background              *
 * ------------------------------------------------------------------ */
.ez-focus {
  background: #f7f7f8;
  border-top: 1px solid #ececec;
  border-bottom: 1px solid #ececec;
  padding: 40px 20px;
  font-family: "dm sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
.ez-focus__inner { max-width: 820px; margin: 0 auto; text-align: center; }
.ez-focus__lead {
  font-size: 23px;
  font-weight: 600;
  color: #111;
  margin: 0 0 10px;
  letter-spacing: -0.01em;
}
.ez-focus__body {
  font-size: 16px;
  line-height: 1.7;
  color: #4a4a4a;
  margin: 0;
}
@media (max-width: 640px) {
  .ez-focus { padding: 32px 16px; }
  .ez-focus__lead { font-size: 20px; }
  .ez-focus__body { font-size: 15px; }
}
