@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: "woodmart-font";
	src: url("//www.redwaybattery.com/wp-content/themes/woodmart/fonts/woodmart-font-1-400.woff2?v=7.5.0") format("woff2");
}

:root {
	--wd-text-font: "Roboto", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: rgb(99,99,99);
	--wd-text-font-size: 16px;
	--wd-title-font: "Poppins", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 600;
	--wd-title-color: #1490d7;
	--wd-entities-title-font: "Poppins", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 500;
	--wd-entities-title-color: #333333;
	--wd-entities-title-color-hover: rgb(51 51 51 / 65%);
	--wd-alternative-font: "Lato", Arial, Helvetica, sans-serif;
	--wd-widget-title-font: "Poppins", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 400;
	--wd-widget-title-transform: uppercase;
	--wd-widget-title-color: #333;
	--wd-widget-title-font-size: 14px;
	--wd-header-el-font: "Poppins", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 600;
	--wd-header-el-transform: none;
	--wd-header-el-font-size: 13px;
	--wd-primary-color: #1490d7;
	--wd-alternative-color: #017bbd;
	--wd-link-color: #1490d7;
	--wd-link-color-hover: #017bbd;
	--btn-default-bgcolor: #f7f7f7;
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-bgcolor: rgb(255,94,43);
	--btn-accented-bgcolor-hover: rgb(236,87,39);
	--wd-form-brd-width: 1px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
}
.woodmart-woocommerce-layered-nav .wd-scroll-content {
	max-height: 223px;
}
.wd-popup.wd-age-verify {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: url(https://www.redwaybattery.com/wp-content/uploads/2021/10/tools-popup.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	--wd-popup-width: 800px;
}
.page-title-default {
	background-color: rgb(22,27,137);
	background-image: url(https://www.redwaybattery.com/wp-content/uploads/2021/10/tools-page-title.jpg);
	background-size: cover;
	background-position: center center;
}
.footer-container {
	background-color: #3a3a3a;
	background-image: none;
}
.page .main-page-wrapper {
	background-color: rgb(248,248,248);
	background-image: none;
}
.wd-popup.popup-quick-view {
	--wd-popup-width: 920px;
}
:root{
--wd-container-w: 1300px;
--wd-form-brd-radius: 0px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 0px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-default-box-shadow-active: none;
--btn-default-bottom: 0px;
--btn-accented-bottom-active: -1px;
--btn-accented-brd-radius: 0px;
--btn-accented-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, .15);
--btn-accented-box-shadow-hover: inset 0 -2px 0 rgba(0, 0, 0, .15);
--wd-brd-radius: 0px;
}

@media (min-width: 1317px) {
.platform-Windows .wd-section-stretch > .elementor-container {
margin-left: auto;
margin-right: auto;
}
}

@media (min-width: 1300px) {
html:not(.platform-Windows) .wd-section-stretch > .elementor-container {
margin-left: auto;
margin-right: auto;
}
}


/* ==== KDM-RESTYLE START (revert: delete this whole block in WoodMart → Theme settings → Custom CSS) ==== */
:root {
  --kdm-blue: #017bbd;
  --kdm-bright: #1490d7;
  --kdm-deep: #092c47;
  --kdm-wash: #f4f6f9;
  --kdm-footer: #3a3a3a;
}
body {
  --wd-primary-color: #1490d7;
  --wd-alternative-color: #017bbd;
  --color-primary: #1490d7;
}
a { color: var(--kdm-bright); }
a:hover { color: var(--kdm-blue); }

.btn, button.button, .button, .wd-button, .btn-color-primary,
.single_add_to_cart_button, .checkout-button, a.checkout-button,
.woocommerce a.button, .woocommerce button.button {
  background-color: var(--kdm-bright) !important;
  border-color: var(--kdm-bright) !important;
  color: #fff !important;
  border-radius: 3px !important;
}
.btn:hover, .button:hover, .wd-button:hover, .btn-color-primary:hover,
.single_add_to_cart_button:hover, .woocommerce a.button:hover {
  background-color: var(--kdm-blue) !important;
  border-color: var(--kdm-blue) !important;
}

.elementor-button,
.wd-button.btn-style-default,
.wd-header-btn a,
.banner-inner .btn {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  padding: .85em 1.75em !important;
  z-index: 1;
}
.elementor-button::before,
.wd-button.btn-style-default::before,
.wd-header-btn a::before,
.banner-inner .btn::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--kdm-blue) !important;
  transform: skewX(-15deg) !important;
  z-index: -1 !important;
  transition: background-color .2s ease !important;
}
.elementor-button:hover::before,
.wd-button.btn-style-default:hover::before,
.wd-header-btn a:hover::before {
  background: #333 !important;
}

.whb-top-bar {
  background: var(--kdm-wash) !important;
  font-size: 12px !important;
  color: #555 !important;
}
.whb-main-header {
  box-shadow: 0 1px 0 #e8e8e8, 0 2px 8px rgba(0,0,0,.04) !important;
}

.wd-slide .slide-title,
.woodmart-slider .slide-title {
  font-weight: 700 !important;
  letter-spacing: .02em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  text-shadow: 0 2px 18px rgba(9,44,71,.45) !important;
}

.product-grid-item,
.wd-product,
.product.wd-product {
  background: #fff !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.08) !important;
  border-bottom: 3px solid var(--kdm-blue) !important;
  border-radius: 0 !important;
  overflow: hidden;
}
.product-grid-item:hover,
.wd-product:hover {
  box-shadow: 0 6px 20px rgba(0,0,0,.12) !important;
}
.product-grid-item .product-element-top,
.wd-product .product-element-top {
  background: var(--kdm-wash) !important;
}
.product-grid-item .wd-entities-title a,
.wd-product .wd-entities-title a {
  color: var(--kdm-deep) !important;
  font-weight: 700 !important;
}
.product-grid-item .price,
.wd-product .price {
  color: var(--kdm-blue) !important;
}

.page-title,
.wd-page-title {
  background: linear-gradient(105deg, rgba(9,44,71,.92), rgba(1,123,189,.55)) !important;
}
.page-title .title,
.wd-page-title .entry-title,
.page-title .breadcrumbs,
.page-title .breadcrumbs a {
  color: #fff !important;
}

.footer-container,
.wd-footer,
.footer-widget-area {
  background-color: var(--kdm-footer) !important;
  color: rgba(255,255,255,.8) !important;
}
.footer-container a,
.wd-footer a { color: rgba(255,255,255,.85) !important; }
.footer-container a:hover,
.wd-footer a:hover { color: var(--kdm-bright) !important; }
.footer-copyrights-wrapper,
.copyrights-wrapper {
  background: #2e2e2e !important;
  color: rgba(255,255,255,.6) !important;
}

.related-products,
.woodmart-products-tabs {
  background: var(--kdm-wash);
  padding-top: 40px;
  padding-bottom: 40px;
}
/* ==== KDM-RESTYLE END ==== */

/* ==== KDM-CARD-SYSTEM START (revert: delete this block in WoodMart Custom CSS) ==== */
/* Product card skeleton: border + equal frame + locked text/CTA baseline
   Route B — no image replacement; scene photos kept, magazine-orderly cards */

.products .product-grid-item,
.products .wd-product,
.wd-products .wd-product,
.wd-carousel-item .wd-product,
.wd-products-element .wd-product,
ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: #fff !important;
  border: 1px solid #e9e9e9 !important;
  border-bottom: 1px solid #e9e9e9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
  position: relative !important;
}

