/* Fulmor v52 — complete hero product framing and a separate specification row.
 * The specification panel is intentionally outside the hero so translated
 * labels or font metrics can never shorten the lifestyle image stage again.
 */

.home-page.home-v20 .hero-spec-section {
  background: linear-gradient(180deg, #e7e8e4 0%, #f1f2ef 100%);
  border-top: 1px solid #c8ccc7;
  padding: 22px var(--v20-pad) clamp(30px, 3.4vw, 46px);
}

.home-page.home-v20 .hero-spec-section .hero-spec-strip {
  background: rgb(255 255 255 / 88%);
  border: 1px solid #ccd0cb;
  border-radius: 16px;
  box-shadow: 0 16px 42px rgb(32 39 35 / 8%);
  grid-column: auto;
  grid-row: auto;
  margin: 0 !important;
  overflow: hidden;
  position: relative !important;
  width: 100%;
}

.home-page.home-v20 .hero-spec-section .hero-spec-strip > div {
  min-height: 92px;
}

@media (min-width: 960px) {
  .home-page.home-v20 .hero.hero-fullbleed {
    background: #bcb4a9 !important;
    grid-template-rows: minmax(0, 1fr) !important;
    min-height: max(640px, 56.25vw) !important;
    padding-bottom: 0 !important;
  }

  .home-page.home-v20 .hero.hero-fullbleed .hero-carousel-stage {
    bottom: 0 !important;
  }

  .home-page.home-v20 .hero.hero-fullbleed::after {
    background:
      linear-gradient(90deg, rgb(245 245 241 / 96%) 0%, rgb(245 245 241 / 91%) 22%, rgb(245 245 241 / 74%) 34%, rgb(245 245 241 / 42%) 44%, rgb(245 245 241 / 12%) 54%, transparent 66%),
      linear-gradient(180deg, rgb(17 19 21 / 1%) 58%, rgb(17 19 21 / 11%) 100%);
    bottom: 0 !important;
  }

  .home-page.home-v20 .hero.hero-fullbleed .hero-slide img {
    filter: saturate(1.1) contrast(1.045) brightness(.985);
  }

  .home-page.home-v20 .hero.hero-fullbleed .hero-slide--room img { object-position: 58% center; }
  .home-page.home-v20 .hero.hero-fullbleed .hero-slide--home img { object-position: 50% center; }
  .home-page.home-v20 .hero.hero-fullbleed .hero-slide--training img { object-position: 50% center; }
  .home-page.home-v20 .hero.hero-fullbleed .hero-slide--travel img { object-position: 54% center; }

  .home-page.home-v20 .hero.hero-fullbleed .hero-copy {
    padding-block: clamp(24px, 4.2vw, 68px);
  }

  .home-page.home-v20 .hero-slide-dots {
    bottom: 0;
  }
}

@media (min-width: 960px) and (max-width: 1180px) {
  .home-page.home-v20 .hero.hero-fullbleed .hero-cert-review {
    max-width: none;
    transform: translateY(-8px);
    width: min(530px, calc(100vw - 420px));
  }
}

@media (max-width: 959px) {
  .home-page.home-v20 .hero-spec-section {
    padding-top: 18px;
  }

  .home-page.home-v20 .hero-spec-section .hero-spec-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-page.home-v20 .hero-spec-section .hero-spec-strip > div:nth-child(odd) {
    border-left: 0;
  }

  .home-page.home-v20 .hero-spec-section .hero-spec-strip > div:nth-child(n + 3) {
    border-top: 1px solid #d4d8d4;
  }
}

@media (max-width: 430px) {
  .home-page.home-v20 .hero-spec-section {
    padding-bottom: 28px;
    padding-top: 14px;
  }

  .home-page.home-v20 .hero-spec-section .hero-spec-strip {
    border-radius: 12px;
  }

  .home-page.home-v20 .hero-spec-section .hero-spec-strip > div {
    min-height: 84px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-page.home-v20 .hero.hero-fullbleed .hero-slide img {
    filter: none;
  }
}
