/* Andes Crew — Phase 02: The Perfect First Impression
   Hero-only refinement. Existing photography, copy, destination and markup preserved.
   Kept separate from legacy homepage styles to make review and rollback easy. */

.hero-v3.clean-hero {
  width: min(1360px, calc(100% - 48px)) !important;
  height: clamp(560px, 70svh, 740px) !important;
  min-height: 0 !important;
  margin: clamp(16px, 2vw, 28px) auto 0 !important;
  border-radius: clamp(20px, 2.2vw, 28px) !important;
  background: #183126 !important;
  box-shadow: none !important;
}

.hero-v3 .hero-v3-image img {
  object-position: center 48% !important;
}

.hero-v3::after {
  background: linear-gradient(
    180deg,
    rgba(8, 29, 18, .48) 0%,
    rgba(8, 29, 18, .06) 37%,
    rgba(8, 29, 18, .25) 59%,
    rgba(5, 18, 12, .84) 100%
  ) !important;
}

.hero-v3 .hero-v3-content {
  padding: clamp(28px, 4.1vw, 58px) !important;
}

.hero-v3 .hero-v3-top {
  align-items: flex-start !important;
}

.hero-v3 .hero-v3-location {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 10px 14px !important;
  border: 1px solid rgba(255, 255, 255, .40) !important;
  border-radius: 999px !important;
  background: rgba(17, 43, 28, .27) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1.2 !important;
  letter-spacing: .14em !important;
  white-space: nowrap;
}

.hero-v3 .hero-v3-location-dot {
  flex: none;
  width: 6px !important;
  height: 6px !important;
  background: #dce9d8 !important;
  box-shadow: none !important;
}

.hero-v3 .hero-v3-edition {
  font-size: 10px !important;
  line-height: 1.3 !important;
  letter-spacing: .13em !important;
}

.hero-v3 .hero-v3-bottom {
  align-items: flex-end !important;
  gap: 30px !important;
}

.hero-v3 .hero-v3-main {
  min-width: 0;
  max-width: 1060px !important;
}

.hero-v3 .hero-v3-main h1 {
  max-width: 1050px !important;
  margin: 0 0 clamp(24px, 3vw, 36px) !important;
  font-size: clamp(60px, 7.2vw, 108px) !important;
  font-weight: 620 !important;
  line-height: 1.025 !important;
  letter-spacing: -.075em !important;
  text-wrap: initial !important;
}

.hero-v3 .hero-v3-main h1 em {
  display: inline-block;
  font-style: normal !important;
  font-weight: 560 !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  white-space: nowrap;
}

.hero-v3 .hero-choice-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  max-width: 100% !important;
  margin-top: 0 !important;
  gap: 0 !important;
}

.hero-v3 .hero-choice-actions .hero-choice-primary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  gap: 24px !important;
  width: max-content !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 54px !important;
  padding: 15px 20px 15px 23px !important;
  border: 1px solid #f5f1e8 !important;
  border-radius: 999px !important;
  background: #f5f1e8 !important;
  color: #183126 !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1.2 !important;
  letter-spacing: -.01em !important;
  text-align: left !important;
  white-space: nowrap !important;
  transition: background-color .18s ease, border-color .18s ease, transform .18s ease !important;
}

.hero-v3 .hero-choice-actions .hero-choice-primary span {
  flex: 0 0 auto !important;
  margin: 0 !important;
  color: inherit !important;
  font-size: 19px !important;
  line-height: 1 !important;
}

@media (hover: hover) and (pointer: fine) {
  .hero-v3 .hero-choice-actions .hero-choice-primary:hover {
    background: #e5e9df !important;
    border-color: #e5e9df !important;
    transform: translateY(-2px) !important;
  }
}

.hero-v3 .hero-choice-actions .hero-choice-primary:active {
  transform: translateY(0) scale(.985) !important;
}

.hero-v3 .hero-choice-actions .hero-choice-primary:focus-visible {
  outline: 3px solid #dce9d8 !important;
  outline-offset: 4px !important;
}

@media (max-width: 760px) {
  .hero-v3.clean-hero {
    width: calc(100% - 28px) !important;
    height: clamp(440px, calc(100svh - 96px), 640px) !important;
    min-height: 0 !important;
    margin: 14px auto 0 !important;
    border-radius: 21px !important;
  }

  .hero-v3 .hero-v3-image img {
    object-position: 56% center !important;
  }

  .hero-v3::after {
    background: linear-gradient(
      180deg,
      rgba(8, 29, 18, .49) 0%,
      rgba(8, 29, 18, .06) 37%,
      rgba(6, 23, 15, .33) 55%,
      rgba(5, 18, 12, .90) 100%
    ) !important;
  }

  .hero-v3 .hero-v3-content {
    padding: 23px 22px 31px !important;
  }

  .hero-v3 .hero-v3-location {
    padding: 9px 12px !important;
    font-size: 9px !important;
    letter-spacing: .12em !important;
  }

  .hero-v3 .hero-v3-edition,
  .hero-v3 .hero-v3-aside {
    display: none !important;
  }

  .hero-v3 .hero-v3-main h1 {
    max-width: 100% !important;
    margin-bottom: 23px !important;
    font-size: clamp(39px, 10.5vw, 53px) !important;
    font-weight: 620 !important;
    line-height: 1.065 !important;
    letter-spacing: -.075em !important;
  }

  .hero-v3 .hero-choice-actions .hero-choice-primary {
    min-height: 51px !important;
    padding: 13px 17px 13px 19px !important;
    gap: 20px !important;
    font-size: 12px !important;
  }

  .hero-v3 .hero-choice-actions .hero-choice-primary span {
    font-size: 17px !important;
  }
}

@media (max-width: 360px) {
  .hero-v3 .hero-v3-content {
    padding-inline: 18px !important;
  }

  .hero-v3 .hero-v3-main h1 {
    font-size: 37px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero-v3 .hero-choice-actions .hero-choice-primary {
    transition: none !important;
  }
}