.products .product-grid-item:hover,
.products .wd-product:hover,
.wd-products .wd-product:hover,
ul.products li.product:hover {
  border-color: #d4d4d4 !important;
  box-shadow: 0 8px 24px rgba(9,44,71,.08) !important;
}

/* Hover theme underline at card bottom */
.products .product-grid-item::after,
.products .wd-product::after,
.wd-products .wd-product::after,
ul.products li.product::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 2px !important;
  background: #017bbd !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform .25s ease !important;
  z-index: 3 !important;
}
.products .product-grid-item:hover::after,
.products .wd-product:hover::after,
.wd-products .wd-product:hover::after,
ul.products li.product:hover::after {
  transform: scaleX(1) !important;
}

/* Fixed image frame — 1:1, contain, ~4% pad so scene art doesn't glue edge-to-edge */
.products .product-grid-item .product-element-top,
.products .wd-product .product-element-top,
.wd-products .wd-product .product-element-top,
ul.products li.product .product-element-top {
  aspect-ratio: 1 / 1 !important;
  background: #f7f7f7 !important;
  padding: 4% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  position: relative !important;
}

.products .product-grid-item .product-image-link,
.products .wd-product .product-image-link,
.wd-products .wd-product .product-image-link,
ul.products li.product .product-image-link,
.products .product-grid-item .wd-product-img,
.products .wd-product .wd-product-img {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

.products .product-grid-item .product-element-top img,
.products .wd-product .product-element-top img,
.wd-products .wd-product .product-element-top img,
ul.products li.product .product-element-top img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: scale(0.92) !important;
  transition: transform .35s ease !important;
}

.products .product-grid-item:hover .product-element-top img,
.products .wd-product:hover .product-element-top img,
.wd-products .wd-product:hover .product-element-top img,
ul.products li.product:hover .product-element-top img {
  transform: scale(0.98) !important;
}

/* Content column grows; CTA sticks to bottom baseline */
.products .product-grid-item .product-element-bottom,
.products .wd-product .product-element-bottom,
.wd-products .wd-product .product-element-bottom,
ul.products li.product .product-element-bottom,
.products .product-grid-item .wd-entities-wrapper,
.products .wd-product .wd-entities-wrapper {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 14px 14px 16px !important;
  text-align: center !important;
}

.products .product-grid-item .wd-entities-title,
.products .wd-product .wd-entities-title,
.wd-products .wd-product .wd-entities-title,
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product .wd-entities-title {
  min-height: 2.6em !important;
  max-height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  line-height: 1.3 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #092c47 !important;
  margin: 0 0 8px !important;
}

.products .product-grid-item .price,
.products .wd-product .price,
.wd-products .wd-product .price,
ul.products li.product .price {
  margin-top: auto !important;
  margin-bottom: 10px !important;
  color: #017bbd !important;
  font-weight: 600 !important;
}

.products .product-grid-item .wd-add-btn,
.products .wd-product .wd-add-btn,
.products .product-grid-item .button,
.products .wd-product .button,
.wd-products .wd-product .button,
ul.products li.product .button,
.products .product-grid-item .wd-more-desc,
.products .wd-product .wd-bottom-actions {
  margin-top: auto !important;
}

/* Grid gap slightly tighter / orderly */
.products.wd-products,
.wd-products[class*="columns"],
ul.products {
  gap: 24px !important;
  row-gap: 24px !important;
  column-gap: 24px !important;
}

@media (max-width: 768px) {
  .products .product-grid-item .wd-entities-title,
  .products .wd-product .wd-entities-title {
    font-size: 14px !important;
  }
}
/* ==== KDM-CARD-SYSTEM END ==== */

/* ==== KDM-HOME-VISUAL START (revert: delete this block) ==== */
/* 1) Kill abnormal smile/curve under homepage hero */
.home .wd-slider,
.home .woodmart-slider,
.home .rev-slider-wrapper,
.home .wd-slide,
.home .wd-carousel-container.slider-type-slider,
.home .elementor-top-section:first-child,
.home .main-page-wrapper > .elementor > .elementor-top-section:first-of-type,
.home .wd-page-content .elementor-section:first-child {
  border-radius: 0 !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}
.home .wd-slider::after,
.home .woodmart-slider::after,
.home .rev-slider-wrapper::after,
.home .elementor-top-section:first-child::after,
.home .wd-slide::after,
.home .wd-slider .slide-content::after,
.home svg.wd-slider-shape,
.home .wd-shape-divider,
.home .elementor-shape,
.home .elementor-shape-bottom,
.home .elementor-shape-top {
  display: none !important;
  height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* 2) Homepage hot product / category image cards — orderly frames */
.home .wd-product,
.home .product-grid-item,
.home ul.products li.product,
.home .wd-carousel-item .wd-product {
  border: 1px solid #e9e9e9 !important;
  background: #fff !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}
.home .wd-product .product-element-top,
.home .product-grid-item .product-element-top,
.home ul.products li.product .product-element-top {
  aspect-ratio: 1 / 1 !important;
  background: #f5f6f7 !important;
  padding: 6% !important;
  box-sizing: border-box !important;
}
.home .wd-product .product-element-top img,
.home .product-grid-item .product-element-top img,
.home ul.products li.product .product-element-top img {
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
}
.home .wd-product .wd-entities-title,
.home .product-grid-item .wd-entities-title {
  min-height: 2.6em !important;
  max-height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  text-align: center !important;
}
.home .wd-product .product-element-bottom,
.home .product-grid-item .product-element-bottom {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  text-align: center !important;
  padding: 12px 14px 16px !important;
}
.home .wd-product .price,
.home .product-grid-item .price,
.home .wd-product .button,
.home .product-grid-item .button,
.home .wd-product .wd-add-btn {
  margin-top: auto !important;
}

/* 3) Why-choose media: don't let play button dominate awkwardly */
.home .wd-video-poster-wrapper,
.home .wd-popup-video {
  position: relative;
}
.home .wd-video-poster-wrapper .play-button,
.home .wd-popup-video .button-play,
.home .wd-video-icon {
  width: 56px !important;
  height: 56px !important;
  opacity: .92 !important;
}

/* 4) Soften earlier aggressive product bottom accent from first KDM pass if conflicting */
.home .wd-product {
  border-bottom: 1px solid #e9e9e9 !important;
}
/* ==== KDM-HOME-VISUAL END ==== */

/* ==== KDM-HERO-CURVE-FIX START ==== */
/* Remove abnormal smile/ellipse under homepage hero */
.rb-kdm-hero::after {
  content: none !important;
  display: none !important;
  height: 0 !important;
  clip-path: none !important;
  background: transparent !important;
}
.rb-kdm-hero-inner {
  padding-bottom: 56px !important; /* was padded for the curve */
}
/* ==== KDM-HERO-CURVE-FIX END ==== */
@media (min-width: 1025px) {
	/* ==== KDM-RESTYLE START (revert: delete this whole block in WoodMart → Theme settings → Custom CSS) ==== */
:root {
  --kdm-blue: #017bbd;
  --kdm-bright: #1490d7;
  --kdm-deep: #092c47;
  --kdm-wash: #f4f6f9;
  --kdm-footer: #3a3a3a;
}
body {
  --wd-primary-color: #1490d7;
  --wd-alternative-color: #017bbd;
  --color-primary: #1490d7;
}
a { color: var(--kdm-bright); }
a:hover { color: var(--kdm-blue); }

.btn, button.button, .button, .wd-button, .btn-color-primary,
.single_add_to_cart_button, .checkout-button, a.checkout-button,
.woocommerce a.button, .woocommerce button.button {
  background-color: var(--kdm-bright) !important;
  border-color: var(--kdm-bright) !important;
  color: #fff !important;
  border-radius: 3px !important;
}
.btn:hover, .button:hover, .wd-button:hover, .btn-color-primary:hover,
.single_add_to_cart_button:hover, .woocommerce a.button:hover {
  background-color: var(--kdm-blue) !important;
  border-color: var(--kdm-blue) !important;
}

.elementor-button,
.wd-button.btn-style-default,
.wd-header-btn a,
.banner-inner .btn {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  padding: .85em 1.75em !important;
  z-index: 1;
}
.elementor-button::before,
.wd-button.btn-style-default::before,
.wd-header-btn a::before,
.banner-inner .btn::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--kdm-blue) !important;
  transform: skewX(-15deg) !important;
  z-index: -1 !important;
  transition: background-color .2s ease !important;
}
.elementor-button:hover::before,
.wd-button.btn-style-default:hover::before,
.wd-header-btn a:hover::before {
  background: #333 !important;
}

