/* Alsourayia Targeted UX Updates — presentation-only overrides. */

/* 2) Home products: only variable/multiple products. */
.als-v1653-products .als-v1656-product-card.asu-home-non-variable,
.als-v1653-products .als-v1656-product-card:not(.is-variable-product) {
  display: none !important;
}

/* 1) Visit service options keep the theme card language but fit longer labels. */
[data-als-visit-form] .als-v163-contact-methods.asu-service-options {
  gap: 10px;
}

[data-als-visit-form] .als-v163-contact-methods.asu-service-options label > span {
  min-height: 80px;
  padding-inline: 12px;
  text-align: center;
}

[data-als-visit-form] .als-v163-contact-methods.asu-service-options b {
  line-height: 1.5;
}

[data-als-visit-form] .asu-service-icon {
  font-size: 24px;
  line-height: 1;
}

/* 3) Legal consent is informational, not a checkbox interaction. */
.asu-policy-checkbox {
  display: none !important;
}

.asu-policy-note {
  display: block !important;
  width: 100%;
  margin: 8px 0;
  padding: 11px 13px;
  border: 1px solid rgba(0, 103, 66, .14);
  border-radius: 10px;
  background: rgba(0, 103, 66, .035);
  font-size: 13px;
  line-height: 1.9;
  color: #58615d;
}

.asu-policy-note span {
  display: inline !important;
}

