/* MEXIGO front-end v2: fonts, header, hero, motion, components. v1 backup: mexigo-custom.css.bak-20260922 */

/* ---------- Fonts (self-hosted, SIL OFL: Bricolage Grotesque + Geist) ---------- */
@font-face{font-family:'MX Display';font-style:normal;font-weight:400 800;font-display:swap;src:url('fonts/bricolage-grotesque-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'MX Display';font-style:normal;font-weight:400 800;font-display:swap;src:url('fonts/bricolage-grotesque-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'MX Text';font-style:normal;font-weight:300 700;font-display:swap;src:url('fonts/geist-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'MX Text';font-style:normal;font-weight:300 700;font-display:swap;src:url('fonts/geist-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- Tokens ---------- */
:root{--mx-bg:#0A0D0B;--mx-surface:#121613;--mx-ink:#F4F7F5;--mx-ink-muted:#9AA69D;--mx-accent:#22C55E;--mx-accent-hi:#32DC71;--mx-accent-deep:#0F6B42;--mx-border:#232A26;--mx-light:#F7F9F7;--mx-ink-on-light:#12160F;--mx-font-display:'MX Display','Bricolage Grotesque',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;--mx-font-text:'MX Text','Geist',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;--mx-ease:cubic-bezier(.16,1,.3,1);--mx-ease-io:cubic-bezier(.76,0,.24,1);--mx-header-h:76px;--mx-gutter:clamp(20px,4.4vw,64px);--mx-max:1440px}
@media(max-width:1024px){:root{--mx-header-h:64px}}

/* ---------- Base ---------- */
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--mx-header-h) + 8px);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
*,*::before,*::after{box-sizing:border-box}
body.page-template-elementor_canvas{background:var(--mx-bg);font-family:var(--mx-font-text)}
html.mx-menu-open,html.mx-menu-open body{overflow:hidden}
.mx-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mx-header a:focus-visible,.mx-header button:focus-visible,.mx-drawer a:focus-visible,.mx-hero a:focus-visible,.mx-hero button:focus-visible,.mx-hero input:focus-visible{outline:2px solid var(--mx-accent);outline-offset:3px}

/* ---------- Header: fixed, transparent on top, glass after scroll, hides on scroll down ---------- */
body .mx-header.e-con{position:fixed!important;top:0;left:0;right:0;width:100%!important;max-width:none!important;margin:0!important;min-height:0!important;display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;column-gap:24px!important;height:var(--mx-header-h);padding-inline:max(var(--mx-gutter),calc((100% - var(--mx-max))/2))!important;padding-block:0!important;z-index:999!important;background:transparent!important;border:0!important;box-shadow:none!important;transition:transform .6s var(--mx-ease)}
body.admin-bar .mx-header.e-con{top:32px}
@media(max-width:782px){body.admin-bar .mx-header.e-con{top:46px}}
@media(max-width:600px){body.admin-bar .mx-header.e-con{top:0}}
body .mx-header.e-con.is-hidden{transform:translate3d(0,-110%,0)}
body .mx-header.e-con.is-menu-open{transform:none}
body .mx-header.e-con::before{content:'';display:block;position:absolute;inset:0;width:auto;height:auto;z-index:-1;pointer-events:none;background:rgba(10,13,11,.74);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);box-shadow:inset 0 -1px 0 rgba(244,247,245,.08);opacity:0;transition:opacity .45s var(--mx-ease)}
body .mx-header.e-con.is-scrolled::before{opacity:1}
body .mx-header.e-con.is-menu-open::before{opacity:0}
.mx-logo{justify-self:start;display:inline-flex;align-items:center;line-height:0;border-radius:6px}
.elementor-element-c8595b6 img,.mx-logo img{display:block;height:40px;width:auto;border-radius:4px}
.mx-nav{display:flex;align-items:center;gap:clamp(24px,3vw,44px)}
.mx-nav .mx-nav-link{position:relative;display:inline-block;padding:10px 2px;font:500 14px/1 var(--mx-font-text);letter-spacing:.01em;color:var(--mx-ink);text-decoration:none;transition:color .3s ease}
.mx-nav .mx-nav-link::after{content:'';position:absolute;left:0;right:0;bottom:3px;height:1.5px;background:var(--mx-accent);transform:scaleX(0);transform-origin:100% 50%;transition:transform .5s var(--mx-ease)}
.mx-nav .mx-nav-link:hover::after,.mx-nav .mx-nav-link:focus-visible::after,.mx-nav .mx-nav-link[aria-current='page']::after{transform:scaleX(1);transform-origin:0 50%}
.mx-nav .mx-nav-link:hover,.mx-nav .mx-nav-link:focus-visible{color:var(--mx-ink)}
.mx-actions{justify-self:end;display:flex;align-items:center;gap:10px}
.mx-icon-btn,.mx-burger,.mx-hero__toggle{-webkit-appearance:none;appearance:none;position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;margin:0;border:1px solid rgba(244,247,245,.16);border-radius:6px;background:rgba(244,247,245,.06);color:var(--mx-ink);text-decoration:none;cursor:pointer;line-height:1;transition:background-color .3s ease,border-color .3s ease,color .3s ease,translate .3s var(--mx-ease)}
.mx-icon-btn:hover,.mx-icon-btn:focus-visible,.mx-burger:hover,.mx-burger:focus-visible,.mx-hero__toggle:hover,.mx-hero__toggle:focus-visible{background:rgba(34,197,94,.14);border-color:rgba(34,197,94,.6);color:var(--mx-ink);translate:0 -1px}
.mx-icon-btn svg{display:block}
.mx-cart-badge{position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--mx-accent);color:var(--mx-bg);font:700 10px/1 var(--mx-font-text);display:flex;align-items:center;justify-content:center}
.mx-burger{display:none}
.mx-burger span{position:absolute;left:11px;right:11px;height:1.5px;border-radius:2px;background:currentColor;transition:transform .55s var(--mx-ease),top .55s var(--mx-ease)}
.mx-burger span:nth-child(1){top:14px}
.mx-burger span:nth-child(2){top:22px}
.mx-burger[aria-expanded='true'] span:nth-child(1){top:18px;transform:rotate(45deg)}
.mx-burger[aria-expanded='true'] span:nth-child(2){top:18px;transform:rotate(-45deg)}