.whb-top-bar {
  background: var(--kdm-wash) !important;
  font-size: 12px !important;
  color: #555 !important;
}
.whb-main-header {
  box-shadow: 0 1px 0 #e8e8e8, 0 2px 8px rgba(0,0,0,.04) !important;
}

.wd-slide .slide-title,
.woodmart-slider .slide-title {
  font-weight: 700 !important;
  letter-spacing: .02em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  text-shadow: 0 2px 18px rgba(9,44,71,.45) !important;
}

.product-grid-item,
.wd-product,
.product.wd-product {
  background: #fff !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.08) !important;
  border-bottom: 3px solid var(--kdm-blue) !important;
  border-radius: 0 !important;
  overflow: hidden;
}
.product-grid-item:hover,
.wd-product:hover {
  box-shadow: 0 6px 20px rgba(0,0,0,.12) !important;
}
.product-grid-item .product-element-top,
.wd-product .product-element-top {
  background: var(--kdm-wash) !important;
}
.product-grid-item .wd-entities-title a,
.wd-product .wd-entities-title a {
  color: var(--kdm-deep) !important;
  font-weight: 700 !important;
}
.product-grid-item .price,
.wd-product .price {
  color: var(--kdm-blue) !important;
}

.page-title,
.wd-page-title {
  background: linear-gradient(105deg, rgba(9,44,71,.92), rgba(1,123,189,.55)) !important;
}
.page-title .title,
.wd-page-title .entry-title,
.page-title .breadcrumbs,
.page-title .breadcrumbs a {
  color: #fff !important;
}

.footer-container,
.wd-footer,
.footer-widget-area {
  background-color: var(--kdm-footer) !important;
  color: rgba(255,255,255,.8) !important;
}
.footer-container a,
.wd-footer a { color: rgba(255,255,255,.85) !important; }
.footer-container a:hover,
.wd-footer a:hover { color: var(--kdm-bright) !important; }
.footer-copyrights-wrapper,
.copyrights-wrapper {
  background: #2e2e2e !important;
  color: rgba(255,255,255,.6) !important;
}

.related-products,
.woodmart-products-tabs {
  background: var(--kdm-wash);
  padding-top: 40px;
  padding-bottom: 40px;
}
/* ==== KDM-RESTYLE END ==== */

/* ==== KDM-CARD-SYSTEM START (revert: delete this block in WoodMart Custom CSS) ==== */
/* Product card skeleton: border + equal frame + locked text/CTA baseline
   Route B — no image replacement; scene photos kept, magazine-orderly cards */

.products .product-grid-item,
.products .wd-product,
.wd-products .wd-product,
.wd-carousel-item .wd-product,
.wd-products-element .wd-product,
ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: #fff !important;
  border: 1px solid #e9e9e9 !important;
  border-bottom: 1px solid #e9e9e9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
  position: relative !important;
}

.products .product-grid-item:hover,
.products .wd-product:hover,
.wd-products .wd-product:hover,
ul.products li.product:hover {
  border-color: #d4d4d4 !important;
  box-shadow: 0 8px 24px rgba(9,44,71,.08) !important;
}

/* Hover theme underline at card bottom */
.products .product-grid-item::after,
.products .wd-product::after,
.wd-products .wd-product::after,
ul.products li.product::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 2px !important;
  background: #017bbd !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform .25s ease !important;
  z-index: 3 !important;
}
.products .product-grid-item:hover::after,
.products .wd-product:hover::after,
.wd-products .wd-product:hover::after,
ul.products li.product:hover::after {
  transform: scaleX(1) !important;
}

/* Fixed image frame — 1:1, contain, ~4% pad so scene art doesn't glue edge-to-edge */
.products .product-grid-item .product-element-top,
.products .wd-product .product-element-top,
.wd-products .wd-product .product-element-top,
ul.products li.product .product-element-top {
  aspect-ratio: 1 / 1 !important;
  background: #f7f7f7 !important;
  padding: 4% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  position: relative !important;
}

.products .product-grid-item .product-image-link,
.products .wd-product .product-image-link,
.wd-products .wd-product .product-image-link,
ul.products li.product .product-image-link,
.products .product-grid-item .wd-product-img,
.products .wd-product .wd-product-img {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

.products .product-grid-item .product-element-top img,
.products .wd-product .product-element-top img,
.wd-products .wd-product .product-element-top img,
ul.products li.product .product-element-top img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: scale(0.92) !important;
  transition: transform .35s ease !important;
}

.products .product-grid-item:hover .product-element-top img,
.products .wd-product:hover .product-element-top img,
.wd-products .wd-product:hover .product-element-top img,
ul.products li.product:hover .product-element-top img {
  transform: scale(0.98) !important;
}

/* Content column grows; CTA sticks to bottom baseline */
.products .product-grid-item .product-element-bottom,
.products .wd-product .product-element-bottom,
.wd-products .wd-product .product-element-bottom,
ul.products li.product .product-element-bottom,
.products .product-grid-item .wd-entities-wrapper,
.products .wd-product .wd-entities-wrapper {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 14px 14px 16px !important;
  text-align: center !important;
}

.products .product-grid-item .wd-entities-title,
.products .wd-product .wd-entities-title,
.wd-products .wd-product .wd-entities-title,
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product .wd-entities-title {
  min-height: 2.6em !important;
  max-height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  line-height: 1.3 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #092c47 !important;
  margin: 0 0 8px !important;
}

.products .product-grid-item .price,
.products .wd-product .price,
.wd-products .wd-product .price,
ul.products li.product .price {
  margin-top: auto !important;
  margin-bottom: 10px !important;
  color: #017bbd !important;
  font-weight: 600 !important;
}

.products .product-grid-item .wd-add-btn,
.products .wd-product .wd-add-btn,
.products .product-grid-item .button,
.products .wd-product .button,
.wd-products .wd-product .button,
ul.products li.product .button,
.products .product-grid-item .wd-more-desc,
.products .wd-product .wd-bottom-actions {
  margin-top: auto !important;
}

/* Grid gap slightly tighter / orderly */
.products.wd-products,
.wd-products[class*="columns"],
ul.products {
  gap: 24px !important;
  row-gap: 24px !important;
  column-gap: 24px !important;
}

@media (max-width: 768px) {
  .products .product-grid-item .wd-entities-title,
  .products .wd-product .wd-entities-title {
    font-size: 14px !important;
  }
}
/* ==== KDM-CARD-SYSTEM END ==== */