.asu-policy-note a {
  color: #006742;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.asu-policy-note a:hover,
.asu-policy-note a:focus-visible {
  color: #004e32;
}

.asu-policy-error-hidden {
  display: none !important;
}

/* 4) Offers archive/landing: exactly one row with at most three cards. */
.als-v1643-offer-block .als-v1643-product-grid.asu-three-product-row {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch;
}

.als-v1643-offer-block .asu-offer-card-hidden,
.als-v1643-offer-block .als-v1643-product-grid > .als-v1643-product-card:nth-child(n+4) {
  display: none !important;
}

.asu-offer-more-wrap {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

/* Same visual language as the native offer/card actions. */
.asu-offer-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 10px 24px;
  border: 1px solid #006742;
  border-radius: 10px;
  background: #006742;
  color: #fff !important;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.4;
  text-decoration: none !important;
  box-shadow: none;
  transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

.asu-offer-more:hover,
.asu-offer-more:focus-visible {
  border-color: #005536;
  background: #005536;
  color: #fff !important;
  transform: translateY(-1px);
}

/* 5) Custom-rug CTA sits immediately before the existing Hand Made CTA. */
.als-v1698-handmade-offer .asu-rug-design-cta {
  margin-inline-end: 10px;
  margin-bottom: 10px;
  background: #c88a00;
  border-color: #c88a00;
  color: #fff;
}

.als-v1698-handmade-offer .asu-rug-design-cta:hover,
.als-v1698-handmade-offer .asu-rug-design-cta:focus-visible {
  filter: brightness(.95);
}

/* 6) Product-category hierarchy: center the first subcategory cards naturally.
   2, 3 or 4 cards stay balanced without writing or reordering term data. */
.als-v169-category .als-v1674-subcategories__grid {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 16px;
}

.als-v169-category .als-v1674-subcategories__grid > .als-v1674-subcategory-card {
  flex: 1 1 270px;
  width: auto;
  min-width: 250px;
  max-width: 360px;
}

/* Hide only the duplicated "collections/types" presentation block requested by
   the user. The actual WooCommerce product catalogue and subcategories remain. */
.als-v169-category .als-v169-category-types {
  display: none !important;
}

/* 7) Active items inside dropdowns use a soft highlight, never the long
   current-page underline intended for top-level navigation items. */
.als-v16-main-nav__list .sub-menu .current-menu-item > a::after,
.als-v16-main-nav__list .sub-menu .current_page_item > a::after,
.als-v1639-knowledge-submenu .current-menu-item > a::after,
.als-v1639-knowledge-submenu .current_page_item > a::after {
  display: none !important;
  content: none !important;
}

.als-v16-main-nav__list .sub-menu .current-menu-item > a,
.als-v16-main-nav__list .sub-menu .current_page_item > a,
.als-v1639-knowledge-submenu .current-menu-item > a,
.als-v1639-knowledge-submenu .current_page_item > a {
  border: 0 !important;
  border-radius: 10px !important;
  background: rgba(0, 103, 66, .07) !important;
  box-shadow: none !important;
  color: #006742 !important;
  font-weight: 750 !important;
  text-decoration: none !important;
}

/* 8) Single-offer order button uses full action width. */
.als-v1639-offer-product-actions .asu-offer-order-now {
  width: 100%;
  justify-content: center;
  text-align: center;
}

@media (max-width: 900px) {
  .als-v1643-offer-block .als-v1643-product-grid.asu-three-product-row {
    display: grid !important;
    grid-template-columns: none !important;
    grid-auto-flow: column;
    grid-auto-columns: minmax(270px, 82vw);
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x proximity;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 8px;
  }

  .als-v1643-offer-block .als-v1643-product-grid.asu-three-product-row > .als-v1643-product-card:not(.asu-offer-card-hidden) {
    scroll-snap-align: start;
  }

  .als-v1698-handmade-offer .asu-rug-design-cta {
    margin-inline-end: 0;
    margin-bottom: 10px;
  }
}

@media (max-width: 680px) {
  .als-v169-category .als-v1674-subcategories__grid > .als-v1674-subcategory-card {
    flex-basis: 100%;
    width: 100%;
    min-width: 0;
    max-width: none;
  }
}

@media (max-width: 640px) {
  [data-als-visit-form] .als-v163-contact-methods.asu-service-options {
    grid-template-columns: 1fr !important;
  }

  [data-als-visit-form] .als-v163-contact-methods.asu-service-options label > span {
    min-height: 62px;
  }

  .asu-policy-note {
    font-size: 12.5px;
    padding: 10px 11px;
  }
}

/* 9) /shop category cards — image fills the entire card and child terms sit
   as compact centred pills over the photo. No taxonomy/content values are changed. */
.als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay {
  position: relative !important;
  display: block !important;
  min-width: 0;
  background: #123f2c !important;
  overflow: hidden !important;
}

.als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay > .als-v1674-category-root__main {
  height: 360px !important;
  min-height: 360px !important;
  border-radius: inherit !important;
}

.als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay > .als-v1674-category-root__main::before {
  background: linear-gradient(180deg, rgba(3,29,19,.03) 20%, rgba(3,29,19,.23) 51%, rgba(3,29,19,.92) 100%) !important;
}

.als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay .als-v1674-category-root__copy {
  padding: 28px 26px 30px !important;
}

.als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay.asu-has-child-terms .als-v1674-category-root__copy {
  padding-bottom: calc(var(--asu-child-terms-height, 44px) + 42px) !important;
}

.als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay > .als-v1674-category-children {
  position: absolute !important;
  z-index: 5 !important;
  inset-inline: 18px !important;
  bottom: 18px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-content: center !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}

.als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay > .als-v1674-category-children a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 5px 10px !important;
  border: 1px solid rgba(255,255,255,.58) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.91) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.12) !important;
  color: #174c35 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-align: center !important;
  text-decoration: none !important;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease !important;
}

.als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay > .als-v1674-category-children a small {
  margin-inline-start: 3px;
  color: currentColor !important;
  font-size: 9px !important;
  opacity: .68;
}

.als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay > .als-v1674-category-children a:hover,
.als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay > .als-v1674-category-children a:focus-visible {
  border-color: rgba(255,255,255,.9) !important;
  background: #006742 !important;
  color: #fff !important;
  transform: translateY(-1px);
}

@media (max-width: 900px) {
  .als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay > .als-v1674-category-root__main {
    height: 330px !important;
    min-height: 330px !important;
  }

  .als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay > .als-v1674-category-children {
    inset-inline: 14px !important;
    bottom: 14px !important;
    gap: 5px !important;
  }

  .als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay > .als-v1674-category-children a {
    min-height: 27px !important;
    padding: 5px 9px !important;
    font-size: 10.5px !important;
  }

  .als-v169-products .als-v169-collections .als-v1674-category-root.asu-shop-category-overlay.asu-has-child-terms .als-v1674-category-root__copy {
    padding-bottom: calc(var(--asu-child-terms-height, 42px) + 34px) !important;
  }
}
