:root {
	--wd-text-font: "Metropolis", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 500;
	--wd-text-color: rgb(40,40,40);
	--wd-text-font-size: 17px;
	--wd-title-font: "Metropolis", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 600;
	--wd-title-color: #242424;
	--wd-entities-title-font: "Metropolis", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 600;
	--wd-entities-title-color: #333333;
	--wd-entities-title-color-hover: rgb(51 51 51 / 65%);
	--wd-alternative-font: var(--wd-text-font);
	--wd-widget-title-font: "Metropolis", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 600;
	--wd-widget-title-transform: uppercase;
	--wd-widget-title-color: #333;
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "Metropolis", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 600;
	--wd-header-el-transform: uppercase;
	--wd-header-el-font-size: 13px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(192,28,45);
	--wd-alternative-color: #fbbc34;
	--btn-default-bgcolor: #f7f7f7;
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-bgcolor: rgb(192,28,45);
	--btn-accented-bgcolor-hover: rgb(192,28,45);
	--wd-form-brd-width: 1px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: #333333;
	--wd-link-color-hover: rgb(192,28,45);
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: url();
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: rgb(247,247,247);
	background-image: none;
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
:root{
--wd-container-w: 1350px;
--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-brd-radius: 0px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--btn-accented-box-shadow-active: none;
--btn-accented-bottom: 0px;
--wd-brd-radius: 0px;
}

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


.wd-page-title {
background-color: #0a0a0a;
}

@font-face {
	font-family: "Metropolis";
	src: url("//mcx.store/wp-content/uploads/2021/10/Metropolis-Regular.woff") format("woff");
	font-weight: 400;
	font-display:swap;
	font-style: normal;
}

@font-face {
	font-family: "Metropolis";
	src: url("//mcx.store/wp-content/uploads/2021/10/Metropolis-Bold.woff2") format("woff2"), 
url("//mcx.store/wp-content/uploads/2021/10/Metropolis-Bold.woff") format("woff");
	font-weight: 600;
	font-display:swap;
	font-style: normal;
}

.woocommerce-product-gallery img {
    width: 100%;
    border-radius: var(--wd-brd-radius);
	border: 1px solid #e5e5e5;
}
.woocommerce-product-details__short-description .tagged_as,
.product_meta .tagged_as {
    display: none !important;
}
.related-products .product-grid-item .product-element-top {
  border: 1px solid #ccc; /* Light gray border */
  padding: 5px; /* Optional: adds some space inside the frame */
  box-sizing: border-box;
}
.products .product {
    border: 1px solid #e0e0e0;  /* light gray border */
    padding: 15px;              /* space inside */
    transition: all 0.3s ease;
}
.wd-product-cats
{
	height:70px;
	line-height:1.25em
}
.wd-entities-title
{
	height:auto;
	line-height:1.25em
}
.product_title
{
	font-size:24px;
}

/* Put qty, Add to Cart, and Ask MCXpert on one line */
.single-product .summary .cart {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap; /* safe on narrower screens */
}

/* Order (Qty → Add to Cart → Ask) */
.single-product .summary .cart .quantity { order: 1; margin: 0 !important; }
.single-product .summary .cart .single_add_to_cart_button { order: 2; }
.single-product .summary .cart #fme_efw_enquire_now_btn { order: 3; }

/* Shrink button sizes (both) */
.single-product .summary .cart .single_add_to_cart_button,
.single-product .summary .cart #fme_efw_enquire_now_btn {
  padding: 10px 18px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  flex: 0 0 auto;               /* prevent full width */
}

/* Keep your yellow style on the FME button */
.single-product .summary .cart #fme_efw_enquire_now_btn {
  background: #ffeb00;
  color: #000;
  border: 0;
  width: auto !important;        /* override any 100% width */
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}

/* If a second (full-width) Ask button appears elsewhere, hide it */
.single-product .summary > #fme_efw_enquire_now_btn,
.single-product .summary .fme-astra-enquiry-form-btn,
.single-product .summary .product-enquiry,
.single-product .summary .enquiry-button {
  display: none !important;
}

/* Mobile: stack vertically */
@media (max-width: 768px) {
  .single-product .summary .cart {
    flex-direction: column;
    align-items: stretch;
  }
  .single-product .summary .cart .single_add_to_cart_button,
  .single-product .summary .cart #fme_efw_enquire_now_btn {
    width: 100%;
  }
}

/* Make the image match the price font size */
.woocommerce-Price-amount .aed-img,
.price .aed-img {
  display: inline-block;
  height: 1em;      /* same as text size */
  width: auto;
  margin-right: 0.25em;
  vertical-align: baseline;
  image-rendering: -webkit-optimize-contrast; /* crisp PNGs */
}

/* PRODUCTS (grid, related, upsells, single) — add icon before amount */
.wd-products .product .price .woocommerce-Price-amount::before,
.related.products .price .woocommerce-Price-amount::before,
.upsells .price .woocommerce-Price-amount::before,
.single-product .summary .price .woocommerce-Price-amount::before {
  content: "";
  display: inline-block;
  width: 0.9em;
  height: 0.9em;
  margin-right: .25em;
  position: relative;
  top: 0.1em;               /* tweak -0.03em…-0.10em for perfect alignment */
  background: currentColor;   /* inherits sale/red etc. */
  -webkit-mask: url("/wp-content/uploads/currency-icons/dirham.svg") no-repeat center / contain;
          mask: url("/wp-content/uploads/currency-icons/dirham.svg") no-repeat center / contain;
}