/* ==== KDM-HOME-VISUAL START (revert: delete this block) ==== */
/* 1) Kill abnormal smile/curve under homepage hero */
.home .wd-slider,
.home .woodmart-slider,
.home .rev-slider-wrapper,
.home .wd-slide,
.home .wd-carousel-container.slider-type-slider,
.home .elementor-top-section:first-child,
.home .main-page-wrapper > .elementor > .elementor-top-section:first-of-type,
.home .wd-page-content .elementor-section:first-child {
  border-radius: 0 !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}
.home .wd-slider::after,
.home .woodmart-slider::after,
.home .rev-slider-wrapper::after,
.home .elementor-top-section:first-child::after,
.home .wd-slide::after,
.home .wd-slider .slide-content::after,
.home svg.wd-slider-shape,
.home .wd-shape-divider,
.home .elementor-shape,
.home .elementor-shape-bottom,
.home .elementor-shape-top {
  display: none !important;
  height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* 2) Homepage hot product / category image cards — orderly frames */
.home .wd-product,
.home .product-grid-item,
.home ul.products li.product,
.home .wd-carousel-item .wd-product {
  border: 1px solid #e9e9e9 !important;
  background: #fff !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}
.home .wd-product .product-element-top,
.home .product-grid-item .product-element-top,
.home ul.products li.product .product-element-top {
  aspect-ratio: 1 / 1 !important;
  background: #f5f6f7 !important;
  padding: 6% !important;
  box-sizing: border-box !important;
}
.home .wd-product .product-element-top img,
.home .product-grid-item .product-element-top img,
.home ul.products li.product .product-element-top img {
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
}
.home .wd-product .wd-entities-title,
.home .product-grid-item .wd-entities-title {
  min-height: 2.6em !important;
  max-height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  text-align: center !important;
}
.home .wd-product .product-element-bottom,
.home .product-grid-item .product-element-bottom {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  text-align: center !important;
  padding: 12px 14px 16px !important;
}
.home .wd-product .price,
.home .product-grid-item .price,
.home .wd-product .button,
.home .product-grid-item .button,
.home .wd-product .wd-add-btn {
  margin-top: auto !important;
}

/* 3) Why-choose media: don't let play button dominate awkwardly */
.home .wd-video-poster-wrapper,
.home .wd-popup-video {
  position: relative;
}
.home .wd-video-poster-wrapper .play-button,
.home .wd-popup-video .button-play,
.home .wd-video-icon {
  width: 56px !important;
  height: 56px !important;
  opacity: .92 !important;
}

/* 4) Soften earlier aggressive product bottom accent from first KDM pass if conflicting */
.home .wd-product {
  border-bottom: 1px solid #e9e9e9 !important;
}
/* ==== KDM-HOME-VISUAL END ==== */

/* ==== KDM-HERO-CURVE-FIX START ==== */
/* Remove abnormal smile/ellipse under homepage hero */
.rb-kdm-hero::after {
  content: none !important;
  display: none !important;
  height: 0 !important;
  clip-path: none !important;
  background: transparent !important;
}
.rb-kdm-hero-inner {
  padding-bottom: 56px !important; /* was padded for the curve */
}
/* ==== KDM-HERO-CURVE-FIX END ==== */

}

@media (min-width: 768px) and (max-width: 1024px) {
	/* ==== KDM-RESTYLE START (revert: delete this whole block in WoodMart → Theme settings → Custom CSS) ==== */
:root {
  --kdm-blue: #017bbd;
  --kdm-bright: #1490d7;
  --kdm-deep: #092c47;
  --kdm-wash: #f4f6f9;
  --kdm-footer: #3a3a3a;
}
body {
  --wd-primary-color: #1490d7;
  --wd-alternative-color: #017bbd;
  --color-primary: #1490d7;
}
a { color: var(--kdm-bright); }
a:hover { color: var(--kdm-blue); }

.btn, button.button, .button, .wd-button, .btn-color-primary,
.single_add_to_cart_button, .checkout-button, a.checkout-button,
.woocommerce a.button, .woocommerce button.button {
  background-color: var(--kdm-bright) !important;
  border-color: var(--kdm-bright) !important;
  color: #fff !important;
  border-radius: 3px !important;
}
.btn:hover, .button:hover, .wd-button:hover, .btn-color-primary:hover,
.single_add_to_cart_button:hover, .woocommerce a.button:hover {
  background-color: var(--kdm-blue) !important;
  border-color: var(--kdm-blue) !important;
}

.elementor-button,
.wd-button.btn-style-default,
.wd-header-btn a,
.banner-inner .btn {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  padding: .85em 1.75em !important;
  z-index: 1;
}
.elementor-button::before,
.wd-button.btn-style-default::before,
.wd-header-btn a::before,
.banner-inner .btn::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--kdm-blue) !important;
  transform: skewX(-15deg) !important;
  z-index: -1 !important;
  transition: background-color .2s ease !important;
}
.elementor-button:hover::before,
.wd-button.btn-style-default:hover::before,
.wd-header-btn a:hover::before {
  background: #333 !important;
}

.whb-top-bar {
  background: var(--kdm-wash) !important;
  font-size: 12px !important;
  color: #555 !important;
}
.whb-main-header {
  box-shadow: 0 1px 0 #e8e8e8, 0 2px 8px rgba(0,0,0,.04) !important;
}

.wd-slide .slide-title,
.woodmart-slider .slide-title {
  font-weight: 700 !important;
  letter-spacing: .02em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  text-shadow: 0 2px 18px rgba(9,44,71,.45) !important;
}

.product-grid-item,
.wd-product,
.product.wd-product {
  background: #fff !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.08) !important;
  border-bottom: 3px solid var(--kdm-blue) !important;
  border-radius: 0 !important;
  overflow: hidden;
}
.product-grid-item:hover,
.wd-product:hover {
  box-shadow: 0 6px 20px rgba(0,0,0,.12) !important;
}
.product-grid-item .product-element-top,
.wd-product .product-element-top {
  background: var(--kdm-wash) !important;
}
.product-grid-item .wd-entities-title a,
.wd-product .wd-entities-title a {
  color: var(--kdm-deep) !important;
  font-weight: 700 !important;
}
.product-grid-item .price,
.wd-product .price {
  color: var(--kdm-blue) !important;
}

.page-title,
.wd-page-title {
  background: linear-gradient(105deg, rgba(9,44,71,.92), rgba(1,123,189,.55)) !important;
}
.page-title .title,
.wd-page-title .entry-title,
.page-title .breadcrumbs,
.page-title .breadcrumbs a {
  color: #fff !important;
}

.footer-container,
.wd-footer,
.footer-widget-area {
  background-color: var(--kdm-footer) !important;
  color: rgba(255,255,255,.8) !important;
}
.footer-container a,
.wd-footer a { color: rgba(255,255,255,.85) !important; }
.footer-container a:hover,
.wd-footer a:hover { color: var(--kdm-bright) !important; }
.footer-copyrights-wrapper,
.copyrights-wrapper {
  background: #2e2e2e !important;
  color: rgba(255,255,255,.6) !important;
}

.related-products,
.woodmart-products-tabs {
  background: var(--kdm-wash);
  padding-top: 40px;
  padding-bottom: 40px;
}
/* ==== KDM-RESTYLE END ==== */

/* ==== KDM-CARD-SYSTEM START (revert: delete this block in WoodMart Custom CSS) ==== */
/* Product card skeleton: border + equal frame + locked text/CTA baseline
   Route B — no image replacement; scene photos kept, magazine-orderly cards */