/* Pages without a hero: keep the first section clear of the fixed header */
.mx-header+.e-con:not(.mx-hero){padding-block-start:calc(var(--padding-top,0px) + var(--mx-header-h))}

/* ---------- Mobile / tablet: full-screen menu ---------- */
.mx-drawer{display:none}
@media(max-width:1024px){
  body .mx-header.e-con{grid-template-columns:1fr auto!important}
  .mx-nav{display:none}
  .mx-burger{display:inline-flex}
  .mx-drawer{display:flex;position:fixed;inset:0;z-index:998;height:100vh;height:100dvh;flex-direction:column;justify-content:space-between;gap:32px;padding:calc(var(--mx-header-h) + 28px) var(--mx-gutter) calc(28px + env(safe-area-inset-bottom,0px));background:var(--mx-bg);color:var(--mx-ink);overflow-y:auto;overscroll-behavior:contain;visibility:hidden;opacity:0;clip-path:inset(0 0 100% 0);transition:clip-path .8s var(--mx-ease-io),opacity .2s linear .6s,visibility 0s linear .85s}
  .mx-drawer.is-open{visibility:visible;opacity:1;clip-path:inset(0 0 0 0);transition:clip-path .8s var(--mx-ease-io),opacity .1s linear,visibility 0s}
  .mx-drawer-nav{display:flex;flex-direction:column}
  .mx-drawer-link{display:block;padding:16px 0;border-bottom:1px solid rgba(244,247,245,.1);font:600 clamp(2.1rem,9.5vw,3.4rem)/1.04 var(--mx-font-display);letter-spacing:-.035em;color:var(--mx-ink);text-decoration:none;opacity:0;transform:translate3d(0,28px,0);transition:opacity .5s ease,transform .8s var(--mx-ease),color .3s ease}
  .mx-drawer.is-open .mx-drawer-link{opacity:1;transform:none;transition-delay:calc(.28s + var(--n,0)*.07s)}
  .mx-drawer-link[aria-current='page'],.mx-drawer-link:hover{color:var(--mx-accent)}
  .mx-drawer-foot{font:400 14px/1.5 var(--mx-font-text);color:var(--mx-ink-muted);opacity:0;transition:opacity .6s ease}
  .mx-drawer.is-open .mx-drawer-foot{opacity:1;transition-delay:.6s}
  .mx-drawer-foot a{color:var(--mx-ink);text-decoration:none;border-bottom:1px solid rgba(244,247,245,.3)}
}
@media(min-width:1025px){.mx-drawer{display:none!important}}
@media(max-width:380px){.elementor-element-c8595b6 img,.mx-logo img{height:34px}.mx-actions{gap:8px}}