/* WIDGETS — keep them clean (no custom icon injection) */
.widget .woocommerce-Price-amount::before { content: none !important; }

/* --- HEADER CART TOTAL: remove any symbol printed after the amount --- */
.wd-header-cart .woocommerce-Price-currencySymbol,
.header .woocommerce-Price-amount + .woocommerce-Price-currencySymbol,
.widget_shopping_cart .total .woocommerce-Price-currencySymbol {
  display: none !important;
}

/* kill any theme icon added via ::after in the header total */
.wd-header-cart .woocommerce-Price-amount::after,
.widget_shopping_cart .total .woocommerce-Price-amount::after {
  content: none !important;
}

/* --- OPTIONAL: add your AED icon BEFORE the amount in header only --- */
.wd-header-cart .woocommerce-Price-amount::before,
.widget_shopping_cart .total .woocommerce-Price-amount::before {
  content: "";
  display: inline-block;
  width: 0.8em;
  height: 0.8em;
  margin-right: .2em;
  position: relative;
  top: 0.1em; /* tweak -0.03em … -0.10em if needed */
  background: currentColor;
  -webkit-mask: url("/wp-content/uploads/currency-icons/dirham.svg") no-repeat center / contain;
          mask: url("/wp-content/uploads/currency-icons/dirham.svg") no-repeat center / contain;
}

.wd-entities-title
Specificity: (0,1,0)
 {
	 line-height: 1.1 !important;
}

.wd-cat .wd-entities-title {
	font-size: 18px !important;
	line-height: 1.2em !important;
}

/* Reduce single product title on phones */
@media (max-width: 480px) {
  .single-product h1.product_title.entry-title {
    font-size: 20px !important;   /* try 20–24px to taste */
    line-height: 1.15 !important;
    margin-bottom: 10px !important;
    overflow-wrap: anywhere;       /* prevent overlap */
    word-break: break-word;
    hyphens: auto;
  }
}


.mcx-container{
  width:100%;
  max-width:100%;
  margin:0;
}

.product-title{
  font-size:28px;
  font-weight:700;
  margin:0 0 10px;
	line-height:1.1;
}

.product-sub-title{
  font-size:28px;
  font-weight:700;
  margin:20px 0 10px;
	line-height:1.1;
}

.product-title2{
  font-size:36px;
  font-weight:700;
  margin:0 0 10px;
	line-height:1.1;
	text-align:center;
	text-decoration:underline;
	padding-top:15px;
	padding-bottom:15px;
}

.product-sub{
  font-size:18px;
  color:#555;
  margin:0 0 30px;
  line-height:1.4;
}

.video{
  margin:0 0 40px;
}

.video iframe{
  width:100%;
  height:420px;
  border:0;
  display:block;
	padding-left:20%;
	padding-right:20%;
}

.features{
  display:grid;
  grid-template-columns:1fr 1fr;
  row-gap:50px;
  width:100%;
}

.feature{
  padding-right:0;
}

.feature:nth-child(odd){
  border-right:1px solid #ddd;
  padding-right:40px;
}

.feature:nth-child(even){
  padding-left:40px;
}

.feature-2:nth-child(odd){
  border-right:1px solid #ddd;
  padding-right:40px;
	text-align:center;
}

.feature-2:nth-child(even){
  padding-left:40px;
	text-align:center;
}

.feature img{
  height:auto;
  display:block;
  margin:0 0 15px;
}

.features .feature img {
    display: block;
    margin: 0 auto;
	border-radius:10px;
}

.feature h3{
  margin:0 0 10px;
  font-size:22px;
  line-height:1.25;
}

.feature p{
  font-size:18px;
  line-height:1.4;
  color:#444;
  margin:0 0 14px;
}

.software{
  margin-top:40px;
  width:100%;
  max-width:100%;
  position:static;
  left:auto;
  right:auto;
  margin-left:0;
  margin-right:0;
	padding-left:5%;
	padding-right:5%;
}

.banner{
  margin-top:40px;
  width:100%;
  max-width:100%;
  position:static;
  left:auto;
  right:auto;
  margin-left:0;
  margin-right:0;
	text-align:-webkit-center;
}

.banner img{
  max-width:100%;
  height:auto;
  display:block;
  margin:0 0 30px;
	border-radius:10px;
}

.software img{
  width:100%;
  max-width:100%;
  height:auto;
  display:block;
  margin:0 0 20px;
}

@media(max-width:900px){
  .features{
    grid-template-columns:1fr;
  }

  .feature:nth-child(odd){
    border-right:none;
    padding-right:0;
  }

  .feature:nth-child(even){
    padding-left:0;
  }

  .video iframe{
    height:260px;
  }
}

.searchform input[type="text"],
.searchform input[type="search"],
.woodmart-search-form input[type="text"],
.woodmart-search-form input[type="search"],
input[type="search"] {
    font-family: Metropolis, sans-serif !important;
}