.products .product-grid-item,
.products .wd-product,
.wd-products .wd-product,
.wd-carousel-item .wd-product,
.wd-products-element .wd-product,
ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: #fff !important;
  border: 1px solid #e9e9e9 !important;
  border-bottom: 1px solid #e9e9e9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
  position: relative !important;
}

.products .product-grid-item:hover,
.products .wd-product:hover,
.wd-products .wd-product:hover,
ul.products li.product:hover {
  border-color: #d4d4d4 !important;
  box-shadow: 0 8px 24px rgba(9,44,71,.08) !important;
}

/* Hover theme underline at card bottom */
.products .product-grid-item::after,
.products .wd-product::after,
.wd-products .wd-product::after,
ul.products li.product::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 2px !important;
  background: #017bbd !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform .25s ease !important;
  z-index: 3 !important;
}
.products .product-grid-item:hover::after,
.products .wd-product:hover::after,
.wd-products .wd-product:hover::after,
ul.products li.product:hover::after {
  transform: scaleX(1) !important;
}

/* Fixed image frame — 1:1, contain, ~4% pad so scene art doesn't glue edge-to-edge */
.products .product-grid-item .product-element-top,
.products .wd-product .product-element-top,
.wd-products .wd-product .product-element-top,
ul.products li.product .product-element-top {
  aspect-ratio: 1 / 1 !important;
  background: #f7f7f7 !important;
  padding: 4% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  position: relative !important;
}

.products .product-grid-item .product-image-link,
.products .wd-product .product-image-link,
.wd-products .wd-product .product-image-link,
ul.products li.product .product-image-link,
.products .product-grid-item .wd-product-img,
.products .wd-product .wd-product-img {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

.products .product-grid-item .product-element-top img,
.products .wd-product .product-element-top img,
.wd-products .wd-product .product-element-top img,
ul.products li.product .product-element-top img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: scale(0.92) !important;
  transition: transform .35s ease !important;
}

.products .product-grid-item:hover .product-element-top img,
.products .wd-product:hover .product-element-top img,
.wd-products .wd-product:hover .product-element-top img,
ul.products li.product:hover .product-element-top img {
  transform: scale(0.98) !important;
}

/* Content column grows; CTA sticks to bottom baseline */
.products .product-grid-item .product-element-bottom,
.products .wd-product .product-element-bottom,
.wd-products .wd-product .product-element-bottom,
ul.products li.product .product-element-bottom,
.products .product-grid-item .wd-entities-wrapper,
.products .wd-product .wd-entities-wrapper {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 14px 14px 16px !important;
  text-align: center !important;
}

.products .product-grid-item .wd-entities-title,
.products .wd-product .wd-entities-title,
.wd-products .wd-product .wd-entities-title,
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product .wd-entities-title {
  min-height: 2.6em !important;
  max-height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  line-height: 1.3 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #092c47 !important;
  margin: 0 0 8px !important;
}

.products .product-grid-item .price,
.products .wd-product .price,
.wd-products .wd-product .price,
ul.products li.product .price {
  margin-top: auto !important;
  margin-bottom: 10px !important;
  color: #017bbd !important;
  font-weight: 600 !important;
}

.products .product-grid-item .wd-add-btn,
.products .wd-product .wd-add-btn,
.products .product-grid-item .button,
.products .wd-product .button,
.wd-products .wd-product .button,
ul.products li.product .button,
.products .product-grid-item .wd-more-desc,
.products .wd-product .wd-bottom-actions {
  margin-top: auto !important;
}

/* Grid gap slightly tighter / orderly */
.products.wd-products,
.wd-products[class*="columns"],
ul.products {
  gap: 24px !important;
  row-gap: 24px !important;
  column-gap: 24px !important;
}

@media (max-width: 768px) {
  .products .product-grid-item .wd-entities-title,
  .products .wd-product .wd-entities-title {
    font-size: 14px !important;
  }
}
/* ==== KDM-CARD-SYSTEM END ==== */

/* ==== KDM-HOME-VISUAL START (revert: delete this block) ==== */
/* 1) Kill abnormal smile/curve under homepage hero */
.home .wd-slider,
.home .woodmart-slider,
.home .rev-slider-wrapper,
.home .wd-slide,
.home .wd-carousel-container.slider-type-slider,
.home .elementor-top-section:first-child,
.home .main-page-wrapper > .elementor > .elementor-top-section:first-of-type,
.home .wd-page-content .elementor-section:first-child {
  border-radius: 0 !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}
.home .wd-slider::after,
.home .woodmart-slider::after,
.home .rev-slider-wrapper::after,
.home .elementor-top-section:first-child::after,
.home .wd-slide::after,
.home .wd-slider .slide-content::after,
.home svg.wd-slider-shape,
.home .wd-shape-divider,
.home .elementor-shape,
.home .elementor-shape-bottom,
.home .elementor-shape-top {
  display: none !important;
  height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* 2) Homepage hot product / category image cards — orderly frames */
.home .wd-product,
.home .product-grid-item,
.home ul.products li.product,
.home .wd-carousel-item .wd-product {
  border: 1px solid #e9e9e9 !important;
  background: #fff !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}
.home .wd-product .product-element-top,
.home .product-grid-item .product-element-top,
.home ul.products li.product .product-element-top {
  aspect-ratio: 1 / 1 !important;
  background: #f5f6f7 !important;
  padding: 6% !important;
  box-sizing: border-box !important;
}
.home .wd-product .product-element-top img,
.home .product-grid-item .product-element-top img,
.home ul.products li.product .product-element-top img {
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
}
.home .wd-product .wd-entities-title,
.home .product-grid-item .wd-entities-title {
  min-height: 2.6em !important;
  max-height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  text-align: center !important;
}
.home .wd-product .product-element-bottom,
.home .product-grid-item .product-element-bottom {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  text-align: center !important;
  padding: 12px 14px 16px !important;
}
.home .wd-product .price,
.home .product-grid-item .price,
.home .wd-product .button,
.home .product-grid-item .button,
.home .wd-product .wd-add-btn {
  margin-top: auto !important;
}

/* 3) Why-choose media: don't let play button dominate awkwardly */
.home .wd-video-poster-wrapper,
.home .wd-popup-video {
  position: relative;
}
.home .wd-video-poster-wrapper .play-button,
.home .wd-popup-video .button-play,
.home .wd-video-icon {
  width: 56px !important;
  height: 56px !important;
  opacity: .92 !important;
}

/* 4) Soften earlier aggressive product bottom accent from first KDM pass if conflicting */
.home .wd-product {
  border-bottom: 1px solid #e9e9e9 !important;
}
/* ==== KDM-HOME-VISUAL END ==== */

/* ==== KDM-HERO-CURVE-FIX START ==== */
/* Remove abnormal smile/ellipse under homepage hero */
.rb-kdm-hero::after {
  content: none !important;
  display: none !important;
  height: 0 !important;
  clip-path: none !important;
  background: transparent !important;
}
.rb-kdm-hero-inner {
  padding-bottom: 56px !important; /* was padded for the curve */
}
/* ==== KDM-HERO-CURVE-FIX END ==== */

}