/* ---------- Hero: branded product showcase, fixed-point parallax bg, 100dvh ---------- */
.mx-hero.e-con{position:relative!important;overflow:hidden!important;isolation:isolate;display:flex!important;align-items:center;justify-content:center;min-height:100vh!important;min-height:100dvh!important}
@supports not (min-height:100dvh){.mx-hero.e-con{min-height:100vh!important}}

.mx-hero__bgpattern{position:absolute;inset:0;z-index:0;background-image:radial-gradient(rgba(244,247,245,.09) 1px,transparent 1px);background-size:34px 34px;background-position:center;opacity:.5}
@media (min-width:1025px){.mx-hero__bgpattern{background-attachment:fixed}}

.mx-hero__glow{position:absolute;z-index:0;top:50%;left:50%;width:min(90vw,1100px);height:min(90vw,1100px);transform:translate3d(-50%,-50%,0);background:radial-gradient(circle,rgba(34,197,94,.24) 0%,rgba(34,197,94,.08) 38%,transparent 68%);filter:blur(10px);pointer-events:none}

.mx-hero__stage{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:calc(var(--mx-header-h) + 40px) 24px 60px}
.mx-hero__product{position:relative;max-width:min(78vw,620px);width:100%;height:auto;mix-blend-mode:multiply;filter:drop-shadow(0 40px 60px rgba(0,0,0,.55));will-change:transform;transform:translate3d(0,0,0) scale(1)}
@media (prefers-color-scheme:light){.mx-hero__product{mix-blend-mode:multiply}}
.mx-hero__shadow{position:absolute;left:50%;bottom:6%;width:56%;height:34px;transform:translate3d(-50%,0,0);background:radial-gradient(ellipse,rgba(0,0,0,.55) 0%,transparent 72%);z-index:1;filter:blur(2px)}

.mx-hero__scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(10,13,11,.92) 0%,rgba(10,13,11,.05) 26%,rgba(10,13,11,0) 55%,rgba(10,13,11,.15) 100%)}

@media(prefers-reduced-motion:reduce){.mx-hero__product{transform:none!important}}
@media(max-width:600px){
  .mx-hero__stage{padding-top:calc(var(--mx-header-h) + 24px)}
  .mx-hero__product{max-width:84vw}
  .mx-hero__scrim{background:linear-gradient(0deg,rgba(10,13,11,.95) 0%,rgba(10,13,11,.1) 30%,rgba(10,13,11,0) 55%,rgba(10,13,11,.2) 100%)}
}
/* ---------- Entrance motion for hero text (staggered, distinct from generic scroll fade) ---------- */
.mx-hero .mx-fade-up{opacity:0;transform:translate3d(0,26px,0);filter:blur(6px);transition:opacity .9s var(--mx-ease),transform 1s var(--mx-ease),filter .9s var(--mx-ease)}
.mx-hero .mx-fade-up.mx-visible{opacity:1;transform:none;filter:blur(0)}
.mx-hero__content.e-con>.mx-fade-up:nth-child(1){transition-delay:.05s}
.mx-hero__content.e-con>.mx-fade-up:nth-child(2){transition-delay:.18s}
.mx-hero__content.e-con>.mx-fade-up:nth-child(3){transition-delay:.31s}
.mx-hero__content.e-con>.mx-fade-up:nth-child(4){transition-delay:.44s}
.mx-hero__content.e-con>.e-con .mx-fade-up{transition-delay:.5s}

