:root {
  --pcb-home-content-width: 1440px;
  --pcb-home-gutter: 24px;
}

.pcb-homepage {
  --pcb-site-header-height: 96px;
  overflow-x: hidden;
}

/* Keep every first-screen element on one centered desktop grid. */
.pcb-homepage .pcb-site-header {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  width: min(var(--pcb-home-content-width), calc(100% - (var(--pcb-home-gutter) * 2)));
  min-height: 76px;
  margin: 0 auto;
  padding: 14px 0;
}

.pcb-homepage .pcb-site-header::before {
  position: fixed;
  z-index: -1;
  inset: 0;
  height: var(--pcb-site-header-height);
  border-bottom: 1px solid var(--pcb-site-header-line);
  background: #fff;
  content: "";
}

.pcb-homepage .pcb-site-header__brand img {
  width: 48px;
  height: 48px;
}

.pcb-homepage .pcb-site-header__brand {
  gap: 12px;
}

.pcb-homepage .pcb-site-header__brand strong {
  font-size: 24px;
}

.pcb-homepage .pcb-site-header__brand small {
  margin-top: 3px;
  font-size: 12px;
}

.pcb-homepage .pcb-site-header__nav {
  gap: clamp(18px, 2vw, 32px);
}

.pcb-homepage .pcb-site-header__nav a {
  font-size: 14px;
}

.hero {
  min-height: 560px;
  overflow: visible;
}

.hero-image {
  object-fit: cover;
  object-position: center;
}

.hero-content {
  width: min(var(--pcb-home-content-width), calc(100% - (var(--pcb-home-gutter) * 2)));
  min-height: 560px;
  margin: 0 auto;
  padding: clamp(40px, 6vh, 64px) 0 44px;
}

.hero h1 {
  max-width: 900px;
  font-size: clamp(42px, 3.4vw, 56px);
}

.hero-points {
  font-size: clamp(15px, 1.1vw, 17px);
}

.hero-metrics {
  width: min(540px, 100%);
}

.hero-portals {
  width: 100%;
  margin-top: auto;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  transform: none;
}

.service-button-card {
  min-height: 88px;
  padding: 14px clamp(14px, 1.4vw, 20px);
}

.service-button-card strong {
  font-size: clamp(18px, 1.45vw, 22px);
}

.service-button-card small {
  font-size: clamp(12px, 0.9vw, 14px);
}

.home-job-search {
  min-height: 0;
  padding: 28px var(--pcb-home-gutter);
}

.home-job-search-form {
  width: min(var(--pcb-home-content-width), 100%);
  margin: 0 auto;
}

@media (max-width: 1440px) {
  .pcb-homepage .pcb-site-header__nav {
    gap: 24px;
  }
}