body,
p,
li,
span,
td,
th,
input,
textarea,
select,
label {
  font-weight: 400 !important;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.woocommerce-product-attributes {
    width: 100%;
}

.woocommerce-product-attributes-item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.woocommerce-product-attributes-item__label {
    width: 35%;
    text-align: left;
}

.woocommerce-product-attributes-item__value {
    width: 65%;
    text-align: right;
}

/* Increase DGWT/WCAS search bar width in WoodMart header */
.whb-header .dgwt-wcas-search-wrapp {
    width: 600px !important;
    max-width: 600px !important;
}

/* Search form full width */
.whb-header .dgwt-wcas-search-form {
    width: 100% !important;
}

/* Input height */
.whb-header .dgwt-wcas-search-input {
    height: 45px !important;
    font-size: 15px !important;
}

#wpbody-content,
.wrap,
.postbox,
.inside {
  overflow: visible !important;
}

.aramex_shipment_creation,
.aramex-shipment,
.aramex_popup,
.aramex-container {
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}

.aramex_shipment_creation input,
.aramex_shipment_creation select {
  max-width: 100% !important;
}

/* TONEX CAB PRODUCT DESCRIPTION */
.product-description,
.product-description * {
    box-sizing: border-box;
}

.tonex-description {
    width: 100%;
    margin: 0;
    padding: 0;
    font-family: "Metropolis", Arial, Helvetica, sans-serif;
    color: #222;
    line-height: 1.65;
}

.tonex-description img {
    display: block;
    width: 100%;
    height: auto;
}

.tonex-container {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

.tonex-intro {
    padding: 40px 0 45px;
    text-align: left;
}

.tonex-eyebrow {
    margin: 0 0 5px;
    font-size: 13px;
    color: #777;
}

.tonex-title {
    margin: 0 0 10px;
    font-size: clamp(28px, 4vw, 28px);
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -0.02em;
}

.tonex-intro p {
    margin: 0;
    font-size: 18px;
	line-height: 1.5;
}

.tonex-video-wrap {
    padding: 28px 20px;
    background: #f5f5f5;
}

.tonex-video {
    position: relative;
    width: min(720px, 100%);
    margin: 0 auto;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #000;
}

.tonex-video iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.tonex-dark-section {
    padding: 45px 0 35px;
    background: #050505;
    color: #fff;
    text-align: center;
}

.tonex-dark-section h2 {
    margin: 0 0 12px;
    color: #fff;
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.2;
}

.tonex-dark-section p {
    margin: 0 auto 18px;
    color: rgba(255,255,255,.88);
    font-size: 18px;
	line-height: 1.5;
}

.tonex-dark-section strong {
    color: #fff;
}

.tonex-hero-image {
    width: min(1020px, 100%);
    margin: 25px auto 0;
}

.tonex-feature-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px;
    padding: 45px 0;
}

.tonex-feature-card {
    min-width: 0;
}

.tonex-feature-card img {
    margin-bottom: 16px;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}

.tonex-feature-card h3 {
    margin: 0 0 8px;
    font-size: 24px;
    line-height: 1.25;
}

.tonex-feature-card p {
    margin: 0;
    font-size: 18px;
	line-height: 1.5;
    color: #555;
}

.tonex-feature-card strong {
    color: #222;
}

.tonex-gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 5px;
    width: 100%;
}

.tonex-gallery img {
    height: 340px;
    object-fit: cover;
}

.tonex-stereo-section {
    padding: 50px 20px;
    background: #050505;
}

.tonex-stereo-box {
    width: min(950px, 100%);
    margin: 0 auto;
    padding: 42px;
    background: #000;
    color: #fff;
    text-align: center;
}

.tonex-stereo-box h2 {
    margin: 0 0 14px;
    color: #fff;
    font-size: clamp(28px, 3vw, 40px);
}

.tonex-stereo-box p {
    margin: 0 auto 25px;
    color: rgba(255,255,255,.9);
    font-size: 18px;
}

.tonex-stereo-box img {
    width: min(760px, 100%);
    margin: 0 auto;
}