@media (min-width: 577px) and (max-width: 767px) {
	/* ==== KDM-RESTYLE START (revert: delete this whole block in WoodMart → Theme settings → Custom CSS) ==== */
:root {
  --kdm-blue: #017bbd;
  --kdm-bright: #1490d7;
  --kdm-deep: #092c47;
  --kdm-wash: #f4f6f9;
  --kdm-footer: #3a3a3a;
}
body {
  --wd-primary-color: #1490d7;
  --wd-alternative-color: #017bbd;
  --color-primary: #1490d7;
}
a { color: var(--kdm-bright); }
a:hover { color: var(--kdm-blue); }

.btn, button.button, .button, .wd-button, .btn-color-primary,
.single_add_to_cart_button, .checkout-button, a.checkout-button,
.woocommerce a.button, .woocommerce button.button {
  background-color: var(--kdm-bright) !important;
  border-color: var(--kdm-bright) !important;
  color: #fff !important;
  border-radius: 3px !important;
}
.btn:hover, .button:hover, .wd-button:hover, .btn-color-primary:hover,
.single_add_to_cart_button:hover, .woocommerce a.button:hover {
  background-color: var(--kdm-blue) !important;
  border-color: var(--kdm-blue) !important;
}

.elementor-button,
.wd-button.btn-style-default,
.wd-header-btn a,
.banner-inner .btn {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  padding: .85em 1.75em !important;
  z-index: 1;
}
.elementor-button::before,
.wd-button.btn-style-default::before,
.wd-header-btn a::before,
.banner-inner .btn::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--kdm-blue) !important;
  transform: skewX(-15deg) !important;
  z-index: -1 !important;
  transition: background-color .2s ease !important;
}
.elementor-button:hover::before,
.wd-button.btn-style-default:hover::before,
.wd-header-btn a:hover::before {
  background: #333 !important;
}

.whb-top-bar {
  background: var(--kdm-wash) !important;
  font-size: 12px !important;
  color: #555 !important;
}
.whb-main-header {
  box-shadow: 0 1px 0 #e8e8e8, 0 2px 8px rgba(0,0,0,.04) !important;
}

.wd-slide .slide-title,
.woodmart-slider .slide-title {
  font-weight: 700 !important;
  letter-spacing: .02em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  text-shadow: 0 2px 18px rgba(9,44,71,.45) !important;
}

.product-grid-item,
.wd-product,
.product.wd-product {
  background: #fff !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.08) !important;
  border-bottom: 3px solid var(--kdm-blue) !important;
  border-radius: 0 !important;
  overflow: hidden;
}
.product-grid-item:hover,
.wd-product:hover {
  box-shadow: 0 6px 20px rgba(0,0,0,.12) !important;
}
.product-grid-item .product-element-top,
.wd-product .product-element-top {
  background: var(--kdm-wash) !important;
}
.product-grid-item .wd-entities-title a,
.wd-product .wd-entities-title a {
  color: var(--kdm-deep) !important;
  font-weight: 700 !important;
}
.product-grid-item .price,
.wd-product .price {
  color: var(--kdm-blue) !important;
}

.page-title,
.wd-page-title {
  background: linear-gradient(105deg, rgba(9,44,71,.92), rgba(1,123,189,.55)) !important;
}
.page-title .title,
.wd-page-title .entry-title,
.page-title .breadcrumbs,
.page-title .breadcrumbs a {
  color: #fff !important;
}

.footer-container,
.wd-footer,
.footer-widget-area {
  background-color: var(--kdm-footer) !important;
  color: rgba(255,255,255,.8) !important;
}
.footer-container a,
.wd-footer a { color: rgba(255,255,255,.85) !important; }
.footer-container a:hover,
.wd-footer a:hover { color: var(--kdm-bright) !important; }
.footer-copyrights-wrapper,
.copyrights-wrapper {
  background: #2e2e2e !important;
  color: rgba(255,255,255,.6) !important;
}

.related-products,
.woodmart-products-tabs {
  background: var(--kdm-wash);
  padding-top: 40px;
  padding-bottom: 40px;
}
/* ==== KDM-RESTYLE END ==== */

/* ==== KDM-CARD-SYSTEM START (revert: delete this block in WoodMart Custom CSS) ==== */
/* Product card skeleton: border + equal frame + locked text/CTA baseline
   Route B — no image replacement; scene photos kept, magazine-orderly cards */

.products .product-grid-item,
.products .wd-product,
.wd-products .wd-product,
.wd-carousel-item .wd-product,
.wd-products-element .wd-product,
ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: #fff !important;
  border: 1px solid #e9e9e9 !important;
  border-bottom: 1px solid #e9e9e9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
  position: relative !important;
}

.products .product-grid-item:hover,
.products .wd-product:hover,
.wd-products .wd-product:hover,
ul.products li.product:hover {
  border-color: #d4d4d4 !important;
  box-shadow: 0 8px 24px rgba(9,44,71,.08) !important;
}

/* Hover theme underline at card bottom */
.products .product-grid-item::after,
.products .wd-product::after,
.wd-products .wd-product::after,
ul.products li.product::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 2px !important;
  background: #017bbd !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform .25s ease !important;
  z-index: 3 !important;
}
.products .product-grid-item:hover::after,
.products .wd-product:hover::after,
.wd-products .wd-product:hover::after,
ul.products li.product:hover::after {
  transform: scaleX(1) !important;
}

/* Fixed image frame — 1:1, contain, ~4% pad so scene art doesn't glue edge-to-edge */
.products .product-grid-item .product-element-top,
.products .wd-product .product-element-top,
.wd-products .wd-product .product-element-top,
ul.products li.product .product-element-top {
  aspect-ratio: 1 / 1 !important;
  background: #f7f7f7 !important;
  padding: 4% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  position: relative !important;
}

.products .product-grid-item .product-image-link,
.products .wd-product .product-image-link,
.wd-products .wd-product .product-image-link,
ul.products li.product .product-image-link,
.products .product-grid-item .wd-product-img,
.products .wd-product .wd-product-img {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

.products .product-grid-item .product-element-top img,
.products .wd-product .product-element-top img,
.wd-products .wd-product .product-element-top img,
ul.products li.product .product-element-top img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: scale(0.92) !important;
  transition: transform .35s ease !important;
}

.products .product-grid-item:hover .product-element-top img,
.products .wd-product:hover .product-element-top img,
.wd-products .wd-product:hover .product-element-top img,
ul.products li.product:hover .product-element-top img {
  transform: scale(0.98) !important;
}

/* Content column grows; CTA sticks to bottom baseline */
.products .product-grid-item .product-element-bottom,
.products .wd-product .product-element-bottom,
.wd-products .wd-product .product-element-bottom,
ul.products li.product .product-element-bottom,
.products .product-grid-item .wd-entities-wrapper,
.products .wd-product .wd-entities-wrapper {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 14px 14px 16px !important;
  text-align: center !important;
}

.products .product-grid-item .wd-entities-title,
.products .wd-product .wd-entities-title,
.wd-products .wd-product .wd-entities-title,
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product .wd-entities-title {
  min-height: 2.6em !important;
  max-height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  line-height: 1.3 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #092c47 !important;
  margin: 0 0 8px !important;
}

.products .product-grid-item .price,
.products .wd-product .price,
.wd-products .wd-product .price,
ul.products li.product .price {
  margin-top: auto !important;
  margin-bottom: 10px !important;
  color: #017bbd !important;
  font-weight: 600 !important;
}

.products .product-grid-item .wd-add-btn,
.products .wd-product .wd-add-btn,
.products .product-grid-item .button,
.products .wd-product .button,
.wd-products .wd-product .button,
ul.products li.product .button,
.products .product-grid-item .wd-more-desc,
.products .wd-product .wd-bottom-actions {
  margin-top: auto !important;
}

