/* Stem IT Gutenberg Homepage - all selectors are scoped to .stemit-home. */
.stemit-home {
  --stemit-navy: #07172b;
  --stemit-navy-2: #0f2540;
  --stemit-blue: #2c98f0;
  --stemit-green: #32d578;
  --stemit-ink: #0c1118;
  --stemit-muted: #607083;
  --stemit-pale: #eff7ff;
  --stemit-line: #dbe4ef;
  box-sizing: border-box;
  color: var(--stemit-ink);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  margin-bottom: 0;
  overflow: hidden;
}
.stemit-home *, .stemit-home *::before, .stemit-home *::after { box-sizing: border-box; }
.stemit-home.alignfull {
  max-width: 100vw !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}
.editor-styles-wrapper .stemit-home.alignfull {
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  width: 100% !important;
}
.stemit-home :where(h1,h2,h3,h4,p,figure,blockquote) { margin-top: 0; }
.stemit-home h1, .stemit-home h2, .stemit-home h3, .stemit-home h4 {
  color: inherit;
  font-family: inherit;
  font-weight: 750;
  letter-spacing: -0.025em;
  line-height: 1.12;
}
.stemit-home h2 { font-size: clamp(1.8rem, 3vw, 2.45rem); }
.stemit-home h3 { font-size: 1rem; }
.stemit-home p { color: var(--stemit-muted); font-size: 0.92rem; line-height: 1.68; }
.stemit-home a { text-decoration: none; }
.stemit-home .stemit-shell { max-width: 1160px !important; width: calc(100% - 48px); margin-inline: auto; }
.stemit-home .stemit-section { padding: 76px 0; }
.stemit-home .stemit-blue { color: var(--stemit-blue); }
.stemit-home .stemit-green { color: var(--stemit-green); }