/* ---------- Generic scroll reveal used site-wide: pop + slide with a slight overshoot ---------- */
:root{--mx-pop-ease:cubic-bezier(.22,1.36,.4,1)}
.mx-fade-up{opacity:0;transform:translate3d(0,34px,0) scale(.94);transition:opacity .6s ease-out,transform .7s var(--mx-pop-ease)}
.mx-fade-up.mx-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .mx-fade-up{transform:translate3d(0,10px,0) scale(1);transition:opacity .4s ease,transform .4s ease}
}
/* ---------- Button micro-interaction (premium press feel) ---------- */
.elementor-button,.mx-icon-btn,.mx-nav-link{-webkit-tap-highlight-color:transparent}
.elementor-button{transition:transform .35s var(--mx-ease),box-shadow .35s var(--mx-ease),background-color .3s ease,filter .3s ease!important}
.elementor-button:hover{transform:translateY(-2px)}
@keyframes mxClickPulse{
  0%{ box-shadow:0 0 0 0 rgba(34,197,94,.55); }
  70%{ box-shadow:0 0 0 14px rgba(34,197,94,0); }
  100%{ box-shadow:0 0 0 0 rgba(34,197,94,0); }
}
.elementor-button.mx-clicked,.mx-icon-btn.mx-clicked,.mx-card.mx-clicked{
  transform:scale(.94);
  animation:mxClickPulse .55s ease-out;
}
.elementor-button.mx-clicked{ background-color:var(--mx-accent-hi)!important; }
a.mx-clicked:not(.elementor-button):not(.mx-nav-link):not(.mx-drawer-link):not(.mx-icon-btn){ color:var(--mx-accent-hi)!important; }

/* ---------- Intro/content section directly beneath the video hero ---------- */
.mx-intro.e-con{position:relative}
.mx-intro.e-con::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(34,197,94,.35),transparent)}

/* ============================================================
   UNIVERSAL SITE-WIDE HOVER SYSTEM
   Scoped to real pointer devices only (hover:hover + pointer:fine)
   so touchscreens are untouched; touch gets a matching :active pop.
   GPU-only transforms (transform/opacity/filter/box-shadow/color).
   ============================================================ */
@media (hover:hover) and (pointer:fine) {
  a, button, .elementor-button, .mx-icon-btn, .woocommerce a.button, .woocommerce ul.products li.product{ cursor:pointer; }

  a:not(.mx-nav-link):not(.mx-drawer-link):not(.elementor-button):not(.mx-icon-btn):not(.mx-logo){
    transition:color .3s ease, opacity .3s ease;
  }
  a:not(.mx-nav-link):not(.mx-drawer-link):not(.elementor-button):not(.mx-icon-btn):not(.mx-logo):hover{
    color:var(--mx-accent);
  }

  .elementor-widget-image{ overflow:hidden; }
  .elementor-widget-image img{ transition:transform .5s var(--mx-ease), filter .4s ease; }
  .elementor-widget-image:hover img{ transform:scale(1.045); filter:brightness(1.05); }

  .elementor-icon-box-wrapper, .elementor-image-box-wrapper{
    transition:transform .4s var(--mx-ease), box-shadow .4s var(--mx-ease);
  }
  .elementor-icon-box-wrapper:hover, .elementor-image-box-wrapper:hover{
    transform:translateY(-6px);
    box-shadow:0 22px 50px -22px rgba(0,0,0,.55);
  }
  .elementor-icon-box-wrapper .elementor-icon{ transition:transform .4s var(--mx-ease), color .35s ease; }
  .elementor-icon-box-wrapper:hover .elementor-icon{ transform:scale(1.12) rotate(-4deg); color:var(--mx-accent); }

  .woocommerce ul.products li.product{
    transition:transform .4s var(--mx-ease), box-shadow .4s var(--mx-ease);
  }
  .woocommerce ul.products li.product:hover{
    transform:translateY(-6px);
    box-shadow:0 22px 50px -22px rgba(0,0,0,.5);
  }
  .woocommerce ul.products li.product img{ transition:transform .5s var(--mx-ease); }
  .woocommerce ul.products li.product:hover img{ transform:scale(1.06); }
  .woocommerce ul.products li.product:hover .woocommerce-loop-product__title{ color:var(--mx-accent); }
  .woocommerce a.button:hover, .woocommerce button.button:hover{ transform:translateY(-2px); }

  .mx-card{ transition:transform .4s var(--mx-ease), box-shadow .4s var(--mx-ease), border-color .35s ease, background-color .35s ease; }
  .mx-card:hover{
    transform:translateY(-7px) scale(1.015);
    box-shadow:0 26px 60px -22px rgba(0,0,0,.6), 0 0 0 1px rgba(34,197,94,.35), 0 0 40px -6px rgba(34,197,94,.35);
    border-color:rgba(34,197,94,.55);
  }
  .mx-card:hover .elementor-icon{ color:var(--mx-accent-hi); transform:scale(1.1); }
  .mx-card .elementor-icon{ transition:transform .35s var(--mx-ease), color .3s ease; }
}