/* TABLET */
@media (max-width: 900px) {
    .tonex-container {
        width: min(100% - 30px, 1180px);
    }

    .tonex-feature-grid {
        gap: 24px;
    }

    .tonex-gallery img {
        height: 250px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .tonex-container {
        width: min(100% - 24px, 1180px);
    }

    .tonex-intro {
        padding: 30px 0;
    }

    .tonex-intro p,
    .tonex-dark-section p,
    .tonex-feature-card p,
    .tonex-stereo-box p {
        font-size: 14px;
    }

    .tonex-video-wrap {
        padding: 15px 12px;
    }

    .tonex-dark-section {
        padding: 35px 0 25px;
    }

    .tonex-feature-grid {
        grid-template-columns: 1fr;
        padding: 30px 0;
    }

    .tonex-gallery {
        grid-template-columns: 1fr;
    }

    .tonex-gallery img {
        height: auto;
        aspect-ratio: 16 / 10;
    }

    .tonex-stereo-section {
        padding: 25px 12px;
    }

    .tonex-stereo-box {
        padding: 28px 16px;
    }
}

/* Reduce spacing between bullet points in short description */
.woocommerce-product-details__short-description ul {
    margin: 0 0 15px;
    padding-left: 20px;
}

.woocommerce-product-details__short-description li {
    margin-bottom: 6px !important;
    padding-bottom: 0 !important;
    line-height: 1.4;
}

body.term-apogee .wd-page-title,
body.term-apogee .page-title
body.term-cedar .wd-page-title,
body.term-cedar .page-title
body.term-dynaudio .wd-page-title,
body.term-dynaudio .page-title
body.term-headrush .wd-page-title,
body.term-headrush .page-title
body.term-ik-multimedia .wd-page-title,
body.term-ik-multimedia .page-title
body.term-lynx .wd-page-title,
body.term-lynx .page-title
body.term-m-audio .wd-page-title,
body.term-m-audio .page-title
body.term-headrush .wd-page-title,
body.term-headrush .page-title
body.term-kiloview .wd-page-title,
body.term-kiloview .page-title,
body.term-m-audio .wd-page-title,
body.term-m-audio .page-title
body.term-manley .wd-page-title,
body.term-manley .page-title
body.term-marantz .wd-page-title,
body.term-marantz .page-title
body.term-marshall .wd-page-title,
body.term-marshall .page-title
body.term-matrox .wd-page-title,
body.term-matrox .page-title 
body.term-motu .wd-page-title,
body.term-motu .page-title
body.term-native-instruments .wd-page-title,
body.term-native-instruments .page-title
body.term-netgear .wd-page-title,
body.term-netgear .page-title
body.term-roland-av .wd-page-title,
body.term-roland-av .page-title
body.term-se-electronics .wd-page-title,
body.term-se-electronics .page-title
body.term-sheeran-loopers .wd-page-title,
body.term-sheeran-loopers .page-title
body.term-shimbol .wd-page-title,
body.term-shimbol .page-title 
body.term-skaarhoj .wd-page-title,
body.term-skaarhoj .page-title
body.term-sonarworks .wd-page-title,
body.term-sonarworks .page-title
body.term-sonnet .wd-page-title,
body.term-sonnet .page-title
body.term-spectrasonics .wd-page-title,
body.term-spectrasonics .page-title
body.term-synco .wd-page-title,
body.term-synco .page-title
body.term-telycam .wd-page-title,
body.term-telycam .page-title
body.term-universal-audio .wd-page-title,
body.term-universal-audio .page-title
body.term-vizrt .wd-page-title,
body.term-vizrt .page-title
body.term-warm-audio .wd-page-title,
body.term-warm-audio .page-title
body.term-roland-av .wd-page-title,
body.term-roland-av .page-title
body.term-synco .wd-page-title,
body.term-synco .page-title
body.term-telycam .wd-page-title,
body.term-telycam .page-title {
    display:none !important;
}

body.term-eventide .wd-page-title,
body.term-eventide .page-title {
	    display:none !important;
}

body.term-akai-professional .wd-page-title,
body.term-akai-professional .page-title {
	    display:none !important;
}


body.term-vizrt .wd-page-title,
body.term-vizrt .page-title {
    display:none !important;
}

body.term-steinberg .wd-page-title,
body.term-steinberg .page-title {
    display:none !important;
}

body.term-warm-audio .wd-page-title,
body.term-warm-audio .page-title {
    display:none !important;
}

body.term-sonnettech .wd-page-title,
body.term-sonnettech .page-title {
    display:none !important;
}

body.term-universal-audio .wd-page-title,
body.term-universal-audio .page-title {
    display:none !important;
}

body.tax-product_brand .wd-page-title,
body.tax-brand .wd-page-title {
    display: none !important;
}

body.term-birddog .wd-page-title,
body.term-birddog .page-title{
    display:none !important;
}

body.term-blackmagic-design .wd-page-title,
body.term-blackmagic-design .page-title{
    display:none !important;
}

body.term-colbor .wd-page-title,
body.term-colbor .page-title{
    display:none !important;
}

body.term-pro-audio .wd-page-title,
body.term-pro-audio .page-title{
    display:none !important;
}

body.page-id-832865 .wd-page-title,
body.page-id-832865 .page-title {
    display: none !important;
}

body.page-id-800842 .wd-page-title,
body.page-id-800842 .page-title {
    display: none !important;
}

/* ==========================================================
   MCX Dynamic White Category Cards
   3 cards per desktop row
========================================================== */

.mcx-white-category-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    width: 100%;
}