/* Grid gap slightly tighter / orderly */
.products.wd-products,
.wd-products[class*="columns"],
ul.products {
  gap: 24px !important;
  row-gap: 24px !important;
  column-gap: 24px !important;
}

@media (max-width: 768px) {
  .products .product-grid-item .wd-entities-title,
  .products .wd-product .wd-entities-title {
    font-size: 14px !important;
  }
}
/* ==== KDM-CARD-SYSTEM END ==== */

/* ==== KDM-HOME-VISUAL START (revert: delete this block) ==== */
/* 1) Kill abnormal smile/curve under homepage hero */
.home .wd-slider,
.home .woodmart-slider,
.home .rev-slider-wrapper,
.home .wd-slide,
.home .wd-carousel-container.slider-type-slider,
.home .elementor-top-section:first-child,
.home .main-page-wrapper > .elementor > .elementor-top-section:first-of-type,
.home .wd-page-content .elementor-section:first-child {
  border-radius: 0 !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}
.home .wd-slider::after,
.home .woodmart-slider::after,
.home .rev-slider-wrapper::after,
.home .elementor-top-section:first-child::after,
.home .wd-slide::after,
.home .wd-slider .slide-content::after,
.home svg.wd-slider-shape,
.home .wd-shape-divider,
.home .elementor-shape,
.home .elementor-shape-bottom,
.home .elementor-shape-top {
  display: none !important;
  height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* 2) Homepage hot product / category image cards — orderly frames */
.home .wd-product,
.home .product-grid-item,
.home ul.products li.product,
.home .wd-carousel-item .wd-product {
  border: 1px solid #e9e9e9 !important;
  background: #fff !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}
.home .wd-product .product-element-top,
.home .product-grid-item .product-element-top,
.home ul.products li.product .product-element-top {
  aspect-ratio: 1 / 1 !important;
  background: #f5f6f7 !important;
  padding: 6% !important;
  box-sizing: border-box !important;
}
.home .wd-product .product-element-top img,
.home .product-grid-item .product-element-top img,
.home ul.products li.product .product-element-top img {
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
}
.home .wd-product .wd-entities-title,
.home .product-grid-item .wd-entities-title {
  min-height: 2.6em !important;
  max-height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  text-align: center !important;
}
.home .wd-product .product-element-bottom,
.home .product-grid-item .product-element-bottom {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  text-align: center !important;
  padding: 12px 14px 16px !important;
}
.home .wd-product .price,
.home .product-grid-item .price,
.home .wd-product .button,
.home .product-grid-item .button,
.home .wd-product .wd-add-btn {
  margin-top: auto !important;
}

/* 3) Why-choose media: don't let play button dominate awkwardly */
.home .wd-video-poster-wrapper,
.home .wd-popup-video {
  position: relative;
}
.home .wd-video-poster-wrapper .play-button,
.home .wd-popup-video .button-play,
.home .wd-video-icon {
  width: 56px !important;
  height: 56px !important;
  opacity: .92 !important;
}

/* 4) Soften earlier aggressive product bottom accent from first KDM pass if conflicting */
.home .wd-product {
  border-bottom: 1px solid #e9e9e9 !important;
}
/* ==== KDM-HOME-VISUAL END ==== */

/* ==== KDM-HERO-CURVE-FIX START ==== */
/* Remove abnormal smile/ellipse under homepage hero */
.rb-kdm-hero::after {
  content: none !important;
  display: none !important;
  height: 0 !important;
  clip-path: none !important;
  background: transparent !important;
}
.rb-kdm-hero-inner {
  padding-bottom: 56px !important; /* was padded for the curve */
}
/* ==== KDM-HERO-CURVE-FIX END ==== */

}

@media (max-width: 576px) {
	/* ==== KDM-RESTYLE START (revert: delete this whole block in WoodMart → Theme settings → Custom CSS) ==== */
:root {
  --kdm-blue: #017bbd;
  --kdm-bright: #1490d7;
  --kdm-deep: #092c47;
  --kdm-wash: #f4f6f9;
  --kdm-footer: #3a3a3a;
}
body {
  --wd-primary-color: #1490d7;
  --wd-alternative-color: #017bbd;
  --color-primary: #1490d7;
}
a { color: var(--kdm-bright); }
a:hover { color: var(--kdm-blue); }

.btn, button.button, .button, .wd-button, .btn-color-primary,
.single_add_to_cart_button, .checkout-button, a.checkout-button,
.woocommerce a.button, .woocommerce button.button {
  background-color: var(--kdm-bright) !important;
  border-color: var(--kdm-bright) !important;
  color: #fff !important;
  border-radius: 3px !important;
}
.btn:hover, .button:hover, .wd-button:hover, .btn-color-primary:hover,
.single_add_to_cart_button:hover, .woocommerce a.button:hover {
  background-color: var(--kdm-blue) !important;
  border-color: var(--kdm-blue) !important;
}

.elementor-button,
.wd-button.btn-style-default,
.wd-header-btn a,
.banner-inner .btn {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  padding: .85em 1.75em !important;
  z-index: 1;
}
.elementor-button::before,
.wd-button.btn-style-default::before,
.wd-header-btn a::before,
.banner-inner .btn::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--kdm-blue) !important;
  transform: skewX(-15deg) !important;
  z-index: -1 !important;
  transition: background-color .2s ease !important;
}
.elementor-button:hover::before,
.wd-button.btn-style-default:hover::before,
.wd-header-btn a:hover::before {
  background: #333 !important;
}

.whb-top-bar {
  background: var(--kdm-wash) !important;
  font-size: 12px !important;
  color: #555 !important;
}
.whb-main-header {
  box-shadow: 0 1px 0 #e8e8e8, 0 2px 8px rgba(0,0,0,.04) !important;
}

.wd-slide .slide-title,
.woodmart-slider .slide-title {
  font-weight: 700 !important;
  letter-spacing: .02em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  text-shadow: 0 2px 18px rgba(9,44,71,.45) !important;
}

.product-grid-item,
.wd-product,
.product.wd-product {
  background: #fff !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.08) !important;
  border-bottom: 3px solid var(--kdm-blue) !important;
  border-radius: 0 !important;
  overflow: hidden;
}
.product-grid-item:hover,
.wd-product:hover {
  box-shadow: 0 6px 20px rgba(0,0,0,.12) !important;
}
.product-grid-item .product-element-top,
.wd-product .product-element-top {
  background: var(--kdm-wash) !important;
}
.product-grid-item .wd-entities-title a,
.wd-product .wd-entities-title a {
  color: var(--kdm-deep) !important;
  font-weight: 700 !important;
}
.product-grid-item .price,
.wd-product .price {
  color: var(--kdm-blue) !important;
}

.page-title,
.wd-page-title {
  background: linear-gradient(105deg, rgba(9,44,71,.92), rgba(1,123,189,.55)) !important;
}
.page-title .title,
.wd-page-title .entry-title,
.page-title .breadcrumbs,
.page-title .breadcrumbs a {
  color: #fff !important;
}

.footer-container,
.wd-footer,
.footer-widget-area {
  background-color: var(--kdm-footer) !important;
  color: rgba(255,255,255,.8) !important;
}
.footer-container a,
.wd-footer a { color: rgba(255,255,255,.85) !important; }
.footer-container a:hover,
.wd-footer a:hover { color: var(--kdm-bright) !important; }
.footer-copyrights-wrapper,
.copyrights-wrapper {
  background: #2e2e2e !important;
  color: rgba(255,255,255,.6) !important;
}

