:root{--msat-header:#253783;--msat-accent:#f2b705;--msat-footer:#171d29;--msat-text:#20252b;--msat-muted:#687384;--msat-border:#dfe4ea;--msat-soft:#f5f7f9;--msat-shell:1320px;--msat-radius:10px;--msat-shadow:0 12px 34px rgba(21,31,47,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.msat-store-theme{color:var(--msat-text);background:#fff;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.msat-shell,.col-full{width:min(calc(100% - 40px),var(--msat-shell));max-width:none;margin-inline:auto;padding:0}.msat-store-theme a{color:inherit}.msat-store-theme img{max-width:100%;height:auto}.msat-announcement{background:#19245f;color:#fff;text-align:center;font-size:13px;padding:6px 0}.msat-header{background:#fff;position:relative;z-index:60}.msat-header__main{background:var(--msat-header);color:#fff;padding:14px 0}.msat-header__grid{display:grid;grid-template-columns:180px minmax(320px,1fr) auto;align-items:center;gap:28px}.msat-brand{min-width:0}.msat-brand .custom-logo{display:block;width:auto;max-width:150px;max-height:70px;object-fit:contain}.msat-brand__text{color:#fff!important;font-size:24px;font-weight:800;text-decoration:none}.msat-header-search{min-width:0}.msat-search{display:flex;background:#fff;border:1px solid rgba(255,255,255,.5);border-radius:999px;overflow:hidden;min-height:46px}.msat-search input[type=search]{flex:1;min-width:0;border:0!important;background:#fff!important;color:#20252b!important;padding:0 18px!important;box-shadow:none!important}.msat-search button{border:0!important;background:#111!important;color:#fff!important;border-radius:999px!important;margin:4px!important;padding:0 22px!important;font-weight:700;box-shadow:none!important}.msat-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px}.msat-account{display:flex;align-items:center;gap:7px;color:#fff!important;text-decoration:none!important;font-weight:650;font-size:14px}.msat-account svg,.msat-mobile-toggle svg,.msat-native-cart svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8}.msat-header-cart{color:#fff;min-width:44px}.msat-native-cart{display:flex;align-items:center;gap:5px;color:#fff!important;text-decoration:none!important;position:relative}.msat-native-cart__count{display:grid;place-items:center;min-width:19px;height:19px;border-radius:999px;background:var(--msat-accent);color:#151515;font-size:11px;font-weight:800}.msat-native-cart__total{font-size:14px;font-weight:750}.msat-mobile-toggle{display:none;color:#fff;background:transparent!important;border:0!important;padding:5px!important}.msat-header__nav{background:#fff;border-bottom:1px solid var(--msat-border);box-shadow:0 2px 8px rgba(22,29,43,.03)}.msat-nav-row{display:flex;min-height:52px;align-items:stretch}.msat-categories{position:relative;display:flex}.msat-categories__toggle{display:flex;align-items:center;gap:9px;min-width:218px;background:#f2f4f7!important;color:#222!important;border:0!important;border-radius:0!important;padding:0 16px!important;font-weight:750}.msat-categories__toggle svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2.3}.msat-categories__panel{position:absolute;top:100%;left:0;width:min(900px,90vw);max-height:72vh;overflow:auto;background:#fff;border:1px solid var(--msat-border);box-shadow:var(--msat-shadow);border-radius:0 0 var(--msat-radius) var(--msat-radius);padding:12px;z-index:80}.msat-category-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 18px;list-style:none;margin:0;padding:0}.msat-category-menu__item{border-bottom:1px solid #edf0f3;padding:8px}.msat-category-menu__item>a{font-weight:750;text-decoration:none}.msat-category-menu__children{list-style:none;margin:6px 0 0;padding:0}.msat-category-menu__children a{display:block;padding:3px 0;color:#5b6472;text-decoration:none;font-size:13px}.msat-primary-nav{min-width:0;flex:1}.msat-primary-menu{height:100%;display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0 18px}.msat-primary-menu>li{position:relative}.msat-primary-menu a{display:block;padding:15px 12px;text-decoration:none;font-weight:650;font-size:14px}.msat-primary-menu a:hover{color:var(--msat-header)}.msat-primary-menu .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:220px;background:#fff;border:1px solid var(--msat-border);box-shadow:var(--msat-shadow);list-style:none;margin:0;padding:8px;z-index:75}.msat-primary-menu li:hover>.sub-menu,.msat-primary-menu li:focus-within>.sub-menu{display:block}.msat-primary-menu .sub-menu a{padding:9px 10px}.msat-whatsapp{align-self:center;display:flex;align-items:center;gap:7px;margin-left:auto;color:#148a43!important;text-decoration:none!important;font-weight:750;font-size:14px;white-space:nowrap}.msat-whatsapp svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5}.msat-mobile-nav{background:#fff;border-bottom:1px solid var(--msat-border);padding:12px 20px}.msat-mobile-nav__search{margin-bottom:12px}.msat-mobile-menu{list-style:none;margin:0;padding:0}.msat-mobile-menu a{display:block;padding:11px 4px;border-bottom:1px solid #eef0f3;text-decoration:none;font-weight:650}.msat-mobile-menu .sub-menu{display:none;list-style:none;margin:0 0 0 14px;padding:0}.msat-mobile-menu .is-open>.sub-menu{display:block}
.site-content{padding:26px 0 48px}.site-content>.col-full::before,.site-content>.col-full::after{display:none!important}.msat-home{width:100%}.msat-home-layout{display:grid;gap:24px;align-items:start}.msat-home-layout.has-sidebar-right{grid-template-columns:minmax(0,1fr) 270px}.msat-home-layout.has-sidebar-left{grid-template-columns:270px minmax(0,1fr)}.msat-home-layout.has-sidebar-left .msat-home-sidebar{grid-column:1}.msat-home-layout.has-sidebar-left .msat-home-main{grid-column:2}.msat-home-layout.has-sidebar-none{display:block}.msat-home-main{min-width:0}.msat-home-sidebar{min-width:0}.msat-home-sidebar__categories,.msat-home-sidebar .msat-widget{background:#fff;border:1px solid var(--msat-border);border-radius:var(--msat-radius);overflow:hidden;margin:0 0 18px;padding:16px}.msat-home-sidebar__categories>h2,.msat-widget__title{font-size:16px;line-height:1.25;margin:0 -16px 12px;padding:0 16px 13px;border-bottom:1px solid var(--msat-border);font-weight:800}.msat-category-menu.is-compact{display:block}.msat-category-menu.is-compact .msat-category-menu__item{padding:8px 2px}.msat-category-menu.is-compact .msat-category-menu__children{display:none}.msat-category-menu.is-compact .msat-category-menu__item:hover>.msat-category-menu__children,.msat-category-menu.is-compact .msat-category-menu__item:focus-within>.msat-category-menu__children{display:block}.msat-hero{position:relative;min-height:365px;display:flex;align-items:center;border-radius:14px;overflow:hidden;background:linear-gradient(120deg,var(--msat-header),#4054ad);margin:0 0 24px;color:#fff}.msat-hero__media,.msat-hero__shade{position:absolute;inset:0}.msat-hero__image{width:100%;height:100%;object-fit:cover}.msat-hero__shade{background:linear-gradient(90deg,rgba(8,15,50,.90),rgba(8,15,50,.18))}.msat-hero__content{position:relative;z-index:1;max-width:670px;padding:48px}.msat-eyebrow{color:#ffcf68;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px}.msat-hero h1{color:#fff;font-size:clamp(30px,4vw,50px);line-height:1.06;margin:0 0 16px;letter-spacing:-.025em}.msat-hero__text{font-size:17px;line-height:1.6;max-width:600px;margin:0 0 24px;color:#eef2ff}.msat-button,.msat-store-theme .button,.msat-store-theme button.button,.msat-store-theme input.button{background:var(--msat-header);border-color:var(--msat-header);color:#fff;border-radius:7px;font-weight:750;box-shadow:none}.msat-hero .msat-button{background:var(--msat-accent)!important;color:#111!important;padding:12px 20px}.msat-promo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 32px}.msat-promo-card{position:relative;display:block;overflow:hidden;border-radius:12px;min-height:175px;background:#eef2f7}.msat-promo-card__image{width:100%;height:100%;aspect-ratio:2.5/1;object-fit:cover;display:block;transition:transform .25s ease}.msat-promo-card__title{position:absolute;left:16px;bottom:14px;background:rgba(17,24,39,.88);color:#fff;padding:8px 12px;border-radius:6px;font-weight:800}.msat-promo-card:hover .msat-promo-card__image{transform:scale(1.025)}.msat-home-section{margin:38px 0}.msat-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;border-bottom:1px solid var(--msat-border);padding-bottom:11px;margin-bottom:18px}.msat-section-head h2,.msat-section-title{margin:0;color:#111827;font-size:24px}.msat-section-head>a{font-size:14px;color:var(--msat-header);font-weight:700;text-decoration:none}.msat-category-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.msat-category-card{margin:0;background:#fff;border:1px solid var(--msat-border);border-radius:10px;overflow:hidden}.msat-category-card>a{display:grid;grid-template-columns:84px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:10px;text-decoration:none}.msat-category-card__media{grid-row:1/3;width:84px;height:84px;display:grid;place-items:center;background:#f7f8fa;border-radius:7px;overflow:hidden}.msat-category-card__media img{width:100%;height:100%;object-fit:contain}.msat-category-card__placeholder{width:28px;height:28px;border:2px solid #c7ced7;border-radius:6px}.msat-category-card h3{font-size:14px;line-height:1.3;margin:0 0 4px;color:#20252b}.msat-category-card__count{font-size:12px;color:var(--msat-muted)}.msat-home-content,.msat-home-widgets{margin:34px 0}.msat-home-widgets .msat-widget{margin-bottom:18px}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0!important}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:14px!important;background:#fff;border:1px solid var(--msat-border);border-radius:10px;transition:border-color .18s,box-shadow .18s,transform .18s;min-width:0}.woocommerce ul.products li.product:hover{border-color:#ccd2dd;box-shadow:0 10px 30px rgba(17,24,39,.08);transform:translateY(-2px)}.woocommerce ul.products li.product img{border-radius:6px;margin-bottom:12px!important;aspect-ratio:1/1;object-fit:contain;background:#fff}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px!important;line-height:1.35;color:#1f2937;padding:.2em 0!important;min-height:2.7em}.woocommerce ul.products li.product .price{color:#111827!important;font-size:16px!important;font-weight:800!important}.woocommerce ul.products li.product .button{width:100%;text-align:center;margin-top:10px!important;padding:.72em .8em}.woocommerce span.onsale{background:var(--msat-accent);color:#111827;border:0;min-height:auto;min-width:auto;padding:4px 8px;border-radius:5px;font-size:12px;font-weight:800;line-height:1.4}.woocommerce .woocommerce-breadcrumb{font-size:13px;color:var(--msat-muted);margin-bottom:18px}.woocommerce div.product .product_title{font-size:clamp(27px,3vw,40px);line-height:1.15}.woocommerce div.product p.price,.woocommerce div.product span.price{color:#111827;font-weight:800}.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:8px;background:#f8fafc;border-top-color:var(--msat-header)}.msat-sidebar,.widget-area{font-size:14px}.widget-area .widget{background:#fff;border:1px solid var(--msat-border);border-radius:9px;padding:18px;margin-bottom:18px}.widget-area .widget-title,.widget-area .widget h2{font-size:17px;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--msat-border)}.widget-area ul{margin:0;padding-left:18px}.widget-area a{text-decoration:none}.woocommerce.archive .site-content>.col-full{display:grid;grid-template-columns:250px minmax(0,1fr);gap:32px}.woocommerce.archive #secondary{grid-column:1;grid-row:1}.woocommerce.archive #primary{grid-column:2;grid-row:1;width:auto!important;float:none!important;margin:0!important}.woocommerce.archive .storefront-sorting{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.msat-footer{background:var(--msat-footer);color:#d7dce5;margin-top:20px}.msat-footer__widgets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px;padding:46px 0 34px}.msat-footer__column:empty{display:none}.msat-footer .widget{margin:0;background:none;border:0;padding:0}.msat-footer .widget-title,.msat-footer h2,.msat-footer h3,.msat-footer h4,.msat-footer h5{color:#fff;font-size:16px;margin:0 0 15px}.msat-footer ul{list-style:none;margin:0;padding:0}.msat-footer li{margin:0 0 8px}.msat-footer a{color:#c8cfdb;text-decoration:none;font-size:14px}.msat-footer a:hover{color:#fff}.msat-footer p{font-size:14px;line-height:1.65;color:#c8cfdb}.msat-footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding:14px 0;font-size:13px}.msat-footer__bottom-row{display:flex;justify-content:space-between;gap:20px;color:#aeb7c7}
@media(max-width:1100px){.msat-header__grid{grid-template-columns:145px minmax(220px,1fr) auto;gap:18px}.msat-account span,.msat-native-cart__total{display:none}.msat-primary-menu a{padding-inline:8px}.msat-whatsapp__label{display:none}.msat-home-layout.has-sidebar-right,.msat-home-layout.has-sidebar-left{grid-template-columns:minmax(0,1fr) 235px}.msat-home-layout.has-sidebar-left{grid-template-columns:235px minmax(0,1fr)}.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}.msat-footer__widgets{grid-template-columns:repeat(2,minmax(0,1fr))}.msat-category-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:899px){.msat-shell,.col-full{width:min(calc(100% - 28px),var(--msat-shell))}.msat-header__main{padding:12px 0}.msat-header__grid{grid-template-columns:115px minmax(0,1fr) auto;gap:12px}.msat-brand .custom-logo{max-width:110px;max-height:52px}.msat-mobile-toggle{display:block}.msat-account{display:none}.msat-header__nav{display:block}.msat-home-layout.has-sidebar-right,.msat-home-layout.has-sidebar-left{display:block}.msat-home-sidebar{margin-top:28px}.msat-hero{min-height:310px}.msat-hero__content{padding:32px}.woocommerce.archive .site-content>.col-full{display:block}.woocommerce.archive #secondary,.woocommerce.archive #primary{width:100%!important}.woocommerce.archive #secondary{margin-top:30px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.msat-promo-grid{grid-template-columns:1fr}.msat-footer__widgets{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.msat-footer__bottom-row{flex-direction:column;gap:6px}}
@media(max-width:560px){.msat-header__grid{grid-template-columns:90px minmax(0,1fr) 70px;gap:8px}.msat-header-search .msat-search button{font-size:0;width:42px;padding:0!important}.msat-header-search .msat-search button::after{content:'⌕';font-size:22px}.msat-header-cart{min-width:34px}.msat-hero{min-height:285px;border-radius:10px}.msat-hero__content{padding:24px}.msat-hero__text{font-size:15px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.woocommerce ul.products li.product{padding:10px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px!important}.msat-footer__widgets{grid-template-columns:1fr}.msat-promo-card{min-height:140px}.msat-section-head h2{font-size:21px}.msat-category-cards{grid-template-columns:1fr}.msat-category-card>a{grid-template-columns:72px minmax(0,1fr)}.msat-category-card__media{width:72px;height:72px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.msat-promo-card__image,.woocommerce ul.products li.product{transition:none!important}}

/* ==========================================================
   ModoSAT Store 0.4.0 — visual/commerce audit polish
   ========================================================== */
:root{
  --msat-blue-900:#1b285f;
  --msat-blue-700:#253783;
  --msat-blue-100:#eef1fb;
  --msat-gold:#f2b705;
  --msat-ink-900:#172033;
  --msat-ink-700:#344054;
  --msat-line:#e3e7ed;
  --msat-surface:#f7f9fb;
}

/* Type hierarchy: Storefront defaults use very light headings; keep a technical,
   compact hierarchy across WooCommerce, search and information pages. */
.msat-store-theme h1,
.msat-store-theme h2,
.msat-store-theme h3,
.msat-store-theme h4,
.msat-store-theme h5,
.msat-store-theme h6{
  font-family:inherit;
  color:var(--msat-ink-900);
  font-weight:800;
  letter-spacing:-.018em;
}
.msat-store-theme h1,
.msat-store-theme .page-title,
.msat-store-theme .entry-title{
  font-size:clamp(30px,3.1vw,42px);
  line-height:1.14;
}
.msat-store-theme :focus-visible{
  outline:3px solid color-mix(in srgb,var(--msat-accent) 75%,#fff);
  outline-offset:3px;
}

/* Brand/header */
.msat-header__main{border-bottom:1px solid rgba(255,255,255,.08)}
.msat-brand__logo-link{display:inline-flex;align-items:center;text-decoration:none;line-height:0}
.msat-brand .custom-logo{max-width:142px;max-height:64px}
.msat-header-actions>a,.msat-header-cart{transition:opacity .18s ease,transform .18s ease}
.msat-header-actions>a:hover,.msat-header-cart:hover{opacity:.9}
.msat-categories__toggle{border-left:1px solid var(--msat-line)!important;border-right:1px solid var(--msat-line)!important}
.msat-categories__panel{
  width:min(1040px,calc(100vw - 44px));
  max-height:min(72vh,640px);
  padding:18px 18px 16px;
  scrollbar-gutter:stable;
  border-top:2px solid var(--msat-accent);
}
.msat-category-menu{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 20px}
.msat-category-menu__item{padding:9px 8px 10px}
.msat-category-menu__item>a{font-size:14px;color:var(--msat-ink-900)}
.msat-category-menu__children a{font-size:12.8px;line-height:1.45;padding:3px 0;color:#5d6675}
.msat-category-menu__children a:hover{color:var(--msat-header)}

/* Main pages / search */
.msat-store-theme .site-main{min-width:0}
.msat-store-theme .page-header{margin:4px 0 24px}
.msat-store-theme .page-title{margin:0;color:var(--msat-ink-900)}
body.search.search-results #secondary{display:none!important}
body.search.search-results #primary{
  width:100%!important;
  max-width:none!important;
  float:none!important;
  margin:0!important;
}
body.search.search-results .site-content>.col-full{display:block!important}
body.search.search-results .page-header{margin-bottom:22px}
body.search.search-results .storefront-sorting,
.woocommerce.archive .storefront-sorting{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 24px!important;
  padding:10px 12px;
  border:1px solid var(--msat-line);
  border-radius:10px;
  background:#fff;
}
.woocommerce .woocommerce-ordering{margin:0!important}
.woocommerce .woocommerce-ordering select{
  min-height:38px;
  border:1px solid #cfd6df;
  border-radius:7px;
  background:#fff;
  padding:0 34px 0 10px;
  font-size:13px;
}
.woocommerce .woocommerce-result-count{margin:0!important;color:#596576;font-size:13px}
.woocommerce nav.woocommerce-pagination{margin:30px 0 4px}
.woocommerce nav.woocommerce-pagination ul{border:0!important;display:flex;gap:6px;justify-content:center}
.woocommerce nav.woocommerce-pagination ul li{border:0!important}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  display:grid;place-items:center;min-width:38px;height:38px;padding:0 9px!important;
  border:1px solid var(--msat-line);border-radius:7px;background:#fff;color:var(--msat-ink-700);
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:var(--msat-header);border-color:var(--msat-header);color:#fff;font-weight:800;
}

/* Catalog cards */
.woocommerce ul.products li.product{
  display:flex!important;
  flex-direction:column;
  overflow:hidden;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link{display:block;text-decoration:none;flex:1}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-weight:700!important;color:var(--msat-ink-900);min-height:2.85em}
.woocommerce ul.products li.product .price{margin-top:8px;color:#101828!important}
.woocommerce ul.products li.product .button{margin-top:auto!important;background:var(--msat-header)!important;border-color:var(--msat-header)!important}
.woocommerce ul.products li.product .button:hover{background:var(--msat-blue-900)!important;border-color:var(--msat-blue-900)!important}

/* Store/catalog sidebar: useful only where enough horizontal space exists. */
.woocommerce.archive .msat-sidebar .widget{box-shadow:0 1px 0 rgba(16,24,40,.02)}
.woocommerce.archive .msat-sidebar .widget-title{color:var(--msat-ink-900);font-weight:800}

/* Single product — preserve WooCommerce hooks and ModoSAT modules; only layout/style. */
.single-product #primary{width:100%!important;float:none!important;margin:0!important}
.single-product #secondary{display:none!important}
.single-product div.product{
  display:grid;
  grid-template-columns:minmax(340px,.92fr) minmax(400px,1.08fr);
  column-gap:44px;
  row-gap:28px;
  align-items:start;
}
/* WooCommerce/Storefront clearfix pseudo-elements become anonymous grid items
 * when div.product is a grid container. Remove them here so gallery and summary
 * always occupy the intended first row. */
.single-product div.product::before,
.single-product div.product::after{display:none!important;content:none!important}
.single-product div.product>.woocommerce-product-gallery,
.single-product div.product>.summary{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
}
.single-product div.product>.woocommerce-product-gallery{
  grid-column:1;
  grid-row:1;
  padding:18px;
  border:1px solid var(--msat-line);
  border-radius:14px;
  background:#fff;
}
.single-product div.product>.summary{
  grid-column:2;
  grid-row:1;
}
.single-product .woocommerce-product-gallery__wrapper{margin:0}
.single-product .woocommerce-product-gallery__image img{border-radius:9px;background:#fff;object-fit:contain}
.single-product .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:10px!important}
.single-product .flex-control-thumbs li{width:auto!important;float:none!important;margin:0!important;border:1px solid var(--msat-line);border-radius:7px;overflow:hidden}
.single-product div.product>.summary{
  padding:4px 0 0;
}
.single-product div.product .product_title{
  margin:0 0 14px!important;
  font-size:clamp(28px,3vw,40px)!important;
  line-height:1.13!important;
  color:var(--msat-ink-900)!important;
  font-weight:820!important;
}
.single-product div.product .summary p.price,
.single-product div.product .summary span.price{
  display:block;
  margin:10px 0 16px;
  color:var(--msat-ink-900)!important;
  font-size:clamp(24px,2.3vw,31px)!important;
  line-height:1.15;
  font-weight:850!important;
}
.single-product .woocommerce-price-suffix{font-size:.48em;font-weight:750;color:#657184}
.single-product .woocommerce-product-details__short-description{
  color:#475467;
  font-size:15px;
  line-height:1.65;
  margin:0 0 18px;
}
.single-product form.cart{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin:20px 0!important;padding:18px;border:1px solid var(--msat-line);border-radius:12px;background:var(--msat-surface)}
.single-product form.cart .quantity .qty{min-height:46px;border:1px solid #cfd6df;border-radius:7px;background:#fff}
.single-product form.cart .single_add_to_cart_button{min-height:46px;padding:0 24px!important;border-radius:8px!important;background:var(--msat-header)!important}
.single-product form.cart .single_add_to_cart_button:hover{background:var(--msat-blue-900)!important}
.single-product .product_meta{
  margin-top:18px;padding-top:16px;border-top:1px solid var(--msat-line);
  display:grid;gap:6px;color:#667085;font-size:13px;
}
.single-product .product_meta a{color:var(--msat-header);text-decoration:none}
.single-product div.product>.woocommerce-tabs,
.single-product div.product>.msats-family-links,
.single-product div.product>.related,
.single-product div.product>.upsells{
  grid-column:1/-1;
  width:100%!important;
  float:none!important;
  clear:both;
}
.single-product .woocommerce-tabs{margin-top:6px}
.single-product .woocommerce-tabs ul.tabs{
  display:flex;flex-wrap:wrap;gap:6px;margin:0 0 0!important;padding:0!important;border:0!important;
}
.single-product .woocommerce-tabs ul.tabs::before,.single-product .woocommerce-tabs ul.tabs::after{display:none!important}
.single-product .woocommerce-tabs ul.tabs li{
  margin:0!important;border:1px solid var(--msat-line)!important;border-radius:8px 8px 0 0!important;background:#f5f7fa!important;
}
.single-product .woocommerce-tabs ul.tabs li::before,.single-product .woocommerce-tabs ul.tabs li::after{display:none!important}
.single-product .woocommerce-tabs ul.tabs li a{padding:10px 14px!important;font-size:13px;font-weight:750;color:#475467!important}
.single-product .woocommerce-tabs ul.tabs li.active{background:#fff!important;border-bottom-color:#fff!important}
.single-product .woocommerce-tabs ul.tabs li.active a{color:var(--msat-header)!important}
.single-product .woocommerce-tabs .panel{
  margin:0!important;padding:24px!important;border:1px solid var(--msat-line);border-radius:0 12px 12px 12px;background:#fff;
}
.single-product .woocommerce-tabs .panel>h2:first-child{font-size:22px;margin-top:0}
.single-product table.shop_attributes{border:0}
.single-product table.shop_attributes th,.single-product table.shop_attributes td{padding:10px 12px;border-bottom:1px solid #edf0f3;background:transparent!important}
.single-product table.shop_attributes th{width:220px;color:#475467;font-weight:750}

/* ModoSAT family/sibling products (other measures/options). Keep plugin logic intact. */
.single-product .msats-family-links{
  margin:4px 0 10px!important;
  padding:24px!important;
  border:1px solid var(--msat-line);
  border-radius:14px;
  background:linear-gradient(180deg,#fbfcfe 0%,#f6f8fb 100%);
}
.single-product .msats-family-links>h2{
  margin:0 0 16px!important;
  font-size:22px!important;
  line-height:1.2;
  color:var(--msat-ink-900);
}
.single-product .msats-family-links__grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:12px!important;
}
.single-product .msats-family-link{
  display:grid!important;
  grid-template-rows:110px auto auto;
  align-items:start;
  min-width:0;
  padding:12px!important;
  border:1px solid #dce2ea!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--msat-ink-900)!important;
  text-decoration:none!important;
  box-shadow:0 1px 2px rgba(16,24,40,.03);
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.single-product .msats-family-link:hover{
  border-color:#b8c3d2!important;
  box-shadow:0 8px 22px rgba(16,24,40,.07);
  transform:translateY(-1px);
}
.single-product .msats-family-link>span:first-child{display:grid;place-items:center;overflow:hidden;border-radius:7px;background:#fff}
.single-product .msats-family-link img{width:100%;height:100%;object-fit:contain;margin:0!important}
.single-product .msats-family-link strong{margin:9px 0 5px;font-size:13px;line-height:1.3;color:var(--msat-ink-900)}
.single-product .msats-family-link>small{font-size:13px;font-weight:800;color:var(--msat-header)}

/* Technical information emitted by ModoSAT Core. */
.single-product .ft-technical-panel{color:#344054}
.single-product .ft-technical-heading h2{margin-top:0}
.single-product .ft-spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.single-product .ft-spec-item{margin:0;padding:12px 14px;border:1px solid #e5e9ef;border-radius:8px;background:#fafbfc}
.single-product .ft-spec-item dt{font-size:12px;text-transform:uppercase;letter-spacing:.045em;color:#667085;font-weight:800}
.single-product .ft-spec-item dd{margin:4px 0 0;color:#1d2939;font-weight:650}
.single-product .ft-documents-public{margin-top:18px;padding-top:16px;border-top:1px solid var(--msat-line)}
.single-product .ft-documents-public ul{margin-bottom:0}

.single-product .related.products,.single-product .upsells.products{margin-top:12px;padding-top:26px;border-top:1px solid var(--msat-line)}
.single-product .related.products>h2,.single-product .upsells.products>h2{font-size:24px;margin:0 0 18px}

/* Footer should reflow naturally when fewer than four widget areas contain content. */
.msat-footer__widgets{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.msat-footer{border-top:3px solid color-mix(in srgb,var(--msat-accent) 82%,#fff)}

@media(max-width:1180px){
  .msat-category-menu{grid-template-columns:repeat(3,minmax(0,1fr))}
  .single-product div.product{grid-template-columns:minmax(300px,.9fr) minmax(360px,1.1fr);column-gap:30px}
}
@media(max-width:899px){
  .msat-category-menu{grid-template-columns:repeat(2,minmax(0,1fr))}
  .single-product div.product{display:block}
  .single-product div.product>.woocommerce-product-gallery{margin-bottom:26px!important}
  .single-product .woocommerce-tabs{margin-top:30px}
  .single-product .ft-spec-grid{grid-template-columns:1fr}
  body.search.search-results .storefront-sorting,.woocommerce.archive .storefront-sorting{align-items:flex-start}
}
@media(max-width:560px){
  .msat-categories__panel{width:calc(100vw - 20px);left:-2px;padding:12px}
  .msat-category-menu{grid-template-columns:1fr}
  .single-product form.cart{padding:14px}
  .single-product .woocommerce-tabs ul.tabs{display:grid;grid-template-columns:1fr}
  .single-product .woocommerce-tabs ul.tabs li{border-radius:8px!important}
  .single-product .woocommerce-tabs .panel{border-radius:10px;padding:18px!important}
  .single-product .msats-family-links{padding:16px!important}
  .single-product .msats-family-links__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .single-product table.shop_attributes th{width:40%}
}

/* 0.4.1 — Storefront sidebar width reset inside the ModoSAT catalog grid.
 * Storefront's classic left/right-sidebar rules use percentage widths; when
 * #secondary becomes a CSS-grid child that percentage is calculated against
 * the 250px grid track and collapses the widget area to ~54px. */
body.woocommerce.archive #secondary.msat-sidebar,
body.woocommerce.archive.left-sidebar #secondary.msat-sidebar,
body.woocommerce.archive.right-sidebar #secondary.msat-sidebar,
.woocommerce.archive .site-content > .col-full > #secondary.msat-sidebar {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.woocommerce.archive #secondary.msat-sidebar .widget,
.woocommerce.archive #secondary.msat-sidebar .widget > * {
    max-width: 100%;
    min-width: 0;
}
.woocommerce.archive #secondary.msat-sidebar .widget {
    width: 100%;
    overflow-wrap: normal;
    word-break: normal;
}
@media (max-width:899px){
    body.woocommerce.archive #secondary.msat-sidebar{
        width:100%!important;
        margin-top:30px!important;
    }
}

/* ==========================================================
   ModoSAT Store 0.5.0 — mobile header, hero controls,
   ModoSAT single product composition
   ========================================================== */

/* Brand fallback bundled with the child theme. */
.msat-brand__logo-link--bundled{display:inline-flex;align-items:center;line-height:0}
.msat-brand__bundled-logo{display:block;width:auto;max-width:150px;max-height:72px;object-fit:contain}

/* WhatsApp: local inline SVG, no icon font dependency. */
.msat-whatsapp__icon{display:block;flex:0 0 auto;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;overflow:visible}

/* Hero can be a pure visual banner when the artwork already contains copy. */
.msat-hero--image-only{min-height:0;aspect-ratio:2/1;align-items:stretch}
.msat-hero--image-only .msat-hero__media{position:absolute;inset:0}
.msat-hero--image-only .msat-hero__image{width:100%;height:100%;object-fit:cover}
.msat-hero__surface-link{position:absolute;inset:0;z-index:2;border-radius:inherit}
.msat-hero--no-overlay .msat-hero__shade{display:none!important}

/* Single product: use WooCommerce's natural flow rather than turning the whole
   product into a grid. Balanced 48/48 desktop product layout. */
.single-product div.product{
  display:block!important;
  width:100%!important;
}
.single-product div.product::before,
.single-product div.product::after{
  content:""!important;
  display:table!important;
}
.single-product div.product::after{clear:both!important}

.single-product div.product>.woocommerce-product-gallery{
  display:grid!important;
  grid-template-columns:82px minmax(0,1fr);
  grid-template-rows:auto;
  gap:14px;
  float:left!important;
  width:48%!important;
  max-width:48%!important;
  margin:0 0 34px!important;
  padding:18px!important;
  border:1px solid var(--msat-line)!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 2px 12px rgba(16,24,40,.035);
}
.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .woocommerce-product-gallery>.woocommerce-product-gallery__wrapper{
  grid-column:2;
  grid-row:1;
  min-width:0;
}
.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper{width:100%}
.single-product .woocommerce-product-gallery .flex-control-thumbs{
  grid-column:1;
  grid-row:1;
  display:flex!important;
  flex-direction:column;
  gap:9px;
  width:82px!important;
  margin:0!important;
  padding:0!important;
  align-self:start;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li{
  width:82px!important;
  height:82px!important;
  flex:0 0 82px!important;
  float:none!important;
  margin:0!important;
  border:1px solid #dfe4eb!important;
  border-radius:8px!important;
  overflow:hidden;
  background:#fff;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  opacity:.7;
  transition:opacity .15s ease,border-color .15s ease;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.single-product .woocommerce-product-gallery .flex-control-thumbs img:hover{opacity:1}
.single-product .woocommerce-product-gallery__image img{
  display:block;
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1;
  object-fit:contain!important;
  border-radius:8px!important;
  background:#fff;
}
.single-product .woocommerce-product-gallery__trigger{top:28px!important;right:28px!important}

.single-product div.product>.summary{
  float:right!important;
  width:48%!important;
  max-width:48%!important;
  margin:0 0 34px!important;
  padding:6px 0 0!important;
  clear:none!important;
}
.single-product div.product .product_title{
  margin:0 0 13px!important;
  font-size:clamp(27px,2.45vw,36px)!important;
  line-height:1.16!important;
  font-weight:800!important;
  letter-spacing:-.022em!important;
  color:var(--msat-ink-900)!important;
}
.single-product div.product .summary p.price,
.single-product div.product .summary span.price{
  margin:8px 0 15px!important;
  font-size:clamp(24px,2vw,30px)!important;
  line-height:1.1!important;
  color:var(--msat-header)!important;
  font-weight:850!important;
}
.single-product .woocommerce-product-details__short-description{
  margin:0 0 14px!important;
  color:#475467!important;
  font-size:15px!important;
  line-height:1.55!important;
}
.single-product .stock{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:2px 0 14px!important;
  padding:6px 10px!important;
  border:1px solid #b7dfc3;
  border-radius:999px;
  background:#f1fbf4;
  color:#18753a!important;
  font-size:13px!important;
  font-weight:750!important;
}
.single-product .stock::before{content:"";width:7px;height:7px;border-radius:50%;background:#29984a;display:block}
.single-product form.cart{
  display:flex!important;
  align-items:stretch!important;
  gap:10px!important;
  margin:4px 0 18px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.single-product form.cart .quantity{margin:0!important}
.single-product form.cart .quantity .qty{
  width:74px!important;
  min-height:48px!important;
  border:1px solid #cfd6df!important;
  border-radius:7px!important;
  background:#fff!important;
  font-weight:700;
}
.single-product form.cart .single_add_to_cart_button{
  min-height:48px!important;
  padding:0 26px!important;
  border-radius:7px!important;
  background:var(--msat-header)!important;
  border-color:var(--msat-header)!important;
  color:#fff!important;
  font-weight:800!important;
}
.single-product .wcpay-express-checkout-wrapper{margin:10px 0 16px}
.single-product .msats-shipping-scope{
  margin:15px 0!important;
  padding:12px 14px!important;
  border:1px solid #e1e6ed;
  border-radius:8px;
  background:#f8fafc;
  color:#475467;
  font-size:13px;
  line-height:1.5;
}
.single-product .product_meta{
  display:grid!important;
  grid-template-columns:1fr;
  gap:7px!important;
  margin:17px 0 0!important;
  padding:15px 0 0!important;
  border-top:1px solid #e4e8ee!important;
  color:#667085!important;
  font-size:13px!important;
}
.single-product .product_meta .tagged_as{font-size:12px;color:#7a8492}
.single-product .product_meta a{color:var(--msat-header)!important;text-decoration:none!important}

.single-product div.product>.woocommerce-tabs,
.single-product div.product>.msats-family-links,
.single-product div.product>.related,
.single-product div.product>.upsells{
  clear:both!important;
  float:none!important;
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* ModoSAT clean product tab strip. */
.single-product .woocommerce-tabs{padding-top:10px!important;margin-top:0!important}
.single-product .woocommerce-tabs ul.tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:24px!important;
  margin:0!important;
  padding:0!important;
  border-bottom:1px solid #dfe4eb!important;
  background:transparent!important;
}
.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs::after{display:none!important}
.single-product .woocommerce-tabs ul.tabs li{
  position:relative!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after{display:none!important}
.single-product .woocommerce-tabs ul.tabs li a{
  display:block!important;
  padding:13px 0 12px!important;
  color:#667085!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
}
.single-product .woocommerce-tabs ul.tabs li.active a{color:var(--msat-header)!important}
.single-product .woocommerce-tabs ul.tabs li.active::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0!important;right:0!important;bottom:-1px!important;
  height:3px!important;
  background:var(--msat-accent)!important;
}
.single-product .woocommerce-tabs .panel{
  margin:0!important;
  padding:25px 0 10px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#3f4a5a;
  line-height:1.65;
}
.single-product .woocommerce-tabs .panel>h2:first-child{margin-top:0!important;font-size:22px!important}

/* Family / alternative measures: keep ModoSAT's data logic, present it like
   a professional variation selector. */
.single-product .msats-family-links{
  margin:22px 0 26px!important;
  padding:22px!important;
  border:1px solid #e1e6ed!important;
  border-radius:12px!important;
  background:#f8fafc!important;
}
.single-product .msats-family-links>h2{margin:0 0 14px!important;font-size:21px!important}
.single-product .msats-family-links__grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important;gap:11px!important}
.single-product .msats-family-link{
  display:grid!important;
  grid-template-rows:92px auto auto!important;
  padding:10px!important;
  border:1px solid #dce2ea!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}
.single-product .msats-family-link:hover{border-color:var(--msat-header)!important;box-shadow:0 5px 15px rgba(16,24,40,.055)!important}
.single-product .msats-family-link>span:first-child{display:grid!important;place-items:center!important;min-width:0;overflow:hidden}
.single-product .msats-family-link img{width:84px!important;height:84px!important;object-fit:contain!important}
.single-product .msats-family-link strong{margin-top:6px!important;font-size:13px!important;line-height:1.3!important}
.single-product .msats-family-link small{margin-top:4px!important;font-size:12px!important;color:#475467!important}

.single-product .related.products,.single-product .upsells.products{margin-top:30px!important}
.single-product .related.products>h2,.single-product .upsells.products>h2{font-size:23px!important;margin-bottom:18px!important}

/* Tablet/mobile header: two-row composition prevents the search field from
   squeezing the brand, cart and menu. Keep category/WhatsApp utility row. */
@media(max-width:899px){
  .msat-header__main{padding:14px 0 12px!important}
  .msat-header__grid{
    display:grid!important;
    grid-template-columns:minmax(118px,1fr) auto!important;
    grid-template-areas:"brand actions" "search search"!important;
    column-gap:14px!important;
    row-gap:13px!important;
    align-items:center!important;
  }
  .msat-brand{grid-area:brand!important;min-width:0!important}
  .msat-brand .custom-logo,.msat-brand__bundled-logo{max-width:132px!important;max-height:66px!important}
  .msat-header-actions{grid-area:actions!important;gap:12px!important;min-width:0!important}
  .msat-header-search{grid-area:search!important;width:100%!important;min-width:0!important}
  .msat-header-search .msat-search{width:100%!important;min-height:48px!important}
  .msat-mobile-toggle{display:block!important}
  .msat-account{display:none!important}

  .msat-header__nav{display:block!important;background:#fff!important}
  .msat-nav-row{min-height:50px!important;display:flex!important;align-items:stretch!important;justify-content:space-between!important;gap:10px!important}
  .msat-primary-nav{display:none!important}
  .msat-categories{display:flex!important;min-width:0!important}
  .msat-categories__toggle{
    min-width:0!important;
    padding:0 15px!important;
    background:#f5f6f8!important;
    border-left:0!important;
    font-size:14px!important;
  }
  .msat-categories__panel{left:0!important;width:min(92vw,720px)!important;max-height:68vh!important}
  .msat-whatsapp{display:flex!important;margin-left:auto!important;padding:0 2px!important;font-size:13px!important}
  .msat-whatsapp__label{display:none!important}
  .msat-whatsapp__icon{width:22px!important;height:22px!important}
  .msat-mobile-nav{padding-top:6px!important}

  /* Product stacks naturally on mobile/tablet. */
  .single-product div.product>.woocommerce-product-gallery,
  .single-product div.product>.summary{
    float:none!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .single-product div.product>.woocommerce-product-gallery{margin-bottom:24px!important}
}

@media(max-width:640px){
  .msat-shell,.col-full{width:min(calc(100% - 28px),var(--msat-shell))!important}
  .msat-header__grid{grid-template-columns:minmax(105px,1fr) auto!important;column-gap:10px!important}
  .msat-brand .custom-logo,.msat-brand__bundled-logo{max-width:122px!important;max-height:61px!important}
  .msat-header-actions{gap:10px!important}
  .msat-header-cart{min-width:36px!important}
  .msat-header-search .msat-search button{
    width:auto!important;
    min-width:82px!important;
    padding:0 18px!important;
    font-size:14px!important;
  }
  .msat-header-search .msat-search button::after{content:none!important;display:none!important}
  .msat-header-search .msat-search input[type=search]{padding:0 16px!important;font-size:15px!important}
  .msat-nav-row{width:min(calc(100% - 20px),var(--msat-shell))!important}
  .msat-whatsapp__label{font-size:13px!important}
  .msat-categories__toggle{padding:0 12px!important}

  .msat-hero--image-only{aspect-ratio:2/1!important;min-height:0!important;border-radius:10px!important}

  .single-product div.product>.woocommerce-product-gallery{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:12px!important;
  }
  .single-product .woocommerce-product-gallery .flex-viewport,
  .single-product .woocommerce-product-gallery>.woocommerce-product-gallery__wrapper{grid-column:1!important;grid-row:1!important}
  .single-product .woocommerce-product-gallery .flex-control-thumbs{
    grid-column:1!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
  }
  .single-product .woocommerce-product-gallery .flex-control-thumbs li{
    width:auto!important;height:auto!important;aspect-ratio:1/1;min-width:0!important;flex:initial!important;
  }
  .single-product .product_title{font-size:26px!important}
  .single-product form.cart{flex-wrap:nowrap!important}
  .single-product form.cart .single_add_to_cart_button{flex:1!important;padding:0 15px!important}
  .single-product .woocommerce-tabs ul.tabs{gap:14px!important;overflow-x:auto!important;flex-wrap:nowrap!important;scrollbar-width:thin}
  .single-product .woocommerce-tabs ul.tabs li{flex:0 0 auto!important}
  .single-product .msats-family-links{padding:16px!important}
  .single-product .msats-family-links__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* ==========================================================
   ModoSAT Store 0.5.1 — hero variants, product containment,
   full-width solid tabs
   ========================================================== */

/* Hero: image and CTA may have independent links. */
.msat-hero__media-link{display:block;cursor:pointer;text-decoration:none!important;z-index:0}
.msat-hero__content{pointer-events:none}
.msat-hero__content a,.msat-hero__content button{pointer-events:auto}
.msat-hero--content-center .msat-hero__content{margin-inline:auto;text-align:center;max-width:780px}
.msat-hero--content-center .msat-hero__text{margin-inline:auto}
.msat-hero--content-card .msat-hero__content{
  margin:34px;
  padding:30px 34px;
  max-width:640px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:14px;
  background:rgba(14,24,64,.86);
  box-shadow:0 12px 30px rgba(10,20,50,.16),inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter:blur(3px);
}
.msat-hero--text-only{
  min-height:0!important;
  aspect-ratio:auto!important;
  background:linear-gradient(135deg,#f7f9fc 0%,#eef2f8 100%)!important;
  color:var(--msat-ink-900)!important;
  border:1px solid var(--msat-line);
}
.msat-hero--text-only .msat-hero__content{position:relative;padding:52px clamp(28px,6vw,76px);max-width:900px}
.msat-hero--text-only.msat-hero--content-center .msat-hero__content{margin-inline:auto}
.msat-hero--text-only .msat-eyebrow{color:#8a6800}
.msat-hero--text-only h1{color:var(--msat-ink-900)!important}
.msat-hero--text-only .msat-hero__text{color:#4f5d70!important}
.msat-hero--text-only.msat-hero--content-card .msat-hero__content{
  margin:34px;
  background:#fff;
  border-color:#dde3eb;
  box-shadow:0 8px 24px rgba(16,24,40,.06),inset 0 1px 0 #fff;
}

/* Gallery safety: FlexSlider is allowed to own the slide sizing, but nothing
   from the product gallery may paint behind later product sections. */
.single-product div.product>.woocommerce-product-gallery{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  contain:layout paint;
}
.single-product .woocommerce-product-gallery .flex-viewport{
  position:relative!important;
  overflow:hidden!important;
  min-width:0!important;
  max-width:100%!important;
}
.single-product .woocommerce-product-gallery__wrapper{
  max-width:100%!important;
  overflow:hidden!important;
}
.single-product .woocommerce-product-gallery__image{
  max-width:100%!important;
  overflow:hidden!important;
}
.single-product .woocommerce-product-gallery:not(.flexslider) .woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image:not(:first-child){display:block!important}

/* Alternatives and WooCommerce recommendations form their own paint layers.
   A gallery slide can therefore never appear as a background underneath them. */
.single-product .msats-family-links,
.single-product .msats-xref-links,
.single-product .related.products,
.single-product .upsells.products{
  position:relative!important;
  z-index:3!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:#fff!important;
}
.single-product .msats-family-links__grid,
.single-product .related.products ul.products,
.single-product .upsells.products ul.products{position:relative!important;z-index:1!important;background:#fff!important}
.single-product .msats-family-link{overflow:hidden!important}
.single-product .msats-family-link>span:first-child{height:92px!important;max-height:92px!important;overflow:hidden!important}
.single-product .msats-family-link img{display:block!important;width:84px!important;height:84px!important;max-width:84px!important;max-height:84px!important;object-fit:contain!important;margin:auto!important;position:static!important;transform:none!important}
.single-product .related.products li.product,
.single-product .upsells.products li.product{overflow:hidden!important;background:#fff!important;position:relative!important;z-index:1!important}
.single-product .related.products li.product img,
.single-product .upsells.products li.product img{position:static!important;transform:none!important;max-width:100%!important;height:auto!important}

/* Full-width tabs: compact, solid and slightly raised without heavy assets. */
.single-product .woocommerce-tabs{clear:both!important;padding-top:18px!important}
.single-product .woocommerce-tabs ul.tabs{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(155px,1fr))!important;
  gap:9px!important;
  width:100%!important;
  margin:0 0 14px!important;
  padding:0!important;
  border:0!important;
  overflow:visible!important;
  background:transparent!important;
}
.single-product .woocommerce-tabs ul.tabs li{
  display:block!important;
  position:relative!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #cfd7e2!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,#fff 0%,#edf1f6 100%)!important;
  box-shadow:0 2px 0 #c4ccd7,0 5px 12px rgba(16,24,40,.055),inset 0 1px 0 rgba(255,255,255,.95)!important;
  transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease!important;
}
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after{display:none!important}
.single-product .woocommerce-tabs ul.tabs li:hover{
  transform:translateY(-1px)!important;
  border-color:#aeb9c8!important;
  box-shadow:0 3px 0 #bac4d1,0 7px 15px rgba(16,24,40,.07),inset 0 1px 0 #fff!important;
}
.single-product .woocommerce-tabs ul.tabs li a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  width:100%!important;
  padding:9px 12px!important;
  color:#344054!important;
  text-align:center!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:800!important;
  letter-spacing:.015em!important;
  text-transform:none!important;
  text-decoration:none!important;
}
.single-product .woocommerce-tabs ul.tabs li.active{
  transform:translateY(1px)!important;
  border-color:var(--msat-header)!important;
  background:linear-gradient(180deg,#31489b 0%,var(--msat-header) 100%)!important;
  box-shadow:0 1px 0 #17245f,0 3px 8px rgba(37,55,131,.18),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
.single-product .woocommerce-tabs ul.tabs li.active a{color:#fff!important}
.single-product .woocommerce-tabs ul.tabs li.active::after{display:none!important}
.single-product .woocommerce-tabs .panel{
  margin:0!important;
  padding:24px!important;
  border:1px solid #dfe4eb!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 2px 10px rgba(16,24,40,.025)!important;
}

@media(max-width:640px){
  .msat-hero--content-card .msat-hero__content,
  .msat-hero--text-only.msat-hero--content-card .msat-hero__content{margin:18px;padding:24px}
  .msat-hero--text-only .msat-hero__content{padding:34px 24px}
  .single-product .woocommerce-tabs ul.tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;overflow:visible!important}
  .single-product .woocommerce-tabs ul.tabs li{flex:initial!important}
  .single-product .woocommerce-tabs ul.tabs li a{font-size:11px!important;padding:8px!important;min-height:42px!important}
  .single-product .woocommerce-tabs .panel{padding:18px!important}
}

/* ==========================================================
   ModoSAT Store 0.6.0 — ecosystem robustness, lighter WhatsApp,
   promo surfaces and homepage refinements
   ========================================================== */

/* WhatsApp: smaller, cleaner and visually quieter on both desktop/mobile. */
.msat-whatsapp{gap:6px!important;font-weight:720!important;letter-spacing:-.01em}
.msat-whatsapp__icon{width:19px!important;height:19px!important;stroke-width:1.75!important}
.msat-whatsapp:hover .msat-whatsapp__icon{transform:translateY(-1px)}
.msat-whatsapp__icon{transition:transform .16s ease}

/* Promotional banner / modal. No external assets or libraries. */
.msat-promo[hidden]{display:none!important}
.msat-promo--banner{background:#fff;border-bottom:1px solid var(--msat-border)}
.msat-promo--banner .msat-promo__card{position:relative;width:min(calc(100% - 40px),var(--msat-shell));margin:12px auto;padding:14px 48px 14px 18px;border:1px solid #dce2ea;border-radius:10px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 4px 14px rgba(16,24,40,.045)}
.msat-promo--popup{position:fixed;inset:0;z-index:99990;display:grid;place-items:center;padding:24px}
.msat-promo__backdrop{position:absolute;inset:0;background:rgba(10,18,34,.56);backdrop-filter:blur(2px)}
.msat-promo--popup .msat-promo__card{position:relative;width:min(620px,calc(100vw - 32px));max-height:min(82vh,760px);overflow:auto;padding:24px 50px 24px 24px;border:1px solid #dbe2eb;border-radius:14px;background:#fff;box-shadow:0 24px 70px rgba(10,18,34,.24)}
.msat-promo__content{font-size:15px;line-height:1.58;color:#344054}
.msat-promo__content>:first-child{margin-top:0}.msat-promo__content>:last-child{margin-bottom:0}
.msat-promo__image,.msat-promo__image-link{display:block;width:100%;max-width:100%;border-radius:9px}
.msat-promo__image{height:auto;object-fit:cover;margin:0 0 14px}
.msat-promo__button{display:inline-flex;align-items:center;justify-content:center;margin-top:12px;padding:10px 16px;border-radius:7px;background:var(--msat-header);color:#fff!important;text-decoration:none!important;font-weight:800}
.msat-promo__close{position:absolute;top:10px;right:10px;width:32px;height:32px;border:0!important;border-radius:999px!important;background:#eef2f6!important;color:#344054!important;font-size:22px!important;line-height:1!important;padding:0!important;box-shadow:none!important}

/* Homepage: if categories are already available in the header, the sidebar can
   remain useful for widgets/promotions without repeating the same taxonomy. */
.msat-home-sidebar:empty{display:none!important}

@media(max-width:899px){
  .msat-whatsapp__icon{width:17px!important;height:17px!important}
  .msat-whatsapp{gap:5px!important;font-size:12.5px!important}
  .msat-promo--banner .msat-promo__card{width:min(calc(100% - 24px),var(--msat-shell));margin:10px auto;padding:12px 42px 12px 14px}
}

/* ==========================================================
   ModoSAT Store 0.7.5 — stable commercial homepage extension
   Based on 0.6.0: no outer wrapper width overrides.
   ========================================================== */

:root{--msat-shell:1460px}

/* Optional desktop decluttering when the left category rail is active. */
@media(min-width:900px){
  body.msat-hide-header-categories .msat-categories{display:none!important}
}

/* Three-column desktop composition, without changing .site/.col-full sizing. */
.msat-home-layout.has-sidebar-both{
  display:grid;
  grid-template-columns:205px minmax(0,1fr) 220px;
  gap:18px;
  align-items:start;
}
.msat-home-layout.has-sidebar-both .msat-home-sidebar--left{grid-column:1}
.msat-home-layout.has-sidebar-both .msat-home-main{grid-column:2;min-width:0}
.msat-home-layout.has-sidebar-both .msat-home-sidebar--right{grid-column:3;min-width:0}

/* Left rail: compact ModoSAT compact category navigator in ModoSAT colors. */
.msat-home-sidebar--left .msat-home-sidebar__categories{
  padding:0;
  overflow:hidden;
  border-radius:10px;
  box-shadow:0 3px 14px rgba(21,31,47,.045);
}
.msat-home-sidebar--left .msat-home-sidebar__categories>h2{
  margin:0!important;
  padding:13px 14px!important;
  border:0!important;
  background:linear-gradient(180deg,#e7a52e 0%,#dc9620 100%);
  color:#fff!important;
  font-size:14px!important;
  line-height:1.25!important;
}
.msat-home-sidebar--left .msat-category-menu.is-compact{padding:4px 0}
.msat-home-sidebar--left .msat-category-menu.is-compact .msat-category-menu__item{
  position:relative;
  margin:0;
  padding:0;
  border-bottom:1px solid #edf0f3;
}
.msat-home-sidebar--left .msat-category-menu.is-compact .msat-category-menu__item:last-child{border-bottom:0}
.msat-home-sidebar--left .msat-category-menu.is-compact .msat-category-menu__item>a{
  display:block;
  padding:11px 28px 11px 13px;
  color:#394352;
  font-size:12px;
  line-height:1.34;
  font-weight:650;
  text-decoration:none;
}
.msat-home-sidebar--left .msat-category-menu.is-compact .msat-category-menu__item>a::after{
  content:"›";
  position:absolute;
  top:50%;
  right:11px;
  transform:translateY(-50%);
  color:#8a95a3;
  font-size:17px;
  font-weight:400;
}
.msat-home-sidebar--left .msat-category-menu.is-compact .msat-category-menu__item>a:hover{
  background:#f8fafc;
  color:var(--msat-header);
}
.msat-home-sidebar--left .msat-category-menu.is-compact .msat-category-menu__children{display:none!important}

/* Right rail: commercial widgets, deliberately compact. */
.msat-home-sidebar--right .msat-widget{
  margin:0 0 14px;
  padding:14px;
  border:1px solid #e1e5eb;
  border-radius:10px;
  background:#fff;
  box-shadow:0 3px 14px rgba(21,31,47,.045);
}
.msat-home-sidebar--right .msat-widget__title,
.msat-home-sidebar--right .widget-title,
.msat-home-sidebar--right .widget h2{
  margin:0 0 12px;
  padding:0 0 10px;
  border-bottom:1px solid #e6e9ee;
  color:#20252b;
  font-size:15px;
  line-height:1.25;
}

/* Existing WooCommerce product-list widget: readable at narrow widths. */
.msat-home-sidebar--right .product_list_widget{margin:0!important;padding:0!important;list-style:none!important}
.msat-home-sidebar--right .product_list_widget li{
  display:block!important;
  min-height:0!important;
  margin:0!important;
  padding:9px 0!important;
  border-bottom:1px solid #edf0f3;
}
.msat-home-sidebar--right .product_list_widget li:last-child{border-bottom:0}
.msat-home-sidebar--right .product_list_widget li>a{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  text-decoration:none!important;
}
.msat-home-sidebar--right .product_list_widget li>a img{
  float:none!important;
  width:54px!important;
  height:54px!important;
  max-width:54px!important;
  margin:0!important;
  object-fit:contain!important;
  border:1px solid #e7ebf0!important;
  border-radius:7px!important;
  background:#fff!important;
}
.msat-home-sidebar--right .product_list_widget li>a .product-title{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  color:#344054!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:700!important;
  overflow-wrap:anywhere!important;
}
.msat-home-sidebar--right .product_list_widget li>.woocommerce-Price-amount,
.msat-home-sidebar--right .product_list_widget li>.price{
  display:inline-block!important;
  margin:6px 0 0 63px!important;
  color:#986700!important;
  font-size:11px!important;
  font-weight:800!important;
}

/* New lightweight CTA/banner widget. */
.msat-home-sidebar .msat-widget-cta-wrap,
.msat-home-wide .msat-widget-cta-wrap,
.msat-home-widgets .msat-widget-cta-wrap{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.msat-merch-card{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px;
  background:linear-gradient(155deg,#1d222a 0%,#282f39 72%,#25325c 125%);
  color:#fff;
  box-shadow:0 7px 20px rgba(17,24,39,.11);
}
.msat-merch-card__media{aspect-ratio:16/8;overflow:hidden;background:#eef2f6}
.msat-merch-card__media img{display:block;width:100%;height:100%;object-fit:cover}
.msat-merch-card__body{padding:16px}
.msat-merch-card__eyebrow{margin:0 0 7px;color:#ffcf68;font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.msat-merch-card__title{margin:0 0 8px!important;color:#fff!important;font-size:19px!important;line-height:1.08!important}
.msat-merch-card__text{margin:0 0 13px;color:#d7dde5;font-size:11.5px;line-height:1.5}
.msat-merch-card__button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:10px 12px;border-radius:7px;background:var(--msat-accent);color:#17191b!important;text-decoration:none!important;font-size:12px;font-weight:800}
.msat-merch-card--blue{background:linear-gradient(145deg,#1c2a69 0%,var(--msat-header) 72%,#31489b 100%)}
.msat-merch-card--amber{background:linear-gradient(145deg,#bf7810 0%,#e2a12d 100%);color:#191919}
.msat-merch-card--amber .msat-merch-card__eyebrow,.msat-merch-card--amber .msat-merch-card__text,.msat-merch-card--amber .msat-merch-card__title{color:#17191b!important}
.msat-merch-card--amber .msat-merch-card__button{background:#20252b;color:#fff!important}
.msat-merch-card--light{border-color:#dfe4ea;background:linear-gradient(145deg,#fff,#f2f5f8);color:#20252b;box-shadow:0 5px 16px rgba(16,24,40,.06)}
.msat-merch-card--light .msat-merch-card__eyebrow{color:#8a6500}
.msat-merch-card--light .msat-merch-card__title{color:#20252b!important}
.msat-merch-card--light .msat-merch-card__text{color:#5f6b79}
.msat-merch-card--light .msat-merch-card__button{background:var(--msat-header);color:#fff!important}

/* Single featured product widget. */
.msat-home-sidebar .msat-widget-product-wrap{padding:0!important;overflow:hidden}
.msat-product-spotlight{padding:14px;background:#fff}
.msat-product-spotlight__eyebrow{margin:0 0 9px;color:#8a6500;font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.msat-product-spotlight__media{display:block;padding:8px;border-radius:8px;background:#f7f8fa;text-align:center}
.msat-product-spotlight__media img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;margin:0}
.msat-product-spotlight h3{margin:10px 0 6px!important;font-size:13px!important;line-height:1.3!important}
.msat-product-spotlight h3 a{text-decoration:none}
.msat-product-spotlight__price{margin:0 0 10px;color:#111827;font-size:14px;font-weight:800}
.msat-product-spotlight__button{display:flex;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:7px;background:var(--msat-header);color:#fff!important;text-decoration:none!important;font-size:11px;font-weight:800}

/* Dynamic product list widget. */
.msat-home-sidebar .msat-widget-product-list-wrap{padding:14px!important}
.msat-dynamic-products{list-style:none!important;margin:0!important;padding:0!important}
.msat-dynamic-products__item{margin:0!important;padding:9px 0!important;border-bottom:1px solid #edf0f3}
.msat-dynamic-products__item:last-child{border-bottom:0}
.msat-dynamic-products__link{display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;gap:9px!important;align-items:center!important;min-width:0!important;text-decoration:none!important}
.msat-dynamic-products__media{display:grid;place-items:center;width:54px;height:54px;overflow:hidden;border:1px solid #e7ebf0;border-radius:7px;background:#fff}
.msat-dynamic-products__media img{display:block!important;width:100%!important;height:100%!important;margin:0!important;object-fit:contain!important}
.msat-dynamic-products__body{display:block;min-width:0}
.msat-dynamic-products__title{display:-webkit-box;overflow:hidden;color:#344054;font-size:11px;line-height:1.3;font-weight:700;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.msat-dynamic-products__price{display:block;margin-top:5px;color:#986700;font-size:11px;line-height:1.25;font-weight:800}
.msat-dynamic-products__price small{color:#6f7782;font-size:9px;font-weight:600}

/* Flexible commercial bands above, between and below homepage modules. */
.msat-home-wide{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;margin:0 0 18px}
.msat-home-wide--bottom{margin:22px 0 0}
.msat-home-wide>.msat-widget{grid-column:span 12;margin:0}
.msat-home-wide .msat-merch-card__body{padding:18px 22px}
.msat-home-wide .msat-merch-card__title{font-size:22px!important}
.msat-home-widgets--mid{margin:24px 0 30px!important}

/* Tablet: preserve useful category navigation; move commercial rail below main. */
@media(max-width:1199px) and (min-width:900px){
  .msat-home-layout.has-sidebar-both{
    grid-template-columns:200px minmax(0,1fr);
    gap:18px;
  }
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--left{grid-column:1;grid-row:1/3}
  .msat-home-layout.has-sidebar-both .msat-home-main{grid-column:2;grid-row:1}
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--right{
    grid-column:2;
    grid-row:2;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-top:0;
  }
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--right .msat-widget{margin:0}
}

/* Mobile: header owns category navigation; no narrow left rail. */
@media(max-width:899px){
  body.msat-hide-header-categories .msat-categories{display:flex!important}
  .msat-home-layout.has-sidebar-both{display:block}
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--left{display:none!important}
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--right{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    width:100%;
    max-width:none;
    margin-top:28px;
  }
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--right .msat-widget{margin:0;width:100%;min-width:0}
  .msat-home-wide{display:block}
  .msat-home-wide>.msat-widget{margin-bottom:12px}
}

@media(max-width:640px){
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--right{grid-template-columns:1fr}
  .msat-home-sidebar--right .product_list_widget li>a,.msat-dynamic-products__link{grid-template-columns:66px minmax(0,1fr)!important;gap:12px!important}
  .msat-home-sidebar--right .product_list_widget li>a img,.msat-dynamic-products__media{width:66px!important;height:66px!important;max-width:66px!important}
  .msat-home-sidebar--right .product_list_widget li>a .product-title,.msat-dynamic-products__title{font-size:13px!important;line-height:1.32!important}
  .msat-home-sidebar--right .product_list_widget li>.woocommerce-Price-amount,.msat-home-sidebar--right .product_list_widget li>.price{margin-left:78px!important;font-size:12.5px!important}
  .msat-dynamic-products__price{font-size:12.5px!important}
  .msat-merch-card__body{padding:16px}
}

/* Footer link contrast on dark background. */
.msat-footer .widget a,.msat-footer .menu a,.msat-footer .wp-block-navigation-item__content{color:#c8cfdb!important;opacity:1!important}
.msat-footer .widget a:hover,.msat-footer .menu a:hover,.msat-footer .wp-block-navigation-item__content:hover{color:#fff!important}

/* ==========================================================
   ModoSAT Store 0.8.0 — launch-candidate visual system
   Responsive hardening, product gallery fix, page/product polish
   ========================================================== */
:root{
  --msat-ink:#172033;--msat-ink-2:#344054;--msat-surface:#f6f8fb;
  --msat-line:#e3e8ef;--msat-card:#fff;--msat-radius-lg:16px;
  --msat-shadow-soft:0 8px 28px rgba(16,24,40,.07);
}
body.msat-store-theme{background:#fff;color:var(--msat-ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.msat-store-theme .site-content{background:linear-gradient(180deg,#fff 0,#fff 420px,#fafbfd 100%)}
.msat-store-theme .entry-title,.msat-store-theme .page-title{font-weight:800;letter-spacing:-.025em;color:var(--msat-ink)}
.msat-store-theme .woocommerce-breadcrumb{font-size:13px;color:#667085;margin-bottom:22px}

/* Header: compact technical storefront, retaining Storefront/WC semantics. */
.msat-header__main{box-shadow:inset 0 -1px 0 rgba(255,255,255,.08)}
.msat-search{box-shadow:0 2px 12px rgba(9,17,55,.12)}
.msat-search:focus-within{outline:3px solid color-mix(in srgb,var(--msat-accent) 55%,transparent);outline-offset:2px}
.msat-primary-menu a{letter-spacing:-.005em}

/* Home: stronger hierarchy, quieter cards. */
.msat-home-section{margin:44px 0}
.msat-section-head{align-items:center;border-bottom:0;padding-bottom:0;margin-bottom:20px}
.msat-section-head h2,.msat-section-title{font-size:clamp(21px,2vw,28px);font-weight:820;letter-spacing:-.025em}
.msat-section-head>a{padding:8px 12px;border:1px solid var(--msat-line);border-radius:999px;background:#fff}
.msat-category-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.msat-category-card{border-color:var(--msat-line);border-radius:13px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.msat-category-card:hover{transform:translateY(-2px);border-color:#cbd4df;box-shadow:var(--msat-shadow-soft)}
.msat-category-card>a{padding:14px;grid-template-columns:92px minmax(0,1fr);column-gap:15px}
.msat-category-card__media{width:92px;height:92px;background:#f7f9fc}

/* Product cards: consistent catalogue rhythm on home, archive and related. */
.msat-store-theme .woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px!important;margin:0!important}
.msat-store-theme .woocommerce ul.products::before,.msat-store-theme .woocommerce ul.products::after{display:none!important}
.msat-store-theme .woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:14px 14px 16px!important;border:1px solid var(--msat-line);border-radius:13px;background:#fff;min-width:0;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.msat-store-theme .woocommerce ul.products li.product:hover{transform:translateY(-2px);border-color:#cbd4df;box-shadow:var(--msat-shadow-soft)}
.msat-store-theme .woocommerce ul.products li.product img{width:100%!important;aspect-ratio:1/1;object-fit:contain;background:#fff;margin:0 0 13px!important}
.msat-store-theme .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px!important;line-height:1.38!important;font-weight:720!important;color:var(--msat-ink)!important;min-height:2.76em;padding:0!important;margin:0 0 8px!important}
.msat-store-theme .woocommerce ul.products li.product .price{font-size:16px!important;font-weight:820!important;color:var(--msat-header)!important;margin:0 0 10px!important}
.msat-store-theme .woocommerce ul.products li.product .button{width:100%;text-align:center;margin-top:auto!important;padding:10px 12px!important;border-radius:8px!important}

/* Archive/shop composition. */
.woocommerce.archive .woocommerce-products-header{margin-bottom:24px}
.woocommerce.archive .woocommerce-products-header__title.page-title{font-size:clamp(28px,3vw,40px)}
.woocommerce.archive .storefront-sorting{padding:12px 0;border-top:1px solid var(--msat-line);border-bottom:1px solid var(--msat-line);margin-bottom:22px}
.woocommerce.archive #secondary .widget{border:1px solid var(--msat-line);border-radius:12px;background:#fff;padding:16px;margin-bottom:16px}
.woocommerce.archive #secondary .widget-title{font-size:15px;font-weight:800;margin-bottom:13px;padding-bottom:11px;border-bottom:1px solid var(--msat-line)}

/* Generic pages/posts: readable, deliberately distinct from catalogue UI. */
.msat-store-theme.page:not(.woocommerce-page) .site-main>article,
.msat-store-theme.single-post .site-main>article{max-width:920px;margin-inline:auto;background:#fff}
.msat-store-theme.page:not(.woocommerce-page) .entry-content,
.msat-store-theme.single-post .entry-content{font-size:16px;line-height:1.72;color:#344054}
.msat-store-theme.page:not(.woocommerce-page) .entry-content h2,
.msat-store-theme.single-post .entry-content h2{margin-top:1.8em;font-size:clamp(22px,2.4vw,30px);color:var(--msat-ink)}

/* Single product: premium technical layout while preserving Storefront hooks. */
.single-product .site-content>.col-full{max-width:var(--msat-shell)}
.single-product div.product>.summary{padding:4px 0 24px!important}
.single-product .product_title{font-size:clamp(28px,3.1vw,42px)!important;line-height:1.08!important;letter-spacing:-.035em!important;color:var(--msat-ink)!important}
.single-product .summary .price{font-size:clamp(24px,2.5vw,34px)!important;color:var(--msat-header)!important;font-weight:850!important}
.single-product .woocommerce-product-details__short-description{color:#475467;font-size:15px;line-height:1.65}
.single-product form.cart{border:1px solid var(--msat-line);background:#f8fafc;border-radius:12px;padding:16px!important;display:flex;gap:10px;align-items:stretch}
.single-product form.cart .quantity .qty{height:46px;border-radius:8px;border:1px solid #cfd7e2;background:#fff}
.single-product form.cart .single_add_to_cart_button{min-height:46px;border-radius:8px!important;padding-inline:22px!important}
.single-product .product_meta{font-size:13px;color:#667085;border-top:1px solid var(--msat-line);padding-top:16px;margin-top:18px}

/* CRITICAL FIX: WooCommerce FlexSlider must own the track width.
   0.5.1 constrained the wrapper to max-width:100%, which can make slide 2+
   vanish on narrow screens when FlexSlider translates the track. */
.single-product .woocommerce-product-gallery.flexslider .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper{
  max-width:none!important;
  overflow:visible!important;
}
.single-product .woocommerce-product-gallery.flexslider .woocommerce-product-gallery__image{
  overflow:visible!important;
}
.single-product .woocommerce-product-gallery .flex-viewport{width:100%!important}
.single-product .woocommerce-product-gallery .flex-viewport img{display:block!important;width:100%!important;height:auto!important;object-fit:contain}
.single-product .woocommerce-product-gallery .flex-control-thumbs img{aspect-ratio:1/1;object-fit:contain;background:#fff}

/* Checkout/cart/account: same design language, no template fork required. */
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-account .woocommerce-MyAccount-content{border:1px solid var(--msat-line);border-radius:13px;background:#fff;padding:20px}
.woocommerce-checkout .form-row input.input-text,.woocommerce-checkout .form-row textarea,
.woocommerce-account input.input-text{border:1px solid #cfd7e2;border-radius:8px;background:#fff;box-shadow:none}
.woocommerce-checkout .form-row input.input-text:focus,.woocommerce-account input.input-text:focus{border-color:var(--msat-header);outline:3px solid rgba(37,55,131,.10)}

/* Tablet. */
@media(max-width:1100px){
  .msat-store-theme .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
  .msat-category-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .msat-header__grid{grid-template-columns:150px minmax(240px,1fr) auto;gap:16px}
  .msat-account span,.msat-native-cart__total{display:none}
}

/* Mobile-first hardening. */
@media(max-width:899px){
  .msat-shell,.col-full{width:min(calc(100% - 28px),var(--msat-shell))}
  .site-content{padding-top:18px}
  .msat-header__main{padding:10px 0 12px}
  .msat-header__grid{grid-template-columns:minmax(90px,128px) 1fr auto;gap:10px;align-items:center}
  .msat-brand .custom-logo,.msat-brand__bundled-logo{max-width:118px!important;max-height:58px!important}
  .msat-header-search{grid-column:1/-1;grid-row:2}
  .msat-search{min-height:44px}
  .msat-header__nav .msat-primary-nav{display:none}
  .msat-mobile-toggle{display:inline-flex!important}
  .msat-nav-row{min-height:44px;justify-content:space-between}
  .msat-categories__toggle{min-width:0}
  .msat-home-section{margin:32px 0}
  .msat-hero{min-height:280px;border-radius:12px}
  .msat-hero__content{padding:30px}
  .msat-promo-grid{grid-template-columns:1fr}
  .msat-store-theme .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important}
  .msat-store-theme .woocommerce ul.products li.product{padding:10px 10px 12px!important}
  .single-product div.product>.woocommerce-product-gallery{width:100%!important;max-width:100%!important;float:none!important;margin-bottom:22px!important}
  .single-product div.product>.summary{width:100%!important;max-width:none!important;float:none!important}
}

@media(max-width:640px){
  .msat-shell,.col-full{width:min(calc(100% - 20px),var(--msat-shell))}
  .msat-announcement{font-size:11px;padding:5px 0}
  .msat-whatsapp__label{display:none}
  .msat-category-cards{grid-template-columns:1fr}
  .msat-category-card>a{grid-template-columns:78px minmax(0,1fr);padding:11px}.msat-category-card__media{width:78px;height:78px}
  .msat-section-head{align-items:flex-end}.msat-section-head>a{font-size:12px;padding:6px 9px}
  .msat-store-theme .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px!important}
  .msat-store-theme .woocommerce ul.products li.product{border-radius:10px;padding:9px!important}
  .msat-store-theme .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12.5px!important;min-height:3.8em}
  .msat-store-theme .woocommerce ul.products li.product .price{font-size:14px!important}
  .msat-store-theme .woocommerce ul.products li.product .button{font-size:12px;padding:9px 6px!important}
  .single-product div.product>.woocommerce-product-gallery{padding:8px!important;border-radius:10px!important;overflow:hidden!important;contain:layout paint!important}
  .single-product .woocommerce-product-gallery .flex-viewport{min-height:0!important;overflow:hidden!important;touch-action:pan-y pinch-zoom}
  .single-product .woocommerce-product-gallery .flex-control-thumbs{display:flex!important;gap:7px!important;overflow-x:auto!important;scroll-snap-type:x proximity;padding-bottom:3px!important;grid-template-columns:none!important}
  .single-product .woocommerce-product-gallery .flex-control-thumbs li{flex:0 0 62px!important;width:62px!important;scroll-snap-align:start}
  .single-product .product_title{font-size:27px!important}
  .single-product form.cart{padding:12px!important;flex-wrap:wrap!important}
  .single-product form.cart .single_add_to_cart_button{flex:1 1 180px!important}
  .woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-checkout #order_review,.woocommerce-account .woocommerce-MyAccount-content{padding:14px;border-radius:10px}
}

@media(max-width:370px){
  .msat-store-theme .woocommerce ul.products{grid-template-columns:1fr}
  .msat-store-theme .woocommerce ul.products li.product .woocommerce-loop-product__title{min-height:0;font-size:14px!important}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* ============================================================
   0.8.1 — PRODUCT GALLERY STABILITY
   Keep WooCommerce/Storefront in charge of FlexSlider geometry.
   Earlier ModoSAT rules turned the gallery itself into a CSS grid and
   constrained/contained the FlexSlider viewport. That can leave slide 2+
   translated outside the painted area. These rules intentionally reset
   structural overrides and keep only ModoSAT's cosmetic treatment.
   ============================================================ */
.single-product div.product > .woocommerce-product-gallery{
  display:block!important;
  position:relative!important;
  isolation:auto!important;
  contain:none!important;
  overflow:visible!important;
}
.single-product .woocommerce-product-gallery .flex-viewport{
  display:block!important;
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  overflow:hidden!important;
  contain:none!important;
  touch-action:auto!important;
  grid-column:auto!important;
  grid-row:auto!important;
}
.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery.flexslider .woocommerce-product-gallery__wrapper{
  display:block!important;
  max-width:none!important;
  overflow:visible!important;
  contain:none!important;
  grid-column:auto!important;
  grid-row:auto!important;
}
.single-product .woocommerce-product-gallery.flexslider .woocommerce-product-gallery__image{
  display:block!important;
  max-width:none!important;
  overflow:visible!important;
  contain:none!important;
}
.single-product .woocommerce-product-gallery:not(.flexslider) .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image{
  display:block!important;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  width:100%!important;
  margin:10px 0 0!important;
  padding:0 0 3px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  grid-column:auto!important;
  grid-row:auto!important;
  scrollbar-width:thin;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li{
  flex:0 0 72px!important;
  width:72px!important;
  height:72px!important;
  float:none!important;
  margin:0!important;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
@media(max-width:767px){
  .single-product div.product > .woocommerce-product-gallery{
    width:100%!important;
    max-width:100%!important;
    float:none!important;
    overflow:visible!important;
    contain:none!important;
  }
  .single-product .woocommerce-product-gallery .flex-control-thumbs li{
    flex-basis:62px!important;
    width:62px!important;
    height:62px!important;
  }
}

/* ============================================================
   0.9.0 — MODOSAT MODULE COMPATIBILITY + LIGHT COMMERCE UX
   Storefront remains authoritative for WooCommerce templates.
   No Owl/Bootstrap/icon-font dependency is introduced here.
   ============================================================ */

/* Native ModoSAT Search: fit the ModoSAT header search slot without overriding
   the plugin's result logic or REST/index implementation. */
.msat-header-search .msat-live-search{width:100%;min-width:0}
.msat-header-search .msat-live-search__form{width:100%}
.msat-header-search .msat-live-search__panel{z-index:10020}
.msat-header-search .msat-live-search__input{min-width:0}

/* Native ModoSAT Cart trigger in the header. The drawer itself is owned and
   styled by the plugin; the theme only aligns the trigger to its slot. */
.msat-header-cart .msat-cart-trigger-shell{color:#fff;max-width:190px}
.msat-header-cart .msat-cart-trigger{color:#fff!important}
.msat-header-cart .msat-cart-trigger__count{background:var(--msat-accent);color:#151515;border-color:var(--msat-header)}
.msat-header-cart .msat-cart-trigger__total{color:#fff}

/* Optional sticky header: CSS only, zero scroll listener. */
body.msat-sticky-header .msat-header{position:sticky;top:0;z-index:9990;box-shadow:0 4px 18px rgba(15,23,42,.08)}
body.admin-bar.msat-sticky-header .msat-header{top:32px}

/* Mobile filter disclosure. Without JS the sidebar remains visible, preserving
   progressive enhancement and access to WooCommerce filters. */
.msat-filter-toggle{display:none;align-items:center;gap:8px;margin:0 0 14px;padding:9px 12px!important;border:1px solid var(--msat-border)!important;border-radius:8px!important;background:#fff!important;color:var(--msat-text)!important;font-size:13px;font-weight:750;box-shadow:none!important}
.msat-filter-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}

/* Optional mobile quick-access bar, implemented with
   local SVG and existing WooCommerce/ModoSAT routes only. */
.msat-mobile-bottom{display:none}
.msat-mobile-bottom__item svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.msat-mobile-bottom__cart .msat-cart-trigger-shell{display:flex!important;justify-content:center;color:inherit}
.msat-mobile-bottom__cart .msat-cart-trigger{min-height:24px!important;color:inherit!important}
.msat-mobile-bottom__cart .msat-cart-trigger__item{gap:0}
.msat-mobile-bottom__cart .msat-cart-trigger__icon{width:22px;height:22px;flex-basis:22px}
.msat-mobile-bottom__cart .msat-cart-trigger__icon>svg{width:21px;height:21px}
.msat-mobile-bottom__cart .msat-cart-trigger__total-wrap{display:none!important}
.msat-mobile-bottom__cart .msat-cart-trigger__count{top:-8px;right:-10px}
.msat-mobile-bottom__cart .msat-native-cart{justify-content:center;color:inherit!important}
.msat-mobile-bottom__cart .msat-native-cart__total{display:none!important}

/* Scroll-to-top: no library, one passive listener in store.js. */
.msat-back-to-top{position:fixed;right:20px;bottom:22px;z-index:9980;display:grid!important;place-items:center;width:42px;height:42px;padding:0!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:999px!important;background:var(--msat-header)!important;color:#fff!important;box-shadow:0 8px 24px rgba(15,23,42,.2)!important;opacity:.94}
.msat-back-to-top[hidden]{display:none!important}
.msat-back-to-top svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.msat-back-to-top:hover{opacity:1;transform:translateY(-1px)}

/* Legacy multi-vendor child compatibility retained without depending on Dokan.
   These selectors are inert unless a compatible multi-vendor plugin is active. */
.dokan-store .dokan-single-store.dokan-w8{width:100%}
.dokan-dashboard .dokan-dashboard-content{padding:0}
.dokan-dashboard .next.page-numbers,.dokan-dashboard .prev.page-numbers{font-size:inherit}
.dokan-form-control{max-width:100%}

@media(max-width:899px){
  body.admin-bar.msat-sticky-header .msat-header{top:46px}
  .msat-filter-toggle{display:inline-flex}
  .msat-js .woocommerce.archive #secondary:not(.is-msat-open),
  .msat-js .post-type-archive-product #secondary:not(.is-msat-open),
  .msat-js .tax-product_cat #secondary:not(.is-msat-open),
  .msat-js .tax-product_tag #secondary:not(.is-msat-open){display:none!important}
  .msat-js .woocommerce.archive #secondary.is-msat-open,
  .msat-js .post-type-archive-product #secondary.is-msat-open,
  .msat-js .tax-product_cat #secondary.is-msat-open,
  .msat-js .tax-product_tag #secondary.is-msat-open{display:block!important;width:100%!important;margin:0 0 20px!important;padding:14px;border:1px solid var(--msat-border);border-radius:10px;background:#fff}

  body.msat-mobile-bottom-enabled{padding-bottom:64px}
  .msat-mobile-bottom{position:fixed;left:0;right:0;bottom:0;z-index:9995;display:grid;grid-template-columns:repeat(4,1fr);min-height:60px;padding:5px max(8px,env(safe-area-inset-right)) calc(5px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border-top:1px solid #dde3ea;background:rgba(255,255,255,.97);box-shadow:0 -8px 26px rgba(15,23,42,.08);backdrop-filter:blur(10px)}
  .msat-mobile-bottom__item{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:3px 2px;color:#344054!important;text-decoration:none!important;font-size:10px;font-weight:700;line-height:1.2;text-align:center}
  .msat-mobile-bottom__item>svg{width:22px;height:22px}
  .msat-mobile-bottom__cart .msat-cart-trigger-shell{height:24px}
  body.msat-mobile-bottom-enabled .msat-back-to-top{bottom:78px}

  .msat-header-search .msat-live-search__panel{left:10px;right:10px;width:auto}
}

@media(max-width:782px){body.admin-bar.msat-sticky-header .msat-header{top:46px}}
@media(max-width:600px){body.admin-bar.msat-sticky-header .msat-header{top:0}}
@media(prefers-reduced-motion:reduce){.msat-back-to-top{transition:none!important}.msat-back-to-top:hover{transform:none}}

/* 0.9.0 mobile navigation: product categories remain reachable even though the
   desktop below-header bar is hidden at the responsive breakpoint. */
.msat-mobile-nav__quick{display:flex;gap:8px;margin:0 0 8px}
.msat-mobile-nav__quick a{flex:1;padding:9px 10px;border:1px solid var(--msat-border);border-radius:8px;background:#f8fafc;text-align:center;text-decoration:none!important;font-size:12px;font-weight:750;color:#344054!important}
.msat-mobile-categories{margin-top:10px;border-top:1px solid #e9edf2;padding-top:8px}
.msat-mobile-categories>summary{cursor:pointer;list-style:none;padding:9px 4px;font-size:13px;font-weight:800;color:#20252b}
.msat-mobile-categories>summary::-webkit-details-marker{display:none}
.msat-mobile-categories>summary::after{content:'+';float:right;font-size:18px;line-height:1}
.msat-mobile-categories[open]>summary::after{content:'−'}
.msat-mobile-categories__panel{padding:3px 0 6px}
.msat-mobile-categories .msat-category-menu.is-compact{display:block!important;grid-template-columns:none!important}
.msat-mobile-categories .msat-category-menu__item{padding:0;border-bottom:1px solid #eef1f4}
.msat-mobile-categories .msat-category-menu__item>a{display:block;padding:9px 4px;font-size:13px}
.msat-mobile-categories .msat-category-menu__children{margin:0 0 7px 13px}
.msat-mobile-categories .msat-category-menu__children a{padding:5px 4px;font-size:12px}


/* ============================================================
   0.9.1 — GALLERY FIX + HOMEPAGE MERCHANDISING
   ============================================================ */

/* WooCommerce gallery: do not hide slides 2+ before/after FlexSlider initialises.
   WooCommerce's JS owns width/translate geometry; the theme only contains the viewport. */
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery:not(.flexslider) .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:not(:first-child){
  display:block!important;
}
.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper{
  width:auto;
  max-width:none!important;
  overflow:visible!important;
}
.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image{
  display:block!important;
  overflow:visible!important;
}

/* Cleaner WhatsApp action: a filled, high-contrast local SVG instead of a fine outline. */
.msat-whatsapp{
  gap:8px!important;
  min-height:34px;
  padding:5px 9px!important;
  border:1px solid #d9ece0;
  border-radius:999px;
  background:#fff;
  color:#137c3d!important;
  font-weight:760!important;
  line-height:1;
}
.msat-whatsapp:hover{background:#f5fbf7;color:#0f6d35!important}
.msat-whatsapp__icon-wrap{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  flex:0 0 24px;
}
.msat-whatsapp__icon{
  width:24px!important;
  height:24px!important;
  overflow:visible!important;
}
.msat-whatsapp__icon circle{fill:#1fa855;stroke:none}
.msat-whatsapp__icon path{fill:#fff;stroke:none}
.msat-whatsapp__label{white-space:nowrap}

/* Up to four visual promo tiles. The grid remains lightweight and responsive. */
.msat-promo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.msat-promo-grid .msat-promo-card{min-height:150px}

/* Homepage campaign strip: image + copy without a slider dependency. */
.msat-campaign{
  display:grid;
  grid-template-columns:minmax(220px,.9fr) minmax(0,1.4fr);
  min-height:220px;
  margin:0 0 32px;
  overflow:hidden;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 9px 26px rgba(16,24,40,.09);
  background:linear-gradient(135deg,#1e2f79 0%,var(--msat-header) 70%,#314aa2 100%);
  color:#fff;
}
.msat-campaign--dark{background:linear-gradient(135deg,#171c24,#2b3441)}
.msat-campaign--amber{background:linear-gradient(135deg,#c88417,#e2a12d);color:#181818}
.msat-campaign--light{border-color:#dfe5ec;background:linear-gradient(135deg,#fff,#f3f6fa);color:var(--msat-ink-900)}
.msat-campaign__media{min-height:220px;overflow:hidden;background:#eef2f6}
.msat-campaign__image{display:block;width:100%;height:100%!important;min-height:220px;object-fit:cover}
.msat-campaign__body{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:30px clamp(24px,4vw,48px)}
.msat-campaign__eyebrow{margin:0 0 8px;color:#ffd46f;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.msat-campaign h2{margin:0 0 10px!important;color:inherit!important;font-size:clamp(24px,2.5vw,34px)!important;line-height:1.08!important}
.msat-campaign__text{max-width:700px;margin:0 0 18px;font-size:14px;line-height:1.55;color:rgba(255,255,255,.86)}
.msat-campaign--amber .msat-campaign__eyebrow,.msat-campaign--amber .msat-campaign__text,.msat-campaign--light .msat-campaign__text{color:inherit}
.msat-campaign--light .msat-campaign__eyebrow{color:#8a6500}
.msat-campaign__button{display:inline-flex;align-items:center;gap:10px;padding:10px 15px;border-radius:8px;background:var(--msat-accent);color:#17191b!important;text-decoration:none!important;font-size:13px;font-weight:850}
.msat-campaign--amber .msat-campaign__button{background:#20252b;color:#fff!important}
.msat-campaign--light .msat-campaign__button{background:var(--msat-header);color:#fff!important}

/* Explicit promoted products selected by ID/SKU in the Customizer. */
.msat-home-promoted .woocommerce ul.products{grid-template-columns:repeat(var(--msat-promoted-columns,4),minmax(0,1fr))!important}

/* Built-in right-side advertising so the dual-sidebar layout does not require
   configuring classic widgets just to place a campaign image. */
.msat-side-promo{
  position:relative;
  display:block;
  margin:0 0 14px;
  min-height:150px;
  overflow:hidden;
  border:1px solid #e1e6ed;
  border-radius:10px;
  background:linear-gradient(145deg,#f5f7fa,#e9eef5);
  box-shadow:0 3px 14px rgba(21,31,47,.045);
  text-decoration:none!important;
}
.msat-side-promo__image{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.msat-side-promo__title{
  position:absolute;
  left:10px;right:10px;bottom:10px;
  padding:8px 10px;
  border-radius:7px;
  background:rgba(17,24,39,.88);
  color:#fff;
  font-size:12px;
  line-height:1.25;
  font-weight:800;
  backdrop-filter:blur(2px);
}
.msat-side-promo:not(.has-image){
  min-height:110px;
  background:linear-gradient(145deg,var(--msat-header),#31499c);
}
.msat-side-promo:not(.has-image) .msat-side-promo__title{position:static;display:block;margin:12px;background:transparent;font-size:15px}

@media(max-width:1199px) and (min-width:900px){
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--right .msat-side-promo{margin:0;min-height:170px}
  .msat-side-promo__image{aspect-ratio:16/8}
}

@media(max-width:899px){
  .msat-campaign{grid-template-columns:1fr 1.2fr}
  .msat-home-promoted .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--right .msat-side-promo{margin:0}
  .msat-side-promo__image{aspect-ratio:16/8}
}

@media(max-width:640px){
  .msat-whatsapp{padding:4px 7px!important;border-color:transparent;background:transparent}
  .msat-whatsapp__label{display:none!important}
  .msat-whatsapp__icon-wrap,.msat-whatsapp__icon{width:25px!important;height:25px!important}
  .msat-campaign{display:block;min-height:0;margin-bottom:24px}
  .msat-campaign__media{min-height:0;aspect-ratio:16/8}
  .msat-campaign__image{min-height:0;height:100%!important}
  .msat-campaign__body{padding:22px}
  .msat-campaign h2{font-size:24px!important}
  .msat-home-promoted .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .msat-promo-grid{grid-template-columns:1fr;gap:12px}
  .msat-promo-grid .msat-promo-card{min-height:0;aspect-ratio:16/7}
}

/* ============================================================
   0.9.2 — EXPLICIT DUAL RAILS + PRODUCT INFORMATION LAYOUT
   ============================================================ */

/* The homepage layout is now explicit: selecting two rails always reserves and
   renders both rails, even before the right rail has widgets. Widths come from
   lightweight Customizer CSS variables and do not alter Storefront itself. */
.msat-home-layout.has-sidebar-both{
  grid-template-columns:var(--msat-home-left-width,215px) minmax(0,1fr) var(--msat-home-right-width,250px)!important;
}
.msat-home-layout.has-sidebar-left{
  grid-template-columns:var(--msat-home-left-width,215px) minmax(0,1fr)!important;
}
.msat-home-layout.has-sidebar-right{
  grid-template-columns:minmax(0,1fr) var(--msat-home-right-width,250px)!important;
}
.msat-home-layout.has-sidebar-both .msat-home-sidebar--right:empty,
.msat-home-layout.has-sidebar-right .msat-home-sidebar--right:empty,
.msat-home-layout.has-sidebar-both .msat-home-sidebar--left:empty,
.msat-home-layout.has-sidebar-left .msat-home-sidebar--left:empty{
  display:block!important;
  min-width:0;
}

/* Empty rail helper is only emitted while previewing the Customizer. It gives a
   visible target for the selective-refresh pencil and makes the widget area
   unmistakable before the first widget/banner is configured. */
.msat-home-sidebar__empty{
  display:flex;
  min-height:170px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:20px 14px;
  border:2px dashed #c8d1df;
  border-radius:10px;
  background:linear-gradient(180deg,#fbfcfe,#f4f7fa);
  color:#667085;
  text-align:center;
  font-size:12px;
  line-height:1.45;
}
.msat-home-sidebar__empty strong{color:#253783;font-size:14px}

/* Keep the central merchandising area visually balanced. */
.msat-home-main{margin-inline:auto;width:100%;max-width:100%}
.msat-home-main>.msat-home-section,
.msat-home-main>.msat-home-content,
.msat-home-main>.msat-home-widgets{margin-left:auto;margin-right:auto}

/* Product information navigation. High contrast is the default because these
   controls behave as primary section switches, not decorative pills. */
.single-product.msat-product-tabs-high .woocommerce-tabs ul.tabs li,
body.msat-product-tabs-high.single-product .woocommerce-tabs ul.tabs li{
  border-color:#c6cfdb!important;
  background:#f7f9fc!important;
  box-shadow:0 1px 0 #cbd3de,0 3px 9px rgba(16,24,40,.045)!important;
}
body.msat-product-tabs-high.single-product .woocommerce-tabs ul.tabs li a{
  color:#25304a!important;
}
body.msat-product-tabs-high.single-product .woocommerce-tabs ul.tabs li.active{
  border-color:#1f2f75!important;
  background:linear-gradient(180deg,#30499f 0%,var(--msat-header) 100%)!important;
  box-shadow:0 2px 0 #17245f,0 5px 12px rgba(37,55,131,.18)!important;
}
body.msat-product-tabs-high.single-product .woocommerce-tabs ul.tabs li.active a{color:#fff!important}

body.msat-product-tabs-soft.single-product .woocommerce-tabs ul.tabs li{
  border-color:#d6dde7!important;
  background:#fff!important;
  box-shadow:0 1px 2px rgba(16,24,40,.035)!important;
}
body.msat-product-tabs-soft.single-product .woocommerce-tabs ul.tabs li a{color:#344054!important}
body.msat-product-tabs-soft.single-product .woocommerce-tabs ul.tabs li.active{
  border-color:#8393c5!important;
  background:#eef2ff!important;
  box-shadow:inset 4px 0 0 var(--msat-header),0 2px 7px rgba(16,24,40,.04)!important;
  transform:none!important;
}
body.msat-product-tabs-soft.single-product .woocommerce-tabs ul.tabs li.active a{color:#1b285f!important}

/* Horizontal mode: equal-width controls with centered labels. */
body.msat-product-tabs-horizontal.single-product .woocommerce-tabs ul.tabs{
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr))!important;
  align-items:stretch!important;
}
body.msat-product-tabs-horizontal.single-product .woocommerce-tabs ul.tabs li a{
  justify-content:center!important;
  text-align:center!important;
}

/* Vertical mode on desktop: navigation stays to the left, current panel to the
   right. WooCommerce still owns active-tab state and panel visibility. */
@media(min-width:900px){
  body.msat-product-tabs-vertical.single-product .woocommerce-tabs{
    display:grid!important;
    grid-template-columns:minmax(190px,230px) minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    gap:0 22px!important;
    align-items:start!important;
    width:100%!important;
  }
  body.msat-product-tabs-vertical.single-product .woocommerce-tabs ul.tabs{
    grid-column:1!important;
    grid-row:1!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin:0!important;
    position:sticky;
    top:22px;
  }
  body.admin-bar.msat-product-tabs-vertical.single-product .woocommerce-tabs ul.tabs{top:54px}
  body.msat-product-tabs-vertical.single-product .woocommerce-tabs ul.tabs li{width:100%!important}
  body.msat-product-tabs-vertical.single-product .woocommerce-tabs ul.tabs li a{
    justify-content:flex-start!important;
    min-height:48px!important;
    padding:11px 14px!important;
    text-align:left!important;
  }
  body.msat-product-tabs-vertical.single-product .woocommerce-tabs .panel{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    min-width:0!important;
  }
  body.msat-product-tabs-vertical.msat-product-tabs-soft.single-product .woocommerce-tabs ul.tabs li.active{
    box-shadow:inset 4px 0 0 var(--msat-header),0 2px 7px rgba(16,24,40,.04)!important;
  }
}

/* Center long-form information on large screens without shrinking technical
   tables on mobile. The panel remains full-width; its readable content is
   capped and centered. */
body.msat-product-tabs-centered.single-product .woocommerce-tabs .panel>h2,
body.msat-product-tabs-centered.single-product .woocommerce-tabs .panel>p,
body.msat-product-tabs-centered.single-product .woocommerce-tabs .panel>ul,
body.msat-product-tabs-centered.single-product .woocommerce-tabs .panel>ol,
body.msat-product-tabs-centered.single-product .woocommerce-tabs .panel>table,
body.msat-product-tabs-centered.single-product .woocommerce-tabs .panel>.ft-technical-panel,
body.msat-product-tabs-centered.single-product .woocommerce-tabs .panel>.woocommerce-Tabs-panel--description,
body.msat-product-tabs-centered.single-product .woocommerce-tabs .panel>.wp-block-group{
  width:min(100%,980px);
  margin-left:auto!important;
  margin-right:auto!important;
}
body.msat-product-tabs-centered.single-product .woocommerce-tabs .panel>table{width:min(100%,980px)!important}

/* Stronger text/border contrast in the product information area. */
.single-product .woocommerce-tabs .panel{color:#29364a!important;border-color:#cfd7e2!important}
.single-product .woocommerce-tabs .panel h2,
.single-product .woocommerce-tabs .panel h3{color:#172033!important}
.single-product .ft-spec-item{border-color:#d7dee8!important;background:#f7f9fc!important}
.single-product .ft-spec-item dt{color:#4b5870!important}
.single-product .ft-spec-item dd{color:#172033!important}
.single-product table.shop_attributes th{color:#344054!important}
.single-product table.shop_attributes td{color:#172033!important}

@media(max-width:1199px) and (min-width:900px){
  .msat-home-layout.has-sidebar-both{
    grid-template-columns:var(--msat-home-left-width,205px) minmax(0,1fr)!important;
  }
}

@media(max-width:899px){
  .msat-home-layout.has-sidebar-left,
  .msat-home-layout.has-sidebar-right,
  .msat-home-layout.has-sidebar-both{display:block!important}
  .msat-home-layout.has-sidebar-left .msat-home-sidebar--left,
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--left{display:none!important}
  .msat-home-layout.has-sidebar-right .msat-home-sidebar--right,
  .msat-home-layout.has-sidebar-both .msat-home-sidebar--right{margin-top:28px}

  /* Vertical tabs automatically return to a compact two-column button matrix on
     mobile so the content never gets squeezed beside a navigation rail. */
  body.msat-product-tabs-vertical.single-product .woocommerce-tabs{display:block!important}
  body.msat-product-tabs-vertical.single-product .woocommerce-tabs ul.tabs{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    margin:0 0 14px!important;
    position:static!important;
  }
  body.msat-product-tabs-vertical.single-product .woocommerce-tabs ul.tabs li a{
    justify-content:center!important;
    text-align:center!important;
  }
}

@media(max-width:520px){
  body.msat-product-tabs-horizontal.single-product .woocommerce-tabs ul.tabs,
  body.msat-product-tabs-vertical.single-product .woocommerce-tabs ul.tabs{
    grid-template-columns:1fr!important;
  }
}

/* ============================================================
   0.9.3 — COLOR SYSTEM, CONTRAST + WOOCOMMERCE STATE HARDENING
   ============================================================ */

:root{
  --msat-header-text:#fff;
  --msat-accent-text:#172033;
  --msat-footer-text:#fff;
  --msat-link:#253783;
  --msat-notice-info-bg:#f2f5ff;
  --msat-notice-info-text:#172033;
  --msat-notice-info-border:#253783;
  --msat-notice-success-bg:#eef8f2;
  --msat-notice-success-text:#172033;
  --msat-notice-success-border:#23864b;
  --msat-notice-error-bg:#fff1f1;
  --msat-notice-error-text:#172033;
  --msat-notice-error-border:#c83b3b;
  --msat-notice-warning-bg:#fff8e6;
  --msat-notice-warning-text:#172033;
  --msat-notice-warning-border:#b77900;
  --msat-stock-out-bg:#fff1f1;
  --msat-stock-out-border:#e7a4a4;
  --msat-stock-out-text:#9b1c1c;
  --msat-sale-bg:#b42318;
  --msat-sale-text:#fff;
  --msat-sale-price:#b42318;
}

/* Brand colours can be changed from the Customizer. Foreground variables are
   calculated in PHP so light custom colours do not leave white text unreadable. */
body.msat-store-theme{color:var(--msat-text)!important}
.msat-store-theme h1,
.msat-store-theme h2,
.msat-store-theme h3,
.msat-store-theme h4,
.msat-store-theme h5,
.msat-store-theme h6{color:var(--msat-text)}
.msat-store-theme .page-title,
.msat-store-theme .entry-title{color:var(--msat-text)!important}

.msat-header__main{color:var(--msat-header-text)!important}
.msat-brand__text,
.msat-account,
.msat-native-cart,
.msat-header-cart,
.msat-mobile-toggle,
.msat-header-cart .msat-cart-trigger-shell,
.msat-header-cart .msat-cart-trigger,
.msat-header-cart .msat-cart-trigger__total{color:var(--msat-header-text)!important}
.msat-native-cart__count,
.msat-header-cart .msat-cart-trigger__count,
.woocommerce span.onsale{background:var(--msat-accent)!important;color:var(--msat-accent-text)!important}

/* General actions: do not assume that the configured primary colour is dark. */
.msat-store-theme .button,
.msat-store-theme button.button,
.msat-store-theme input.button,
.msat-store-theme .woocommerce a.button,
.msat-store-theme .woocommerce button.button,
.msat-store-theme .woocommerce input.button,
.msat-store-theme .woocommerce #respond input#submit,
.msat-store-theme .woocommerce a.button.alt,
.msat-store-theme .woocommerce button.button.alt,
.msat-store-theme .woocommerce input.button.alt,
.msat-store-theme #place_order,
.msat-button{
  background:var(--msat-header)!important;
  border-color:var(--msat-header)!important;
  color:var(--msat-header-text)!important;
}
.msat-store-theme .button:hover,
.msat-store-theme button.button:hover,
.msat-store-theme input.button:hover,
.msat-store-theme .woocommerce a.button:hover,
.msat-store-theme .woocommerce button.button:hover,
.msat-store-theme .woocommerce input.button:hover,
.msat-store-theme #place_order:hover,
.msat-button:hover{filter:brightness(.92)}
.msat-store-theme .button:disabled,
.msat-store-theme button.button:disabled,
.msat-store-theme input.button:disabled,
.msat-store-theme .button.disabled,
.msat-store-theme button.button.disabled{opacity:.55;cursor:not-allowed;filter:none}
.msat-store-theme .woocommerce ul.products li.product .button:hover,
.single-product form.cart .single_add_to_cart_button:hover{background:var(--msat-header)!important;color:var(--msat-header-text)!important;filter:brightness(.92)}
.msat-hero .msat-button,
.msat-campaign__button{background:var(--msat-accent)!important;color:var(--msat-accent-text)!important;border-color:var(--msat-accent)!important}
.msat-campaign--light .msat-campaign__button{background:var(--msat-header)!important;color:var(--msat-header-text)!important;border-color:var(--msat-header)!important}
.msat-campaign--amber .msat-campaign__button{background:#20252b!important;color:#fff!important;border-color:#20252b!important}

/* Content links regain a clear affordance. The original global inherit rule is
   useful in navigation/cards but should not hide links in long-form commerce UI. */
.msat-store-theme .entry-content a:not(.button):not(.wp-element-button),
.msat-store-theme .woocommerce-Tabs-panel a:not(.button),
.msat-store-theme .woocommerce-MyAccount-content a:not(.button),
.msat-store-theme .woocommerce-checkout a:not(.button),
.msat-store-theme .woocommerce-cart a:not(.button):not(.remove){color:var(--msat-link);text-decoration-thickness:.08em;text-underline-offset:.14em}
.msat-store-theme .woocommerce-breadcrumb,
.msat-store-theme .woocommerce-result-count,
.msat-store-theme .product_meta,
.msat-store-theme .woocommerce-product-details__short-description{color:var(--msat-muted)!important}

/* Footer contrast follows the selected footer background. */
.msat-footer{background:var(--msat-footer)!important;color:var(--msat-footer-text)!important}
.msat-footer .widget-title,
.msat-footer h2,
.msat-footer h3,
.msat-footer h4,
.msat-footer h5{color:var(--msat-footer-text)!important}
.msat-footer .widget a,
.msat-footer .menu a,
.msat-footer .wp-block-navigation-item__content,
.msat-footer p,
.msat-footer__bottom-row{color:var(--msat-footer-text)!important;opacity:.84!important}
.msat-footer .widget a:hover,
.msat-footer .menu a:hover,
.msat-footer .wp-block-navigation-item__content:hover{color:var(--msat-footer-text)!important;opacity:1!important;text-decoration:underline}
.msat-footer__bottom{border-top-color:color-mix(in srgb,var(--msat-footer-text) 22%,transparent)!important}

/* Shared surfaces/forms. */
.msat-store-theme input[type=text],
.msat-store-theme input[type=email],
.msat-store-theme input[type=tel],
.msat-store-theme input[type=url],
.msat-store-theme input[type=password],
.msat-store-theme input[type=number],
.msat-store-theme input[type=search],
.msat-store-theme textarea,
.msat-store-theme select,
.msat-store-theme .select2-container--default .select2-selection--single,
.msat-store-theme .select2-container--default .select2-selection--multiple{
  color:var(--msat-text)!important;
  background:#fff!important;
  border-color:var(--msat-border)!important;
}
.msat-store-theme input::placeholder,
.msat-store-theme textarea::placeholder{color:var(--msat-muted)!important;opacity:1}
.msat-store-theme input:focus,
.msat-store-theme textarea:focus,
.msat-store-theme select:focus,
.msat-store-theme .select2-container--focus .select2-selection{
  border-color:var(--msat-header)!important;
  outline:3px solid color-mix(in srgb,var(--msat-header) 16%,transparent)!important;
  outline-offset:1px;
}
.msat-store-theme label,
.msat-store-theme .woocommerce form .form-row label{color:var(--msat-text)}
.msat-store-theme .required{color:#a61b1b!important;text-decoration:none}
.msat-store-theme .woocommerce form .form-row.woocommerce-invalid label{color:#7b1717!important}
.msat-store-theme .woocommerce form .form-row.woocommerce-invalid input.input-text,
.msat-store-theme .woocommerce form .form-row.woocommerce-invalid select{border-color:var(--msat-notice-error-border)!important}
.msat-store-theme .woocommerce form .form-row.woocommerce-validated input.input-text,
.msat-store-theme .woocommerce form .form-row.woocommerce-validated select{border-color:var(--msat-notice-success-border)!important}

/* Classic WooCommerce notices. Storefront sets white notice text in its colour
   rules; these selectors deliberately have higher specificity and load later. */
body.msat-store-theme .woocommerce-message,
body.msat-store-theme .woocommerce-info,
body.msat-store-theme .woocommerce-error{
  position:relative;
  margin:0 0 22px!important;
  padding:15px 18px 15px 48px!important;
  border:1px solid!important;
  border-left-width:5px!important;
  border-top-width:1px!important;
  border-radius:9px!important;
  box-shadow:none!important;
  line-height:1.55;
}
body.msat-store-theme .woocommerce-info{
  background:var(--msat-notice-info-bg)!important;
  color:var(--msat-notice-info-text)!important;
  border-color:var(--msat-notice-info-border)!important;
}
body.msat-store-theme .woocommerce-message{
  background:var(--msat-notice-success-bg)!important;
  color:var(--msat-notice-success-text)!important;
  border-color:var(--msat-notice-success-border)!important;
}
body.msat-store-theme .woocommerce-error{
  background:var(--msat-notice-error-bg)!important;
  color:var(--msat-notice-error-text)!important;
  border-color:var(--msat-notice-error-border)!important;
}
body.msat-store-theme .woocommerce-info::before,
body.msat-store-theme .woocommerce-message::before,
body.msat-store-theme .woocommerce-error::before{top:15px!important;left:18px!important;color:currentColor!important}
body.msat-store-theme .woocommerce-info a,
body.msat-store-theme .woocommerce-message a,
body.msat-store-theme .woocommerce-error a{color:inherit!important;font-weight:750;text-decoration:underline;text-underline-offset:.14em}
body.msat-store-theme .woocommerce-info .button,
body.msat-store-theme .woocommerce-message .button,
body.msat-store-theme .woocommerce-error .button{
  float:right;
  margin:-4px 0 -4px 14px!important;
  padding:7px 11px!important;
  background:transparent!important;
  color:inherit!important;
  border:1px solid currentColor!important;
  border-radius:7px!important;
  filter:none!important;
}

/* WooCommerce Blocks notices use a different component tree. */
body.msat-store-theme .wc-block-components-notice-banner{border-radius:9px!important;box-shadow:none!important;color:var(--msat-text)!important}
body.msat-store-theme .wc-block-components-notice-banner.is-info{background:var(--msat-notice-info-bg)!important;border-color:var(--msat-notice-info-border)!important;color:var(--msat-notice-info-text)!important}
body.msat-store-theme .wc-block-components-notice-banner.is-success{background:var(--msat-notice-success-bg)!important;border-color:var(--msat-notice-success-border)!important;color:var(--msat-notice-success-text)!important}
body.msat-store-theme .wc-block-components-notice-banner.is-error{background:var(--msat-notice-error-bg)!important;border-color:var(--msat-notice-error-border)!important;color:var(--msat-notice-error-text)!important}
body.msat-store-theme .wc-block-components-notice-banner.is-warning{background:var(--msat-notice-warning-bg)!important;border-color:var(--msat-notice-warning-border)!important;color:var(--msat-notice-warning-text)!important}
body.msat-store-theme .wc-block-components-notice-banner a{color:inherit!important;font-weight:750}

/* Checkout/payment surfaces: prevent Storefront/plugin colour inheritance from
   producing light-on-light text. */
body.msat-store-theme.woocommerce-checkout #payment,
body.msat-store-theme.woocommerce-checkout #payment .payment_methods,
body.msat-store-theme.woocommerce-checkout #payment .payment_box,
body.msat-store-theme.woocommerce-checkout .woocommerce-checkout-review-order-table,
body.msat-store-theme.woocommerce-cart .cart_totals,
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-content{
  color:var(--msat-text)!important;
}
body.msat-store-theme.woocommerce-checkout #payment{background:var(--msat-surface)!important;border:1px solid var(--msat-border);border-radius:10px}
body.msat-store-theme.woocommerce-checkout #payment .payment_methods{background:transparent!important}
body.msat-store-theme.woocommerce-checkout #payment .payment_box{background:#fff!important;border:1px solid var(--msat-border)!important;color:var(--msat-text)!important}
body.msat-store-theme.woocommerce-checkout #payment .payment_box::before{border-bottom-color:var(--msat-border)!important}
body.msat-store-theme.woocommerce-checkout table.shop_table th,
body.msat-store-theme.woocommerce-cart table.shop_table th,
body.msat-store-theme.woocommerce-account table.shop_table th{color:var(--msat-text)!important;background:var(--msat-surface)!important}
body.msat-store-theme.woocommerce-checkout table.shop_table td,
body.msat-store-theme.woocommerce-cart table.shop_table td,
body.msat-store-theme.woocommerce-account table.shop_table td{color:var(--msat-text)!important}
body.msat-store-theme .woocommerce-privacy-policy-text,
body.msat-store-theme .woocommerce-terms-and-conditions-wrapper{color:var(--msat-muted)!important}

/* Checkout clásico: llamada a la acción compacta sin alterar pasarelas ni flujo de pago. */
body.msat-store-theme.woocommerce-checkout form.checkout #place_order{
  box-sizing:border-box;
  width:100%;
  min-height:52px;
  padding:12px 18px;
  border-radius:8px;
  font-size:16px;
  font-weight:600;
  line-height:1.35;
  text-align:center;
  white-space:normal;
}

/* Status helpers used by ModoSAT/WooCommerce extensions. */
body.msat-store-theme .stock.in-stock{color:#176b36!important}
body.msat-store-theme .stock.out-of-stock{color:#8b1f1f!important}
body.msat-store-theme .woocommerce-password-strength.strong{background:var(--msat-notice-success-bg)!important;color:var(--msat-notice-success-text)!important}
body.msat-store-theme .woocommerce-password-strength.short,
body.msat-store-theme .woocommerce-password-strength.bad{background:var(--msat-notice-error-bg)!important;color:var(--msat-notice-error-text)!important}
body.msat-store-theme .woocommerce-password-strength.good{background:var(--msat-notice-warning-bg)!important;color:var(--msat-notice-warning-text)!important}

/* Selected pagination/tabs also respect automatic contrast. */
.msat-store-theme .woocommerce nav.woocommerce-pagination ul li span.current,
body.msat-product-tabs-high.single-product .woocommerce-tabs ul.tabs li.active,
body.msat-product-tabs-high.single-product .woocommerce-tabs ul.tabs li.active a{
  background:var(--msat-header)!important;
  border-color:var(--msat-header)!important;
  color:var(--msat-header-text)!important;
}

@media(max-width:640px){
  body.msat-store-theme .woocommerce-message,
  body.msat-store-theme .woocommerce-info,
  body.msat-store-theme .woocommerce-error{padding:13px 14px 13px 42px!important;font-size:13px}
  body.msat-store-theme .woocommerce-info::before,
  body.msat-store-theme .woocommerce-message::before,
  body.msat-store-theme .woocommerce-error::before{top:13px!important;left:15px!important}
  body.msat-store-theme .woocommerce-info .button,
  body.msat-store-theme .woocommerce-message .button,
  body.msat-store-theme .woocommerce-error .button{float:none;display:inline-flex;margin:9px 0 0!important}
}

/* Dynamic-brand colour edge cases. */
.single-product form.cart .single_add_to_cart_button,
.msat-promo__button,
.msat-product-spotlight__button,
.msat-back-to-top,
.msat-merch-card--light .msat-merch-card__button{
  background:var(--msat-header)!important;
  border-color:var(--msat-header)!important;
  color:var(--msat-header-text)!important;
}
.msat-back-to-top{border-color:color-mix(in srgb,var(--msat-header-text) 35%,transparent)!important}
.msat-merch-card__button{background:var(--msat-accent)!important;color:var(--msat-accent-text)!important}
.msat-merch-card--amber .msat-merch-card__button{background:#20252b!important;color:#fff!important}
.msat-store-theme .msat-section-head>a,
.msat-store-theme .product_meta a,
.msat-store-theme .woocommerce ul.products li.product .price,
.msat-store-theme .single-product .summary .price{color:var(--msat-link)!important}

/* ==========================================================================
   ModoSAT Store 0.9.4 — stock, sale merchandising and compact product widgets
   ========================================================================== */

/* Component colours must outrank generic Storefront/heading rules. This also
   fixes Custom HTML/CTA banners whose own white text was previously overridden. */
.msat-store-theme .msat-widget h1,
.msat-store-theme .msat-widget h2,
.msat-store-theme .msat-widget h3,
.msat-store-theme .msat-widget h4,
.msat-store-theme .msat-widget h5,
.msat-store-theme .msat-widget h6,
.msat-store-theme .widget_custom_html h1,
.msat-store-theme .widget_custom_html h2,
.msat-store-theme .widget_custom_html h3,
.msat-store-theme .widget_custom_html h4,
.msat-store-theme .widget_custom_html h5,
.msat-store-theme .widget_custom_html h6{color:inherit}
.msat-store-theme .msat-merch-card,
.msat-store-theme .msat-merch-card p,
.msat-store-theme .msat-merch-card li{color:inherit}
.msat-store-theme .msat-merch-card--dark,
.msat-store-theme .msat-merch-card--blue{color:#fff}
.msat-store-theme .msat-merch-card--dark .msat-merch-card__title,
.msat-store-theme .msat-merch-card--blue .msat-merch-card__title{color:#fff!important}
.msat-store-theme .msat-merch-card--dark .msat-merch-card__text,
.msat-store-theme .msat-merch-card--blue .msat-merch-card__text{color:#d7dde5!important}

/* Out of stock: use a clear light-red status instead of the green availability
   treatment. Catalogue cards receive only a subtle border, avoiding visual noise. */
body.msat-store-theme.single-product .stock.out-of-stock{
  background:var(--msat-stock-out-bg)!important;
  border-color:var(--msat-stock-out-border)!important;
  color:var(--msat-stock-out-text)!important;
}
body.msat-store-theme.single-product .stock.out-of-stock::before{background:var(--msat-stock-out-text)!important}
body.msat-store-theme.single-product .stock.available-on-backorder{
  background:var(--msat-notice-warning-bg)!important;
  border-color:var(--msat-notice-warning-border)!important;
  color:var(--msat-notice-warning-text)!important;
}
body.msat-store-theme.single-product .stock.available-on-backorder::before{background:var(--msat-notice-warning-border)!important}
body.msat-store-theme .woocommerce ul.products li.product.outofstock,
body.msat-store-theme.woocommerce ul.products li.product.outofstock{
  border-color:var(--msat-stock-out-border)!important;
}
body.msat-store-theme .woocommerce ul.products li.product.outofstock:hover,
body.msat-store-theme.woocommerce ul.products li.product.outofstock:hover{
  box-shadow:0 8px 24px color-mix(in srgb,var(--msat-stock-out-border) 24%,transparent);
}

/* Sale state: compact pill plus clear old/new price hierarchy. No extra JS. */
body.msat-store-theme span.onsale{
  background:var(--msat-sale-bg)!important;
  color:var(--msat-sale-text)!important;
  border:0!important;
  border-radius:999px!important;
  min-width:0!important;
  min-height:0!important;
  padding:6px 10px!important;
  line-height:1.15!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.015em;
  box-shadow:0 5px 14px color-mix(in srgb,var(--msat-sale-bg) 22%,transparent);
}
body.msat-store-theme .price del,
body.msat-store-theme .msat-product-spotlight__price del,
body.msat-store-theme .msat-dynamic-products__price del,
body.msat-store-theme .msat-compact-product__price del{
  color:var(--msat-muted)!important;
  opacity:.78!important;
  font-weight:600!important;
}
body.msat-store-theme .price ins,
body.msat-store-theme .msat-product-spotlight__price ins,
body.msat-store-theme .msat-dynamic-products__price ins,
body.msat-store-theme .msat-compact-product__price ins{
  color:var(--msat-sale-price)!important;
  text-decoration:none!important;
  font-weight:850!important;
}
body.msat-store-theme .price del + ins{margin-left:.28em}

/* Dedicated homepage area that can hold several product widgets without a
   page-builder. It collapses naturally as the centre column gets narrower. */
.msat-home-product-widgets{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));
  gap:18px;
  align-items:start;
}
.msat-home-product-widgets>.msat-widget{margin:0!important;min-width:0}
.msat-home-product-widgets .msat-widget-product-grid-wrap,
.msat-home-product-widgets .msat-widget-product-list-wrap,
.msat-widget-product-grid-wrap{
  border:1px solid var(--msat-border);
  border-radius:10px;
  background:#fff;
  padding:14px;
}
.msat-home-product-widgets .msat-widget__title{
  margin:0 -14px 12px;
  padding:0 14px 13px;
}

/* Container-based layout works in full-width sections and narrow sidebars. */
.msat-widget-product-grid-wrap{container-type:inline-size}
/* Compact products: selected columns define the maximum, never a forced width. */
.msat-compact-products{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}
.msat-compact-products--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.msat-compact-products--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.msat-compact-products--cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.msat-compact-product{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--msat-border);
  border-radius:9px;
  background:#fff;
}
.msat-compact-product__media{
  position:relative;
  display:grid!important;
  place-items:center;
  min-width:0;
  aspect-ratio:1/1;
  padding:7px;
  background:#fff;
  text-decoration:none!important;
}
.msat-compact-product__media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  object-fit:contain!important;
}
.msat-compact-product__body{padding:9px 10px 11px}
.msat-compact-product__title{
  margin:0 0 7px!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:750!important;
}
.msat-compact-product__title a{
  color:var(--msat-text)!important;
  text-decoration:none!important;
}
.msat-compact-product__price{
  color:var(--msat-text);
  font-size:12.5px;
  line-height:1.25;
  font-weight:800;
}
.msat-mini-sale{
  position:absolute;
  top:7px;
  left:7px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  padding:4px 7px;
  border-radius:999px;
  background:var(--msat-sale-bg);
  color:var(--msat-sale-text);
  box-shadow:0 3px 9px color-mix(in srgb,var(--msat-sale-bg) 20%,transparent);
  font-size:9px;
  line-height:1;
  font-weight:850;
}
.msat-product-spotlight__media{position:relative}

/* A one-column compact widget uses the horizontal space more efficiently. */
.msat-compact-products--cols-1 .msat-compact-product{
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  align-items:center;
}
.msat-compact-products--cols-1 .msat-compact-product__media{aspect-ratio:1/1}
.msat-compact-products--cols-1 .msat-compact-product__body{padding:10px 12px}

/* Container queries measure each widget's inner width, not viewport width. */
@container (max-width:669px){
  .msat-compact-products--cols-4{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@container (max-width:489px){
  .msat-compact-products--cols-3,
  .msat-compact-products--cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container (max-width:309px){
  .msat-compact-products--cols-2,
  .msat-compact-products--cols-3,
  .msat-compact-products--cols-4{grid-template-columns:1fr}
  .msat-compact-products--cols-2 .msat-compact-product,
  .msat-compact-products--cols-3 .msat-compact-product,
  .msat-compact-products--cols-4 .msat-compact-product{
    display:grid;
    grid-template-columns:78px minmax(0,1fr);
    align-items:center;
  }
}
@media(max-width:520px){
  .msat-home-product-widgets{grid-template-columns:1fr}
}

/* ModoSAT Store 0.9.20 — consistent compact WooCommerce sidebar sale lists.
   The 'Descuentos' widget should look like the 'Descubre más' product list.
   Scope to the catalog sidebar; do not override full shop product grids. */
body.msat-store-theme #secondary ul.product_list_widget,
body.msat-store-theme #secondary .widget_products ul.product_list_widget{
  list-style:none!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  width:100%;
}
body.msat-store-theme #secondary ul.product_list_widget>li{
  position:relative;
  display:block!important;
  list-style:none!important;
  margin:0!important;
  padding:11px 0!important;
  border-bottom:1px solid var(--msat-border,#dfe4ea);
  min-width:0;
  overflow:hidden;
  font-size:12px;
  line-height:1.4;
  color:var(--msat-text,#20252b);
}
body.msat-store-theme #secondary ul.product_list_widget>li:last-child{border-bottom:0}
body.msat-store-theme #secondary ul.product_list_widget>li:before{display:none!important}
body.msat-store-theme #secondary ul.product_list_widget>li>a:first-child{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 62px;
  align-items:start;
  column-gap:10px;
  width:100%;
  min-width:0;
  min-height:62px;
  text-align:left;
  text-decoration:none!important;
  color:#23345b!important;
  font-size:12px!important;
  line-height:1.4!important;
  font-weight:750!important;
  overflow-wrap:anywhere;
}
body.msat-store-theme #secondary ul.product_list_widget>li>a:first-child>img{
  display:block!important;
  grid-column:2;
  grid-row:1 / span 2;
  width:62px!important;
  height:62px!important;
  min-width:62px;
  max-width:62px!important;
  float:none!important;
  margin:0!important;
  padding:5px!important;
  border:1px solid #e5e9ef;
  border-radius:7px;
  object-fit:contain!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.msat-store-theme #secondary ul.product_list_widget>li>a:first-child>.product-title{
  grid-column:1;
  grid-row:1;
  display:block;
  min-width:0;
  color:#23345b;
  font-size:12px;
  font-weight:750;
  line-height:1.4;
  overflow-wrap:anywhere;
}
body.msat-store-theme #secondary ul.product_list_widget>li del,
body.msat-store-theme #secondary ul.product_list_widget>li ins{
  font-size:12px!important;
  line-height:1.4!important;
  white-space:nowrap;
  display:inline!important;
}
body.msat-store-theme #secondary ul.product_list_widget>li del{
  margin-right:4px;
  font-weight:500!important;
  color:#758092!important;
  opacity:1!important;
}
body.msat-store-theme #secondary ul.product_list_widget>li ins{
  background:transparent!important;
  text-decoration:none!important;
  color:#b42318!important;
  font-weight:850!important;
}
body.msat-store-theme #secondary ul.product_list_widget>li .woocommerce-Price-amount,
body.msat-store-theme #secondary ul.product_list_widget>li .amount{
  display:inline!important;
  font-size:inherit!important;
}
body.msat-store-theme #secondary ul.product_list_widget>li small,
body.msat-store-theme #secondary ul.product_list_widget>li .tax_label{
  font-size:10px!important;
  white-space:nowrap;
}
@media(max-width:720px){
  body.msat-store-theme #secondary ul.product_list_widget>li>a:first-child{
    grid-template-columns:minmax(0,1fr) 64px;
  }
  body.msat-store-theme #secondary ul.product_list_widget>li>a:first-child>img{
    width:64px!important;height:64px!important;max-width:64px!important;
  }
}

/* ==========================================================================
   ModoSAT Store 0.9.6 — account UX
   ========================================================================== */

/* My Account: dashboard-style layout without WooCommerce template overrides. */
body.msat-store-theme.woocommerce-account .entry-header,
body.msat-store-theme.woocommerce-account .entry-content{
  width:100%;
  max-width:var(--msat-shell);
  margin-inline:auto;
}
body.msat-store-theme.woocommerce-account .entry-header{margin-bottom:22px}
body.msat-store-theme.woocommerce-account .entry-title{margin-bottom:0}

body.msat-store-theme.woocommerce-account.logged-in .entry-content > .woocommerce{
  display:grid;
  grid-template-columns:minmax(210px,250px) minmax(0,1fr);
  gap:24px;
  align-items:start;
}
body.msat-store-theme.woocommerce-account.logged-in .entry-content > .woocommerce::before,
body.msat-store-theme.woocommerce-account.logged-in .entry-content > .woocommerce::after{display:none!important}
body.msat-store-theme.woocommerce-account.logged-in .entry-content > .woocommerce > .woocommerce-notices-wrapper,
body.msat-store-theme.woocommerce-account.logged-in .entry-content > .woocommerce > .woocommerce-message,
body.msat-store-theme.woocommerce-account.logged-in .entry-content > .woocommerce > .woocommerce-info,
body.msat-store-theme.woocommerce-account.logged-in .entry-content > .woocommerce > .woocommerce-error{
  grid-column:1/-1;
}

body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation{
  width:auto!important;
  float:none!important;
  margin:0!important;
  padding:10px!important;
  border:1px solid var(--msat-border);
  border-radius:14px;
  background:var(--msat-surface);
  box-shadow:0 6px 20px rgba(23,32,51,.04);
}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none;
  margin:0!important;
  padding:0!important;
}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0!important;padding:0!important}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:flex;
  align-items:center;
  min-height:44px;
  padding:10px 12px;
  border-radius:9px;
  color:var(--msat-text)!important;
  text-decoration:none!important;
  font-size:14px;
  font-weight:720;
  line-height:1.25;
  transition:background-color .16s ease,color .16s ease,box-shadow .16s ease;
}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  background:#fff;
  color:var(--msat-header)!important;
}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
  background:var(--msat-header);
  color:var(--msat-header-text)!important;
  box-shadow:0 5px 14px rgba(37,55,131,.16);
}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible{
  outline:3px solid #f2b705;
  outline:3px solid color-mix(in srgb,var(--msat-accent) 72%,#fff);
  outline-offset:2px;
}

body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-content{
  width:auto!important;
  min-width:0;
  float:none!important;
  margin:0!important;
  padding:24px!important;
  border:1px solid var(--msat-border)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:var(--msat-text)!important;
  box-shadow:0 8px 26px rgba(23,32,51,.045);
}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-content > :first-child{margin-top:0}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-content > :last-child{margin-bottom:0}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-content h2,
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-content h3{
  color:var(--msat-text)!important;
  margin-top:0;
}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-content a:not(.button){
  color:var(--msat-link)!important;
  text-underline-offset:.14em;
}
body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-content mark{
  padding:.12em .35em;
  border-radius:4px;
  background:var(--msat-notice-warning-bg);
  color:var(--msat-notice-warning-text);
}

/* Orders, downloads and addresses behave as compact technical cards. */
body.msat-store-theme.woocommerce-account table.shop_table{
  overflow:hidden;
  margin:0 0 22px!important;
  border:1px solid var(--msat-border)!important;
  border-radius:10px!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
body.msat-store-theme.woocommerce-account table.shop_table th{
  padding:12px 14px!important;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.035em;
}
body.msat-store-theme.woocommerce-account table.shop_table td{padding:13px 14px!important;vertical-align:middle}
body.msat-store-theme.woocommerce-account table.shop_table tr:last-child td{border-bottom:0}
body.msat-store-theme.woocommerce-account table.shop_table .button{margin:2px!important;padding:8px 11px!important;font-size:12px!important}

body.msat-store-theme.woocommerce-account .woocommerce-Addresses{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:18px;
}
body.msat-store-theme.woocommerce-account .woocommerce-Addresses::before,
body.msat-store-theme.woocommerce-account .woocommerce-Addresses::after{display:none!important}
body.msat-store-theme.woocommerce-account .woocommerce-Address{
  width:auto!important;
  float:none!important;
  margin:0!important;
  padding:18px;
  border:1px solid var(--msat-border);
  border-radius:11px;
  background:var(--msat-surface);
}
body.msat-store-theme.woocommerce-account .woocommerce-Address-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
body.msat-store-theme.woocommerce-account .woocommerce-Address-title h3{margin:0!important;font-size:17px}
body.msat-store-theme.woocommerce-account .woocommerce-Address address{margin:14px 0 0;line-height:1.65;color:var(--msat-muted)}

/* Login/register/lost-password screens use the same ModoSAT card language. */
body.msat-store-theme.woocommerce-account:not(.logged-in) .entry-content > .woocommerce{
  max-width:1040px;
  margin-inline:auto;
}
body.msat-store-theme.woocommerce-account #customer_login{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
body.msat-store-theme.woocommerce-account #customer_login::before,
body.msat-store-theme.woocommerce-account #customer_login::after{display:none!important}
body.msat-store-theme.woocommerce-account #customer_login > .col-1,
body.msat-store-theme.woocommerce-account #customer_login > .col-2{
  width:auto!important;
  float:none!important;
  margin:0!important;
  padding:24px;
  border:1px solid var(--msat-border);
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 26px rgba(23,32,51,.045);
}
body.msat-store-theme.woocommerce-account form.login,
body.msat-store-theme.woocommerce-account form.register,
body.msat-store-theme.woocommerce-account form.lost_reset_password,
body.msat-store-theme.woocommerce-account form.edit-account{
  border:0!important;
  padding:0!important;
  margin:0!important;
}
body.msat-store-theme.woocommerce-account .form-row label{font-weight:700;color:var(--msat-text)}
body.msat-store-theme.woocommerce-account .form-row input.input-text,
body.msat-store-theme.woocommerce-account .form-row textarea,
body.msat-store-theme.woocommerce-account .form-row select{
  min-height:44px;
  width:100%;
  border:1px solid #cfd7e2!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--msat-text)!important;
  box-shadow:none!important;
}
body.msat-store-theme.woocommerce-account .form-row input.input-text:focus,
body.msat-store-theme.woocommerce-account .form-row textarea:focus,
body.msat-store-theme.woocommerce-account .form-row select:focus{
  border-color:var(--msat-header)!important;
  outline:3px solid rgba(37,55,131,.12)!important;
  outline:3px solid color-mix(in srgb,var(--msat-header) 12%,transparent)!important;
  outline-offset:0;
}

@media(max-width:899px){
  body.msat-store-theme.woocommerce-account.logged-in .entry-content > .woocommerce{grid-template-columns:1fr;gap:16px}
  body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation{padding:7px!important;overflow-x:auto;scrollbar-width:thin}
  body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex;gap:6px;min-width:max-content}
  body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation a{min-height:40px;padding:8px 11px;white-space:nowrap;font-size:13px}
  body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-content{padding:18px!important}
  body.msat-store-theme.woocommerce-account #customer_login{grid-template-columns:1fr}
}
@media(max-width:640px){
  body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-content{padding:15px!important;border-radius:11px!important}
  body.msat-store-theme.woocommerce-account .woocommerce-Addresses{grid-template-columns:1fr}
  body.msat-store-theme.woocommerce-account table.shop_table_responsive tr{padding:10px 0;border-bottom:1px solid var(--msat-border)}
  body.msat-store-theme.woocommerce-account table.shop_table_responsive td{padding:7px 10px!important}
}

@media(prefers-reduced-motion:reduce){
  body.msat-store-theme.woocommerce-account .woocommerce-MyAccount-navigation a{transition:none!important}
}


/* ==========================================================================
   ModoSAT Store 0.9.6 — compact two-column mobile category grid
   ========================================================================== */
@media(max-width:640px){
  .msat-home-categories .msat-section-head{
    align-items:center;
    gap:8px;
  }
  .msat-home-categories .msat-section-head h2{
    font-size:20px;
    line-height:1.15;
  }
  .msat-home-categories .msat-category-cards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  .msat-home-categories .msat-category-card{
    min-width:0;
    border-radius:11px;
  }
  .msat-home-categories .msat-category-card>a{
    display:grid!important;
    grid-template-columns:62px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:8px!important;
    row-gap:2px!important;
    align-items:center!important;
    min-height:86px;
    padding:8px!important;
  }
  .msat-home-categories .msat-category-card__media{
    grid-column:1!important;
    grid-row:1/3!important;
    width:62px!important;
    height:62px!important;
  }
  .msat-home-categories .msat-category-card h3{
    grid-column:2!important;
    grid-row:1!important;
    margin:0!important;
    font-size:11.5px!important;
    line-height:1.2!important;
    overflow-wrap:anywhere;
  }
  .msat-home-categories .msat-category-card__count{
    grid-column:2!important;
    grid-row:2!important;
    font-size:10.5px!important;
    line-height:1.2;
  }
}
@media(max-width:370px){
  .msat-home-categories .msat-category-card>a{
    grid-template-columns:54px minmax(0,1fr)!important;
    min-height:78px;
    padding:7px!important;
  }
  .msat-home-categories .msat-category-card__media{
    width:54px!important;
    height:54px!important;
  }
  .msat-home-categories .msat-category-card h3{font-size:11px!important}
  .msat-home-categories .msat-category-card__count{font-size:10px!important}
}

/* ==========================================================================
   ModoSAT Store 0.9.11 — compact blog, contact actions, sticky rails,
   configurable catalogue density and left-aligned product information
   ========================================================================== */

/* Header contact actions: email and WhatsApp share one compact action group. */
.msat-contact-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin-left:auto;
  padding:6px 0;
  white-space:nowrap;
}
.msat-contact-actions .msat-whatsapp{margin-left:0!important}
.msat-email{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:5px 9px!important;
  border:1px solid #d9e1f3;
  border-radius:999px;
  background:#fff;
  color:var(--msat-header)!important;
  text-decoration:none!important;
  font-size:14px;
  font-weight:760!important;
  line-height:1;
}
.msat-email:hover{background:#f5f7fd;color:#1d2e78!important}
.msat-email__icon-wrap{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px}
.msat-email__icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.msat-email__label{white-space:nowrap}

/* Catalogue density is configurable at 4/5/6 columns. Responsive fallbacks
   keep titles, prices and call-to-action buttons legible on narrower screens.
   WooCommerce archive pages place .woocommerce on the body itself, so both
   descendant and same-body selector forms must be covered. */
.msat-store-theme .woocommerce ul.products,
body.msat-store-theme.woocommerce ul.products{
  grid-template-columns:repeat(var(--msat-product-columns,5),minmax(0,1fr))!important;
  gap:14px!important;
}
.msat-store-theme .woocommerce ul.products li.product,
body.msat-store-theme.woocommerce ul.products li.product{padding:12px 12px 14px!important}
.msat-store-theme .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.msat-store-theme.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-size:13.5px!important;
  line-height:1.34!important;
  min-height:2.68em;
}
.msat-store-theme .woocommerce ul.products li.product .price,
body.msat-store-theme.woocommerce ul.products li.product .price{font-size:15px!important}
.msat-store-theme .woocommerce ul.products li.product .button,
body.msat-store-theme.woocommerce ul.products li.product .button{padding:9px 8px!important;font-size:13px!important}
@media(max-width:1100px){
  .msat-store-theme .woocommerce ul.products,
  body.msat-store-theme.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:899px){
  .msat-store-theme .woocommerce ul.products,
  body.msat-store-theme.woocommerce ul.products{grid-template-columns:repeat(var(--msat-product-columns-mobile,3),minmax(0,1fr))!important;gap:12px!important}
}
@media(max-width:560px){
  .msat-store-theme .woocommerce ul.products,
  body.msat-store-theme.woocommerce ul.products{grid-template-columns:repeat(var(--msat-product-columns-mobile,3),minmax(0,1fr))!important;gap:9px!important}
  .msat-store-theme .woocommerce ul.products li.product,
  body.msat-store-theme.woocommerce ul.products li.product{padding:9px!important}
  .msat-store-theme .woocommerce ul.products li.product .woocommerce-loop-product__title,
  body.msat-store-theme.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12.5px!important}
  .msat-store-theme .woocommerce ul.products li.product .price,
  body.msat-store-theme.woocommerce ul.products li.product .price{font-size:14px!important}
}

/* 0.9.11 — Sticky rails, corrected at the Storefront overflow boundary.
   Storefront sets `.site{overflow-x:hidden}`, which creates an overflow container
   and can prevent descendants from sticking to the viewport. `clip` preserves
   horizontal clipping without creating a scroll container. */
@supports (overflow:clip){
  .msat-site{overflow-x:clip;overflow-y:visible}
}

@media(min-width:1200px){
  /* Catalogue/shop archives: the rail participates in the page grid and the
     final WordPress widget becomes the persistent element. */
  body.msat-sticky-sidebars.woocommerce.archive .site-content>.col-full{align-items:stretch}
  body.msat-sticky-sidebars.woocommerce.archive #secondary.msat-sidebar{
    position:relative!important;
    top:auto!important;
    max-height:none!important;
    overflow:visible!important;
    align-self:stretch!important;
  }
  body.msat-sticky-sidebars.woocommerce.archive #secondary.msat-sidebar>.widget:last-of-type{
    position:sticky!important;
    top:18px;
    z-index:5;
  }

  /* Home uses different markup; keep the two systems explicit rather than
     coupling the commercial homepage to Storefront's #secondary sidebar. */
  body.msat-sticky-sidebars .msat-home-sidebar--left,
  body.msat-sticky-sidebars .msat-home-sidebar--right{
    position:relative!important;
    top:auto!important;
    max-height:none!important;
    overflow:visible!important;
    align-self:stretch!important;
  }
  body.msat-sticky-sidebars .msat-home-sidebar--left>:last-child,
  body.msat-sticky-sidebars .msat-home-sidebar--right>:last-child{
    position:sticky!important;
    top:18px;
    z-index:5;
  }

  body.msat-sticky-header.msat-sticky-sidebars.woocommerce.archive #secondary.msat-sidebar>.widget:last-of-type,
  body.msat-sticky-header.msat-sticky-sidebars .msat-home-sidebar--left>:last-child,
  body.msat-sticky-header.msat-sticky-sidebars .msat-home-sidebar--right>:last-child{top:158px}

  body.admin-bar.msat-sticky-header.msat-sticky-sidebars.woocommerce.archive #secondary.msat-sidebar>.widget:last-of-type,
  body.admin-bar.msat-sticky-header.msat-sticky-sidebars .msat-home-sidebar--left>:last-child,
  body.admin-bar.msat-sticky-header.msat-sticky-sidebars .msat-home-sidebar--right>:last-child{top:190px}
}

/* 0.9.9 — Product information starts at the left edge of the panel. This
   overrides the older centered reading-column option and aligns the actual
   WooCommerce attributes table as well as ModoSAT technical fields. */
body.single-product .woocommerce-tabs .panel > h2,
body.single-product .woocommerce-tabs .panel > p,
body.single-product .woocommerce-tabs .panel > ul,
body.single-product .woocommerce-tabs .panel > ol,
body.single-product .woocommerce-tabs .panel > table,
body.single-product .woocommerce-tabs .panel > .ft-technical-panel,
body.single-product .woocommerce-tabs .panel > .woocommerce-Tabs-panel--description,
body.single-product .woocommerce-tabs .panel > .wp-block-group{
  margin-left:0!important;
  margin-right:0!important;
}

.single-product table.shop_attributes,
.single-product table.woocommerce-product-attributes,
.single-product table.shop_attributes th,
.single-product table.shop_attributes td,
.single-product table.shop_attributes td p,
.single-product table.woocommerce-product-attributes th,
.single-product table.woocommerce-product-attributes td,
.single-product table.woocommerce-product-attributes td p,
.single-product .ft-technical-panel,
.single-product .ft-spec-grid,
.single-product .ft-spec-item,
.single-product .ft-spec-item dt,
.single-product .ft-spec-item dd{
  text-align:left!important;
}
.single-product table.shop_attributes,
.single-product table.woocommerce-product-attributes{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
.single-product table.shop_attributes th,
.single-product table.shop_attributes td,
.single-product table.woocommerce-product-attributes th,
.single-product table.woocommerce-product-attributes td{
  vertical-align:top!important;
}

/* Blog post archives: responsive cards with linked covers and Storefront paging preserved. */
.msat-store-theme .msat-blog-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(16px,2vw,24px);
  align-items:stretch;
  margin:0 0 24px;
}
.msat-store-theme .msat-blog-grid>article{
  display:flex;
  flex-direction:column;
  min-width:0;
  width:100%;
  margin:0!important;
  padding:0!important;
  overflow:hidden;
  border:1px solid #dfe5ed;
  border-radius:13px;
  background:#fff;
  box-shadow:0 3px 14px rgba(21,31,47,.045);
  transition:box-shadow .18s ease,border-color .18s ease;
}
.msat-store-theme .msat-blog-grid>article:hover{
  border-color:#bccadd;
  box-shadow:0 10px 28px rgba(21,31,47,.10);
}
.msat-store-theme .msat-blog-card__media{
  display:grid;
  place-items:center;
  width:100%;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#f0f4fa;
  color:#344469!important;
  text-decoration:none!important;
}
.msat-store-theme .msat-blog-card__image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  object-fit:cover;
}
.msat-store-theme .msat-blog-card__media--empty{
  background:linear-gradient(135deg,#eef2fb,#dbe5f4);
  font-weight:750;
  font-size:14px;
}
.msat-store-theme .msat-blog-grid>article .entry-header{
  margin:0!important;
  padding:17px 18px 7px!important;
  border:0!important;
}
.msat-store-theme .msat-blog-grid>article .entry-header .entry-title{
  font-size:clamp(19px,1.5vw,23px)!important;
  line-height:1.3!important;
  font-weight:780!important;
  letter-spacing:-.016em;
  margin:8px 0 0!important;
  overflow-wrap:anywhere;
}
.msat-store-theme .msat-blog-grid>article .entry-header .entry-title a{
  color:#172033!important;
  text-decoration:none!important;
}
.msat-store-theme .msat-blog-grid>article .entry-header .entry-title a:hover{
  color:var(--msat-header,#253783)!important;
}
.msat-store-theme .msat-blog-grid>article .entry-meta{
  font-size:11.5px!important;
  line-height:1.45!important;
  color:#637083;
}
.msat-store-theme .msat-blog-grid>article .entry-content{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  min-width:0;
  width:100%;
  padding:8px 18px 16px!important;
  margin:0!important;
}
.msat-store-theme .msat-blog-grid .msat-post-summary__text{
  font-size:13.5px;
  line-height:1.58;
  color:#475467;
  overflow:hidden;
}
.msat-store-theme .msat-blog-grid .msat-post-summary__text p{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  overflow:hidden;
  margin:0!important;
}
.msat-store-theme .msat-blog-grid .msat-post-summary__more{
  margin:auto 0 0!important;
  padding-top:15px;
}
.msat-store-theme .msat-blog-grid .msat-post-summary__more .button{
  display:inline-flex;
  align-items:center;
  width:auto!important;
  min-height:38px;
  padding:9px 14px!important;
  font-size:12.5px!important;
  text-decoration:none!important;
}
.msat-store-theme .msat-blog-grid>article .entry-taxonomy{
  width:100%;
  margin:0!important;
  padding:10px 18px 14px!important;
  border-top:1px solid #edf0f4;
  color:#657386;
  font-size:11.5px;
  line-height:1.45;
}
.msat-store-theme .msat-blog-grid>article .entry-taxonomy .tags-links{display:none}
@media(min-width:1600px){
  .msat-store-theme .msat-blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:740px){
  .msat-store-theme .msat-blog-grid{
    grid-template-columns:minmax(0,1fr);
    gap:17px;
  }
  .msat-store-theme .msat-blog-grid>article .entry-header{padding:16px 16px 6px!important}
  .msat-store-theme .msat-blog-grid>article .entry-content{padding:8px 16px 16px!important}
  .msat-store-theme .msat-blog-grid>article .entry-taxonomy{padding:10px 16px 14px!important}
  .msat-store-theme .msat-blog-grid>article .entry-header .entry-title{font-size:21px!important}
}
@media(prefers-reduced-motion:reduce){
  .msat-store-theme .msat-blog-grid>article{transition:none}
}


/* Contact utility bar: desktop keeps the familiar labelled pills; mobile uses
   only the two icons so the Top Store-inspired navigation stays compact. */
@media(max-width:1100px){
  .msat-contact-actions{gap:6px}
  .msat-email__label,.msat-whatsapp__label{display:none!important}
}
@media(max-width:899px){
  .msat-nav-row{align-items:center!important;min-height:48px!important}
  .msat-contact-actions{display:flex;align-items:center;gap:6px;margin-left:auto;padding:4px 0}
  .msat-email,.msat-whatsapp{
    display:grid!important;
    place-items:center;
    width:38px;
    height:38px;
    min-width:38px;
    min-height:38px;
    padding:0!important;
    margin:0!important;
    border-radius:999px;
    line-height:1;
  }
  .msat-email__icon-wrap,.msat-whatsapp__icon-wrap{
    display:grid!important;
    place-items:center;
    width:24px!important;
    height:24px!important;
    flex:0 0 24px!important;
  }
  .msat-email__icon,.msat-whatsapp__icon{display:block;width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important}
  .msat-email__label,.msat-whatsapp__label{display:none!important}
}

/* Product sharing: lightweight, dependency-free actions in the single-product summary. */
.single-product .msat-product-share{
  margin:18px 0 0;
  padding:16px 0 0;
  border-top:1px solid var(--msat-border,#dfe4ea);
}
.single-product .msat-product-share__title{
  display:block;
  margin:0 0 9px;
  color:#475467;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.single-product .msat-product-share__actions{display:flex;flex-wrap:wrap;gap:8px}
.single-product .msat-product-share__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:42px;
  padding:9px 13px;
  border:1px solid #d6dce5;
  border-radius:8px;
  background:#fff;
  color:#344054!important;
  font:inherit;
  font-size:13px;
  font-weight:750;
  line-height:1.2;
  text-decoration:none!important;
  cursor:pointer;
  box-shadow:none;
  transition:border-color .15s ease,background-color .15s ease,color .15s ease,transform .15s ease;
}
.single-product .msat-product-share__button svg{
  width:18px;
  height:18px;
  flex:0 0 18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.single-product .msat-product-share__button:hover,
.single-product .msat-product-share__button:focus-visible{
  border-color:var(--msat-header,#253783);
  background:#f6f8fb;
  color:var(--msat-header,#253783)!important;
}
.single-product .msat-product-share__button--whatsapp{color:#187a39!important}
.single-product .msat-product-share__button--whatsapp:hover,
.single-product .msat-product-share__button--whatsapp:focus-visible{border-color:#249447;background:#f1faf4;color:#146b32!important}
.single-product .msat-product-share__button.is-copied{border-color:#23864b;background:#eef8f2;color:#176b39!important}
.single-product .msat-product-share__status{display:block;min-height:16px;margin-top:6px;color:#667085;font-size:11px;line-height:1.35}
@media(max-width:520px){
  .single-product .msat-product-share__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .single-product .msat-product-share__button{min-width:0;min-height:44px;padding:8px 6px;font-size:11px;gap:5px}
  .single-product .msat-product-share__button svg{width:17px;height:17px;flex-basis:17px}
}

/* ModoSAT: tablas técnicas editoriales. Alcance limitado a .ms-tabla-roscado.
   Mantiene tres columnas visibles sin desplazamiento horizontal en móviles.
   Los encabezados son semánticos y no se transforman en bloques sin contexto. */
.msat-store-theme .entry-content .ms-tabla-roscado,
.msat-store-theme .ms-tabla-roscado{
  display:block;max-width:100%;width:100%;min-width:0;
  margin:1.3rem 0 1.9rem;padding:0;overflow-x:auto;-webkit-overflow-scrolling:touch;
  border:1px solid #cfd8e3;border-radius:10px;background:#fff;
}
.msat-store-theme .entry-content .ms-tabla-roscado table,
.msat-store-theme .ms-tabla-roscado table{
  display:table;width:100%!important;min-width:0!important;max-width:100%;
  margin:0!important;border:0!important;border-collapse:collapse!important;
  table-layout:fixed;font-size:clamp(12.5px,1vw + 10px,15.5px);line-height:1.42;
  color:#1e293b;background:#fff;
}
.msat-store-theme .ms-tabla-roscado caption,
.msat-store-theme .ms-tabla-roscado figcaption{
  caption-side:top;text-align:left!important;padding:12px 14px!important;
  margin:0!important;background:#eef3fa;color:#17355d;
  font-weight:750;font-size:clamp(13px,1vw + 10px,16px);
}
.msat-store-theme .ms-tabla-roscado thead th{
  background:#253783!important;color:#fff!important;font-weight:700!important;
  border:0!important;padding:11px 10px!important;
  text-align:center;line-height:1.32;white-space:normal;overflow-wrap:break-word;
}
.msat-store-theme .ms-tabla-roscado thead th:first-child{width:36%;text-align:left}
.msat-store-theme .ms-tabla-roscado thead th:nth-child(2){width:27%}
.msat-store-theme .ms-tabla-roscado thead th:nth-child(3){width:37%}
.msat-store-theme .ms-tabla-roscado tbody th,
.msat-store-theme .ms-tabla-roscado tbody td{
  border:0!important;border-bottom:1px solid #e4eaf1!important;
  padding:9px 10px!important;vertical-align:middle!important;
  color:#243244!important;background:transparent!important;
  box-shadow:none!important;white-space:normal;
}
.msat-store-theme .ms-tabla-roscado tbody th{
  text-align:left;font-weight:650;overflow-wrap:normal;
}
.msat-store-theme .ms-tabla-roscado tbody td{text-align:center;font-variant-numeric:tabular-nums}
.msat-store-theme .ms-tabla-roscado tbody tr:nth-child(even){background:#f1f5fb}
.msat-store-theme .ms-tabla-roscado tbody tr:hover{background:#e6effa}
.msat-store-theme .ms-tabla-roscado tbody tr:last-child > *{border-bottom:0!important}
@media(max-width:600px){
  .msat-store-theme .ms-tabla-roscado{border-radius:8px;margin:1rem 0 1.5rem}
  .msat-store-theme .ms-tabla-roscado caption,
  .msat-store-theme .ms-tabla-roscado figcaption{padding:10px 9px!important;font-size:13px}
  .msat-store-theme .ms-tabla-roscado table{font-size:12.5px!important;line-height:1.35}
  .msat-store-theme .ms-tabla-roscado thead th{padding:10px 5px!important;font-size:12px}
  .msat-store-theme .ms-tabla-roscado tbody th,
  .msat-store-theme .ms-tabla-roscado tbody td{padding:8px 5px!important}
}

/* 0.9.22: Product breadcrumb chips, rendered by Rank Math. */
body.single-product .msat-product-breadcrumbs{max-width:100%;min-width:0;margin:12px 0 17px}
body.single-product .msat-product-breadcrumbs nav{max-width:100%;margin:0;padding:0}
body.single-product .msat-product-breadcrumbs .rank-math-breadcrumb p,
body.single-product .msat-product-breadcrumbs .woocommerce-breadcrumb{
  display:flex;align-items:center;gap:7px;max-width:100%;min-width:0;
  margin:0!important;padding:3px 0 9px;overflow-x:auto;
  overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;
  scrollbar-width:thin;white-space:nowrap;font-size:13px;line-height:1.35
}
body.single-product .msat-product-breadcrumbs a,
body.single-product .msat-product-breadcrumbs .last{
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 auto;box-sizing:border-box;min-height:36px;padding:7px 12px;
  border:1px solid #d9e0ea;border-radius:999px;background:#f5f7fb;
  color:#253783!important;font-size:13px;font-weight:600;
  text-decoration:none!important;line-height:1.3;
  box-shadow:none;transition:background .15s,border-color .15s
}
body.single-product .msat-product-breadcrumbs a:hover{
  background:#fff8de;border-color:#d5ad23;color:#172033!important
}
body.single-product .msat-product-breadcrumbs a:focus-visible{
  outline:3px solid #253783;outline-offset:2px
}
body.single-product .msat-product-breadcrumbs .last{
  max-width:min(260px,45vw);overflow:hidden;text-overflow:ellipsis;
  display:block;align-content:center;border-color:#e6d487;
  background:#fff9e9;color:#493e1b!important;font-weight:600
}
body.single-product .msat-product-breadcrumbs .separator{
  flex:0 0 auto;color:#98a2b3;font-weight:700;font-size:16px
}
@media(max-width:600px){
  body.single-product .msat-product-breadcrumbs{margin:9px 0 13px}
  body.single-product .msat-product-breadcrumbs a,
  body.single-product .msat-product-breadcrumbs .last{
    min-height:38px;padding:8px 11px;font-size:12.5px
  }
  body.single-product .msat-product-breadcrumbs .last{max-width:180px}
}

/* 0.9.23 variant C: force distinct category chips and a subdued product label. */
body.single-product.msat-store-theme .msat-product-breadcrumbs{
  display:block!important;visibility:visible!important;opacity:1!important;
  width:100%;max-width:100%;box-sizing:border-box;
  margin:12px 0 18px!important;overflow:hidden
}
body.single-product.msat-store-theme .msat-product-breadcrumbs .rank-math-breadcrumb p,
body.single-product.msat-store-theme .msat-product-breadcrumbs .woocommerce-breadcrumb{
  display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
  gap:8px!important;align-items:center!important;
  max-width:100%;overflow-x:auto;overflow-y:hidden;
  white-space:nowrap;margin:0!important;padding:4px 1px 10px!important;
  -webkit-overflow-scrolling:touch;scrollbar-width:thin;
}
body.single-product.msat-store-theme .msat-product-breadcrumbs a{
  display:inline-flex!important;flex:0 0 auto;align-items:center;
  min-height:37px;box-sizing:border-box;
  padding:8px 12px!important;border:1px solid #dbe2ec!important;
  border-radius:999px!important;background:#f5f7fb!important;
  color:#253783!important;font-size:13px!important;line-height:1.25!important;
  font-weight:650!important;text-decoration:none!important;
}
body.single-product.msat-store-theme .msat-product-breadcrumbs a:hover{
  background:#fff7db!important;border-color:#e0b532!important;
}
body.single-product.msat-store-theme .msat-product-breadcrumbs .separator{
  color:#98a2b3;flex:0 0 auto;font-size:16px
}
body.single-product.msat-store-theme .msat-product-breadcrumbs .last{
  border:0!important;border-radius:0!important;background:transparent!important;
  color:#667085!important;font-size:12px!important;font-weight:400!important
}
body.single-product.msat-store-theme .msat-product-breadcrumbs__current{
  margin:1px 0 0!important;padding:0 3px!important;
  max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  color:#667085!important;font-size:12px!important;line-height:1.5!important;
  font-weight:400!important
}
@media(max-width:600px){
  body.single-product.msat-store-theme .msat-product-breadcrumbs{margin:8px 0 13px!important}
  body.single-product.msat-store-theme .msat-product-breadcrumbs a{font-size:12px!important;min-height:38px;padding:8px 11px!important}
  body.single-product.msat-store-theme .msat-product-breadcrumbs__current{font-size:11.5px!important}
}