/* Full clickable card */
.mcx-white-category-card {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 290px;
    overflow: hidden;
    border: 1px solid #e9e9e9;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 35px rgba(0, 0, 0, 0.055);
    color: #111;
    text-decoration: none !important;
    isolation: isolate;
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

/* Left copy section */
.mcx-category-copy {
    position: relative;
    z-index: 3;
    display: flex;
    flex: 0 0 40%;
    min-width: 0;
    padding: 24px 8px 20px 22px;
    flex-direction: column;
    align-items: flex-start;
}

/* Automatic 01, 02, 03 */
.mcx-category-number {
    display: block;
    margin-bottom: 15px;
    color: #b8b8b8;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
}

/* WooCommerce category title */
.mcx-category-name {
    display: block;
    max-width: 250px;
    color: #111;
    font-size:18px;
    font-weight: 800 !important;
    line-height:1.15;
    text-transform: uppercase;
}

/* Dynamic brand-colour line */
.mcx-category-line {
    display: block;
    width: 34px;
    height: 2px;
    margin: 16px 0;
    background: var(--mcx-brand-accent, #e31e2f);
}

/* WooCommerce category description */
.mcx-category-description {
    display: block;
    max-width: 175px;
    color: #555;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
}

/* Bottom metadata row */
.mcx-category-footer {
    display: flex;
	  flex-direction:column;
    width: 100%;
    margin-top: auto;
    padding-top: 22px;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

/* Dynamic product count */
.mcx-category-count {
    color: #777;
    font-size: 13px;
    font-weight: 500;
	  white-space:nowrap;
    line-height: 1.2;
}

/* Dynamic accent arrow */
.mcx-category-arrow {
    display:flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    margin-top:6px;
    color:var(--mcx-brand-accent);
    font-size:26px;
    transition:.3s;
}

/* Product image section */
.mcx-category-image-wrap {
    position: absolute;
    top: 8px;
    right: -10%;
    bottom: 0;
    z-index: 2;
    display: flex;
    width: 72%;
    align-items: flex-end;
    justify-content: flex-end;
    pointer-events: none;
}

/* Soft circular shape behind product */
.mcx-category-image-wrap::before {
    content: "";
    position: absolute;
    right: 4%;
    bottom: 6%;
    z-index: -1;
    width: 78%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #f7f7f7;
}

/* Category thumbnail */
.mcx-category-image-wrap img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: contain;
    object-position: right bottom;
    transition: transform 0.4s ease;
}

/* Hover effect */
.mcx-white-category-card:hover {
    border-color: rgba(0, 0, 0, 0.14);
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.10);
    transform: translateY(-5px);
}

.mcx-white-category-card:hover .mcx-category-image-wrap img {
    transform: scale(1.055) translateX(-4px);
}

.mcx-white-category-card:hover .mcx-category-arrow {
    transform: translateX(7px);
}

/* Prevent theme link colours from overriding text */
.mcx-white-category-card:hover .mcx-category-name,

.mcx-white-category-card:hover .mcx-category-count,
.mcx-white-category-card:focus .mcx-category-name,
.mcx-white-category-card:focus .mcx-category-description,
.mcx-white-category-card:focus .mcx-category-count {
    color: inherit;
}

/* Tablet: 2 cards per row */
@media (max-width: 1024px) {
    .mcx-white-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mcx-white-category-card {
        min-height: 310px;
    }

    .mcx-category-name {
        font-size: 22px;
    }
}

/* Mobile: 1 card per row */
@media (max-width: 767px) {
    .mcx-white-category-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .mcx-white-category-card {
        min-height: 275px;
    }

    .mcx-category-copy {
        flex-basis: 50%;
        padding: 23px 7px 21px 21px;
    }

    .mcx-category-number {
        margin-bottom: 11px;
        font-size: 12px;
    }

    .mcx-category-name {
        max-width: 155px;
        font-size: 20px;
    }

    .mcx-category-line {
        margin: 13px 0;
    }

    .mcx-category-description {
        max-width: 150px;
        font-size: 12px;
    }

    .mcx-category-count {
        font-size: 12px;
    }

    .mcx-category-image-wrap {
        right: -10%;
        width: 68%;
    }
}

/* ==========================================
   MCX Pro Audio Dynamic Brand Cards
========================================== */

.mcx-brand-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    width: 100%;
}

.mcx-brand-card {
    --mcx-card-accent: #e31e2f;

    position: relative;
    min-height: 360px;
    overflow: hidden;
    border-radius: 16px;
    background:
        linear-gradient(
            90deg,
            rgba(4, 4, 6, .96) 0%,
            rgba(4, 4, 6, .86) 43%,
            rgba(4, 4, 6, .18) 100%
        ),
        var(--mcx-card-image),
        #111;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    isolation: isolate;
    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

.mcx-brand-card::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background:
        linear-gradient(
            180deg,
            transparent 30%,
            rgba(0, 0, 0, .30) 100%
        );
    pointer-events: none;
}

.mcx-brand-card-link {
    position: absolute;
    inset: 0;
    z-index: 5;
}

.mcx-brand-card-content {
    position: relative;
    z-index: 2;
    display: flex;
    width: 58%;
    min-height: 360px;
    padding: 34px 24px 28px 30px;
    flex-direction: column;
    align-items: flex-start;
}

.mcx-brand-card-logo {
    display: block;
    width: auto;
    max-width: 155px;
    max-height: 66px;
    margin-bottom: 22px;
    object-fit: contain;
    object-position: left center;
}

.mcx-brand-card-name {
    margin: 0 0 22px;
    color: #fff;
    font-size: 28px;
    font-weight: 800;
}

.mcx-brand-card-category {
    margin-bottom: 11px;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.25;
}

.mcx-brand-card-description {
    max-width: 260px;
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    line-height: 1.55;
}

.mcx-brand-card-button {
    display: inline-flex;
    margin-top: auto;
    padding: 11px 15px;
    align-items: center;
    gap: 12px;
    border: 1px solid var(--mcx-card-accent);
    border-radius: 5px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    transition:
        background-color .3s ease,
        transform .3s ease;
}

.mcx-brand-card:hover {
    box-shadow: 0 20px 50px rgba(0, 0, 0, .18);
    transform: translateY(-6px);
}

