@import url('https://fonts.googleapis.com/css2?family=Lexend+Deca:wght@400;600&family=Open+Sans:wght@400;600&display=swap');

:root{
  --bg:#ffffff;
  --text:#111111;
  --muted:#666666;
  --accent:#0f172a; /* deep slate */
  --accent-2:#d1a954; /* warm gold accent */
  --container:1200px;
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; min-height:100vh; }
body{
  margin:0;
  font-family:ui-sans-serif,system-ui,Segoe UI,Roboto,Helvetica,Arial,'Apple Color Emoji','Segoe UI Emoji';
  color:var(--text);
  background:var(--bg);
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
.site-main{ flex:1 0 auto; padding-left: 20px; padding-right: 20px; }
@media (max-width: 767px){
  .site-main{ padding-left: 12px; padding-right: 12px; }
}
.home .site-main{
  padding-left: 0;
  padding-right: 0;
}
.home .site-header,
.home .site-footer{
  display: none;
}
.home .woocommerce-store-notice,
.home .demo_store,
.page-template-front-page .woocommerce-store-notice,
.page-template-front-page .demo_store,
.page-template-front-page-php .woocommerce-store-notice,
.page-template-front-page-php .demo_store{
  display: none;
}
.site-main--account{
  width: 100%;
  padding: 0 20px;
  box-sizing: border-box;
}
.woocommerce-checkout .site-main,
.woocommerce-cart .site-main{
  padding-left: 12px;
  padding-right: 12px;
  box-sizing: border-box;
}
a{ color:inherit; text-decoration:none; }
.container{ max-width:var(--container); margin:0 auto; padding:0 16px; }

.mmilo-whatsapp-link{
  position: fixed;
  right: 18px;
  bottom: 18px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 2px;
  border-radius: 999px;
  background: transparent;
  color: #ffffff;
  box-shadow: none;
  z-index: 100001;
  font-weight: 600;
  font-size: 14px;
}
.mmilo-whatsapp__icon{
  width: 54px;
  height: 54px;
  display: block;
}
.mmilo-whatsapp-link:focus,
.mmilo-whatsapp-link:hover{
  background: transparent;
}
@media (max-width: 600px){
  .mmilo-whatsapp-link{
    right: 12px;
    bottom: 12px;
    padding: 2px;
    font-size: 13px;
  }
  .mmilo-whatsapp__label{ display: none; }
}

.mmilo-landing-overlay{
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  --mmilo-landing-bg-image: none;
  --mmilo-landing-bg-opacity: 0.2;
  --mmilo-landing-bg-shadow: 0.35;
  background:
    linear-gradient(rgba(0,0,0,var(--mmilo-landing-bg-shadow)), rgba(0,0,0,var(--mmilo-landing-bg-shadow))),
    linear-gradient(rgba(255,255,255,var(--mmilo-landing-bg-opacity)), rgba(255,255,255,var(--mmilo-landing-bg-opacity))),
    var(--mmilo-landing-bg-image),
    radial-gradient(circle at 12% 12%, rgba(249,115,22,0.18), transparent 38%),
    radial-gradient(circle at 85% 15%, rgba(244,63,94,0.16), transparent 42%),
    linear-gradient(180deg, #fff4ea 0%, #ffe4cf 100%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  overflow: hidden;
  position: fixed;
  inset: 0;
  z-index: 100000;
}
.mmilo-landing-bg-video{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  pointer-events: none;
}
.mmilo-landing-carousel,
.mmilo-landing-expanded{
  position: relative;
  z-index: 2;
}
@media (max-width: 900px){
  .mmilo-landing-overlay{
    align-items: flex-start;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding: 48px 0 40px;
  }
}
.mmilo-landing-overlay::before,
.mmilo-landing-overlay::after{
  content: "";
  position: absolute;
  pointer-events: none;
  inset: -20%;
}
.mmilo-landing-overlay::before{
  background: radial-gradient(circle at 20% 80%, rgba(0,0,0,0.06), transparent 45%);
}
.mmilo-landing-overlay::after{
  background: radial-gradient(circle at 80% 80%, rgba(0,0,0,0.05), transparent 50%);
}
.mmilo-landing-overlay{
  --mmilo-landing-card-width: 520px;
  --mmilo-landing-card-min-height: 420px;
  --mmilo-landing-card-width-mobile: 90vw;
  --mmilo-landing-card-min-height-mobile: 440px;
}
.mmilo-landing{
  position: relative;
  z-index: 1;
  padding: 48px 32px;
  text-align: center;
  background: #ffffff;
  border-radius: 14px;
  box-shadow: 0 24px 60px rgba(0,0,0,0.12);
  max-width: 900px;
  width: calc(100% - 32px);
  border: 1px solid rgba(15,23,42,0.06);
  font-family: "Open Sans", "Segoe UI", Arial, sans-serif;
  transition: max-width 0.2s ease;
}
.mmilo-landing__logo{
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
}
.mmilo-landing__logo img{
  max-width: 220px;
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}
.mmilo-landing--placeholder{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 320px;
  background: var(--mmilo-slide-bg, linear-gradient(135deg, #f4f0ff 0%, #efe7ff 100%));
  background-size: cover;
  background-position: center;
  position: relative;
}
.mmilo-landing--product{
  padding: 12px;
  overflow: hidden;
  box-sizing: border-box;
  min-height: var(--mmilo-landing-card-min-height);
  height: var(--mmilo-landing-card-min-height);
}
.mmilo-landing__product-link{
      display: block;
      color: inherit;
      height: 100%;
      width: 100%;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      padding: 16px 16px 12px;
      box-sizing: border-box;
    }
  .mmilo-landing__product-image{
      width: 100%;
      flex: 1 1 auto;
      min-height: 0;
      margin-bottom: 12px;
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
      background-color: #ffffff;
    }
  .mmilo-landing__product-body{
    padding: 0;
  }
.mmilo-landing__product-title{
  font-family: "Lexend Deca", "Segoe UI", Arial, sans-serif;
  font-size: 20px;
  margin: 0 0 8px;
  color: #1b1f2a;
}
.mmilo-landing__product-price{
  font-size: 16px;
  color: #4c1d95;
  font-weight: 600;
}
.mmilo-landing__placeholder-title{
  font-family: "Lexend Deca", "Segoe UI", Arial, sans-serif;
  color: #4c1d95;
  font-size: 22px;
  letter-spacing: 0.4px;
  margin: 0;
}
.mmilo-landing-carousel{
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  position: relative;
  perspective: 1200px;
}
.mmilo-landing-carousel__slide .mmilo-landing{
  width: var(--mmilo-landing-card-width);
  max-width: var(--mmilo-landing-card-width);
  min-height: var(--mmilo-landing-card-min-height);
}
.mmilo-landing-carousel__stage{
  height: 520px;
  position: relative;
  transform-style: preserve-3d;
  overflow: visible;
}
.mmilo-landing-carousel__ring{
  position: absolute;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 0.6s ease;
  overflow: visible;
}
.mmilo-landing-carousel__slide{
  position: absolute;
  left: 50%;
  width: 80%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  backface-visibility: hidden;
  overflow: visible;
}
.mmilo-landing-carousel__slide .mmilo-landing{
  margin-left: auto;
  margin-right: auto;
}
.mmilo-landing-carousel__controls{
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 89px;
  position: relative;
  z-index: 2;
}
.mmilo-landing-carousel__btn{
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid rgba(76,29,149,0.2);
  background: linear-gradient(180deg, #ffffff 0%, #f5efff 100%);
  color: #4c1d95;
  font-size: 24px;
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(76,29,149,0.18);
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}
.mmilo-landing-carousel__btn:hover{
  background: #ece2ff;
  transform: translateY(-2px);
  box-shadow: 0 14px 26px rgba(76,29,149,0.22);
}
.mmilo-landing-carousel__btn:active{
  transform: translateY(0);
  box-shadow: 0 8px 16px rgba(76,29,149,0.2);
}
.mmilo-landing-expanded{
  display: none;
  width: 100%;
  justify-content: center;
}
.mmilo-landing-overlay--expanded .mmilo-landing-carousel{
  display: none;
}
.mmilo-landing-overlay--expanded .mmilo-landing-expanded{
  display: flex;
}
.mmilo-landing-expanded .mmilo-landing{
  width: calc(100% - 32px);
  max-width: 900px;
}
.mmilo-landing__grid{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  gap: 28px;
  align-items: start;
  text-align: left;
}
.mmilo-landing__panel{
  text-align: left;
}
.mmilo-landing__form{
  text-align: left;
}
.mmilo-landing__form--hidden{
  display: none;
}
.mmilo-landing--collapsed{
  max-width: var(--mmilo-landing-card-width);
}
.mmilo-landing--collapsed .mmilo-landing__grid{
  grid-template-columns: 1fr;
  text-align: center;
}
.mmilo-landing--collapsed .mmilo-landing__panel{
  text-align: center;
}
.mmilo-landing--collapsed .mmilo-landing__choices{
  justify-items: center;
}
.mmilo-landing--expanded{
  max-width: 900px;
}
.mmilo-landing__cta{
  margin: 18px 0 0;
  font-size: 14px;
  color: #5f6b7a;
}
.mmilo-landing__toggle{
  margin-left: 6px;
  border: 0;
  background: none;
  color: #0b3b9e;
  font-weight: 600;
  text-decoration: underline;
  cursor: pointer;
  padding: 0;
  font-size: 14px;
}
.mmilo-landing__title{
  font-family: "Lexend Deca", "Segoe UI", Arial, sans-serif;
  font-size: 38px;
  margin: 0 0 26px;
  letter-spacing: 0.2px;
  color: #1b1f2a;
}
.mmilo-landing__choices{
  display: grid;
  gap: 16px;
}
.mmilo-landing__card{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 240px;
  padding: 16px 28px;
  border: 2px solid #0b3b9e;
  border-radius: 8px;
  font-weight: 600;
  background: #ffffff;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.mmilo-landing__card--trade{
  background: #5b21b6;
  border-color: #5b21b6;
  color: #ffffff;
}
.mmilo-landing__card--dropshipping{
  border-color: #4c1d95;
  color: #4c1d95;
}
.mmilo-landing__card:hover,
.mmilo-landing__card:focus{
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(0,0,0,0.16);
}
.mmilo-landing__card--trade:hover,
.mmilo-landing__card--trade:focus{
  background: #4c1d95;
  border-color: #4c1d95;
}
.mmilo-landing__card--dropshipping:hover,
.mmilo-landing__card--dropshipping:focus{
  background: #4c1d95;
  color: #ffffff;
}

.mmilo-landing__form .wp-block-jetpack-contact-form{
  margin: 0;
}
.mmilo-landing__form .wp-block-jetpack-contact-form .grunion-field-wrap{
  margin: 0 0 12px;
}
.mmilo-landing__form .contact-form{
  margin: 0;
}
.mmilo-landing__form .contact-form .grunion-field-wrap{
  margin: 0 0 12px;
}
.mmilo-landing__form .wp-block-jetpack-contact-form .wp-block-jetpack-input,
.mmilo-landing__form .wp-block-jetpack-contact-form .jetpack-field__input-element,
.mmilo-landing__form .wp-block-jetpack-contact-form select,
.mmilo-landing__form .wp-block-jetpack-contact-form textarea{
  width: 100%;
  border-radius: 8px;
  border: 1px solid rgba(15,23,42,0.18);
  padding: 12px 14px;
  font-size: 15px;
  background: #f7f9fb;
}
.mmilo-landing__form .contact-form input,
.mmilo-landing__form .contact-form select,
.mmilo-landing__form .contact-form textarea{
  width: 100%;
  border-radius: 8px;
  border: 1px solid rgba(15,23,42,0.18);
  padding: 12px 14px;
  font-size: 15px;
  background: #f7f9fb;
  box-sizing: border-box;
  display: block;
}
.mmilo-landing__form .contact-form .grunion-field{
  width: 100%;
  box-sizing: border-box;
}
.mmilo-landing__form .wp-block-jetpack-contact-form label{
  font-weight: 600;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  display: block;
  margin: 0 0 6px;
}
.mmilo-landing__form .contact-form label{
  font-weight: 600;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  display: block;
  margin: 0 0 6px;
  color: #1b1f2a;
}
.mmilo-landing__form .wp-block-jetpack-contact-form .contact-form__input-error{
  font-size: 12px;
  margin-top: 4px;
}
.mmilo-landing__form .wp-block-jetpack-contact-form .wp-block-button__link{
  width: 100%;
  background: #6d28d9;
  border-radius: 8px;
  padding: 14px 20px;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  font-weight: 600;
  border: 0;
}
.mmilo-landing__form .contact-form__select-wrapper{
  width: 100%;
}
.mmilo-landing__form .contact-form__select-element-wrapper{
  display: block;
  width: 100%;
}
.mmilo-landing__form .contact-form .pushbutton-wide,
.mmilo-landing__form .contact-form button[type="submit"]{
  width: 100%;
  background: #6d28d9;
  color: #ffffff;
  border: 0;
  border-radius: 8px;
  padding: 14px 20px;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  font-weight: 600;
  cursor: pointer;
}
.mmilo-landing__form .contact-form .pushbutton-wide:hover,
.mmilo-landing__form .contact-form button[type="submit"]:hover{
    background: #5b21b6;
  }
  .mmilo-landing__form .contact-form button.is-submitting,
  .mmilo-landing__form .contact-form button[disabled],
  .mmilo-landing__form .contact-form input.is-submitting,
  .mmilo-landing__form .contact-form input[disabled]{
    background: #9aa0a6;
    border-color: #9aa0a6;
    color: #f3f4f6;
    cursor: not-allowed;
    opacity: 0.85;
  }
.mmilo-landing__form .contact-form input[name$="hp_website"],
.mmilo-landing__form .contact-form label[for$="hp_website"],
.mmilo-landing__form .contact-form .grunion-field-text-wrap:has(input[name$="hp_website"]),
.mmilo-landing__form .contact-form input[name$="hp_time"],
.mmilo-landing__form .contact-form label[for$="hp_time"],
.mmilo-landing__form .contact-form .grunion-field-text-wrap:has(input[name$="hp_time"]){
  display: none;
}
.mmilo-request-form-page [name$="hp_website"],
.mmilo-request-form-page [for$="hp_website"],
.mmilo-request-form-page [name$="hp_time"],
.mmilo-request-form-page [for$="hp_time"],
.mmilo-request-form-page .grunion-field-honeypot,
.mmilo-request-form-page .contact-form__honeypot{
  display: none !important;
}
.mmilo-request-form-page .grunion-field-wrap:has(input[name$="-"]),
.mmilo-request-form-page input[name$="-"],
.mmilo-request-form-page label[for$="-"]{
  display: none !important;
}

@media (max-width: 900px){
  .mmilo-landing__grid{
    grid-template-columns: 1fr;
  }
  .mmilo-landing{
    text-align: center;
  }
  .mmilo-landing__panel,
  .mmilo-landing__form{
    text-align: left;
  }
  .mmilo-landing-carousel{
    max-width: 100%;
    perspective: 900px;
  }
  .mmilo-landing-carousel__stage{
    height: auto;
    min-height: 520px;
    padding-top: 32px;
  }
  .mmilo-landing-carousel__slide{
    width: 100%;
  }
  .mmilo-landing-carousel__slide .mmilo-landing{
    width: var(--mmilo-landing-card-width-mobile);
    max-width: var(--mmilo-landing-card-width-mobile);
    min-height: var(--mmilo-landing-card-min-height-mobile);
  }
  .mmilo-landing-carousel__controls{
    margin-top: 109px;
  }
  .mmilo-landing--product{
    min-height: var(--mmilo-landing-card-min-height-mobile);
    height: var(--mmilo-landing-card-min-height-mobile);
  }
}
.mmilo-landing__content{
  margin: 24px auto 0;
  max-width: 720px;
  text-align: left;
}
.mmilo-landing__widgets{
  margin-top: 32px;
}
.mmilo-home-page .page-title,
.mmilo-home-page .entry-title{
  display: none;
}
.mmilo-home-banners{
  width: 100%;
  display: grid;
  gap: 16px;
  margin: 24px 0;
}
.mmilo-home-section{
  padding-left: var(--mmilo-section-pad-left, 20px);
  padding-right: var(--mmilo-section-pad-right, 20px);
  box-sizing: border-box;
}
.mmilo-home-banner{
  position: relative;
  border-radius: 0;
  overflow: hidden;
  box-shadow: none;
}
.mmilo-home-banner__image{
  display: block;
  width: 100%;
  height: var(--mmilo-banner-height, auto);
  object-fit: var(--mmilo-banner-fit, contain);
  object-position: var(--mmilo-banner-position, center);
}
@media (max-width: 900px){
  .mmilo-home-banner__image{
    height: var(--mmilo-banner-height-mobile, var(--mmilo-banner-height, auto));
    object-fit: var(--mmilo-banner-fit-mobile, var(--mmilo-banner-fit, contain));
    object-position: var(--mmilo-banner-position-mobile, var(--mmilo-banner-position, center));
  }
}
.mmilo-home-banner::after{
  content: none;
}
.mmilo-home-banner__link{
  position: absolute;
  inset: 0;
  display: flex;
  align-items: var(--mmilo-banner-align, flex-end);
  justify-content: var(--mmilo-banner-justify, flex-start);
  padding: 20px 24px;
  color: #ffffff;
  z-index: 1;
  text-align: var(--mmilo-banner-text, left);
}
.mmilo-home-banner__link--top-left{
  --mmilo-banner-align: flex-start;
  --mmilo-banner-justify: flex-start;
  --mmilo-banner-text: left;
}
.mmilo-home-banner__link--top-center{
  --mmilo-banner-align: flex-start;
  --mmilo-banner-justify: center;
  --mmilo-banner-text: center;
}
.mmilo-home-banner__link--top-right{
  --mmilo-banner-align: flex-start;
  --mmilo-banner-justify: flex-end;
  --mmilo-banner-text: right;
}
.mmilo-home-banner__link--center-left{
  --mmilo-banner-align: center;
  --mmilo-banner-justify: flex-start;
  --mmilo-banner-text: left;
}
.mmilo-home-banner__link--center{
  --mmilo-banner-align: center;
  --mmilo-banner-justify: center;
  --mmilo-banner-text: center;
}
.mmilo-home-banner__link--center-right{
  --mmilo-banner-align: center;
  --mmilo-banner-justify: flex-end;
  --mmilo-banner-text: right;
}
.mmilo-home-banner__link--bottom-left{
  --mmilo-banner-align: flex-end;
  --mmilo-banner-justify: flex-start;
  --mmilo-banner-text: left;
}
.mmilo-home-banner__link--bottom-center{
  --mmilo-banner-align: flex-end;
  --mmilo-banner-justify: center;
  --mmilo-banner-text: center;
}
.mmilo-home-banner__link--bottom-right{
  --mmilo-banner-align: flex-end;
  --mmilo-banner-justify: flex-end;
  --mmilo-banner-text: right;
}
@media (max-width: 900px){
  .mmilo-home-banner__link{
    align-items: var(--mmilo-banner-align-mobile, var(--mmilo-banner-align, flex-end));
    justify-content: var(--mmilo-banner-justify-mobile, var(--mmilo-banner-justify, flex-start));
    text-align: var(--mmilo-banner-text-mobile, var(--mmilo-banner-text, left));
  }
}
.mmilo-home-banner__card{
  display: inline-flex;
  flex-direction: column;
  gap: 6px;
  max-width: min(420px, 92%);
  padding: 14px 18px;
  background: rgba(109, 42, 111, 0.85);
  color: #fff;
}
.mmilo-home-banner__title{
  font-family: inherit;
  font-size: 22px;
  font-weight: 600;
}
.mmilo-home-banner__desc{
  font-size: 15px;
  line-height: 1.4;
  opacity: 0.95;
}
@media (max-width: 900px){
  .mmilo-home-banner{
    min-height: 180px;
  }
  .mmilo-home-banner__title{
    font-size: 20px;
  }
}

@media (min-width: 1024px){
  .home .site-main .container{ max-width:80%; }
}

@media (min-width: 1024px){
  .hero-banner{
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}

/* Topbar */
.topbar{ background:#452041; color:#ffffff; font-size:16px; }
/* .topbar .container{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 20px; padding-left: 5px; margin-left: 5px; margin-right: 5px;} */
.topbar .container{
  max-width: none;     /* remove the 1200px cap */
  width: 100%;
  margin: 0;           /* no centering */
  padding: 10px 20px;  /* use padding, not margins, for inner spacing */
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.topbar__left{ display:flex; gap:20px; align-items:center; }
.topbar__contact{ color:#ffffff; padding: 2px; }
.topbar__right .menu{ display:flex; gap:18px; flex-wrap:wrap; padding:10px 0; list-style:none; margin:0; }
.topbar__right .menu > li{ position:relative; }

/* Header */
.header-branding-widget img { 
  max-height: 200px; 
  height: auto; 
  width: auto; 
  display: block; 
}

/* Masthead */
.masthead{ display:flex; align-items:center; justify-content:space-between; padding:16px 0; gap:16px; }
.logo{ font-size:24px; font-weight:700; color:var(--accent); }

.search-form {display: flex; align-items: stretch;}
.search-form input[type="search"],
.search-form button[type="submit"] {
  box-sizing: border-box;          /* include borders in height */
  height: 54px;                    /* pick a height you like */
  font-size: 16px;
  border: 1px solid #ddd;
}

.search-form input[type="search"] {
  padding: 0 12px;
  border-right: 0;                 /* remove double border between them */
  border-radius: 6px 0 0 6px;
  /* -webkit-appearance: none;  */
  width: 620px;       /* helps Safari align heights */
}

.search-form button[type="submit"] {
  padding: 0 16px;                 /* horizontal padding only */
  display: inline-flex;            /* center the label nicely */
  align-items: center;
  justify-content: center;
  border-radius: 0 6px 6px 0;
  line-height: normal;             /* avoid weird tall buttons on some UAs */
  cursor: pointer;
  background-color: #371a34;
  color: #ffffff
}

.mini-cart, .user-profile{
  display: inline-flex;
  align-items: center;   /* centers icon + total as row items */
  gap: 0;
}

/* Catalog page layout */
.page-entry--catalog .page-content--catalog{
  display:grid;
  grid-template-columns:320px 1fr;
  gap:16px;
  padding-left:15px;
  align-items:start;
}

.page-entry--catalog .page-title{
  margin-left:20px;
  margin-top:16px;
  margin-bottom:16px;
}

.page-entry--catalog .page-content--catalog p{
  margin:0;
  padding:0;
}

.page-entry--catalog .page-content--catalog p:empty{
  display:none;
}

.page-entry--catalog .page-content--catalog > .woocommerce{
  grid-column:2;
  grid-row:1 / -1;
  align-self:start;
}

.page-entry--catalog .page-content--catalog > :not(.woocommerce){
  grid-column:1;
}

.page-entry--catalog .mmilo-chipbar,
.page-entry--catalog .mmilo-filter-reset,
.page-entry--catalog .mmilo-acc{
  margin:0 0 12px 0;
}

.page-entry--catalog .page-content--catalog h4{
  margin:0px 0px 4px 0px;
}

.page-entry--catalog .mmilo-filter-reset{
  text-align:right;
}

@media (max-width: 900px){
  .page-entry--catalog .page-content--catalog{
    grid-template-columns:1fr;
    padding-left:0;
  }
  .page-entry--catalog .page-content--catalog > *{
    grid-column:1 !important;
  }
}

/* Masthead: stack items on mobile, keep cart+account on one row */
@media (max-width: 768px){
  .masthead{
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
      "branding branding"
      "search   search"
      "cart     account";
    gap: 10px 12px;
    padding-left: 10px;
    padding-right: 10px;
    align-items: center;
  }
  .masthead .branding{
    grid-area: branding;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .masthead .search{ grid-area: search; width: 100%; }
  .masthead .mini-cart{ grid-area: cart; }
  .masthead .mini-account{ grid-area: account; }
  .masthead .search-form{ width: 100%; }
  .masthead .mini-cart,
  .masthead .mini-account{
    justify-content: flex-start;
  }
  .masthead .mini-cart{
    gap: 0;
  }
  .masthead .mini-account{
    gap: 8px;
    justify-self: end;
  }
}



.mini-cart__total{
  display: inline-flex;          /* make it a flex container */
  align-items: center;           /* vertical center inside the pill */
  justify-content: center;       /* horizontal center */
  block-size: 54px;              /* = height */
  min-inline-size: 40px;         /* starts square, can grow with price */
  padding: 0 8px;                /* room for £ and digits */
  border-radius: 0 8px 8px 0;
  background-color: #371a34;
  color: #fff;
  white-space: nowrap;
  box-sizing: border-box;
  font-weight: 600;
  padding-right: 10px;
}

.mini-cart__total.mmilo-min-ok{
  color: #1f8b3a;
}

.mini-cart__total.mmilo-min-not{
  color: #c0392b;
}

.mmilo-min-order__notice{
  margin: 0 0 12px;
  padding: 12px 16px;
  border: 1px solid #c0392b;
  background: #fff5f5;
  color: #7a1f1f;
  border-radius: 6px;
  font-weight: 600;
}

.single-product .woocommerce-info,
.single-product .woocommerce-notice.woocommerce-notice--info{
  display: none;
}

.mmilo-request-form-page .mmilo-landing__form--static{
  padding-left: 100px;
  padding-right: 100px;
}
.mmilo-request-feed-page .mmilo-landing__form--static{
  padding-left: 4px;
  padding-right: 4px;
}

.mmilo-request-form-page .contact-form,
.mmilo-request-form-page .contact-form-submission{
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 32px 36px;
    max-width: 760px;
    margin: 32px auto 20px;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.08);
  }

.mmilo-request-form-page .contact-form-submission{
    font-size: 18px;
    line-height: 1.6;
    color: #2b1f29;
  }

.mmilo-request-form-page .contact-form-submission:not(.submission-success){
  display: none;
}

.mmilo-request-form-page .contact-form-submission [data-form-field*="hp_website"],
.mmilo-request-form-page .contact-form-submission [data-field*="hp_website"],
.mmilo-request-form-page .contact-form-submission [id*="hp_website"],
.mmilo-request-form-page .contact-form-submission [class*="hp_website"]{
  display: none !important;
}

.mmilo-request-form-page .contact-form-submission .contact-form-submission__title,
.mmilo-request-form-page .contact-form-submission h2{
  font-size: 28px;
  margin: 0 0 12px;
}

.mmilo-request-form-page .page-title{
  text-align: center;
  max-width: 760px;
  margin: 24px auto 16px;
}

@media (max-width: 600px){
  .mmilo-request-form-page .mmilo-landing__form--static{
    padding-left: 4px;
    padding-right: 4px;
  }
}

.mini-cart__total .woocommerce-Price-amount,
.mini-cart__total .woocommerce-Price-currencySymbol,
.mini-cart__total span{
  font-size: 22px;
  line-height: 1;   /* avoids extra vertical space */
  padding: 0;       /* optional: remove the 2px padding you had */
}

/* the bordered box that the emoji must not spill out of */
.mini-cart__link, .mini-account__link{
  position: relative;
  box-sizing: border-box;
  inline-size: 50px;          /* set the box size you want */
  block-size: 54px;
  border: 1px solid #ddd;
  border-radius: 8px 0px 0px 8px;         /* or 50% for a circle */
  display: grid;
  place-items: center;
  overflow: hidden;           /* just in case different emoji metrics */
  container-type: size;       /* <-- enables container query units */
}

.mini-account__link{
  border-radius: 8px;
  font-size: 32px;
}

.mini-account{
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.mini-account__icon{ display:block; line-height:1; }

.mini-account__label{ font-size: 14px; color: var(--text, #111); }
.mini-account__logout,
.mini-account__signin{
  font-size: 24px;
  text-decoration: none;
  padding: 0 14px;
  border: 1px solid #ddd;
  border-radius: 8px;
  color: #fff;
  background: #371a34;
  height: 54px;
  line-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 600px){
  .mmilo-stock-label--desktop{ display:none !important; }
  .mmilo-stock-label--mobile{ display:inline !important; }

  /* optionally hide the text on small screens */
  .mini-account__label{ display: none; }
  .mini-cart__total{
    block-size: 47px;
    padding-right: 8px;
  }
  .mini-cart__link,
  .mini-account__link{
    block-size: 47px;
    inline-size: 46px;
  }
  .mini-account__logout,
  .mini-account__signin{
    height: 47px;
    line-height: 47px;
    display: inline-flex;
    align-items: center;
  }
}

/* scale to the maximum that fits the container’s smaller dimension */
.mini-cart__icon{
  line-height: 1;
  display: block;
  font-size: 34px;
  /* alternative with a little margin: font-size: 90cq  min; */
  color: #371a34;
}


.mini-cart__icon img, .mini_account__icon img{ margin: 0px 0px 0px 0px;}

/* badge (optional) */
.mini-cart__count{
  position: absolute; top: -6px; right: -8px;
  min-width: 18px; height: 18px; line-height: 18px;
  padding: 0 6px; font-size: 12px; border-radius: 999px;
  background: var(--accent); color: #fff; text-align: center;
}


/* Primary nav */
.primary-nav{ border-top:1px solid #eee; border-bottom:1px solid #eee; }
.primary-nav .container{
  max-width: none;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
}
/* .primary-nav .menu{ display:flex; gap:18px; flex-wrap:wrap; padding:10px 0; list-style:none; margin:0; }
.primary-nav .menu > li{ position:relative; }
.primary-nav .menu > li > a{ display:block; padding:8px 0; font-weight:600; }
.primary-nav .sub-menu{ position:absolute; top:100%; left:0; background:#fff; border:1px solid #eee; border-radius:8px; padding:8px 0; list-style:none; display:none; min-width:200px; box-shadow:0 8px 24px rgba(0,0,0,.06); z-index:20; }
.primary-nav .menu > li:hover > .sub-menu{ display:block; }
.primary-nav .sub-menu li a{ display:block; padding:8px 12px; font-size:14px; white-space:nowrap; } */
.primary-nav .menu{
  display: flex;
  justify-content: center;   /* ⬅ center horizontally */
  align-items: center;       /* ⬅ center vertically */
  align-content: center;     /* ⬅ if it wraps onto 2+ lines */
  gap: 18px;
  flex-wrap: wrap;
  padding: 10px 0;
  list-style: none;
  margin: 0;
}
.primary-nav .menu > li > a{
  display: block;
  padding: 8px 0;
  font-weight: 600;
  text-align: center;        /* center link text */
}
.primary-nav .menu > li{ position: relative; }
.primary-nav .sub-menu{ position:absolute; top:100%; left:0; background:#fff; border:1px solid #eee; border-radius:8px; padding:8px 0; list-style:none; display:none; min-width:200px; box-shadow:0 8px 24px rgba(0,0,0,.06); z-index:20; }
.primary-nav .menu > li:hover > .sub-menu{ display:block; }
.primary-nav .sub-menu li a{ display:block; padding:8px 12px; font-size:14px; white-space:nowrap; }

/* Mobile full-screen menu */
.mobile-menu-overlay{
  position: fixed;
  inset: 0;
  background: rgba(69,32,65,0.95);
  color: #fff;
  display: none;
  z-index: 2000;
  overflow-y: auto;
}
.mobile-menu-overlay.is-open{ display: flex; }
.mobile-menu__inner{
  margin: auto;
  width: min(480px, 100%);
  padding: 16px;
}
.mobile-menu__close{
  background: transparent;
  border: 1px solid rgba(255,255,255,0.3);
  color: #fff;
  font-size: 24px;
  border-radius: 8px;
  padding: 4px 12px;
  cursor: pointer;
}
.mobile-menu__sections{
  margin-top: 16px;
}
.mobile-menu__nav{
  list-style: none;
  padding: 0;
  margin: 0 0 16px;
  display: grid;
  gap: 10px;
}
.mobile-menu__nav li{
  padding: 2px 0;
}
.mobile-menu__nav li a{
  display: block;
  padding: 6px 12px;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 10px;
  color: #fff;
  text-decoration: none;
}
.mobile-menu__nav li .sub-menu{
  list-style: none;
  padding: 6px 0 0 12px;
  margin: 0;
  display: none;
}
.mobile-menu__nav li.is-open > .sub-menu{
  display: block;
}
.mobile-menu__nav li.menu-item-has-children > a{
  position: relative;
  padding-right: 28px;
}
.mobile-menu__nav li.menu-item-has-children > a::after{
  content: '▾';
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  opacity: 0.8;
}
.mobile-menu__nav li.menu-item-has-children.is-open > a::after{
  transform: translateY(-50%) rotate(180deg);
}
.mobile-menu__extras{
  list-style: none;
  padding: 0 0 16px;
  margin: 0;
  display: grid;
  gap: 10px;
}
.mobile-menu__extras li{
  padding: 2px 0;
}
.mobile-menu__extras li a{
  display: block;
  padding: 6px 12px;
  background: rgba(255,255,255,0.12);
  border-radius: 10px;
  color: #fff;
  text-decoration: none;
}
.mobile-menu__extras li a:hover,
.mobile-menu__nav li a:hover{
  background: rgba(255,255,255,0.18);
}
body.mobile-menu-open{ overflow: hidden; }

/* Feature overlay */
.feature-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.5);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 2100;
}
.feature-overlay.is-open{ display: flex; }
.feature-overlay__inner{
  position: relative;
  background: #fff;
  color: #111;
  padding: 16px;
  border-radius: 12px;
  max-width: 320px;
  width: 90%;
  box-shadow: 0 12px 30px rgba(0,0,0,0.18);
}
.feature-overlay__close{
  border: 0;
  background: transparent;
  font-size: 20px;
  cursor: pointer;
  position: absolute;
  top: 10px;
  right: 12px;
}
.feature-overlay__title{
  margin: 0 0 8px;
  font-size: 18px;
}
.feature-overlay__desc{
  margin: 0;
  font-size: 14px;
  color: #444;
}
.topbar-primary-mobile{ display:none; }
.mobile-nav-toggle{
  display: none;
  border: 1px solid #ddd;
  background: #fff;
  border-radius: 8px;
  padding: 8px 12px;
  font-size: 16px;
  cursor: pointer;
}

@media (max-width: 768px){
  /* Show primary nav inside topbar; hide main nav */
  .primary-nav{ display: none; }
  .topbar-primary-mobile{
    display: none;
    flex-direction: column;
    gap: 8px;
    padding: 8px 0 0;
    width: 100%;
  }
  .topbar__right.is-open .topbar-primary-mobile{
    display: flex;
  }
  .topbar-primary-mobile li{ list-style: none; }
  .topbar-primary-mobile a{ display: block; padding: 8px 0; }
  .topbar__contact{
    font-size: 13px;
  }
  .topbar .topbar__right{
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }
  /* Hide the desktop topbar menu on mobile */
  .topbar__right{
    display: none !important;
  }
  .primary-nav .menu{
    display: none;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .primary-nav.is-open .menu{
    display: flex;
  }
  .mobile-nav-toggle{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 0;
    align-self: center;
  }
}


/* Top nav */
.topbar__right .menu{ display:flex; gap:18px; flex-wrap:wrap; padding:10px 0; list-style:none; margin:0; }
.topbar__right .menu > li{ position:relative; }

/* Hero */
.hero{ background:linear-gradient(135deg,#fafafa,#fff); border-bottom:1px solid #f0f0f0; }
.hero__inner{ display:grid; grid-template-columns:1.2fr 1fr; align-items:center; gap:24px; padding:32px 0; }
.hero__title{ font-size:36px; margin:0 0 8px; }
.hero__subtitle{ color:var(--muted); margin:0 0 16px; }
.hero__image{ width:100%; height:280px; background:#eaeaea; border-radius:16px; }
.btn{ display:inline-block; padding:10px 16px; border-radius:999px; border:1px solid var(--accent); }
.btn--primary{ background:var(--accent); color:#fff; }
.btn--secondary{ background:transparent; color:var(--accent); }

/* Features */
.features{ background:#fff; }
.features__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
  gap:16px;
  padding:16px 10px;
  max-width:var(--container);
  margin:0 auto;
}
.features__grid--full{
  max-width:none;
  width:100%;
}
.feature{ display:flex; gap:12px; align-items:center; background:#fafafa; border:1px solid #f0f0f0; padding:12px; border-radius:12px; }
.feature__icon{ font-size:22px; }
.feature-desc{ display:none; }

/* Content */
.site-main{
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
  padding-left: 6px;
  padding-right: 6px;
}
.site-main .container{ padding:0px 0; }
.section-title{ font-size:24px; margin:24px 0 16px; }
.aac-pc__title{
  font-family: inherit;
  font-size:28px;
  font-weight:600;
  letter-spacing:0.01em;
  text-transform:none;
  margin:10px 0 18px;
  color:#2b1a2d;
  position:relative;
  padding-bottom:10px;
}
.aac-pc__title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:64px;
  height:3px;
  background:linear-gradient(90deg, #6d2a6f, #b04aa2);
  border-radius:999px;
}

/* Product card badges */
.mmilo-card__inner{
  position: relative;
}
.mmilo-card__imagewrap{
  display: block;
  position: relative;
}
.woocommerce ul.products li.product{
  position: relative;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link{
  position: relative;
}
.mmilo-card__badges{
  position: absolute;
  inset: 8px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 6px;
  z-index: 2;
}
.mmilo-badge{
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  color: #0f172a;
  background: rgba(255,255,255,0.92);
  box-shadow: 0 4px 10px rgba(0,0,0,0.08);
  border: 1px solid rgba(0,0,0,0.06);
}
.mmilo-badge__text--mobile{ display: none; }
.mmilo-badge--uk{
  background: #d1f7d6;
  border-color: #9ed6a8;
}
.mmilo-badge--eu{
  background: #fff4c2;
  border-color: #e9d48a;
}
.mmilo-badge--hot{
  background: #ffe3e0;
  border-color: #f3b3aa;
  color: #b42318;
  font-size: 11px;
  padding: 4px 8px;
  margin-bottom: auto;
}

/* Woo basics */
/*.woocommerce ul.products{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.woocommerce ul.products li.product{ border:1px solid #eee; border-radius:12px; padding:12px; }
.woocommerce ul.products li.product .button{ width:100%; border-radius:10px; }
.woocommerce div.product .product_title{ font-size:28px; }
.product-single__grid{ display:grid; grid-template-columns:1.1fr .9fr; gap:24px; }
.product-single__gallery{ position:sticky; top:16px; }*/
/* Flexible product grid: never gets skinny */
/* Make the UL a true grid and remove default list spacing */
.woocommerce ul.products{
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: 20px;
  list-style: none;  /* <-- removes bullets */
  padding: 0;        /* <-- fixes the "empty first column" */
  margin: 0;
}

/* Woo adds ::before/::after for float-clearing; they occupy the first grid cell */
.woocommerce ul.products::before,
.woocommerce ul.products::after{
  content: none !important;   /* <-- fixes the "empty first row" */
  display: none !important;
}

/* Neutralize Woo's column/float widths so grid controls layout */
.woocommerce ul.products[class*="columns-"] li.product,
.woocommerce ul.products li.product{
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  display: flex;
  flex-direction: column;
}

/* Related products: keep sensible widths when few items */
.single-product .related ul.products{
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 260px));
  justify-content: flex-start;
  gap: 16px;
  padding: 0;
  margin: 0;
}
.single-product .related ul.products li.product{
  width: 100% !important;
  max-width: 260px;
  margin: 0 auto !important;
  float: none !important;
  flex: 0 0 auto !important;
}

/* Keep thumbnails uniform and not warped */
.woocommerce ul.products li.product a img{
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 10px;
}

/* Footer */
.site-footer{ background:#0b0f19; color:#cbd5e1; margin-top:auto; }
.footer__grid{ display:grid; grid-template-columns:1fr 1fr 1fr; padding:32px 0; }
.footer__bottom{ border-top:1px solid rgba(255,255,255,.08); padding:12px 0 24px; color:#94a3b8; }
.footer__bottom .container{ padding-left:10px; padding-right:10px; }
footer .footer__bottom small{
  display: inline-block;
  padding-left: 10px;
  padding-right: 10px;
}
footer h4{ margin:2px 0; }
footer ul{ margin-top:4px; margin-bottom:4px; }
footer .footer__grid ul{ padding-left:10px; padding-right:10px; }
footer .footer__grid h4{ padding-left:10px; padding-right:10px; }
@media (max-width: 768px){
  .footer__grid{
    grid-template-columns: 1fr;
    gap: 16px;
    padding-left: 6px;
    padding-right: 6px;
  }
  .footer__bottom .container small{
    display: block;
  }
}

/* Responsive */
@media (max-width: 960px){
  .hero__inner{ grid-template-columns:1fr; }
  .features__grid{ grid-template-columns:repeat(2,1fr); }
  .woocommerce ul.products{ grid-template-columns:repeat(2,1fr); }
  .product-single__grid{ grid-template-columns:1fr; }
}
@media (max-width: 600px){
  .pswp__preloader{
    display: none !important;
  }
  .single-product .related ul.products{
    justify-content: center;
  }
  .mmilo-card__badges{
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: flex-end;
    align-content: flex-end;
    gap: 4px;
  }
  .mmilo-badge--hot{
    position: absolute;
    top: 0;
    right: 0;
    margin-bottom: 0;
  }
  .mmilo-badge{
    font-size: 10px;
    padding: 4px 8px;
  }
  .mmilo-badge__text--desktop{ display: none; }
  .mmilo-badge__text--mobile{ display: inline; }
  .features__grid{
    display:flex;
    flex-wrap:nowrap;
    gap:8px;
    justify-content:center;
    overflow-x:auto;
    padding-bottom:6px;
  }
  .features__grid.features__grid--full{
    padding-top: 1px;
  }
  .feature{
    padding:6px;
    gap:6px;
    width:40px;
    height:40px;
    justify-content:center;
    cursor:pointer;
  }
  .feature__icon{ font-size:20px; }
  .feature__text{ display:none; }
  .feature-desc{ display:none; }
  .feature-desc.is-visible{
    display:block;
    margin-top:6px;
    font-size:14px;
    color:#333;
    text-align:center;
  }
  .search input[type="search"]{ width:100%; }
}


/* === Hero Banner === */
.hero-banner-wrap{
  width: 100%;
  margin: 0;
  padding: 0;
  line-height: 0;
}
.hero-banner{
    position: relative;
    color: #fff;
    display: grid;
    align-items: center;
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-top: var(--hero-mar, 0);
    margin-bottom: var(--hero-mar, 0);
    height: auto;
    max-height: var(--hero-height, 600px);
    aspect-ratio: var(--hero-aspect, 16 / 9);
    padding: var(--hero-pad, 0);
    overflow: hidden;

    /* Background image + overlay */
    background-image:

    var(--hero-image, none);
  background-size: 100% auto;
  background-position: 50% var(--hero-crop-y, 0%);
  background-repeat: no-repeat;
}

.hero-banner__inner{ padding: 40px 0 42px; }
.hero-banner__copy{ max-width: 720px; }
.hero-banner__title{ font-size: clamp(28px, 4.2vw, 44px); margin: 0 0 8px;}
.hero-banner__sub{ font-size: clamp(16px, 2.2vw, 20px); color: #e5e7eb; margin: 0 0 16px; }

.hero-banner__cta.btn{
  display: inline-block;
  padding: 11px 18px;
  border-radius: 999px;
  background: var(--accent, #0f172a);
  color: #fff;
  border: 1px solid rgba(255,255,255,.2);
}

/* Keep hero flush to nav and features */
.primary-nav{ margin-bottom: 0; }
.hero-banner{ margin-top: 0; margin-bottom: 0; }
.hero-banner + .features{ margin-top: 0; }
.features{ margin-top: 0; padding-top: 0; }
.features__grid{ padding-top: 0; }

@media (max-width: 640px){
  .hero-banner{
    aspect-ratio: 16 / 9;
    height: auto;
    background-image: var(--hero-image-mobile, var(--hero-image));
    background-size: cover;
    background-position: center;
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-top: var(--hero-mar, 0);
    margin-bottom: var(--hero-mar, 0);
    padding: var(--hero-pad, 0);
  }
  .hero-banner__inner{ padding: 16px 0 18px; }
}


/* === Product Category Cards Widget === */
.aac-cat-grid{
  --aac-cols: 3;
  --aac-aspect: 4 / 3;
  --aac-ovl: .35;
  display: grid;
  grid-template-columns: repeat(var(--aac-cols), minmax(0,1fr));
  gap: 16px;
  padding: 8px 0;
}

.aac-cat-card{
  display: block;
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background: #f2f2f2;
  box-shadow: 0 8px 24px rgba(0,0,0,.04);
  transition: transform .2s ease, box-shadow .2s ease;
}
.aac-cat-card:hover{ transform: translateY(-2px); box-shadow: 0 12px 28px rgba(0,0,0,.06); }

.aac-cat-card__media{
  position: relative;
  display: block;
  aspect-ratio: var(--aac-aspect);
}

.aac-cat-card__img{
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
}

.aac-cat-card__placeholder{
  display:block; width:100%; height:100%;
  background: repeating-linear-gradient(45deg,#eee,#eee 10px,#f7f7f7 10px,#f7f7f7 20px);
}

.aac-cat-card__overlay{
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,var(--aac-ovl)), rgba(0,0,0,0) 60%);
}

.aac-cat-card__title{
  position: absolute; left: 12px; bottom: 12px;
  color: #fff; font-weight: 700;
  font-size: clamp(16px, 1.8vw, 20px);
  text-shadow: 0 1px 2px rgba(0,0,0,.2);
  z-index: 1;
}

/* Responsive tweak */
@media (max-width: 900px){
  .aac-cat-grid{
    --aac-cols: 1 !important;
    grid-template-columns: 1fr !important;
  }
}

/* === Product Carousel (AAC) === */
.aac-pc{ position: relative; }
.aac-pc__viewport{ overflow: hidden; }
.aac-pc__track{
  display: grid;
  grid-template-columns: repeat(var(--page-size, 5), minmax(0, 1fr)); /* ← fixed cols */
  gap: 16px;
  list-style: none;
  padding: 0;
  margin: 0;
}

@media (max-width: 768px){
  /* On mobile, stack cards vertically while keeping page-size logic */
  .aac-pc__track{
    grid-template-columns: 1fr;
  }
}

.aac-pc__card.is-hidden{ display: none !important; }

.aac-pc__card{
  display: block;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 12px;
  overflow: hidden;
  min-width: 0; /* avoid overflow in grid */
}

.aac-pc__thumb{ display:block; aspect-ratio: 1 / 1; background:#f7f7f7; }
.aac-pc__thumb img{ width:100%; height:100%; object-fit: cover; display:block; }

.aac-pc__meta{ padding: 10px; }
.aac-pc__title{ display:block; font-weight: 600; color:#111; margin:0 0 6px; }
.aac-pc__price{ color:#0b0f19; font-weight:700; }

.aac-pc__controls{
  display:flex; justify-content:flex-end; gap:8px; margin-top:10px;
}
.aac-pc__prev, .aac-pc__next{
  cursor:pointer;
  border:1px solid #ddd; background:#fff; border-radius:8px; width:36px; height:36px;
  display:grid; place-items:center; font-size:18px; line-height:1;
}
.aac-pc__prev:disabled, .aac-pc__next:disabled{ opacity:.4; cursor:not-allowed; }

/* hide items by page via class */
.aac-pc__card.is-hidden{ display: none !important; }



/* Scope everything to your wrapper */
.wp-block-group.myaccount-wrap .u-columns{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}
@media (max-width: 720px){
  .wp-block-group.myaccount-wrap .u-columns{
    grid-template-columns: 1fr;
  }
}

/* Card styling for Login (left) + Register (right) */
.wp-block-group.myaccount-wrap .u-column1,
.wp-block-group.myaccount-wrap .u-column2{
  background: #fff;
  border: 1px solid #eee;
  border-radius: 12px;
  padding: 20px;
}

/* Headings */
.wp-block-group.myaccount-wrap h2{
  font-size: 20px;
  margin: 0 0 12px;
}

/* Inputs */
.wp-block-group.myaccount-wrap .woocommerce form .input-text,
.wp-block-group.myaccount-wrap .woocommerce form input[type="text"],
.wp-block-group.myaccount-wrap .woocommerce form input[type="email"],
.wp-block-group.myaccount-wrap .woocommerce form input[type="password"]{
  width: 100%;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 10px 12px;
  box-sizing: border-box;
}

/* Buttons */
.wp-block-group.myaccount-wrap .woocommerce .button,
.wp-block-group.myaccount-wrap .woocommerce button.button,
.wp-block-group.myaccount-wrap .woocommerce .woocommerce-Button{
  background: var(--accent, #0f172a);
  color: #fff;
  border: 1px solid transparent;
  border-radius: 10px;
  padding: 10px 16px;
  cursor: pointer;
}
.wp-block-group.myaccount-wrap .woocommerce .button:hover{ opacity: .92; }

/* Spacing */
.wp-block-group.myaccount-wrap .form-row{ margin-bottom: 12px; }
.wp-block-group.myaccount-wrap .woocommerce-LostPassword{ margin-top: 8px; }


/* ===== My Account: layout & base ===== */
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation ul{
  list-style: none;
  margin: 0;
  padding: 0;

  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
}

.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation li{
  margin: 0; /* kill default <li> spacing */
}

.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation a{
  display: flex;
  align-items: center;
  gap: 10px;

  background: #fff;
  border: 1px solid #eee;
  border-radius: 12px;
  padding: 12px 14px;

  text-decoration: none;
  color: #111;
  font-weight: 600;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation a:hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(0,0,0,.05);
  border-color: #e6e6e6;
}

/* Active state */
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation .is-active a{
  border-color: var(--accent, #0f172a);
  box-shadow: 0 6px 14px rgba(15,23,42,.08);
}

/* Little icon before each item (emoji for simplicity; swap to SVG if you like) */
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation a::before{
  content: '•';
  font-size: 18px;
  line-height: 1;
  display: inline-block;
  width: 1.2em; text-align: center;
  opacity: .9;
}

/* Per-endpoint icons */
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation-link--dashboard a::before{ content:'🏠'; }
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation-link--orders a::before{ content:'📦'; }
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation-link--downloads a::before{ content:'⬇️'; }
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation-link--edit-address a::before{ content:'🏷️'; }
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation-link--payment-methods a::before{ content:'💳'; }
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation-link--edit-account a::before{ content:'👤'; }
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation-link--customer-logout a::before{ content:'↩️'; }

/* Content panel */
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-content{
  background: #fff;
  border: 1px solid #eee;
  border-radius: 12px;
  padding: 20px;
  margin-top: 16px;
}

/* Headings inside content */
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-content h2,
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-content h3{
  margin-top: 0;
}

/* Orders table styling */
.wp-block-group.myaccount-wrap .woocommerce table.shop_table{
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #eee;
}
.wp-block-group.myaccount-wrap .woocommerce table.shop_table th{
  background: #fafafa;
  font-weight: 600;
}
.wp-block-group.myaccount-wrap .woocommerce table.shop_table td,
.wp-block-group.myaccount-wrap .woocommerce table.shop_table th{
  padding: 12px 14px;
}

/* Buttons within account area */
.wp-block-group.myaccount-wrap .woocommerce a.button,
.wp-block-group.myaccount-wrap .woocommerce .button{
  background: var(--accent, #0f172a);
  color: #fff;
  border-radius: 10px;
  border: 1px solid transparent;
  padding: 9px 14px;
}
.wp-block-group.myaccount-wrap .woocommerce a.button:hover{ opacity:.92; }

/* Mobile tightening */
@media (max-width: 640px){
  .wp-block-group.myaccount-wrap .woocommerce-MyAccount-content{ padding:16px; }
  .wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation ul{
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 10px;
  }
  .wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation a{
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 10px;
  }
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation a::before{
  margin: 0 0 4px;
}
}

/* My Account base (frontend pages without block wrapper) */
.woocommerce-account .woocommerce-MyAccount-navigation{
  margin-bottom: 16px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
}
.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation a{
  display: flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 12px;
  padding: 12px 14px;
  text-decoration: none;
  color: #111;
  font-weight: 600;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(0,0,0,.05);
  border-color: #e6e6e6;
}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{
  border-color: var(--accent, #0f172a);
  box-shadow: 0 6px 14px rgba(15,23,42,.08);
}

/* My Account: remove duplicate emojis/pseudo icons */
.wp-block-group.myaccount-wrap .woocommerce-MyAccount-navigation a::before,
.woocommerce-account .woocommerce-MyAccount-navigation a::before{
  content: none !important;
}

/* Align My Account page title with navigation */
.woocommerce-account .page-title{
  margin-left: 0;
  padding-left: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation .myaccount-grid__icon{
  width: 1.4em;
  height: 1.4em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  opacity: .9;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard .myaccount-grid__icon::before{ content:'🏠'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders .myaccount-grid__icon::before{ content:'📦'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads .myaccount-grid__icon::before{ content:'⬇️'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address .myaccount-grid__icon::before{ content:'🏷️'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--payment-methods .myaccount-grid__icon::before{ content:'💳'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account .myaccount-grid__icon::before{ content:'👤'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout .myaccount-grid__icon::before{ content:'↩️'; }

@media (max-width: 720px){
  .woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 10px;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation a{
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 10px;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation .myaccount-grid__icon{
    margin: 0 0 4px;
  }
}

/* Login form width on desktop */
@media (min-width: 901px){
  .woocommerce-account .woocommerce form.login{
    max-width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
  .woocommerce-account .site-main .page-title,
  .woocommerce-account .entry-header{
    max-width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
  .woocommerce-account .woocommerce h2{
    max-width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
}



/* ======= Product Page Tweaks (MMILO) ======= */

/* 1) Variant & Warehouse selectors: taller with padding + tidy borders */
.variations_form .variations select,
select[name="warehouse"], .mmilo-warehouse-field select,
.mmilo-warehouse-select {
  min-height: 46px;
  padding: 8px 12px;
  line-height: 1.2;
  border-radius: 6px;
  border: 1px solid #ddd;
  align-items: left;
}

/* If your theme uses Select2 on these dropdowns */
.variations_form .select2-container .select2-selection--single,
.select2-container--default .select2-selection--single {
  min-height: 46px;
  padding: 6px 10px;
  border-radius: 6px;
  border: 1px solid #ddd;
}
.variations_form .select2-container .select2-selection--single .select2-selection__rendered,
.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 34px; /* visually centers text within 46px total height */
  padding: 0 6px;
}
.variations_form .select2-container .select2-selection__arrow,
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 46px;
}

/* 2) Quantity & Add to Cart same height */
.single-product form.cart .quantity .qty {
  height: 46px;
  padding: 8px 10px;
}
.single-product form.cart .button.single_add_to_cart_button {
  height: 46px;
  line-height: 46px;    /* for non-flex buttons */
  padding: 0 18px;      /* horizontal padding only */
  display: inline-flex; /* keeps text vertically centered */
  align-items: center;
}

/* 3) SKU & Category on separate lines */
.product_meta .sku_wrapper,
.product_meta .posted_in {
  display: block; 
  margin: 4px 0;
}
.product_meta .sku_wrapper .sku,
.product_meta .posted_in a {
  font-weight: 600;
}

/* 4) Top info area right under title (price + dual stock) */
.mmilo-top-info {
  margin: 8px 0 14px;
}

/* 5) Dual stock block (Immediately Available / Available with Lead Time) */
.mmilo-dual-stock {
  margin: 8px 0 0;
  padding: 10px 12px;
  border: 1px solid #eee;
  border-radius: 6px;
  background: #fafafa;
}
.mmilo-dual-stock .mmilo-stock-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 4px 0;
}
.mmilo-dual-stock .mmilo-stock-label { color: #333; }
.mmilo-dual-stock .mmilo-stock-qty   { font-weight: 600; }

/* Left-align variation labels like "Color" */
.variations_form .variations .label,
.variations_form .variations th.label,
.variations_form .variations td.label {
  text-align: left !important;
}

/* Checkout variation list: label and value inline per row */
.woocommerce-checkout .variation,
.woocommerce-cart .variation {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 6px;
  row-gap: 4px;
  margin: 2px 0;
}
.woocommerce-checkout .variation dt,
.woocommerce-checkout .variation dd,
.woocommerce-cart .variation dt,
.woocommerce-cart .variation dd {
  margin: 0;
}
.woocommerce-checkout .variation dd p,
.woocommerce-cart .variation dd p {
  margin: 0;
}

/* Horizontal, scrollable thumb strip */
.mmilo-thumb-strip {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 8px 0;
  -webkit-overflow-scrolling: touch;
}
.mmilo-thumb {
  flex: 0 0 auto;
  border: 1px solid #e3e3e3;
  border-radius: 8px;
  padding: 0;
  background: none;
  cursor: pointer;
}
.mmilo-thumb img {
  display: block;
  width: 80px;
  height: 80px;
  object-fit: cover;
  border-radius: 8px;
}

/* Keep the main image perfectly square in layout (server crop already 1000x1000) */
.woocommerce div.product div.images .woocommerce-product-gallery__image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #ffffff;
}
.woocommerce div.product div.images .woocommerce-product-gallery__image > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.woocommerce div.product div.images .woocommerce-product-gallery__image img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  display: block;
}
.woocommerce div.product div.images .woocommerce-product-gallery__image .zoomImg {
  display: none !important;
}

/* If a theme still renders default thumbs, hide them to avoid duplicates */
/* .woocommerce div.product div.images .flex-control-thumbs {
  display: none !important;
} */


/* Woo thumbs: horizontal, scrollable strip */
.woocommerce div.product div.images .flex-control-thumbs {
  display: flex !important;
  flex-wrap: nowrap;
  gap: 8px;
  overflow-x: auto;
  padding: 8px 0;
  margin: 0;
  list-style: none;
  -webkit-overflow-scrolling: touch;
}
.woocommerce div.product div.images .flex-control-thumbs li {
  flex: 0 0 auto;
  width: 80px;
}
.woocommerce div.product div.images .flex-control-thumbs li img {
  width: 80px;
  height: 80px;
  object-fit: cover;
  border: 1px solid #e3f3e3;
  border-radius: 8px;
  display: block;
  cursor: pointer;
}

/* Keep main image square in layout (your 1000×1000 crop will fill this box) */
.woocommerce div.product div.images .woocommerce-product-gallery__image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #ffffff;
}

@media (min-width: 961px){
  .single-product .woocommerce-product-gallery .flex-viewport,
  .single-product .woocommerce-product-gallery__image,
  .single-product .woocommerce-product-gallery__image > a,
  .single-product .woocommerce-product-gallery__image img {
    width: 600px !important;
    height: 600px !important;
  }
}

@media (max-width: 600px){
  .single-product .woocommerce-product-gallery__wrapper{
    text-align: center;
    width: 100%;
  }
  .single-product .woocommerce-product-gallery__image{
    margin: 0 !important;
    float: left !important;
  }
  .single-product .woocommerce-product-gallery .flex-viewport{
    margin: 0 auto;
  }
  .single-product .woocommerce-product-gallery .flex-viewport,
  .single-product .woocommerce-product-gallery__image,
  .single-product .woocommerce-product-gallery__image > a,
  .single-product .woocommerce-product-gallery__image img {
    width: min(90vw, calc(100vw - 24px)) !important;
    height: min(90vw, calc(100vw - 24px)) !important;
  }
}
.woocommerce div.product div.images .woocommerce-product-gallery__image > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.woocommerce div.product div.images .woocommerce-product-gallery__image img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  display: block;
}
.woocommerce div.product div.images .woocommerce-product-gallery__image .zoomImg {
  display: none !important;
}

/* MMILO archive card */
.products .product.mmilo-card, .products .product.mmilo-card * { box-sizing: border-box; }
.products .product.mmilo-card { height: 100%; }
.products .product.mmilo-card .mmilo-card__inner {
  display:flex; flex-direction:column; height:100%;
  padding:10px; border:1px solid #eee; border-radius:10px; background:#fff;
}

/* Square bordered image */
.mmilo-card__imagewrap{ display:block; }
.mmilo-card__square{
  display:block;
  position: relative;
  width:100%;
  aspect-ratio:1/1;
  border:1px solid #ddd;
  border-radius:8px;
  overflow:hidden;
  background:#fafafa;
}
.mmilo-card__img{ width:100%; height:100%; object-fit:cover; display:block; }

/* Title up, rest down */
.mmilo-card__body{ display:flex; flex-direction:column; flex:1 1 auto; margin-top:10px; }
.mmilo-card__title{ font-size:1rem; line-height:1.35; margin:0 0 4px; text-align:center; }
.mmilo-card__title a{ color:inherit; text-decoration:none; }
.mmilo-card__spacer{ flex:1 1 auto; }

.mmilo-card__meta{ display:grid; gap:6px; margin-top:8px; }
.mmilo-card__price{ text-align:center; }
.mmilo-card__stock{ border:1px solid #eee; background:#fafafa; border-radius:6px; padding:8px 10px; font-size:.9rem; }
.mmilo-stock-row{ display:flex; justify-content:space-between; gap:10px; padding:2px 0; }
.mmilo-stock-label--desktop{ display:inline; }
.mmilo-card__variations{ text-align:center; font-size:.9rem; color:#666; }
.mmilo-card__variations--available{ color:#1f7a1f; }
.products .product.mmilo-card .mmilo-card__inner--variable{ background:#eee7f4; }
.mmilo-stock-label--mobile{ display:none; }

/* Empty cart "New in store" cards match mmilo product cards */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  list-style: none;
  padding: 0;
  margin: 0;
  justify-items: center;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product{
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 10px;
  border: 1px solid #eee;
  border-radius: 10px;
  background: #fff;
  width: 100%;
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link{
  display: block;
  color: inherit;
  text-decoration: none;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image{
  display: block;
  width: 100%;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img{
  width: 100%;
  height: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border: 1px solid #ddd;
  border-radius: 8px;
  background: #fafafa;
  display: block;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{
  font-size: 1rem;
  line-height: 1.35;
  margin: 10px 0 4px;
  text-align: center;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price{
  text-align: center;
  margin-top: 8px;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart{
  margin-top: auto;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .button{
  width: 100%;
  border-radius: 8px;
}

@media (max-width: 768px){
  .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 480px){
  .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Container spacing: no mysterious top/bottom lines or gaps */
.mmilo-acc{ margin: 0 0 12px 0; }
.mmilo-acc:last-child{ margin-bottom: 0; }

/* Accordion header button */
.mmilo-acc__summary{
  width: 100%;
  appearance: none;
  border: 0;
  background: #fff;
  padding: 10px 12px;
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  cursor: pointer;
  border-radius: 10px;
  box-shadow: 0 1px 0 rgba(0,0,0,.04);
}
.mmilo-acc__title{ font-weight: 600; }

/* Chevron rotation */
.mmilo-acc__chev{ transition: transform .15s ease; opacity: .7; }
.mmilo-acc.is-open .mmilo-acc__chev{ transform: rotate(180deg); opacity: .9; }

/* Panel body (no borders/lines, no extra space) */
.mmilo-acc__panel{
  padding: 8px 4px 0;         /* subtle internal breathing room */
}

/* Inline form layout */
.mmilo-filter-inline{ display: grid; gap: 10px; padding: 0; }

/* Select-style filters (factory category filter) */
.mmilo-filter-modern{
  display: grid;
  gap: 10px;
}
.mmilo-acc--factory .mmilo-acc__panel{
  padding-left: 16px;
}
.mmilo-filter-modern label{
  display: grid;
  gap: 6px;
  font-weight: 600;
  font-size: 12px;
}
.mmilo-filter-modern select{
  min-height: 42px;
  padding: 6px 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
  font-size: 13px;
  background: #fff;
  color: #111;
}
.mmilo-filter-modern select:disabled{
  background: #f6f6f6;
  color: #888;
}
.mmilo-filter-modern .mmilo-filter__actions{
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}
.mmilo-filter-modern .mmilo-filter__actions button{
  background: #452041;
  color: #fff;
  border: 0;
  border-radius: 10px;
  padding: 8px 14px;
  font-weight: 600;
  font-size: 13px;
  cursor: pointer;
}
.mmilo-filter-modern .mmilo-filter__actions .mmilo-filter__reset{
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border: 1px solid #ddd;
  border-radius: 10px;
  text-decoration: none;
  color: #111;
  background: #f8f8f8;
  font-size: 13px;
}

/* Reset default fieldset/legend spacing (removes big margins) */
.mmilo-filter-inline fieldset{ border: 0; margin: 0; padding: 0; }
.mmilo-filter-inline legend{ margin: 0 0 6px; padding: 0; font-weight: 600; }

/* Chips */
.mmilo-filter__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.mmilo-chip{
  display:inline-flex; align-items:center; gap:8px;
  border:1px solid #e4e4e7; border-radius:999px; padding:6px 12px; background:#fff;
  cursor:pointer; user-select:none; transition: box-shadow .15s ease, background .15s ease, border-color .15s ease;
  margin: 2px;
}
.mmilo-chip input{ appearance:none; width:0; height:0; margin:0; padding:0; border:0; }
.mmilo-chip span{ position:relative; padding-left:20px; }
.mmilo-chip span::before{
  content:""; position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:12px; height:12px; border:2px solid #c5c5d0; border-radius:3px; background:transparent;
}
.mmilo-chip input:checked + span::before{ background:#111; border-color:#111; }
.mmilo-chip input:checked + span{ font-weight:600; }
.mmilo-chip:hover{ border-color:#d4d4d8; box-shadow:0 1px 0 rgba(0,0,0,.04); }
.mmilo-chip.mmilo-chip--toggle span::before{ border-radius:999px; }

/* Selected count pill */
.mmilo-filter__count{
  background:#f3f4f6; border-radius:999px; font-size:.8rem; padding:2px 8px; margin-left:auto; margin-right:8px;
}

/* Reset link (optional) */
.mmilo-filter__actions{ display:flex; justify-content:flex-end; padding: 0; }
.mmilo-filter__reset{ font-size:.95rem; color:#555; }


/* 1) Smaller chips */
.mmilo-filter__chips { gap: 6px; }
.mmilo-chip{
  padding: 4px 10px;          /* was 6px 12px */
  gap: 6px;                   /* was 8px */
  font-size: 0.85rem;         /* was ~1rem */
}
.mmilo-chip span{ padding-left: 16px; } /* was 20px */
.mmilo-chip span::before{
  width: 10px; height: 10px;  /* was 12x12 */
  border-width: 2px;
}

/* Toggle chip uses round bullet—keep it proportional */
.mmilo-chip.mmilo-chip--toggle span::before{ border-radius: 999px; }

/* Smaller selected count pill on the accordion header */
.mmilo-filter__count{
  font-size: 0.75rem;
  padding: 1px 6px;
}

/* Keep the chip + reset on the same row and vertically centered */
.mmilo-chipbar,
.mmilo-filter-reset{
  display: inline-flex;        /* both are inline so they sit on one line */
  align-items: center;         /* center their own contents vertically */
  vertical-align: middle;      /* align these two boxes to each other vertically */
}

/* Tidy the reset link so its text sits centered like the chip text */
.mmilo-filter__reset{
  display: inline-flex;
  align-items: center;
  line-height: 1;              /* avoid tall baseline spacing */
}

/* (optional) small left gap so they don’t touch */
.mmilo-filter-reset{ margin-left: 8px; }

.mmilo-pagination { margin: 16px 0; text-align: center; display: flex; justify-content: center; }
.mmilo-pagination .page-numbers { display: inline-flex; gap: 6px; align-items: center; padding-left: 0; }
.mmilo-pagination .page-numbers li { list-style: none; }
.mmilo-pagination .page-numbers a,
.mmilo-pagination .page-numbers span {
  display: inline-block; padding: 6px 10px; border: 1px solid #e5e7eb; border-radius: 8px; text-decoration: none;
}
.mmilo-pagination .page-numbers .current { background: #111; color: #fff; border-color: #111; }

.woocommerce-pagination { display: flex; justify-content: center; margin: 16px 0; }
.woocommerce-pagination .page-numbers { display: inline-flex; gap: 6px; align-items: center; padding-left: 0; }


/* Lock the product grid to a fixed column count (no stretching on short rows) */
.woocommerce ul.products.mmilo-products-by-category{
  display: grid !important;
  --mmilo-gap: 16px;
  gap: var(--mmilo-gap);
  grid-template-columns: repeat(var(--mmilo-cols, 4), minmax(0, 1fr));
}

/* Map Woo’s columns-* class to our variable */
.woocommerce ul.products.mmilo-products-by-category.columns-2{ --mmilo-cols: 2; }
.woocommerce ul.products.mmilo-products-by-category.columns-3{ --mmilo-cols: 3; }
.woocommerce ul.products.mmilo-products-by-category.columns-4{ --mmilo-cols: 4; }
.woocommerce ul.products.mmilo-products-by-category.columns-5{ --mmilo-cols: 5; }
.woocommerce ul.products.mmilo-products-by-category.columns-6{ --mmilo-cols: 6; }

/* Kill inherited flex/floats so items don't auto-grow */
.woocommerce ul.products.mmilo-products-by-category li.product{
  width: auto !important;
  margin: 0 !important;          /* spacing comes from grid gap */
  float: none !important;
  flex: 0 0 auto !important;
}

/* Optional: responsive fallbacks (tweak to taste) */
@media (max-width: 1024px){
  .woocommerce ul.products.mmilo-products-by-category{ --mmilo-cols: 3; }
}
@media (max-width: 768px){
  /* lock to 2 cols on mobile */
  .woocommerce ul.products.mmilo-products-by-category{
    --mmilo-cols: 2;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 480px){
  /* keep 2 columns per request */
  .woocommerce ul.products.mmilo-products-by-category{
    --mmilo-cols: 2;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* Search result grid — fixed columns, no stretching */
.woocommerce ul.products.mmilo-products-by-category{
  display: grid !important;
  --mmilo-gap: 16px;
  gap: var(--mmilo-gap);
  grid-template-columns: repeat(var(--mmilo-cols, 4), minmax(0, 1fr));
}
.woocommerce ul.products.mmilo-products-by-category.columns-4{ --mmilo-cols: 4; }
.woocommerce ul.products.mmilo-products-by-category li.product{
  width:auto!important; margin:0!important; float:none!important; flex:0 0 auto!important;
}


/* === Search results: match category grid & cards === */

/* If your search UL already has `mmilo-products-by-category`, these override nothing.
   If it doesn't, these rules act as a safe fallback so search looks the same. */
body.search .woocommerce ul.products{
  display: grid !important;
  gap: var(--mmilo-gap, 16px);
  grid-template-columns: repeat(var(--mmilo-cols, 4), minmax(0, 1fr));
  list-style: none;
  padding: 0;
  margin: 0;
}

body.search .woocommerce ul.products.columns-2{ --mmilo-cols: 2; }
body.search .woocommerce ul.products.columns-3{ --mmilo-cols: 3; }
body.search .woocommerce ul.products.columns-4{ --mmilo-cols: 4; }
body.search .woocommerce ul.products.columns-5{ --mmilo-cols: 5; }

body.search .woocommerce ul.products li.product{
  width: auto !important;
  margin: 0 !important;
  float: none !important;
  flex: 0 0 auto !important;
  height: 100%;
}

/* If your search items are already rendered with mmilo cards, this just aligns spacing. */
body.search .woocommerce ul.products li.product.mmilo-card .mmilo-card__inner{
  padding: 10px;
  border: 1px solid #eee;
  border-radius: 10px;
  background: #fff;
  height: 100%;
  display: flex;
  flex-direction: column;
}

/* Ensure the square image frame and title spacing are consistent on search too */
body.search .woocommerce ul.products li.product .mmilo-card__square{
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  border: 1px solid #ddd;
  border-radius: 8px;
  overflow: hidden;
  background: #fafafa;
}
body.search .woocommerce ul.products li.product .mmilo-card__img{
  width: 100%; height: 100%; object-fit: cover; display: block;
}
body.search .woocommerce ul.products li.product .mmilo-card__title{
  font-size: 1rem; line-height: 1.35; margin: 10px 0 4px; text-align: center;
}

/* Optional: tighten the search page heading spacing to match category pages */
body.search .woocommerce-products-header{ margin-bottom: 10px; }

/* Search results: hard-lock to the same grid + card styling */
body.search .woocommerce ul.products.mmilo-products-by-category{
  display: grid !important;
  gap: var(--mmilo-gap, 16px) !important;
  grid-template-columns: repeat(var(--mmilo-cols, 4), minmax(0, 1fr)) !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.search .woocommerce ul.products.mmilo-products-by-category.columns-4{ --mmilo-cols: 4; }

body.search .woocommerce ul.products.mmilo-products-by-category li.product{
  width: auto !important;
  margin: 0 !important;
  float: none !important;
  flex: 0 0 auto !important;
  height: 100% !important;
}

/* === Search page sizing + gutter fixes === */

/* 1) Make cards more compact on search */
body.search .mmilo-card .mmilo-card__inner{
  padding: 8px;               /* was ~10–12px */
}
body.search .mmilo-card .mmilo-card__title{
  font-size: 0.95rem;
  line-height: 1.3;
  margin: 8px 0 4px;
}
body.search .mmilo-card .mmilo-card__price,
body.search .mmilo-card .mmilo-card__stock,
body.search .mmilo-card .mmilo-card__meta{
  font-size: 0.9rem;
  line-height: 1.3;
  margin: 2px 0;
}

/* Optional: slightly smaller gap between cards on search */
body.search .woocommerce ul.products.mmilo-products-by-category{
  --mmilo-gap: 12px;
}

/* 2) Add left/right padding and constrain max width on search page only */
body.search .woocommerce{
  max-width: 1200px;          /* tune to your site width */
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;         /* bring back gutters */
  padding-right: 16px;
}
@media (min-width: 1024px){
  body.search .woocommerce{ padding-left: 24px; padding-right: 24px; }
}
@media (min-width: 1440px){
  body.search .woocommerce{ max-width: 1280px; }
}

/* 3) (Optional) Make cards smaller on very wide screens by increasing columns */
@media (min-width: 1280px){
  body.search .woocommerce ul.products.mmilo-products-by-category.columns-4{ --mmilo-cols: 5; }
}
@media (min-width: 1536px){
  body.search .woocommerce ul.products.mmilo-products-by-category.columns-4{ --mmilo-cols: 6; }
}

/* Match search heading to the grid container width + gutters */
body.search .woocommerce-products-header{
  max-width: 1200px;        /* keep in sync with the grid container */
  margin: 0 auto 12px;      /* center + a bit of space below */
  padding: 0 16px;          /* same side padding as the grid */
}
@media (min-width: 1024px){
  body.search .woocommerce-products-header{ padding-left: 24px; padding-right: 24px; }
}
@media (min-width: 1440px){
  body.search .woocommerce-products-header{ max-width: 1280px; }
}

/* (optional) tighten heading typography to match card sizing */
body.search .woocommerce-products-header__title.page-title{
  font-size: 1.25rem;
  line-height: 1.3;
  margin: 0;
}

/* Catalog layout: widen container + split filters/products */
.site-main--catalog{
  max-width: 100%;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.site-main--catalog.container{
  padding-left: 0;
  padding-right: 0;
}
.page-entry--catalog{
  max-width: 100%;
}
@media (max-width: 768px){
  .site-main--catalog{
    padding-left: 0;
    padding-right: 0;
  }
}

/* Catalog pages built with shortcodes: move filters into a left sidebar */
.page-content--catalog{
  display: grid;
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
  margin: 12px;
}
.page-content--catalog > .woocommerce,
.page-content--catalog > nav.mmilo-pagination{
  grid-column: 2;
}
.page-content--catalog > nav.mmilo-pagination{
  justify-self: stretch;
}
.page-content--catalog > nav.mmilo-pagination .page-numbers{
  width: 100%;
  justify-content: center;
}
.page-entry--catalog > nav.mmilo-pagination{
  display: flex;
  justify-content: center;
  margin: 16px 0;
  width: 100%;
}
.page-entry--catalog > nav.mmilo-pagination .page-numbers{
  display: inline-flex;
  gap: 6px;
  align-items: center;
  padding-left: 6px;
  justify-content: center;
  width: 100%;
  margin: 0 auto;
  padding-right: 6px;
}
.page-content--catalog > *:not(.woocommerce):not(nav.mmilo-pagination){
  grid-column: 1;
}
@media (max-width: 1023px){
  .page-content--catalog{
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .page-content--catalog > .woocommerce,
  .page-content--catalog > nav.mmilo-pagination,
  .page-content--catalog > *:not(.woocommerce):not(nav.mmilo-pagination){
    grid-column: 1;
  }
}

/* Woo archive layout: filters + products as siblings */
.catalog-layout{
  display: grid;
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}
.catalog-filters p{ margin:0; padding:0; }
.catalog-filters p:empty{ display:none; }
.catalog-filters .mmilo-chipbar,
.catalog-filters .mmilo-filter-reset,
.catalog-filters .mmilo-acc{ margin: 0 0 12px 0; }
.catalog-filters .mmilo-filter-reset{ text-align:right; }
.catalog-products{ grid-column: 2; grid-row: 1 / -1; align-self: start; }
@media (max-width: 1023px){
  .catalog-layout{
    grid-template-columns: 1fr;
  }
  .catalog-products{
    grid-column: 1;
    grid-row: auto;
  }
}

/* === Mobile filter overlay (catalog) === */
.mmilo-filter-fab{
  display: none;
  align-items: center;
  gap: 8px;
  background: #452041;
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 10px 14px;
  font-weight: 700;
  box-shadow: 0 10px 18px rgba(0,0,0,.15);
  cursor: pointer;
  margin: 0 0 0 20px;
}
.mmilo-filter-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  z-index: 999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.mmilo-filter-overlay.is-open{ display:flex; }
.mmilo-filter-overlay__sheet{
  width: min(520px, 100%);
  max-height: 90vh;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 16px 40px rgba(0,0,0,.25);
}
.mmilo-filter-overlay__header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  border-bottom: 1px solid #eee;
}
.mmilo-filter-overlay__title{ font-weight: 700; }
.mmilo-filter-overlay__close{
  border: 0;
  background: transparent;
  font-size: 22px;
  cursor: pointer;
  line-height: 1;
}
.mmilo-filter-overlay__body{
  padding: 12px 16px 16px;
  overflow-y: auto;
}
.mmilo-filter-overlay__footer{
  padding: 10px 16px 16px;
  border-top: 1px solid #eee;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}
.mmilo-filter-overlay__btn{
  background: #452041;
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 10px 16px;
  font-weight: 600;
  font-family: inherit;
  line-height: 1.2;
  font-size: 14px;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(0,0,0,.15);
}
.mmilo-filter-overlay__btn--reset{
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.mmilo-filter-overlay__body .mmilo-filter-reset{
  text-align: right;
  margin-top: 12px;
}
.mmilo-filter-overlay__body .mmilo-filter__reset{
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border: 1px solid #ddd;
  border-radius: 8px;
  text-decoration: none;
  color: #111;
  font-weight: 600;
  background: #f8f8f8;
}

@media (max-width: 768px){
  .mmilo-filter-fab{ display: inline-flex; }
  .mmilo-filter-overlay__sheet{ width: 100%; }
  /* Hide inline reset on mobile; overlay provides its own */
  .page-content--catalog .mmilo-filter-reset{ display: none !important; }
}

/* === Sort widget + overlay === */
.mmilo-sort-inline{
  display:flex;
  align-items:center;
  gap:10px;
  margin: 0 0 0 0;
}
.mmilo-sort-form select.orderby{
  min-height: 42px;
  padding: 2px 10px;
  border-radius: 10px;
  border: 1px solid #ddd;
  font-size: 14px;
}
.mmilo-sort-fab{
  display:none;
  align-items:center;
  gap:8px;
  background:#452041;
  color:#fff;
  border:none;
  border-radius:999px;
  padding:10px 14px;
  font-weight:700;
  box-shadow:0 10px 18px rgba(0,0,0,.15);
  cursor:pointer;
  margin-left:8px;
}
.mmilo-sort-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  z-index: 999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.mmilo-sort-overlay.is-open{ display:flex; }
.mmilo-sort-overlay__sheet{
  width: min(520px, 100%);
  max-height: 90vh;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 16px 40px rgba(0,0,0,.25);
}
.mmilo-sort-overlay__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 16px;
  border-bottom:1px solid #eee;
}
.mmilo-sort-overlay__title{ font-weight:700; }
.mmilo-sort-overlay__close{
  border:0;
  background:transparent;
  font-size:22px;
  cursor:pointer;
  line-height:1;
}
.mmilo-sort-overlay__body{
  padding:12px 16px 16px;
  overflow-y:auto;
}
.mmilo-sort-overlay__footer{
  padding:10px 16px 16px;
  border-top:1px solid #eee;
  display:flex;
  justify-content:flex-end;
  gap:10px;
}
.mmilo-sort-overlay__btn{
  background: #452041;
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 10px 16px;
  font-weight: 600;
  font-family: inherit;
  line-height: 1.2;
  font-size: 14px;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(0,0,0,.15);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.mmilo-sort-overlay__btn--reset{
  background:#452041;
  color:#fff;
}

@media (max-width: 768px){
  .mmilo-sort-fab{ display:inline-flex; }
  .mmilo-sort-inline{ display:none; }
  .mmilo-sort-overlay__sheet{ width:100%; }
}

/* When sort form lives inside the overlay on mobile, force it visible */
.mmilo-sort-overlay .mmilo-sort-inline{
  display:block !important;
  margin:0;
}
.mmilo-sort-overlay .mmilo-sort-form{
  display:block;
}
.mmilo-sort-overlay .mmilo-sort-form select.orderby{
  width:100%;
}

/* === My Account tidy-ups (icons & alignment) === */
.woocommerce-account .page-title{
  margin-left: 0;
  padding-left: 2px;
  padding-right: 2px;
}
.woocommerce-account .woocommerce-MyAccount-navigation a::before{
  content: none !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation .myaccount-grid__icon::before{
  content: '';
}
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard .myaccount-grid__icon::before{ content:'🏠'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders .myaccount-grid__icon::before{ content:'📦'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads .myaccount-grid__icon::before{ content:'⬇️'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address .myaccount-grid__icon::before{ content:'🏷️'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--payment-methods .myaccount-grid__icon::before{ content:'💳'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account .myaccount-grid__icon::before{ content:'👤'; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout .myaccount-grid__icon::before{ content:'↩️'; }

/* === My Account: final overrides (desktop) === */
.woocommerce-account .page-title{
  margin-left: 0 !important;
  padding-left: 2px !important;
  padding-right: 2px !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation a::before{
  content: none !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation .myaccount-grid__icon::before{
  content: '' !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard .myaccount-grid__icon::before{ content:'🏠' !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders .myaccount-grid__icon::before{ content:'📦' !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads .myaccount-grid__icon::before{ content:'⬇️' !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address .myaccount-grid__icon::before{ content:'🏷️' !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--payment-methods .myaccount-grid__icon::before{ content:'💳' !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account .myaccount-grid__icon::before{ content:'👤' !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout .myaccount-grid__icon::before{ content:'↩️' !important; }
@media (min-width: 901px){
  .woocommerce-account .site-main .page-title,
  .woocommerce-account .entry-header,
  .woocommerce-account .woocommerce h2{
    max-width: none !important;
    margin: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* General 4px padding for selected static pages */
.mmilo-page-pad4 .site-main{
  padding: 8px 12px;
}
/* Ensure request-account page keeps 12px side padding */
.page-request-account .site-main{
  padding-left: 12px;
  padding-right: 12px;
}

/* Jetpack contact form honeypot */
.wp-block-jetpack-contact-form [data-wp-context*="hp_website"],
.wp-block-jetpack-contact-form input[name$="hp_website"],
.wp-block-jetpack-contact-form label[for$="hp_website"],
.wp-block-jetpack-contact-form [data-wp-context*="hp_time"],
.wp-block-jetpack-contact-form input[name$="hp_time"],
.wp-block-jetpack-contact-form label[for$="hp_time"]{
  position: absolute !important;
  left: -9999px !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}
