/* ALTAHANY_HOME_SLIDER_LAYOUT_V10_64_R2 */

/* One fixed square frame for the home hero slider */
.ath-home-hero-grid {
  align-items: center !important;
  gap: clamp(24px, 4vw, 64px) !important;
}

.ath-home-hero-media {
  position: relative !important;
  isolation: isolate !important;
  width: min(100%, 620px) !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  justify-self: center !important;
  align-self: center !important;
  overflow: hidden !important;
  border-radius: clamp(20px, 2vw, 30px) !important;
  background: #efe2cf !important;
  border: 1px solid rgba(173, 126, 48, .30) !important;
  box-shadow: 0 20px 50px rgba(61, 39, 18, .10) !important;
  contain: layout paint !important;
}

.ath-home-hero-slide {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  display: block !important;
  overflow: hidden !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: scale(1.012) !important;
  transition: opacity .42s ease, visibility .42s ease, transform .55s ease !important;
}

.ath-home-hero-slide.is-active,
.ath-home-hero-slide[aria-hidden="false"],
.ath-home-hero-slide[data-active="true"] {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: scale(1) !important;
  z-index: 2 !important;
}

.ath-home-hero-slide img,
.ath-home-hero-slide picture,
.ath-home-hero-slide picture img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

.ath-home-hero-empty {
  position: absolute !important;
  inset: 0 !important;
  display: grid !important;
  place-items: center !important;
  padding: 24px !important;
  color: #5c4633 !important;
  text-align: center !important;
}

.ath-home-hero-caption {
  position: absolute !important;
  z-index: 12 !important;
  inset-inline: 18px !important;
  bottom: 18px !important;
  width: auto !important;
  max-width: calc(100% - 36px) !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  border-radius: 14px !important;
  background: rgba(45,31,21,.58) !important;
  color: #fff !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.16) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
}

.ath-home-hero-caption h2,
.ath-home-hero-caption h3,
.ath-home-hero-caption strong {
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(.95rem,1.25vw,1.2rem) !important;
  line-height: 1.35 !important;
}

.ath-home-hero-caption p,
.ath-home-hero-caption span {
  margin: 4px 0 0 !important;
  color: rgba(255,255,255,.88) !important;
  font-size: clamp(.76rem,.88vw,.9rem) !important;
  line-height: 1.55 !important;
}

.ath-home-hero-arrow {
  position: absolute !important;
  top: 50% !important;
  z-index: 20 !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  display: inline-grid !important;
  place-items: center !important;
  transform: translateY(-50%) !important;
  border: 1px solid rgba(110,74,27,.18) !important;
  border-radius: 13px !important;
  background: rgba(255,255,255,.94) !important;
  color: #2f2117 !important;
  box-shadow: 0 8px 22px rgba(50,32,18,.15) !important;
  cursor: pointer !important;
}

.ath-home-hero-arrow.is-prev { inset-inline-start: 14px !important; }
.ath-home-hero-arrow.is-next { inset-inline-end: 14px !important; }

.ath-home-hero-arrow:hover {
  color: #fff !important;
  background: #9b6b26 !important;
  border-color: #9b6b26 !important;
}

/* Gallery/service cards and metadata */
.ath-gallery-group-frame,
.service-preview-card,
.ath-home-design-card,
.ath-design-card,
.ath-service-card {
  overflow: hidden !important;
  border: 1px solid rgba(173,126,48,.20) !important;
  border-radius: 18px !important;
  background: #fffdf9 !important;
  box-shadow: 0 10px 28px rgba(61,39,18,.06) !important;
}

.ath-gallery-group-image {
  position: relative !important;
  display: block !important;
  aspect-ratio: 4 / 3 !important;
  overflow: hidden !important;
  background: #f0e5d5 !important;
}

.ath-gallery-group-image img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform .32s ease !important;
}

.ath-gallery-group-frame:hover .ath-gallery-group-image img {
  transform: scale(1.025) !important;
}