.mcx-brand-card:hover .mcx-brand-card-button {
    background: var(--mcx-card-accent);
}

.mcx-brand-card:hover .mcx-brand-card-button span:last-child {
    transform: translateX(4px);
}

.mcx-brand-card-button span:last-child {
    transition: transform .3s ease;
}

/* Tablet */
@media (max-width: 1024px) {
    .mcx-brand-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */
@media (max-width: 767px) {
    .mcx-brand-card-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .mcx-brand-card {
        min-height: 330px;
    }

    .mcx-brand-card-content {
        width: 68%;
        min-height: 330px;
        padding: 27px 18px 23px 22px;
    }

    .mcx-brand-card-logo {
        max-width: 130px;
        max-height: 55px;
    }
}

/* =========================================
   MCX BRAND CARDS — CLEAN RESET
========================================= */

.mcx-brand-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 24px !important;
    width: 100% !important;
    align-items: stretch !important;
}

/* Card */
.mcx-brand-card {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    visibility: visible !important;
    opacity: 1 !important;
    border: 1px solid #e1e1e1 !important;
    border-radius: 11px !important;
    background: linear-gradient(
        180deg,
        #ffffff 0%,
        #ffffff 56%,
        #f5f5f5 78%,
        #e5e5e5 100%
    ) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06) !important;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease !important;
}

