/* ==========================================================================
   Home Page — Hero & Homepage-specific Styles
   ========================================================================== */

/* ---------- Hero ---------- */

.hero {
  background:
    linear-gradient(135deg, rgba(10, 22, 40, 0.88) 0%, rgba(15, 33, 64, 0.82) 50%, rgba(21, 45, 88, 0.78) 100%),
    url('https://images.unsplash.com/photo-1742071276778-ffee25185ed9?w=1600&q=80&auto=format&fit=crop') center/cover no-repeat;
  padding: calc(var(--space-32) + var(--header-height)) 0 var(--space-20);
  position: relative;
  overflow: hidden;
}

.hero::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 120px;
  background: linear-gradient(to bottom, transparent, rgba(10, 22, 40, 0.3));
  pointer-events: none;
}

.hero__content {
  position: relative;
  z-index: 1;
  max-width: 680px;
}

.hero h1 {
  color: #fff;
  margin-bottom: var(--space-6);
}

.hero__subtitle {
  color: var(--color-primary-200);
  font-size: var(--font-size-md);
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--space-10);
  max-width: 540px;
}

.hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
}

/* ---------- Services overview (cards) ---------- */

.home-services .grid {
  margin-top: var(--space-4);
}

/* ---------- Process teaser ---------- */

.home-process {
  background-color: var(--color-bg-alt);
}

.home-process__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-8);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary-600);
  transition: color var(--transition-fast);
}

.home-process__link:hover {
  color: var(--color-primary-800);
}

.home-process__link svg {
  width: 16px;
  height: 16px;
  stroke: currentColor;
  fill: none;
  stroke-width: 2;
  transition: transform var(--transition-fast);
}

.home-process__link:hover svg {
  transform: translateX(4px);
}

/* ---------- Image Band ---------- */

.image-band {
  width: 100%;
  height: 300px;
  overflow: hidden;
  position: relative;
}

.image-band__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 40%;
}

/* ---------- Trust section ---------- */

.home-trust {
  background-color: #fff;
}
