/* Aswaqi redesign — asw.marslia.com
   Full-bleed hero, Tajawal, modern header/footer/product */

:root {
  --asw-teal: #0d9488;
  --asw-teal-dark: #0f766e;
  --asw-teal-soft: #14b8a6;
  --asw-ink: #0f172a;
  --asw-muted: #64748b;
  --asw-surface: #f8fafc;
  --asw-card: #ffffff;
  --asw-line: rgba(15, 23, 42, 0.08);
  --asw-radius: 18px;
  --asw-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  --asw-font: "Tajawal", "Tahoma", sans-serif;
}

/* ========== Tajawal site-wide ========== */
html,
body,
button,
input,
select,
textarea,
.wd-nav,
.wd-entities-title,
.product-title,
.price,
.woocommerce,
.elementor-widget-heading .elementor-heading-title,
.whb-header,
.footer-container,
.hero-slider-section,
.asw-footer {
  font-family: var(--asw-font) !important;
}

body {
  color: #1e293b;
  background: #fff;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6,
.wd-entities-title,
.title,
.product_title {
  font-family: var(--asw-font) !important;
  font-weight: 800;
  letter-spacing: 0;
}

/* ========== Full-width hero (break out of .container) ========== */
html.home,
body.home {
  overflow-x: clip;
}

body.home.page .wd-page-content,
body.home .wd-page-content.main-page-wrapper {
  background: #fff !important;
  background-color: #fff !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  overflow-x: clip;
}

body.home #main-content,
body.home .wd-content-area.site-content,
body.home article.entry-content,
body.home .elementor-17 {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Unlock Woodmart container so hero can span the viewport */
body.home #main-content.content-layout-wrapper.container {
  max-width: none !important;
  width: 100% !important;
  padding-inline: 0 !important;
  padding-top: 0 !important;
}

body.home .elementor-17 {
  max-width: none !important;
  width: 100% !important;
}

/* Hero: true full-bleed edge-to-edge */
body.home .elementor-17 > .elementor-element.elementor-element-b8b67ec {
  --margin-top: 0 !important;
  --margin-bottom: 0 !important;
  --padding-top: 0 !important;
  --padding-bottom: 0 !important;
  --width: 100% !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  left: 0 !important;
  right: 0 !important;
  inset-inline: 0 !important;
  position: relative;
  z-index: 2;
}

body.home .elementor-17 > .elementor-element.elementor-element-b8b67ec > .e-con-inner,
body.home .elementor-element-6ca34f5,
body.home .elementor-element-6ca34f5 .elementor-widget-container,
body.home .elementor-element-6ca34f5 .elementor-shortcode,
body.home .elementor-element-6ca34f5 .hero-slider-section {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Keep other homepage sections inside site width */
body.home .elementor-17 > .elementor-element.e-con.e-parent:not(.elementor-element-b8b67ec) {
  max-width: var(--wd-container-w, 1660px) !important;
  width: 100% !important;
  margin-inline: auto !important;
  padding-inline: 15px;
  box-sizing: border-box;
}

/* Kill residual banner offset when banner is closed */
body.header-banner-enabled:not(.header-banner-display) .wd-page-wrapper {
  --wd-header-banner-mt: 0px;
  margin-top: 0 !important;
}

/* ========== Full-bleed hero ========== */
.hero-slider-section {
  width: 100% !important;
  max-width: 100% !important;
  border-radius: 0 !important;
  margin-top: 0 !important;
  --hero-height: 560px;
  background:
    radial-gradient(circle at 12% 20%, rgba(45, 212, 191, 0.18) 0%, transparent 28%),
    radial-gradient(circle at 88% 30%, rgba(245, 158, 11, 0.12) 0%, transparent 26%),
    linear-gradient(135deg, #0b1220 0%, #132032 48%, #0f172a 100%) !important;
}

.hero-slider-section .hero-slide-bg {
  background-image: none !important;
  background:
    radial-gradient(circle at 70% 40%, rgba(13, 148, 136, 0.22) 0%, transparent 42%),
    linear-gradient(135deg, #0b1220 0%, #152338 100%) !important;
}

.hero-slider-section .hero-slide-overlay {
  opacity: 0.15 !important;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.35) 0%, transparent 55%) !important;
}

.hero-slider-section .hero-slide-machine,
.hero-slider-section .hero-slide-visual,
.hero-slider-section .hero-slide-visual > *,
.hero-slider-section .hero-slide-machine img {
  border-radius: 0 !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

.hero-slider-section .hero-slide-machine {
  filter: drop-shadow(0 24px 40px rgba(0, 0, 0, 0.35)) !important;
  max-height: calc(var(--hero-height) * 0.82) !important;
  max-width: min(520px, 42vw) !important;
}

.hero-slider-section .hero-slide-visual.hero-img-anchored .hero-slide-machine,
.hero-slider-section .hero-slide-visual.hero-img-floating .hero-slide-machine {
  border-radius: 0 !important;
  clip-path: none !important;
}

.hero-slider-section .hero-visual-glow,
.hero-slider-section .hero-visual-ring,
.hero-slider-section .hero-slide-media {
  display: none !important;
}

.hero-slider-section .hero-slide-title {
  font-size: clamp(28px, 4.2vw, 52px) !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
}

.hero-slider-section .hero-slide-title .accent {
  color: var(--asw-teal-soft) !important;
}

.hero-slider-section .hero-btn {
  background: linear-gradient(135deg, var(--asw-teal) 0%, var(--asw-teal-dark) 100%) !important;
  border: 0 !important;
  box-shadow: 0 12px 28px rgba(13, 148, 136, 0.35) !important;
  font-weight: 700 !important;
}

.hero-slider-section .hero-btn:hover {
  filter: brightness(1.06);
  transform: translateY(-1px);
}

.hero-slider-section .hero-slider .slick-dots li.slick-active button {
  background: #f59e0b !important;
}

@media (max-width: 767px) {
  .hero-slider-section {
    --hero-height: 640px;
  }
  .hero-slider-section .hero-slide-machine {
    max-width: min(280px, 70vw) !important;
  }
}

/* ========== Modern header ========== */
.header-banner {
  background: linear-gradient(90deg, #0f766e 0%, #0d9488 50%, #f59e0b 100%) !important;
  border: 0 !important;
  min-height: 36px;
}

.header-banner,
.header-banner a,
.header-banner-container {
  color: #fff !important;
  font-weight: 600;
  font-size: 13px;
}

.whb-header {
  box-shadow: 0 8px 30px rgba(15, 23, 42, 0.08);
}

.whb-main-header,
.whb-general-header,
.whb-general-header-inner {
  background: #0f172a !important;
}

.whb-header .wd-header-search-form input[type="text"],
.whb-header .searchform input[type="text"] {
  border-radius: 999px !important;
  border: 0 !important;
  min-height: 46px;
  padding-inline: 18px !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.whb-header .wd-search-form {
  border-radius: 999px;
  overflow: hidden;
  background: #fff;
}

.whb-header .site-logo img {
  max-height: 46px;
  width: auto;
}

.whb-header .wd-tools-element > a,
.whb-header .wd-header-my-account > a,
.whb-header .wd-header-cart > a,
.whb-header .info-box-title,
.whb-header .info-box-subtitle,
.whb-header .wd-header-nav .item-link {
  color: #f8fafc !important;
}

.whb-header-bottom,
.whb-header-bottom-inner {
  background: #111827 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.whb-header-bottom .wd-nav > li > a {
  font-weight: 700 !important;
  font-size: 14px !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

.whb-header-bottom .wd-nav > li > a:hover,
.whb-header-bottom .wd-nav > li.current-menu-item > a {
  color: var(--asw-teal-soft) !important;
}

.whb-sticky-header.whb-sticked .whb-general-header,
.whb-clone .whb-general-header {
  background: rgba(15, 23, 42, 0.96) !important;
  backdrop-filter: blur(12px);
}

/* ========== Categories — fixed image size ========== */
.wd-cats .category-grid-item,
.wd-cats-element .category-grid-item,
.product-category.wd-cat {
  height: 100%;
}

.wd-cats .category-grid-item .wd-cat-inner,
.wd-cats .category-grid-item .wrapp-category {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
}

.wd-cats .category-grid-item .category-image-wrapp,
.wd-cats .category-grid-item .wd-cat-thumb,
.product-category.wd-cat .wd-cat-thumb {
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  width: 100% !important;
  border-radius: 20px 20px 0 0;
  overflow: hidden;
  background: #f1f5f9;
  position: relative;
}

.wd-cats .category-grid-item .category-image,
.wd-cats .category-grid-item .wd-cat-image,
.product-category.wd-cat .wd-cat-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  inset: 0;
}

.wd-cats .category-grid-item .category-image img,
.wd-cats .category-grid-item .wd-cat-image img,
.wd-cats .category-grid-item .wp-post-image,
.product-category.wd-cat .wd-cat-thumb img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  transition: transform 0.35s ease;
}

.wd-cats .category-grid-item:hover {
  transform: translateY(-4px);
}

.wd-cats .category-grid-item:hover img {
  transform: scale(1.06);
}

.wd-cats .wd-entities-title,
.wd-cats .category-grid-item .wd-entities-title {
  font-size: 13px !important;
  font-weight: 700 !important;
  margin: 10px 12px 14px !important;
  text-align: center;
  min-height: 2.4em;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ========== Modern product page + smaller gallery ========== */
.single-product .asw-hide-product-side,
.single-product .elementor-element-d6bbfec {
  display: none !important;
  width: 0 !important;
  max-width: 0 !important;
  flex: 0 0 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.single-product .elementor-844 .elementor-element-a9f732f {
  --gap: 24px !important;
  align-items: flex-start !important;
}

.single-product .elementor-844 .elementor-element-1fa2b6c {
  width: 100% !important;
  max-width: 100% !important;
}

.single-product .elementor-844 .elementor-element-4a0e650 {
  width: 40% !important;
  max-width: 420px !important;
  flex: 0 0 40% !important;
}

.single-product .elementor-844 .elementor-element-fa91589 {
  width: 60% !important;
  max-width: none !important;
  flex: 1 1 55% !important;
}

@media (max-width: 1024px) {
  .single-product .elementor-844 .elementor-element-4a0e650,
  .single-product .elementor-844 .elementor-element-fa91589 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }
}

.single-product .woocommerce-product-gallery,
.single-product .wd-single-gallery .woocommerce-product-gallery {
  background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
  border-radius: 20px;
  padding: 12px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  border: 1px solid var(--asw-line);
  max-width: 420px;
  width: 100%;
  margin-inline: auto 0;
}

.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery .wd-carousel {
  max-height: 420px;
}

.single-product .woocommerce-product-gallery__image img,
.single-product .wd-carousel-item img,
.single-product .woocommerce-product-gallery__wrapper img {
  border-radius: 14px;
  background: transparent !important;
  max-height: 380px !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 auto;
  object-fit: contain !important;
}

.single-product .woocommerce-product-gallery .wd-carousel-item {
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.single-product .summary.entry-summary,
.single-product .elementor-844 .elementor-element-fa91589 {
  background: #fff;
}

.single-product .elementor-844 .elementor-element-fa91589 {
  border: 1px solid var(--asw-line);
  border-radius: 24px;
  padding: 22px 24px !important;
  box-shadow: var(--asw-shadow);
}

.single-product .product_title,
.single-product .elementor-widget-wd_single_product_title .product_title {
  font-size: clamp(22px, 2.2vw, 30px) !important;
  line-height: 1.35 !important;
  color: var(--asw-ink) !important;
  margin-bottom: 10px !important;
}

.single-product .price {
  font-size: 26px !important;
  font-weight: 800 !important;
  color: var(--asw-teal-dark) !important;
}

.single-product .price del {
  color: #94a3b8 !important;
  font-size: 0.65em;
}

.single-product .woocommerce-product-details__short-description {
  color: var(--asw-muted);
  font-size: 15px;
  line-height: 1.85;
  border-top: 1px dashed var(--asw-line);
  border-bottom: 1px dashed var(--asw-line);
  padding: 14px 0;
  margin: 16px 0;
}

.single-product form.cart {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 18px !important;
}

.single-product form.cart .quantity {
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid var(--asw-line);
  background: #f8fafc;
}

.single-product form.cart .single_add_to_cart_button,
.single-product .single_add_to_cart_button {
  background: linear-gradient(135deg, var(--asw-teal) 0%, var(--asw-teal-dark) 100%) !important;
  border: 0 !important;
  border-radius: 14px !important;
  min-height: 52px;
  padding: 0 28px !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  box-shadow: 0 14px 30px rgba(13, 148, 136, 0.28) !important;
  transition: transform 0.2s ease, filter 0.2s ease;
}

.single-product form.cart .single_add_to_cart_button:hover {
  filter: brightness(1.05);
  transform: translateY(-1px);
}

.single-product .wd-buy-now-btn,
.single-product .wd-action-btn a {
  border-radius: 12px !important;
}

.single-product .woocommerce-tabs {
  margin-top: 40px;
  background: #fff;
  border: 1px solid var(--asw-line);
  border-radius: 24px;
  padding: 8px 24px 24px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}

.single-product .woocommerce-tabs ul.tabs {
  border: 0 !important;
  padding: 12px 0 0 !important;
  gap: 8px;
}

.single-product .woocommerce-tabs ul.tabs li {
  border: 0 !important;
  background: transparent !important;
  margin: 0 0 0 8px !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
  border-radius: 999px !important;
  padding: 10px 18px !important;
  font-weight: 700 !important;
  background: #f1f5f9 !important;
  color: #334155 !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
  background: var(--asw-ink) !important;
  color: #fff !important;
}

.single-product .related.products > h2,
.single-product .upsells.products > h2 {
  font-size: 26px !important;
  margin-bottom: 22px !important;
}

.single-product .wd-product,
.single-product .product-grid-item {
  border-radius: 18px;
  overflow: hidden;
}

.single-product .summary.entry-summary::after {
  content: "شحن مجاني داخل الموقع  •  دفع آمن  •  دعم سريع";
  display: block;
  margin-top: 18px;
  padding: 12px 14px;
  border-radius: 14px;
  background: linear-gradient(90deg, rgba(13, 148, 136, 0.08), rgba(245, 158, 11, 0.08));
  color: #334155;
  font-size: 13px;
  font-weight: 700;
  text-align: center;
}

/* Product page: remove top white gap under header */
.single-product .wd-page-content,
.single-product #main-content,
.single-product .site-content {
  padding-top: 12px !important;
}

.single-product .elementor-844 > .elementor-element:first-child {
  margin-top: 0 !important;
  --margin-top: 0 !important;
}

/* ========== Modern footer (rebuilt) — high contrast ========== */
.footer-container,
.footer-container.color-scheme-dark,
.footer-sidebar,
footer.footer-container,
.wd-footer {
  background: #070b14 !important;
  color: #f1f5f9 !important;
}

.footer-container.color-scheme-dark,
.footer-container.color-scheme-dark .wd-entry-content,
.footer-container.color-scheme-dark .main-footer {
  color: #f1f5f9 !important;
  --wd-text-color: #f1f5f9;
  --wd-title-color: #ffffff;
  --wd-link-color: #f8fafc;
  --wd-link-color-hover: #5eead4;
}

.footer-container .main-footer,
.footer-container .container.main-footer {
  max-width: min(1200px, 100%) !important;
  width: 100% !important;
  margin-inline: auto !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  padding-inline: 20px !important;
  box-sizing: border-box;
}

.asw-footer {
  display: block !important;
  width: 100% !important;
  padding: 48px 0 28px;
  color: #f1f5f9 !important;
}

.asw-footer__grid {
  display: grid !important;
  grid-template-columns: 1.4fr repeat(3, 1fr) !important;
  gap: 36px 28px !important;
  align-items: start !important;
  width: 100% !important;
}

.asw-footer__col {
  display: block !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
}

.asw-footer__brand {
  font-size: 28px;
  font-weight: 800;
  color: #ffffff !important;
  margin-bottom: 12px;
}

.asw-footer__about {
  margin: 0 0 16px;
  line-height: 1.8;
  color: #e2e8f0 !important;
  font-size: 14px;
  max-width: 280px;
}

.asw-footer__phone {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  color: #5eead4 !important;
  font-weight: 800;
  font-size: 18px;
  text-decoration: none !important;
}

.asw-footer__title {
  color: #ffffff !important;
  font-weight: 800 !important;
  font-size: 16px !important;
  margin: 0 0 16px !important;
  position: relative;
  padding-bottom: 10px;
}

.asw-footer__title::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 42px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--asw-teal), #f59e0b);
}

.asw-footer__links {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  gap: 10px !important;
}

.asw-footer__links li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.asw-footer__links a,
.footer-container .asw-footer__links a,
.footer-container.color-scheme-dark .asw-footer__links a {
  color: #f8fafc !important;
  text-decoration: none !important;
  font-size: 14px;
  font-weight: 500;
  opacity: 1 !important;
}

.asw-footer__links a:hover {
  color: #5eead4 !important;
}

.asw-footer__payments {
  margin-top: 36px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
}

.asw-footer__pay-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #ffffff !important;
  font-weight: 700;
  font-size: 14px;
}

.asw-footer__pay-label img {
  width: 18px;
  height: 18px;
  filter: brightness(0) invert(1);
}

.asw-footer__pay-img {
  max-width: min(420px, 100%);
  height: auto;
  background: #fff;
  border-radius: 10px;
  padding: 8px 12px;
}

@media (max-width: 1024px) {
  .asw-footer__grid {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 640px) {
  .asw-footer__grid {
    grid-template-columns: 1fr !important;
  }
  .asw-footer__payments {
    flex-direction: column;
    align-items: flex-start;
  }
}

.copyrights-wrapper,
.footer-copyrights,
.wd-footer-bottom {
  background: #04060c !important;
  border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
  color: #e2e8f0 !important;
}

.copyrights-wrapper,
.copyrights-wrapper p,
.copyrights-wrapper span,
.copyrights-wrapper strong {
  color: #e2e8f0 !important;
}

.copyrights-wrapper a {
  color: #5eead4 !important;
  font-weight: 700;
}

.footer-container a,
.footer-sidebar a {
  color: #f8fafc !important;
}

.footer-container a:hover,
.footer-sidebar a:hover {
  color: #5eead4 !important;
}

/* ========== Homepage: منتجات اسواقي + الاعلي مبيعا ========== */
body.home .elementor-element-ce0fc26,
body.home .elementor-element-8c33322 {
  margin-top: 28px !important;
  margin-bottom: 12px !important;
}

body.home .wd-products-tabs,
body.home .wd-products-element.with-title {
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 48%, #ffffff 100%);
  border: 1px solid rgba(15, 23, 42, 0.06);
  border-radius: 28px;
  padding: 28px 22px 22px;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
}

body.home .wd-products-tabs .wd-tabs-header,
body.home .wd-products-element.with-title .wd-el-title {
  margin-bottom: 22px !important;
}

body.home .wd-products-tabs .tabs-name.title,
body.home .wd-products-tabs .tabs-text,
body.home .wd-products-element.with-title .wd-el-title {
  font-family: var(--asw-font) !important;
  font-size: clamp(22px, 2.4vw, 30px) !important;
  font-weight: 800 !important;
  color: var(--asw-ink) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

body.home .wd-products-tabs .tabs-name.title {
  position: relative;
  display: inline-block;
  padding-bottom: 10px;
}

body.home .wd-products-tabs .tabs-name.title::after,
body.home .wd-products-element.with-title .wd-el-title::after {
  content: "";
  display: block;
  width: 56px;
  height: 4px;
  margin: 10px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--asw-teal), #f59e0b);
}

body.home .wd-products-tabs .wd-nav-tabs {
  display: inline-flex !important;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  background: #eef2f7;
  border-radius: 999px;
  padding: 6px !important;
  margin-top: 14px;
}

body.home .wd-products-tabs .wd-nav-tabs > li > a {
  border-radius: 999px !important;
  padding: 10px 18px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  color: #475569 !important;
  background: transparent !important;
  border: 0 !important;
  transition: background 0.2s ease, color 0.2s ease;
}

body.home .wd-products-tabs .wd-nav-tabs > li.wd-active > a,
body.home .wd-products-tabs .wd-nav-tabs > li.active > a,
body.home .wd-products-tabs .wd-nav-tabs > li:hover > a {
  background: linear-gradient(135deg, var(--asw-teal) 0%, var(--asw-teal-dark) 100%) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(13, 148, 136, 0.28);
}

body.home .wd-products-tabs .products,
body.home .wd-products-element .products {
  margin-top: 8px;
}

body.home .wd-products .product-wrapper,
body.home .wd-products-element .product-wrapper {
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.06);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}

body.home .wd-products .product-element-bottom,
body.home .wd-products-element .product-element-bottom {
  padding: 12px 14px 16px !important;
}

body.home .wd-products .wd-entities-title,
body.home .wd-products-element .wd-entities-title,
body.home .wd-products .product-title a {
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  color: var(--asw-ink) !important;
}

body.home .wd-products .price,
body.home .wd-products-element .price {
  color: var(--asw-teal-dark) !important;
  font-weight: 800 !important;
  font-size: 15px !important;
}

/* ========== Unified product card images (site-wide) ========== */
/* Woodmart structure: <a.product-image-link> has img + overlay .wd-product-grid-slider.wd-fill
   Do NOT paint backgrounds on .wd-product-grid-slide (they sit on top of the img). */
:root {
  --asw-product-img-ratio: 1 / 1;
}

.wd-product .product-element-top,
.products .product-element-top,
.wd-carousel .product-element-top,
ul.products li.product .product-element-top {
  position: relative !important;
  aspect-ratio: var(--asw-product-img-ratio) !important;
  overflow: hidden !important;
  background: #f8fafc;
  border-radius: 16px 16px 0 0;
}

.wd-product .product-image-link,
.products .product-image-link {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  inset: auto !important;
}

.wd-product .product-image-link > img,
.products .product-image-link > img,
.wd-product .product-image-link > picture,
.products .product-image-link > picture,
.wd-product .product-image-link > picture > img,
.products .product-image-link > picture > img {
  position: relative !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
  margin: 0 !important;
  background: transparent !important;
}

/* Keep Woodmart hover gallery overlay transparent so the main img stays visible */
.wd-product .wd-product-grid-slider,
.products .wd-product-grid-slider,
.wd-product .wd-product-grid-slider.wd-fill,
.products .wd-product-grid-slider.wd-fill {
  background: transparent !important;
  z-index: 1 !important;
}

.wd-product .wd-product-grid-slide,
.products .wd-product-grid-slide {
  background: transparent !important;
  background-image: none !important;
}

.products .product-wrapper,
.wd-product .product-wrapper {
  border-radius: 16px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  overflow: hidden;
  background: #fff;
}

.products .product:hover .product-wrapper,
.wd-product:hover .product-wrapper {
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.1);
}

/* ========== General polish ========== */
.wd-page-content .wd-button,
.button,
.btn,
.woocommerce a.button,
.woocommerce button.button {
  font-family: var(--asw-font) !important;
}

.cookies-buttons .cookies-accept-btn,
.wd-cookies-popup .btn {
  background: var(--asw-teal) !important;
  border-color: var(--asw-teal) !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
}
