.hero {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--color-white);
  overflow: hidden;
}

.hero--full {
  min-height: 100vh;
}

.hero--short {
  min-height: 40vh;
  padding-top: var(--header-height);
}

.hero__bg {
  position: absolute;
  inset: 0;
  z-index: -1;
}

.hero__bg--garden {
  background: linear-gradient(135deg, #000000 0%, #1a1a1a 40%, #0277BD 100%);
}

.hero__bg--services {
  background: linear-gradient(135deg, #0277BD 0%, #1a1a1a 50%, #000000 100%);
}

.hero__bg--about {
  background: linear-gradient(135deg, #1a1a1a 0%, #111111 50%, #000000 100%);
}

.hero__bg--gallery {
  background: linear-gradient(135deg, #01579B 0%, #0277BD 50%, #29B6F6 100%);
}

.hero__bg--contact {
  background: linear-gradient(135deg, #1a4a1c 0%, #0277BD 50%, #01579B 100%);
}

.hero__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
}

.hero__content {
  position: relative;
  z-index: 1;
  padding: var(--space-6);
  max-width: 800px;
}

.hero__title {
  font-size: var(--fs-4xl);
  font-weight: var(--fw-bold);
  margin-bottom: var(--space-4);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.hero__subtitle {
  font-size: var(--fs-lg);
  margin-bottom: var(--space-6);
  opacity: 0.9;
  max-width: 600px;
  margin-inline: auto;
}

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

.hero__title-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-7);
  margin-bottom: var(--space-4);
  animation: heroLogoIn 1.2s ease-out;
  max-width: 900px;
}

.hero__logo {
  height: 160px;
  width: auto;
  flex-shrink: 0;
  mix-blend-mode: screen;
  filter: brightness(1.1);
  transition: all var(--transition-base);
}

.hero__logo:hover {
  transform: scale(1.05);
  filter: brightness(1.3);
}

.hero__title-row h1 {
  margin-bottom: 0;
  text-align: left;
}

@keyframes heroLogoIn {
  0% {
    opacity: 0;
    transform: scale(0.7) translateY(20px);
  }
  100% {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

.hero__scroll-indicator {
  position: absolute;
  bottom: var(--space-6);
  left: 50%;
  transform: translateX(-50%);
  color: var(--color-white);
  font-size: var(--fs-xl);
  animation: bounce 2s infinite;
  opacity: 0.7;
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% { transform: translateX(-50%) translateY(0); }
  40% { transform: translateX(-50%) translateY(-10px); }
  60% { transform: translateX(-50%) translateY(-5px); }
}

@media (max-width: 767px) {
  .hero__title-row {
    flex-direction: column;
    gap: var(--space-3);
  }

  .hero__logo {
    height: 100px;
    width: auto;
  }

  .hero__title-row h1 {
    text-align: center;
  }

  .hero__title {
    font-size: var(--fs-2xl);
  }

  .hero__subtitle {
    font-size: var(--fs-base);
  }

  .hero--short {
    min-height: 30vh;
  }
}