@media (hover:hover) and (pointer:fine) {
  .elementor-button:hover{
    background-color:var(--mx-accent-hi)!important;
    box-shadow:0 14px 32px -10px rgba(34,197,94,.55);
  }
  .mx-icon-btn:hover{ box-shadow:0 0 0 1px rgba(34,197,94,.45), 0 10px 24px -10px rgba(34,197,94,.5); }
}

@media (hover:none), (pointer:coarse) {
  .elementor-icon-box-wrapper:active, .elementor-image-box-wrapper:active,
  .woocommerce ul.products li.product:active, .mx-card:active, .elementor-button:active{
    transform:scale(.97);
    transition:transform .15s ease;
  }
}
/* ============================================================
   SITE-WIDE SUBTLE PARALLAX (decorative elements)
   GPU transform only, driven by one shared rAF loop in JS.
   ============================================================ */
.mx-parallax{ will-change:transform; }
@media (prefers-reduced-motion:reduce){ .mx-parallax{ transform:none!important; } }

/* ============================================================
   TURBULENCE REVEAL (liquid-settle entrance for major headings)
   Starts faded+displaced, settles to perfectly sharp/clean.
   Falls back to a plain fade if SVG filters are unsupported.
   ============================================================ */
.mx-turbulence{
  opacity:0;
  transform:translate3d(0,22px,0);
  transition:opacity .6s var(--mx-ease-io), transform .7s var(--mx-ease-io), filter .6s ease-out;
}
.mx-turbulence.mx-turb-active{
  opacity:1;
  transform:none;
  filter:url(#mxTurbDisplace);
}
.mx-turbulence.mx-turb-settled{
  filter:none;
}
@media (prefers-reduced-motion:reduce){
  .mx-turbulence{ transition:opacity .5s ease, transform .5s ease; }
  .mx-turbulence.mx-turb-active{ filter:none; }
}
/* ============================================================
   PROFESSIONAL PRODUCT GRID (WooCommerce shortcode skin)
   ============================================================ */
.elementor-element-mxshopgridwidget{ width:100%; }
.elementor-element-mxshopgridwidget .woocommerce ul.products,
.elementor-element-mxshopgridwidget ul.products{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important;
  gap:28px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  width:100%!important;
}
.elementor-element-mxshopgridwidget ul.products li.product{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  position:relative;
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid rgba(18,22,19,.08);
  border-radius:14px;
  overflow:hidden;
  text-align:left;
}
.elementor-element-mxshopgridwidget ul.products li.product a{
  text-decoration:none!important;
  color:inherit;
  display:block;
}
.elementor-element-mxshopgridwidget ul.products li.product .woocommerce-loop-product__link{
  display:flex!important;
  flex-direction:column;
  flex:1;
}
.elementor-element-mxshopgridwidget ul.products li.product img{
  width:100%!important;
  aspect-ratio:1/1;
  object-fit:contain!important;
  background:#F7F9F7;
  padding:22px;
  height:auto!important;
  display:block;
}
.elementor-element-mxshopgridwidget ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--mx-font-display);
  font-weight:700;
  font-size:16px;
  line-height:1.3;
  color:#12160F;
  margin:16px 16px 4px;
}
.elementor-element-mxshopgridwidget ul.products li.product .price{
  margin:0 16px 16px;
  font-family:var(--mx-font-text);
  font-weight:700;
  font-size:16px;
  color:#0F6B42;
}
.elementor-element-mxshopgridwidget ul.products li.product .price del{
  color:#9AA69D;
  font-weight:400;
  opacity:.8;
  margin-right:8px;
  text-decoration:line-through;
}
.elementor-element-mxshopgridwidget ul.products li.product .price ins{
  text-decoration:none;
}
.elementor-element-mxshopgridwidget ul.products li.product .onsale{
  position:absolute;
  top:14px;
  left:14px;
  z-index:2;
  background:#22C55E;
  color:#0A0D0B;
  font:700 11px/1 var(--mx-font-text);
  letter-spacing:.03em;
  padding:6px 10px;
  border-radius:999px;
  text-transform:uppercase;
  min-height:0!important;
  min-width:0!important;
  right:auto!important;
}
.elementor-element-mxshopgridwidget ul.products li.product a.button,
.elementor-element-mxshopgridwidget ul.products li.product a.add_to_cart_button{
  margin:0 16px 20px!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  padding:11px 18px!important;
  border-radius:8px!important;
  background:#0A0D0B!important;
  color:#F4F7F5!important;
  font:600 13.5px/1 var(--mx-font-text)!important;
  border:none!important;
  transition:background-color .3s ease, transform .35s var(--mx-ease)!important;
}
.elementor-element-mxshopgridwidget ul.products li.product a.added_to_cart{
  margin:0 16px 20px!important;
  display:inline-block;
  font:600 12.5px/1 var(--mx-font-text);
  color:#0F6B42;
}
@media (hover:hover) and (pointer:fine){
  .elementor-element-mxshopgridwidget ul.products li.product{
    transition:transform .4s var(--mx-ease), box-shadow .4s var(--mx-ease), border-color .3s ease;
  }
  .elementor-element-mxshopgridwidget ul.products li.product:hover{
    transform:translateY(-6px);
    box-shadow:0 22px 50px -22px rgba(0,0,0,.28), 0 0 0 1px rgba(34,197,94,.4);
    border-color:rgba(34,197,94,.5);
  }
  .elementor-element-mxshopgridwidget ul.products li.product:hover img{ transform:scale(1.04); }
  .elementor-element-mxshopgridwidget ul.products li.product img{ transition:transform .5s var(--mx-ease); }
  .elementor-element-mxshopgridwidget ul.products li.product a.button:hover,
  .elementor-element-mxshopgridwidget ul.products li.product a.add_to_cart_button:hover{
    background:#0F6B42!important;
    transform:translateY(-2px);
  }
}
@media(max-width:480px){
  .elementor-element-mxshopgridwidget ul.products{ grid-template-columns:repeat(2,1fr)!important; gap:16px!important; }
  .elementor-element-mxshopgridwidget ul.products li.product .woocommerce-loop-product__title{ font-size:14px; margin:12px 12px 4px; }
  .elementor-element-mxshopgridwidget ul.products li.product .price{ font-size:14px; margin:0 12px 12px; }
  .elementor-element-mxshopgridwidget ul.products li.product a.button,
  .elementor-element-mxshopgridwidget ul.products li.product a.add_to_cart_button{ margin:0 12px 14px!important; padding:9px 14px!important; font-size:12.5px!important; }
}