/* Top accent */
.mcx-brand-card::before {
    position: absolute !important;
    z-index: 10 !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    display: block !important;
    height: 4px !important;
    background: var(--mcx-brand-accent, #ed1b2e) !important;
    content: "" !important;
}

/* Bottom accent */
.mcx-brand-card::after {
    position: absolute !important;
    z-index: 10 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    display: block !important;
    height: 4px !important;
    background: var(--mcx-brand-accent, #ed1b2e) !important;
    content: "" !important;
}

/* Clickable card */
.mcx-brand-card-link {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    width: 100% !important;
    height: auto !important;
    min-height: 390px !important;
    margin: 0 !important;
    padding: 0 !important;
    flex-direction: column !important;
    color: #171717 !important;
    text-decoration: none !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Header */
.mcx-brand-card-header {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    min-height: 158px !important;
    margin: 0 !important;
    padding: 25px 28px 22px !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Icon circle */
.mcx-brand-card-icon-wrap {
    display: flex !important;
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    background: #fcebed !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.mcx-brand-card-icon {
    display: block !important;
    width: 26px !important;
    height: 26px !important;
    object-fit: contain !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Logo */
.mcx-brand-card-logo-wrap {
    display: flex !important;
    width: 100% !important;
    min-height: 82px !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.mcx-brand-card-logo {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 215px !important;
    max-height: 78px !important;
    object-fit: contain !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Fallback brand name */
.mcx-brand-card-name {
    display: block !important;
    margin: 0 !important;
    color: #171717 !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    text-align: center !important;
}

/* Full-width divider */
.mcx-brand-card-divider {
    display: block !important;
    width: 100% !important;
    height: 1px !important;
    min-height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 1px !important;
    background: #bcbcbc !important;
}

/* Text section */
.mcx-brand-card-content {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 15px 20px 8px !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.mcx-brand-card-category {
    display: block !important;
    margin: 0 0 5px !important;
    padding: 0 !important;
    color: #171717 !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.mcx-brand-card-description {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #626262 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    visibility: visible !important;
    opacity: 1 !important;
	height:45px;
}

/* Footer */
.mcx-brand-card-footer {
    display: flex !important;
    width: 100% !important;
    min-height: 72px !important;
    margin: 0 !important;
    padding: 8px 28px 10px !important;
    align-items: center !important;
    justify-content: flex-end !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Arrow */
.mcx-brand-card-arrow {
    display: flex !important;
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1.5px solid #111111 !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: #111111 !important;
    font-size: 25px !important;
    line-height: 1 !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Hover */
.mcx-brand-card:hover {
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.11) !important;
    transform: translateY(-6px) !important;
}

.mcx-brand-card:hover .mcx-brand-card-arrow {
    border-color: var(--mcx-brand-accent, #ed1b2e) !important;
    background: var(--mcx-brand-accent, #ed1b2e) !important;
    color: #ffffff !important;
}

/* Tablet */
@media (max-width: 1024px) {
    .mcx-brand-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .mcx-brand-grid {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }
}

/* Remove all forced card height and empty footer space */
.mcx-brand-grid {
    align-items: start !important;
}

.mcx-brand-card {
    height: auto !important;
    min-height: 0 !important;
    align-self: start !important;
}

.mcx-brand-card-link {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
}

.mcx-brand-card-header {
    min-height: 0 !important;
    height: auto !important;
    padding: 22px 26px 18px !important;
}

.mcx-brand-card-logo-wrap {
    min-height: 72px !important;
    height: auto !important;
}

.mcx-brand-card-content {
    height: auto !important;
    min-height: 0 !important;
    padding: 15px 15px 0px !important;
}

.mcx-brand-card-footer {
    display: flex !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    margin-top: 0 !important;
    padding: 0px 15px 10px !important
    align-items: center !important;
    justify-content: flex-end !important;
}

.mcx-brand-card-arrow {
    margin: 0 !important;
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px !important;
    border: 1.5px solid #111 !important;
    background: transparent !important;
    color: #111 !important;
}

/* Reduce space below the logo */
.mcx-brand-card-header {
    min-height: 0 !important;
    height: auto !important;
    padding: 18px 26px 0px !important;
}

.mcx-brand-card-logo-wrap {
    min-height: 0 !important;
    height: auto !important;
    margin: 5px !important;
}

.mcx-brand-card-logo {
    max-width: 215px !important;
    max-height: 76px !important;
    margin: 0 !important;
}

.mcx-brand-card-divider {
    margin-top: 0 !important;
}

.products .product {
border-radius:10px !important;
}

.elementor-element .elementor-main-swiper, .elementor-lightbox .elementor-main-swiper {
	border-radius:10px !important;
}

/* Brand Silder */
.mcx-brand-slider {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: #f3f3f3;
}

.mcx-brand-slider__track {
    position: relative;
    width: 100%;
}

.mcx-brand-slider__slide {
    display: none;
    width: 100%;
}

.mcx-brand-slider__slide.is-active {
    display: block;
    animation: mcxSliderFade 0.55s ease;
}

.mcx-brand-slider__image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1920 / 600;
    object-fit: cover;
	  border-radius:10px !important;
}

.mcx-brand-slider__arrow {
    position: absolute;
    top: 50%;
    z-index: 5;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.42);
    color: #fff;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    transform: translateY(-50%);
    transition:
        background 0.2s ease,
        border-color 0.2s ease;
}

.mcx-brand-slider__arrow:hover {
    background: rgba(0, 0, 0, 0.72);
    border-color: #fff;
}

.mcx-brand-slider__arrow--prev {
    left: 20px;
}

.mcx-brand-slider__arrow--next {
    right: 20px;
}

.mcx-brand-slider__dots {
    display: none !important;
}

.mcx-brand-slider__dot {
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    cursor: pointer;
    transition:
        width 0.2s ease,
        border-radius 0.2s ease,
        background 0.2s ease;
}

.mcx-brand-slider__dot.is-active {
    width: 25px;
    border-radius: 10px;
    background: #fff;
}

@keyframes mcxSliderFade {
    from {
        opacity: 0.25;
    }

    to {
        opacity: 1;
    }
}

@media (max-width: 767px) {

    .mcx-brand-slider__image {
        width: 100%;
        height: auto;
        aspect-ratio: auto;
        object-fit: contain;
        object-position: center;
        display: block;
    }

    .mcx-brand-slider__arrow {
        width: 30px;
        height: 30px;
        font-size: 15px;
        border-width: 1px;
    }

    .mcx-brand-slider__arrow--prev {
        left: 10px;
    }

    .mcx-brand-slider__arrow--next {
        right: 10px;
    }

    .mcx-brand-slider__dots {
        bottom: 10px;
    }
}

/* Make all dots small circles */
.swiper-pagination-bullet{
    width:10px !important;
    height:10px !important;
    border-radius:50% !important;
    margin:0 5px !important;
    opacity:.5;
    transition:.3s;
}

/* Active dot */
.swiper-pagination-bullet-active{
    width:10px !important;
    height:10px !important;
    border-radius:50% !important;
    opacity:1;
    background:#fff !important;
}

.mcx-white-category-card {
    position: relative;
    display: block;
    min-height: 295px;
    overflow: hidden;
    padding: 0;
    border-radius: 16px;
    background: #fff;
}

/* Full-height background image on the right */
.mcx-white-category-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 58%;
    background-image: var(--mcx-category-image);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform 0.45s ease;
}

/* Optional soft divider between text and image */
.mcx-white-category-card::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 39%;
    width: 16%;
    background: linear-gradient(
        90deg,
        #fff 0%,
        rgba(255, 255, 255, 0.92) 35%,
        rgba(255, 255, 255, 0) 100%
    );
    pointer-events: none;
}

/* Left text area */
.mcx-white-category-card .mcx-category-copy {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    width: 45%;
    min-height: 295px;
    padding: 24px 18px 22px 22px;
}

/* Keep footer near the bottom */
.mcx-white-category-card .mcx-category-footer {
    margin-top: auto;
}

/* Small hover zoom */
.mcx-white-category-card:hover::before {
    transform: scale(1.04);
}

.mcx-white-category-card {
    position: relative !important;
    display: block !important;
    min-height: 295px;
    padding: 0 !important;
    overflow: hidden;
    border-radius: 16px;
    background-color: #fff;
}

/* Full-height image on right */
.mcx-white-category-card::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 58%;
    background-image: var(--mcx-category-bg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

/* Optional fade between text and image */
.mcx-white-category-card::after {
    display: none !important;
}

.mcx-white-category-card .mcx-category-copy {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    width: 43%;
    min-height: 295px;
    padding: 24px 16px 22px 22px;
}

.mcx-white-category-card .mcx-category-footer {
    margin-top: auto;
}

/* Hide any old image markup in case cached HTML remains */
.mcx-white-category-card .mcx-category-image-wrap {
    display: none !important;
}

.mcx-white-category-card::before {
    width: 100%;
    background-position: center;
}

.mcx-white-category-card .mcx-category-copy {
    width: 100%;
    padding: 24px 16px 22px 22px;
}

/* Hide WoodMart black title banner only on Controller Series */
body.tax-product_cat.term-controller-series-1 .page-title {
    display: none !important;
}

@media (max-width: 767px) {

    .mcx-benefits-strip {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .mcx-benefit {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        padding: 18px 15px;
        border-bottom: 1px solid #e5e5e5;
    }

    .mcx-benefit:last-child {
        border-bottom: none;
    }

    .mcx-benefit-icon {
        margin-right: 10px;
        flex-shrink: 0;
    }
}

/* ==========================================================
   Current Brand Categories Sidebar
========================================================== */

.mcx-current-brand-categories {
    margin-bottom: 30px;
}

/* Heading */
.mcx-brand-category-heading {
    margin: 0 0 18px;
    color: #333;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
}

/* Brand Name */
.mcx-brand-category-root {
    display: block;
    margin-bottom: 10px;
    padding: 11px 14px;
    border-left: 3px solid #c5162e;
    background: #f6f6f6;
    color: #222;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
}

.mcx-brand-category-root:hover {
    color: #c5162e;
}

/* Lists */
.mcx-brand-category-level {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mcx-brand-category-item {
    margin: 0;
}

/* Category Links */
.mcx-brand-category-item > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;

    padding: 9px 2px;

    border-bottom: 1px solid #eeeeee;

    color: #777;
    font-size: 14px;
    text-decoration: none;

    transition: all .25s ease;
}

/* Hover */
.mcx-brand-category-item > a:hover {
    color: #c5162e;
    padding-left: 4px;
}

/* ==========================================================
   Typography
========================================================== */

/* Main Categories (Level 0) */
.mcx-level-0 > .mcx-brand-category-item > a {
    font-weight: 700;
    color: #333;
}

/* Sub Categories */
.mcx-level-1 > .mcx-brand-category-item > a,
.mcx-level-2 > .mcx-brand-category-item > a,
.mcx-level-3 > .mcx-brand-category-item > a {
    font-weight: 400;
    color: #777;
}

/* Indentation */
.mcx-level-1,
.mcx-level-2,
.mcx-level-3 {
    padding-left: 18px;
}

/* ==========================================================
   Product Count
========================================================== */

.mcx-category-product-count {
    min-width: 27px;
    padding: 2px 7px;

    border: 1px solid #ddd;
    border-radius: 20px;

    color: #999;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.2;
    text-align: center;
}

/* ==========================================================
   Current Category
========================================================== */

.mcx-brand-category-item.is-current > a {
    padding-left: 8px;
    border-left: 2px solid #c5162e;

    color: #c5162e;
    font-weight: 700;
}

/* Parent Category */
.mcx-brand-category-item.is-current-parent > a {
    color: #333;
    font-weight: 700;
}

/* Current count */
.mcx-brand-category-item.is-current .mcx-category-product-count {
    border-color: #c5162e;
    color: #c5162e;
}

/* Dynamic brand logo in the shop sidebar */
.mcx-sidebar-brand-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 105px;
    margin-bottom: 25px;
    padding: 5px;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    background: #fff;
}

.mcx-sidebar-brand-logo a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.mcx-sidebar-brand-logo img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 280px !important;
    max-height: 100px !important;
    object-fit: contain;
    opacity: 1 !important;
    visibility: visible !important;
}

.wd-info-box :is(.info-box-subtitle,.info-box-title,.info-box-inner):not(:first-child) {
	margin-top:0px !important;
}

/* Square images without cropping — Eventide Software only */
body.term-software-eventide .product-grid-item .product-element-top {
    aspect-ratio: 1 / 1;
    background: #ffffff;
    overflow: hidden;
}

body.term-software-eventide .product-grid-item .product-image-link {
    width: 100%;
    height: 100%;
    padding: 12px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
}

body.term-software-eventide .product-grid-item .product-image-link img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
}

/* Square product-page images for Eventide Software */
body.single-product
.single-product-page.product_cat-software-eventide
.woocommerce-product-gallery__image {
    aspect-ratio: 1 / 1;
    background: #ffffff;
    overflow: hidden;
}

body.single-product
.single-product-page.product_cat-software-eventide
.woocommerce-product-gallery__image > a {
    width: 100%;
    height: 100%;
    padding: 20px;
    box-sizing: border-box;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

body.single-product
.single-product-page.product_cat-software-eventide
.woocommerce-product-gallery__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
}

/* =========================================
   SHOP, CATEGORY AND PRODUCT GRID IMAGES
   ========================================= */

.product-grid-item .product-element-top {
    aspect-ratio: 1 / 1;
    background: #ffffff;
    overflow: hidden;
}

.product-grid-item .product-image-link {
    width: 100%;
    height: 100%;
    padding: 12px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-grid-item .product-image-link img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
}


/* =========================================
   INDIVIDUAL PRODUCT PAGE MAIN IMAGES
   ========================================= */

body.single-product
.single-product-page
.woocommerce-product-gallery__image {
    aspect-ratio: 1 / 1;
    background: #ffffff;
    overflow: hidden;
}

body.single-product
.single-product-page
.woocommerce-product-gallery__image > a {
    width: 100%;
    height: 100%;
    padding: 20px;
    box-sizing: border-box;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

body.single-product
.single-product-page
.woocommerce-product-gallery__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
}