/* Compact photo navigation, matching the existing PoolJardiShop palette. */
.pjs-catalog-nav{position:relative;background:#fff;border-top:1px solid #e6eef0;color:#123b4b;z-index:50;font-family:Manrope,sans-serif}
.pjs-catalog-nav *{box-sizing:border-box}
.pjs-catalog-nav .pjs-shell{position:relative;overflow:visible}
.pjs-catalog-mobile>summary{display:none}
.pjs-catalog-mobile>.pjs-catalog-sections{display:flex;align-items:stretch;justify-content:space-between;gap:4px}
.pjs-catalog-section>summary{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:50px;padding:10px 12px;font-size:13px;font-weight:800;cursor:pointer;list-style:none;border-bottom:3px solid transparent;white-space:nowrap}
.pjs-catalog-section>summary::-webkit-details-marker,.pjs-catalog-mobile>summary::-webkit-details-marker{display:none}
.pjs-catalog-section>summary svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}
.pjs-catalog-section[open]>summary{color:#006f83;border-bottom-color:#009bac;background:#effafa}
.pjs-catalog-section[open]>summary svg{transform:rotate(180deg)}
.pjs-catalog-panel{position:absolute;top:100%;left:0;right:0;max-height:65vh;overflow-y:auto;background:#fff;padding:22px 26px 26px;border:1px solid #dce8eb;border-top:3px solid #009bac;border-radius:0 0 12px 12px;box-shadow:0 18px 34px #0d334126;z-index:60}
.pjs-catalog-panel__heading{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #e5eeef;padding-bottom:14px;margin-bottom:18px}
.pjs-catalog-panel__heading strong{font-size:19px;color:#143c4b}
.pjs-catalog-panel__heading>a,.pjs-catalog-garden{color:#006b7c;font-size:13px;font-weight:800;text-decoration:none}
.pjs-catalog-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
a.pjs-catalog-card{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0;padding:10px 7px 12px;text-decoration:none;text-align:center;color:#173f4e;background:#fff;border:1px solid transparent;border-radius:8px;font-size:12px;line-height:1.45;font-weight:700;transition:background .15s,border-color .15s}
a.pjs-catalog-card:hover{border-color:#b6dfe1;background:#f6fcfc;color:#006d7e}
.pjs-catalog-card__image{display:flex;align-items:center;justify-content:center;width:100%;height:94px;background:#fff;border-radius:5px}
.pjs-catalog-card__image img{display:block;width:100%;height:100%;max-height:94px;object-fit:contain!important;mix-blend-mode:multiply}
.pjs-catalog-placeholder{height:48px;width:48px;color:#7faeb7}
.pjs-catalog-garden{display:inline-block;margin-top:18px;padding:10px 0}
.pjs-catalog-families{margin:18px auto 26px!important;border-top:1px solid #dfebed;border-bottom:1px solid #dfebed;padding:20px 0 24px;background:#fff}
.pjs-catalog-family-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.pjs-catalog-family-heading h2{font:800 19px/1.3 Manrope,sans-serif!important;color:#183e4d;margin:0!important;letter-spacing:0!important}
.pjs-catalog-family-heading>span{font:500 12px/1.4 Manrope,sans-serif;color:#52717d}
.pjs-catalog-nav a:focus-visible,.pjs-catalog-nav summary:focus-visible,.pjs-catalog-card:focus-visible{outline:3px solid #007e91;outline-offset:3px}
@media(min-width:981px){.pjs-catalog-mobile:not([open])>.pjs-catalog-sections{display:flex}}
@media(max-width:1100px) and (min-width:981px){.pjs-catalog-section>summary{padding-inline:7px;font-size:12px;gap:5px}}
@media(max-width:980px){
 .pjs-catalog-mobile>summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;list-style:none;cursor:pointer;font-size:14px;font-weight:800;padding:12px 2px}
 .pjs-catalog-mobile>.pjs-catalog-sections{display:block;padding-bottom:8px}
 .pjs-catalog-mobile:not([open])>.pjs-catalog-sections{display:none}
 .pjs-catalog-section>summary{min-height:46px;padding:11px 8px;border-bottom:1px solid #e6eeee;font-size:14px}
 .pjs-catalog-panel{position:static;max-height:none;box-shadow:none;border:0;border-bottom:1px solid #dce8eb;border-radius:0;padding:16px 0 20px}
 .pjs-catalog-panel__heading{padding:0 8px 12px;margin-bottom:12px}
 .pjs-catalog-panel__heading strong{font-size:16px}
 .pjs-catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
 .pjs-catalog-families .pjs-catalog-card__image{height:84px}
}
@media(max-width:600px){
 .pjs-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 a.pjs-catalog-card{font-size:11px;padding:8px 3px;gap:7px}
 .pjs-catalog-card__image,.pjs-catalog-families .pjs-catalog-card__image{height:72px}
 .pjs-catalog-panel__heading>a{font-size:11px}
 .pjs-catalog-family-heading h2{font-size:17px!important}
 .pjs-catalog-family-heading>span{font-size:11px}
}
@media(prefers-reduced-motion:reduce){a.pjs-catalog-card{transition:none}}

/* Homepage: eight compact photo entrances replace the tall coloured cards. */
.pjs-home-families{padding:34px 0 30px;background:#fff;border-bottom:1px solid #e2ecef}
.pjs-home-family-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.pjs-home-family-heading h2{font:800 24px/1.3 Manrope,sans-serif;color:#173f4e;margin:0;letter-spacing:-.5px}
.pjs-home-family-heading>a{flex-shrink:0;color:#006b7c;font:700 13px/1.4 Manrope,sans-serif;text-decoration:none}
.pjs-home-family-heading>a:hover{text-decoration:underline}
.pjs-home-family-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}
.pjs-home-family-grid a.pjs-catalog-card{box-sizing:border-box;justify-content:flex-start;border-color:#e2ecef;border-radius:10px;padding:12px 7px;gap:12px;font-size:12px;line-height:1.4;min-height:150px}
.pjs-home-family-grid .pjs-catalog-card__image{height:90px}
.pjs-home-family-grid .pjs-catalog-card__image img{max-height:90px}
.pjs-home-family-grid a.pjs-catalog-card:hover{border-color:#00a0ad}
@media(max-width:1100px){.pjs-home-family-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){
 .pjs-home-families{padding:26px 0}
 .pjs-home-family-heading{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:18px}
 .pjs-home-family-heading h2{font-size:21px;letter-spacing:-.3px}
 .pjs-home-family-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .pjs-home-family-grid a.pjs-catalog-card{min-height:140px;font-size:12px;gap:9px}
 .pjs-home-family-grid .pjs-catalog-card__image,.pjs-home-family-grid .pjs-catalog-card__image img{height:80px;max-height:80px}
}

