/* S3 MAX v3.13 compiled bundle. Legacy refinement files consolidated in original load order. */

/* ---- consolidated: v37.css ---- */
/* =========================================================
   v3.7 Compact B2B UX: readable typography, visual category
   menu, trade-registration popup and graphic Quick Order.
   ========================================================= */

/* Sharper, slightly larger storefront typography. Keep branded/nav areas intact. */
body:not(.admin-body):not(.admin-login){
  font-family:Arial,Helvetica,sans-serif;
  font-size:16px;
  line-height:1.48;
  color:#111;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body:not(.admin-body):not(.admin-login) main,
body:not(.admin-body):not(.admin-login) main p,
body:not(.admin-body):not(.admin-login) main li,
body:not(.admin-body):not(.admin-login) main label,
body:not(.admin-body):not(.admin-login) main td,
body:not(.admin-body):not(.admin-login) main th,
body:not(.admin-body):not(.admin-login) main small,
body:not(.admin-body):not(.admin-login) .product-body,
body:not(.admin-body):not(.admin-login) .catalogue-toolbar,
body:not(.admin-body):not(.admin-login) .filters{
  color:#111;
}
body:not(.admin-body):not(.admin-login) main p{font-size:15.5px;line-height:1.55}
body:not(.admin-body):not(.admin-login) .product-body h3{font-size:15px;line-height:1.32;color:#101010}
body:not(.admin-body):not(.admin-login) .product-body h3 a{color:#101010}
body:not(.admin-body):not(.admin-login) .sku,
body:not(.admin-body):not(.admin-login) .carton-note,
body:not(.admin-body):not(.admin-login) .login-price,
body:not(.admin-body):not(.admin-login) .product-card small{color:#222}
body:not(.admin-body):not(.admin-login) input,
body:not(.admin-body):not(.admin-login) select,
body:not(.admin-body):not(.admin-login) textarea,
body:not(.admin-body):not(.admin-login) button{font-size:15px}

/* Remove duplicated page banners/breadcrumbs below the main navigation. */
body:not(.admin-body):not(.admin-login) .breadcrumb-clean,
body:not(.admin-body):not(.admin-login) .page-hero,
body:not(.admin-body):not(.admin-login) .simple-form-hero,
body:not(.admin-body):not(.admin-login) .catalogue-hero{display:none!important}
body:not(.admin-body):not(.admin-login) main>.section:first-child,
body:not(.admin-body):not(.admin-login) main>.promo-banner-section:first-child{margin-top:0!important}
.compact-page-content{padding-top:28px!important}
.compact-content-title{margin:0 0 18px;font-size:28px;line-height:1.15;color:#111}
.compact-page-intro{margin-bottom:20px}
.compact-page-intro h1{margin:0 0 5px;font-size:27px;color:#111}
.compact-page-intro p{margin:0}

/* Compact product metadata after removal of the legacy availability row. */
.product-card .sku-row{min-height:24px;justify-content:flex-start}

/* More visual, useful Quick Order control. */
.reference-header .header-quick-order.quick-order-graphic{
  min-width:154px;
  width:auto;
  height:48px;
  padding:5px 13px 5px 7px;
  gap:9px;
  border-radius:9px;
  background:linear-gradient(135deg,#0d4b9f,#1268cf);
  color:#fff;
  box-shadow:0 5px 14px rgba(13,75,159,.18);
  overflow:hidden;
}
.reference-header .header-quick-order.quick-order-graphic:before{
  content:"";position:absolute;right:-20px;top:-30px;width:60px;height:80px;background:rgba(255,255,255,.08);transform:rotate(24deg)
}
.reference-header .header-quick-order.quick-order-graphic:hover{background:linear-gradient(135deg,#0a3f88,#0d5dbb);transform:translateY(-1px)}
.quick-order-icon{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:7px;background:#fff;color:#0d4b9f;box-shadow:inset 0 0 0 1px rgba(13,75,159,.12)}
.quick-order-icon svg{width:26px!important;height:26px!important}
.quick-order-copy{display:flex;flex-direction:column;align-items:flex-start;position:relative;z-index:1;line-height:1.05}
.quick-order-copy b{font-size:13px;font-weight:700;color:#fff}
.quick-order-copy small{font-size:9.5px;font-weight:500;color:rgba(255,255,255,.82);margin-top:4px}

/* Category imagery in the top navigation. */
.category-mega{position:static!important}
.category-mega-menu{
  width:min(1120px,calc(100vw - 32px))!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:9px!important;
  padding:14px!important;
  border-radius:10px!important;
}
.category-mega-menu .category-menu-card{
  display:grid!important;
  grid-template-columns:56px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  min-height:68px!important;
  padding:7px!important;
  border:1px solid #e7edf3!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#111!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.2!important;
}
.category-mega-menu .category-menu-card:hover{border-color:#0e63cc!important;background:#f6faff!important;color:#0d4b9f!important;transform:translateY(-1px)}
.category-mega-menu .category-menu-card img{width:56px;height:52px;object-fit:contain;border-radius:6px;background:#f7f8fa;padding:3px}
.category-mega-menu .category-menu-card span{min-width:0}

/* Modern guest trade-account registration popup. */
body.trade-popup-open{overflow:hidden}
.trade-register-modal[hidden]{display:none!important}
.trade-register-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:18px}
.trade-register-backdrop{position:absolute;inset:0;background:rgba(3,18,38,.58);backdrop-filter:blur(3px)}
.trade-register-dialog{
  position:relative;z-index:1;width:min(820px,96vw);display:grid;grid-template-columns:250px 1fr;
  background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.28);
  animation:tradePopupIn .28s ease both;
}
@keyframes tradePopupIn{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}
.trade-register-close{position:absolute;right:12px;top:10px;width:36px;height:36px;border:0;border-radius:50%;background:#f1f3f5;color:#111;font-size:24px;line-height:1;cursor:pointer;z-index:3}
.trade-register-close:hover{background:#e4e8ec;transform:rotate(4deg)}
.trade-register-graphic{min-height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:32px 24px;background:linear-gradient(155deg,#082f63,#0d57ad 62%,#0c73d6);position:relative;overflow:hidden}
.trade-register-graphic:before,.trade-register-graphic:after{content:"";position:absolute;background:#e5262a;transform:rotate(35deg);opacity:.94}
.trade-register-graphic:before{width:180px;height:24px;left:-55px;top:35px}.trade-register-graphic:after{width:210px;height:20px;right:-85px;bottom:55px;background:#ffc21c}
.trade-register-graphic img{width:112px;height:112px;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 10px 20px rgba(0,0,0,.2))}
.trade-register-graphic span{position:relative;z-index:1;color:#fff;font-size:14px;font-weight:800;letter-spacing:.16em;text-align:center}
.trade-register-content{padding:34px 38px 30px;color:#111}
.trade-popup-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;color:#0d4b9f}
.trade-register-content h2{font-size:30px;line-height:1.08;margin:7px 0 8px;color:#111}
.trade-register-content>p{margin:0 0 18px;color:#222;font-size:16px}
.trade-register-content ul{list-style:none;margin:0 0 20px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.trade-register-content li{position:relative;padding:11px 10px 11px 37px;background:#f7f9fb;border:1px solid #e8edf2;border-radius:9px;color:#111}
.trade-register-content li:before{content:"✓";position:absolute;left:11px;top:12px;width:19px;height:19px;display:grid;place-items:center;border-radius:50%;background:#e8f5ed;color:#13743c;font-size:11px;font-weight:900}
.trade-register-content li b{display:block;font-size:13px;margin-bottom:3px;color:#111}.trade-register-content li span{display:block;font-size:11.5px;line-height:1.35;color:#333}
.trade-register-actions{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:12px}.trade-register-actions .btn{font-size:11px;padding:11px 15px}
.trade-register-content>small{font-size:11px;color:#333}

/* Admin: slightly larger, sharper and black text. */
.admin-body,.admin-login{font-family:Arial,Helvetica,sans-serif;color:#111;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.admin-body{font-size:15px;line-height:1.48}
.admin-body .admin-main,.admin-body .admin-panel,.admin-body table,.admin-body label,.admin-body p,.admin-body small,.admin-body .muted{color:#111}
.admin-body .admin-top h1{font-size:27px;color:#111}.admin-body h2{font-size:20px;color:#111}.admin-body h3{font-size:17px;color:#111}
.admin-body table{font-size:14px}.admin-body th{font-size:12.5px;color:#111}.admin-body td{font-size:14px;color:#111}
.admin-body input,.admin-body select,.admin-body textarea,.admin-body button{font-size:14px;color:#111}
.admin-body .admin-page-kicker,.admin-body .admin-nav-label{letter-spacing:.1em}

@media(max-width:900px){
  .trade-register-dialog{grid-template-columns:190px 1fr}.trade-register-content{padding:28px 28px 25px}.trade-register-content h2{font-size:26px}
}
@media(max-width:760px){
  .trade-register-dialog{grid-template-columns:1fr;max-height:92vh;overflow:auto}.trade-register-graphic{min-height:112px;padding:16px;flex-direction:row}.trade-register-graphic img{width:64px;height:64px}.trade-register-content{padding:24px 20px}.trade-register-content ul{grid-template-columns:1fr}.trade-register-actions{display:grid}.trade-register-actions .btn{text-align:center}
}
@media(max-width:700px){
  .reference-header .header-quick-order.quick-order-graphic{width:42px!important;min-width:42px!important;height:40px!important;padding:2px!important;border-radius:8px!important}
  .reference-header .header-quick-order .quick-order-icon{width:34px;height:34px;flex-basis:34px;background:transparent;color:#fff;box-shadow:none}
  .reference-header .header-quick-order .quick-order-copy{display:none!important}
  .category-mega-menu{grid-template-columns:1fr 1fr!important;width:100%!important;padding:8px!important;gap:6px!important}
  .category-mega-menu .category-menu-card{grid-template-columns:44px minmax(0,1fr)!important;min-height:58px!important;font-size:11px!important;padding:6px!important}
  .category-mega-menu .category-menu-card img{width:44px;height:44px}
  body:not(.admin-body):not(.admin-login){font-size:15px}
  body:not(.admin-body):not(.admin-login) main p{font-size:14.5px}
  .compact-content-title{font-size:24px}
}
@media(max-width:420px){
  .category-mega-menu{grid-template-columns:1fr!important}
}
/* v3.7 small corrections */
@media(min-width:821px){.category-mega{position:relative!important}.category-mega-menu{left:0!important;top:46px!important}}
.admin-side,.admin-side a{color:#eaf3fb!important}.admin-side .admin-nav-label,.admin-side small{color:#7fa4c8!important}.admin-side .admin-brand span{color:#9fc0df!important}

.admin-login,.admin-login label,.admin-login p,.admin-login small{color:#111!important}.admin-login input,.admin-login button{font-size:15px}

/* =========================================================
   v3.7.1 readability + image Quick Order + homepage cleanup
   ========================================================= */
body:not(.admin-body):not(.admin-login){font-size:17px;line-height:1.5}
body:not(.admin-body):not(.admin-login) main p{font-size:16.5px;line-height:1.58}
body:not(.admin-body):not(.admin-login) .product-body h3{font-size:16px;line-height:1.34}
body:not(.admin-body):not(.admin-login) .product-card .sku,
body:not(.admin-body):not(.admin-login) .product-card .carton-note,
body:not(.admin-body):not(.admin-login) .product-card .login-price,
body:not(.admin-body):not(.admin-login) .product-card small{font-size:12.5px}
body:not(.admin-body):not(.admin-login) .section-head h2{font-size:27px}
body:not(.admin-body):not(.admin-login) .section-head a{font-size:13.5px}
body:not(.admin-body):not(.admin-login) .clean-nav{font-size:13.5px}
body:not(.admin-body):not(.admin-login) .header-account-links{font-size:14px}
body:not(.admin-body):not(.admin-login) input,
body:not(.admin-body):not(.admin-login) select,
body:not(.admin-body):not(.admin-login) textarea,
body:not(.admin-body):not(.admin-login) button{font-size:16px}

/* Quick Order is now a real graphic image control rather than a text button. */
.reference-header .header-quick-order.quick-order-image-button{
  width:176px!important;min-width:176px!important;height:50px!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  overflow:visible!important;display:flex!important;align-items:center!important;justify-content:center!important;
  transition:transform .18s ease,filter .18s ease!important;
}
.reference-header .header-quick-order.quick-order-image-button:before{display:none!important}
.reference-header .header-quick-order.quick-order-image-button:hover{background:transparent!important;transform:translateY(-2px) scale(1.025)!important;filter:drop-shadow(0 7px 10px rgba(13,75,159,.18))}
.quick-order-image{display:block;width:100%;height:100%;object-fit:contain}
.quick-order-image-mobile{display:none}

@media(max-width:760px){
  body:not(.admin-body):not(.admin-login){font-size:16px}
  body:not(.admin-body):not(.admin-login) main p{font-size:15.5px}
  body:not(.admin-body):not(.admin-login) .product-body h3{font-size:15.5px}
  .reference-header .header-quick-order.quick-order-image-button{width:44px!important;min-width:44px!important;height:44px!important}
  .quick-order-image-full{display:none!important}
  .quick-order-image-mobile{display:block!important;width:44px!important;height:44px!important}
}


/* v3.8.2 storefront refinement: compact registration, modern cards, sections, quick order, cart and infinite catalogue. */
.trade-register-dialog{width:min(690px,94vw);grid-template-columns:180px 1fr;border-radius:16px}
.trade-register-graphic{padding:22px 16px;gap:12px}.trade-register-graphic img{width:82px;height:82px}.trade-register-graphic span{font-size:11px}
.trade-register-content{padding:24px 28px 22px}.trade-register-content h2{font-size:25px}.trade-register-content>p{font-size:14px;margin-bottom:13px}.trade-register-content ul{gap:8px;margin-bottom:14px}.trade-register-content li{padding:9px 8px 9px 32px}.trade-register-content li:before{left:9px;top:10px}.trade-register-content li b{font-size:12px}.trade-register-content li span{font-size:10.5px}.trade-register-actions{margin-bottom:8px}.trade-register-content>small{font-size:10px}

/* Product/category image holders */
.product-card{display:flex;flex-direction:column;height:100%;border-radius:10px!important;overflow:hidden}
.product-img{height:auto!important;aspect-ratio:1/1;padding:14px!important;background:#fafbfd!important;border-bottom:1px solid #edf1f4;display:grid!important;place-items:center}
.product-img img{width:100%!important;height:100%!important;max-width:100%;max-height:100%;object-fit:contain!important;object-position:center}
.category-card{border-radius:10px!important;overflow:hidden;padding-bottom:13px!important}.category-photo{height:auto!important;aspect-ratio:4/3;display:grid;place-items:center;padding:12px!important;background:#fafbfd!important}.category-photo img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center}
.product-body{display:flex;flex-direction:column;flex:1}.product-body h3{min-height:0!important}.card-order,.guest-price-btn{margin-top:auto!important}
.badge-stack{position:absolute;left:10px;top:10px;display:flex;gap:5px;flex-wrap:wrap;z-index:2;max-width:calc(100% - 55px)}
.product-tag{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:700;letter-spacing:.02em;border:1px solid transparent;backdrop-filter:blur(8px);box-shadow:0 3px 10px rgba(20,35,55,.06)}
.product-tag i{width:6px;height:6px;border-radius:50%;display:block}.tag-new{color:#0757a6;background:rgba(235,246,255,.94);border-color:#cfe7fb}.tag-new i{background:#1684e8}.tag-offer{color:#a43c18;background:rgba(255,244,237,.96);border-color:#ffd9c8}.tag-offer i{background:#ef6a32}.tag-coming{color:#765b00;background:rgba(255,250,226,.96);border-color:#f3e4a4}.tag-coming i{background:#e2ad00}
.carton-note{font-size:11.5px!important;color:#111!important;border-top:0!important;padding-top:0!important;margin-top:4px!important}.carton-note b{font-weight:600}
.save-product-btn{width:36px!important;height:36px!important;border-radius:50%!important;background:rgba(255,255,255,.96)!important;border:1px solid #e2e7ec!important;box-shadow:0 5px 16px rgba(22,39,58,.09)!important;color:#607080!important;display:grid!important;place-items:center!important;padding:0!important}
.save-product-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}.save-product-btn:hover{color:#e24c58!important;border-color:#f2c6cb!important;transform:translateY(-1px)}.save-product-btn.saved{color:#e14352!important;background:#fff5f6!important;border-color:#f1c3c8!important}.save-product-btn.saved svg{fill:currentColor;stroke:currentColor}
.product-add-btn{height:36px!important;display:flex!important;gap:5px!important;border-radius:7px!important;font-size:11px!important;padding:8px 10px!important}.product-add-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.guest-price-btn{width:100%;gap:7px;border-radius:7px!important;background:#fff!important;color:#0d4b9f!important;border:1px solid #bfd2e8!important;box-shadow:none!important;text-transform:none!important;font-weight:600!important;font-size:11.5px!important;padding:10px 11px!important}.guest-price-btn:hover{background:#f2f7fc!important;border-color:#0d62bc!important}.guest-price-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Cleaner homepage section headings: icon + name only, action after content. */
.tpl-home .managed-home-slot .section-head{border-bottom:0!important;padding-bottom:0!important;margin-bottom:15px!important}.tpl-home .managed-home-slot .section-head .section-kicker,.tpl-home .managed-home-slot .section-head p{display:none!important}.tpl-home .managed-home-slot .section-head h2{display:flex;align-items:center;gap:10px;font-size:24px!important;color:#111!important}.tpl-home .managed-home-slot .section-head h2:before{content:"✦";width:31px;height:31px;border-radius:9px;background:#edf5fd;color:#0d5fac;display:inline-grid;place-items:center;font-size:15px;line-height:1;flex:0 0 31px}
.tpl-home .managed-categories .section-head h2:before{content:"▦"}.tpl-home .managed-new_stock .section-head h2:before{content:"✦"}.tpl-home .managed-popular .section-head h2:before{content:"★"}.tpl-home .managed-promotional_banners .section-head h2:before{content:"%"}.tpl-home .managed-recent .section-head h2:before{content:"↻"}.tpl-home .managed-brands .section-head h2:before{content:"◇"}
.section-after-link{margin-top:16px;display:flex;justify-content:flex-end}.section-after-link a,.tpl-home .managed-home-slot .section-head>a{display:inline-flex;align-items:center;gap:6px;color:#0d5fac!important;font-size:12px!important;font-weight:700!important;padding:8px 12px;border:1px solid #d5e3f0;border-radius:8px;background:#fff}.section-after-link a:hover,.tpl-home .managed-home-slot .section-head>a:hover{background:#eef6fd;border-color:#b5d2e9}.section-after-link span{font-size:16px}
/* Move legacy themed template section links to after their content without changing their layouts. */
.tpl-home .managed-home-slot>section:has(.section-head){display:flex;flex-direction:column}.tpl-home .managed-home-slot>section:has(.section-head)>.section-head{display:contents}.tpl-home .managed-home-slot>section:has(.section-head)>.section-head>div{order:1;margin-bottom:15px}.tpl-home .managed-home-slot>section:has(.section-head)>*:not(.section-head){order:2}.tpl-home .managed-home-slot>section:has(.section-head)>.section-head>a{order:3;align-self:flex-end;margin-top:16px}

/* Product detail images and headings */
.product-page-v2 .main-image{height:auto!important;aspect-ratio:1/1;max-height:620px;padding:24px!important;background:#fafbfd!important;overflow:hidden}.product-page-v2 .main-image img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center}.product-thumbnails .product-thumb{background:#fafbfd!important}.product-thumbnails .product-thumb img{object-fit:contain!important}.gallery-note{font-size:11px;color:#333}.detail-heading{margin-top:0!important;display:flex;align-items:center;gap:9px;color:#111!important}.detail-heading:before,.modern-related-head h2:before{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:8px;background:#eef5fb;color:#0d5fac;font-size:14px}.detail-heading.info-icon:before{content:"i";font-weight:800}.detail-heading.spec-icon:before{content:"≡"}.modern-related-head h2{display:flex;align-items:center;gap:9px}.modern-related-head h2:before{content:"＋"}

/* Catalogue infinite loading / search result compaction. */
.catalogue-result-count,.pagination{display:none!important}.catalogue-toolbar{justify-content:flex-end;gap:12px}.search-results-label{margin-right:auto;display:flex;gap:7px;align-items:baseline;min-width:0}.search-results-label span{font-size:11px;color:#555}.search-results-label strong{font-size:15px;color:#111;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-results-catalogue{padding-top:18px!important}.search-results-catalogue .filters{padding:14px}.search-results-catalogue .filter-help,.search-results-catalogue .filter-banner{display:none!important}.infinite-products-sentinel{min-height:70px;display:flex;align-items:center;justify-content:center;gap:10px;color:#555;font-size:12px}.infinite-spinner{width:22px;height:22px;border:2px solid #dbe4ec;border-top-color:#0d5fac;border-radius:50%;animation:s3spin .75s linear infinite}.infinite-products-sentinel.has-error .infinite-spinner{display:none}@keyframes s3spin{to{transform:rotate(360deg)}}

/* Dynamic Quick Order */
.quick-order-page{padding-top:24px!important}.quick-order-shell{max-width:1080px;margin:auto}.quick-order-intro{display:grid;grid-template-columns:54px 1fr auto;gap:16px;align-items:center;margin-bottom:16px;background:#f7fafc;border:1px solid #e0e8ef;border-radius:14px;padding:17px 20px}.quick-order-symbol{width:50px;height:50px;border-radius:13px;display:grid;place-items:center;background:#e9f3fd;color:#0d5fac;font-size:25px}.quick-order-intro h1{font-size:27px;margin:0 0 5px;color:#111}.quick-order-intro p{margin:0;max-width:650px;color:#333;font-size:13px}.quick-order-mini-benefits{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.quick-order-mini-benefits span{font-size:9.5px;padding:6px 8px;border-radius:999px;background:#fff;border:1px solid #dce6ee;color:#344d65}.quick-order-dynamic{padding:18px!important;border-radius:14px!important}.quick-head{display:grid!important;grid-template-columns:minmax(0,1fr) 150px 38px!important;gap:10px;padding:0 8px 7px;color:#4e5d6d;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.modern-quick-row{display:grid!important;grid-template-columns:minmax(0,1fr) 150px 38px!important;gap:10px!important;align-items:center!important;padding:8px!important;border:1px solid transparent;border-radius:11px;position:relative}.modern-quick-row:nth-child(odd){background:#fafbfd}.modern-quick-row:focus-within{background:#f4f9fe;border-color:#c9dff2}.quick-product-search{position:relative;min-width:0}.quick-product-search>input[data-quick-query]{margin:0!important;height:44px;border-radius:8px!important;padding:10px 12px!important}.quick-selected-product{position:absolute;right:5px;top:5px;height:34px;max-width:48%;display:flex;align-items:center;gap:6px;background:#fff;border-radius:6px;padding:3px 7px 3px 3px;pointer-events:none}.quick-selected-product[hidden]{display:none}.quick-selected-product img{width:28px;height:28px;object-fit:contain;border-radius:4px}.quick-selected-product span{min-width:0}.quick-selected-product b,.quick-selected-product small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-selected-product b{font-size:9px}.quick-selected-product small{font-size:8px;color:#555}.quick-suggestions{position:absolute;left:0;right:0;top:48px;z-index:90;background:#fff;border:1px solid #d8e3ec;border-radius:10px;box-shadow:0 18px 45px rgba(23,42,64,.16);padding:5px;max-height:350px;overflow:auto}.quick-suggestions[hidden]{display:none}.quick-suggestion{width:100%;display:grid;grid-template-columns:48px 1fr;gap:9px;align-items:center;border:0;background:#fff;text-align:left;padding:6px;border-radius:7px;cursor:pointer}.quick-suggestion:hover{background:#f0f6fc}.quick-suggestion img{width:48px;height:48px;object-fit:contain;border:1px solid #edf0f3;border-radius:6px}.quick-suggestion b{display:block;font-size:11px;color:#111}.quick-suggestion small{display:block;font-size:9px;color:#555;margin-top:2px}.quick-no-result{padding:12px;font-size:11px;color:#555}.quick-carton-field{display:grid;grid-template-columns:36px 1fr 36px;height:44px;border:1px solid #ccd9e4;border-radius:8px;overflow:hidden;background:#fff}.quick-carton-field button{border:0;background:#f4f7f9;color:#173d65;font-size:18px;cursor:pointer}.quick-carton-field input{border:0!important;margin:0!important;text-align:center;padding:0!important;min-width:0}.quick-remove-row{width:34px;height:34px;border:0;border-radius:50%;background:#f5f6f7;color:#67717b;font-size:20px;cursor:pointer}.quick-remove-row:hover{background:#fff0f0;color:#b73b3b}.quick-order-actions{display:flex;justify-content:space-between;gap:12px;margin-top:15px;padding-top:14px;border-top:1px solid #e8edf1}.quick-add-row{gap:6px}.quick-submit{min-width:240px}

/* Dynamic cart */
.dynamic-cart{align-items:start}.cart-product-image{display:block;width:74px;height:74px;background:#fafbfd;border:1px solid #edf0f3;border-radius:8px;padding:4px}.cart-product-image img{width:100%;height:100%;object-fit:contain}.cart-product-name{display:inline-block;color:#111}.cart-product-name:hover{color:#0d5fac}.cart-product small{display:block;margin-top:3px;color:#555}.cart-product .cart-carton-qty{color:#111;font-weight:600}.cart-qty-wrap{display:grid;grid-template-columns:32px 56px 32px;height:38px;border:1px solid #ccd9e4;border-radius:8px;overflow:hidden;width:max-content}.cart-qty-wrap button{border:0;background:#f3f6f8;color:#173e65;font-size:17px;cursor:pointer}.cart-qty-wrap input{width:56px!important;border:0!important;margin:0!important;text-align:center!important;padding:0!important}.cart-auto-status{min-height:32px;padding:8px 13px;font-size:11px;color:#52616f}.cart-auto-status.saving{color:#816000}.cart-auto-status.saved{color:#147441}.cart-auto-status.error{color:#a92828}.summary-card [data-cart-submit][disabled]{pointer-events:none}

/* Lighter floating trade toolbar. */
.floating-trade-tools{background:rgba(255,255,255,.96)!important;border:1px solid #d8e3ed!important;box-shadow:0 10px 30px rgba(21,42,64,.13)!important;backdrop-filter:blur(14px)!important}.floating-trade-tools a{color:#183e65!important}.floating-trade-tools a:hover{background:#eef5fb!important;color:#075cad!important}.floating-trade-tools a:first-child{background:#eaf4fd!important;color:#075cad!important}.floating-trade-tools b{background:#e54b4b!important;color:#fff!important}

@media(max-width:760px){
  .trade-register-modal{padding:10px}.trade-register-dialog{width:min(390px,94vw);max-height:88vh;border-radius:14px}.trade-register-graphic{min-height:70px!important;padding:9px 13px!important;gap:9px!important}.trade-register-graphic img{width:42px!important;height:42px!important}.trade-register-graphic span{font-size:9px!important}.trade-register-content{padding:16px!important}.trade-register-content h2{font-size:21px!important;margin:4px 0 5px!important}.trade-register-content>p{font-size:12px!important;margin-bottom:9px!important}.trade-register-content ul{gap:5px!important;margin-bottom:10px!important}.trade-register-content li{padding:7px 6px 7px 29px!important}.trade-register-content li:before{top:8px;width:16px;height:16px;font-size:9px}.trade-register-content li b{font-size:10.5px!important}.trade-register-content li span{font-size:9.5px!important}.trade-register-actions .btn{padding:9px 10px!important;font-size:10px!important}.trade-register-content>small{display:none}
  .quick-order-intro{grid-template-columns:42px 1fr;padding:13px}.quick-order-symbol{width:40px;height:40px;font-size:20px}.quick-order-intro h1{font-size:22px}.quick-order-intro p{font-size:11.5px}.quick-order-mini-benefits{grid-column:1/-1;justify-content:flex-start}.quick-head{display:none!important}.modern-quick-row{grid-template-columns:minmax(0,1fr) 112px 32px!important;padding:6px!important}.quick-carton-field{grid-template-columns:30px 1fr 30px}.quick-selected-product{display:none!important}.quick-order-actions{flex-direction:column}.quick-submit{min-width:0;width:100%}.quick-add-row{width:100%}
  .cart-table thead{display:none}.cart-table,.cart-table tbody,.cart-table tr,.cart-table td{display:block;width:100%}.cart-table tr{padding:12px;border-bottom:1px solid #e7edf2}.cart-table td{border:0!important;padding:5px 0!important}.cart-table td:not(:first-child){display:flex;justify-content:space-between;align-items:center}.cart-table td:nth-child(2):before{content:"Item Price"}.cart-table td:nth-child(3):before{content:"Cartons"}.cart-table td:nth-child(4):before{content:"Total Pieces"}.cart-table td:nth-child(5):before{content:"Ex VAT"}.cart-product-image{width:64px;height:64px}.cart-qty-wrap{margin-left:auto}
  .section-after-link{justify-content:flex-start}.tpl-home .managed-home-slot>section:has(.section-head)>.section-head>a{align-self:flex-start}
}
@media(max-width:520px){.product-tag{font-size:8px;padding:4px 6px}.product-img{padding:9px!important}.category-photo{padding:8px!important}.guest-price-btn{font-size:10.5px!important}.modern-quick-row{grid-template-columns:minmax(0,1fr) 102px 28px!important;gap:6px!important}.quick-remove-row{width:28px;height:28px;font-size:17px}}

.summary-card [data-cart-submit].is-disabled{opacity:.48;pointer-events:auto;cursor:not-allowed;background:#7f8a94!important}

/* ---- consolidated: v383-modern.css ---- */
/* =========================================================
   S3 MAX v3.8.3 — Modern interaction, order journey, search help & WhatsApp
   Loaded after app.css/templates.css/v37.css so it can safely refine every template.
   ========================================================= */

/* ---------- Global interaction language ---------- */
body:not(.admin-body):not(.admin-login) a,
body:not(.admin-body):not(.admin-login) button,
body:not(.admin-body):not(.admin-login) .btn,
.admin-body a,.admin-body button,.admin-body .btn{
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease,filter .18s ease;
}
body:not(.admin-body):not(.admin-login) a:focus-visible,
body:not(.admin-body):not(.admin-login) button:focus-visible,
body:not(.admin-body):not(.admin-login) input:focus-visible,
body:not(.admin-body):not(.admin-login) select:focus-visible,
body:not(.admin-body):not(.admin-login) textarea:focus-visible{
  outline:3px solid rgba(13,98,188,.18);outline-offset:2px;
}
body:not(.admin-body):not(.admin-login) .btn:hover,
.admin-body .btn:hover{transform:translateY(-2px);filter:saturate(1.04);box-shadow:0 10px 24px rgba(9,70,128,.16)}
body:not(.admin-body):not(.admin-login) .btn:active,
.admin-body .btn:active{transform:translateY(0);box-shadow:0 4px 11px rgba(9,70,128,.10)}
body:not(.admin-body):not(.admin-login) .btn.ghost:hover{background:#f3f8fd!important;border-color:#8eb9df!important;color:#064f98!important}

/* Modern nav hover: clear but not flashy. */
.clean-nav>a,.clean-nav summary{border-radius:8px;padding:8px 10px!important;margin:-8px -10px;position:relative}
.clean-nav>a:hover,.clean-nav summary:hover{background:rgba(255,255,255,.10);transform:translateY(-1px)}
.front-template-trade_classic .clean-nav>a:hover,.front-template-trade_classic .clean-nav summary:hover,
.front-template-commerce_air .clean-nav>a:hover,.front-template-commerce_air .clean-nav summary:hover,
.front-template-catalogue_flow .clean-nav>a:hover,.front-template-catalogue_flow .clean-nav summary:hover{background:#eef5fb!important}
.category-menu-card:hover{transform:translateY(-3px);border-color:#9fc5e8!important;box-shadow:0 12px 26px rgba(18,61,102,.10)!important}
.category-menu-card:hover img{transform:scale(1.035)}
.category-menu-card img{transition:transform .2s ease}

/* Cards: subtle lift, sharper border, image emphasis. */
.product-card,.category-card,.brand-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important}
.product-card:hover{transform:translateY(-4px)!important;border-color:#b6cee4!important;box-shadow:0 15px 34px rgba(20,48,77,.10)!important}
.product-card .product-img img{transition:transform .24s ease,filter .24s ease}.product-card:hover .product-img img{transform:scale(1.025);filter:contrast(1.015)}
.category-card:hover{transform:translateY(-3px)!important;border-color:#b8cfe4!important;box-shadow:0 12px 28px rgba(20,48,77,.09)!important}

/* ---------- Product card control fix ---------- */
.product-card .card-order{grid-template-columns:minmax(0,1fr) 70px!important;gap:7px!important;align-items:start!important;width:100%!important;min-width:0!important}
.product-card .card-order>div{min-width:0!important}
.product-card .qty{width:100%!important;min-width:0!important;grid-template-columns:27px minmax(30px,1fr) 27px!important;height:38px!important;border-radius:8px!important}
.product-card .qty button{min-width:0!important;padding:0!important;cursor:pointer}.product-card .qty button:hover{background:#e8f2fb!important;color:#075dad!important}
.product-card .qty input{min-width:0!important;font-size:13px!important;padding:0!important}
.product-card .product-add-btn{width:70px!important;min-width:70px!important;max-width:70px!important;height:38px!important;padding:0 8px!important;border-radius:9px!important;gap:5px!important;overflow:hidden!important;white-space:nowrap!important;box-shadow:none!important;background:#075cad!important}
.product-card .product-add-btn:hover{background:#064d91!important;transform:translateY(-2px)!important;box-shadow:0 8px 18px rgba(7,92,173,.22)!important}
.product-card .product-add-btn svg{flex:0 0 16px}.product-card .product-add-btn span{display:block;overflow:hidden;text-overflow:clip;white-space:nowrap}
.product-card .carton-hint{display:block;padding-top:4px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.save-product-btn:hover{transform:translateY(-2px) scale(1.04)!important;box-shadow:0 9px 20px rgba(28,53,80,.14)!important}
.save-product-btn:active{transform:scale(.96)!important}

/* ---------- Modern full order journey ---------- */
.order-progress:not(.order-progress-mini){
  --progress-blue:#0b67bd;--progress-red:#e31f2c;--progress-line:#dce8f3;
  position:relative;display:grid;grid-template-columns:repeat(6,minmax(105px,1fr));gap:14px;
  width:100%;padding:28px 24px 22px;border:1px solid #dfe8f1;border-radius:18px;
  background:linear-gradient(180deg,#fff 0%,#f9fbfd 100%);box-shadow:0 12px 34px rgba(22,52,81,.055);overflow:hidden;
}
.order-progress:not(.order-progress-mini) .order-progress-track{left:calc(8.333% + 26px);right:calc(8.333% + 26px);top:56px;height:4px;background:var(--progress-line);border-radius:999px}
.order-progress:not(.order-progress-mini) .order-progress-track:after{background:linear-gradient(90deg,#0a6fc9,#0a5ca7);box-shadow:0 0 0 1px rgba(10,100,180,.04)}
.order-progress:not(.order-progress-mini) .order-progress-step{min-width:0;padding:0 4px;color:#6d7885}
.order-progress:not(.order-progress-mini) .order-progress-icon{width:58px;height:58px;margin:0 auto 13px;border:1px solid #cbd9e6;background:#fff;box-shadow:0 5px 16px rgba(23,55,87,.08);color:#7790a6}
.order-progress:not(.order-progress-mini) .order-progress-icon svg{width:25px;height:25px;stroke-width:1.7}
.order-progress:not(.order-progress-mini) .order-progress-step.done .order-progress-icon{background:#0b67bd;border-color:#0b67bd;box-shadow:0 8px 18px rgba(11,103,189,.18);color:#fff}
.order-progress:not(.order-progress-mini) .order-progress-step.current .order-progress-icon{background:#e31f2c;border-color:#e31f2c;color:#fff;transform:none;box-shadow:0 0 0 7px rgba(227,31,44,.09),0 8px 22px rgba(227,31,44,.18)}
.order-progress:not(.order-progress-mini) .order-progress-label{display:block;max-width:132px;min-height:34px;margin:0 auto;font-size:12.5px;font-weight:750;line-height:1.3;letter-spacing:0;text-transform:none;color:#1e2e3e;text-wrap:balance}
.order-progress:not(.order-progress-mini) .order-progress-step.future .order-progress-label{color:#7a8793}
.customer-order-progress-panel .order-progress,.admin-order-progress-panel .order-progress{max-width:none!important}
.admin-order-progress-panel,.customer-order-progress-panel .order-progress{border-radius:18px!important}
.order-success-progress{max-width:1040px;margin:28px auto 30px!important}
.order-progress-exception:not(.order-progress-mini) .order-progress-exception-note{bottom:5px;background:#fff4df;border:1px solid #efd9ad;color:#775311}
.order-progress-exception.cancelled:not(.order-progress-mini) .order-progress-exception-note{background:#fff0f0;border-color:#f0c8c8;color:#9e3333}

/* Mini timeline remains compact in tables, but gets a cleaner current-state marker. */
.order-progress-mini .order-progress-step.done .order-progress-icon{background:#0b67bd!important;color:#fff!important;box-shadow:0 0 0 1px #0b67bd!important}.order-progress-mini .order-progress-step.current .order-progress-icon{background:#e31f2c!important;color:#fff!important;box-shadow:0 0 0 2px rgba(227,31,44,.15)!important}.order-progress-mini .order-progress-track:after{background:#0b67bd!important}

/* ---------- Floating trade toolbar ---------- */
.floating-trade-tools{padding:6px!important;gap:4px!important;border-radius:16px!important;background:rgba(250,252,254,.95)!important;border:1px solid rgba(183,204,223,.8)!important;box-shadow:0 14px 34px rgba(22,48,73,.12)!important;backdrop-filter:blur(18px)!important}
.floating-trade-tools a{position:relative;border-radius:11px!important;padding:10px 13px!important;color:#24435f!important;background:transparent!important;font-weight:650!important;box-shadow:none!important}
.floating-trade-tools a:first-child{background:#eaf4fd!important;color:#075cad!important}
.floating-trade-tools a:hover{background:#fff!important;color:#075cad!important;transform:translateY(-3px)!important;box-shadow:0 8px 18px rgba(30,67,102,.11)!important}
.floating-trade-tools a:active{transform:translateY(-1px) scale(.98)!important}.floating-trade-tools b{min-width:20px;height:20px;border-radius:999px!important;display:inline-grid!important;place-items:center!important;margin-left:5px!important;font-size:10px!important}

/* ---------- Search no-result experience ---------- */
.search-empty-state{grid-column:1/-1;text-align:center;max-width:760px;margin:18px auto 38px;padding:42px 28px;border:1px solid #dce6ef;border-radius:18px;background:linear-gradient(180deg,#fff,#f9fbfd);box-shadow:0 10px 28px rgba(23,52,80,.045)}
.search-empty-icon{width:58px;height:58px;margin:0 auto 14px;border-radius:18px;display:grid;place-items:center;background:#edf5fc;color:#0a63b5;font-size:30px}
.search-empty-state h2{margin:0 0 8px;color:#111;font-size:25px}.search-empty-state p{max-width:620px;margin:0 auto 18px;color:#34475a!important}.search-empty-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.whatsapp-btn{background:#22a559!important;color:#fff!important;gap:8px}.whatsapp-btn:hover{background:#168c49!important}.whatsapp-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.search-random-products{grid-column:1/-1;margin-top:8px;padding-top:26px;border-top:1px solid #e5ebf0}.modern-section-title{display:flex;align-items:center;gap:11px;margin:0 0 17px}.modern-section-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#edf5fc;color:#0b62b3;font-size:16px}.modern-section-title small{display:block;font-size:10px;letter-spacing:.11em;color:#607486;font-weight:800}.modern-section-title h2{margin:2px 0 0;font-size:24px;color:#111}

/* ---------- WhatsApp Contact ---------- */
.whatsapp-contact-card{display:grid!important;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;margin-top:20px;padding:14px;border:1px solid #cce9d7;border-radius:14px;background:#f3fbf6;color:#183d29!important}.whatsapp-contact-card:hover{background:#eaf8ef;border-color:#8ed0a6;transform:translateY(-2px);box-shadow:0 10px 24px rgba(22,120,64,.09)}
.whatsapp-contact-icon{width:44px;height:44px;border-radius:13px;background:#20a95a;color:#fff;display:grid;place-items:center}.whatsapp-contact-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.whatsapp-contact-card b,.whatsapp-contact-card small{display:block}.whatsapp-contact-card b{font-size:14px}.whatsapp-contact-card small{font-size:11px;color:#466755!important;margin-top:2px}.whatsapp-contact-card em{font-style:normal;font-size:11px;font-weight:750;color:#168748}

/* ---------- Admin WhatsApp settings ---------- */
.whatsapp-admin-grid{align-items:start}.admin-help-text{font-size:12px;line-height:1.6;color:#53677a!important;background:#f6f9fb;border:1px solid #e1e8ee;padding:12px;border-radius:9px}.whatsapp-preview-card{min-height:100%}.whatsapp-admin-preview{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #e6ecf1}.whatsapp-admin-preview:last-of-type{border-bottom:0}.whatsapp-admin-icon{width:38px;height:38px;border-radius:11px;background:#21a95b;color:#fff;display:grid;place-items:center;font-weight:900}.whatsapp-admin-preview b,.whatsapp-admin-preview small{display:block}.whatsapp-admin-preview small{margin-top:3px;color:#617488}.whatsapp-admin-test{margin-top:18px;background:#21a95b!important}.whatsapp-admin-test:hover{background:#188b4b!important}

/* Modern admin/UI hover refinements. */
.admin-side nav a:hover{background:rgba(255,255,255,.085)!important;transform:translateX(3px)}.admin-mini-btn:hover,.table-edit-btn:hover,.table-delete-btn:hover{transform:translateY(-1px)}
.modern-admin-table tbody tr{transition:background-color .16s ease,box-shadow .16s ease}.modern-admin-table tbody tr:hover{background:#f5f9fd!important;box-shadow:inset 3px 0 0 #4b94cf}

@media(max-width:900px){
  .order-progress:not(.order-progress-mini){gap:7px;padding:22px 12px 18px;grid-template-columns:repeat(6,minmax(78px,1fr));overflow-x:auto}.order-progress:not(.order-progress-mini) .order-progress-icon{width:50px;height:50px}.order-progress:not(.order-progress-mini) .order-progress-track{top:48px}.order-progress:not(.order-progress-mini) .order-progress-label{font-size:10.5px;max-width:95px}
}
@media(max-width:640px){
  .order-progress:not(.order-progress-mini){display:flex;flex-direction:column;overflow:visible;gap:8px;padding:16px 15px}.order-progress:not(.order-progress-mini) .order-progress-track{left:37px;right:auto;top:42px;bottom:42px;width:4px;height:auto}.order-progress:not(.order-progress-mini) .order-progress-track:after{width:100%;height:calc((var(--order-stage) - 1) * 20%);max-height:100%}.order-progress:not(.order-progress-mini) .order-progress-step{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;text-align:left;padding:2px 0}.order-progress:not(.order-progress-mini) .order-progress-icon{width:44px;height:44px;margin:0;z-index:2}.order-progress:not(.order-progress-mini) .order-progress-icon svg{width:20px;height:20px}.order-progress:not(.order-progress-mini) .order-progress-label{max-width:none;min-height:0;margin:0;font-size:12px;text-align:left}.order-progress-exception:not(.order-progress-mini) .order-progress-exception-note{position:static;transform:none;margin:6px 0 0 56px;width:max-content}
  .product-card .card-order{grid-template-columns:minmax(0,1fr) 48px!important}.product-card .product-add-btn{width:48px!important;min-width:48px!important;max-width:48px!important;padding:0!important}.product-card .product-add-btn span{display:none}.product-card .qty{grid-template-columns:25px minmax(26px,1fr) 25px!important}.product-card .carton-hint{font-size:9px!important}
  .search-empty-state{padding:28px 16px;margin:8px auto 26px}.search-empty-state h2{font-size:21px}.search-empty-actions{flex-direction:column}.search-empty-actions .btn{width:100%}.search-random-products{padding-top:20px}.modern-section-title h2{font-size:20px}
  .whatsapp-contact-card{grid-template-columns:42px 1fr}.whatsapp-contact-card em{grid-column:2}.whatsapp-contact-icon{width:40px;height:40px}
  .floating-trade-tools a{padding:9px 10px!important}
}

/* ---- consolidated: v384-clean-flow.css ---- */
/* =========================================================
   S3 MAX v3.8.4 — clean header, interaction and order flow
   Loaded last so it normalises earlier template/interaction rules.
   ========================================================= */

/* ---------- Header / primary navigation repair ---------- */
body:not(.admin-body):not(.admin-login) .reference-header{background:#fff!important;border-bottom:0!important;box-shadow:0 1px 0 #dfe6ed!important}
body:not(.admin-body):not(.admin-login) .reference-header .reference-header-main{
  display:grid!important;grid-template-columns:minmax(190px,235px) minmax(330px,1fr) auto!important;
  align-items:center!important;gap:22px!important;min-height:88px!important;padding-top:14px!important;padding-bottom:14px!important;
}
body:not(.admin-body):not(.admin-login) .reference-header .logo{min-width:0!important;display:flex!important;align-items:center!important}
body:not(.admin-body):not(.admin-login) .reference-header .logo img{width:min(var(--tpl-logo-width,220px),220px)!important;max-height:58px!important;object-fit:contain!important;object-position:left center!important}
body:not(.admin-body):not(.admin-login) .reference-header .reference-search{width:100%!important;max-width:700px!important;margin:0 auto!important;height:46px!important;border:1px solid #cfd9e3!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important}
body:not(.admin-body):not(.admin-login) .reference-header .reference-search input{font-size:14px!important;color:#111!important;padding-left:16px!important}
body:not(.admin-body):not(.admin-login) .reference-header .reference-search button{width:46px!important;min-width:46px!important;height:44px!important;margin:0!important;border-radius:0 8px 8px 0!important;background:#0d4b9f!important;color:#fff!important}
body:not(.admin-body):not(.admin-login) .reference-header .reference-search button:hover{background:#0b3f84!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)!important;transform:none!important}
body:not(.admin-body):not(.admin-login) .reference-head-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:17px!important;min-width:max-content!important;white-space:nowrap!important}
body:not(.admin-body):not(.admin-login) .header-account-links{display:flex!important;align-items:center!important;gap:6px!important;font-size:13.5px!important;color:#111!important}
body:not(.admin-body):not(.admin-login) .header-account-links a:hover{color:#0b5cad!important}
body:not(.admin-body):not(.admin-login) .reference-header .header-quick-order.quick-order-image-button{width:164px!important;min-width:164px!important;height:48px!important}
body:not(.admin-body):not(.admin-login) .basket-link{display:grid!important;grid-template-columns:40px auto!important;gap:9px!important;align-items:center!important;min-width:176px!important;color:#0c59b3!important;padding:5px 7px!important;border-radius:10px!important}
body:not(.admin-body):not(.admin-login) .basket-link:hover{background:#f1f7fd!important;transform:none!important;box-shadow:none!important}
body:not(.admin-body):not(.admin-login) .basket-copy{display:flex!important;flex-direction:column!important;line-height:1.15!important}
body:not(.admin-body):not(.admin-login) .basket-copy small{font-size:11px!important;color:#172b3e!important}
body:not(.admin-body):not(.admin-login) .basket-copy strong{font-size:14px!important;color:#0c59b3!important;font-weight:650!important}
body:not(.admin-body):not(.admin-login) .trust-strip{background:#fff!important;border-top:1px solid #e3e9ef!important;border-bottom:1px solid #e3e9ef!important}
body:not(.admin-body):not(.admin-login) .trust-strip-inner{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:0!important;padding-left:28px!important;padding-right:28px!important}
body:not(.admin-body):not(.admin-login) .trust-strip-inner>span{min-width:0!important;padding:14px 22px!important;border-right:1px solid #e3e9ef!important;background:#fff!important;border-radius:0!important}
body:not(.admin-body):not(.admin-login) .trust-strip-inner>span:first-child{border-left:1px solid #e3e9ef!important}
body:not(.admin-body):not(.admin-login) .trust-strip-inner b{display:block!important;font-size:12px!important;color:#111!important;margin-bottom:2px!important}
body:not(.admin-body):not(.admin-login) .trust-strip-inner small{display:block!important;font-size:10.5px!important;color:#5a6875!important}
body:not(.admin-body):not(.admin-login) .nav-wrap{background:#fff!important;border-top:0!important;border-bottom:1px solid #dce4eb!important;padding:0!important;overflow:visible!important}
body:not(.admin-body):not(.admin-login) .clean-nav{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:4px!important;min-height:48px!important;height:auto!important;padding-top:4px!important;padding-bottom:4px!important;font-size:13px!important;font-weight:650!important;background:#fff!important;border-radius:0!important}
body:not(.admin-body):not(.admin-login) .clean-nav>a,body:not(.admin-body):not(.admin-login) .clean-nav summary{
  color:#111!important;padding:10px 12px!important;margin:0!important;border-radius:7px!important;line-height:1.1!important;white-space:nowrap!important;cursor:pointer!important;
}
body:not(.admin-body):not(.admin-login) .clean-nav>a:hover,body:not(.admin-body):not(.admin-login) .clean-nav summary:hover,
body:not(.admin-body):not(.admin-login) .clean-nav>a:focus-visible,body:not(.admin-body):not(.admin-login) .clean-nav summary:focus-visible{
  background:#eef5fb!important;color:#075aaa!important;transform:none!important;box-shadow:inset 0 0 0 1px #d6e5f2!important;
}
body:not(.admin-body):not(.admin-login) .clean-nav>a:active,body:not(.admin-body):not(.admin-login) .clean-nav summary:active{background:#e3eff9!important}

/* ---------- Cleaner buttons and hover language ---------- */
body:not(.admin-body):not(.admin-login) .btn,.admin-body .btn{
  border-radius:9px!important;background:#075cad!important;color:#fff!important;border:1px solid #075cad!important;
  box-shadow:none!important;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
body:not(.admin-body):not(.admin-login) .btn:hover,.admin-body .btn:hover{background:#064b8d!important;border-color:#064b8d!important;color:#fff!important;transform:translateY(-1px)!important;box-shadow:0 7px 17px rgba(7,75,141,.14)!important;filter:none!important}
body:not(.admin-body):not(.admin-login) .btn:active,.admin-body .btn:active{transform:translateY(0)!important;box-shadow:none!important}
body:not(.admin-body):not(.admin-login) .btn.ghost,.admin-body .btn.ghost{background:#fff!important;color:#075cad!important;border-color:#9fc0df!important}
body:not(.admin-body):not(.admin-login) .btn.ghost:hover,.admin-body .btn.ghost:hover{background:#edf5fc!important;color:#064b8d!important;border-color:#75a7d5!important;box-shadow:none!important}

/* Product-card controls: enough room for the full Add label. */
.product-card .card-order{grid-template-columns:minmax(98px,1fr) 86px!important;gap:8px!important;align-items:start!important}
.product-card .product-add-btn{width:86px!important;min-width:86px!important;max-width:86px!important;height:40px!important;padding:0 11px!important;border-radius:8px!important;background:#075cad!important;border:1px solid #075cad!important;color:#fff!important;display:flex!important;justify-content:center!important;gap:6px!important;font-size:11.5px!important;font-weight:700!important;overflow:visible!important}
.product-card .product-add-btn:hover{background:#064b8d!important;border-color:#064b8d!important;transform:translateY(-1px)!important;box-shadow:0 7px 15px rgba(7,75,141,.13)!important}
.product-card .product-add-btn span{display:block!important;overflow:visible!important}
.product-card .qty{height:40px!important;border-radius:8px!important;background:#fff!important}
.product-card .qty button{background:#f4f7f9!important;color:#182d40!important}.product-card .qty button:hover{background:#e6f1fa!important;color:#075cad!important}
.product-card .guest-price-btn{background:#fff!important;color:#075cad!important;border:1px solid #9ebfdd!important;opacity:1!important;font-weight:700!important}
.product-card .guest-price-btn:hover{background:#eef6fd!important;color:#054b8e!important;border-color:#6f9fcb!important;transform:translateY(-1px)!important}

/* ---------- Universal active-row/menu hover ---------- */
body:not(.admin-body):not(.admin-login) table tbody tr,.admin-body table tbody tr{transition:background-color .14s ease,box-shadow .14s ease!important}
body:not(.admin-body):not(.admin-login) table tbody tr:hover{background:#f3f8fc!important;box-shadow:inset 3px 0 0 #6aa1d0!important}
.admin-body table tbody tr:hover{background:#f3f8fc!important;box-shadow:inset 3px 0 0 #6aa1d0!important}
.cart-table tbody tr:hover{background:#eef6fc!important;box-shadow:inset 4px 0 0 #4f91c9!important}
.category-menu-card:hover,.footer-grid a:hover,.row-actions a:hover,.link-button:hover{color:#075cad!important}
.floating-trade-tools{background:rgba(255,255,255,.97)!important;border:1px solid #d5e2ec!important;border-radius:15px!important;box-shadow:0 12px 28px rgba(25,49,72,.11)!important}
.floating-trade-tools a{color:#203e58!important;border:1px solid transparent!important;border-radius:10px!important}
.floating-trade-tools a:first-child{background:#edf6fd!important;color:#075cad!important}
.floating-trade-tools a:hover{background:#eaf4fc!important;border-color:#c7ddec!important;color:#075cad!important;transform:translateY(-2px)!important;box-shadow:0 6px 14px rgba(30,67,102,.09)!important}

/* ---------- AJAX toast notifications ---------- */
.s3-toast-stack{position:fixed;right:22px;bottom:92px;z-index:12050;width:min(390px,calc(100vw - 28px));display:grid;gap:9px;pointer-events:none}
.s3-toast{pointer-events:auto;display:grid;grid-template-columns:48px 1fr auto;gap:11px;align-items:center;padding:11px 12px;border:1px solid #cfe4d7;border-radius:13px;background:#fff;box-shadow:0 14px 38px rgba(23,51,75,.16);animation:s3ToastIn .2s ease both;color:#111}
.s3-toast.is-error{border-color:#f0c8c8}.s3-toast-img{width:46px;height:46px;border-radius:9px;object-fit:contain;background:#f7f9fb;border:1px solid #edf1f4}.s3-toast-icon{width:46px;height:46px;border-radius:10px;display:grid;place-items:center;background:#eaf8ef;color:#15834a;font-size:22px;font-weight:900}.s3-toast.is-error .s3-toast-icon{background:#fff0f0;color:#b93434}.s3-toast b,.s3-toast small{display:block}.s3-toast b{font-size:13px;line-height:1.25}.s3-toast small{font-size:11px;color:#4d6071;margin-top:3px}.s3-toast-close{border:0;background:transparent;color:#778694;font-size:18px;cursor:pointer;padding:3px}.s3-toast.is-leaving{opacity:0;transform:translateY(8px);transition:.18s ease}@keyframes s3ToastIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ---------- Cart quick-add and cart usability ---------- */
.cart-main-card{overflow:visible!important}.cart-quick-add{border-top:1px solid #e4eaf0;padding:18px;display:grid;grid-template-columns:minmax(230px,.8fr) minmax(320px,1.2fr);gap:20px;align-items:center;background:#fbfcfd}
.cart-quick-add-copy{display:flex;align-items:center;gap:11px}.cart-add-plus{width:38px;height:38px;border-radius:10px;background:#e9f4fd;color:#075cad;display:grid;place-items:center;font-size:24px;flex:0 0 38px}.cart-quick-add-copy b,.cart-quick-add-copy small{display:block}.cart-quick-add-copy b{font-size:14px}.cart-quick-add-copy small{font-size:11px;color:#5c6c79;margin-top:2px}.cart-quick-search{position:relative;display:grid;grid-template-columns:1fr 44px;gap:7px}.cart-quick-search input[type=search]{height:43px;border:1px solid #cbd8e4;border-radius:9px;padding:0 13px;font-size:13px;outline:none}.cart-quick-search input[type=search]:focus{border-color:#75a7d3;box-shadow:0 0 0 3px rgba(7,92,173,.08)}.cart-search-add{height:43px;border:0;border-radius:9px;background:#075cad;color:#fff;font-size:23px;cursor:pointer}.cart-search-add:disabled{opacity:.4;cursor:not-allowed}.cart-search-add:not(:disabled):hover{background:#064b8d}.cart-search-suggestions{position:absolute;left:0;right:51px;top:49px;z-index:35;border:1px solid #d6e1ea;border-radius:11px;background:#fff;box-shadow:0 16px 34px rgba(20,44,67,.14);overflow:hidden}.cart-search-suggestion{width:100%;display:grid;grid-template-columns:46px 1fr;gap:10px;align-items:center;padding:8px 10px;border:0;border-bottom:1px solid #edf1f4;background:#fff;text-align:left;cursor:pointer}.cart-search-suggestion:last-child{border-bottom:0}.cart-search-suggestion:hover{background:#f0f7fd}.cart-search-suggestion img{width:44px;height:44px;object-fit:contain;background:#fafbfd}.cart-search-suggestion b,.cart-search-suggestion small{display:block}.cart-search-suggestion b{font-size:12px;color:#111}.cart-search-suggestion small{font-size:10px;color:#5b6976;margin-top:2px}

/* ---------- Checkout / delivery address ---------- */
.delivery-address-summary{padding:14px 15px;border:1px solid #e0e7ed;border-radius:10px;background:#f8fafc;margin-bottom:10px}.delivery-address-summary strong,.delivery-address-summary span{display:block}.delivery-address-summary strong{font-size:14px;margin-bottom:4px}.delivery-address-summary span{font-size:12px;line-height:1.45;color:#34495b}.delivery-address-editor{border:1px solid #dfe7ee;border-radius:10px;margin:10px 0 18px;background:#fff}.delivery-address-editor summary{padding:12px 14px;cursor:pointer;font-weight:700;color:#075cad;list-style:none}.delivery-address-editor summary::-webkit-details-marker{display:none}.delivery-address-editor summary:after{content:"+";float:right;font-size:18px}.delivery-address-editor[open] summary:after{content:"−"}.delivery-address-fields{padding:0 14px 14px}.delivery-address-fields .form-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.delivery-address-fields>small{display:block;margin-top:8px;color:#5a6b79}.provisional-order-note{margin:16px 0 10px!important;padding:11px 13px;border-radius:9px;background:#fff8e7;border:1px solid #f0deb0;color:#4f3c0f!important;font-size:12px!important;line-height:1.45!important}.submit-trade-order{min-height:48px!important;font-size:12.5px!important}.checkout-grid .summary-card>p>span small{display:block;color:#5b6b78;font-size:10px;margin-top:3px}

/* ---------- Order confirmation / timeline: spacious green ---------- */
.order-confirmation-card{width:min(1120px,96vw)!important;max-width:1120px!important;padding:38px 42px!important;text-align:center!important}.order-confirmation-card>p{max-width:720px;margin-left:auto!important;margin-right:auto!important}.order-confirmation-card .status-icon{background:#e8f7ee!important;color:#168447!important}
.order-progress:not(.order-progress-mini){--progress-green:#1c9a58!important;grid-template-columns:repeat(6,minmax(125px,1fr))!important;gap:20px!important;padding:30px 28px 24px!important;border-color:#dbe7e0!important;background:linear-gradient(180deg,#fff,#fbfdfc)!important;overflow:visible!important}
.order-progress:not(.order-progress-mini) .order-progress-track{left:calc(8.333% + 29px)!important;right:calc(8.333% + 29px)!important;top:59px!important;background:#deebe3!important}.order-progress:not(.order-progress-mini) .order-progress-track:after{background:#20a05d!important}
.order-progress:not(.order-progress-mini) .order-progress-icon{width:60px!important;height:60px!important;border-color:#c7d8cf!important;color:#769185!important;background:#fff!important}.order-progress:not(.order-progress-mini) .order-progress-step.done .order-progress-icon,.order-progress:not(.order-progress-mini) .order-progress-step.current .order-progress-icon{background:#1c9a58!important;border-color:#1c9a58!important;color:#fff!important;box-shadow:0 0 0 6px rgba(28,154,88,.08),0 8px 18px rgba(28,154,88,.15)!important}.order-progress:not(.order-progress-mini) .order-progress-label{max-width:150px!important;min-height:0!important;font-size:12.5px!important;line-height:1.32!important;color:#172b22!important}.order-progress:not(.order-progress-mini) .order-progress-step.future .order-progress-label{color:#718078!important}
.order-progress-mini .order-progress-step.done .order-progress-icon,.order-progress-mini .order-progress-step.current .order-progress-icon{background:#1c9a58!important;color:#fff!important;box-shadow:0 0 0 1px #1c9a58!important}.order-progress-mini .order-progress-track:after{background:#1c9a58!important}
.order-success-progress{max-width:none!important;margin:30px 0!important}.order-confirmation-card .btn{margin:0 5px!important;min-width:190px!important}

/* ---------- Footer WhatsApp ---------- */
.footer-whatsapp{display:grid!important;grid-template-columns:36px 1fr!important;gap:9px!important;align-items:center!important;margin:12px 0!important;padding:10px!important;border:1px solid #cce8d6!important;border-radius:10px!important;background:#f2fbf5!important;color:#17492b!important}.footer-whatsapp:hover{background:#e8f8ed!important;color:#126a35!important;border-color:#97d0aa!important;transform:translateY(-1px)!important}.footer-wa-icon{width:34px;height:34px;border-radius:9px;background:#20a95a;color:#fff;display:grid;place-items:center;font-weight:900}.footer-whatsapp b,.footer-whatsapp small{display:block}.footer-whatsapp b{font-size:12px}.footer-whatsapp small{font-size:10px;color:#4b6c57!important;line-height:1.25}

@media(max-width:1100px){
  body:not(.admin-body):not(.admin-login) .reference-header .reference-header-main{grid-template-columns:190px minmax(260px,1fr) auto!important;gap:14px!important}.reference-header .header-quick-order.quick-order-image-button{width:135px!important;min-width:135px!important}.basket-link{min-width:145px!important}.basket-copy small{display:none!important}
  .order-progress:not(.order-progress-mini){grid-template-columns:repeat(6,minmax(95px,1fr))!important;gap:10px!important;padding-left:14px!important;padding-right:14px!important}.order-progress:not(.order-progress-mini) .order-progress-label{font-size:11.5px!important}
}
@media(max-width:820px){
  body:not(.admin-body):not(.admin-login) .reference-header .reference-header-main{grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"logo actions" "search search"!important;gap:9px 10px!important;min-height:0!important;padding:10px 12px!important}.reference-header .logo{grid-area:logo!important}.reference-header .reference-search{grid-area:search!important;max-width:none!important}.reference-header .reference-head-actions{grid-area:actions!important}.reference-header .header-account-links{display:none!important}.reference-header .header-quick-order.quick-order-image-button{width:44px!important;min-width:44px!important;height:44px!important}.quick-order-image-full{display:none!important}.quick-order-image-mobile{display:block!important;width:44px!important;height:44px!important}.basket-link{min-width:44px!important;width:44px!important;height:44px!important;padding:0!important;display:grid!important;grid-template-columns:1fr!important;place-items:center!important}.basket-copy{display:none!important}.trust-strip{display:none!important}.nav-wrap .clean-nav{display:none!important}.nav-wrap.mobile-nav-open .clean-nav{display:flex!important}.clean-nav>a,.clean-nav summary{width:100%!important;white-space:normal!important}.cart-quick-add{grid-template-columns:1fr!important}.order-confirmation-card{padding:28px 18px!important}
  .order-progress:not(.order-progress-mini){display:flex!important;flex-direction:column!important;gap:9px!important;padding:17px!important}.order-progress:not(.order-progress-mini) .order-progress-track{left:39px!important;right:auto!important;top:45px!important;bottom:45px!important;width:4px!important;height:auto!important}.order-progress:not(.order-progress-mini) .order-progress-track:after{width:100%!important;height:calc((var(--order-stage) - 1) * 20%)!important}.order-progress:not(.order-progress-mini) .order-progress-step{display:grid!important;grid-template-columns:46px 1fr!important;gap:13px!important;align-items:center!important;text-align:left!important}.order-progress:not(.order-progress-mini) .order-progress-icon{width:46px!important;height:46px!important;margin:0!important;z-index:2}.order-progress:not(.order-progress-mini) .order-progress-label{max-width:none!important;text-align:left!important;font-size:12px!important}.order-confirmation-card .btn{width:100%!important;margin:5px 0!important}.delivery-address-fields .form-two{grid-template-columns:1fr}
}
@media(max-width:640px){
  .product-card .card-order{grid-template-columns:minmax(0,1fr) 50px!important}.product-card .product-add-btn{width:50px!important;min-width:50px!important;max-width:50px!important;padding:0!important}.product-card .product-add-btn span{display:none!important}.s3-toast-stack{left:14px;right:14px;bottom:78px;width:auto}.cart-quick-add{padding:14px}.cart-quick-search{grid-template-columns:1fr 42px}.cart-search-suggestions{right:49px}
}

/* ---- consolidated: v385-order-confirmation.css ---- */
/* =========================================================
   S3 MAX v3.8.5 — order confirmation + PDF alignment support
   ========================================================= */

/* Keep the full six-stage journey inside the confirmation card. */
.order-confirmation-wrap{
  width:100%!important;
  padding:58px 24px 70px!important;
  align-items:flex-start!important;
}
.status-card.order-confirmation-card{
  width:min(1180px,calc(100vw - 48px))!important;
  max-width:1180px!important;
  min-width:0!important;
  padding:38px 46px 40px!important;
  margin:0 auto!important;
  overflow:hidden!important;
  text-align:center!important;
}
.status-card.order-confirmation-card>p{
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.status-card.order-confirmation-card .order-success-progress{
  width:100%!important;
  max-width:100%!important;
  margin:30px 0 32px!important;
  overflow:hidden!important;
}
.status-card.order-confirmation-card .order-progress:not(.order-progress-mini){
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;
  padding:30px 26px 25px!important;
  overflow:hidden!important;
  border-radius:18px!important;
}
.status-card.order-confirmation-card .order-progress:not(.order-progress-mini) .order-progress-step{
  min-width:0!important;
}
.status-card.order-confirmation-card .order-progress:not(.order-progress-mini) .order-progress-label{
  width:100%!important;
  max-width:145px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  white-space:normal!important;
}
.status-card.order-confirmation-card .order-progress:not(.order-progress-mini) .order-progress-track{
  left:calc(8.333% + 25px)!important;
  right:calc(8.333% + 25px)!important;
}
.status-card.order-confirmation-card .btn{
  min-width:190px!important;
  margin:0 6px!important;
}

@media(max-width:900px){
  .status-card.order-confirmation-card{padding:30px 24px 32px!important}
  .status-card.order-confirmation-card .order-progress:not(.order-progress-mini){gap:6px!important;padding-left:14px!important;padding-right:14px!important}
  .status-card.order-confirmation-card .order-progress:not(.order-progress-mini) .order-progress-label{font-size:11px!important;max-width:110px!important}
}
@media(max-width:820px){
  .order-confirmation-wrap{padding:24px 12px 50px!important}
  .status-card.order-confirmation-card{width:100%!important;padding:26px 18px 28px!important}
  .status-card.order-confirmation-card .order-success-progress{overflow:visible!important}
  .status-card.order-confirmation-card .order-progress:not(.order-progress-mini){overflow:visible!important}
  .status-card.order-confirmation-card .order-progress:not(.order-progress-mini) .order-progress-label{max-width:none!important;font-size:12px!important}
  .status-card.order-confirmation-card .btn{width:100%!important;min-width:0!important;margin:5px 0!important}
}

/* ---- consolidated: v391-responsive-tables.css ---- */
/* v3.9.1 — new order emphasis, universal table striping, tablet/mobile header */

/* ===== New-order emphasis ===== */
@keyframes s3NewOrderPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(31,166,90,.08),0 3px 12px rgba(21,125,68,.08)}
  50%{box-shadow:0 0 0 7px rgba(31,166,90,.10),0 9px 24px rgba(21,125,68,.16)}
}
.admin-body .ops-kpi.urgent.has-new{
  background:linear-gradient(135deg,#e8f8ed,#d9f3e2)!important;
  border-color:#73c38f!important;
  animation:s3NewOrderPulse 1.45s ease-in-out infinite;
}
.admin-body .ops-kpi.urgent.has-new small,
.admin-body .ops-kpi.urgent.has-new b,
.admin-body .ops-kpi.urgent.has-new span{color:#0d6b35!important}
.admin-body .dashboard-new-orders-btn.has-new{
  background:#169447!important;border-color:#169447!important;color:#fff!important;
  animation:s3NewOrderPulse 1.45s ease-in-out infinite;
}
.admin-body .dashboard-new-orders-btn.has-new:hover{background:#0f7d3a!important;border-color:#0f7d3a!important}

/* New rows always remain visibly green, even within striped tables. */
.admin-body table tbody tr.is-new-order>td,
.admin-body .ops-sheet-table tbody tr.is-new-order>td{
  background:#e6f7eb!important;
  border-bottom-color:#c7e8d2!important;
}
.admin-body table tbody tr.is-new-order:hover>td,
.admin-body .ops-sheet-table tbody tr.is-new-order:hover>td{
  background:#d6f1df!important;
  box-shadow:inset 4px 0 0 #159447;
}
.admin-body .is-new-order strong:first-child{color:#0e6f39}

/* ===== Spreadsheet-style tables everywhere ===== */
.admin-body table,
body:not(.admin-body):not(.admin-login) main table{
  width:100%;border-collapse:separate;border-spacing:0;
}
.admin-body table thead th,
body:not(.admin-body):not(.admin-login) main table thead th{
  background:linear-gradient(180deg,#eef1f4,#dde3e8)!important;
  color:#101820!important;font-weight:800!important;
  border-top:1px solid #cbd3da!important;border-bottom:1px solid #bdc7d0!important;
}
.admin-body table tbody tr:nth-child(odd)>td,
body:not(.admin-body):not(.admin-login) main table tbody tr:nth-child(odd)>td{background:#fff}
.admin-body table tbody tr:nth-child(even)>td,
body:not(.admin-body):not(.admin-login) main table tbody tr:nth-child(even)>td{background:#f5f6f7}
.admin-body table tbody tr,
body:not(.admin-body):not(.admin-login) main table tbody tr{
  transition:background-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.admin-body table tbody tr:hover>td,
body:not(.admin-body):not(.admin-login) main table tbody tr:hover>td{
  background:#eaf4fb!important;
}
.admin-body table tbody tr:hover,
body:not(.admin-body):not(.admin-login) main table tbody tr:hover{
  box-shadow:inset 4px 0 0 #2879b9;
}
/* Cart has a stronger active-row cue without moving the layout. */
body:not(.admin-body):not(.admin-login) .cart-table tbody tr:hover>td{background:#edf6fc!important}
body:not(.admin-body):not(.admin-login) .cart-table tbody tr:hover{box-shadow:inset 4px 0 0 #0d5ca6}

/* ===== Tablet + mobile header/navigation ===== */
@media(max-width:1024px){
  body:not(.admin-body):not(.admin-login){overflow-x:hidden!important;min-width:0!important}
  body:not(.admin-body):not(.admin-login) .wrap{max-width:100%!important;min-width:0!important}

  /* Compact top utility line on iPad; even leaner on phones below. */
  .top-line-inner{min-height:30px!important;padding:5px 18px!important;gap:12px!important}
  .top-line-inner>span{font-size:10px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .top-line-inner>div{gap:12px!important;white-space:nowrap}
  .top-line-inner a{font-size:10px!important}

  .reference-header .reference-header-main,
  body.template-customised .reference-header .reference-header-main{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"logo actions" "search search"!important;
    gap:10px 14px!important;
    min-height:0!important;
    padding:12px 18px!important;
    max-width:100%!important;
  }
  .reference-header .reference-header-main>.logo{grid-area:logo!important;height:50px!important;min-width:0!important;align-items:center!important}
  .reference-header .reference-header-main>.logo img,
  body.template-customised .reference-header .logo img{width:min(var(--tpl-logo-width,190px),190px)!important;max-width:190px!important;max-height:48px!important;object-fit:contain!important}
  .reference-header .reference-search,
  body.template-customised .reference-header .reference-search{grid-area:search!important;width:100%!important;max-width:none!important;height:44px!important;margin:0!important;border-radius:10px!important}
  .reference-header .reference-search input{height:42px!important;padding:0 50px 0 14px!important;font-size:13px!important}
  .reference-header .reference-search button,
  body.template-customised .reference-header .reference-search button{width:36px!important;height:36px!important;right:3px!important;top:3px!important;border-radius:8px!important}
  .reference-header .reference-head-actions{grid-area:actions!important;display:flex!important;align-items:center!important;justify-self:end!important;gap:9px!important;min-width:0!important;padding:0!important}
  .reference-header .header-account-links{display:none!important}
  .reference-header .header-quick-order.quick-order-image-button{width:46px!important;min-width:46px!important;height:46px!important;padding:0!important}
  .reference-header .quick-order-image-full{display:none!important}
  .reference-header .quick-order-image-mobile{display:block!important;width:44px!important;height:44px!important;object-fit:contain!important}
  .reference-header .basket-link{position:relative!important;width:46px!important;min-width:46px!important;height:46px!important;padding:0!important;display:grid!important;place-items:center!important;grid-template-columns:1fr!important;gap:0!important}
  .reference-header .basket-icon{width:29px!important;height:33px!important;margin:0!important}
  .reference-header .basket-copy{display:none!important}
  .reference-header .basket-link:after{content:attr(data-count)!important;display:grid!important;place-items:center!important;position:absolute!important;right:0!important;top:-1px!important;min-width:17px!important;height:17px!important;padding:0 4px!important;border-radius:999px!important;background:#e33232!important;color:#fff!important;font:700 9px/1 Arial,Helvetica,sans-serif!important;opacity:0}
  .reference-header .basket-link[data-has-items="1"]:after{opacity:1}
  .trust-strip{display:none!important}

  /* Force the true mobile menu on iPads too. */
  .nav-wrap{position:relative!important;overflow:visible!important;padding:0!important}
  .mobile-nav-bar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;min-height:50px!important;padding:0 18px!important}
  .mobile-menu-toggle{display:inline-flex!important;align-items:center!important;gap:10px!important;min-height:44px!important;border:0!important;background:transparent!important;color:inherit!important;font:700 13px/1 Arial,Helvetica,sans-serif!important;cursor:pointer!important}
  .mobile-menu-icon{width:23px!important;height:17px!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important}
  .mobile-menu-icon i{height:2px!important;width:23px!important;background:currentColor!important;border-radius:2px!important}
  .mobile-nav-shortcuts{display:flex!important;align-items:center!important;gap:14px!important;font:600 11px/1 Arial,Helvetica,sans-serif!important}
  .nav-wrap .clean-nav,
  body.template-customised .nav-wrap .clean-nav{display:none!important;width:100%!important;max-width:100%!important;max-height:calc(100vh - 145px)!important;overflow-y:auto!important;overflow-x:hidden!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:6px 18px 16px!important;background:var(--tpl-nav-bg,#223e5a)!important}
  .nav-wrap.mobile-nav-open .clean-nav{display:flex!important}
  .nav-wrap .clean-nav>a,.nav-wrap .nav-dropdown>summary{display:flex!important;align-items:center!important;min-height:46px!important;width:100%!important;padding:11px 4px!important;border-bottom:1px solid rgba(255,255,255,.13)!important;white-space:normal!important;font-size:13px!important}
  .nav-wrap .nav-dropdown{position:static!important;width:100%!important}
  .nav-wrap .nav-dropdown-menu,.front-template-b2b_mega .nav-dropdown-menu{position:static!important;inset:auto!important;width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:9px 0 12px!important;border:0!important;box-shadow:none!important;background:#fff!important}
  .nav-wrap .nav-dropdown:not([open]) .nav-dropdown-menu{display:none!important}
  .nav-wrap .nav-dropdown-menu a{min-width:0!important;padding:8px!important;border:1px solid #e4e9ee!important;border-radius:8px!important;color:#24384b!important;background:#fff!important}
  .mobile-nav-account{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding-top:12px!important}
}

@media(max-width:700px){
  .top-line-inner>span{display:none!important}
  .top-line-inner{justify-content:center!important;padding-left:12px!important;padding-right:12px!important}
  .top-line-inner>div{width:100%;justify-content:center!important;gap:10px!important}
  .reference-header .reference-header-main,
  body.template-customised .reference-header .reference-header-main{padding:10px 12px!important;gap:8px 10px!important}
  .reference-header .reference-header-main>.logo img,
  body.template-customised .reference-header .logo img{width:min(var(--tpl-logo-width,155px),155px)!important;max-width:155px!important;max-height:42px!important}
  .reference-header .header-quick-order.quick-order-image-button{width:42px!important;min-width:42px!important;height:42px!important}
  .reference-header .quick-order-image-mobile{width:40px!important;height:40px!important}
  .reference-header .basket-link{width:42px!important;min-width:42px!important;height:42px!important}
  .mobile-nav-bar{padding-left:12px!important;padding-right:12px!important}
  .mobile-nav-shortcuts{gap:10px!important;font-size:10px!important}
  .nav-wrap .clean-nav{padding-left:12px!important;padding-right:12px!important}
}

@media(max-width:480px){
  .nav-wrap .nav-dropdown-menu{grid-template-columns:1fr!important}
  .mobile-nav-account{grid-template-columns:1fr!important}
}

/* ---- consolidated: v392-mobile-header-popup.css ---- */
/* v3.9.2 — mobile header and compact registration popup fixes. */

/* Fix the high-specificity desktop rules that were leaking into tablet/mobile. */
@media (max-width:1024px){
  body:not(.admin-body):not(.admin-login) .reference-header .header-account-links{
    display:none!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .basket-copy{
    display:none!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .reference-head-actions{
    min-width:0!important;
    width:auto!important;
    gap:8px!important;
    white-space:normal!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .basket-link{
    min-width:46px!important;
    width:46px!important;
    height:46px!important;
    padding:0!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .header-quick-order.quick-order-image-button{
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    padding:0!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .reference-header-main{
    overflow:visible!important;
  }
}

@media (max-width:700px){
  /* A deliberate three-part mobile header: logo/actions, search, menu. */
  body:not(.admin-body):not(.admin-login) .reference-header .reference-header-main,
  body.template-customised:not(.admin-body):not(.admin-login) .reference-header .reference-header-main{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"logo actions" "search search"!important;
    gap:10px 8px!important;
    padding:11px 14px 12px!important;
    align-items:center!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .reference-header-main>.logo{
    grid-area:logo!important;
    width:auto!important;
    min-width:0!important;
    height:48px!important;
    margin:0!important;
    overflow:hidden!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .reference-header-main>.logo img,
  body.template-customised:not(.admin-body):not(.admin-login) .reference-header .logo img{
    display:block!important;
    width:168px!important;
    max-width:100%!important;
    height:46px!important;
    max-height:46px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .reference-head-actions{
    grid-area:actions!important;
    justify-self:end!important;
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    width:auto!important;
    min-width:0!important;
    max-width:96px!important;
    overflow:visible!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .header-account-links,
  body.template-customised:not(.admin-body):not(.admin-login) .reference-header .header-account-links{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    height:0!important;
    overflow:hidden!important;
    position:absolute!important;
    pointer-events:none!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .header-quick-order.quick-order-image-button{
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    flex:0 0 42px!important;
    margin:0!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .quick-order-image-mobile{
    display:block!important;
    width:40px!important;
    height:40px!important;
    object-fit:contain!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .basket-link{
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    flex:0 0 42px!important;
    padding:0!important;
    overflow:visible!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .basket-icon{
    width:27px!important;
    height:31px!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .basket-copy{
    display:none!important;
    visibility:hidden!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .reference-search{
    grid-area:search!important;
    width:100%!important;
    max-width:none!important;
    height:46px!important;
    margin:0!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .reference-search input{
    height:44px!important;
    font-size:15px!important;
  }
  /* Quick Order + Basket already exist as icons above, so do not duplicate them in the menu bar. */
  .mobile-nav-shortcuts{display:none!important}
  .mobile-nav-bar{min-height:52px!important;padding:0 14px!important}
  .mobile-menu-toggle{font-size:14px!important}

  /* Mobile trade-registration popup: one compact card, only essential copy. */
  .trade-register-modal{
    padding:12px!important;
    align-items:center!important;
  }
  .trade-register-dialog{
    display:block!important;
    grid-template-columns:none!important;
    width:min(350px,calc(100vw - 24px))!important;
    max-width:350px!important;
    max-height:calc(100vh - 32px)!important;
    overflow:auto!important;
    border-radius:18px!important;
    box-shadow:0 24px 70px rgba(4,22,43,.28)!important;
  }
  .trade-register-graphic{display:none!important}
  .trade-register-close{
    right:10px!important;
    top:10px!important;
    width:32px!important;
    height:32px!important;
    font-size:20px!important;
    background:#f2f5f8!important;
  }
  .trade-register-content{
    padding:20px 18px 17px!important;
  }
  .trade-popup-kicker{
    display:inline-block!important;
    margin:0 34px 5px 0!important;
    font-size:9px!important;
    letter-spacing:.13em!important;
  }
  .trade-register-content h2{
    margin:4px 34px 6px 0!important;
    font-size:23px!important;
    line-height:1.08!important;
  }
  .trade-register-content>p{
    margin:0 0 12px!important;
    font-size:13px!important;
    line-height:1.4!important;
  }
  .trade-register-content ul{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
    margin:0 0 12px!important;
  }
  .trade-register-content li{
    min-height:0!important;
    padding:8px 8px 8px 31px!important;
    border-radius:9px!important;
    background:#f7f9fb!important;
  }
  .trade-register-content li:before{
    left:9px!important;
    top:8px!important;
    width:16px!important;
    height:16px!important;
  }
  .trade-register-content li b{
    margin:0!important;
    font-size:11.5px!important;
    line-height:1.3!important;
  }
  .trade-register-content li span{display:none!important}
  .trade-register-content li.trade-popup-extra{display:none!important}
  .trade-register-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    margin:0!important;
  }
  .trade-register-actions .btn{
    min-height:42px!important;
    padding:10px 12px!important;
    font-size:11px!important;
    border-radius:9px!important;
    text-align:center!important;
  }
  .trade-register-content>small{display:none!important}
}

@media (max-width:380px){
  body:not(.admin-body):not(.admin-login) .reference-header .reference-header-main>.logo img,
  body.template-customised:not(.admin-body):not(.admin-login) .reference-header .logo img{
    width:145px!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .reference-head-actions{max-width:90px!important}
  .trade-register-dialog{width:calc(100vw - 20px)!important}
}

/* ---- consolidated: v393-refinement.css ---- */
/* S3 Max v3.9.3 — storefront/admin refinement */
:root{--v393-row-grey:#f6f7f9;--v393-row-hover:#eaf4ff;--v393-soft:#f6f8fb;--v393-soft-blue:#eef5fb;--v393-soft-green:#eff8f2}
/* table system: full-row zebra + clean hover */
main table, .admin-body table{border-collapse:separate;border-spacing:0;width:100%}
main table tbody tr:nth-child(odd)>*,.admin-body table tbody tr:nth-child(odd)>*{background:#fff}
main table tbody tr:nth-child(even)>*,.admin-body table tbody tr:nth-child(even)>*{background:var(--v393-row-grey)}
main table tbody tr,.admin-body table tbody tr{transition:background .16s ease,box-shadow .16s ease,transform .16s ease}
main table tbody tr:hover>*,.admin-body table tbody tr:hover>*{background:var(--v393-row-hover)!important}
main table tbody tr:hover,.admin-body table tbody tr:hover{box-shadow:inset 3px 0 0 #1674ca}
.admin-body table thead th,main table thead th{background:#e9edf2!important;color:#172b3c!important;font-weight:800!important;border-bottom:1px solid #cfd8e1!important}
.admin-body .is-new-order>*,.admin-body .order-row.status-new>*{background:#e9f8ed!important}
.admin-body .is-new-order:hover>*,.admin-body .order-row.status-new:hover>*{background:#dff4e5!important}
/* old-style flashing green new order dot */
.dashboard-new-orders-btn.has-new,.ops-kpi.urgent.has-new{position:relative}
.dashboard-new-orders-btn.has-new:before,.ops-kpi.urgent.has-new:before{content:"";width:11px;height:11px;border-radius:50%;background:#17a94b;box-shadow:0 0 0 0 rgba(23,169,75,.55);display:inline-block;margin-right:8px;vertical-align:-1px;animation:v393GreenPulse 1.25s infinite}
.ops-kpi.urgent.has-new:before{position:absolute;right:14px;top:14px;margin:0}
@keyframes v393GreenPulse{0%{box-shadow:0 0 0 0 rgba(23,169,75,.55)}70%{box-shadow:0 0 0 10px rgba(23,169,75,0)}100%{box-shadow:0 0 0 0 rgba(23,169,75,0)}}
/* admin information cards */
.admin-body{background:#eef2f6}
.admin-panel,.ops-hero,.admin-template-intro,.admin-access-hero,.admin-role-summary-grid article,.permission-group,.template-library-panel,.enquiry-reader,.enquiry-inbox-list{background:var(--v393-soft)!important;border-color:#dbe3eb!important;box-shadow:0 5px 20px rgba(31,58,82,.035)!important}
.admin-panel-head{background:linear-gradient(180deg,#fbfcfd,#f5f7fa);margin:-18px -18px 16px;padding:16px 18px;border-bottom:1px solid #e2e7ec;border-radius:10px 10px 0 0}
.ops-kpi{background:#f7f9fb!important;border-color:#dce4ec!important}.ops-kpi.ready{background:#edf6ff!important}.ops-kpi.value{background:#f7f4ff!important}.ops-kpi.urgent{background:#f0faf3!important}
/* category imagery: never escape its shape */
.category-photo,.category-menu-card img,.catalogue-category-card .catalogue-category-thumb,.market-category-grid img,.connect-category-grid img,.hub-category-grid img,.direct-category-grid img,.flow-cat-image{overflow:hidden!important;border-radius:50%!important;background:#f6f8fa!important}
.category-photo img,.category-menu-card img,.catalogue-category-card img,.market-category-grid img,.connect-category-grid img,.hub-category-grid img,.direct-category-grid img,.flow-cat-image img{width:100%!important;height:100%!important;object-fit:contain!important;border-radius:50%!important;display:block!important}
.category-photo{width:148px;height:148px;margin:12px auto 10px;border:1px solid #e2e7ec;padding:6px}.category-photo img{padding:0!important}
.category-menu-card img{width:58px!important;height:58px!important;padding:3px;border:1px solid #e1e7ed}
/* larger main navigation + desktop hover categories */
@media(min-width:1025px){.clean-nav{height:62px!important;gap:34px!important}.clean-nav>a,.clean-nav>details>summary{font-size:14px!important;font-weight:700!important;letter-spacing:.01em;padding:21px 3px!important}.category-mega-menu{top:61px!important}}
/* compact image-based benefit strip */
.header-benefit-banners{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:10px 0}.header-benefit-banners a{display:block;min-width:0}.header-benefit-banners img{width:100%;height:62px;object-fit:fill;border-radius:10px}
@media(max-width:1024px){.header-benefit-banners{display:none}}
/* all products category showcase */
.catalogue-category-showcase{padding-top:22px;padding-bottom:6px}.catalogue-category-showcase-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.catalogue-category-showcase-head h2{font-size:20px;margin:0;color:#111}.catalogue-category-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}.catalogue-category-card{border:1px solid #e1e6eb;background:#fff;border-radius:14px;padding:13px 10px;text-align:center;transition:.18s ease}.catalogue-category-card:hover{border-color:#83b5dd;box-shadow:0 10px 24px rgba(25,77,118,.09);transform:translateY(-2px)}.catalogue-category-thumb{width:82px;height:82px;margin:0 auto 9px;border:1px solid #e5e9ed;padding:4px}.catalogue-category-card b{display:block;font-size:12px;color:#142b40;line-height:1.2}.catalogue-category-card small{display:block;margin-top:4px;color:#66788a;font-size:10px}
@media(max-width:1100px){.catalogue-category-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:600px){.catalogue-category-grid{grid-template-columns:repeat(3,1fr);gap:8px}.catalogue-category-thumb{width:66px;height:66px}.catalogue-category-card{padding:10px 6px}}
.active-category-title{display:flex;align-items:center;gap:10px;min-width:0}.active-category-title img{width:42px;height:42px;object-fit:cover;border-radius:50%;border:1px solid #dce4eb;padding:2px;background:#fff}.active-category-title span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#65798b;font-weight:800}.active-category-title strong{font-size:17px;color:#111}.catalogue-toolbar-left{display:flex;align-items:center;min-width:0}
/* modern badges */
.product-tag{min-height:27px!important;padding:5px 9px!important;border-radius:999px!important;font-size:10px!important;font-weight:800!important;letter-spacing:.02em!important;border:1px solid transparent!important;box-shadow:0 4px 12px rgba(20,50,78,.08)!important;backdrop-filter:blur(5px)}
.product-tag i{width:7px!important;height:7px!important;box-shadow:0 0 0 3px rgba(255,255,255,.65)}.tag-new{background:#eaf6ff!important;color:#075f9f!important;border-color:#bee1f8!important}.tag-new i{background:#0a8fe5!important}.tag-offer{background:#fff1e6!important;color:#a74a08!important;border-color:#ffd4b5!important}.tag-offer i{background:#ef7d22!important}.tag-coming{background:#f2edff!important;color:#6848a6!important;border-color:#d8ccfa!important}.tag-coming i{background:#8062c9!important}
/* product page */
.product-page-v2{grid-template-columns:1.08fr .82fr!important;gap:46px!important}.product-page-v2 .main-image{height:660px!important;border:0!important;background:#fff!important;border-radius:16px!important;box-shadow:none!important}.product-page-v2 .main-image img{width:100%!important;height:100%!important;object-fit:contain!important;padding:4px!important}.gallery-note{display:none!important}.product-thumbnails{margin-top:12px}.product-info{padding-top:4px}.product-details-v2{border-top:0!important;background:#f7f9fb;border:1px solid #e1e7ec;border-radius:14px!important;padding:22px 24px!important;gap:24px!important;margin-top:4px!important}.product-details-v2>div{background:#fff;border:1px solid #e4e9ee;border-radius:12px;padding:18px}.product-details-v2 h2{font-size:17px!important;margin:0 0 11px!important}.product-details-v2 p{margin:0;line-height:1.6;color:#263746}.spec-table-wrap{border:0!important;border-radius:10px!important;overflow:hidden}.spec-table th,.spec-table td{padding:9px 11px!important;font-size:12px!important}.spec-table th{background:#f4f6f8!important;color:#30475a!important}.spec-table td{background:#fff!important}
@media(max-width:1024px){.product-page-v2 .main-image{height:500px!important}}@media(max-width:600px){.product-page-v2 .main-image{height:370px!important}.product-details-v2{padding:12px!important}.product-details-v2>div{padding:14px}}
/* footer */
.footer-logo{width:230px!important;max-width:100%!important;margin-bottom:13px}.clean-footer .footer-grid>div:last-child>p{display:none!important}
/* richer static pages */
.prose-human{max-width:1080px}.prose-human .human-intro{font-size:18px;line-height:1.72;color:#1f3447;max-width:900px}.human-highlight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.human-highlight-grid article{background:#f6f8fa;border:1px solid #e1e7ec;border-radius:12px;padding:18px}.human-highlight-grid h3{margin:0 0 6px;font-size:16px}.human-highlight-grid p{margin:0;color:#43586b;line-height:1.55}.contact-welcome{background:#f6f8fa;border:1px solid #e0e6ec;border-radius:12px;padding:17px;margin-bottom:14px;line-height:1.6}.contact-welcome strong{display:block;font-size:18px;margin-bottom:4px}
@media(max-width:700px){.human-highlight-grid{grid-template-columns:1fr}}

/* ---- consolidated: v394-catalogue-header.css ---- */
/* v3.9.4 catalogue/category/header refinements */

/* Active category must sit on the left; sort stays right. */
body:not(.admin-body):not(.admin-login) .catalogue-toolbar{
  justify-content:flex-start!important;
  gap:16px!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-toolbar-left{
  margin-right:auto!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.active-category-title{
  display:inline-flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:230px;
  padding:7px 14px 7px 8px;
  border:1px solid #e0e7ee;
  border-radius:12px;
  background:linear-gradient(180deg,#fff,#f8fafc);
  box-shadow:0 5px 14px rgba(25,58,89,.05);
}
.active-category-title img{
  width:48px!important;height:48px!important;
  flex:0 0 48px;
  border-radius:50%!important;
  border:2px solid #dce5ee!important;
  padding:3px!important;
  object-fit:cover!important;
  background:#fff!important;
}
.active-category-title span{font-size:9px!important;color:#63778b!important;letter-spacing:.12em!important}
.active-category-title strong{font-size:17px!important;line-height:1.1;color:#101820!important}

/* All Products category selector: compact, circular and one horizontal row. */
.catalogue-category-showcase{padding-top:18px!important;padding-bottom:12px!important}
.catalogue-category-showcase-head{margin-bottom:12px!important}
.catalogue-category-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:16px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 2px 10px!important;
  scrollbar-width:thin;
  scroll-snap-type:x proximity;
}
.catalogue-category-card{
  flex:0 0 92px!important;
  width:92px!important;
  min-width:92px!important;
  border:0!important;
  background:transparent!important;
  border-radius:12px!important;
  padding:2px 2px 7px!important;
  box-shadow:none!important;
  transform:none!important;
  scroll-snap-align:start;
}
.catalogue-category-card:hover{background:#f6f9fc!important;box-shadow:none!important;transform:translateY(-2px)!important}
.catalogue-category-thumb{
  width:68px!important;height:68px!important;
  display:block!important;
  margin:0 auto 8px!important;
  padding:4px!important;
  border-radius:50%!important;
  border:2px solid #dfe6ed!important;
  background:#fff!important;
  overflow:hidden!important;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.catalogue-category-card:hover .catalogue-category-thumb{
  border-color:#0b67bd!important;
  box-shadow:0 0 0 4px rgba(11,103,189,.08);
  transform:scale(1.03);
}
.catalogue-category-thumb img{
  width:100%!important;height:100%!important;
  object-fit:cover!important;
  border-radius:50%!important;
}
.catalogue-category-card b{font-size:11px!important;color:#111!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.catalogue-category-card small{display:none!important}

/* Real photographic mini banners in header. */
.header-benefit-banners{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  padding:11px 0!important;
}
.header-benefit-banners a{
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 4px 12px rgba(21,54,84,.06);
  transition:transform .18s ease,box-shadow .18s ease;
}
.header-benefit-banners a:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(21,54,84,.12)}
.header-benefit-banners img{
  display:block!important;
  width:100%!important;
  height:76px!important;
  object-fit:cover!important;
  border-radius:12px!important;
}

@media(max-width:1100px){
  .catalogue-category-grid{gap:12px!important}
  .catalogue-category-card{flex-basis:86px!important;width:86px!important;min-width:86px!important}
  .catalogue-category-thumb{width:62px!important;height:62px!important}
}
@media(max-width:1024px){
  .active-category-title{min-width:0;padding:5px 10px 5px 6px}.active-category-title img{width:40px!important;height:40px!important;flex-basis:40px}.active-category-title strong{font-size:15px!important}
}
@media(max-width:700px){
  body:not(.admin-body):not(.admin-login) .catalogue-toolbar{align-items:center!important;flex-direction:row!important;flex-wrap:wrap!important}
  body:not(.admin-body):not(.admin-login) .catalogue-toolbar-left{order:1;flex:1 1 100%!important}
  .mobile-filter-toggle{order:2}.catalogue-sort-form{order:3;margin-left:auto}
  .active-category-title{width:100%}
  .catalogue-category-card{flex-basis:80px!important;width:80px!important;min-width:80px!important}
  .catalogue-category-thumb{width:58px!important;height:58px!important}
}

/* ---- consolidated: v396-requested-refinements.css ---- */
/* v3.9.6 targeted refinements requested after v3.9.4 */

/* Clean Quick Order button without changing the surrounding header layout. */
body:not(.admin-body):not(.admin-login) .reference-header .quick-order-clean{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  width:154px!important;
  min-width:154px!important;
  height:46px!important;
  padding:0 13px!important;
  border:1px solid #cfe0ef!important;
  border-radius:11px!important;
  background:linear-gradient(180deg,#f7fbff,#eaf4ff)!important;
  color:#0b5ab3!important;
  box-shadow:0 5px 14px rgba(13,75,159,.08)!important;
  filter:none!important;
  overflow:hidden!important;
}
body:not(.admin-body):not(.admin-login) .reference-header .quick-order-clean:hover{
  background:linear-gradient(180deg,#eef7ff,#deedff)!important;
  border-color:#9fc6e9!important;
  transform:translateY(-1px)!important;
  box-shadow:0 8px 18px rgba(13,75,159,.12)!important;
}
.quick-order-clean-icon{
  width:30px;height:30px;flex:0 0 30px;
  display:grid;place-items:center;
  border-radius:8px;
  background:#fff;
  color:#0b5ab3;
  box-shadow:0 3px 8px rgba(13,75,159,.10);
}
.quick-order-clean-icon svg{width:21px;height:21px;display:block}
.quick-order-clean-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05;white-space:nowrap}
.quick-order-clean-text strong{font-size:12.5px;font-weight:800;color:#0b4f9f}
.quick-order-clean-text small{font-size:8.5px;color:#61748a;margin-top:3px;font-weight:600}
.quick-order-clean .quick-order-image{display:none!important}

/* Four small header banners now use relevant delivery/pricing/offers/help artwork. */
body:not(.admin-body):not(.admin-login) .header-benefit-banners a{
  border-radius:12px!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid #e7edf3!important;
  box-shadow:0 3px 9px rgba(18,45,77,.04)!important;
}
body:not(.admin-body):not(.admin-login) .header-benefit-banners a:hover{
  transform:translateY(-1px)!important;
  border-color:#cddceb!important;
  box-shadow:0 7px 16px rgba(18,45,77,.08)!important;
}
body:not(.admin-body):not(.admin-login) .header-benefit-banners img{
  width:100%!important;
  height:76px!important;
  object-fit:cover!important;
  border-radius:11px!important;
}

/* Category dropdown: same modern circular image treatment as All Products. */
body:not(.admin-body):not(.admin-login) .category-mega-menu .category-menu-card{
  grid-template-columns:58px minmax(0,1fr)!important;
  min-height:70px!important;
  padding:7px 10px!important;
  gap:11px!important;
  border-radius:12px!important;
}
body:not(.admin-body):not(.admin-login) .category-mega-menu .category-menu-card img{
  width:54px!important;
  height:54px!important;
  padding:5px!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:50%!important;
  border:2px solid #dfe6ed!important;
  background:#fff!important;
}
body:not(.admin-body):not(.admin-login) .category-mega-menu .category-menu-card:hover img{
  border-color:#0b67bd!important;
  box-shadow:0 0 0 4px rgba(11,103,189,.07)!important;
}

/* Homepage and other category displays: circular bordered holders with image contained inside. */
body:not(.admin-body):not(.admin-login) .category-grid-v2{
  gap:14px!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:5px 4px 10px!important;
  border-radius:12px!important;
  overflow:visible!important;
  text-align:center!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card:hover{
  transform:translateY(-2px)!important;
  background:#f8fafc!important;
  box-shadow:none!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo,
body:not(.admin-body):not(.admin-login) .market-category-grid img,
body:not(.admin-body):not(.admin-login) .connect-category-grid img,
body:not(.admin-body):not(.admin-login) .hub-category-grid img,
body:not(.admin-body):not(.admin-login) .direct-category-grid img,
body:not(.admin-body):not(.admin-login) .flow-cat-image{
  width:94px!important;
  height:94px!important;
  margin:0 auto 9px!important;
  padding:7px!important;
  border:2px solid #dfe6ed!important;
  border-radius:50%!important;
  background:#fff!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  aspect-ratio:1/1!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo img,
body:not(.admin-body):not(.admin-login) .market-category-grid img,
body:not(.admin-body):not(.admin-login) .connect-category-grid img,
body:not(.admin-body):not(.admin-login) .hub-category-grid img,
body:not(.admin-body):not(.admin-login) .direct-category-grid img,
body:not(.admin-body):not(.admin-login) .flow-cat-image img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:50%!important;
  display:block!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card strong,
body:not(.admin-body):not(.admin-login) .market-category-grid span,
body:not(.admin-body):not(.admin-login) .connect-category-grid span,
body:not(.admin-body):not(.admin-login) .hub-category-grid span,
body:not(.admin-body):not(.admin-login) .direct-category-grid b,
body:not(.admin-body):not(.admin-login) .flow-category-grid b{
  color:#111!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.2!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card small{display:none!important}

/* Keep the All Products category circles consistent with the reference. */
body:not(.admin-body):not(.admin-login) .catalogue-category-thumb{
  object-fit:contain!important;
  padding:6px!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-category-thumb img{object-fit:contain!important;object-position:center!important}

/* Order documents now intentionally contain only the two operational PDFs. */
.order-document-grid-simple{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:720px}

@media(max-width:1024px){
  body:not(.admin-body):not(.admin-login) .reference-header .quick-order-clean{
    width:46px!important;min-width:46px!important;height:46px!important;padding:0!important;border-radius:10px!important
  }
  body:not(.admin-body):not(.admin-login) .quick-order-clean-text{display:none!important}
  body:not(.admin-body):not(.admin-login) .quick-order-clean-icon{width:32px!important;height:32px!important;box-shadow:none!important}
  body:not(.admin-body):not(.admin-login) .quick-order-clean-icon svg{width:22px!important;height:22px!important}
  body:not(.admin-body):not(.admin-login) .category-mega-menu .category-menu-card{grid-template-columns:48px minmax(0,1fr)!important;min-height:62px!important}
  body:not(.admin-body):not(.admin-login) .category-mega-menu .category-menu-card img{width:46px!important;height:46px!important}
}
@media(max-width:700px){
  body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo,
  body:not(.admin-body):not(.admin-login) .market-category-grid img,
  body:not(.admin-body):not(.admin-login) .connect-category-grid img,
  body:not(.admin-body):not(.admin-login) .hub-category-grid img,
  body:not(.admin-body):not(.admin-login) .direct-category-grid img,
  body:not(.admin-body):not(.admin-login) .flow-cat-image{width:74px!important;height:74px!important;padding:5px!important}
  .order-document-grid-simple{grid-template-columns:1fr!important}
}

/* ---- consolidated: v397-final-refinements.css ---- */
/* v3.9.7 targeted storefront/admin refinements */

/* 1. Top welcome/contact strip removed structurally; keep hidden as a safety fallback. */
body:not(.admin-body):not(.admin-login) .top-line{display:none!important}

/* 2. Header mini banners: smaller, less stretched, still responsive. */
body:not(.admin-body):not(.admin-login) .header-benefit-banners{
  grid-template-columns:repeat(4,minmax(0,310px))!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:8px 0!important;
}
body:not(.admin-body):not(.admin-login) .header-benefit-banners a{
  width:100%!important;
  max-width:310px!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
body:not(.admin-body):not(.admin-login) .header-benefit-banners img{
  width:100%!important;
  height:58px!important;
  object-fit:cover!important;
  border-radius:9px!important;
}

/* 3. Quick Order: yellow lightning mark with a calmer modern button. */
body:not(.admin-body):not(.admin-login) .reference-header .quick-order-clean{
  width:150px!important;
  min-width:150px!important;
  height:44px!important;
  padding:0 13px!important;
  gap:9px!important;
  border:1px solid #d8e3ef!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#0c4f9f!important;
  box-shadow:0 3px 10px rgba(20,61,103,.07)!important;
}
body:not(.admin-body):not(.admin-login) .reference-header .quick-order-clean:hover{
  background:#f7fbff!important;
  border-color:#a9c9e7!important;
  box-shadow:0 7px 16px rgba(20,61,103,.11)!important;
  transform:translateY(-1px)!important;
}
body:not(.admin-body):not(.admin-login) .quick-order-lightning{
  width:30px!important;
  height:30px!important;
  flex:0 0 30px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:8px!important;
  background:#fff8d9!important;
  color:#f2b400!important;
  box-shadow:none!important;
}
body:not(.admin-body):not(.admin-login) .quick-order-lightning svg{width:19px!important;height:19px!important}

/* 4. Category holders across the storefront: same true circle used on All Products. */
body:not(.admin-body):not(.admin-login) .category-grid-v2{
  align-items:start!important;
  gap:18px!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-width:0!important;
  padding:3px 4px 10px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo,
body:not(.admin-body):not(.admin-login) .market-category-grid img,
body:not(.admin-body):not(.admin-login) .connect-category-grid img,
body:not(.admin-body):not(.admin-login) .hub-category-grid img,
body:not(.admin-body):not(.admin-login) .direct-category-grid img,
body:not(.admin-body):not(.admin-login) .flow-cat-image{
  width:72px!important;
  min-width:72px!important;
  max-width:72px!important;
  height:72px!important;
  min-height:72px!important;
  max-height:72px!important;
  aspect-ratio:1/1!important;
  margin:0 auto 8px!important;
  padding:5px!important;
  border:2px solid #dfe6ed!important;
  border-radius:50%!important;
  background:#fff!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  box-sizing:border-box!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo img,
body:not(.admin-body):not(.admin-login) .market-category-grid img,
body:not(.admin-body):not(.admin-login) .connect-category-grid img,
body:not(.admin-body):not(.admin-login) .hub-category-grid img,
body:not(.admin-body):not(.admin-login) .direct-category-grid img,
body:not(.admin-body):not(.admin-login) .flow-cat-image img{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:50%!important;
  margin:0!important;
  padding:0!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card strong{
  margin-top:0!important;
  font-size:12px!important;
  line-height:1.2!important;
  text-align:center!important;
}

/* Header category dropdown uses the same exact circle proportions. */
body:not(.admin-body):not(.admin-login) .category-mega-menu .category-menu-card img{
  width:52px!important;height:52px!important;min-width:52px!important;max-width:52px!important;
  border-radius:50%!important;border:2px solid #dfe6ed!important;padding:4px!important;
  object-fit:contain!important;background:#fff!important;box-sizing:border-box!important
}

/* 5/6. True full-row zebra striping and clean hover across every table. */
.admin-body table,
body:not(.admin-body):not(.admin-login) main table{
  border-collapse:collapse!important;
  border-spacing:0!important;
}
.admin-body table thead tr>th,
body:not(.admin-body):not(.admin-login) main table thead tr>th{
  background:#e4e9ee!important;
  color:#111!important;
  font-weight:800!important;
  border-bottom:1px solid #c9d1d9!important;
}
.admin-body table tbody tr:nth-child(odd)>td,
body:not(.admin-body):not(.admin-login) main table tbody tr:nth-child(odd)>td{
  background:#fff!important;
}
.admin-body table tbody tr:nth-child(even)>td,
body:not(.admin-body):not(.admin-login) main table tbody tr:nth-child(even)>td{
  background:#f2f3f4!important;
}
.admin-body .ops-sheet-table tbody tr:nth-child(odd)>td,
.admin-body .modern-admin-table tbody tr:nth-child(odd)>td{background:#fff!important}
.admin-body .ops-sheet-table tbody tr:nth-child(even)>td,
.admin-body .modern-admin-table tbody tr:nth-child(even)>td{background:#f2f3f4!important}

/* New orders remain light green and override zebra striping. */
.admin-body table tbody tr.is-new-order>td,
.admin-body .ops-sheet-table tbody tr.is-new-order>td,
.admin-body .modern-admin-table tbody tr.is-new-order>td{
  background:#e4f7e9!important;
}

.admin-body table tbody tr:hover>td,
.admin-body .ops-sheet-table tbody tr:hover>td,
.admin-body .modern-admin-table tbody tr:hover>td,
body:not(.admin-body):not(.admin-login) main table tbody tr:hover>td{
  background:#e8f3fb!important;
}
.admin-body table tbody tr:hover,
.admin-body .ops-sheet-table tbody tr:hover,
.admin-body .modern-admin-table tbody tr:hover,
body:not(.admin-body):not(.admin-login) main table tbody tr:hover{
  box-shadow:inset 4px 0 0 #2473b8!important;
}
.admin-body table tbody tr.is-new-order:hover>td,
.admin-body .ops-sheet-table tbody tr.is-new-order:hover>td{
  background:#d8f1df!important;
}

/* Keep each row visually continuous: no cell-specific columns/blocks breaking the stripe. */
.admin-body table tbody td,
body:not(.admin-body):not(.admin-login) main table tbody td{
  background-clip:padding-box!important;
  border-left:0!important;
  border-right:0!important;
}

@media(max-width:1024px){
  body:not(.admin-body):not(.admin-login) .header-benefit-banners{display:none!important}
  body:not(.admin-body):not(.admin-login) .reference-header .quick-order-clean{width:44px!important;min-width:44px!important;height:44px!important;padding:0!important}
  body:not(.admin-body):not(.admin-login) .quick-order-lightning{width:31px!important;height:31px!important}
}
@media(max-width:700px){
  body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo,
  body:not(.admin-body):not(.admin-login) .market-category-grid img,
  body:not(.admin-body):not(.admin-login) .connect-category-grid img,
  body:not(.admin-body):not(.admin-login) .hub-category-grid img,
  body:not(.admin-body):not(.admin-login) .direct-category-grid img,
  body:not(.admin-body):not(.admin-login) .flow-cat-image{width:64px!important;min-width:64px!important;max-width:64px!important;height:64px!important;min-height:64px!important;max-height:64px!important}
}

/* ---- consolidated: v398-final-fixes.css ---- */
/* v3.9.8 final targeted fixes */

/* Homepage categories: force true circular holders, matching All Products. */
body:not(.admin-body):not(.admin-login) .category-grid-v2{
  align-items:start!important;
  grid-auto-rows:auto!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo{
  inline-size:82px!important;
  block-size:82px!important;
  width:82px!important;
  height:82px!important;
  min-width:82px!important;
  max-width:82px!important;
  min-height:82px!important;
  max-height:82px!important;
  flex:0 0 82px!important;
  aspect-ratio:1 / 1!important;
  border-radius:999px!important;
  clip-path:circle(50% at 50% 50%)!important;
  border:2px solid #d9e2eb!important;
  background:#fff!important;
  padding:6px!important;
  margin:0 auto 9px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  aspect-ratio:1 / 1!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:999px!important;
  clip-path:circle(50% at 50% 50%)!important;
  margin:0!important;
  padding:0!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card strong{
  margin:0!important;
  text-align:center!important;
  line-height:1.25!important;
}

/* Header mini strip: Quick Order replaces Help banner. */
body:not(.admin-body):not(.admin-login) .header-benefit-banners img{
  object-fit:cover!important;
}

/* Contact page: wider information / Need a hand column. */
body:not(.admin-body):not(.admin-login) .contact-simple{
  grid-template-columns:minmax(430px,500px) minmax(0,650px)!important;
  gap:34px!important;
  max-width:1220px!important;
}
body:not(.admin-body):not(.admin-login) .contact-simple .contact-card{
  width:100%!important;
  max-width:none!important;
}
body:not(.admin-body):not(.admin-login) .contact-welcome{
  width:100%!important;
  padding:20px 22px!important;
}

/* All Products intro line immediately before products. */
.catalogue-products-intro{
  margin:0 0 13px!important;
  padding:0 2px!important;
  font-size:17px!important;
  line-height:1.4!important;
  font-weight:650!important;
  color:#263d55!important;
}

/* Spreadsheet-style tables: colour the WHOLE row, not individual cells. */
.admin-body table,
body:not(.admin-body):not(.admin-login) main table{
  border-collapse:collapse!important;
  border-spacing:0!important;
  width:100%!important;
}
.admin-body table thead tr,
body:not(.admin-body):not(.admin-login) main table thead tr{
  background:#dfe4e9!important;
}
.admin-body table thead th,
body:not(.admin-body):not(.admin-login) main table thead th{
  background:transparent!important;
  color:#111!important;
  font-weight:800!important;
  border-bottom:1px solid #c9d1d8!important;
  border-right:1px solid #cfd6dc!important;
}
.admin-body table thead th:last-child,
body:not(.admin-body):not(.admin-login) main table thead th:last-child{border-right:0!important}

.admin-body table tbody tr:nth-child(odd),
body:not(.admin-body):not(.admin-login) main table tbody tr:nth-child(odd){
  background:#fff!important;
}
.admin-body table tbody tr:nth-child(even),
body:not(.admin-body):not(.admin-login) main table tbody tr:nth-child(even){
  background:#f0f1f2!important;
}
.admin-body table tbody tr>td,
body:not(.admin-body):not(.admin-login) main table tbody tr>td{
  background:transparent!important;
  border-bottom:1px solid #dde2e6!important;
  border-right:1px solid #e2e6ea!important;
  box-shadow:none!important;
}
.admin-body table tbody tr>td:last-child,
body:not(.admin-body):not(.admin-login) main table tbody tr>td:last-child{border-right:0!important}

.admin-body table tbody tr:hover,
body:not(.admin-body):not(.admin-login) main table tbody tr:hover{
  background:#e6f1fb!important;
  box-shadow:inset 4px 0 0 #1b72b8!important;
}
.admin-body table tbody tr:hover>td,
body:not(.admin-body):not(.admin-login) main table tbody tr:hover>td{
  background:transparent!important;
}

/* New orders stay clearly highlighted. */
.admin-body table tbody tr.is-new-order,
.admin-body table tbody tr.order-row.status-new{
  background:#dff5e5!important;
}
.admin-body table tbody tr.is-new-order>td,
.admin-body table tbody tr.order-row.status-new>td{
  background:transparent!important;
}
.admin-body table tbody tr.is-new-order:hover,
.admin-body table tbody tr.order-row.status-new:hover{
  background:#d2eedb!important;
}

/* Ensure admin sheet tables do not re-introduce per-cell fills. */
.admin-body .ops-sheet-table tbody tr>td,
.admin-body .modern-admin-table tbody tr>td,
.admin-body .analytics-table tbody tr>td{
  background:transparent!important;
}

@media(max-width:1000px){
  body:not(.admin-body):not(.admin-login) .contact-simple{
    grid-template-columns:1fr!important;
    max-width:760px!important;
  }
}
@media(max-width:700px){
  body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo{
    inline-size:70px!important;block-size:70px!important;width:70px!important;height:70px!important;
    min-width:70px!important;max-width:70px!important;min-height:70px!important;max-height:70px!important;flex-basis:70px!important
  }
  .catalogue-products-intro{font-size:15px!important}
}

/* ---- consolidated: v399-modern-tables-contact.css ---- */
/* v3.9.9 targeted refinements: contact width, sheet tables, stronger hover */

/* Contact page: wider "Need a hand?" information panel. */
body:not(.admin-body):not(.admin-login) .contact-simple{
  grid-template-columns:minmax(560px,640px) minmax(0,620px)!important;
  gap:36px!important;
  max-width:1320px!important;
}
body:not(.admin-body):not(.admin-login) .contact-simple .contact-card{
  width:100%!important;
  max-width:none!important;
}
body:not(.admin-body):not(.admin-login) .contact-welcome{
  width:100%!important;
  padding:24px 26px!important;
  border-radius:16px!important;
}
body:not(.admin-body):not(.admin-login) .whatsapp-contact-card{
  width:100%!important;
}

/* Modern spreadsheet table system: one continuous row shade across every cell. */
.admin-body table,
body:not(.admin-body):not(.admin-login) main table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  background:#fff!important;
  border:1px solid #cfd7df!important;
  border-radius:10px!important;
  overflow:hidden!important;
  box-shadow:0 3px 12px rgba(18,45,77,.035)!important;
}
.admin-body table thead tr,
body:not(.admin-body):not(.admin-login) main table thead tr{
  background:#dce2e8!important;
}
.admin-body table thead th,
body:not(.admin-body):not(.admin-login) main table thead th{
  background:transparent!important;
  color:#0f1f31!important;
  font-weight:800!important;
  font-size:12px!important;
  letter-spacing:.015em!important;
  padding:12px 14px!important;
  border-right:1px solid #c8d0d8!important;
  border-bottom:1px solid #bcc7d1!important;
  vertical-align:middle!important;
  white-space:nowrap!important;
}
.admin-body table thead th:last-child,
body:not(.admin-body):not(.admin-login) main table thead th:last-child{
  border-right:0!important;
}
.admin-body table tbody tr,
body:not(.admin-body):not(.admin-login) main table tbody tr{
  transition:background-color .14s ease,box-shadow .14s ease,color .14s ease!important;
}
.admin-body table tbody tr:nth-child(odd),
body:not(.admin-body):not(.admin-login) main table tbody tr:nth-child(odd){
  background:#fff!important;
}
.admin-body table tbody tr:nth-child(even),
body:not(.admin-body):not(.admin-login) main table tbody tr:nth-child(even){
  background:#eef0f2!important;
}
.admin-body table tbody tr>td,
body:not(.admin-body):not(.admin-login) main table tbody tr>td{
  background:transparent!important;
  color:#101820!important;
  padding:12px 14px!important;
  border-right:1px solid #d9dee3!important;
  border-bottom:1px solid #d7dce1!important;
  vertical-align:middle!important;
  box-shadow:none!important;
}
.admin-body table tbody tr>td:last-child,
body:not(.admin-body):not(.admin-login) main table tbody tr>td:last-child{
  border-right:0!important;
}
.admin-body table tbody tr:last-child>td,
body:not(.admin-body):not(.admin-login) main table tbody tr:last-child>td{
  border-bottom:0!important;
}
/* Darker full-row hover to make active line obvious. */
.admin-body table tbody tr:hover,
body:not(.admin-body):not(.admin-login) main table tbody tr:hover{
  background:#cfddea!important;
  box-shadow:inset 4px 0 0 #125f9f!important;
}
.admin-body table tbody tr:hover>td,
body:not(.admin-body):not(.admin-login) main table tbody tr:hover>td{
  background:transparent!important;
  color:#0b1a29!important;
}
/* New orders keep their green identity, with a darker hover. */
.admin-body table tbody tr.is-new-order,
.admin-body table tbody tr.order-row.status-new{
  background:#dff3e5!important;
}
.admin-body table tbody tr.is-new-order>td,
.admin-body table tbody tr.order-row.status-new>td{
  background:transparent!important;
}
.admin-body table tbody tr.is-new-order:hover,
.admin-body table tbody tr.order-row.status-new:hover{
  background:#c8e8d2!important;
  box-shadow:inset 4px 0 0 #159447!important;
}
/* Neutralise old cell-level fills from legacy table styles. */
.admin-body .ops-sheet-table tbody td,
.admin-body .modern-admin-table tbody td,
.admin-body .analytics-table tbody td,
.admin-body .trade-orders-sheet tbody td,
body:not(.admin-body):not(.admin-login) .table-card tbody td,
body:not(.admin-body):not(.admin-login) .cart-table tbody td{
  background:transparent!important;
}
.admin-body .table-scroll{border-radius:10px!important;overflow:auto!important}

@media(max-width:1050px){
  body:not(.admin-body):not(.admin-login) .contact-simple{
    grid-template-columns:1fr!important;
    max-width:820px!important;
  }
}

/* ---- consolidated: v310-compact-refinement.css ---- */
/* v3.10 compact admin + storefront refinement */

/* ---------- Storefront ---------- */
body:not(.admin-body):not(.admin-login) .contact-simple{
  grid-template-columns:minmax(650px,760px) minmax(420px,560px)!important;
  max-width:1400px!important;gap:30px!important
}
body:not(.admin-body):not(.admin-login) .contact-welcome{padding:28px 30px!important}

/* Header details */
.header-account-links{display:flex!important;align-items:center!important;gap:6px!important}
.header-account-icon{width:22px;height:22px;display:inline-grid;place-items:center;color:#0b5ca8;flex:0 0 22px}
.header-account-icon svg{width:21px;height:21px;display:block}
.reference-search{position:relative!important}
.reference-search input{padding-right:54px!important}
.reference-search button{position:absolute!important;right:4px!important;top:4px!important;width:38px!important;height:38px!important;border-radius:9px!important;display:grid!important;place-items:center!important}
.reference-search button svg{width:20px!important;height:20px!important}
.header-benefit-banners{gap:9px!important;padding:7px 0!important}
.header-benefit-banners img{height:54px!important;border-radius:9px!important;object-fit:cover!important}

/* Reference-style category circles across homepage + catalogue */
.category-grid.category-grid-v2,
.catalogue-category-grid{
  display:flex!important;flex-wrap:nowrap!important;gap:26px!important;overflow-x:auto!important;overflow-y:hidden!important;
  align-items:flex-start!important;padding:2px 2px 10px!important;scrollbar-width:thin!important
}
.category-grid.category-grid-v2 .category-card,
.catalogue-category-card{
  flex:0 0 112px!important;width:112px!important;min-width:112px!important;padding:0!important;border:0!important;background:transparent!important;
  box-shadow:none!important;border-radius:0!important;text-align:center!important;transform:none!important
}
.category-grid.category-grid-v2 .category-card:hover,
.catalogue-category-card:hover{background:transparent!important;box-shadow:none!important;transform:none!important}
.category-grid.category-grid-v2 .category-photo,
.catalogue-category-thumb{
  width:104px!important;height:104px!important;min-width:104px!important;margin:0 auto 10px!important;padding:7px!important;border-radius:50%!important;
  border:2px solid #dbe3eb!important;background:#fff!important;overflow:hidden!important;display:grid!important;place-items:center!important
}
.category-grid.category-grid-v2 .category-photo img,
.catalogue-category-thumb img{width:100%!important;height:100%!important;object-fit:contain!important;border-radius:50%!important;margin:0!important}
.category-grid.category-grid-v2 .category-card strong,
.catalogue-category-card b{font-size:13px!important;font-weight:650!important;color:#111!important;line-height:1.25!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.category-grid.category-grid-v2 .category-card small,
.catalogue-category-card small{display:none!important}
.catalogue-category-card.active .catalogue-category-thumb{border-color:#0864bd!important;box-shadow:0 0 0 3px rgba(8,100,189,.08)!important}
.catalogue-category-card.active b{display:inline-block!important;padding:6px 13px!important;border-radius:999px!important;background:#0864bd!important;color:#fff!important;white-space:nowrap!important;margin-top:2px!important}
.category-menu-card img{width:58px!important;height:58px!important;border-radius:50%!important;border:2px solid #dbe3eb!important;background:#fff!important;padding:4px!important;object-fit:contain!important}

.catalogue-products-intro-below{margin:-3px 0 16px!important;padding:0 2px!important;font-size:15px!important;font-weight:500!important;color:#254f7b!important}

/* Product cards: more image, name space, code below name */
.product-card{border-radius:10px!important;overflow:hidden!important}
.product-img{height:252px!important;padding:7px!important;border-bottom:1px solid #edf1f5!important}
.product-img img{width:100%!important;height:100%!important;object-fit:contain!important}
.product-body{padding:12px 12px 13px!important}
.product-body h3{font-size:15px!important;line-height:1.32!important;min-height:42px!important;margin:0 0 6px!important}
.product-body .sku-row{margin:0 0 6px!important}
.product-body .sku{font-size:11.5px!important;color:#52657a!important;margin:0!important}
.product-body .carton-note{display:block!important;white-space:nowrap!important;font-size:12px!important;margin:0 0 8px!important;color:#222!important}
.product-tag{padding:4px 8px!important;border-radius:7px!important;font-size:9px!important;font-weight:700!important;box-shadow:0 2px 8px rgba(12,50,85,.08)!important}
.product-tag i{width:5px!important;height:5px!important}
.tag-new{background:#edf7ff!important;color:#0762ad!important;border:1px solid #c5e3f8!important}
.tag-offer{background:#fff0f0!important;color:#b62525!important;border:1px solid #f2caca!important}
.tag-coming{background:#f5f0ff!important;color:#6b42b5!important;border:1px solid #dacdf3!important}

/* Standalone product: larger image, code under title */
.product-page-v2{grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr)!important;gap:46px!important}
.product-page-v2 .main-image{height:630px!important;padding:4px!important}
.product-page-v2 .main-image img{width:98%!important;height:98%!important;object-fit:contain!important}
.product-info h1{margin-bottom:7px!important}
.product-info .product-meta-top{margin:0 0 14px!important}

/* About page visuals */
.about-visual-page{max-width:1360px!important}
.about-visual-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;margin-bottom:24px}
.about-product-collage{display:grid;grid-template-columns:1.25fr .8fr;grid-template-rows:1fr 1fr;gap:10px;height:330px}
.about-product-collage img{width:100%;height:100%;object-fit:contain;background:#f7f9fb;border:1px solid #e3e8ee;border-radius:14px;padding:8px}
.about-product-collage img:first-child{grid-row:1/3}
.about-icon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 26px}
.about-icon-grid article{background:#f7f9fb;border:1px solid #e3e8ee;border-radius:13px;padding:16px}
.about-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#e9f3fb;color:#075da8;font-weight:900;margin-bottom:10px}
.about-icon-grid h3{font-size:15px;margin:0 0 5px}.about-icon-grid p{margin:0;font-size:12.5px;line-height:1.55;color:#3e5368}

/* ---------- Admin compact workspace ---------- */
.admin-body{background:#edf1f5!important}
.admin-body .admin-main{padding:14px 16px 24px!important}
.admin-body .admin-top{padding:12px 15px!important;margin-bottom:10px!important;border-radius:9px!important;min-height:0!important}
.admin-body .admin-top h1{font-size:22px!important;margin:2px 0!important}
.admin-body .admin-top p{display:none!important}
.admin-body .admin-page-kicker{font-size:8px!important;letter-spacing:.13em!important}
.admin-body .admin-panel{padding:12px!important;border-radius:8px!important;border:1px solid #dce2e8!important;box-shadow:none!important;margin-bottom:10px!important;background:#fff!important}
.admin-body .admin-panel-head{margin-bottom:8px!important;gap:10px!important;align-items:center!important}
.admin-body .admin-panel-head h2{font-size:16px!important;margin:0!important}
.admin-body .admin-panel-head p{font-size:10px!important;line-height:1.35!important;margin:2px 0 0!important;color:#617080!important}
.admin-body .admin-actions{margin:0 0 9px!important;gap:6px!important}
.admin-body .admin-two,.admin-body .admin-users-layout,.admin-body .admin-manager-layout{gap:10px!important}
.admin-body .form-grid,.admin-body .admin-user-fields{gap:7px 9px!important}
.admin-body .admin-panel label{margin:6px 0!important;font-size:11px!important}
.admin-body .admin-panel input,.admin-body .admin-panel select,.admin-body .admin-panel textarea{padding:7px 8px!important;margin-top:3px!important;border-radius:5px!important;font-size:12.5px!important}
.admin-body .checks{padding:7px!important;gap:7px!important;border-radius:6px!important}
.admin-body .admin-form-actions{gap:6px!important;margin-top:8px!important}

/* Crisp spreadsheet tables */
.admin-body .table-scroll{border:1px solid #cfd6dd!important;border-radius:5px!important;background:#fff!important;box-shadow:none!important}
.admin-body table,
body:not(.admin-body):not(.admin-login) main table{border-collapse:collapse!important;border-spacing:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important}
.admin-body table thead tr,
body:not(.admin-body):not(.admin-login) main table thead tr{background:#d9dee4!important}
.admin-body table th,
body:not(.admin-body):not(.admin-login) main table th{background:transparent!important;color:#111!important;font-weight:800!important;padding:8px 9px!important;border:1px solid #c4cbd2!important;font-size:10.5px!important;white-space:nowrap!important}
.admin-body table tbody tr:nth-child(odd),
body:not(.admin-body):not(.admin-login) main table tbody tr:nth-child(odd){background:#fff!important}
.admin-body table tbody tr:nth-child(even),
body:not(.admin-body):not(.admin-login) main table tbody tr:nth-child(even){background:#f1f2f3!important}
.admin-body table td,
body:not(.admin-body):not(.admin-login) main table td{background:transparent!important;padding:7px 9px!important;border:1px solid #d9dde1!important;font-size:11.5px!important;vertical-align:middle!important;box-shadow:none!important}
.admin-body table tbody tr:hover,
body:not(.admin-body):not(.admin-login) main table tbody tr:hover{background:#c9d8e6!important;box-shadow:inset 4px 0 0 #0e5f9f!important}
.admin-body table tbody tr:hover>td,
body:not(.admin-body):not(.admin-login) main table tbody tr:hover>td{background:transparent!important}
.admin-body table tbody tr.is-new-order{background:#dff3e5!important}
.admin-body table tbody tr.is-new-order:hover{background:#bddfc8!important;box-shadow:inset 4px 0 0 #168644!important}

/* Admin buttons: small, flat, purposeful */
.admin-body .table-edit-btn,.admin-body .table-open-btn,.admin-body .table-delete-btn,.admin-body .admin-mini-btn{
  min-height:27px!important;padding:5px 9px!important;border-radius:5px!important;font-size:10.5px!important;font-weight:700!important;box-shadow:none!important;line-height:1!important
}
.admin-body .table-edit-btn{background:#eef5fb!important;border:1px solid #c8d9e8!important;color:#155f97!important}
.admin-body .table-open-btn{background:#0b5fa8!important;border:1px solid #0b5fa8!important;color:#fff!important}
.admin-body .table-delete-btn{background:#fff!important;border:1px solid #e1bcbc!important;color:#a33d3d!important}
.admin-body .table-edit-btn:hover{background:#dcecf8!important}.admin-body .table-open-btn:hover{background:#084c87!important}.admin-body .table-delete-btn:hover{background:#faeaea!important}
.admin-body .btn{padding:8px 12px!important;border-radius:6px!important;font-size:10.5px!important;box-shadow:none!important}

/* Compact dashboard */
.admin-body .ops-hero{padding:12px 14px!important;margin-bottom:9px!important;border-radius:8px!important;gap:12px!important}
.admin-body .ops-hero h2{font-size:20px!important;margin:2px 0!important}.admin-body .ops-hero p{display:none!important}
.admin-body .ops-kpi-grid{gap:7px!important;margin-bottom:9px!important;grid-template-columns:repeat(7,minmax(0,1fr))!important}
.admin-body .ops-kpi{padding:10px!important;border-radius:7px!important}.admin-body .ops-kpi small{font-size:8px!important}.admin-body .ops-kpi b{font-size:20px!important;margin:2px 0!important}.admin-body .ops-kpi span{display:none!important}.admin-body .ops-kpi.value{grid-column:auto!important}
.admin-body .ops-pipeline-panel{margin-bottom:9px!important}.admin-body .ops-pipeline-panel .admin-panel-head p{display:none!important}
.admin-body .ops-pipeline{gap:5px!important;margin-top:5px!important}.admin-body .ops-stage{grid-template-columns:24px 1fr auto!important;padding:7px!important;gap:6px!important;border-radius:6px!important}.admin-body .ops-stage-no{width:23px!important;height:23px!important;font-size:9px!important}.admin-body .ops-stage b{font-size:10px!important}.admin-body .ops-stage small{display:none!important}.admin-body .ops-stage strong{font-size:15px!important}
.admin-body .ops-dashboard-grid{gap:8px!important}.admin-body .ops-recent .admin-panel-head p{display:none!important}.admin-body .ops-mini-list{gap:4px!important}.admin-body .ops-mini-list a{padding:7px!important;border-radius:5px!important}

/* Compact order screens */
.admin-body .compact-order-tabs{margin-bottom:7px!important;gap:5px!important}.admin-body .compact-order-tabs a{padding:5px 8px!important;font-size:10.5px!important}
.admin-body .order-list-panel>.admin-panel-head p{display:none!important}
.admin-body .order-detail-status{padding:8px 10px!important;margin-bottom:8px!important;border-radius:6px!important}
.admin-body .admin-order-progress-panel{padding:10px 12px!important;margin-bottom:8px!important;border-radius:7px!important;box-shadow:none!important}.admin-body .admin-order-progress-panel .admin-panel-head p{display:none!important}
.admin-body .order-document-centre{margin-bottom:8px!important}.admin-body .order-document-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.admin-body .order-document-grid>a{padding:9px!important;border-radius:6px!important}.admin-body .order-document-grid>a>span{width:26px!important;height:26px!important;margin-bottom:5px!important}

/* Compact product editor */
.admin-body .product-form{max-width:none!important}.admin-body .product-form .form-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.admin-body .product-form textarea{min-height:90px!important}.admin-body .admin-image-current{padding:8px!important;margin-bottom:8px!important;gap:10px!important}.admin-body .admin-image-current img{width:92px!important;height:92px!important}.admin-body .admin-image-current small{display:none!important}.admin-body .admin-gallery-grid{gap:7px!important;margin:8px 0!important}

/* Compact Users & Roles */
.admin-body .admin-access-hero{padding:12px 14px!important;margin-bottom:8px!important;border-radius:8px!important}.admin-body .admin-access-hero p,.admin-body .admin-role-summary-grid{display:none!important}.admin-body .admin-access-hero h2{font-size:19px!important;margin:2px 0!important}.admin-body .admin-users-layout{grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr)!important}.admin-body .master-access-box{padding:8px!important;margin:6px 0!important}.admin-body .permission-editor-head p{display:none!important}.admin-body .admin-permission-groups{gap:6px!important}.admin-body .permission-group{padding:7px!important}.admin-body .permission-check{padding:5px!important}.admin-body .permission-check small{display:none!important}

/* Combined Homepage Media */
.media-summary-bar{display:flex;align-items:center;gap:8px;margin-bottom:9px;padding:8px 10px;background:#fff;border:1px solid #dce2e8;border-radius:7px}.media-summary-bar>div:not(.media-summary-actions){display:flex;align-items:baseline;gap:5px;padding-right:10px;border-right:1px solid #e3e7eb}.media-summary-bar b{font-size:18px}.media-summary-bar span{font-size:9px;color:#657483}.media-summary-actions{margin-left:auto;display:flex;gap:5px;flex-wrap:wrap}.media-summary-actions a{padding:5px 8px;border-radius:5px;background:#edf4fa;color:#145b8f;font-size:10px;font-weight:700}.compact-media-section{scroll-margin-top:12px}.media-editor-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(330px,.6fr);gap:10px}.media-compact-editor{padding:10px;background:#f7f9fb;border:1px solid #e1e6eb;border-radius:7px}.media-compact-editor h3{margin:0 0 7px!important}.media-form-grid{grid-template-columns:1fr 1fr!important}.compact-preview{height:105px!important;object-fit:cover!important;margin-bottom:7px!important}.compact-core-banners{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important}.compact-banner-card{padding:8px!important;border:1px solid #dfe5ea!important;border-radius:7px!important;background:#f9fbfc!important}.compact-banner-title b{display:block;font-size:11px}.compact-banner-title small{display:block;font-size:8.5px;color:#708091;margin-bottom:5px}.compact-banner-card .admin-banner-preview{height:76px!important;object-fit:cover!important;margin:0 0 6px!important}.compact-banner-card input[type=file]{font-size:9px!important;padding:5px!important}

@media(max-width:1200px){
  .admin-body .ops-kpi-grid{grid-template-columns:repeat(4,1fr)!important}
  .admin-body .product-form .form-grid{grid-template-columns:repeat(3,1fr)!important}
  .compact-core-banners{grid-template-columns:repeat(2,1fr)!important}
  .about-icon-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  body:not(.admin-body):not(.admin-login) .contact-simple{grid-template-columns:1fr!important;max-width:820px!important}
  .about-visual-hero{grid-template-columns:1fr}.about-product-collage{height:280px}
  .admin-body .ops-kpi-grid{grid-template-columns:repeat(2,1fr)!important}.admin-body .admin-users-layout,.media-editor-grid{grid-template-columns:1fr!important}.admin-body .product-form .form-grid{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:700px){
  .category-grid.category-grid-v2,.catalogue-category-grid{gap:18px!important}
  .category-grid.category-grid-v2 .category-card,.catalogue-category-card{flex-basis:96px!important;width:96px!important;min-width:96px!important}
  .category-grid.category-grid-v2 .category-photo,.catalogue-category-thumb{width:88px!important;height:88px!important;min-width:88px!important}
  .product-img{height:220px!important}.product-page-v2 .main-image{height:430px!important}
  .about-icon-grid{grid-template-columns:1fr 1fr}.compact-core-banners{grid-template-columns:1fr!important}.admin-body .product-form .form-grid{grid-template-columns:1fr!important}
}
/* High-specificity category lock: prevents older template rules from stretching circles. */
body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2{
  display:flex!important;grid-template-columns:none!important;flex-wrap:nowrap!important;gap:26px!important;overflow-x:auto!important;align-items:flex-start!important
}
body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-card{
  flex:0 0 112px!important;width:112px!important;min-width:112px!important;max-width:112px!important;display:flex!important;flex-direction:column!important;align-items:center!important;padding:0 0 6px!important;border:0!important;background:transparent!important;box-shadow:none!important
}
body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-photo{
  inline-size:104px!important;block-size:104px!important;width:104px!important;height:104px!important;min-width:104px!important;max-width:104px!important;min-height:104px!important;max-height:104px!important;flex:0 0 104px!important;aspect-ratio:1/1!important;border-radius:50%!important;clip-path:circle(50% at 50% 50%)!important;border:2px solid #dbe3eb!important;padding:7px!important;margin:0 auto 10px!important;background:#fff!important;overflow:hidden!important
}
body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-photo img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;border-radius:50%!important;clip-path:circle(50% at 50% 50%)!important;margin:0!important}
body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-card strong{font-size:13px!important;line-height:1.25!important;text-align:center!important;margin:0!important}
@media(max-width:700px){body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2{gap:18px!important}body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-card{flex-basis:96px!important;width:96px!important;min-width:96px!important;max-width:96px!important}body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-photo{width:88px!important;height:88px!important;min-width:88px!important;max-width:88px!important;min-height:88px!important;max-height:88px!important;flex-basis:88px!important}}

/* ---- consolidated: v3101-mobile-product-about.css ---- */
/* v3.10.1 - mobile header/product page + realistic About page */

/* Quick Order no longer inherits the old image-button rules. */
body:not(.admin-body):not(.admin-login) .reference-header .header-quick-order.quick-order-clean{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
body:not(.admin-body):not(.admin-login) .reference-header .quick-order-lightning{
  display:grid!important;
  place-items:center!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:20px!important;
  font-weight:800!important;
  line-height:1!important;
  color:#f2b400!important;
  background:#fff8d9!important;
}

/* Standalone product page: keep the complete product image inside the phone viewport. */
.product-page-v2 .product-gallery{min-width:0!important;width:100%!important;max-width:100%!important}
.product-page-v2 .main-image{overflow:hidden!important;box-sizing:border-box!important}
.product-page-v2 .main-image img{
  display:block!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:auto!important;
}

/* About Us: clean trade-company presentation, no decorative product collage. */
.about-real-page{max-width:1280px!important}
.about-real-hero{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);
  gap:28px;
  align-items:stretch;
  margin:4px 0 20px;
}
.about-real-copy{
  padding:30px 32px;
  border:1px solid #e0e6ec;
  border-radius:14px;
  background:#fff;
}
.about-real-copy h2{margin:6px 0 14px!important;font-size:31px!important;line-height:1.15!important;color:#102d4d!important}
.about-real-copy p{margin:0 0 12px!important;line-height:1.7!important;color:#344b60!important}
.about-real-summary{
  display:grid;
  gap:9px;
  padding:12px;
  border:1px solid #e0e6ec;
  border-radius:14px;
  background:#f5f8fb;
}
.about-real-summary>div{
  padding:16px 17px;
  border:1px solid #e0e7ee;
  border-radius:11px;
  background:#fff;
}
.about-real-summary strong{display:block;margin-bottom:4px;font-size:14px;color:#102d4d}
.about-real-summary span{display:block;font-size:12px;line-height:1.5;color:#54687b}
.about-real-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 22px}
.about-real-grid article{padding:18px;border:1px solid #e0e6ec;border-radius:12px;background:#fff}
.about-real-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#eaf3fb;color:#0a60ac;font-size:18px;font-weight:800;margin-bottom:11px}
.about-real-grid h3{margin:0 0 6px!important;font-size:15px!important;color:#112f4e!important}
.about-real-grid p{margin:0!important;font-size:12.5px!important;line-height:1.55!important;color:#4b6073!important}
.about-real-process{padding:22px 24px;border:1px solid #e0e6ec;border-radius:14px;background:#f8fafc}
.about-real-process h2{margin:0 0 15px!important;font-size:21px!important;color:#102d4d!important}
.about-process-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.about-process-steps>div{display:flex;align-items:flex-start;gap:10px;padding:13px;background:#fff;border:1px solid #e3e8ed;border-radius:10px}
.about-process-steps>div>b{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border-radius:50%;background:#0b63ae;color:#fff;font-size:12px}
.about-process-steps span{display:flex;flex-direction:column;gap:2px}
.about-process-steps strong{font-size:13px;color:#132e49}
.about-process-steps small{font-size:11px;line-height:1.4;color:#627486}

@media(max-width:900px){
  .about-real-hero{grid-template-columns:1fr}
  .about-real-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-process-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:700px){
  body:not(.admin-body):not(.admin-login) .reference-header .header-quick-order.quick-order-clean{
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    padding:0!important;
    border-radius:11px!important;
    border:1px solid #d8e3ef!important;
    background:#fff!important;
    box-shadow:0 3px 10px rgba(20,61,103,.07)!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .quick-order-lightning{
    width:32px!important;
    min-width:32px!important;
    height:32px!important;
    border-radius:8px!important;
    font-size:20px!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .quick-order-clean-text{display:none!important}

  .product-page-v2{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:18px!important;
    padding-top:18px!important;
  }
  .product-page-v2 .product-gallery{width:100%!important;max-width:100%!important;padding:0!important;margin:0!important}
  .product-page-v2 .main-image{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:1/1!important;
    padding:10px!important;
    margin:0!important;
    border:0!important;
    border-radius:12px!important;
    background:#fff!important;
  }
  .product-page-v2 .main-image img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    padding:0!important;
    object-fit:contain!important;
  }
  .product-page-v2 .product-page-badge{top:10px!important;left:10px!important}
  .product-page-v2 .image-zoom-label{display:none!important}
  .product-thumbnails{display:flex!important;gap:7px!important;overflow-x:auto!important;margin:8px 0 0!important;padding-bottom:3px!important}
  .product-thumbnails .product-thumb{width:64px!important;min-width:64px!important;height:64px!important}
  .product-info{padding:0!important}

  .about-real-page{padding-top:16px!important}
  .about-real-copy{padding:20px 18px}
  .about-real-copy h2{font-size:25px!important}
  .about-real-summary{padding:9px}
  .about-real-grid{grid-template-columns:1fr;gap:9px}
  .about-real-grid article{padding:15px}
  .about-real-process{padding:18px 14px}
  .about-process-steps{grid-template-columns:1fr;gap:8px}
}

/* ---- consolidated: v3102-toolbar-cards-admin.css ---- */
/* v3.10.2 - catalogue toolbar, product cards, badge refresh, category hover, and compact admin clean-up */

/* =========================
   STOREFRONT CATALOGUE BAR
   ========================= */
body:not(.admin-body):not(.admin-login) .catalogue-toolbar{
  gap:16px!important;
  align-items:center!important;
  padding:12px 14px!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-toolbar-left{
  flex:1 1 auto!important;
  min-width:0!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-page-box{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-height:64px!important;
  min-width:280px!important;
  max-width:560px!important;
  padding:10px 14px!important;
  border:1px solid #d7e0e8!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f7fafc 100%)!important;
  box-shadow:none!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-page-box img{
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  border-radius:50%!important;
  object-fit:contain!important;
  background:#fff!important;
  border:1px solid #d8e1e8!important;
  padding:3px!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-page-box span{
  display:block!important;
  font-size:10px!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.18em!important;
  color:#5d7388!important;
  margin:0 0 2px!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-page-box strong{
  display:block!important;
  font-size:17px!important;
  line-height:1.15!important;
  color:#0f1f32!important;
  margin:0!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-page-box small{
  display:block!important;
  margin-top:3px!important;
  color:#5b6e80!important;
  font-size:13px!important;
  line-height:1.35!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-page-box:not(.has-image){
  padding-left:16px!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-sort-form label{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0!important;
  white-space:nowrap!important;
}

/* =========================
   CATEGORY HOVER FIXES
   ========================= */
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card,
body:not(.admin-body):not(.admin-login) .catalogue-category-card{
  transition:border-color .22s ease,transform .22s ease,box-shadow .22s ease!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo,
body:not(.admin-body):not(.admin-login) .catalogue-category-card .catalogue-category-thumb{
  overflow:hidden!important;
  border-radius:50%!important;
  transition:border-color .22s ease,transform .22s ease,box-shadow .22s ease!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo img,
body:not(.admin-body):not(.admin-login) .catalogue-category-card .catalogue-category-thumb img{
  transition:transform .24s ease!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card:hover,
body:not(.admin-body):not(.admin-login) .catalogue-category-card:hover,
body:not(.admin-body):not(.admin-login) .catalogue-category-card.active{
  transform:translateY(-3px)!important;
  border-color:#b6c9da!important;
  box-shadow:0 12px 28px rgba(20,48,77,.08)!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card:hover .category-photo,
body:not(.admin-body):not(.admin-login) .catalogue-category-card:hover .catalogue-category-thumb,
body:not(.admin-body):not(.admin-login) .catalogue-category-card.active .catalogue-category-thumb{
  border-color:#2f6ea1!important;
  box-shadow:0 0 0 3px rgba(12,91,152,.10)!important;
  transform:translateY(-1px)!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card:hover .category-photo img,
body:not(.admin-body):not(.admin-login) .catalogue-category-card:hover .catalogue-category-thumb img,
body:not(.admin-body):not(.admin-login) .catalogue-category-card.active .catalogue-category-thumb img{
  transform:scale(1.05)!important;
}

/* =========================
   PRODUCT CARD IMAGE AREA
   ========================= */
body:not(.admin-body):not(.admin-login) .product-card{
  border:1px solid #e1e6eb!important;
  border-radius:14px!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
body:not(.admin-body):not(.admin-login) .product-card:hover{
  border-color:#bcc7d1!important;
  box-shadow:0 12px 26px rgba(21,49,76,.06)!important;
}
body:not(.admin-body):not(.admin-login) .product-img{
  height:266px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-bottom:0!important;
  background:#fff!important;
}
body:not(.admin-body):not(.admin-login) .product-img img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:0!important;
}
body:not(.admin-body):not(.admin-login) .product-body{
  padding:12px 12px 14px!important;
}
body:not(.admin-body):not(.admin-login) .product-body h3{
  min-height:38px!important;
  margin:0 0 4px!important;
}
body:not(.admin-body):not(.admin-login) .product-card .sku-row{
  min-height:auto!important;
  margin-bottom:2px!important;
}
body:not(.admin-body):not(.admin-login) .product-card .carton-note{
  display:flex!important;
  align-items:center!important;
  min-height:24px!important;
  padding:6px 0 0!important;
  border-top:0!important;
}

/* =========================
   PREMIUM PRODUCT BADGES
   ========================= */
body:not(.admin-body):not(.admin-login) .badge-stack{
  top:10px!important;
  left:10px!important;
  gap:7px!important;
}
body:not(.admin-body):not(.admin-login) .product-tag{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  font-size:10px!important;
  font-weight:800!important;
  line-height:1!important;
  border:1px solid transparent!important;
  box-shadow:0 7px 16px rgba(12,34,57,.10)!important;
}
body:not(.admin-body):not(.admin-login) .product-tag i{
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  box-shadow:none!important;
}
body:not(.admin-body):not(.admin-login) .tag-new{
  background:linear-gradient(180deg,#edf7ff 0%,#dfefff 100%)!important;
  color:#0c5d9b!important;
  border-color:#bdd8ee!important;
}
body:not(.admin-body):not(.admin-login) .tag-new i{background:#1b84dd!important}
body:not(.admin-body):not(.admin-login) .tag-offer{
  background:linear-gradient(180deg,#fff5ea 0%,#ffedd7 100%)!important;
  color:#a65406!important;
  border-color:#f2cc9c!important;
}
body:not(.admin-body):not(.admin-login) .tag-offer i{background:#f28c2c!important}
body:not(.admin-body):not(.admin-login) .tag-coming{
  background:linear-gradient(180deg,#f2ecff 0%,#e9e0ff 100%)!important;
  color:#6847b2!important;
  border-color:#d1c2f5!important;
}
body:not(.admin-body):not(.admin-login) .tag-coming i{background:#7a5ad7!important}

/* =========================
   SINGLE PRODUCT PAGE
   ========================= */
body:not(.admin-body):not(.admin-login) .product-page-v2{
  gap:26px!important;
  padding-top:18px!important;
}
body:not(.admin-body):not(.admin-login) .product-page-v2 .product-gallery{
  margin:0!important;
}
body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image{
  height:640px!important;
  padding:0!important;
  border:0!important;
  background:#fff!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
body:not(.admin-body):not(.admin-login) .product-thumbnails{
  margin-top:8px!important;
}
body:not(.admin-body):not(.admin-login) .product-thumb{
  border-radius:10px!important;
}
body:not(.admin-body):not(.admin-login) .product-info{
  padding-top:2px!important;
}
body:not(.admin-body):not(.admin-login) .product-info h1{
  margin:0 0 10px!important;
  font-size:29px!important;
  line-height:1.12!important;
}
body:not(.admin-body):not(.admin-login) .product-meta-top,
body:not(.admin-body):not(.admin-login) .brand-pill,
body:not(.admin-body):not(.admin-login) .product-save-action{
  margin-bottom:8px!important;
}
body:not(.admin-body):not(.admin-login) .trade-facts-v2{
  margin:12px 0!important;
}
body:not(.admin-body):not(.admin-login) .trade-price-box{
  margin-top:12px!important;
  padding:15px 16px!important;
}
body:not(.admin-body):not(.admin-login) .product-order-v2{
  margin-top:10px!important;
  padding:12px!important;
  gap:10px!important;
}
body:not(.admin-body):not(.admin-login) .product-details-v2{
  margin-top:2px!important;
  padding-top:20px!important;
  gap:30px!important;
}

/* =========================
   ADMIN CLEAN COMPACT PASS
   ========================= */
.admin-body .admin-main,
.admin-body .admin-top,
.admin-body .admin-panel,
.admin-body .admin-two,
.admin-body .media-editor-grid,
.admin-body .admin-actions,
.admin-body .admin-panel-head,
.admin-body .table-scroll{
  min-width:0!important;
}
.admin-body .admin-main{
  padding:22px 24px!important;
}
.admin-body .admin-top{
  padding:14px 16px!important;
  margin-bottom:14px!important;
  overflow-x:hidden!important;
}
.admin-body .admin-panel{
  padding:14px 15px!important;
  margin-bottom:14px!important;
  overflow-x:hidden!important;
}
.admin-body .admin-panel-head{
  gap:10px!important;
  margin-bottom:11px!important;
  flex-wrap:wrap!important;
}
.admin-body .admin-panel-head p{
  line-height:1.4!important;
}
.admin-body .admin-form-actions,
.admin-body .table-actions-inline,
.admin-body .admin-top-actions,
.admin-body .admin-actions-wrap{
  flex-wrap:wrap!important;
}
.admin-body .admin-panel > :last-child{margin-bottom:0!important}
.admin-body .table-scroll{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  border:1px solid #dfe5eb!important;
  border-radius:12px!important;
}
.admin-body table{
  width:100%!important;
  border-collapse:collapse!important;
  border-spacing:0!important;
  table-layout:auto!important;
}
.admin-body table th,
.admin-body table td{
  padding:10px 10px!important;
  vertical-align:middle!important;
}
.admin-body table thead th{
  background:#f4f6f8!important;
  color:#566b7e!important;
  font-size:10px!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  border-bottom:1px solid #dfe5eb!important;
}
.admin-body table tbody td{
  border-bottom:1px solid #edf1f4!important;
  background:#fff!important;
}
.admin-body table tbody tr:nth-child(odd) td{background:#fbfcfd!important}
.admin-body table tbody tr:nth-child(even) td{background:#f7f9fb!important}
.admin-body table tbody tr:hover td{background:#e7edf3!important}
.admin-body .modern-admin-table th,
.admin-body .ops-sheet-table th,
.admin-body .trade-orders-sheet th,
.admin-body .analytics-table th{
  box-shadow:none!important;
}
.admin-body .modern-admin-table td,
.admin-body .ops-sheet-table td,
.admin-body .trade-orders-sheet td,
.admin-body .analytics-table td{
  box-shadow:none!important;
}
.admin-body .table-edit-btn,
.admin-body .table-open-btn,
.admin-body .table-delete-btn,
.admin-body .admin-mini-btn{
  border-radius:999px!important;
  padding:7px 11px!important;
  font-size:10px!important;
  line-height:1.1!important;
  box-shadow:none!important;
}
.admin-body .table-edit-btn,
.admin-body .table-open-btn{
  background:#edf4fa!important;
  color:#1a5e95!important;
  border:1px solid #cfe0ee!important;
}
.admin-body .table-delete-btn{
  background:#fff4f4!important;
  color:#b74848!important;
  border:1px solid #f0c7c7!important;
}
.admin-body .admin-mini-btn.ghost{
  background:#fff!important;
}
.admin-body .ops-pipeline,
.admin-body .admin-stats,
.admin-body .dashboard-cards,
.admin-body .banner-admin-grid,
.admin-body .media-editor-grid,
.admin-body .admin-two{
  gap:12px!important;
}
.admin-body .ops-mini-list a,
.admin-body .pipeline-card,
.admin-body .dashboard-cards div,
.admin-body .admin-stats div{
  padding:11px 12px!important;
}
.admin-body .form-grid,
.admin-body .media-form-grid,
.admin-body .permissions-grid,
.admin-body .design-control-grid{
  gap:10px 12px!important;
}
.admin-body label{margin:8px 0!important}
.admin-body input,
.admin-body select,
.admin-body textarea{
  margin-top:4px!important;
}

/* =========================
   MOBILE
   ========================= */
@media (max-width: 900px){
  body:not(.admin-body):not(.admin-login) .catalogue-toolbar{
    align-items:stretch!important;
  }
  body:not(.admin-body):not(.admin-login) .catalogue-page-box{
    max-width:none!important;
    width:100%!important;
  }
}
@media (max-width: 820px){
  body:not(.admin-body):not(.admin-login) .product-img{height:230px!important}
  body:not(.admin-body):not(.admin-login) .product-page-v2{gap:18px!important}
  body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image{height:460px!important}
  .admin-body .admin-main{padding:16px 12px!important;margin-left:0!important}
}
@media (max-width: 560px){
  body:not(.admin-body):not(.admin-login) .catalogue-page-box{padding:10px 12px!important;min-width:0!important}
  body:not(.admin-body):not(.admin-login) .catalogue-page-box img{width:42px!important;height:42px!important;min-width:42px!important}
  body:not(.admin-body):not(.admin-login) .catalogue-page-box strong{font-size:16px!important}
  body:not(.admin-body):not(.admin-login) .catalogue-page-box small{font-size:12px!important}
  body:not(.admin-body):not(.admin-login) .product-img{height:210px!important}
  body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image{height:360px!important}
  .admin-body .admin-panel,
  .admin-body .admin-top{padding:12px!important}
  .admin-body table th,
  .admin-body table td{padding:9px 8px!important}
}

/* ---- consolidated: v3103-product-admin-lightbox.css ---- */
/* v3.10.3 - admin overflow fix, premium product panel, uniform imagery and borderless zoom */

/* =========================
   ADMIN: REMOVE FALSE HORIZONTAL SCROLLBARS
   ========================= */
.admin-body,
.admin-body html{
  overflow-x:hidden!important;
}
.admin-body .admin-main{
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  overflow-x:hidden!important;
}
.admin-body .admin-panel,
.admin-body .ops-pipeline-panel,
.admin-body .ops-dashboard-grid,
.admin-body .ops-recent,
.admin-body .compact-media-section,
.admin-body .banner-admin-grid,
.admin-body .media-editor-grid,
.admin-body .ops-mini-list,
.admin-body .admin-two,
.admin-body .admin-manager-layout{
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
.admin-body .ops-pipeline{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  overflow:hidden!important;
}
.admin-body .ops-stage{
  min-width:0!important;
  grid-template-columns:24px minmax(0,1fr) auto!important;
}
.admin-body .ops-stage div,
.admin-body .ops-stage b{
  min-width:0!important;
}
.admin-body .ops-stage b{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.admin-body .ops-dashboard-grid{
  grid-template-columns:minmax(0,2fr) minmax(280px,1fr)!important;
}
.admin-body .ops-dashboard-grid > *,
.admin-body .media-editor-grid > *,
.admin-body .banner-admin-grid > *,
.admin-body .compact-core-banners > *{
  min-width:0!important;
}
.admin-body .table-scroll{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
  scrollbar-width:none!important;
}
.admin-body .table-scroll::-webkit-scrollbar{display:none!important}
.admin-body .table-scroll table,
.admin-body .ops-sheet-table,
.admin-body .modern-admin-table,
.admin-body .trade-orders-sheet,
.admin-body .analytics-table{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
}
.admin-body table th,
.admin-body table td{
  min-width:0!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.admin-body .ops-recent table th:nth-child(1){width:16%!important}
.admin-body .ops-recent table th:nth-child(2){width:18%!important}
.admin-body .ops-recent table th:nth-child(3){width:12%!important}
.admin-body .ops-recent table th:nth-child(4){width:22%!important}
.admin-body .ops-recent table th:nth-child(5){width:14%!important}
.admin-body .ops-recent table th:nth-child(6){width:18%!important}
.admin-body .compact-media-table th:first-child{width:28%!important}
.admin-body .compact-media-table th:nth-child(2){width:30%!important}
.admin-body .compact-media-table th:nth-child(3){width:10%!important}
.admin-body .compact-media-table th:nth-child(4){width:12%!important}
.admin-body .compact-media-table th:last-child{width:20%!important}
.admin-body .compact-banner-card,
.admin-body .media-compact-editor{
  min-width:0!important;
  overflow:hidden!important;
}
.admin-body .compact-banner-card input[type=file],
.admin-body .media-compact-editor input[type=file],
.admin-body .media-compact-editor input,
.admin-body .media-compact-editor textarea,
.admin-body .media-compact-editor select{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.admin-body .compact-core-banners{
  width:100%!important;
  max-width:100%!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.admin-body .admin-slide-thumb{
  max-width:100%!important;
}

/* =========================
   PREMIUM SINGLE PRODUCT INFO PANEL
   ========================= */
body:not(.admin-body):not(.admin-login) .premium-product-info{
  align-self:start!important;
  position:relative!important;
  padding:22px!important;
  border:1px solid #e0e6ec!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%)!important;
  box-shadow:0 12px 34px rgba(20,48,77,.055)!important;
}
body:not(.admin-body):not(.admin-login) .premium-product-info:before{
  content:"";
  position:absolute;
  left:22px;
  top:0;
  width:64px;
  height:3px;
  border-radius:0 0 3px 3px;
  background:#0d63ad;
}
body:not(.admin-body):not(.admin-login) .product-info-heading h1{
  margin:3px 0 11px!important;
  font-size:30px!important;
  line-height:1.12!important;
  color:#13293e!important;
}
body:not(.admin-body):not(.admin-login) .product-info-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  margin-bottom:12px!important;
}
body:not(.admin-body):not(.admin-login) .product-code-chip,
body:not(.admin-body):not(.admin-login) .premium-product-info .brand-pill{
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid #d8e2eb!important;
  background:#f5f8fb!important;
  color:#405b73!important;
  font-size:10px!important;
  font-weight:800!important;
}
body:not(.admin-body):not(.admin-login) .premium-product-info .product-save-action{
  margin:0 0 10px!important;
}
body:not(.admin-body):not(.admin-login) .premium-product-info .trade-price-box,
body:not(.admin-body):not(.admin-login) .premium-product-info .price-lock-v2{
  margin-top:10px!important;
  border-radius:12px!important;
}
body:not(.admin-body):not(.admin-login) .premium-product-info .product-order-v2{
  border-radius:12px!important;
  margin-top:10px!important;
}

/* =========================
   MORE UNIFORM PRODUCT CARD IMAGE PROPORTIONS
   ========================= */
body:not(.admin-body):not(.admin-login) .product-img{
  aspect-ratio:1/1!important;
  height:auto!important;
  min-height:230px!important;
  overflow:hidden!important;
  background:#fff!important;
}
body:not(.admin-body):not(.admin-login) .product-img img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:scale(1.045)!important;
  transition:transform .22s ease!important;
}
body:not(.admin-body):not(.admin-login) .product-card:hover .product-img img{
  transform:scale(1.075)!important;
}

/* =========================
   BORDERLESS / CROPPED IMAGE ZOOM
   ========================= */
body:not(.admin-body):not(.admin-login) .image-lightbox{
  padding:12px!important;
  overflow:hidden!important;
  background:rgba(0,0,0,.92)!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox img{
  max-width:min(1080px,88vw)!important;
  max-height:86vh!important;
  width:auto!important;
  height:auto!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  padding:0!important;
  transform:scale(1.14)!important;
  transform-origin:center center!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox button{
  z-index:3!important;
  right:18px!important;
  top:12px!important;
}

@media(max-width:1200px){
  .admin-body .compact-core-banners{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .admin-body .media-editor-grid{grid-template-columns:minmax(0,1fr)!important}
  .admin-body .ops-pipeline{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:1024px){
  .admin-body .ops-dashboard-grid{grid-template-columns:1fr!important}
  .admin-body .table-scroll{overflow-x:auto!important;scrollbar-width:thin!important}
  .admin-body .table-scroll::-webkit-scrollbar{display:block!important;height:7px!important}
  .admin-body .ops-sheet-table,
  .admin-body .modern-admin-table,
  .admin-body .trade-orders-sheet{table-layout:auto!important;min-width:760px!important}
}
@media(max-width:820px){
  body:not(.admin-body):not(.admin-login) .premium-product-info{padding:16px!important}
  body:not(.admin-body):not(.admin-login) .product-img{min-height:200px!important}
  body:not(.admin-body):not(.admin-login) .image-lightbox img{max-width:94vw!important;max-height:88vh!important;transform:scale(1.10)!important}
}
@media(max-width:560px){
  body:not(.admin-body):not(.admin-login) .product-info-heading h1{font-size:25px!important}
  body:not(.admin-body):not(.admin-login) .product-img{min-height:175px!important}
}
body:not(.admin-body):not(.admin-login) .image-lightbox img.catalogue-zoom-crop{
  clip-path:inset(8% 8% 8% 8%)!important;
  transform:scale(1.18)!important;
}
@media(max-width:820px){
  body:not(.admin-body):not(.admin-login) .image-lightbox img.catalogue-zoom-crop{
    clip-path:inset(7% 7% 7% 7%)!important;
    transform:scale(1.14)!important;
  }
}

/* ---- consolidated: v312-mobile-storefront-admin.css ---- */
/* v3.12 mobile storefront + admin refinements */

/* Section headings: cleaner, without the recurring blue rule */
body:not(.admin-body):not(.admin-login) .section-head{
  border-bottom:0!important;
  padding-bottom:0!important;
}
body:not(.admin-body):not(.admin-login) .section-head h2:after{display:none!important;content:none!important}

/* Homepage categories: more breathing room for the circular hover */
body:not(.admin-body):not(.admin-login) .managed-categories .section,
body:not(.admin-body):not(.admin-login) .category-grid-v2{overflow:visible!important}
body:not(.admin-body):not(.admin-login) .category-grid-v2{
  gap:24px!important;
  row-gap:28px!important;
  padding:10px 4px 16px!important;
}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-card{overflow:visible!important}
body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo{
  width:126px!important;height:126px!important;margin:4px auto 12px!important;
}

/* Brand logos on homepage */
body:not(.admin-body):not(.admin-login) .brand-strip-images{
  display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:14px!important;
}
body:not(.admin-body):not(.admin-login) .brand-strip-images a{
  height:96px!important;padding:10px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;flex-direction:column!important;
}
body:not(.admin-body):not(.admin-login) .brand-strip-images img{max-width:110px!important;max-height:52px!important;object-fit:contain!important}
body:not(.admin-body):not(.admin-login) .brand-strip-images span{font-size:10px!important;color:#52667a!important;font-weight:700!important}

/* Catalogue/page identity boxes: no redundant eyebrow labels, clamp to three lines */
body:not(.admin-body):not(.admin-login) .catalogue-page-box>div>span{display:none!important}
body:not(.admin-body):not(.admin-login) .catalogue-page-box strong,
body:not(.admin-body):not(.admin-login) .catalogue-page-box small{
  display:-webkit-box!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-page-box strong{-webkit-line-clamp:2!important}
body:not(.admin-body):not(.admin-login) .catalogue-page-box small{-webkit-line-clamp:1!important}

/* Header mini banners: smaller and centred */
body:not(.admin-body):not(.admin-login) .header-benefit-banners{
  max-width:1260px!important;margin:0 auto!important;gap:12px!important;padding-top:10px!important;padding-bottom:10px!important;
}
body:not(.admin-body):not(.admin-login) .header-benefit-banners a{display:flex!important;justify-content:center!important}
body:not(.admin-body):not(.admin-login) .header-benefit-banners img{
  width:100%!important;max-width:300px!important;height:64px!important;object-fit:contain!important;margin:auto!important;border-radius:12px!important;
}

/* Account navigation: desktop toolbar + mobile wrapped grid, never horizontal scrolling */
body:not(.admin-body):not(.admin-login) .account-grid{grid-template-columns:1fr!important;gap:16px!important}
body:not(.admin-body):not(.admin-login) .account-nav,
body:not(.admin-body):not(.admin-login) .customer-account-nav{
  width:min(1420px,calc(100% - 30px))!important;margin:16px auto 0!important;
  display:flex!important;flex-wrap:wrap!important;gap:7px!important;overflow:visible!important;
  border:1px solid #dfe6ec!important;border-radius:12px!important;background:#f7f9fb!important;padding:8px!important;
}
body:not(.admin-body):not(.admin-login) .account-grid>.account-nav{width:100%!important;margin:0!important;grid-column:1/-1!important}
body:not(.admin-body):not(.admin-login) .account-nav a,
body:not(.admin-body):not(.admin-login) .customer-account-nav a{
  border:0!important;border-radius:8px!important;padding:9px 13px!important;white-space:nowrap!important;
  font-size:12px!important;font-weight:700!important;color:#31495e!important;background:#fff!important;
}
body:not(.admin-body):not(.admin-login) .account-nav a:hover,
body:not(.admin-body):not(.admin-login) .customer-account-nav a:hover{background:#e8f2fa!important;color:#0b5fac!important}
body:not(.admin-body):not(.admin-login) .account-nav a.active,
body:not(.admin-body):not(.admin-login) .customer-account-nav a.active{background:#0b5fac!important;color:#fff!important}

/* Logged-in product ordering: Add button below quantity */
body:not(.admin-body):not(.admin-login) .product-card .card-order{
  grid-template-columns:1fr!important;gap:7px!important;
}
body:not(.admin-body):not(.admin-login) .product-card .card-order>div{width:100%!important}
body:not(.admin-body):not(.admin-login) .product-card .product-add-btn{width:100%!important;min-height:36px!important}

/* Badges and favourite control at bottom of product image */
body:not(.admin-body):not(.admin-login) .product-card .badge-stack{
  top:auto!important;bottom:10px!important;left:10px!important;right:auto!important;flex-direction:row!important;align-items:center!important;flex-wrap:wrap!important;
}
body:not(.admin-body):not(.admin-login) .product-card .save-product-form{
  top:auto!important;bottom:9px!important;right:10px!important;
}
body:not(.admin-body):not(.admin-login) .product-card .save-product-btn{width:31px!important;height:31px!important}

/* Standalone product: wider info column and reduced gap */
body:not(.admin-body):not(.admin-login) .product-page-v2{
  grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr)!important;gap:18px!important;
}
body:not(.admin-body):not(.admin-login) .premium-product-info{padding:18px!important}

/* Quick order: centred and helper text directly below heading */
body:not(.admin-body):not(.admin-login) .quick-order-page{display:flex!important;justify-content:center!important}
body:not(.admin-body):not(.admin-login) .quick-order-shell{width:min(980px,100%)!important;margin:0 auto!important}
body:not(.admin-body):not(.admin-login) .quick-order-intro{grid-template-columns:54px 1fr!important;align-items:start!important;max-width:860px!important;margin:0 auto 16px!important}
body:not(.admin-body):not(.admin-login) .quick-order-intro-copy p{margin:5px 0 10px!important}
body:not(.admin-body):not(.admin-login) .quick-order-mini-benefits{justify-content:flex-start!important;margin-top:7px!important}
body:not(.admin-body):not(.admin-login) .quick-order-dynamic{max-width:900px!important;margin:0 auto!important}

/* WhatsApp proper green icon */
.footer-wa-icon{background:#25D366!important;border-radius:50%!important}
.footer-wa-icon svg{width:23px;height:23px;display:block;fill:#fff}

/* Contact form/admin settings */
.contact-settings-panel{max-width:980px!important}
.contact-settings-form textarea{resize:vertical}
.gallery-primary-note{grid-column:1/-1!important;background:#f4f8fb!important;border:1px solid #dbe6ee!important;padding:10px!important;border-radius:8px!important}
.gallery-primary-note small{display:block!important;margin-top:3px!important;color:#677b8d!important}

/* Compact tables/columns based on their content */
.admin-body table,
body:not(.admin-body):not(.admin-login) main table{table-layout:auto!important}
.admin-body table th,.admin-body table td,
body:not(.admin-body):not(.admin-login) main table th,
body:not(.admin-body):not(.admin-login) main table td{padding-left:8px!important;padding-right:8px!important}
.admin-body table th:not(:nth-child(2)):not(:nth-child(3)),
.admin-body table td:not(:nth-child(2)):not(:nth-child(3)){white-space:nowrap!important}
.admin-body .table-scroll{overflow-x:visible!important}

/* Mobile header/menu/cart */
@media(max-width:1024px){
  body:not(.admin-body):not(.admin-login) .reference-header .reference-header-main{
    grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"logo actions" "search search"!important;
  }
  body:not(.admin-body):not(.admin-login) .reference-header .logo{grid-area:logo!important}
  body:not(.admin-body):not(.admin-login) .reference-header .reference-search{grid-area:search!important}
  body:not(.admin-body):not(.admin-login) .reference-header .reference-head-actions{grid-area:actions!important;gap:7px!important}
  body:not(.admin-body):not(.admin-login) .reference-header .header-account-links{display:none!important}

  /* smaller Quick Order with text underneath */
  body:not(.admin-body):not(.admin-login) .quick-order-clean{
    width:58px!important;min-width:58px!important;height:56px!important;padding:5px 3px!important;
    display:flex!important;flex-direction:column!important;gap:1px!important;border-radius:10px!important;
  }
  body:not(.admin-body):not(.admin-login) .quick-order-clean-icon{font-size:20px!important;line-height:20px!important;width:auto!important;height:auto!important;background:transparent!important;box-shadow:none!important}
  body:not(.admin-body):not(.admin-login) .quick-order-clean-text{display:block!important;text-align:center!important;line-height:1.05!important}
  body:not(.admin-body):not(.admin-login) .quick-order-clean-text strong{display:block!important;font-size:8px!important;white-space:nowrap!important}
  body:not(.admin-body):not(.admin-login) .quick-order-clean-text small{display:none!important}

  /* hamburger menu full width and complete */
  body:not(.admin-body):not(.admin-login) .nav-wrap{overflow:visible!important}
  body:not(.admin-body):not(.admin-login) .mobile-nav-bar{display:flex!important;width:100%!important;max-width:none!important}
  body:not(.admin-body):not(.admin-login) .nav-wrap .clean-nav{display:none!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;flex-direction:column!important;gap:0!important;padding:8px 14px 16px!important;background:#fff!important}
  body:not(.admin-body):not(.admin-login) .nav-wrap.mobile-nav-open .clean-nav{display:flex!important}
  body:not(.admin-body):not(.admin-login) .clean-nav>a,
  body:not(.admin-body):not(.admin-login) .clean-nav>details{width:100%!important;margin:0!important}
  body:not(.admin-body):not(.admin-login) .clean-nav>a,
  body:not(.admin-body):not(.admin-login) .clean-nav>details>summary{display:block!important;width:100%!important;padding:13px 8px!important;border-bottom:1px solid #edf1f4!important;line-height:1.2!important;white-space:normal!important}
  body:not(.admin-body):not(.admin-login) .category-mega-menu{position:static!important;width:100%!important;max-height:none!important;overflow:visible!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;box-shadow:none!important;border:0!important;padding:8px 0!important}
  body:not(.admin-body):not(.admin-login) .mobile-nav-account{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;width:100%!important;padding:10px 0 0!important}
  body:not(.admin-body):not(.admin-login) .mobile-nav-account a{background:#f4f7fa!important;border:1px solid #e2e8ed!important;border-radius:8px!important;padding:11px!important;text-align:center!important}

  /* customer account menu */
  body:not(.admin-body):not(.admin-login) .account-nav,
  body:not(.admin-body):not(.admin-login) .customer-account-nav{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:calc(100% - 24px)!important;margin:12px!important;gap:6px!important;padding:7px!important}
  body:not(.admin-body):not(.admin-login) .account-grid>.account-nav{width:100%!important;margin:0!important}
  body:not(.admin-body):not(.admin-login) .account-nav a,
  body:not(.admin-body):not(.admin-login) .customer-account-nav a{white-space:normal!important;text-align:center!important;padding:9px 6px!important;font-size:11px!important}

  /* product layout */
  body:not(.admin-body):not(.admin-login) .product-page-v2{grid-template-columns:1fr!important;gap:14px!important}

  /* mini banners disappear on compact tablet/mobile to avoid crowding */
  body:not(.admin-body):not(.admin-login) .trust-strip{display:none!important}
}

@media(max-width:700px){
  body:not(.admin-body):not(.admin-login) .reference-header .logo img{width:205px!important;max-width:58vw!important}
  body:not(.admin-body):not(.admin-login) .reference-header .basket-link{width:43px!important;min-width:43px!important;height:54px!important;padding:0!important}
  body:not(.admin-body):not(.admin-login) .reference-header .basket-icon{width:27px!important;height:30px!important}
  body:not(.admin-body):not(.admin-login) .reference-header .basket-copy{display:none!important}
  body:not(.admin-body):not(.admin-login) .reference-search{height:46px!important}

  body:not(.admin-body):not(.admin-login) .account-nav,
  body:not(.admin-body):not(.admin-login) .customer-account-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important}

  /* cart: clean mobile rows without boxed table overflow */
  body:not(.admin-body):not(.admin-login) .dynamic-cart{display:block!important;padding-left:10px!important;padding-right:10px!important}
  body:not(.admin-body):not(.admin-login) .cart-main-card{border:0!important;padding:0!important;overflow:visible!important;background:transparent!important}
  body:not(.admin-body):not(.admin-login) .cart-table{display:block!important;width:100%!important}
  body:not(.admin-body):not(.admin-login) .cart-table thead{display:none!important}
  body:not(.admin-body):not(.admin-login) .cart-table tbody{display:block!important}
  body:not(.admin-body):not(.admin-login) .cart-table tr{display:grid!important;grid-template-columns:1fr 96px!important;gap:7px 10px!important;padding:12px 0!important;border-bottom:1px solid #e3e8ed!important;background:transparent!important}
  body:not(.admin-body):not(.admin-login) .cart-table td{display:block!important;border:0!important;padding:0!important;background:transparent!important;min-width:0!important}
  body:not(.admin-body):not(.admin-login) .cart-table td:first-child{grid-column:1/-1!important}
  body:not(.admin-body):not(.admin-login) .cart-table td:nth-child(2){grid-column:1!important;font-size:12px!important;color:#526477!important}
  body:not(.admin-body):not(.admin-login) .cart-table td:nth-child(3){grid-column:2!important;grid-row:2/4!important;align-self:center!important}
  body:not(.admin-body):not(.admin-login) .cart-table td:nth-child(4){grid-column:1!important;font-size:11px!important;color:#6f7f8e!important}
  body:not(.admin-body):not(.admin-login) .cart-table td:nth-child(5){grid-column:1!important;font-size:14px!important}
  body:not(.admin-body):not(.admin-login) .cart-product{gap:9px!important;align-items:flex-start!important}
  body:not(.admin-body):not(.admin-login) .cart-product img{width:60px!important;height:60px!important;border:0!important}
  body:not(.admin-body):not(.admin-login) .cart-product-name{font-size:13px!important}
  body:not(.admin-body):not(.admin-login) .cart-qty-wrap{min-width:94px!important}
  body:not(.admin-body):not(.admin-login) .cart-auto-status{font-size:10px!important}
  body:not(.admin-body):not(.admin-login) .cart-quick-add{border:0!important;border-top:1px solid #e4e9ed!important;border-radius:0!important;padding:12px 0!important}
  body:not(.admin-body):not(.admin-login) .summary-card{margin-top:14px!important;border:0!important;background:#f7f9fb!important;padding:14px!important}

  /* categories breathing room */
  body:not(.admin-body):not(.admin-login) .category-grid-v2{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px 12px!important;padding-top:10px!important;padding-bottom:18px!important}
  body:not(.admin-body):not(.admin-login) .category-grid-v2 .category-photo{width:88px!important;height:88px!important}

  /* quick order centre */
  body:not(.admin-body):not(.admin-login) .quick-order-intro{grid-template-columns:42px 1fr!important;text-align:left!important}
  body:not(.admin-body):not(.admin-login) .quick-order-mini-benefits{display:flex!important;flex-wrap:wrap!important;gap:5px!important}
}

/* Admin: denser columns without false desktop scrollbars */
@media(min-width:1101px){
  .admin-body .table-scroll{overflow-x:visible!important}
  .admin-body .table-scroll table{width:100%!important;table-layout:auto!important}
  .admin-body table th,.admin-body table td{white-space:normal!important}
  .admin-body table th:first-child,.admin-body table td:first-child{white-space:nowrap!important}
}

/* Always remove template-editor line styling from live section headings */
body:not(.admin-body):not(.admin-login).tpl-title-line .section-head h2:after,
body:not(.admin-body):not(.admin-login) .tpl-title-line .section-head h2:after{display:none!important;content:none!important}
body:not(.admin-body):not(.admin-login) .product-card .carton-note{white-space:nowrap!important}
body:not(.admin-body):not(.admin-login) .product-body h3{min-height:42px!important}
\n\n/* ============================================================
   S3 MAX v3.13 — unified storefront refinement
   Keeps the existing S3 Max colour system and template variables.
   ============================================================ */
:where(body:not(.admin-body):not(.admin-login)){
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  font-kerning:normal;
}
body:not(.admin-body):not(.admin-login) main{min-height:42vh}
body:not(.admin-body):not(.admin-login) :where(button,input,select,textarea){font:inherit}
body:not(.admin-body):not(.admin-login) :where(a,button,input,select,textarea,summary):focus-visible{
  outline:3px solid rgba(5,104,201,.22)!important;outline-offset:2px;
}
body:not(.admin-body):not(.admin-login) :where(.btn,.product-add-btn,.mobile-filter-toggle,.mobile-menu-toggle){
  transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease;
}
@media(hover:hover){
  body:not(.admin-body):not(.admin-login) :where(.btn,.product-add-btn):hover{transform:translateY(-1px)}
}
body:not(.admin-body):not(.admin-login) :where(input,select,textarea){min-height:42px}
body:not(.admin-body):not(.admin-login) textarea{line-height:1.5}
body:not(.admin-body):not(.admin-login) .wrap{width:100%}
body:not(.admin-body):not(.admin-login) .section{scroll-margin-top:145px}
body:not(.admin-body):not(.admin-login) .section-head{gap:16px}
body:not(.admin-body):not(.admin-login) .section-head h2{line-height:1.15;letter-spacing:-.015em}
body:not(.admin-body):not(.admin-login) .section-head :where(p,small){line-height:1.5}

/* Header alignment and touch targets */
body:not(.admin-body):not(.admin-login) .reference-header-main{min-height:88px}
body:not(.admin-body):not(.admin-login) .reference-search input{min-width:0}
body:not(.admin-body):not(.admin-login) .reference-search button{cursor:pointer}
body:not(.admin-body):not(.admin-login) .basket-link,
body:not(.admin-body):not(.admin-login) .quick-order-clean{flex-shrink:0}
body:not(.admin-body):not(.admin-login) .clean-nav a,
body:not(.admin-body):not(.admin-login) .clean-nav summary{border-radius:7px}

/* Product/catalogue consistency */
body:not(.admin-body):not(.admin-login) .product-grid{align-items:stretch}
body:not(.admin-body):not(.admin-login) .product-card{height:100%;display:flex;flex-direction:column;isolation:isolate}
body:not(.admin-body):not(.admin-login) .product-card .product-body{display:flex;flex:1;flex-direction:column;min-width:0}
body:not(.admin-body):not(.admin-login) .product-card .product-body h3{line-height:1.32}
body:not(.admin-body):not(.admin-login) .product-card .card-order{margin-top:auto}
body:not(.admin-body):not(.admin-login) .product-card .product-add-btn{justify-content:center}
body:not(.admin-body):not(.admin-login) .product-card :where(.price,.login-price){font-variant-numeric:tabular-nums}
body:not(.admin-body):not(.admin-login) .qty input{appearance:textfield;-moz-appearance:textfield}
body:not(.admin-body):not(.admin-login) .qty input::-webkit-inner-spin-button,
body:not(.admin-body):not(.admin-login) .qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
body:not(.admin-body):not(.admin-login) .catalogue-main{min-width:0}
body:not(.admin-body):not(.admin-login) .filters{min-width:0}
body:not(.admin-body):not(.admin-login) .product-gallery,
body:not(.admin-body):not(.admin-login) .premium-product-info{min-width:0}

/* Forms/auth/account */
body:not(.admin-body):not(.admin-login) :where(.form-card,.auth-card,.premium-product-info,.price-lock,.account-card){box-shadow:0 8px 28px rgba(18,45,77,.055)}
body:not(.admin-body):not(.admin-login) :where(.form-card,.auth-card) label{line-height:1.35}
body:not(.admin-body):not(.admin-login) :where(.form-card,.auth-card,.filters) input:focus,
body:not(.admin-body):not(.admin-login) :where(.form-card,.auth-card,.filters) select:focus,
body:not(.admin-body):not(.admin-login) :where(.form-card,.auth-card,.filters) textarea:focus{
  border-color:#5c9bd4!important;box-shadow:0 0 0 3px rgba(5,104,201,.08)!important;
}

/* Tables stay usable instead of widening the page */
body:not(.admin-body):not(.admin-login) main .table-scroll,
body:not(.admin-body):not(.admin-login) main .spec-table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
body:not(.admin-body):not(.admin-login) main table{max-width:100%}
body:not(.admin-body):not(.admin-login) main table :where(th,td){vertical-align:middle}

/* Footer readability */
body:not(.admin-body):not(.admin-login) .clean-footer a{transition:color .15s ease}
body:not(.admin-body):not(.admin-login) .clean-footer a:hover{color:var(--tpl-accent,var(--blue))}

@media(max-width:1180px){
  body:not(.admin-body):not(.admin-login) .wrap{padding-left:20px;padding-right:20px}
  body:not(.admin-body):not(.admin-login) .header-benefit-banners{padding-left:20px!important;padding-right:20px!important}
}
@media(max-width:820px){
  body:not(.admin-body):not(.admin-login) .wrap{padding-left:15px;padding-right:15px}
  body:not(.admin-body):not(.admin-login) .section{padding-top:20px;padding-bottom:20px}
  body:not(.admin-body):not(.admin-login) .section-head{align-items:flex-start}
  body:not(.admin-body):not(.admin-login) .section-head h2{font-size:clamp(20px,5vw,24px)!important}
  body:not(.admin-body):not(.admin-login) .reference-header-main{min-height:auto}
  body:not(.admin-body):not(.admin-login) .reference-search{width:100%;max-width:none}
  body:not(.admin-body):not(.admin-login) .product-page-v2{grid-template-columns:1fr!important;gap:14px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info{padding:15px!important}
  body:not(.admin-body):not(.admin-login) .main-image{max-height:520px}
  body:not(.admin-body):not(.admin-login) .account-nav,
  body:not(.admin-body):not(.admin-login) .customer-account-nav{width:calc(100% - 30px)!important}
}
@media(max-width:560px){
  body:not(.admin-body):not(.admin-login) .wrap{padding-left:12px;padding-right:12px}
  body:not(.admin-body):not(.admin-login) .section{padding-top:16px;padding-bottom:16px}
  body:not(.admin-body):not(.admin-login) .reference-header .reference-head-actions{gap:5px!important}
  body:not(.admin-body):not(.admin-login) .basket-link{min-width:52px}
  body:not(.admin-body):not(.admin-login) .product-card .product-body{padding-left:10px!important;padding-right:10px!important}
  body:not(.admin-body):not(.admin-login) .product-card .product-img{padding-left:9px!important;padding-right:9px!important}
  body:not(.admin-body):not(.admin-login) :where(.form-card,.auth-card){border-radius:12px}
  body:not(.admin-body):not(.admin-login) .floating-trade-tools{max-width:calc(100vw - 16px)}
}
@media(prefers-reduced-motion:reduce){
  body:not(.admin-body):not(.admin-login) *,body:not(.admin-body):not(.admin-login) *:before,body:not(.admin-body):not(.admin-login) *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}


/* =========================================================
   S3 MAX v3.13.1 — premium conversion + faster ordering
   ========================================================= */
body:not(.template-customised):not(.admin-body):not(.admin-login){font-family:Inter,"Segoe UI",Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif!important}
body:not(.template-customised):not(.admin-body):not(.admin-login) h1,
body:not(.template-customised):not(.admin-body):not(.admin-login) h2,
body:not(.template-customised):not(.admin-body):not(.admin-login) h3,
body:not(.template-customised):not(.admin-body):not(.admin-login) h4{font-family:Inter,"Segoe UI",Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;letter-spacing:-.018em}

.home-conversion-bar{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.8fr);gap:28px;align-items:center;margin-top:18px;margin-bottom:8px;padding-top:22px!important;padding-bottom:22px!important;border:1px solid #dfe7ef;border-radius:14px;background:linear-gradient(135deg,#fbfdff 0%,#f5f9fd 55%,#fff 100%);box-shadow:0 9px 30px rgba(27,54,82,.05)}
.home-conversion-copy{padding-left:4px}.home-conversion-copy h2{margin:4px 0 6px;font-size:24px;line-height:1.12;color:#10243e}.home-conversion-copy p{margin:0;max-width:480px;color:#506174!important;font-size:13.5px!important}
.home-conversion-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.home-conversion-actions a{min-height:78px;padding:14px 15px;border:1px solid #dfe7ef;border-radius:11px;background:#fff;display:flex;flex-direction:column;justify-content:center;transition:.18s ease;box-shadow:0 3px 12px rgba(27,54,82,.035)}.home-conversion-actions a:hover{transform:translateY(-2px);border-color:#a9c9e8;box-shadow:0 10px 22px rgba(27,74,120,.08)}.home-conversion-actions b{font-size:13px;color:#10243e}.home-conversion-actions small{font-size:10.5px;color:#68798b!important;margin-top:4px}.home-conversion-actions .conversion-primary{background:linear-gradient(135deg,var(--blue,#0d4b9f),color-mix(in srgb,var(--blue,#0d4b9f) 82%,#fff));border-color:var(--blue,#0d4b9f)}.home-conversion-actions .conversion-primary b,.home-conversion-actions .conversion-primary small{color:#fff!important}

.product-card .trade-card-summary{display:grid;grid-template-columns:1fr;gap:5px;margin:5px 0 8px}.product-card .trade-card-summary span{min-width:0;padding:6px 7px;border-radius:7px;background:#f6f8fa;border:1px solid #e7edf2}.product-card .trade-card-summary b{display:block;font-size:11.5px;line-height:1.2;color:#10243e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-card .trade-card-summary small{display:block;margin-top:2px;font-size:8.5px!important;line-height:1.15;color:#6a7b8b!important}.product-card .price{margin-bottom:5px!important}

.trade-price-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}.trade-price-metrics>span{display:block;padding:11px 12px;border:1px solid #dfe7ee;border-radius:10px;background:#fff}.trade-price-metrics small{display:block;font-size:10px!important;color:#657788!important;text-transform:uppercase;letter-spacing:.05em}.trade-price-metrics b{display:block;margin-top:3px;font-size:14px;color:#10243e}.trade-price-metrics em{font-style:normal;font-size:9px;color:#718293;font-weight:600}
.product-order-v2{border:1px solid #dfe7ef!important;border-radius:13px!important;background:#f8fafc!important;padding:15px!important}.product-order-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;margin-bottom:10px}.product-order-heading-presets{display:flex!important;justify-content:flex-end!important;align-items:center!important}.product-order-heading-presets .carton-preset-row{width:auto!important}.carton-preset-row{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.carton-preset-row button{border:1px solid #ccd9e5;background:#fff;color:#26445f;border-radius:7px;padding:7px 9px;font:700 10px/1 inherit;cursor:pointer}.carton-preset-row button:hover,.carton-preset-row button.active{background:#eaf3fc;border-color:#83b4e4;color:#0d4b9f}.order-selection-preview{margin:10px 0}.order-selection-preview span{display:block;padding:9px 10px;border-radius:8px;background:#fff;border:1px solid #e2e8ee}.order-selection-preview small,.order-selection-preview b{display:block}.order-selection-preview small{font-size:9px!important;color:#718192!important;text-transform:uppercase;letter-spacing:.05em}.order-selection-preview b{margin-top:2px;font-size:11.5px;color:#172f47}
.mobile-product-order-dock{display:none}

@media(max-width:1000px){.home-conversion-bar{grid-template-columns:1fr;gap:14px}.home-conversion-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){
  .home-conversion-bar{margin:10px 12px 2px;padding:16px!important;border-radius:11px}.home-conversion-copy h2{font-size:20px}.home-conversion-actions{grid-template-columns:1fr 1fr;gap:7px}.home-conversion-actions a{min-height:67px;padding:11px}.home-conversion-actions b{font-size:11.5px}.home-conversion-actions small{font-size:9px!important}
  .product-card .trade-card-summary{grid-template-columns:1fr;margin:4px 0 7px}.product-card .trade-card-summary span{padding:5px 6px}.product-card .trade-card-summary span:first-child{display:block}.product-card .trade-card-summary b{font-size:10.5px}.product-card .trade-card-summary small{font-size:7.8px!important}
  .product-order-heading{grid-template-columns:1fr}.product-order-heading-presets{display:block!important}.product-order-heading-presets .carton-preset-row{width:100%!important}.carton-preset-row{justify-content:flex-start}.carton-preset-row button{flex:1;min-width:0;padding:8px 5px}.trade-price-metrics{grid-template-columns:1fr 1fr}
  body:has(.product-page-v2) .clean-footer{padding-bottom:76px!important}
  .mobile-product-order-dock{position:fixed;left:0;right:0;bottom:0;z-index:80;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px max(9px,env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid #dbe4ec;box-shadow:0 -8px 28px rgba(24,50,77,.12);backdrop-filter:blur(10px)}.mobile-product-order-dock small,.mobile-product-order-dock b{display:block}.mobile-product-order-dock small{font-size:9.5px;color:#66798b}.mobile-product-order-dock b{margin-top:2px;font-size:13px;color:#10243e}.mobile-product-order-dock .btn{min-height:42px;padding:10px 14px;font-size:10.5px}
}


/* =========================================================
   S3 MAX v3.13.2 — premium homepage + compact product detail
   ========================================================= */
@media(min-width:821px){
  body:not(.admin-body):not(.admin-login) .product-page-v2{
    grid-template-columns:minmax(0,1.34fr) minmax(330px,.66fr)!important;
    gap:34px!important;
  }
  body:not(.admin-body):not(.admin-login) .premium-product-info{
    width:100%!important;
    max-width:470px!important;
    justify-self:end!important;
    padding:16px!important;
  }
}
body:not(.admin-body):not(.admin-login) .premium-product-info .product-info-heading h1{font-size:27px!important;margin-bottom:8px!important}
body:not(.admin-body):not(.admin-login) .premium-product-info .product-info-meta{margin-bottom:8px!important}
body:not(.admin-body):not(.admin-login) .premium-product-info .product-save-action{margin-bottom:7px!important}
body:not(.admin-body):not(.admin-login) .premium-product-info .trade-price-box{padding:14px 15px!important;margin-top:7px!important}
body:not(.admin-body):not(.admin-login) .premium-product-info .product-order-v2{padding:12px!important;margin-top:8px!important}
body:not(.admin-body):not(.admin-login) .trade-price-metrics{margin:9px 0!important;gap:7px!important}
body:not(.admin-body):not(.admin-login) .trade-price-metrics>span{padding:8px 9px!important}
body:not(.admin-body):not(.admin-login) .product-order-heading{margin-bottom:7px!important}
body:not(.admin-body):not(.admin-login) .order-selection-preview{margin:7px 0!important}

/* =========================================================
   S3 MAX v3.13.4 — product detail/mobile ordering + account refinements
   ========================================================= */

/* Desktop product detail: keep the simpler gallery, give the buying panel more room. */
@media(min-width:1025px){
  body:not(.admin-body):not(.admin-login) .product-page-v2{
    grid-template-columns:minmax(0,1fr) minmax(600px,650px)!important;
    gap:28px!important;
    align-items:start!important;
  }
  body:not(.admin-body):not(.admin-login) .premium-product-info{
    width:100%!important;
    max-width:none!important;
    justify-self:stretch!important;
    padding:22px!important;
  }
}

/* Customer account / order history presentation retained outside the dashboard. */
.account-dashboard-v2{padding-top:24px!important}
.account-dashboard-head,.orders-page-head,.account-block-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
}
.account-dashboard-head{margin-bottom:17px}
.account-dashboard-head h1,.orders-page-head h1{margin:4px 0 5px;font-size:30px;line-height:1.1;color:#122b43}
.account-dashboard-head p,.orders-page-head p{margin:0;color:#637689;line-height:1.5}
.account-dashboard-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.account-dashboard-actions form{margin:0}
.account-stats-v2{margin-bottom:26px!important}
.account-details-panel{margin-top:24px}
.account-block-head{margin-bottom:11px}
.account-block-head h2{margin:3px 0 0;font-size:21px;color:#173049}
.account-details-panel .account-block-head>a{font-size:11px;font-weight:800;color:#1764a6}
.orders-page-head{margin-bottom:16px}
.orders-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}
.orders-summary-strip>div{border:1px solid #dfe6ed;border-radius:11px;background:#f8fafc;padding:13px 15px}
.orders-summary-strip small{display:block;font-size:9px;color:#6b7d8e;text-transform:uppercase;letter-spacing:.05em}
.orders-summary-strip b{display:block;margin-top:4px;font-size:19px;color:#17314a}
.customer-order-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.customer-order-card{border:1px solid #dfe6ed;border-radius:13px;background:#fff;padding:15px;box-shadow:0 6px 18px rgba(19,49,78,.035)}
.customer-order-card-head,.customer-order-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}
.customer-order-card-head small{display:block;font-size:9px;color:#738495}
.customer-order-card-head strong{display:block;margin-top:2px;font-size:15px;color:#132f49}
.customer-order-card-progress{margin:12px 0}
.customer-order-card-foot{border-top:1px solid #edf1f4;padding-top:11px}
.customer-order-card-foot>b{font-size:17px;color:#102d46}
.customer-order-card-foot>div{display:flex;align-items:center;gap:6px}
.customer-order-card-foot form{margin:0}
.repeat-last-order{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 22px;margin-bottom:22px;border:1px solid #cfe0ee;border-radius:14px;background:linear-gradient(125deg,#f1f7fc,#fff)}
.repeat-last-order h1{margin:4px 0 5px;font-size:25px;color:#15314b}
.repeat-last-order p{margin:0;color:#617589}
.order-history-product{display:flex;align-items:center;gap:9px;min-width:190px}
.order-history-product img{width:44px;height:44px;object-fit:contain;border:1px solid #e5eaf0;border-radius:7px;background:#fff;padding:3px;flex:0 0 auto}
.order-history-product a,.order-history-product b{font-weight:700;color:#193d5f}

/* Tablet/mobile product page: compact, straightforward and thumb-friendly. */
@media(max-width:1024px){
  body:not(.admin-body):not(.admin-login) .product-page-v2{grid-template-columns:1fr!important;gap:15px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info{max-width:none!important;width:100%!important;justify-self:stretch!important;padding:18px!important}
}
@media(max-width:760px){
  body:not(.admin-body):not(.admin-login) .product-page-v2{display:flex!important;flex-direction:column!important;gap:10px!important;padding-top:10px!important}
  body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image{height:335px!important;min-height:0!important;border-radius:12px!important;padding:6px!important}
  body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image img{padding:2px!important}
  body:not(.admin-body):not(.admin-login) .product-thumbnails{display:flex!important;gap:6px!important;overflow-x:auto!important;margin:7px 0 0!important;padding:1px 0 5px!important;scroll-snap-type:x proximity}
  body:not(.admin-body):not(.admin-login) .product-thumbnails .product-thumb{width:58px!important;min-width:58px!important;height:58px!important;scroll-snap-align:start;border-radius:8px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info{padding:14px!important;border-radius:12px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-info-heading h1{font-size:23px!important;line-height:1.14!important;margin-bottom:6px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-info-meta{margin-bottom:6px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-save-action{margin-bottom:6px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info .trade-price-box{padding:12px!important;margin-top:6px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info .trade-price-metrics{grid-template-columns:1fr 1fr!important;gap:6px!important;margin:8px 0!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info .trade-price-metrics>span{padding:8px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-order-v2{padding:11px!important;margin-top:7px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-order-heading{grid-template-columns:1fr!important;gap:7px!important;margin-bottom:8px!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info .carton-preset-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important;width:100%!important}
  body:not(.admin-body):not(.admin-login) .premium-product-info .carton-preset-row button{width:100%!important;padding:9px 5px!important}
  body:not(.admin-body):not(.admin-login) .product-order-v2 .qty.big{width:100%!important;display:grid!important;grid-template-columns:46px minmax(0,1fr) 46px!important}
  body:not(.admin-body):not(.admin-login) .product-order-v2 .qty.big button{min-height:44px!important}
  body:not(.admin-body):not(.admin-login) .product-order-v2 .qty.big input{width:100%!important;min-height:44px!important;text-align:center!important}
  body:has(.product-page-v2) .clean-footer{padding-bottom:92px!important}
  .mobile-product-order-dock{grid-template-columns:minmax(0,1fr) auto auto!important;gap:7px!important;padding:8px 10px max(8px,env(safe-area-inset-bottom))!important}
  .mobile-product-order-dock .mobile-order-summary{min-width:0}
  .mobile-product-order-dock .mobile-order-summary small,.mobile-product-order-dock .mobile-order-summary b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-order-qty{display:grid;grid-template-columns:36px 42px 36px;align-items:center;border:1px solid #d5e0e8;border-radius:9px;overflow:hidden;background:#fff}
  .mobile-order-qty button{width:36px;height:40px;border:0;background:#f4f7fa;color:#173a5b;font-size:18px;line-height:1;cursor:pointer}
  .mobile-order-qty span{display:grid;place-items:center;height:40px;font-size:11px;font-weight:800;color:#173149;border-left:1px solid #e3e9ee;border-right:1px solid #e3e9ee}
  .mobile-product-order-dock .btn{min-height:40px!important;padding:9px 12px!important}
  .account-dashboard-head,.orders-page-head,.account-block-head,.repeat-last-order{align-items:flex-start;flex-direction:column}
  .account-dashboard-actions{width:100%;justify-content:stretch}
  .account-dashboard-actions form,.account-dashboard-actions .btn{flex:1}
  .account-dashboard-actions form .btn{width:100%}
  .orders-page-head .btn,.repeat-last-order .btn{width:100%}
  .customer-order-cards,.orders-summary-strip{grid-template-columns:1fr}
  .customer-order-card-foot{align-items:flex-start;flex-direction:column}
  .customer-order-card-foot>div{width:100%}.customer-order-card-foot .btn{flex:1}.customer-order-card-foot form{flex:1}.customer-order-card-foot form .btn{width:100%}
}
@media(max-width:520px){
  body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image{height:300px!important}
  .mobile-product-order-dock{grid-template-columns:minmax(58px,1fr) 108px 82px!important;gap:5px!important}
  .mobile-product-order-dock .btn{padding-left:8px!important;padding-right:8px!important}
  .mobile-order-qty{grid-template-columns:34px 40px 34px!important}
  .mobile-order-qty button{width:34px!important}
}


/* =========================================================
   S3 MAX v3.13.6 — mobile basket + checkout refinement
   ========================================================= */
.checkout-step-label{display:inline-block;margin:0 0 4px;font-size:9px;font-weight:900;letter-spacing:.12em;color:#0b61aa}.checkout-review-form>h2,.checkout-summary-card>h3{margin-top:0!important}
@media(max-width:760px){
  body.page-cart .floating-trade-tools,body.page-checkout .floating-trade-tools{display:none!important}
  body.page-cart .cart-layout,body.page-checkout .checkout-grid{display:flex!important;flex-direction:column!important;gap:10px!important;padding-top:10px!important}
  body.page-cart .cart-main-card,body.page-checkout .checkout-review-form,body.page-checkout .checkout-summary-card{border-radius:11px!important;padding:11px!important;box-shadow:none!important}
  body.page-cart .cart-table tr{margin:0 0 8px!important;padding:10px!important;border:1px solid #e1e7ec!important;border-radius:9px!important;background:#fff!important;grid-template-columns:minmax(0,1fr) 104px!important}
  body.page-cart .cart-table tr:last-child{margin-bottom:0!important}
  body.page-cart .cart-product{gap:9px!important;align-items:center!important}
  body.page-cart .cart-product-image{width:58px!important;height:58px!important;min-width:58px!important}
  body.page-cart .cart-product-name strong{font-size:12px!important;line-height:1.25!important}
  body.page-cart .cart-product small{font-size:9.5px!important;margin-top:2px!important}
  body.page-cart .cart-table td:nth-child(2):before,body.page-cart .cart-table td:nth-child(4):before,body.page-cart .cart-table td:nth-child(5):before{font-size:9px!important;color:#738394!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.04em!important}
  body.page-cart .cart-qty-wrap{grid-template-columns:32px 44px 32px!important;height:34px!important;border-radius:7px!important}
  body.page-cart .cart-qty-wrap input{width:44px!important;height:34px!important;font-size:12px!important}
  body.page-cart .cart-qty-wrap button{font-size:16px!important}
  body.page-cart .cart-auto-status{min-height:24px!important;padding:6px 2px!important;font-size:9.5px!important}
  body.page-cart .cart-quick-add{padding:10px!important;border-radius:9px!important;gap:8px!important}
  body.page-cart .cart-quick-add-copy small{display:none!important}
  body.page-cart .cart-quick-search input{min-height:42px!important}
  body.page-cart .summary-card{margin-top:0!important;padding:12px!important;border:1px solid #dfe6ec!important;background:#fff!important}
  body.page-cart .summary-card h3{font-size:16px!important;margin-bottom:8px!important}
  body.page-cart .summary-card p{margin:6px 0!important}
  body.page-cart [data-cart-submit]{position:sticky!important;bottom:8px!important;z-index:25!important;margin-top:10px!important;box-shadow:0 8px 24px rgba(15,51,83,.18)!important}
  body.page-cart .clean-footer,body.page-checkout .clean-footer{padding-bottom:18px!important}
  body.page-checkout .checkout-review-form{order:1!important}
  body.page-checkout .checkout-summary-card{order:2!important;margin-top:0!important;border:1px solid #dfe6ec!important;background:#fff!important}
  body.page-checkout .checkout-review-form label{font-size:10px!important;margin-bottom:8px!important}
  body.page-checkout .checkout-review-form :where(input,textarea,select){min-height:42px!important;font-size:13px!important;padding:9px 10px!important}
  body.page-checkout .delivery-address-summary{padding:10px 11px!important;margin-bottom:8px!important}
  body.page-checkout .delivery-address-editor{margin:8px 0 12px!important}
  body.page-checkout .delivery-address-editor summary{padding:10px 11px!important;font-size:11px!important}
  body.page-checkout .delivery-address-fields .form-two{grid-template-columns:1fr!important;gap:0!important}
  body.page-checkout .provisional-order-note{margin:10px 0 8px!important;padding:9px 10px!important;font-size:10.5px!important}
  body.page-checkout .submit-trade-order{position:sticky!important;bottom:8px!important;z-index:25!important;box-shadow:0 8px 24px rgba(15,51,83,.18)!important}
  body.page-checkout .checkout-summary-card>p{display:flex!important;align-items:flex-start!important;gap:10px!important;margin:7px 0!important;font-size:11px!important}
  body.page-checkout .checkout-summary-card>p>span{min-width:0!important;flex:1!important}
  body.page-checkout .checkout-summary-card>p>b{white-space:nowrap!important}
}

/* =========================================================
   S3 MAX v3.13.7 — product ordering balance
   ========================================================= */
@media(min-width:1025px){
  body:not(.admin-body):not(.admin-login) .product-page-v2{
    grid-template-columns:minmax(0,1fr) minmax(660px,700px)!important;
    gap:24px!important;
  }
  body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image{
    height:560px!important;
  }
  body:not(.admin-body):not(.admin-login) .premium-product-info{
    width:100%!important;
    max-width:none!important;
    padding:20px!important;
  }
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-order-v2{
    display:block!important;
    padding:12px!important;
  }
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-order-presets{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
    width:100%!important;
    max-width:320px!important;
    margin:0 0 6px!important;
    justify-content:stretch!important;
  }
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-order-presets button{
    width:100%!important;
    padding:7px 6px!important;
  }
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-order-v2 .qty.big{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 42px!important;
    width:100%!important;
    max-width:320px!important;
    height:40px!important;
    margin:0 0 8px!important;
  }
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-order-v2 .btn.wide{
    margin-top:0!important;
  }
}
@media(max-width:1024px){
  body:not(.admin-body):not(.admin-login) .premium-product-info .product-order-presets{
    margin:0 0 6px!important;
  }
}

/* =========================================================
   S3 MAX v3.13.8 — centred desktop product detail composition
   ========================================================= */
@media(min-width:1025px){
  body:not(.admin-body):not(.admin-login) .product-page-v2{
    max-width:1370px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    grid-template-columns:minmax(0,1fr) minmax(660px,700px)!important;
    gap:24px!important;
    align-items:start!important;
  }
  body:not(.admin-body):not(.admin-login) .product-page-v2 .product-gallery{
    width:100%!important;
    max-width:590px!important;
    justify-self:center!important;
  }
  body:not(.admin-body):not(.admin-login) .premium-product-info{
    width:100%!important;
    max-width:700px!important;
    justify-self:center!important;
  }
}

/* =========================================================
   S3 MAX v3.13.9 — denser storefront tables, basket + review
   ========================================================= */
/* Main operational storefront tables are slightly denser. Smaller spec/form
   tables keep their existing roomier spacing. */
body:not(.admin-body):not(.admin-login) main .table-card:not(.spec-table-wrap) table:not(.spec-table) th{
  padding:6px 8px!important;
  font-size:10px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
body:not(.admin-body):not(.admin-login) main .table-card:not(.spec-table-wrap) table:not(.spec-table) td{
  padding:6px 8px!important;
  font-size:11px!important;
  line-height:1.25!important;
  vertical-align:middle!important;
}

/* Shopping basket: full-width, naturally sized columns and compact controls. */
@media(min-width:761px){
  body.page-cart .cart-layout{
    grid-template-columns:minmax(0,1fr) minmax(285px,330px)!important;
    gap:18px!important;
    align-items:start!important;
  }
  body.page-cart .cart-main-card{
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
    padding:0!important;
  }
  body.page-cart .cart-main-card form[data-cart-auto]{min-width:0!important}
  body.page-cart .cart-table-scroll{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    border-radius:10px 10px 0 0!important;
  }
  body.page-cart .cart-table{
    width:100%!important;
    min-width:700px!important;
    table-layout:auto!important;
    margin:0!important;
  }
  body.page-cart .cart-table th,
  body.page-cart .cart-table td{height:auto!important;padding:6px 8px!important}
  body.page-cart .cart-table th:nth-child(1){width:auto!important;min-width:260px!important}
  body.page-cart .cart-table th:nth-child(2){width:110px!important}
  body.page-cart .cart-table th:nth-child(3){width:132px!important}
  body.page-cart .cart-table th:nth-child(4){width:94px!important}
  body.page-cart .cart-table th:nth-child(5){width:108px!important}
  body.page-cart .cart-product{gap:9px!important;align-items:center!important}
  body.page-cart .cart-product-image{width:48px!important;height:48px!important;min-width:48px!important}
  body.page-cart .cart-product-name strong{font-size:11px!important;line-height:1.2!important}
  body.page-cart .cart-product small{font-size:9px!important;line-height:1.15!important}
  body.page-cart .cart-qty-wrap{grid-template-columns:29px 42px 29px!important;height:30px!important;width:100px!important}
  body.page-cart .cart-qty-wrap button{font-size:14px!important;line-height:1!important}
  body.page-cart .cart-qty-wrap input{width:42px!important;height:30px!important;font-size:11px!important}
  body.page-cart .cart-auto-status{padding:6px 10px!important;min-height:28px!important;font-size:9.5px!important}
  body.page-cart .cart-quick-add{padding:11px 12px!important;gap:12px!important}
  body.page-cart .summary-card{padding:14px!important}
}

/* Order Review: products and totals take the larger left side; delivery and
   submit controls stay together on the right. */
body.page-checkout .checkout-grid-v3139{
  display:grid!important;
  grid-template-columns:minmax(0,1.55fr) minmax(350px,.75fr)!important;
  gap:22px!important;
  align-items:start!important;
  padding-top:22px!important;
}
body.page-checkout .checkout-order-review-panel{min-width:0!important}
body.page-checkout .checkout-review-heading{margin:0 0 10px!important}
body.page-checkout .checkout-review-heading h2{margin:2px 0 4px!important;font-size:23px!important}
body.page-checkout .checkout-review-heading p{margin:0!important;color:#657789!important;font-size:11.5px!important}
body.page-checkout .checkout-order-table-card{
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  overflow-x:auto!important;
  border-radius:10px!important;
}
body.page-checkout .checkout-order-table{width:100%!important;min-width:760px!important;table-layout:auto!important}
body.page-checkout .checkout-order-table th:first-child{min-width:300px!important}
body.page-checkout .checkout-order-table th:not(:first-child){width:110px!important}
body.page-checkout .checkout-product-cell{display:flex;align-items:center;gap:9px;min-width:0}
body.page-checkout .checkout-product-cell img{width:46px;height:46px;object-fit:contain;border:1px solid #e3e9ee;border-radius:7px;background:#fff;flex:0 0 auto}
body.page-checkout .checkout-product-cell span{display:block;min-width:0}
body.page-checkout .checkout-product-cell b,body.page-checkout .checkout-product-cell small{display:block}
body.page-checkout .checkout-product-cell b{font-size:11px;line-height:1.25;color:#152f48}
body.page-checkout .checkout-product-cell small{margin-top:2px;font-size:9px;line-height:1.2;color:#6c7e8f}
body.page-checkout .checkout-order-totals{width:min(430px,100%);margin:12px 0 0 auto;padding:13px 14px;border:1px solid #dfe6ec;border-radius:10px;background:#fff}
body.page-checkout .checkout-order-totals>p{display:flex;justify-content:space-between;gap:18px;margin:6px 0;font-size:11px}
body.page-checkout .checkout-order-totals .grand{padding-top:8px;border-top:1px solid #e5eaf0;font-size:13px}
body.page-checkout .checkout-order-totals .delivery-box{margin-top:10px!important}
body.page-checkout .checkout-delivery-panel{width:100%!important;max-width:none!important;padding:17px!important;border-radius:11px!important;position:sticky!important;top:18px!important}
body.page-checkout .checkout-delivery-panel>h2{font-size:20px!important;margin:2px 0 12px!important}
body.page-checkout .checkout-delivery-panel label{margin:10px 0!important}

@media(max-width:980px){
  body.page-checkout .checkout-grid-v3139{grid-template-columns:1fr!important;gap:14px!important}
  body.page-checkout .checkout-delivery-panel{position:relative!important;top:auto!important}
}
@media(max-width:760px){
  body.page-cart .cart-table-scroll{overflow:visible!important}
  body.page-cart .cart-table{min-width:0!important}
  body.page-checkout .checkout-grid-v3139{display:flex!important;flex-direction:column!important;padding-top:10px!important}
  body.page-checkout .checkout-order-review-panel{order:1!important;width:100%!important}
  body.page-checkout .checkout-delivery-panel{order:2!important;width:100%!important;padding:11px!important}
  body.page-checkout .checkout-order-table-card{border:0!important;background:transparent!important;overflow:visible!important}
  body.page-checkout .checkout-order-table{display:block!important;min-width:0!important}
  body.page-checkout .checkout-order-table thead{display:none!important}
  body.page-checkout .checkout-order-table tbody{display:block!important}
  body.page-checkout .checkout-order-table tr{display:grid!important;grid-template-columns:1fr auto!important;gap:5px 10px!important;padding:10px!important;margin-bottom:8px!important;border:1px solid #e1e7ec!important;border-radius:9px!important;background:#fff!important}
  body.page-checkout .checkout-order-table td{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:2px 0!important;border:0!important;background:transparent!important}
  body.page-checkout .checkout-order-table td:first-child{grid-column:1/-1!important;display:block!important;padding-bottom:5px!important}
  body.page-checkout .checkout-order-table td:nth-child(2):before{content:"Item Price"}
  body.page-checkout .checkout-order-table td:nth-child(3):before{content:"Cartons"}
  body.page-checkout .checkout-order-table td:nth-child(4):before{content:"Pieces"}
  body.page-checkout .checkout-order-table td:nth-child(5):before{content:"Ex VAT"}
  body.page-checkout .checkout-order-table td:not(:first-child):before{font-size:8.5px;font-weight:800;color:#748596;text-transform:uppercase;letter-spacing:.04em;margin-right:12px}
  body.page-checkout .checkout-order-totals{width:100%!important;margin-top:8px!important}
}

/* =========================================================
   S3 MAX v3.14.0 — basket, checkout and storefront table readability
   ========================================================= */
/* Dense operational tables remain efficient, while basket/review tables get
   their own larger, easier-to-read treatment below. */
body:not(.admin-body):not(.admin-login) main .table-card:not(.spec-table-wrap):not(.cart-main-card):not(.checkout-order-table-card) table:not(.spec-table) th{
  padding:5px 7px!important;
  font-size:9.8px!important;
  line-height:1.2!important;
}
body:not(.admin-body):not(.admin-login) main .table-card:not(.spec-table-wrap):not(.cart-main-card):not(.checkout-order-table-card) table:not(.spec-table) td{
  padding:5px 7px!important;
  font-size:10.8px!important;
  line-height:1.25!important;
}

/* Basket — desktop/tablet: larger reading size without wasting space. */
@media(min-width:761px){
  body.page-cart .cart-layout{
    grid-template-columns:minmax(0,1fr) minmax(315px,350px)!important;
    gap:20px!important;
  }
  body.page-cart .cart-main-card{border-radius:11px!important;overflow:hidden!important}
  body.page-cart .cart-table-scroll{overflow-x:auto!important;background:#fff!important}
  body.page-cart .cart-table{
    width:100%!important;
    min-width:780px!important;
    table-layout:auto!important;
  }
  body.page-cart .cart-table th{
    padding:9px 11px!important;
    font-size:10.8px!important;
    line-height:1.2!important;
  }
  body.page-cart .cart-table td{
    padding:9px 11px!important;
    font-size:12.5px!important;
    line-height:1.3!important;
    vertical-align:middle!important;
  }
  body.page-cart .cart-table th:nth-child(1){min-width:320px!important}
  body.page-cart .cart-table th:nth-child(2){width:112px!important}
  body.page-cart .cart-table th:nth-child(3){width:132px!important}
  body.page-cart .cart-table th:nth-child(4){width:106px!important}
  body.page-cart .cart-table th:nth-child(5){width:124px!important}
  body.page-cart .cart-product{gap:11px!important}
  body.page-cart .cart-product-image{width:58px!important;height:58px!important;min-width:58px!important;padding:4px!important}
  body.page-cart .cart-product-name strong{font-size:12.5px!important;line-height:1.25!important}
  body.page-cart .cart-product small{font-size:10px!important;line-height:1.2!important;margin-top:3px!important}
  body.page-cart .cart-qty-wrap{grid-template-columns:32px 48px 32px!important;height:34px!important;width:112px!important}
  body.page-cart .cart-qty-wrap input{width:48px!important;height:34px!important;font-size:12px!important}
  body.page-cart .cart-qty-wrap button{font-size:16px!important}
  body.page-cart .cart-auto-status{padding:8px 11px!important;min-height:31px!important;font-size:10px!important}
  body.page-cart .cart-quick-add{padding:13px 14px!important;gap:14px!important}
  body.page-cart .cart-quick-add-copy b{font-size:13px!important}
  body.page-cart .cart-quick-add-copy small{font-size:10.5px!important}
  body.page-cart .summary-card{padding:17px!important}
  body.page-cart .summary-card h3{font-size:19px!important;margin:0 0 13px!important}
  body.page-cart .summary-card p{font-size:13px!important;margin:10px 0!important}
  body.page-cart .summary-card .grand{font-size:14px!important;padding-top:9px!important}
  body.page-cart .delivery-box{margin-top:13px!important}
}

/* Basket — mobile: compact card rows, but clear hierarchy and touch targets. */
@media(max-width:760px){
  body.page-cart .cart-main-card{padding:0!important;border:0!important;background:transparent!important}
  body.page-cart .cart-table-scroll{overflow:visible!important}
  body.page-cart .cart-table,body.page-cart .cart-table tbody{display:block!important;width:100%!important}
  body.page-cart .cart-table thead{display:none!important}
  body.page-cart .cart-table tr{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px 12px!important;
    margin:0 0 9px!important;
    padding:11px!important;
    border:1px solid #dfe6ec!important;
    border-radius:10px!important;
    background:#fff!important;
  }
  body.page-cart .cart-table td{
    width:auto!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
    font-size:12px!important;
    line-height:1.25!important;
    background:transparent!important;
  }
  body.page-cart .cart-table td:first-child{grid-column:1/-1!important}
  body.page-cart .cart-table td:not(:first-child){
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:3px!important;
    align-items:start!important;
    justify-content:start!important;
  }
  body.page-cart .cart-table td:nth-child(2):before{content:"Item Price"!important}
  body.page-cart .cart-table td:nth-child(3):before{content:"Cartons"!important}
  body.page-cart .cart-table td:nth-child(4):before{content:"Total Pieces"!important}
  body.page-cart .cart-table td:nth-child(5):before{content:"Price ex-VAT"!important}
  body.page-cart .cart-table td:not(:first-child):before{
    display:block!important;
    margin:0!important;
    font-size:8.5px!important;
    line-height:1.1!important;
    font-weight:850!important;
    letter-spacing:.045em!important;
    color:#718294!important;
    text-transform:uppercase!important;
  }
  body.page-cart .cart-product{gap:9px!important;align-items:center!important}
  body.page-cart .cart-product-image{width:54px!important;height:54px!important;min-width:54px!important}
  body.page-cart .cart-product-name strong{font-size:12.5px!important;line-height:1.25!important}
  body.page-cart .cart-product small{font-size:9.5px!important;line-height:1.15!important}
  body.page-cart .cart-qty-wrap{margin:0!important;grid-template-columns:31px 42px 31px!important;height:33px!important;width:104px!important}
  body.page-cart .cart-qty-wrap input{width:42px!important;height:33px!important;font-size:11.5px!important}
  body.page-cart .cart-auto-status{padding:5px 2px 8px!important;min-height:0!important;font-size:9.5px!important}
  body.page-cart .cart-quick-add{padding:10px!important;gap:8px!important}
  body.page-cart .cart-quick-add-copy{display:none!important}
  body.page-cart .cart-quick-search{grid-template-columns:minmax(0,1fr) 42px!important}
  body.page-cart .cart-quick-search input[type=search]{height:40px!important;font-size:12px!important}
  body.page-cart .cart-search-add{height:40px!important}
  body.page-cart .summary-card{padding:13px!important;border-radius:10px!important}
  body.page-cart .summary-card h3{font-size:16px!important;margin:0 0 8px!important}
  body.page-cart .summary-card p{font-size:11.5px!important;margin:6px 0!important}
}

/* Order Review — roomier and easier to scan on desktop. */
@media(min-width:981px){
  body.page-checkout .checkout-grid-v3139{
    grid-template-columns:minmax(0,1.7fr) minmax(375px,.72fr)!important;
    gap:24px!important;
    max-width:1480px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.page-checkout .checkout-review-heading h2{font-size:25px!important}
  body.page-checkout .checkout-review-heading p{font-size:12.5px!important}
  body.page-checkout .checkout-order-table{min-width:820px!important}
  body.page-checkout .checkout-order-table th{
    padding:9px 11px!important;
    font-size:10.5px!important;
  }
  body.page-checkout .checkout-order-table td{
    padding:10px 11px!important;
    font-size:12.5px!important;
    line-height:1.3!important;
  }
  body.page-checkout .checkout-order-table th:first-child{min-width:335px!important}
  body.page-checkout .checkout-order-table th:not(:first-child){width:120px!important}
  body.page-checkout .checkout-product-cell{gap:11px!important}
  body.page-checkout .checkout-product-cell img{width:56px!important;height:56px!important}
  body.page-checkout .checkout-product-cell b{font-size:12.5px!important}
  body.page-checkout .checkout-product-cell small{font-size:10px!important}
  body.page-checkout .checkout-order-totals{width:min(500px,100%)!important;padding:15px 16px!important}
  body.page-checkout .checkout-order-totals>p{font-size:12.5px!important;margin:8px 0!important}
  body.page-checkout .checkout-order-totals .grand{font-size:14px!important}
  body.page-checkout .checkout-delivery-panel{padding:19px!important}
  body.page-checkout .checkout-delivery-panel>h2{font-size:21px!important}
  body.page-checkout .checkout-delivery-panel label{font-size:11.5px!important}
}

@media(max-width:760px){
  body.page-checkout .checkout-order-table td:nth-child(5):before{content:"Price ex-VAT"!important}
  body.page-checkout .checkout-order-table tr{padding:11px!important;gap:6px 10px!important}
  body.page-checkout .checkout-order-table td{font-size:11.5px!important}
  body.page-checkout .checkout-product-cell img{width:50px!important;height:50px!important}
  body.page-checkout .checkout-product-cell b{font-size:11.5px!important}
  body.page-checkout .checkout-product-cell small{font-size:9.5px!important}
}

/* =========================================================
   S3 MAX v3.14.1 — basket removal, clearer checkout, simpler mobile flow
   ========================================================= */
.cart-remove-product{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin-top:6px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#b42318!important;
  font:inherit!important;
  font-size:10.5px!important;
  line-height:1.2!important;
  font-weight:750!important;
  cursor:pointer!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}
.cart-remove-product:hover{color:#86190f!important}

@media(min-width:761px){
  body.page-cart .cart-table th{font-size:11.4px!important;padding:10px 12px!important}
  body.page-cart .cart-table td{font-size:13.5px!important;padding:10px 12px!important;line-height:1.35!important}
  body.page-cart .cart-product-image{width:60px!important;height:60px!important;min-width:60px!important}
  body.page-cart .cart-product-name strong{font-size:13.5px!important}
  body.page-cart .cart-product small{font-size:10.5px!important}
  body.page-cart .cart-qty-wrap input{font-size:12.8px!important}
  body.page-cart .summary-card h3{font-size:20px!important}
  body.page-cart .summary-card p{font-size:14px!important;line-height:1.4!important}
  body.page-cart .summary-card .grand{font-size:15px!important}
  body.page-cart .delivery-box,body.page-cart .delivery-box p{font-size:12.5px!important}

  body.page-checkout .checkout-review-heading h2{font-size:26px!important}
  body.page-checkout .checkout-review-heading p{font-size:13px!important}
  body.page-checkout .checkout-order-table th{font-size:11.2px!important;padding:10px 12px!important}
  body.page-checkout .checkout-order-table td{font-size:13.5px!important;padding:11px 12px!important;line-height:1.35!important}
  body.page-checkout .checkout-product-cell img{width:58px!important;height:58px!important}
  body.page-checkout .checkout-product-cell b{font-size:13.5px!important}
  body.page-checkout .checkout-product-cell small{font-size:10.5px!important}
  body.page-checkout .checkout-order-totals>p{font-size:13.5px!important}
  body.page-checkout .checkout-order-totals .grand{font-size:15px!important}
  body.page-checkout .checkout-delivery-panel label{font-size:12px!important}
}

@media(max-width:760px){
  /* Basket: one simple product card, a compact quantity line and clear totals. */
  body.page-cart .cart-layout{gap:10px!important}
  body.page-cart .cart-table tr{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px 10px!important;
    padding:10px!important;
    margin-bottom:8px!important;
  }
  body.page-cart .cart-table td{font-size:12.8px!important;line-height:1.3!important}
  body.page-cart .cart-table td:first-child{grid-column:1/-1!important}
  body.page-cart .cart-table td:nth-child(3),
  body.page-cart .cart-table td:nth-child(5){
    grid-column:1/-1!important;
    display:flex!important;
    flex-direction:row!important;
    justify-content:space-between!important;
    align-items:center!important;
    gap:10px!important;
    padding-top:3px!important;
  }
  body.page-cart .cart-table td:not(:first-child):before{font-size:9px!important;line-height:1.15!important}
  body.page-cart .cart-product-image{width:52px!important;height:52px!important;min-width:52px!important}
  body.page-cart .cart-product-name strong{font-size:13.2px!important;line-height:1.25!important}
  body.page-cart .cart-product small{font-size:10px!important;line-height:1.2!important}
  body.page-cart .cart-qty-wrap{grid-template-columns:32px 44px 32px!important;width:108px!important;height:34px!important}
  body.page-cart .cart-qty-wrap input{width:44px!important;height:34px!important;font-size:12.5px!important}
  body.page-cart .cart-qty-wrap button{font-size:16px!important}
  body.page-cart .cart-remove-product{font-size:10.5px!important;margin-top:5px!important}
  body.page-cart .cart-auto-status{font-size:10px!important;padding:4px 2px 7px!important}
  body.page-cart .summary-card{padding:12px!important}
  body.page-cart .summary-card h3{font-size:17px!important}
  body.page-cart .summary-card p{font-size:12.5px!important;line-height:1.35!important}
  body.page-cart .summary-card .grand{font-size:13.5px!important}
  body.page-cart .cart-quick-add{padding:8px!important}
  body.page-cart .cart-quick-search input[type=search]{font-size:12.5px!important}

  /* Order review: simple two-column metric grid under each product. */
  body.page-checkout .checkout-grid-v3139{gap:10px!important;padding-top:8px!important}
  body.page-checkout .checkout-review-heading{margin-bottom:8px!important}
  body.page-checkout .checkout-review-heading h2{font-size:23px!important;line-height:1.15!important}
  body.page-checkout .checkout-review-heading p{font-size:12px!important;line-height:1.4!important}
  body.page-checkout .checkout-order-table tr{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px 10px!important;
    padding:10px!important;
    margin-bottom:8px!important;
  }
  body.page-checkout .checkout-order-table td{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    gap:2px!important;
    font-size:12.5px!important;
    line-height:1.3!important;
  }
  body.page-checkout .checkout-order-table td:first-child{grid-column:1/-1!important;padding-bottom:5px!important}
  body.page-checkout .checkout-order-table td:not(:first-child):before{font-size:9px!important;margin:0!important}
  body.page-checkout .checkout-product-cell{gap:9px!important}
  body.page-checkout .checkout-product-cell img{width:50px!important;height:50px!important}
  body.page-checkout .checkout-product-cell b{font-size:12.8px!important;line-height:1.25!important}
  body.page-checkout .checkout-product-cell small{font-size:10px!important;line-height:1.2!important}
  body.page-checkout .checkout-order-totals{padding:11px 12px!important;margin-top:7px!important}
  body.page-checkout .checkout-order-totals>p{font-size:12.5px!important;margin:6px 0!important}
  body.page-checkout .checkout-order-totals .grand{font-size:13.5px!important}
  body.page-checkout .checkout-delivery-panel{padding:12px!important}
  body.page-checkout .checkout-delivery-panel>h2{font-size:19px!important;margin-bottom:9px!important}
  body.page-checkout .checkout-delivery-panel label{font-size:11.5px!important;margin:8px 0!important}
}

/* =========================================================
   S3 MAX v3.14.2 — retail-style mobile cart/review + Master Admin preview
   ========================================================= */
.cart-mobile-meta,.checkout-mobile-product-meta{display:none}

/* Remove is now a compact cross action rather than a text link. */
.cart-remove-product{
  flex:0 0 28px!important;
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  margin:0 0 0 auto!important;
  padding:0!important;
  border:1px solid #dce4eb!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#6b7885!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:20px!important;
  line-height:1!important;
  font-weight:400!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.cart-remove-product:hover{border-color:#e0b0aa!important;background:#fff7f6!important;color:#a1261d!important}

/* Persistent Master Admin storefront preview indicator. */
.master-preview-bar{position:sticky;top:0;z-index:12000;background:#102f50;color:#fff;border-bottom:1px solid rgba(255,255,255,.14);font-size:12px;line-height:1.25}
.master-preview-bar .wrap{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.master-preview-bar b{font-size:10px;letter-spacing:.09em;margin-right:8px;color:#9fd2ff}
.master-preview-bar a{flex:0 0 auto;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.35);border-radius:6px;padding:6px 10px;font-size:10px;font-weight:850;letter-spacing:.035em}
body.admin-storefront-preview .site-header{top:40px!important}

@media(max-width:760px){
  /* Mobile basket: simple retail-cart cards. Keep only product, carton quantity and line total. */
  body.page-cart .cart-layout{gap:10px!important;padding-top:8px!important}
  body.page-cart .cart-main-card{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
  body.page-cart .cart-table-scroll{overflow:visible!important}
  body.page-cart .cart-table,body.page-cart .cart-table tbody{display:block!important;width:100%!important}
  body.page-cart .cart-table thead{display:none!important}
  body.page-cart .cart-table tr{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px 12px!important;
    width:100%!important;
    margin:0 0 9px!important;
    padding:12px!important;
    border:1px solid #e0e6ec!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  body.page-cart .cart-table td{width:auto!important;min-width:0!important;padding:0!important;border:0!important;background:transparent!important;font-size:12.5px!important;line-height:1.25!important}
  body.page-cart .cart-product-cell{grid-column:1/-1!important}
  body.page-cart .cart-product{position:relative!important;display:flex!important;align-items:center!important;gap:10px!important;padding-right:34px!important}
  body.page-cart .cart-product-image{width:58px!important;height:58px!important;min-width:58px!important;border-radius:9px!important;padding:3px!important}
  body.page-cart .cart-product-copy{min-width:0!important;flex:1 1 auto!important}
  body.page-cart .cart-product-name{display:block!important;padding-right:2px!important}
  body.page-cart .cart-product-name strong{display:block!important;font-size:14px!important;line-height:1.22!important;color:#111f2f!important}
  body.page-cart .cart-product-code{font-size:10.5px!important;color:#68798a!important;margin-top:3px!important}
  body.page-cart .cart-carton-qty{display:none!important}
  body.page-cart .cart-mobile-meta{display:flex!important;flex-wrap:wrap!important;gap:4px 10px!important;margin-top:4px!important;font-size:10.5px!important;line-height:1.2!important;color:#56697a!important}
  body.page-cart .cart-mobile-meta span+span:before{content:"•";margin-right:10px;color:#a0acb7}
  body.page-cart .cart-remove-product{position:absolute!important;top:0!important;right:0!important;width:26px!important;height:26px!important;min-width:26px!important;font-size:19px!important}
  body.page-cart .cart-item-price,body.page-cart .cart-pieces{display:none!important}
  body.page-cart .cart-cartons{grid-column:1!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-end!important;gap:5px!important}
  body.page-cart .cart-cartons:before{content:"Cartons"!important;display:block!important;font-size:9px!important;line-height:1!important;font-weight:850!important;letter-spacing:.05em!important;text-transform:uppercase!important;color:#778797!important}
  body.page-cart .cart-line-total{grid-column:2!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:flex-end!important;gap:5px!important;text-align:right!important;white-space:nowrap!important}
  body.page-cart .cart-line-total:before{content:"Total ex-VAT"!important;display:block!important;font-size:9px!important;line-height:1!important;font-weight:850!important;letter-spacing:.05em!important;text-transform:uppercase!important;color:#778797!important}
  body.page-cart .cart-line-total strong{font-size:14px!important;line-height:1.1!important;color:#162333!important}
  body.page-cart .cart-qty-wrap{margin:0!important;grid-template-columns:32px 44px 32px!important;width:108px!important;height:34px!important;border-radius:7px!important}
  body.page-cart .cart-qty-wrap input{width:44px!important;height:34px!important;font-size:12.5px!important}
  body.page-cart .cart-qty-wrap button{font-size:16px!important}
  body.page-cart .cart-auto-status{padding:3px 2px 7px!important;min-height:0!important;font-size:9.5px!important;color:#738293!important}
  body.page-cart .cart-quick-add{padding:8px!important;border-radius:10px!important}
  body.page-cart .cart-quick-add-copy{display:none!important}
  body.page-cart .summary-card{padding:13px!important;border-radius:11px!important}
  body.page-cart .summary-card h3{font-size:17px!important;margin:0 0 8px!important}
  body.page-cart .summary-card p{font-size:12.5px!important;margin:6px 0!important}
  body.page-cart .summary-card .grand{font-size:14px!important}

  /* Mobile Order Review: product header + carton count + line total only. */
  body.page-checkout .checkout-grid-v3139{gap:10px!important;padding-top:8px!important}
  body.page-checkout .checkout-step-label{display:none!important}
  body.page-checkout .checkout-review-heading{margin-bottom:7px!important}
  body.page-checkout .checkout-review-heading h2{font-size:22px!important;line-height:1.15!important;margin-bottom:0!important}
  body.page-checkout .checkout-review-heading p{display:none!important}
  body.page-checkout .checkout-order-table-card{border:0!important;background:transparent!important;overflow:visible!important}
  body.page-checkout .checkout-order-table{display:block!important;min-width:0!important;width:100%!important}
  body.page-checkout .checkout-order-table thead{display:none!important}
  body.page-checkout .checkout-order-table tbody{display:block!important}
  body.page-checkout .checkout-order-table tr{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:9px 12px!important;
    width:100%!important;
    margin:0 0 8px!important;
    padding:11px!important;
    border:1px solid #e0e6ec!important;
    border-radius:11px!important;
    background:#fff!important;
  }
  body.page-checkout .checkout-order-table td{padding:0!important;border:0!important;background:transparent!important;font-size:12.5px!important;line-height:1.25!important}
  body.page-checkout .checkout-product-td{grid-column:1/-1!important;display:block!important}
  body.page-checkout .checkout-product-cell{display:flex!important;align-items:center!important;gap:9px!important}
  body.page-checkout .checkout-product-cell img{width:48px!important;height:48px!important;min-width:48px!important;border-radius:8px!important}
  body.page-checkout .checkout-product-cell b{display:block!important;font-size:13.5px!important;line-height:1.22!important;color:#111f2f!important}
  body.page-checkout .checkout-product-details{display:none!important}
  body.page-checkout .checkout-mobile-product-meta{display:block!important;margin-top:4px!important;font-size:10px!important;line-height:1.2!important;color:#68798a!important}
  body.page-checkout .checkout-item-price,body.page-checkout .checkout-pieces{display:none!important}
  body.page-checkout .checkout-cartons{grid-column:1!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;font-size:13px!important;font-weight:750!important}
  body.page-checkout .checkout-cartons:before{content:"Cartons"!important;font-size:9px!important;line-height:1!important;font-weight:850!important;letter-spacing:.05em!important;text-transform:uppercase!important;color:#778797!important}
  body.page-checkout .checkout-line-total{grid-column:2!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:4px!important;text-align:right!important;white-space:nowrap!important}
  body.page-checkout .checkout-line-total:before{content:"Total ex-VAT"!important;font-size:9px!important;line-height:1!important;font-weight:850!important;letter-spacing:.05em!important;text-transform:uppercase!important;color:#778797!important}
  body.page-checkout .checkout-line-total b{font-size:14px!important;line-height:1.1!important;color:#162333!important}
  body.page-checkout .checkout-order-totals{width:100%!important;padding:11px 12px!important;margin-top:6px!important;border-radius:10px!important}
  body.page-checkout .checkout-order-totals>p{font-size:12.5px!important;margin:6px 0!important}
  body.page-checkout .checkout-order-totals .grand{font-size:14px!important}
  body.page-checkout .checkout-delivery-panel{padding:12px!important;border-radius:11px!important}
  body.page-checkout .checkout-delivery-panel>h2{font-size:19px!important;margin:0 0 9px!important}
  body.page-checkout .delivery-address-summary{font-size:11.5px!important;line-height:1.35!important}
  body.page-checkout .checkout-delivery-panel label{font-size:11.5px!important;margin:8px 0!important}

  .master-preview-bar{font-size:10.5px}
  .master-preview-bar .wrap{min-height:46px;padding-top:6px;padding-bottom:6px;align-items:center}
  .master-preview-bar span{line-height:1.25}
  .master-preview-bar b{display:block;margin:0 0 2px;font-size:8.5px}
  .master-preview-bar a{font-size:9px;padding:6px 8px}
  body.admin-storefront-preview .site-header{top:46px!important}
}

/* v3.14.2 specificity guard against older mobile table rules. */
@media(max-width:760px){
  body.page-cart .cart-table td.cart-cartons{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-end!important;gap:5px!important}
  body.page-cart .cart-table td.cart-line-total{display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:flex-end!important;gap:5px!important;text-align:right!important}
  body.page-cart .cart-table td.cart-line-total:before{content:"Total ex-VAT"!important}
  body.page-checkout .checkout-order-table td.checkout-cartons{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:4px!important}
  body.page-checkout .checkout-order-table td.checkout-line-total{display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:flex-start!important;gap:4px!important;text-align:right!important}
  body.page-checkout .checkout-order-table td.checkout-line-total:before{content:"Total ex-VAT"!important}
}

/* =========================================================
   S3 MAX v3.14.4 — compact frequent-order product cards
   ========================================================= */
@media(min-width:821px){
  body:not(.admin-body):not(.admin-login) .buy-again-page .section-head{
    margin-bottom:14px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .frequent-product-grid{
    gap:10px!important;
    align-items:start!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .frequent-product-wrap{
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card{
    border-radius:12px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .product-img{
    height:200px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .product-body{
    padding:10px 10px 11px!important;
    gap:0!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .product-body h3{
    min-height:40px!important;
    margin:0 0 3px!important;
    font-size:14px!important;
    line-height:1.28!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .sku-row{
    margin-bottom:1px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .sku{
    font-size:11px!important;
    line-height:1.2!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .carton-note{
    min-height:auto!important;
    padding:3px 0 0!important;
    margin:0 0 5px!important;
    font-size:12px!important;
    line-height:1.25!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .price{
    margin:5px 0 4px!important;
    font-size:15px!important;
    line-height:1.2!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .price del{
    display:inline-block!important;
    margin-right:4px!important;
    font-size:12px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .price small,
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .price em{
    font-size:10px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .trade-card-summary{
    margin:4px 0 6px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .trade-card-summary span{
    padding:5px 7px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .trade-card-summary b{
    font-size:11px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .trade-card-summary small{
    font-size:8px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .card-order{
    grid-template-columns:minmax(0,1fr) 74px!important;
    gap:7px!important;
    align-items:end!important;
    margin-top:7px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .qty{
    height:38px!important;
    border-radius:8px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .qty input{
    font-size:13px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .product-add-btn{
    width:74px!important;
    min-width:74px!important;
    min-height:38px!important;
    height:38px!important;
    border-radius:8px!important;
    padding:0 10px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .product-add-btn svg{
    flex:0 0 14px!important;
    width:14px!important;
    height:14px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .product-add-btn span{
    font-size:11px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .carton-hint{
    display:block!important;
    grid-column:1/-1!important;
    margin-top:3px!important;
    font-size:10px!important;
    line-height:1.2!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .frequency-meta{
    gap:6px!important;
    margin:6px 2px 0!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .frequency-meta span{
    padding:4px 7px!important;
    font-size:8.5px!important;
  }
}

@media(max-width:820px){
  body:not(.admin-body):not(.admin-login) .buy-again-page .frequent-product-grid{
    gap:10px!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .product-card .product-body{
    gap:0!important;
  }
  body:not(.admin-body):not(.admin-login) .buy-again-page .frequency-meta{
    margin:6px 1px 0!important;
  }
}

/* =========================================================
   S3 MAX v3.14.6 — unified compact catalogue cards + multi-buy
   ========================================================= */
@media(min-width:821px){
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-grid{
    gap:10px!important;
    align-items:stretch!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card{
    border-radius:12px!important;
    height:100%!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .product-img{
    height:200px!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .product-body{
    padding:10px 10px 11px!important;
    gap:0!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .product-body h3{
    min-height:40px!important;
    margin:0 0 3px!important;
    font-size:14px!important;
    line-height:1.28!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .sku-row{
    min-height:auto!important;
    margin:0 0 1px!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .sku{
    font-size:11px!important;
    line-height:1.2!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .carton-note{
    min-height:auto!important;
    padding:3px 0 0!important;
    margin:0 0 5px!important;
    font-size:12px!important;
    line-height:1.25!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .price{
    margin:5px 0 4px!important;
    font-size:15px!important;
    line-height:1.2!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .price del{
    display:inline-block!important;
    margin-right:4px!important;
    font-size:12px!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .price small,
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .price em{
    font-size:10px!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .trade-card-summary{
    margin:4px 0 6px!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .trade-card-summary span{
    padding:5px 7px!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .trade-card-summary b{font-size:11px!important}
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .trade-card-summary small{font-size:8px!important}
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .card-order{
    grid-template-columns:minmax(0,1fr) 74px!important;
    gap:7px!important;
    align-items:end!important;
    margin-top:auto!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .qty{
    height:38px!important;
    border-radius:8px!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .qty input{font-size:13px!important}
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .product-add-btn{
    width:74px!important;
    min-width:74px!important;
    min-height:38px!important;
    height:38px!important;
    padding:0 9px!important;
    border-radius:8px!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .product-add-btn svg{
    width:14px!important;height:14px!important;flex:0 0 14px!important;
  }
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .product-add-btn span{font-size:11px!important}
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .carton-hint{
    margin-top:3px!important;
    font-size:10px!important;
    line-height:1.2!important;
  }
}

/* Buy Again: selection is top-left, heart is a clean fixed top-right control. */
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-product-wrap{position:relative!important}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .product-card .save-product-form{
  top:10px!important;right:10px!important;bottom:auto!important;left:auto!important;z-index:15!important;
}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .product-card .save-product-btn{
  width:31px!important;height:31px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 3px 10px rgba(20,45,70,.10)!important;
}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-select-toggle{
  position:absolute;top:10px;left:10px;z-index:16;display:inline-flex;align-items:center;gap:6px;margin:0;padding:6px 9px;border:1px solid #d7e1ea;border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 3px 10px rgba(20,45,70,.08);font-size:10px;font-weight:800;color:#193650;cursor:pointer;user-select:none;
}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-select-toggle input{width:14px;height:14px;min-height:0;margin:0;accent-color:#075cad}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-product-wrap.is-selected .product-card{border-color:#67a6dd!important;box-shadow:0 0 0 2px rgba(7,92,173,.10)!important}

body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-toolbar{
  display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 14px;padding:12px 14px;border:1px solid #dce6ee;border-radius:11px;background:#f8fbfd;
}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-copy{min-width:0}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-copy .section-kicker{display:block;margin-bottom:2px;font-size:9px!important}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-copy strong{display:inline-block;margin-right:8px;font-size:13px;color:#10243e}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-copy small{font-size:10.5px;color:#68798a!important}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-actions .btn{min-height:38px;padding:9px 13px}
body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-actions .btn[disabled]{opacity:.45;cursor:not-allowed;transform:none!important}

@media(max-width:820px){
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .product-body{padding:9px!important}
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .product-body h3{min-height:34px!important;margin-bottom:3px!important}
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .carton-note{margin-bottom:4px!important;padding-top:2px!important}
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .price{margin:4px 0!important}
  body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-toolbar{align-items:stretch;flex-direction:column;gap:9px;padding:10px;margin-bottom:10px}
  body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-copy small{display:block;margin-top:2px}
  body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-actions{display:grid;grid-template-columns:auto minmax(0,1fr);width:100%}
  body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-bulk-actions .btn{width:100%;padding:9px 10px;font-size:10px}
  body.page-frequently-ordered:not(.admin-body):not(.admin-login) .frequent-select-toggle{top:8px;left:8px;padding:5px 7px;font-size:9px}
  body.page-frequently-ordered:not(.admin-body):not(.admin-login) .product-card .save-product-form{top:8px!important;right:8px!important}
}

/* =========================================================
   S3 MAX v3.14.7 — fixed save control + compact carton hint
   ========================================================= */
body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .save-product-form{
  top:10px!important;
  right:10px!important;
  bottom:auto!important;
  left:auto!important;
  z-index:18!important;
}
body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .save-product-btn{
  width:31px!important;
  height:31px!important;
  background:rgba(255,255,255,.97)!important;
  border-color:#d7e1ea!important;
  box-shadow:0 3px 10px rgba(20,45,70,.10)!important;
}
body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .trade-card-summary small{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.25!important;
}
body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .card-order>div{
  align-self:end!important;
}
body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .carton-hint{
  display:none!important;
}
@media(max-width:820px){
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .save-product-form{
    top:8px!important;
    right:8px!important;
  }
}

/* =========================================================
   S3 MAX v3.14.8 — moving homepage brands + shorter compact cards
   ========================================================= */
/* Homepage brand logos are display-only and move continuously right-to-left. */
body:not(.admin-body):not(.admin-login) .home-brands-marquee-section{
  overflow:hidden!important;
}
body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .section-head{
  margin-bottom:12px!important;
}
body:not(.admin-body):not(.admin-login) .brand-marquee{
  width:100%!important;
  overflow:hidden!important;
  position:relative!important;
  padding:2px 0!important;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 4%,#000 96%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0,#000 4%,#000 96%,transparent 100%);
}
body:not(.admin-body):not(.admin-login) .brand-marquee-track{
  display:flex!important;
  width:max-content!important;
  will-change:transform;
  animation:s3-brand-marquee 28s linear infinite;
}
body:not(.admin-body):not(.admin-login) .brand-marquee-group{
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  gap:14px!important;
  padding-right:14px!important;
}
body:not(.admin-body):not(.admin-login) .brand-marquee-item{
  width:170px!important;
  height:88px!important;
  flex:0 0 170px!important;
  padding:10px 14px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  background:#fff!important;
  border:1px solid #e0e7ee!important;
  border-radius:10px!important;
  user-select:none!important;
  cursor:default!important;
}
body:not(.admin-body):not(.admin-login) .brand-marquee-item img{
  width:auto!important;
  max-width:120px!important;
  height:auto!important;
  max-height:48px!important;
  object-fit:contain!important;
  pointer-events:none!important;
}
body:not(.admin-body):not(.admin-login) .brand-marquee-item span{
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:10px!important;
  line-height:1.1!important;
  font-weight:700!important;
  color:#52667a!important;
  pointer-events:none!important;
}
@keyframes s3-brand-marquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@media(hover:hover){
  body:not(.admin-body):not(.admin-login) .brand-marquee:hover .brand-marquee-track{animation-play-state:paused}
}

/* The unified compact cards are a little shorter while retaining readable imagery. */
@media(min-width:821px){
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .product-img{
    height:185px!important;
  }
}
@media(max-width:820px){
  body:not(.admin-body):not(.admin-login) .brand-marquee-track{animation-duration:23s}
  body:not(.admin-body):not(.admin-login) .brand-marquee-group{gap:10px!important;padding-right:10px!important}
  body:not(.admin-body):not(.admin-login) .brand-marquee-item{width:138px!important;flex-basis:138px!important;height:76px!important;padding:8px 10px!important}
  body:not(.admin-body):not(.admin-login) .brand-marquee-item img{max-width:100px!important;max-height:40px!important}
  body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .product-img{
    height:155px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body:not(.admin-body):not(.admin-login) .brand-marquee{overflow-x:auto!important;-webkit-mask-image:none!important;mask-image:none!important}
  body:not(.admin-body):not(.admin-login) .brand-marquee-track{animation:none!important}
  body:not(.admin-body):not(.admin-login) .brand-marquee-group[aria-hidden="true"]{display:none!important}
}

/* =========================================================
   S3 MAX v3.14.9 — reliable catalogue infinite loading
   ========================================================= */
.infinite-products-sentinel.has-error{cursor:pointer;color:#0d5fac;font-weight:700}
.infinite-products-sentinel.has-error:focus-visible{outline:2px solid #0d5fac;outline-offset:3px;border-radius:8px}

/* =========================================================
   S3 MAX v3.15.1 — cart recommendations + clearer headers
   ========================================================= */
@media(min-width:761px){
  body.page-cart .cart-table th{
    font-size:12.5px!important;
    line-height:1.2!important;
    padding:13px 14px!important;
    font-weight:850!important;
    letter-spacing:.015em!important;
  }
  body.page-cart .cart-table th:nth-child(1){min-width:340px!important}
  body.page-cart .cart-table th:nth-child(2){width:122px!important}
  body.page-cart .cart-table th:nth-child(3){width:142px!important}
  body.page-cart .cart-table th:nth-child(4){width:118px!important}
  body.page-cart .cart-table th:nth-child(5){width:136px!important}
}

body.page-cart .cart-suggested-form{
  border-top:1px solid #e3e9ef;
  padding:14px 16px 16px;
  background:#fbfcfd;
}
body.page-cart .cart-suggested-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:10px;
}
body.page-cart .cart-suggested-head span{
  display:block;
  font-size:13.5px;
  line-height:1.2;
  font-weight:850;
  color:#152d45;
}
body.page-cart .cart-suggested-head small{
  display:block;
  margin-top:2px;
  font-size:10.5px;
  line-height:1.3;
  color:#66798b;
}
body.page-cart .cart-suggested-head .btn{
  flex:0 0 auto;
  min-height:34px;
  padding:8px 12px;
}
body.page-cart .cart-suggested-head .btn:disabled{
  opacity:.42;
  cursor:not-allowed;
  transform:none!important;
}
body.page-cart .cart-suggested-list{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
}
body.page-cart .cart-suggested-card{
  position:relative;
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:64px;
  padding:6px 42px 6px 7px;
  border:1px solid #e1e7ec;
  border-radius:8px;
  background:#fff;
  cursor:pointer;
  transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease;
}
body.page-cart .cart-suggested-card:hover{
  border-color:#b8cfe4;
  background:#fafdff;
}
body.page-cart .cart-suggested-card.is-selected{
  border-color:#7fb1dc;
  background:#f3f9ff;
  box-shadow:inset 3px 0 0 #0b65b7;
}
body.page-cart .cart-suggested-card>img{
  width:52px;
  height:52px;
  object-fit:contain;
  border-radius:6px;
  background:#fff;
}
body.page-cart .cart-suggested-copy{
  min-width:0;
}
body.page-cart .cart-suggested-copy strong,
body.page-cart .cart-suggested-copy small,
body.page-cart .cart-suggested-copy b{
  display:block;
}
body.page-cart .cart-suggested-copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12.5px;
  line-height:1.22;
  color:#172d43;
}
body.page-cart .cart-suggested-copy small{
  margin-top:2px;
  font-size:9.5px;
  line-height:1.2;
  color:#718293;
}
body.page-cart .cart-suggested-copy b{
  margin-top:3px;
  font-size:10.5px;
  line-height:1.2;
  color:#174d7c;
}
body.page-cart .cart-suggested-card>input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
body.page-cart .cart-suggested-checkmark{
  position:absolute;
  top:8px;
  right:9px;
  width:19px;
  height:19px;
  border:1.5px solid #aebdca;
  border-radius:4px;
  background:#fff;
  box-shadow:0 1px 2px rgba(22,45,68,.05);
}
body.page-cart .cart-suggested-card>input:checked+.cart-suggested-checkmark{
  border-color:#0b65b7;
  background:#0b65b7;
}
body.page-cart .cart-suggested-card>input:checked+.cart-suggested-checkmark:after{
  content:"";
  position:absolute;
  left:5px;
  top:2px;
  width:5px;
  height:9px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}
body.page-cart .cart-suggested-card>input:focus-visible+.cart-suggested-checkmark{
  outline:3px solid rgba(11,101,183,.18);
  outline-offset:2px;
}

@media(max-width:760px){
  body.page-cart .cart-suggested-form{
    margin-top:8px;
    padding:11px;
    border:1px solid #e1e7ec;
    border-radius:11px;
    background:#fff;
  }
  body.page-cart .cart-suggested-head{
    align-items:flex-start;
    margin-bottom:8px;
  }
  body.page-cart .cart-suggested-head span{font-size:13px}
  body.page-cart .cart-suggested-head small{display:none}
  body.page-cart .cart-suggested-head .btn{
    min-height:32px;
    padding:7px 9px;
    font-size:9.5px;
  }
  body.page-cart .cart-suggested-list{gap:5px}
  body.page-cart .cart-suggested-card{
    grid-template-columns:46px minmax(0,1fr);
    min-height:57px;
    padding:5px 38px 5px 6px;
    gap:8px;
    border-radius:7px;
  }
  body.page-cart .cart-suggested-card>img{
    width:46px;
    height:46px;
  }
  body.page-cart .cart-suggested-copy strong{font-size:11.5px}
  body.page-cart .cart-suggested-copy small{font-size:9px}
  body.page-cart .cart-suggested-copy b{font-size:9.5px}
  body.page-cart .cart-suggested-checkmark{
    top:7px;
    right:8px;
    width:18px;
    height:18px;
  }
}

/* =========================================================
   S3 MAX v3.15.2 — horizontal cart recommendations
   ========================================================= */
@media(min-width:761px){
  body.page-cart .cart-suggested-list{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.page-cart .cart-suggested-card{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    min-height:190px!important;
    padding:9px 34px 10px 9px!important;
    gap:7px!important;
  }
  body.page-cart .cart-suggested-card>img{
    width:100%!important;
    height:96px!important;
    object-fit:contain!important;
    margin:0 auto!important;
  }
  body.page-cart .cart-suggested-copy strong{
    white-space:normal!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    min-height:31px!important;
    font-size:11.5px!important;
    line-height:1.3!important;
  }
  body.page-cart .cart-suggested-copy small{font-size:9px!important;line-height:1.25!important}
  body.page-cart .cart-suggested-copy b{font-size:10px!important;margin-top:5px!important}
}
@media(max-width:760px){
  body.page-cart .cart-suggested-list{
    display:flex!important;
    gap:7px!important;
    overflow-x:auto!important;
    padding-bottom:4px!important;
    scroll-snap-type:x proximity;
  }
  body.page-cart .cart-suggested-card{
    flex:0 0 178px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    min-height:172px!important;
    padding:8px 32px 9px 8px!important;
    scroll-snap-align:start;
  }
  body.page-cart .cart-suggested-card>img{width:100%!important;height:82px!important;object-fit:contain!important}
  body.page-cart .cart-suggested-copy strong{white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;min-height:29px!important}
}

/* =========================================================
   S3 MAX v3.15.6 — reliable single-product image gallery
   ========================================================= */
body:not(.admin-body):not(.admin-login) .product-page-v2 .product-gallery{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image{
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  max-height:540px!important;
  padding:10px!important;
  background:#fff!important;
  border:1px solid #e3e9ef!important;
  border-radius:13px!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
}
body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
}
body:not(.admin-body):not(.admin-login) .product-page-v2 .product-thumbnails{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  width:100%!important;
  margin:9px 0 0!important;
  padding:1px 1px 5px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:thin!important;
}
body:not(.admin-body):not(.admin-login) .product-page-v2 .product-thumb{
  flex:0 0 82px!important;
  width:82px!important;
  min-width:82px!important;
  height:82px!important;
  padding:5px!important;
  border:1px solid #dbe3ea!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:none!important;
  scroll-snap-align:start!important;
  overflow:hidden!important;
}
body:not(.admin-body):not(.admin-login) .product-page-v2 .product-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}
body:not(.admin-body):not(.admin-login) .product-page-v2 .product-thumb:hover{
  border-color:#8ab7de!important;
}
body:not(.admin-body):not(.admin-login) .product-page-v2 .product-thumb.active,
body:not(.admin-body):not(.admin-login) .product-page-v2 .product-thumb[aria-current="true"]{
  border-color:#1768ad!important;
  box-shadow:0 0 0 2px rgba(23,104,173,.13)!important;
}
@media(max-width:760px){
  body:not(.admin-body):not(.admin-login) .product-page-v2 .main-image{
    aspect-ratio:1/1!important;
    height:auto!important;
    max-height:none!important;
    padding:6px!important;
  }
  body:not(.admin-body):not(.admin-login) .product-page-v2 .product-thumb{
    flex-basis:62px!important;
    width:62px!important;
    min-width:62px!important;
    height:62px!important;
    padding:4px!important;
  }
}

/* =========================================================
   S3 MAX v3.15.9 — product card, brands and basket refinement
   ========================================================= */

/* Product imagery: use the full available image area with no artificial top padding. */
body:not(.admin-body):not(.admin-login) .product-card .product-img{
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#fff!important;
  overflow:hidden!important;
}
body:not(.admin-body):not(.admin-login) .product-card .product-img>img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* Product cards already state carton qty above; keep the ordering rule concise. */
body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .trade-card-summary{
  margin:3px 0 6px!important;
}
body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .trade-card-summary span{
  padding:5px 7px!important;
}
body:is(.page-products,.page-new-in,.page-offers,.page-saved-products,.page-frequently-ordered):not(.admin-body):not(.admin-login) .product-card .trade-card-summary b{
  font-size:10.5px!important;
  line-height:1.15!important;
}

/* Single-product storefront: Inner Quantity remains in Admin only. */
body.page-product:not(.admin-body):not(.admin-login) .trade-price-metrics{
  grid-template-columns:1fr!important;
}

/* Homepage brand marquee: logo-only presentation; brand data remains managed in Admin. */
body:not(.admin-body):not(.admin-login) .brand-marquee-item{
  height:76px!important;
  padding:8px 14px!important;
  gap:0!important;
}
body:not(.admin-body):not(.admin-login) .brand-marquee-item img{
  max-width:132px!important;
  max-height:56px!important;
}
body:not(.admin-body):not(.admin-login) .brand-marquee-item span{
  display:none!important;
}

/* Desktop basket: clearer header, cleaner rows and centred operational columns. */
@media(min-width:761px){
  body.page-cart .cart-table thead th{
    height:54px!important;
    padding:15px 14px!important;
    font-size:13.5px!important;
    line-height:1.2!important;
    font-weight:850!important;
    vertical-align:middle!important;
    background:#edf2f6!important;
    color:#12263b!important;
    border-bottom:1px solid #cfd9e2!important;
  }
  body.page-cart .cart-table tbody td{
    padding:12px 14px!important;
    vertical-align:middle!important;
  }
  body.page-cart .cart-table th:nth-child(1),
  body.page-cart .cart-table td:nth-child(1){text-align:left!important}
  body.page-cart .cart-table th:nth-child(2),
  body.page-cart .cart-table th:nth-child(3),
  body.page-cart .cart-table th:nth-child(4),
  body.page-cart .cart-table th:nth-child(5),
  body.page-cart .cart-table td:nth-child(2),
  body.page-cart .cart-table td:nth-child(3),
  body.page-cart .cart-table td:nth-child(4),
  body.page-cart .cart-table td:nth-child(5){
    text-align:center!important;
  }
  body.page-cart .cart-table .cart-qty-wrap{
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.page-cart .cart-table .cart-line-total strong{
    display:inline-block!important;
    text-align:center!important;
  }
  body.page-cart .cart-table tbody tr{
    border-bottom:1px solid #e4e9ee!important;
  }
}

@media(max-width:820px){
  body:not(.admin-body):not(.admin-login) .brand-marquee-item{
    height:66px!important;
    padding:7px 10px!important;
  }
  body:not(.admin-body):not(.admin-login) .brand-marquee-item img{
    max-width:110px!important;
    max-height:48px!important;
  }
}

/* =========================================================
   S3 MAX v3.16.0 — image fit, clickable banners, cart recommendations
   ========================================================= */
/* Product cards: always show the complete product image centred, never crop/zoom it. */
body:not(.admin-body):not(.admin-login) .product-card .product-img{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  padding:0!important;
  background:#fff!important;
}
body:not(.admin-body):not(.admin-login) .product-card .product-img>img{
  width:calc(100% - 8px)!important;
  height:calc(100% - 8px)!important;
  max-width:calc(100% - 8px)!important;
  max-height:calc(100% - 8px)!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:auto!important;
  padding:0!important;
  transform:none!important;
}
body:not(.admin-body):not(.admin-login) .product-card:hover .product-img>img,
body:not(.admin-body):not(.admin-login) .product-card .product-img:hover>img{transform:none!important}

/* Homepage carousel: the banner itself is the link; no separate CTA button is needed. */
body:not(.admin-body):not(.admin-login) .carousel-slide-link{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  color:inherit!important;
  cursor:pointer!important;
}
body:not(.admin-body):not(.admin-login) .carousel-slide-link>img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
body:not(.admin-body):not(.admin-login) .carousel-slide-link .carousel-copy{pointer-events:none!important}

/* Cart recommendations: larger product photography with the selection control on the image. */
@media(min-width:761px){
  body.page-cart .cart-suggested-card{
    min-height:232px!important;
    padding:7px 8px 10px!important;
    gap:6px!important;
    overflow:hidden!important;
  }
  body.page-cart .cart-suggested-card>img{
    width:100%!important;
    height:138px!important;
    object-fit:contain!important;
    object-position:center!important;
    margin:0!important;
    padding:2px!important;
    background:#fff!important;
  }
  body.page-cart .cart-suggested-checkmark{
    top:12px!important;
    right:12px!important;
    width:21px!important;
    height:21px!important;
    box-shadow:0 2px 7px rgba(19,45,69,.16)!important;
  }
  body.page-cart .cart-suggested-copy{padding:0 2px!important}
}
@media(max-width:760px){
  body.page-cart .cart-suggested-card{
    flex-basis:188px!important;
    min-height:202px!important;
    padding:7px 8px 9px!important;
  }
  body.page-cart .cart-suggested-card>img{
    width:100%!important;
    height:112px!important;
    object-fit:contain!important;
    object-position:center!important;
    padding:2px!important;
    background:#fff!important;
  }
  body.page-cart .cart-suggested-checkmark{top:10px!important;right:10px!important}
}

/* =========================================================
   S3 MAX v3.16.3 — persistent customer basket account cue
   ========================================================= */
.saved-cart-resume{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:14px 16px;border:1px solid #d8e5ef;border-radius:10px;background:#f7fbff}
.saved-cart-resume strong{display:block;margin:2px 0 3px;font-size:15px;color:#122f49}
.saved-cart-resume p{margin:0!important;font-size:12px!important;color:#5d7081!important}
.saved-cart-resume .btn{flex:0 0 auto}
@media(max-width:640px){.saved-cart-resume{align-items:flex-start;flex-direction:column;gap:10px}.saved-cart-resume .btn{width:100%}}

/* =========================================================
   S3 MAX v3.16.6 — centred single-product image holder
   ========================================================= */
@media(min-width:1025px){
  body.page-product:not(.admin-body):not(.admin-login) .product-page-v2 .product-gallery{
    max-width:620px!important;
    justify-self:center!important;
  }
  body.page-product:not(.admin-body):not(.admin-login) .product-page-v2 .main-image{
    width:100%!important;
    height:590px!important;
    min-height:590px!important;
    max-height:590px!important;
    aspect-ratio:auto!important;
    padding:12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
    overflow:hidden!important;
  }
  body.page-product:not(.admin-body):not(.admin-login) .product-page-v2 .main-image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    margin:auto!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:50% 50%!important;
  }
}

/* =========================================================
   S3 MAX v3.16.7 — full-screen product gallery viewer
   ========================================================= */
body:not(.admin-body):not(.admin-login) .image-lightbox{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px 82px!important;
  background:rgba(7,15,25,.96)!important;
  overflow:hidden!important;
  touch-action:pan-y!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox[hidden]{display:none!important}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-stage{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(1180px,calc(100vw - 180px))!important;
  height:min(88vh,900px)!important;
  min-width:0!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-stage img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  clip-path:none!important;
  background:#fff!important;
  border-radius:10px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.32)!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-close{
  position:absolute!important;
  top:18px!important;
  right:22px!important;
  z-index:5!important;
  width:44px!important;
  height:44px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.3)!important;
  border-radius:50%!important;
  background:rgba(0,0,0,.34)!important;
  color:#fff!important;
  font-size:31px!important;
  line-height:1!important;
  cursor:pointer!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-nav{
  position:absolute!important;
  top:50%!important;
  z-index:5!important;
  width:52px!important;
  height:52px!important;
  margin:0!important;
  padding:0!important;
  transform:translateY(-50%)!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.3)!important;
  border-radius:50%!important;
  background:rgba(0,0,0,.34)!important;
  color:#fff!important;
  font-size:38px!important;
  line-height:1!important;
  cursor:pointer!important;
  backdrop-filter:blur(6px)!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-prev{left:20px!important;right:auto!important}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-next{right:20px!important;left:auto!important}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-nav:hover,
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-close:hover{background:rgba(255,255,255,.15)!important;border-color:rgba(255,255,255,.55)!important}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-count{
  position:absolute!important;
  left:50%!important;
  bottom:14px!important;
  transform:translateX(-50%)!important;
  z-index:4!important;
  min-width:58px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.58)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1!important;
  text-align:center!important;
  letter-spacing:.02em!important;
  backdrop-filter:blur(6px)!important;
}
@media(max-width:760px){
  body:not(.admin-body):not(.admin-login) .image-lightbox{padding:58px 12px 64px!important}
  body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-stage{width:100%!important;height:calc(100dvh - 126px)!important;max-height:none!important}
  body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-stage img{max-width:100%!important;max-height:100%!important;border-radius:8px!important}
  body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-nav{width:42px!important;height:42px!important;font-size:31px!important;background:rgba(0,0,0,.46)!important}
  body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-prev{left:10px!important}
  body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-next{right:10px!important}
  body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-close{top:10px!important;right:10px!important;width:40px!important;height:40px!important;font-size:28px!important}
  body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-count{bottom:8px!important}
}

/* =========================================================
   S3 MAX v3.16.8 — product zoom icon + interactive lightbox zoom
   ========================================================= */
body.page-product:not(.admin-body):not(.admin-login) .product-page-v2 .main-image{
  cursor:zoom-in!important;
}
body.page-product:not(.admin-body):not(.admin-login) .product-page-v2 .main-image .image-zoom-label.large{
  position:absolute!important;
  right:14px!important;
  bottom:14px!important;
  left:auto!important;
  top:auto!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.76)!important;
  border-radius:50%!important;
  background:rgba(8,38,70,.82)!important;
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:none!important;
  box-shadow:0 7px 18px rgba(10,36,63,.18)!important;
  backdrop-filter:blur(5px)!important;
}
body.page-product:not(.admin-body):not(.admin-login) .product-page-v2 .main-image .image-zoom-label.large svg{
  width:21px!important;
  height:21px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.page-product:not(.admin-body):not(.admin-login) .product-page-v2 .main-image:hover .image-zoom-label.large{
  background:rgba(5,92,173,.94)!important;
  transform:scale(1.04)!important;
}

body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-stage{
  overflow:hidden!important;
  touch-action:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-stage img{
  transform-origin:center center!important;
  transition:transform .18s ease!important;
  will-change:transform!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
  touch-action:none!important;
  cursor:zoom-in!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-stage.is-interacting img{
  transition:none!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-stage.is-zoomed img{
  cursor:grab!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-stage.is-dragging img{
  cursor:grabbing!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-zoom-help{
  position:absolute!important;
  left:50%!important;
  top:14px!important;
  transform:translateX(-50%)!important;
  z-index:4!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.48)!important;
  color:rgba(255,255,255,.92)!important;
  font-size:10px!important;
  font-weight:750!important;
  line-height:1!important;
  white-space:nowrap!important;
  pointer-events:none!important;
  backdrop-filter:blur(5px)!important;
}
body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-zoom-help[hidden]{display:none!important}

@media(max-width:760px){
  body.page-product:not(.admin-body):not(.admin-login) .product-page-v2 .main-image .image-zoom-label.large{
    right:10px!important;
    bottom:10px!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
  }
  body.page-product:not(.admin-body):not(.admin-login) .product-page-v2 .main-image .image-zoom-label.large svg{
    width:19px!important;
    height:19px!important;
  }
  body:not(.admin-body):not(.admin-login) .image-lightbox .lightbox-zoom-help{
    top:8px!important;
    font-size:9px!important;
  }
}

/* =========================================================
   S3 MAX v3.16.9 — 6 related products, centred categories,
   cleaner header benefit banners and compact-device banner removal
   ========================================================= */

/* Header mini banners: one clean surface, no double/extra border. */
body:not(.admin-body):not(.admin-login) .header-benefit-banners a{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  border-radius:12px!important;
  overflow:hidden!important;
}
body:not(.admin-body):not(.admin-login) .header-benefit-banners a:hover{
  border:0!important;
  box-shadow:0 6px 16px rgba(18,45,77,.07)!important;
  transform:translateY(-1px)!important;
}
body:not(.admin-body):not(.admin-login) .header-benefit-banners img{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:#fff!important;
}

/* Browse by Category: centred wrapped rows. Desktop is exactly 11 per first row. */
body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2,
body:not(.admin-body):not(.admin-login) .catalogue-category-grid{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:stretch!important;
  gap:12px!important;
  width:100%!important;
  overflow:visible!important;
  padding-top:5px!important;
  padding-bottom:12px!important;
}
body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-card,
body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card{
  flex:0 0 calc((100% - 120px) / 11)!important;
  width:calc((100% - 120px) / 11)!important;
  min-width:0!important;
  max-width:none!important;
  min-height:145px!important;
  padding:10px 7px 12px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
}
body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-photo,
body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-thumb{
  width:96px!important;
  height:96px!important;
  min-width:96px!important;
  min-height:96px!important;
  margin:0 auto 8px!important;
}
body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-card strong,
body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card b{
  margin-top:auto!important;
  font-size:12.5px!important;
  line-height:1.22!important;
  text-align:center!important;
}

@media(max-width:1180px){
  body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-card,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card{
    flex-basis:calc((100% - 60px) / 6)!important;
    width:calc((100% - 60px) / 6)!important;
    min-height:142px!important;
  }
  body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-photo,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-thumb{
    width:92px!important;height:92px!important;min-width:92px!important;min-height:92px!important;
  }
}
@media(max-width:820px){
  body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid{gap:10px!important;padding-bottom:10px!important}
  body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-card,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card{
    flex-basis:calc((100% - 30px) / 4)!important;
    width:calc((100% - 30px) / 4)!important;
    min-height:132px!important;
    padding:8px 5px 10px!important;
  }
  body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-photo,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-thumb{
    width:82px!important;height:82px!important;min-width:82px!important;min-height:82px!important;
  }
}
@media(max-width:560px){
  body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid{gap:9px!important}
  body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-card,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card{
    flex-basis:calc((100% - 18px) / 3)!important;
    width:calc((100% - 18px) / 3)!important;
    min-height:124px!important;
  }
  body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-photo,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-thumb{
    width:74px!important;height:74px!important;min-width:74px!important;min-height:74px!important;
  }
  body:not(.admin-body):not(.admin-login) .category-grid.category-grid-v2 .category-card strong,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card b{font-size:11.5px!important}
}

/* Tablet/mobile: remove large page/section image banners to keep catalogue content first. */
@media(max-width:1024px){
  body:not(.admin-body):not(.admin-login) .responsive-page-banner,
  body:not(.admin-body):not(.admin-login) .promo-banner-section,
  body:not(.admin-body):not(.admin-login) .home-promo-section,
  body:not(.admin-body):not(.admin-login) .extra-promo-banners,
  body:not(.admin-body):not(.admin-login) .filter-banner{
    display:none!important;
  }
}
@media(max-width:1024px){
  body:not(.admin-body):not(.admin-login) .b2b-commerce-hero{
    grid-template-columns:1fr!important;
    padding-top:12px!important;
  }
  body:not(.admin-body):not(.admin-login) .b2b-commerce-hero .b2b-hero-main{display:none!important}
}

/* =========================================================
   S3 MAX v3.17.0 — unified homepage/category circles
   Homepage now uses exactly the same category card system as
   the catalogue category selector and shows every active category.
   ========================================================= */
body:not(.admin-body):not(.admin-login) .home-category-section{
  padding-top:30px!important;
  padding-bottom:30px!important;
}
body:not(.admin-body):not(.admin-login) .home-category-grid,
body:not(.admin-body):not(.admin-login) .catalogue-category-grid{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:16px 12px!important;
  width:100%!important;
  overflow:visible!important;
  padding:6px 0 14px!important;
}
body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-card,
body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card{
  flex:0 0 calc((100% - 120px) / 11)!important;
  width:calc((100% - 120px) / 11)!important;
  min-width:0!important;
  max-width:none!important;
  min-height:132px!important;
  padding:4px 4px 8px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
  overflow:visible!important;
}
body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-thumb,
body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-thumb{
  box-sizing:border-box!important;
  width:96px!important;
  height:96px!important;
  min-width:96px!important;
  min-height:96px!important;
  max-width:96px!important;
  max-height:96px!important;
  flex:0 0 96px!important;
  aspect-ratio:1 / 1!important;
  margin:0 auto 9px!important;
  padding:7px!important;
  border:2px solid #dfe6ed!important;
  border-radius:50%!important;
  background:#fff!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-thumb img,
body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-thumb img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:auto!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  border-radius:0!important;
  clip-path:none!important;
  transform:none!important;
}
body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-card:hover .catalogue-category-thumb,
body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card:hover .catalogue-category-thumb{
  border-color:#0b67bd!important;
  box-shadow:0 0 0 4px rgba(11,103,189,.07)!important;
  transform:none!important;
}
body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-card b,
body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card b{
  display:block!important;
  width:100%!important;
  margin:0!important;
  font-size:12.5px!important;
  line-height:1.25!important;
  color:#111!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  text-align:center!important;
}

@media(max-width:1180px){
  body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-card,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card{
    flex-basis:calc((100% - 60px) / 6)!important;
    width:calc((100% - 60px) / 6)!important;
  }
  body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-thumb,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-thumb{
    width:92px!important;height:92px!important;min-width:92px!important;min-height:92px!important;max-width:92px!important;max-height:92px!important;flex-basis:92px!important;
  }
}
@media(max-width:820px){
  body:not(.admin-body):not(.admin-login) .home-category-section{padding-top:22px!important;padding-bottom:22px!important}
  body:not(.admin-body):not(.admin-login) .home-category-grid,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid{gap:14px 10px!important}
  body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-card,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card{
    flex-basis:calc((100% - 30px) / 4)!important;
    width:calc((100% - 30px) / 4)!important;
    min-height:120px!important;
  }
  body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-thumb,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-thumb{
    width:82px!important;height:82px!important;min-width:82px!important;min-height:82px!important;max-width:82px!important;max-height:82px!important;flex-basis:82px!important;padding:6px!important;
  }
}
@media(max-width:560px){
  body:not(.admin-body):not(.admin-login) .home-category-grid,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid{gap:13px 9px!important}
  body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-card,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card{
    flex-basis:calc((100% - 18px) / 3)!important;
    width:calc((100% - 18px) / 3)!important;
    min-height:112px!important;
    padding-left:2px!important;padding-right:2px!important;
  }
  body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-thumb,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-thumb{
    width:74px!important;height:74px!important;min-width:74px!important;min-height:74px!important;max-width:74px!important;max-height:74px!important;flex-basis:74px!important;padding:5px!important;
  }
  body:not(.admin-body):not(.admin-login) .home-category-grid .catalogue-category-card b,
  body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card b{font-size:11.5px!important}
}


/* =========================================================
   S3 MAX v3.17.1 — category selection polish
   ========================================================= */
body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card.active b{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:6px 14px!important;
  border:1px solid #8abbe8!important;
  border-radius:999px!important;
  background:#eaf4ff!important;
  color:#0b4f8a!important;
  font-weight:800!important;
  line-height:1.15!important;
  box-shadow:none!important;
}
body:not(.admin-body):not(.admin-login) .catalogue-category-grid .catalogue-category-card.active .catalogue-category-thumb{
  border-color:#0b67bd!important;
  box-shadow:0 0 0 3px rgba(11,103,189,.10)!important;
}

/* =========================================================
   S3 MAX v3.18.1 — reliable homepage brand marquee
   ========================================================= */
body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee-track{
  display:flex!important;
  flex:none!important;
  width:max-content!important;
  min-width:max-content!important;
  transform:translate3d(0,0,0);
  animation:s3-brand-marquee 30s linear infinite!important;
}
body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee-group{
  flex:none!important;
  width:max-content!important;
}
@keyframes s3-brand-marquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

/* =========================================================
   S3 MAX v3.18.2 — Brands marquee title, controls + no scrollbar
   ========================================================= */
body:not(.admin-body):not(.admin-login) .home-brands-marquee-section{
  overflow:hidden!important;
}
body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee-heading{
  display:flex!important;
  margin-bottom:12px!important;
}
body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee-heading h2{
  margin:0!important;
}
body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee{
  overflow:hidden!important;
  overflow-x:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee::-webkit-scrollbar{
  width:0!important;height:0!important;display:none!important;
}
@media(prefers-reduced-motion:reduce){
  body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee{
    overflow:hidden!important;
  }
  body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee-track{
    animation:none!important;
    transform:none!important;
  }
}

/* S3 MAX v3.18.5 — original fixed-size, uninterrupted brands strip (v3.18.1 timing). */
body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee-track{
  animation:s3-brand-marquee 30s linear infinite!important;
}
@media(max-width:820px){
  body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee-track{animation-duration:30s!important;}
}
@media(prefers-reduced-motion:reduce){
  body:not(.admin-body):not(.admin-login) .home-brands-marquee-section .brand-marquee-track{animation:none!important;transform:none!important;}
}

/* v3.18.7 catalogue batches: clear loading state and native-page fallback. */
.infinite-products-sentinel{flex-wrap:wrap;min-height:72px;padding:12px 0}
.infinite-products-sentinel .infinite-spinner{display:none}
.infinite-products-sentinel.is-loading .infinite-spinner{display:block}
.infinite-products-sentinel .btn{min-width:145px;text-align:center}
.catalogue-page-prev{display:flex;justify-content:center;margin:12px 0}

/* v3.18.9: compact customer account password recovery */
.customer-reset-card{max-width:490px;width:100%}
.customer-reset-kicker{display:block;letter-spacing:.09em;font-weight:750;color:#315a86;font-size:11px;margin-bottom:9px}
.customer-reset-card h1{margin-top:0}
.customer-reset-card .stagger-form{margin:18px 0 10px}
.customer-reset-card .stagger-form label{display:block;text-align:left}
.customer-reset-help{font-size:13px;color:#66758a;line-height:1.5;margin:14px 0}
.customer-reset-back{display:inline-block;margin-top:16px;color:#143d6b;font-weight:650;text-decoration:none}
.customer-reset-back:hover,.customer-recovery-link a:hover{text-decoration:underline}
.customer-recovery-link{margin:12px 0 0;text-align:right;font-size:14px}
.customer-recovery-link a{font-weight:650;color:#143d6b;text-decoration:none}