.related-products,
.woodmart-products-tabs {
  background: var(--kdm-wash);
  padding-top: 40px;
  padding-bottom: 40px;
}
/* ==== KDM-RESTYLE END ==== */

/* ==== KDM-CARD-SYSTEM START (revert: delete this block in WoodMart Custom CSS) ==== */
/* Product card skeleton: border + equal frame + locked text/CTA baseline
   Route B — no image replacement; scene photos kept, magazine-orderly cards */

.products .product-grid-item,
.products .wd-product,
.wd-products .wd-product,
.wd-carousel-item .wd-product,
.wd-products-element .wd-product,
ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: #fff !important;
  border: 1px solid #e9e9e9 !important;
  border-bottom: 1px solid #e9e9e9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
  position: relative !important;
}

.products .product-grid-item:hover,
.products .wd-product:hover,
.wd-products .wd-product:hover,
ul.products li.product:hover {
  border-color: #d4d4d4 !important;
  box-shadow: 0 8px 24px rgba(9,44,71,.08) !important;
}

/* Hover theme underline at card bottom */
.products .product-grid-item::after,
.products .wd-product::after,
.wd-products .wd-product::after,
ul.products li.product::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 2px !important;
  background: #017bbd !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform .25s ease !important;
  z-index: 3 !important;
}
.products .product-grid-item:hover::after,
.products .wd-product:hover::after,
.wd-products .wd-product:hover::after,
ul.products li.product:hover::after {
  transform: scaleX(1) !important;
}

/* Fixed image frame — 1:1, contain, ~4% pad so scene art doesn't glue edge-to-edge */
.products .product-grid-item .product-element-top,
.products .wd-product .product-element-top,
.wd-products .wd-product .product-element-top,
ul.products li.product .product-element-top {
  aspect-ratio: 1 / 1 !important;
  background: #f7f7f7 !important;
  padding: 4% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  position: relative !important;
}

.products .product-grid-item .product-image-link,
.products .wd-product .product-image-link,
.wd-products .wd-product .product-image-link,
ul.products li.product .product-image-link,
.products .product-grid-item .wd-product-img,
.products .wd-product .wd-product-img {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

.products .product-grid-item .product-element-top img,
.products .wd-product .product-element-top img,
.wd-products .wd-product .product-element-top img,
ul.products li.product .product-element-top img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: scale(0.92) !important;
  transition: transform .35s ease !important;
}

.products .product-grid-item:hover .product-element-top img,
.products .wd-product:hover .product-element-top img,
.wd-products .wd-product:hover .product-element-top img,
ul.products li.product:hover .product-element-top img {
  transform: scale(0.98) !important;
}

/* Content column grows; CTA sticks to bottom baseline */
.products .product-grid-item .product-element-bottom,
.products .wd-product .product-element-bottom,
.wd-products .wd-product .product-element-bottom,
ul.products li.product .product-element-bottom,
.products .product-grid-item .wd-entities-wrapper,
.products .wd-product .wd-entities-wrapper {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 14px 14px 16px !important;
  text-align: center !important;
}

.products .product-grid-item .wd-entities-title,
.products .wd-product .wd-entities-title,
.wd-products .wd-product .wd-entities-title,
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product .wd-entities-title {
  min-height: 2.6em !important;
  max-height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  line-height: 1.3 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #092c47 !important;
  margin: 0 0 8px !important;
}

.products .product-grid-item .price,
.products .wd-product .price,
.wd-products .wd-product .price,
ul.products li.product .price {
  margin-top: auto !important;
  margin-bottom: 10px !important;
  color: #017bbd !important;
  font-weight: 600 !important;
}

.products .product-grid-item .wd-add-btn,
.products .wd-product .wd-add-btn,
.products .product-grid-item .button,
.products .wd-product .button,
.wd-products .wd-product .button,
ul.products li.product .button,
.products .product-grid-item .wd-more-desc,
.products .wd-product .wd-bottom-actions {
  margin-top: auto !important;
}

/* Grid gap slightly tighter / orderly */
.products.wd-products,
.wd-products[class*="columns"],
ul.products {
  gap: 24px !important;
  row-gap: 24px !important;
  column-gap: 24px !important;
}

@media (max-width: 768px) {
  .products .product-grid-item .wd-entities-title,
  .products .wd-product .wd-entities-title {
    font-size: 14px !important;
  }
}
/* ==== KDM-CARD-SYSTEM END ==== */

/* ==== KDM-HOME-VISUAL START (revert: delete this block) ==== */
/* 1) Kill abnormal smile/curve under homepage hero */
.home .wd-slider,
.home .woodmart-slider,
.home .rev-slider-wrapper,
.home .wd-slide,
.home .wd-carousel-container.slider-type-slider,
.home .elementor-top-section:first-child,
.home .main-page-wrapper > .elementor > .elementor-top-section:first-of-type,
.home .wd-page-content .elementor-section:first-child {
  border-radius: 0 !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}
.home .wd-slider::after,
.home .woodmart-slider::after,
.home .rev-slider-wrapper::after,
.home .elementor-top-section:first-child::after,
.home .wd-slide::after,
.home .wd-slider .slide-content::after,
.home svg.wd-slider-shape,
.home .wd-shape-divider,
.home .elementor-shape,
.home .elementor-shape-bottom,
.home .elementor-shape-top {
  display: none !important;
  height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* 2) Homepage hot product / category image cards — orderly frames */
.home .wd-product,
.home .product-grid-item,
.home ul.products li.product,
.home .wd-carousel-item .wd-product {
  border: 1px solid #e9e9e9 !important;
  background: #fff !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}
.home .wd-product .product-element-top,
.home .product-grid-item .product-element-top,
.home ul.products li.product .product-element-top {
  aspect-ratio: 1 / 1 !important;
  background: #f5f6f7 !important;
  padding: 6% !important;
  box-sizing: border-box !important;
}
.home .wd-product .product-element-top img,
.home .product-grid-item .product-element-top img,
.home ul.products li.product .product-element-top img {
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
}
.home .wd-product .wd-entities-title,
.home .product-grid-item .wd-entities-title {
  min-height: 2.6em !important;
  max-height: 2.6em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  text-align: center !important;
}
.home .wd-product .product-element-bottom,
.home .product-grid-item .product-element-bottom {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  text-align: center !important;
  padding: 12px 14px 16px !important;
}
.home .wd-product .price,
.home .product-grid-item .price,
.home .wd-product .button,
.home .product-grid-item .button,
.home .wd-product .wd-add-btn {
  margin-top: auto !important;
}

/* 3) Why-choose media: don't let play button dominate awkwardly */
.home .wd-video-poster-wrapper,
.home .wd-popup-video {
  position: relative;
}
.home .wd-video-poster-wrapper .play-button,
.home .wd-popup-video .button-play,
.home .wd-video-icon {
  width: 56px !important;
  height: 56px !important;
  opacity: .92 !important;
}

/* 4) Soften earlier aggressive product bottom accent from first KDM pass if conflicting */
.home .wd-product {
  border-bottom: 1px solid #e9e9e9 !important;
}
/* ==== KDM-HOME-VISUAL END ==== */

/* ==== KDM-HERO-CURVE-FIX START ==== */
/* Remove abnormal smile/ellipse under homepage hero */
.rb-kdm-hero::after {
  content: none !important;
  display: none !important;
  height: 0 !important;
  clip-path: none !important;
  background: transparent !important;
}
.rb-kdm-hero-inner {
  padding-bottom: 56px !important; /* was padded for the curve */
}
/* ==== KDM-HERO-CURVE-FIX END ==== */

}