.ath-count-badge,
.ath-gallery-count,
.ath-image-number,
.design-number,
[data-image-number] {
  position: absolute !important;
  inset-inline-end: 12px !important;
  bottom: 12px !important;
  z-index: 9 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  min-height: 34px !important;
  max-width: calc(100% - 24px) !important;
  padding: 7px 11px !important;
  border: 1px solid rgba(255,255,255,.40) !important;
  border-radius: 999px !important;
  background: rgba(44,29,18,.76) !important;
  color: #fff !important;
  box-shadow: 0 5px 16px rgba(0,0,0,.16) !important;
  backdrop-filter: blur(7px) !important;
  -webkit-backdrop-filter: blur(7px) !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  text-align: center !important;
}

.ath-card-description-frame,
.ath-gallery-description,
.category-description,
.service-description,
.ath-service-description,
.ath-design-description {
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 1px dashed rgba(173,126,48,.32) !important;
  border-radius: 12px !important;
  background: #fff9ef !important;
  color: #6b5a4a !important;
  font-size: .88rem !important;
  line-height: 1.7 !important;
  overflow-wrap: anywhere !important;
}

.ath-filter-chip {
  min-height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 14px !important;
  border: 1px solid #dfc89f !important;
  border-radius: 999px !important;
  background: #fffaf2 !important;
  color: #5f431d !important;
  box-shadow: 0 4px 12px rgba(73,44,10,.04) !important;
  font-size: .86rem !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
  white-space: normal !important;
}

.ath-filter-chip.is-active,
.ath-filter-chip:hover {
  color: #fff !important;
  background: #956521 !important;
  border-color: #956521 !important;
}

@media (max-width: 980px) {
  .ath-home-hero-grid {
    grid-template-columns: 1fr !important;
  }

  .ath-home-hero-copy { order: 1 !important; }

  .ath-home-hero-media {
    order: 2 !important;
    width: min(100%,560px) !important;
  }
}

@media (max-width: 640px) {
  .ath-home-hero-media {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 20px !important;
  }

  .ath-home-hero-arrow {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
  }

  .ath-home-hero-caption {
    inset-inline: 10px !important;
    bottom: 10px !important;
    max-width: calc(100% - 20px) !important;
    padding: 10px 11px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ath-home-hero-slide,
  .ath-gallery-group-image img {
    transition: none !important;
  }
}

/* ALTAHANY_HOME_COPY_FINAL_V10_66 */
.ath-home-hero-copy {
  display: grid !important;
  align-content: center !important;
  gap: 15px !important;
  max-width: 660px !important;
}
.ath-home-hero-copy h1 {
  max-width: 14ch !important;
  margin: 0 !important;
  color: #302116 !important;
  font-size: clamp(2.15rem, 4.7vw, 4.7rem) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
  text-wrap: balance !important;
}
.ath-home-hero-subtitle-v1066 {
  max-width: 620px !important;
  margin: 0 !important;
  color: #6a5949 !important;
  font-size: clamp(1rem, 1.25vw, 1.18rem) !important;
  font-weight: 500 !important;
  line-height: 1.9 !important;
  text-wrap: pretty !important;
}
.ath-home-company-strip,
.ath-home-service-nav,
.ath-home-design-gallery,
.ath-home-final-cta {
  content-visibility: auto;
  contain-intrinsic-size: 1px 680px;
}
.ath-home-design-card,
.ath-gallery-group-frame,
.service-preview-card {
  contain: layout paint style !important;
}
@media (max-width: 980px) {
  .ath-home-hero-copy {
    max-width: 100% !important;
    text-align: center !important;
    justify-items: center !important;
  }
  .ath-home-hero-copy h1 { max-width: 16ch !important; }
}
@media (max-width: 560px) {
  .ath-home-hero-copy h1 {
    max-width: 100% !important;
    font-size: clamp(2rem, 10vw, 3rem) !important;
  }
  .ath-home-hero-subtitle-v1066 {
    font-size: .98rem !important;
    line-height: 1.8 !important;
  }
}
