/**
 * AlbiMall CRM — Home widgets editorial v2 (overrides legacy home-widgets.css).
 */

@media (min-width: 768px) {
  .elementor-widget-albi_brands_showcase,
  .elementor-widget-albi_brands_showcase .elementor-widget-container,
  .elementor-widget-albi_services_carousel,
  .elementor-widget-albi_services_carousel .elementor-widget-container,
  .elementor-widget-albi_news_grid,
  .elementor-widget-albi_news_grid .elementor-widget-container,
  .elementor-widget-albi_split_feature,
  .elementor-widget-albi_split_feature .elementor-widget-container,
  .elementor-widget-albi_offers_events,
  .elementor-widget-albi_offers_events .elementor-widget-container,
  .elementor-widget-albi_home_hero,
  .elementor-widget-albi_home_hero .elementor-widget-container,
  .elementor-element:has(.albi-offers),
  .elementor-element:has(.albi-brands),
  .elementor-element:has(.albi-home-hero) {
    overflow: visible !important;
  }
}

@media (max-width: 767px) {
  .elementor-widget-albi_home_hero,
  .elementor-widget-albi_home_hero .elementor-widget-container,
  .elementor-element:has(.albi-home-hero),
  .elementor-widget-albi_brands_showcase,
  .elementor-widget-albi_brands_showcase .elementor-widget-container,
  .elementor-element:has(.albi-brands),
  .elementor-widget-albi_services_carousel,
  .elementor-widget-albi_services_carousel .elementor-widget-container,
  .elementor-element:has(.albi-svc-car),
  .elementor-widget-albi_shops_carousel,
  .elementor-widget-albi_shops_carousel .elementor-widget-container,
  .elementor-element:has(.albi-shops-car) {
    overflow: hidden !important;
  }
}

.albi-home-hero__heading,
.albi-home-hero__title {
  /* Defaults only — Elementor Tipografia Size must be able to override (no !important). */
  font-size: clamp(1.875rem, 8.5vw, 5.875rem);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  font-family: var(--albi-font-family, Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
}

.albi-home-hero-slider .swiper-slide-active .albi-home-hero__heading,
.albi-home-hero-slider .swiper-slide-active .albi-home-hero__title {
  animation: albi-hero-title-in 1s var(--albi-ed-ease, cubic-bezier(0.22, 1, 0.36, 1)) both;
}

@keyframes albi-hero-title-in {
  from { opacity: 0; transform: translate3d(0, 2rem, 0); }
  to { opacity: 1; transform: none; }
}

.albi-brands__card {
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  transition: transform 0.35s var(--albi-ed-ease) !important;
}

.albi-brands__card:hover {
  transform: translateY(-4px);
  border-color: transparent !important;
}

.albi-offers {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr) !important;
  gap: clamp(2rem, 5vw, 4rem) !important;
  align-items: start;
}

.albi-offers__featured .albi-offers__img {
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 0 !important;
  margin-bottom: 1rem;
  border-bottom: var(--albi-ed-rule);
}

.albi-offers__featured .albi-offers__img img,
.albi-offers__featured .albi-offers__img .albi-hw__ph {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(0.2);
  transition: transform 0.7s var(--albi-ed-ease), filter 0.4s;
}

.albi-offers__featured:hover .albi-offers__img img {
  transform: scale(1.03);
  filter: grayscale(0);
}

.albi-offers__featured h2,
.albi-offers__featured h2 a {
  font-size: clamp(1.5rem, 3.5vw, 2.35rem) !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.12 !important;
}

.albi-offers__row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) clamp(72px, 12vw, 110px) !important;
  align-items: center;
  gap: clamp(0.75rem, 2vw, 1.25rem);
  padding: clamp(1rem, 2.5vw, 1.35rem) 0;
  border-bottom: var(--albi-ed-rule) !important;
  background: transparent !important;
  box-shadow: none !important;
}

.albi-offers__row .albi-offers__thumb {
  width: 100% !important;
  aspect-ratio: 1;
  border-radius: 0 !important;
  overflow: hidden;
}

.albi-offers .albi-hw__btn--solid {
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--albi-primary-color, #ed1c24) !important;
  border: none !important;
  padding: 0 !important;
  font-size: 0.65rem;
  letter-spacing: 0.12em;
}

.albi-offers .albi-hw__btn--solid::after {
  content: " ↗";
}

.elementor-element:has(.albi-offers) .albi-offers__row {
  border-bottom-color: color-mix(in srgb, currentColor 22%, transparent) !important;
}

.elementor-element:has(.albi-offers) .albi-offers__featured h2 a,
.elementor-element:has(.albi-offers) .albi-offers__row h3 a,
.elementor-element:has(.albi-offers) .albi-offers__meta,
.elementor-element:has(.albi-offers) .albi-offers__brand {
  color: inherit;
}

.elementor-widget-albi_split_feature a.albi-split-feature__btn,
.elementor-widget-albi_split_feature .albi-split-feature__btn {
  border-radius: 0 !important;
  border-color: var(--albi-primary-color, #ed1c24) !important;
  color: var(--albi-primary-color, #ed1c24) !important;
  background: transparent !important;
}

.elementor-widget-albi_split_feature a.albi-split-feature__btn:hover,
.elementor-widget-albi_split_feature .albi-split-feature__btn:hover {
  background: var(--albi-primary-color, #ed1c24) !important;
  color: #fff !important;
}

.elementor-widget-albi_news_grid .elementor-widget-container {
  max-width: min(1320px, 100%);
  margin-inline: auto;
  padding-inline: clamp(1rem, 4vw, 2rem);
}

.elementor-widget-albi_services_carousel .albi-hw__nav .swiper-button-prev,
.elementor-widget-albi_services_carousel .albi-hw__nav .swiper-button-next {
  background: rgba(255, 255, 255, 0.12) !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
}

.albi-split-feature {
  width: 100%;
}

.albi-split-feature__title {
  font-size: clamp(1.75rem, 4vw, 3rem) !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
}

.albi-svc-car__card {
  border: var(--albi-ed-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.albi-news__card {
  border: var(--albi-ed-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
}

.albi-news__card img {
  filter: grayscale(0.15);
  transition: transform 0.6s var(--albi-ed-ease), filter 0.35s;
}

.albi-news__card:hover img {
  transform: scale(1.04);
  filter: grayscale(0);
}

@media (max-width: 900px) {
  .albi-offers { grid-template-columns: minmax(0, 1fr) !important; }
  .albi-offers__row { grid-template-columns: minmax(0, 1fr) !important; }
  .albi-offers__row .albi-offers__thumb { order: -1; aspect-ratio: 16 / 10; }
}

@media (prefers-reduced-motion: reduce) {
  .albi-home-hero-slider .swiper-slide-active .albi-home-hero__heading,
  .albi-home-hero-slider .swiper-slide-active .albi-home-hero__title { animation: none; }
}
