.category-directory{--directory-dark:#365072;--directory-deep:#223752;--directory-paper:#edf1f6;--directory-card:#fff;--directory-text:#202724;--directory-line:#d0d9e5;background:var(--directory-paper);color:var(--directory-text)}
.ape .category-directory{--directory-dark:#997F4C;--directory-deep:#40351f;--directory-paper:#f5f1e8;--directory-line:#ded4c1}
.arbor .category-directory{--directory-dark:#665A38;--directory-deep:#403a26;--directory-paper:#f3f0e7;--directory-line:#ddd7c5}
.omega .category-directory{--directory-dark:#17191c;--directory-deep:#101113;--directory-paper:#17191c;--directory-card:#24272b;--directory-text:#f2f3f5;--directory-line:#444a52}
.directory-hero{position:relative;isolation:isolate;padding:28px 5.2% 45px;background:var(--directory-dark);color:#fff;overflow:hidden}
.directory-hero:before{content:'';position:absolute;inset:0;z-index:-2;background:var(--directory-image) center 43%/cover;opacity:.4}
.directory-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--directory-deep),transparent)}
.directory-hero nav{display:flex;gap:14px;font-size:13px;margin-bottom:35px}.directory-hero .eyebrow{font-size:12px;letter-spacing:.14em}.directory-hero h1{font:700 clamp(2.8rem,4.8vw,4.6rem)/1.05 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:12px 0 18px}.directory-hero>p:not(.eyebrow){max-width:660px;font-size:18px;line-height:1.6;color:#f0eee8}.directory-all{display:inline-flex;gap:35px;background:#fff;color:var(--directory-deep);padding:13px 20px;font-weight:600;margin-top:12px}
.directory-section{padding:45px 5.2% 65px;max-width:1900px;margin:auto}.directory-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}.directory-heading h2{font-size:38px;margin:0}.directory-heading p{margin:0}.directory-heading .eyebrow{font-size:11px;margin-bottom:8px;color:inherit}.directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:start}.directory-card{background:var(--directory-card);border:1px solid var(--directory-line);overflow:hidden}.directory-photo{display:block;height:270px;position:relative;overflow:hidden;background:var(--directory-deep)}.directory-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s;filter:saturate(.65) brightness(.8)}.directory-photo:hover img{transform:scale(1.035)}.omega .directory-photo img{filter:grayscale(1) brightness(.85)}.directory-photo>span{position:absolute;top:18px;left:18px;background:#fff;color:#222;padding:5px 10px;font-size:12px}.directory-card-content{padding:25px 28px 28px}.directory-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.directory-title h2{font:600 34px/1.1 'Barlow Condensed',sans-serif;margin:0}.directory-title>span{font-size:25px}.directory-shop{display:inline-block;margin:15px 0 22px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:4px}.directory-subcategories{border-top:1px solid var(--directory-line)}.directory-subcategories summary,.directory-nested summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;padding:16px 0;font-weight:600}.directory-subcategories summary::-webkit-details-marker,.directory-nested summary::-webkit-details-marker{display:none}.directory-subcategories details[open]>summary>span,.directory-subcategories[open]>summary>span{transform:rotate(45deg)}.directory-children{list-style:none;margin:0;padding:0}.directory-children>li{border-top:1px solid var(--directory-line)}.directory-category-row>a{display:flex;justify-content:space-between;gap:18px;padding:13px 0;line-height:1.4}.directory-category-row>a:hover{text-decoration:underline}.directory-nested{margin-left:16px;padding-left:16px;border-left:2px solid var(--directory-line)}.directory-nested summary{font-size:13px;padding:0 0 12px}.category-directory a:focus-visible,.category-directory summary:focus-visible{outline:3px solid currentColor;outline-offset:4px}
@media(min-width:1600px){.directory-photo{height:330px}}
@media(max-width:700px){.directory-grid{grid-template-columns:1fr}.directory-heading{display:block}.directory-heading>p{margin-top:12px}.directory-section{padding:30px 6% 45px}.directory-photo{height:240px}.directory-card-content{padding:22px}.directory-hero{padding:25px 6% 35px}.directory-title h2{font-size:30px}}

@media(min-width:1101px){.directory-photo{height:250px}.directory-card-content{padding:22px 20px}.directory-title h2{font-size:28px}}
@media(min-width:1600px){.directory-photo{height:310px}}
@media(min-width:701px) and (max-width:1100px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Fill four rows vertically, then continue in additional columns. */
.category-directory .directory-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:none;grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;padding-bottom:8px}
@media(max-width:1100px){.category-directory .directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.category-directory .directory-grid{grid-template-columns:1fr}}
.directory-popular{border-top:1px solid var(--directory-line);padding-top:40px}.directory-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.directory-product{display:flex;flex-direction:column;min-width:0;background:var(--directory-card);border:1px solid var(--directory-line)}.directory-product>a{flex:1}.directory-product-photo{position:relative;aspect-ratio:1;background:#f4f4f0;padding:20px}.directory-product-photo img{width:100%;height:100%;object-fit:contain}.directory-product-photo>span{position:absolute;left:12px;top:12px;padding:5px 9px;background:var(--directory-deep);color:white;font-size:11px;font-weight:600}.directory-product-copy{padding:20px}.directory-product-copy p{font-size:12px;margin:0 0 8px;opacity:.75}.directory-product-copy h3{font:600 24px/1.2 'Barlow Condensed',sans-serif;margin:0 0 15px}.directory-product-copy strong{font-size:17px}.directory-product .grid-add-cart{display:flex;justify-content:space-between;align-items:center;margin:0 20px 20px;padding:12px 15px;border:0;background:var(--directory-deep);color:#fff;font:600 15px 'Barlow',sans-serif;cursor:pointer}.omega .directory-product .grid-add-cart{background:#e4e7eb;color:#17191c}@media(max-width:1000px){.directory-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.directory-product-grid{gap:14px}.directory-product-copy{padding:14px}.directory-product-copy h3{font-size:21px}.directory-product .grid-add-cart{margin:0 14px 14px;padding:11px;font-size:13px}}
/* Match the shop's collapsed category sidebar while keeping four desktop cards per row. */
.directory-browse-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px;max-width:1900px;margin:auto;padding:38px 5.2% 60px}.directory-results{min-width:0}.directory-results .directory-section{padding:0 0 40px;max-width:none}.directory-results .directory-popular{padding-top:34px}.directory-sidebar{align-self:start;background:var(--directory-line);border-top:3px solid var(--directory-dark);padding:20px 16px}.directory-sidebar-heading{display:flex;gap:10px;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid #80808040}.directory-sidebar-heading h2{font:600 22px/1.2 'Barlow Condensed',sans-serif;margin:0}.directory-collapse{font:12px 'Barlow',sans-serif;background:none;color:inherit;border:0;text-decoration:underline;cursor:pointer}.directory-all-equipment{display:flex;justify-content:space-between;background:var(--directory-deep);color:white;padding:13px;margin:20px 0 12px;font-weight:600}.directory-sidebar #category-tree h3{font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin:20px 8px 10px}.directory-sidebar .category-row{display:flex;align-items:center;gap:4px}.directory-sidebar .category-row>a{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:1;min-width:0;padding:13px 7px;font-size:14px;font-weight:600}.directory-sidebar small{font-size:11px;font-weight:400;opacity:.75}.directory-sidebar .category-toggle{flex-shrink:0;width:30px;min-height:38px;border:0;background:none;color:inherit;font-size:21px;cursor:pointer}.directory-sidebar .category-children{margin-left:8px;padding-left:8px;border-left:1px solid #80808055}.directory-sidebar .category-children[hidden]{display:none}.directory-sidebar .category-children a{font-size:13px;font-weight:500}.directory-sidebar a:hover{text-decoration:underline}.directory-help{display:grid;gap:14px;margin-top:25px;padding:18px;background:var(--directory-deep);color:#fff;font-size:13px}.directory-sidebar button:focus-visible{outline:2px solid currentColor;outline-offset:2px}.directory-results .directory-card-content{padding:20px 16px}.directory-results .directory-title h2{font-size:26px}.directory-results .directory-photo{height:230px}.directory-results .directory-shop{font-size:13px}.directory-results .directory-subcategories>summary{font-size:13px}
@media(max-width:1250px){.directory-browse-layout{grid-template-columns:220px minmax(0,1fr);gap:20px;padding-left:4%;padding-right:4%}.directory-results .directory-grid,.directory-results .directory-product-grid{gap:14px}}
@media(max-width:900px){.directory-browse-layout{grid-template-columns:1fr}.directory-sidebar{width:100%}.directory-results .directory-photo{height:240px}}
.directory-search{padding:18px 20px;margin:0 0 25px;background:var(--directory-line);border-top:3px solid var(--directory-dark)}.directory-search label{display:block;font-size:13px;font-weight:600;margin-bottom:10px}.directory-search>div{display:flex;gap:10px}.directory-search input{flex:1;min-width:0;padding:14px 16px;border:1px solid #aeb6bd;background:var(--directory-card);color:var(--directory-text);font:16px 'Barlow',sans-serif}.directory-search input::placeholder{color:var(--directory-text);opacity:.65}.directory-search button{display:flex;align-items:center;gap:30px;padding:13px 22px;background:var(--directory-deep);color:#fff;border:0;font:600 16px 'Barlow',sans-serif;cursor:pointer}.directory-search input:focus-visible,.directory-search button:focus-visible{outline:2px solid var(--directory-text);outline-offset:3px}.omega .directory-search button{background:#e4e7eb;color:#17191c}@media(max-width:540px){.directory-search{padding:15px}.directory-search button{gap:10px;padding:12px}.directory-search input{padding:12px}}

/* Display Shop by category photos without added filters. */
.category-directory .directory-photo img{filter:none;mix-blend-mode:normal}

/* Match the new water-rescue directory photo to RNR category tones. */
.rescue .category-directory .directory-photo[href="shop.html?cat=water-rescue"] img{filter:grayscale(1) contrast(1.12) brightness(.85)}
.rescue .category-directory .directory-photo[href="shop.html?cat=water-rescue"]:after{content:"";position:absolute;inset:0;background:#36578d;mix-blend-mode:color;opacity:.9;pointer-events:none}
.rescue .category-directory .directory-photo[href="shop.html?cat=water-rescue"]>span{z-index:1}

/* Lift training-photo shadows and match the blue directory palette. */
.rescue .category-directory .directory-photo[href="shop.html?cat=training-services"] img{filter:grayscale(1) brightness(1.65) contrast(.78)}
.rescue .category-directory .directory-photo[href="shop.html?cat=training-services"]:after{content:"";position:absolute;inset:0;background:#36578d;mix-blend-mode:color;opacity:.9;pointer-events:none}
.rescue .category-directory .directory-photo[href="shop.html?cat=training-services"]>span{z-index:1}
/* ACO directory cards: consistent muted olive and canvas tones. */
.ape .category-directory .directory-photo{isolation:isolate;background:#ded5bb}
.ape .category-directory .directory-photo img{filter:grayscale(1) brightness(1.85) contrast(.88) sepia(.55) saturate(.65);mix-blend-mode:normal}
.ape .category-directory .directory-photo img[src*="68ea5def705248"]{filter:grayscale(1) brightness(1.02) contrast(.88) sepia(.55) saturate(.65)}
.ape .category-directory .directory-photo:after{content:"";position:absolute;inset:0;background:#91804b;mix-blend-mode:color;opacity:.35;pointer-events:none}
.ape .category-directory .directory-photo>span{z-index:1}

/* RNR directory photos use the homepage scenes without a color treatment. */
body.rescue .category-directory .directory-grid .directory-photo img{filter:none;mix-blend-mode:normal;opacity:1}
body.rescue .category-directory .directory-grid .directory-photo::before,body.rescue .category-directory .directory-grid .directory-photo::after{content:none;display:none}

/* Live category catalog shares Shop All controls and product visibility. */
.shop-page.category-directory .directory-results .directory-section{padding:0 0 35px;max-width:none}
.shop-page.category-directory [hidden]{display:none!important}

/* Match RNA Worksite to the warm olive photos in the category directory. */
.arbor .category-directory .directory-grid .directory-photo[href*="worksite"] img{
  filter:grayscale(1) sepia(1) saturate(1.15) hue-rotate(12deg) brightness(.94) contrast(.95);
  mix-blend-mode:normal;
}

/* Brand category controls: keep directory actions in each storefront palette. */
body.wg-wordpress .category-directory {
  --directory-control: var(--directory-dark);
  --directory-control-ink: var(--accent-ink, #fff);
  --directory-control-soft: var(--directory-paper);
  --directory-control-hover: var(--directory-deep);
  --directory-control-hover-ink: #fff;
  --directory-link: var(--directory-deep);
  --directory-focus: var(--directory-dark);
}
body.wg-wordpress.omega .category-directory {
  --directory-control: #e4e7eb;
  --directory-control-ink: #17191c;
  --directory-control-soft: #32363c;
  --directory-control-hover: #fff;
  --directory-control-hover-ink: #17191c;
  --directory-link: #f2f3f5;
  --directory-focus: #e4e7eb;
}
body.wg-wordpress .category-directory .directory-card :is(.directory-subcategories, .directory-nested) > summary {
  background: var(--directory-control-soft);
  color: var(--directory-link);
  border-color: var(--directory-line);
  border-radius: 2px;
}
body.wg-wordpress .category-directory .directory-card :is(.directory-subcategories, .directory-nested)[open] > summary {
  background: var(--directory-control);
  border-color: var(--directory-control);
  color: var(--directory-control-ink);
}
body.wg-wordpress .category-directory .directory-card :is(.directory-subcategories, .directory-nested) > summary:hover {
  background: var(--directory-control-hover);
  border-color: var(--directory-control-hover);
  color: var(--directory-control-hover-ink);
}
body.wg-wordpress .category-directory .directory-card .directory-children > li {
  border-color: var(--directory-line);
}
body.wg-wordpress .category-directory .directory-card .directory-category-row > a {
  color: var(--directory-link);
  border-radius: 2px;
}
body.wg-wordpress .category-directory .directory-card .directory-category-row > a:hover {
  background: var(--directory-control-soft);
  color: var(--directory-link);
}
body.wg-wordpress .category-directory .directory-card .directory-nested > .directory-children {
  background: var(--directory-control-soft);
  border-color: var(--directory-line);
  border-radius: 0;
}
body.wg-wordpress .category-directory .directory-card :is(.directory-shop, .directory-title) {
  color: var(--directory-text);
}
body.wg-wordpress .category-directory .directory-card :is(.directory-shop, .directory-title):hover {
  color: var(--directory-link);
  text-decoration: underline;
  text-underline-offset: 4px;
}
body.wg-wordpress .category-directory .directory-card :is(a, summary):focus-visible {
  outline: 2px solid var(--directory-focus);
  outline-offset: 3px;
}

/* Category sidebar and directory search use the same control palette. */
body.wg-wordpress .category-directory #category-tree .category-toggle {
  color: var(--directory-link);
  background: var(--directory-control-soft);
  border: 1px solid var(--directory-line);
  border-radius: 2px;
}
body.wg-wordpress .category-directory #category-tree .category-toggle[aria-expanded="true"] {
  background: var(--directory-control);
  border-color: var(--directory-control);
  color: var(--directory-control-ink);
}
body.wg-wordpress .category-directory :is(#category-tree .category-toggle, .directory-search button):hover {
  background: var(--directory-control-hover);
  border-color: var(--directory-control-hover);
  color: var(--directory-control-hover-ink);
}
body.wg-wordpress .category-directory :is(#category-tree .category-toggle, .directory-search button):focus-visible {
  outline: 2px solid var(--directory-focus);
  outline-offset: 3px;
}

/* Restore a complete, responsive search bar on every brand directory. */
body.wg-wordpress .category-directory .directory-search {
  margin: 0 0 25px;
  padding: 18px 20px;
  background: var(--directory-control-soft);
  color: var(--directory-text);
  border: 1px solid var(--directory-line);
  border-top: 3px solid var(--directory-control);
}
body.wg-wordpress .category-directory .directory-search > div {
  display: flex;
  align-items: stretch;
  gap: 10px;
}
body.wg-wordpress .category-directory .directory-search input {
  flex: 1 1 0%;
  min-width: 0;
  min-height: 48px;
  border: 1px solid var(--directory-line);
  border-radius: 2px;
  background: var(--directory-card);
  color: var(--directory-text);
  font: 400 16px/1.4 Barlow, Arial, sans-serif;
}
body.wg-wordpress .category-directory .directory-search button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  flex: 0 0 auto;
  min-height: 48px;
  margin: 0;
  padding: 12px 22px;
  border: 1px solid var(--directory-control);
  border-radius: 2px;
  background: var(--directory-control);
  color: var(--directory-control-ink);
  font: 600 16px/1.4 Barlow, Arial, sans-serif;
  cursor: pointer;
}
body.wg-wordpress .category-directory .directory-search input:focus-visible {
  outline: 2px solid var(--directory-focus);
  outline-offset: 3px;
}
@media (max-width: 540px) {
  body.wg-wordpress .category-directory .directory-search { padding: 15px; }
  body.wg-wordpress .category-directory .directory-search > div { flex-direction: column; }
  body.wg-wordpress .category-directory .directory-search input,
  body.wg-wordpress .category-directory .directory-search button { width: 100%; box-sizing: border-box; }
}