.stemit-home .stemit-hero { color: #fff; }
.stemit-home .stemit-hero .wp-block-cover__image-background { object-position: center 48%; }
.stemit-home .stemit-hero .wp-block-cover__background {
  background: linear-gradient(90deg, rgba(4,17,33,.86), rgba(4,17,33,.57) 57%, rgba(4,17,33,.76)) !important;
  opacity: 1 !important;
}
.stemit-home .stemit-hero-content { padding-block: 70px; }
.stemit-home .stemit-hero-title {
  color: #fff;
  font-size: clamp(2.8rem, 5.3vw, 4.2rem);
  font-weight: 800;
  letter-spacing: -0.045em;
  line-height: 1.04;
  margin-bottom: 1.35rem;
}
.stemit-home .stemit-hero-copy { color: #d9e2ec; font-size: 1rem; max-width: 650px; margin: 0 auto 1.8rem; }
.stemit-home .wp-block-button.stemit-button .wp-block-button__link {
  border: 0;
  border-radius: 5px;
  box-shadow: none;
  font-size: .8rem;
  font-weight: 750;
  line-height: 1;
  padding: .95rem 1.25rem;
  transition: filter .2s ease, transform .2s ease;
}
.stemit-home .wp-block-button.stemit-button .wp-block-button__link:hover { filter: brightness(1.08); transform: translateY(-1px); }
.stemit-home .stemit-button-blue .wp-block-button__link { background: var(--stemit-blue); color: #fff; }
.stemit-home .stemit-button-green .wp-block-button__link { background: var(--stemit-green); color: #062115; }
.stemit-home .stemit-button-white .wp-block-button__link { background: #fff; color: var(--stemit-navy); }
.stemit-home .stemit-tech-strip {
  background: #061323;
  color: #dbe8f4;
  gap: 2.25rem;
  justify-content: center;
  min-height: 60px;
  padding: .8rem 1.5rem;
}
.stemit-home .stemit-tech-strip p { color: inherit; font-size: .83rem; margin: 0; opacity: .93; }

.stemit-home .stemit-intro { gap: 3.6rem; }
.stemit-home .stemit-intro-image img { aspect-ratio: 626 / 417; display: block; object-fit: cover; width: 100%; }
.stemit-home .stemit-intro p { margin-bottom: 1.2rem; }
.stemit-home .stemit-text-link { margin: 0; }
.stemit-home .stemit-text-link a, .stemit-home .stemit-read-more {
  color: var(--stemit-blue);
  font-size: .78rem;
  font-weight: 750;
}

.stemit-home .stemit-services-section { background: var(--stemit-pale); }
.stemit-home .stemit-kicker {
  color: var(--stemit-blue);
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .09em;
  margin-bottom: .65rem;
  text-transform: uppercase;
}
.stemit-home .stemit-kicker-green { color: var(--stemit-green); }
.stemit-home .stemit-heading-row { gap: 1.5rem; margin-bottom: 2.1rem; }
.stemit-home .stemit-heading-row h2 { max-width: 820px; margin-bottom: 0; }
.stemit-home .stemit-card-grid { display: grid; gap: 1.1rem; }
.stemit-home .stemit-service-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.stemit-home .stemit-service-card {
  background: #fff;
  border: 1px solid var(--stemit-line);
  border-radius: 10px;
  box-shadow: 0 6px 25px rgba(19,48,83,.035);
  display: flex;
  flex-direction: column;
  min-height: 255px;
  padding: 1.45rem;
}
.stemit-home .stemit-service-card h3 { margin: 1.15rem 0 .6rem; }
.stemit-home .stemit-service-card p:not(.stemit-card-icon):not(.stemit-text-link) { font-size: .8rem; }
.stemit-home .stemit-service-card .stemit-text-link { margin-top: auto; }
.stemit-home .stemit-card-icon {
  align-items: center;
  background: #eef8ff;
  border-radius: 8px;
  color: var(--stemit-blue);
  display: flex;
  font-size: .72rem;
  font-weight: 850;
  height: 38px;
  justify-content: center;
  margin: 0;
  width: 38px;
}

.stemit-home .stemit-specialties-section { background: var(--stemit-navy); color: #fff; }
.stemit-home .stemit-specialties-section h2 { color: #fff; margin-bottom: 2.35rem; }
.stemit-home .stemit-specialty-grid { display: grid; gap: .7rem; grid-template-columns: repeat(8, minmax(0,1fr)); }
.stemit-home .stemit-specialty-grid p {
  align-items: center;
  background: #142946;
  border: 1px solid #213a5b;
  border-radius: 6px;
  color: #dceaff;
  display: flex;
  flex-direction: column;
  font-size: .76rem;
  justify-content: center;
  line-height: 1.25;
  margin: 0;
  min-height: 142px;
  padding: 1rem .45rem;
  text-align: center;
}
.stemit-home .stemit-specialty-grid p::before { color: var(--stemit-blue); content: "+"; font-size: 1.4rem; margin-bottom: .7rem; }
.stemit-home .stemit-specialty-grid small { font-size: .68rem; margin-top: .2rem; }

.stemit-home .stemit-light-title { font-size: clamp(2rem, 3.5vw, 2.7rem); font-weight: 450; }
.stemit-home .stemit-outline-button .wp-block-button__link {
  background: transparent;
  border: 1px solid #233349;
  border-radius: 6px;
  color: var(--stemit-ink);
  font-size: .75rem;
  font-weight: 700;
  padding: .7rem 1rem;
}
.stemit-home .stemit-post-grid { display: grid !important; gap: 1.1rem; grid-template-columns: repeat(3, minmax(0,1fr)); }
.stemit-home .stemit-post-grid > li { margin: 0; width: auto !important; }
.stemit-home .stemit-post-card {
  background: #fff;
  border: 1px solid var(--stemit-line);
  border-radius: 10px;
  border-top: 5px solid #d8efff;
  box-shadow: 0 6px 25px rgba(19,48,83,.035);
  display: flex;
  flex-direction: column;
  min-height: 315px;
  padding: 1.5rem;
}
.stemit-home .stemit-post-grid > li:nth-child(2) .stemit-post-card { border-top-color: #e4d9ff; }
.stemit-home .stemit-post-grid > li:nth-child(3) .stemit-post-card { border-top-color: #d5f6df; }
.stemit-home .stemit-post-meta { margin-bottom: .8rem; }
.stemit-home .stemit-post-meta .wp-block-post-terms a { background: #f3f6f9; border-radius: 3px; color: var(--stemit-ink); font-size: .62rem; font-weight: 800; padding: .25rem .45rem; }
.stemit-home .stemit-post-meta .wp-block-post-date { color: #99a6b4; font-size: .65rem; }
.stemit-home .stemit-post-card .wp-block-post-title { font-size: 1rem; line-height: 1.35; margin: 0 0 .75rem; }
.stemit-home .stemit-post-card .wp-block-post-title a { color: var(--stemit-ink); }
.stemit-home .stemit-post-card .wp-block-post-excerpt { color: var(--stemit-muted); font-size: .79rem; line-height: 1.62; }
.stemit-home .stemit-post-card .stemit-read-more { margin-top: auto; }

.stemit-home .stemit-giving-section { background: var(--stemit-navy); color: #fff; }
.stemit-home .stemit-giving-section h2, .stemit-home .stemit-giving-section h3 { color: #fff; }
.stemit-home .stemit-giving-head { gap: 4rem; margin-bottom: 2.3rem; }
.stemit-home .stemit-giving-head p { color: #aebccc; margin-bottom: .25rem; }
.stemit-home .stemit-program-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
.stemit-home .stemit-program-card {
  background: #12243b;
  border: 1px solid #233951;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  min-height: 305px;
  padding: 1.6rem;
}
.stemit-home .stemit-program-card h3 { margin: 1.15rem 0 .6rem; }
.stemit-home .stemit-program-card > p:not(.stemit-program-icon):not(.stemit-stat-label) { color: #aebccc; font-size: .8rem; }
.stemit-home .stemit-program-icon {
  background: #103f37;
  border-radius: 8px;
  color: var(--stemit-green);
  display: grid;
  font-size: .61rem;
  font-weight: 850;
  height: 40px;
  letter-spacing: .05em;
  margin: 0;
  place-items: center;
  width: 40px;
}
.stemit-home .stemit-program-blue .stemit-program-icon { background: #123552; color: var(--stemit-blue); }
.stemit-home .stemit-program-purple .stemit-program-icon { background: #302c53; color: #a26df0; }
.stemit-home .stemit-stat { border-top: 1px solid #2b3d52; color: var(--stemit-green); font-size: 1.7rem; margin: auto 0 0; padding-top: 1rem; }
.stemit-home .stemit-program-blue .stemit-stat { color: var(--stemit-blue); }
.stemit-home .stemit-program-purple .stemit-stat { color: #a26df0; }
.stemit-home .stemit-stat-label { color: #8292a6; font-size: .66rem; margin: 0; }
.stemit-home .stemit-involved {
  background: #0d3a39;
  border: 1px solid #10514b;
  border-radius: 10px;
  gap: 1.5rem;
  margin-top: 2rem;
  padding: 1.35rem 1.7rem;
}
.stemit-home .stemit-involved h3 { margin-bottom: .25rem; }
.stemit-home .stemit-involved p { color: #9cc6c2; font-size: .75rem; margin-bottom: 0; }

.stemit-home .stemit-founder-section { background: #eff5fb; }
.stemit-home .stemit-founder-grid { gap: 2.3rem; }
.stemit-home .stemit-founder-story { gap: 1.5rem; }
.stemit-home .stemit-founder-story .wp-block-media-text__content { padding: 0 0 0 1.4rem; }
.stemit-home .stemit-founder-story img { height: 235px; object-fit: cover; object-position: left top; width: 100%; }
.stemit-home .stemit-founder-story h2 { font-size: 1.45rem; }
.stemit-home .stemit-founder-story p { font-size: .75rem; }
.stemit-home .stemit-testimonial {
  background: #fff;
  border: 0;
  border-radius: 8px;
  box-shadow: 0 6px 24px rgba(34,57,82,.06);
  margin: 0;
  padding: 1.8rem 2.1rem;
}
.stemit-home .stemit-testimonial::before { color: #2366a8; content: "“"; display: block; font-size: 3.7rem; font-weight: 900; line-height: .7; }
.stemit-home .stemit-testimonial p { color: #425064; font-size: .81rem; }
.stemit-home .stemit-testimonial cite { color: #788698; font-size: .72rem; font-style: normal; }
.stemit-home .stemit-testimonial cite strong { color: var(--stemit-ink); }

.stemit-home .stemit-cta { background: var(--stemit-navy); border-bottom: 1px solid #25364b; color: #fff; padding: 3.7rem 0; }
.stemit-home .stemit-cta h2 { color: #fff; font-size: 1.75rem; margin-bottom: .7rem; }
.stemit-home .stemit-cta p { color: #93a3b5; font-size: .8rem; }

@media (max-width: 980px) {
  .stemit-home .stemit-service-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .stemit-home .stemit-specialty-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
  .stemit-home .stemit-founder-grid { flex-wrap: wrap !important; }
  .stemit-home .stemit-founder-grid > .wp-block-column { flex-basis: 100% !important; }
}
@media (max-width: 700px) {
  .stemit-home .stemit-shell { width: calc(100% - 32px); }
  .stemit-home .stemit-section { padding: 58px 0; }
  .stemit-home .stemit-hero { min-height: 640px !important; }
  .stemit-home .stemit-hero-content { padding-block: 85px; }
  .stemit-home .stemit-hero-title, .stemit-home .stemit-hero-copy { text-align: left !important; }
  .stemit-home .stemit-hero-title { font-size: 2.75rem; }
  .stemit-home .stemit-hero-title br { display: none; }
  .stemit-home .stemit-hero .wp-block-buttons { justify-content: flex-start; }
  .stemit-home .stemit-tech-strip { gap: 1rem; }
  .stemit-home .stemit-tech-strip p { font-size: .69rem; }
  .stemit-home .stemit-intro { gap: 1.7rem; }
  .stemit-home .stemit-service-grid,
  .stemit-home .stemit-program-grid,
  .stemit-home .stemit-post-grid { grid-template-columns: 1fr; }
  .stemit-home .stemit-specialty-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .stemit-home .stemit-heading-row { align-items: flex-start; flex-direction: column; }
  .stemit-home .stemit-giving-head { gap: 1rem; }
  .stemit-home .stemit-founder-story { grid-template-columns: 1fr !important; }
  .stemit-home .stemit-founder-story .wp-block-media-text__content { padding: 1.2rem 0 0; }
  .stemit-home .stemit-founder-story img { max-width: 230px; }
  .stemit-home .stemit-involved { align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  .stemit-home .wp-block-button.stemit-button .wp-block-button__link { transition: none; }
}
