/* Category reference system: 1376px catalog, connected grids and buying tables.
   This file intentionally follows the older category stylesheet stack. */
:root {
  --cat-blue: #24397e;
  --cat-blue-dark: #1d2e66;
  --cat-ink: #303441;
  --cat-copy: #303441;
  --cat-muted: #626672;
  --cat-line: #d8dade;
  --cat-soft: #f4f5f7;
  --cat-wash: #f1f3f8;
  --cat-radius: 0;
}
body.storefront-clean :is(.cat-page.cat-landing,.l3-page) {
  width:min(1440px,100%); max-width:1440px; margin:0 auto;
  color:var(--cat-ink); font-family:"DM Sans",sans-serif; box-shadow:none;
}
body.storefront-clean :is(.cat-page,.l3-page) :is(h1,h2,h3) { font-family:inherit; letter-spacing:0; }
body.storefront-clean .cat-page.cat-landing .cat-crumb { padding:20px 32px 0!important; font-size:12px!important; }
body.storefront-clean .cat-page.cat-landing .cat-layout {
  display:grid!important; grid-template-columns:272px minmax(0,1fr)!important;
  padding:28px 32px 64px!important; gap:24px!important;
}
body.storefront-clean .cat-page.cat-landing :is(.l1-heading,.l2-heading) { margin:0 0 28px!important; }
body.storefront-clean .cat-page.cat-landing :is(.l1-heading h1,.l2-heading h1),
body.storefront-clean .l3-page h1.l3-h1 { font-size:25px!important; line-height:1.25!important; font-weight:700!important; margin:0 0 9px; }
body.storefront-clean .cat-page.cat-landing :is(.l1-count,.l2-count) { font-size:13px!important; color:var(--cat-muted); margin-bottom:10px; }
body.storefront-clean .cat-page.cat-landing :is(.l1-description,.l2-description),
body.storefront-clean .l3-page .l3-desc { font-size:14px!important; line-height:1.5!important; max-width:920px; }
body.storefront-clean .cat-page.cat-landing .cat-sidebar,
body.storefront-clean .l3-page .l3-sidebar { width:100%; border:1px solid var(--cat-line); border-radius:0; box-shadow:none; }
.category-nav-group { margin-bottom:34px; }
.category-connected-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); border-top:1px solid var(--cat-line); border-left:1px solid var(--cat-line); }
.category-connected-grid .img-card { min-width:0; min-height:226px; padding:16px 12px 20px; border-radius:0; border:0; border-right:1px solid var(--cat-line); border-bottom:1px solid var(--cat-line); box-shadow:none; color:#303441; }
.category-connected-grid .img-card .iw { height:142px; margin:0 0 14px; }
.category-connected-grid .img-card .iw img { width:100%; height:100%; object-fit:contain; }
.category-connected-grid .img-card .ic-lbl { font-size:14px; font-weight:400; line-height:1.35; color:#303441; }
.category-connected-grid .img-card:hover { background:#f5f6fa; box-shadow:inset 0 -3px #24397e; }
.category-shopping-grid .img-card:focus-visible { outline:3px solid #24397e; outline-offset:-3px; }
.category-family-count { display:block; margin-top:7px; color:var(--cat-muted); font-size:12px; line-height:1.4; }
.category-shopping-empty { padding:28px; border:1px solid var(--cat-line); background:var(--cat-soft); }
.category-shopping-empty p { margin:0 0 12px; }
.category-shopping-back { margin:0 0 18px; font-size:13px; }
.category-shopping-back a { color:var(--cat-blue); text-decoration:underline; }
body.storefront-clean .cat-page.cat-landing .category-connected-grid .img-card {
  min-height:226px; padding:16px 12px 20px!important; border-radius:0; box-shadow:none;
}
body.storefront-clean .cat-page.cat-landing .category-connected-grid .img-card .iw { height:142px!important; }
body.storefront-clean .cat-page.cat-landing .category-connected-grid .ic-lbl { font-size:14px!important; font-weight:400; color:#303441; }
.category-landing-filters .category-facet { margin:0; padding:0; border-top:0; }
.category-landing-filters .cat-side-block { padding:16px; }
.category-landing-filters .category-facet summary { padding:0 0 14px; }
.category-landing-filters .category-price-bounds { margin:0; }
.category-landing-filters .category-price-bounds > span { align-self:center; }
.category-landing-filters .category-facet-options { margin:0; }
.category-landing-filters .category-facet-search { background:#fff; margin-bottom:12px; }
.category-landing-filters .category-facet-native select { width:100%; }
.cat-landing .cat-side-search input { border-radius:0!important; }
.cat-landing .category-nav-group [hidden],
.category-landing-filters [hidden] { display:none!important; }
@media(min-width:769px) {
  .cat-landing .mobile-filter-disclosure > summary { display:none; }
}
body.storefront-clean .cat-page.cat-landing .l2-subcat-grid { grid-template-columns:repeat(6,minmax(0,1fr))!important; border-color:var(--cat-line); }
body.storefront-clean .cat-page.cat-landing .l2-subcat-card { min-height:226px; padding:12px 9px 18px!important; border-radius:0; border-color:var(--cat-line); box-shadow:none; }
body.storefront-clean .cat-page.cat-landing .l2-subcat-img-wrap { height:144px!important; }
body.storefront-clean .cat-page.cat-landing .l2-subcat-body { padding:10px 0 0; }
body.storefront-clean .cat-page.cat-landing .l2-subcat-title { font-size:14px!important; font-weight:400; color:#303441!important; }
.cat-side-block,.l3-side-block { padding:16px; }
.cat-side-title { font-size:14px!important; }
.cat-browse > summary { cursor:pointer; list-style:none; }
.cat-browse > summary::-webkit-details-marker { display:none; }
.cat-browse:not([open]) > summary { margin-bottom:0; }
.cat-browse:not([open]) > summary::after { content:"⌄"; }
.cat-side-search input { min-height:38px!important; border-radius:0!important; font-size:13px!important; }
.discovery-search { margin:0 0 20px; padding:12px; background:#f4f5f7; border-left:2px solid #24397e; }
.discovery-search-row { flex-wrap:wrap; }
.discovery-search-row button { width:100%; }
.category-parent-search { margin-top:28px; max-width:620px; }
.category-parent-search summary { cursor:pointer; padding:12px 0; color:#24397e; font-weight:600; }
.category-parent-search .discovery-search { margin:0; }
.category-sample { margin:28px 0; border-top:1px solid var(--cat-line); }
.category-sample > summary { padding:14px 0; cursor:pointer; color:#24397e; font-size:14px; font-weight:600; }
.category-sample .carousel-wrap { margin-top:14px; }
.category-assistance { font-size:13px; color:#626672; }
.category-refinements h2 { font-size:15px; }
.category-refinements > .discovery-scope { margin-bottom:16px; }
.category-facet { border-top:1px solid var(--cat-line); margin:14px -16px 0; padding:0 16px; }
.category-facet summary { display:flex; justify-content:space-between; padding:14px 0; cursor:pointer; list-style:none; font-size:13px; font-weight:700; color:#303441; }
.category-facet summary::-webkit-details-marker { display:none; }
.category-facet summary::after { content:"⌄"; color:#24397e; }
.category-facet[open] summary::after { content:"⌃"; }
.category-facet .discovery-facet { margin:0 0 10px; }
.category-facet select { border-radius:0; padding:8px; font-size:13px; }
.category-facet-search { width:100%; min-height:36px; border:1px solid #b9c1cf; padding:8px; font:inherit; font-size:12px; margin-bottom:8px; }
.category-facet-options { max-height:220px; overflow:auto; margin-bottom:10px; }
.category-facet-option { display:flex; align-items:flex-start; gap:7px; padding:3px 0; font-size:12px; line-height:1.4; cursor:pointer; }
.category-facet-option input { width:14px; height:14px; margin:1px 0 0; accent-color:#24397e; flex-shrink:0; }
.category-facet-option small { color:#6b6e78; margin-left:auto; }
.category-price-bounds { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto; gap:6px; align-items:end; margin:4px 0 12px; }
.category-price-bounds label { font-size:12px; color:#303441; }
.category-price-bounds input { display:block; width:100%; min-width:0; margin-top:5px; height:36px; padding:6px; border:1px solid #b9c1cf; border-radius:0; font:inherit; }
.category-price-bounds button { min-height:36px; padding:6px 9px; border:0; background:#24397e; color:#fff; font:inherit; font-size:12px; font-weight:600; cursor:pointer; }
.category-price-errors { border-left:3px solid #ff5c00; padding:8px 10px; background:#fff4ec; font-size:12px; }
.category-price-errors p { margin:4px 0; }
.category-facet-enhanced .category-facet-native { display:none; }
.category-sort { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:10px; padding:12px 0; margin-bottom:14px; border-bottom:1px solid var(--cat-line); }
.category-sort label { font-size:13px; }
.category-sort select { padding:8px; border:1px solid #acb2be; border-radius:0; background:#fff; font:inherit; font-size:13px; }
.category-sort button { padding:8px 12px; background:#24397e; color:#fff; border:0; cursor:pointer; }
body.storefront-clean .l3-page { padding:20px 32px 60px!important; }
body.storefront-clean .l3-page .l3-top-row { margin-bottom:28px; }
body.storefront-clean .l3-page .l3-crumb { font-size:12px; }
body.storefront-clean .l3-page .l3-shell,
body.storefront-clean .l3-page .l3-shell.no-related { display:grid!important; grid-template-columns:272px minmax(0,1fr)!important; gap:24px!important; }
body.storefront-clean .l3-page .l3-center { position:relative; min-width:0; }
body.storefront-clean .l3-page .l3-count { font-size:13px; margin-bottom:10px; }
body.storefront-clean .l3-page .l3-strip { margin:24px 0; }
body.storefront-clean .l3-page .l3-strip-heading { font-size:14px; margin:0 0 12px; }
body.storefront-clean .l3-page .l3-strip-thumb { flex:0 0 112px; padding:7px; border:1px solid var(--cat-line); border-radius:0; background:#fff; }
body.storefront-clean .l3-page .l3-strip-thumb img { width:96px; height:92px; object-fit:contain; }
body.storefront-clean .l3-page .l3-strip-name { display:block; font-size:11px; line-height:1.35; font-weight:400; overflow:visible; }
body.storefront-clean .l3-page .l3-related-inline { margin:22px 0; border:0; padding:0; background:transparent; }
body.storefront-clean .l3-page .l3-related-inline h2 { font-size:14px; margin:0 0 10px; }
body.storefront-clean .l3-page .l3-related-inline-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:0; border:1px solid var(--cat-line); }
body.storefront-clean .l3-page .l3-related-inline-card {
  display:flex; flex-direction:row!important; align-items:center; justify-content:flex-start!important;
  min-height:72px!important; height:auto; gap:10px; border:0; border-right:1px solid var(--cat-line);
  padding:12px!important; font-size:12px; color:#303441; border-radius:0; text-align:left;
}
body.storefront-clean .l3-page .l3-related-inline-card > span:last-child { flex:1; min-width:0; overflow-wrap:normal; word-break:normal; }
body.storefront-clean .l3-page .l3-related-inline-img { width:48px; height:48px; flex:0 0 48px; }
body.storefront-clean .l3-page .l3-related-inline-img img { width:100%; height:100%; object-fit:contain; }
body.storefront-clean .l3-page .l3-products-heading { margin:18px 0 14px; }
body.storefront-clean .l3-page .l3-products-heading h2 { font-size:18px; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) { display:block!important; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) .l3-prod-section { display:block; min-width:0; overflow:visible!important; margin:0 0 28px; border:0; scroll-margin-top:20px; }
.l3-table-scroll { min-width:0; max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; }
.l3-table-scroll:focus-visible { outline:2px solid var(--cat-blue); outline-offset:2px; }
#l3ListView.leaf-grid-mode .l3-table-scroll { display:contents; overflow:visible; }
.l3-compare-label { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip-path:inset(50%)!important; white-space:nowrap!important; border:0!important; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) .l3-section-head { display:flex!important; align-items:center; gap:14px; padding:10px 12px; background:#edeef0; border:0; border-radius:0; }
.l3-family-image { width:58px; height:58px; flex:0 0 58px; object-fit:contain; background:#fff; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) .l3-section-head h2 { font-size:17px; line-height:1.35; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) table.prod-table { display:table!important; width:100%; min-width:1040px; table-layout:auto; font-size:12px; border-collapse:collapse; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) table.prod-table :is(th,td) { word-break:normal; overflow-wrap:normal; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) table.prod-table th:first-child { min-width:76px; white-space:nowrap; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) .l3-chk label { display:inline-flex; align-items:center; justify-content:center; min-width:32px; min-height:36px; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) :is(.l3-spec-cell,.l3-pack,.l3-model,.l3-price,.l3-avail,.l3-add) { min-width:88px; white-space:nowrap; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) table.prod-table thead { display:table-header-group!important; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) table.prod-table tbody { display:table-row-group!important; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) table.prod-table tr { display:table-row!important; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) table.prod-table th { font-size:11px; white-space:normal; background:#fff; padding:10px 8px; border-bottom:1px solid #9da2ab; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) table.prod-table td { display:table-cell!important; padding:10px 8px; border-bottom:1px solid #dedfe3; vertical-align:middle; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) td::before { content:none!important; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) .l3-img .pimg { width:48px; height:48px; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) .l3-name { min-width:190px; font-size:12px; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) .l3-name a { color:#24397e; }
body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) .l3-attr { min-width:65px; white-space:normal; }
body.storefront-clean .l3-page .l3-add-btn { background:#24397e; border-radius:0; font-size:12px; min-height:36px; }
body.storefront-clean .l3-page .l3-add-btn:disabled { opacity:.65; cursor:wait; }
.l3-cart-status { font-size:12px; color:#24397e; margin:8px 0; }
.l3-cart-status:empty { display:none; }
.l3-mobile-filter-toggle { display:none; }
#l3ListView.leaf-grid-mode .show-all-row { min-width:0!important; }
#l3ListView.leaf-grid-mode .show-all-btn { max-width:100%; white-space:normal; }
#l3ListView.leaf-grid-mode .l3-spec-cell { grid-column:1 / -1; font-size:12px; min-width:0; }
#l3ListView.leaf-grid-mode .l3-spec-cell::before { content:attr(data-label) ": "; color:#626672; font-weight:600; }
.category-pagination { padding:20px 0; border-top:1px solid var(--cat-line); font-size:14px; }
/* Related navigation stays in normal flow: never size intro rows to an aside. */
body.storefront-clean .l3-page .l3-center { display:block; }
body.storefront-clean .l3-page .l3-center > * { min-width:0; }
body.storefront-clean .l3-page .l3-related-inline { float:none; width:auto; max-width:100%; margin:18px 0; }
body.storefront-clean .l3-page .discovery-chips:empty { display:none; }
@media(max-width:1100px) and (min-width:769px) {
  body.storefront-clean .cat-page.cat-landing .cat-layout,
  body.storefront-clean .l3-page .l3-shell { grid-template-columns:230px minmax(0,1fr)!important; gap:20px!important; }
  .category-connected-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  body.storefront-clean .cat-page.cat-landing .l2-subcat-grid { grid-template-columns:repeat(4,minmax(0,1fr))!important; }
}
@media(max-width:768px) {
  body.storefront-clean .cat-page.cat-landing .cat-crumb { padding:16px 14px 0!important; font-size:11px!important; }
  body.storefront-clean .cat-page.cat-landing .cat-layout { display:block!important; padding:20px 14px 40px!important; }
  body.storefront-clean .cat-page.cat-landing .cat-sidebar { margin-bottom:20px; }
  body.storefront-clean .cat-page.cat-landing :is(.l1-heading h1,.l2-heading h1),
  body.storefront-clean .l3-page h1.l3-h1 { font-size:22px!important; }
  .category-connected-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .category-connected-grid .img-card { min-height:190px; padding:12px 9px; }
  .category-connected-grid .img-card .iw { height:118px; }
  body.storefront-clean .cat-page.cat-landing .category-connected-grid .img-card { min-height:190px; padding:12px 9px!important; }
  body.storefront-clean .cat-page.cat-landing .category-connected-grid .img-card .iw { height:118px!important; }
  body.storefront-clean .cat-page.cat-landing .l2-subcat-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  body.storefront-clean .cat-page.cat-landing .l2-subcat-card { min-height:190px; }
  body.storefront-clean .cat-page.cat-landing .l2-subcat-img-wrap { height:118px!important; }
  body.storefront-clean .l3-page { padding:16px 14px 40px!important; }
  body.storefront-clean .l3-page .l3-shell,
  body.storefront-clean .l3-page .l3-shell.no-related { grid-template-columns:minmax(0,1fr)!important; gap:0!important; }
  body.storefront-clean .l3-page .l3-related-inline-list { grid-template-columns:repeat(3,minmax(210px,1fr))!important; overflow-x:auto; }
  body.storefront-clean .l3-page #l3ListView:not(.leaf-grid-mode) .l3-section-head { min-width:0; position:sticky; left:0; }
  body.storefront-clean .l3-page .l3-sidebar { margin-bottom:20px; }
  body.storefront-clean .l3-page .l3-mobile-filter-toggle { display:block; }
  .l3-strip-scroll { scroll-snap-type:x proximity; }
  .l3-strip-thumb { scroll-snap-align:start; }
}
