/* Finishing Touches catalogue treatment, shared by browse and quote pickers. */
.unified-catalogue.unified-catalogue{--catalogue-paper:#fffaf2;--catalogue-line:#e2d8c9;--catalogue-ink:#24211d}
.unified-catalogue.unified-catalogue .catalogue-intro{margin:0 0 28px;padding:12px 0 22px;border-bottom:1px solid var(--catalogue-line)}
.unified-catalogue.unified-catalogue .catalogue-intro .eyebrow{font:800 11px/1.5 'Hanken Grotesk',sans-serif!important;letter-spacing:1.5px!important;color:#946c46;text-transform:uppercase!important}
.unified-catalogue.unified-catalogue .catalogue-intro h1{font:750 clamp(30px,3vw,48px)/1.08 Outfit,sans-serif!important;letter-spacing:-1.2px!important;text-transform:none!important;margin:8px 0 10px}
.unified-catalogue.unified-catalogue .catalogue-intro p{font:400 16px/1.5 'Hanken Grotesk',sans-serif!important;text-transform:none!important;color:#786f64;margin:0}
.unified-catalogue.unified-catalogue .catalogue-layout{gap:20px 28px}
.unified-catalogue.unified-catalogue .picker-sidebar{background:#eee8de;border:1px solid var(--catalogue-line);border-radius:16px;padding:20px;box-shadow:0 8px 28px #35291d05}
.unified-catalogue.unified-catalogue .picker-sidebar h2{font:700 20px/1.2 Outfit,sans-serif!important;text-transform:none!important;margin:0 0 22px}
.unified-catalogue.unified-catalogue .filter-step{padding-bottom:18px}
.unified-catalogue.unified-catalogue .filter-step-label,.unified-catalogue.unified-catalogue .filter-step-label strong,.unified-catalogue.unified-catalogue .filters label{font:700 11px/1.5 'Hanken Grotesk',sans-serif!important;color:#74685a}
.unified-catalogue.unified-catalogue .picker-sidebar select{height:38px;min-height:38px;border-radius:8px;border-color:#d8cebf;font:500 12px/1.4 'Hanken Grotesk',sans-serif!important;text-transform:none!important}
.unified-catalogue.unified-catalogue .categories{gap:4px}
.unified-catalogue.unified-catalogue .categories button{padding:10px 12px;border-radius:9px;font:600 13px/1.3 'Hanken Grotesk',sans-serif!important;text-transform:none!important}
.unified-catalogue.unified-catalogue .catalogue-search,.unified-catalogue.unified-catalogue .catalogue-sort,.unified-catalogue.unified-catalogue .picker-toolbar>#search,.unified-catalogue.unified-catalogue #sort{border-radius:12px;min-height:46px;background:#fffdf8;border-color:var(--catalogue-line)}
.unified-catalogue.unified-catalogue .product-grid{gap:22px;align-items:stretch}
.unified-catalogue.unified-catalogue .product-grid .product-card{display:flex;flex-direction:column;grid-row:auto;grid-template-rows:none;padding:0;gap:0;border-radius:18px;border:1px solid var(--catalogue-line);background:var(--catalogue-paper);box-shadow:0 5px 18px #382c1e06;transition:border-color .18s,box-shadow .18s}
.unified-catalogue.unified-catalogue .product-card>.photo,.unified-catalogue.unified-catalogue .product-card>.product-image-wrap{height:230px;min-height:230px;flex:none;aspect-ratio:auto;background:#f3f0ea;padding:46px 22px 18px;border-bottom:1px solid #ebe3d8;overflow:hidden}
.unified-catalogue.unified-catalogue .product-card .photo img,.unified-catalogue.unified-catalogue .product-card .product-image-wrap img{object-fit:contain;mix-blend-mode:multiply;transition:transform .25s ease}
/* Sink finishes must retain the supplier photograph's original colour. */
.unified-catalogue.unified-catalogue[data-catalogue-category=sinks] .product-card>.photo,
.unified-catalogue.unified-catalogue[data-catalogue-category=sinks] .product-card>.product-image-wrap{isolation:isolate}
.unified-catalogue.unified-catalogue[data-catalogue-category=sinks] .product-card .photo img,
.unified-catalogue.unified-catalogue[data-catalogue-category=sinks] .product-card .product-image-wrap img{mix-blend-mode:normal;filter:none;opacity:1}
.unified-catalogue.unified-catalogue .product-card>.body,.unified-catalogue.unified-catalogue .product-card>.product-card-body{padding:20px 20px 12px;flex:0 0 auto}
.unified-catalogue.unified-catalogue .product-card h2,.unified-catalogue.unified-catalogue .product-card h3{font:650 20px/1.25 Outfit,sans-serif!important;text-transform:none!important;letter-spacing:-.3px!important;margin:0;min-height:0;color:var(--catalogue-ink)}
.unified-catalogue.unified-catalogue .product-card .foot{display:flex;flex-direction:column;gap:13px;padding:0 20px 20px;margin-top:auto}
.unified-catalogue.unified-catalogue .product-card .foot>*{grid-row:auto!important;margin:0!important;width:auto!important}
.unified-catalogue.unified-catalogue .product-card .foot .code,.unified-catalogue.unified-catalogue .product-card .foot .product-code{font:500 11px/1.5 'Hanken Grotesk',sans-serif!important;letter-spacing:.5px!important;color:#8a7e6d}
.unified-catalogue.unified-catalogue .product-card .foot>details{border-top:1px solid var(--catalogue-line);padding-top:13px}
.unified-catalogue.unified-catalogue .product-card .foot>details>summary{font:650 13px/1.5 'Hanken Grotesk',sans-serif!important;text-transform:none!important;color:#426e68;cursor:pointer}
.unified-catalogue.unified-catalogue .product-card .foot>strong,.unified-catalogue.unified-catalogue .product-card .foot>.product-price strong{font:700 24px/1.2 Outfit,sans-serif!important}
.unified-catalogue.unified-catalogue .product-card .foot>button{border-radius:999px;min-height:42px;font:700 12px/1.5 'Hanken Grotesk',sans-serif!important;letter-spacing:.4px!important}
.unified-catalogue.unified-catalogue .product-brand,.unified-catalogue.unified-catalogue .photo .brand{background:#fffaf2;color:#28231e;border:1px solid #dcd2c2}
.unified-catalogue.unified-catalogue .product-kind,.unified-catalogue.unified-catalogue .photo .badge{background:#e4ebe6;color:#3d655d}
.unified-catalogue.unified-catalogue .picker-sidebar{scrollbar-width:thin;scrollbar-color:#aaa294 transparent}
.unified-catalogue.unified-catalogue .picker-sidebar::-webkit-scrollbar{width:8px}.unified-catalogue.unified-catalogue .picker-sidebar::-webkit-scrollbar-thumb{background:#aaa294;border-radius:8px}.unified-catalogue.unified-catalogue .picker-sidebar::-webkit-scrollbar-button{display:none}
@media(hover:hover){.unified-catalogue.unified-catalogue .product-card:hover{border-color:#bfae96;box-shadow:0 12px 32px #382c1e12}.unified-catalogue.unified-catalogue .product-card:hover .photo img,.unified-catalogue.unified-catalogue .product-card:hover .product-image-wrap img{transform:scale(1.035)}}
@media(min-width:1100px){.unified-catalogue.unified-catalogue .product-grid,.unified-catalogue.unified-catalogue.catalogue-browse-mode .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1700px){.unified-catalogue.unified-catalogue .product-grid,.unified-catalogue.unified-catalogue.catalogue-browse-mode .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.unified-catalogue.unified-catalogue .catalogue-intro{margin-bottom:18px}.unified-catalogue.unified-catalogue .product-grid{gap:14px}.unified-catalogue.unified-catalogue .product-card>.photo,.unified-catalogue.unified-catalogue .product-card>.product-image-wrap{height:200px;min-height:200px}.unified-catalogue.unified-catalogue .picker-sidebar{position:static;max-height:none}}
@media(prefers-reduced-motion:reduce){.unified-catalogue.unified-catalogue .product-card,.unified-catalogue.unified-catalogue .product-card img{transition:none!important}}

.unified-catalogue.unified-catalogue .product-grid .product-card{align-items:stretch}.unified-catalogue.unified-catalogue .product-card>.photo,.unified-catalogue.unified-catalogue .product-card>.product-image-wrap,.unified-catalogue.unified-catalogue .product-card>.body,.unified-catalogue.unified-catalogue .product-card>.product-card-body,.unified-catalogue.unified-catalogue .product-card>.foot{width:100%}

html:has(.unified-catalogue){scrollbar-width:thin;scrollbar-color:#aaa294 transparent}html:has(.unified-catalogue)::-webkit-scrollbar{width:8px}html:has(.unified-catalogue)::-webkit-scrollbar-thumb{background:#aaa294;border-radius:8px}html:has(.unified-catalogue)::-webkit-scrollbar-button{display:none}

/* Density changes are immediate; normal hover effects resume after the new layout paints. */
.unified-catalogue.unified-catalogue.catalogue-size-changing .product-grid,
.unified-catalogue.unified-catalogue.catalogue-size-changing .product-grid *,
.unified-catalogue.unified-catalogue.catalogue-size-changing .catalogue-size-toggle *{transition:none!important;animation:none!important}
/* Optional compact cards; every newly opened catalogue starts with large cards. */
.unified-catalogue.unified-catalogue .catalogue-intro{display:flex;align-items:center;justify-content:space-between;gap:24px}
.unified-catalogue.unified-catalogue .catalogue-intro-copy{min-width:0}
.unified-catalogue.unified-catalogue .catalogue-size-toggle{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #d8cebf;border-radius:10px;background:#fffaf2;color:#24211d;cursor:pointer;box-shadow:none;transform:none}
.unified-catalogue.unified-catalogue .catalogue-size-toggle .bi{font-family:bootstrap-icons!important;font-size:23px;line-height:1;transition:transform .12s ease}
.unified-catalogue.unified-catalogue .catalogue-size-toggle:hover .bi{transform:scale(1.08)}
.unified-catalogue.unified-catalogue .catalogue-size-toggle:active .bi{transform:scale(.96)}
.unified-catalogue.unified-catalogue .catalogue-size-toggle:focus-visible{outline:2px solid #946c46;outline-offset:3px}
.unified-catalogue.unified-catalogue .catalogue-size-toggle[aria-pressed=true]{background:#e8e0d4;border-color:#ad9779}
.unified-catalogue.unified-catalogue.catalogue-compact .product-grid{gap:14px}
.unified-catalogue.unified-catalogue.catalogue-compact .product-card>.photo,.unified-catalogue.unified-catalogue.catalogue-compact .product-card>.product-image-wrap{height:155px;min-height:155px;padding:40px 14px 12px}
.unified-catalogue.unified-catalogue.catalogue-compact .product-card>.body,.unified-catalogue.unified-catalogue.catalogue-compact .product-card>.product-card-body{padding:14px 14px 9px}
.unified-catalogue.unified-catalogue.catalogue-compact .product-card .foot{padding:0 14px 14px;gap:10px}
.unified-catalogue.unified-catalogue.catalogue-compact .product-card h2,.unified-catalogue.unified-catalogue.catalogue-compact .product-card h3{font-size:16px!important}
.unified-catalogue.unified-catalogue.catalogue-compact .product-card .foot>strong,.unified-catalogue.unified-catalogue.catalogue-compact .product-card .foot>.product-price strong{font-size:20px!important}
@media(min-width:701px){.unified-catalogue.unified-catalogue.catalogue-compact .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1100px){.unified-catalogue.unified-catalogue.catalogue-compact .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1400px){.unified-catalogue.unified-catalogue.catalogue-compact .product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:1900px){.unified-catalogue.unified-catalogue.catalogue-compact .product-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.unified-catalogue.unified-catalogue .catalogue-size-toggle .bi{transition:none}}
/* Give handles more image space in both browse and ordering views, without cropping. */
.unified-catalogue.unified-catalogue[data-catalogue-category=handles] .product-card>.photo,
.unified-catalogue.unified-catalogue[data-catalogue-category=handles] .product-card>.product-image-wrap{height:320px;min-height:320px;padding:42px 12px 12px}
.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=handles] .product-card>.photo,
.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=handles] .product-card>.product-image-wrap{height:210px;min-height:210px;padding:38px 10px 10px}
@media(max-width:700px){.unified-catalogue.unified-catalogue[data-catalogue-category=handles] .product-card>.photo,.unified-catalogue.unified-catalogue[data-catalogue-category=handles] .product-card>.product-image-wrap{height:280px;min-height:280px}.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=handles] .product-card>.photo,.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=handles] .product-card>.product-image-wrap{height:200px;min-height:200px}}
/* Tall storage photography needs more vertical space to remain legible. */
.unified-catalogue.unified-catalogue[data-catalogue-category=wirework] .product-card>.photo,
.unified-catalogue.unified-catalogue[data-catalogue-category=wirework] .product-card>.product-image-wrap{height:340px;min-height:340px;padding:42px 12px 12px}
.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=wirework] .product-card>.photo,
.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=wirework] .product-card>.product-image-wrap{height:230px;min-height:230px;padding:38px 10px 10px}
@media(max-width:700px){.unified-catalogue.unified-catalogue[data-catalogue-category=wirework] .product-card>.photo,.unified-catalogue.unified-catalogue[data-catalogue-category=wirework] .product-card>.product-image-wrap{height:280px;min-height:280px}.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=wirework] .product-card>.photo,.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=wirework] .product-card>.product-image-wrap{height:210px;min-height:210px}}
/* Give bins more image space in both browse and ordering views, without cropping. */
.unified-catalogue.unified-catalogue[data-catalogue-category=bins] .product-card>.photo,
.unified-catalogue.unified-catalogue[data-catalogue-category=bins] .product-card>.product-image-wrap{height:320px;min-height:320px;padding:42px 12px 12px}
.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=bins] .product-card>.photo,
.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=bins] .product-card>.product-image-wrap{height:210px;min-height:210px;padding:38px 10px 10px}
@media(max-width:700px){.unified-catalogue.unified-catalogue[data-catalogue-category=bins] .product-card>.photo,.unified-catalogue.unified-catalogue[data-catalogue-category=bins] .product-card>.product-image-wrap{height:280px;min-height:280px}.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=bins] .product-card>.photo,.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=bins] .product-card>.product-image-wrap{height:200px;min-height:200px}}
/* Give lighting more image space in both browse and ordering views, without cropping. */
.unified-catalogue.unified-catalogue[data-catalogue-category=lighting] .product-card>.photo,
.unified-catalogue.unified-catalogue[data-catalogue-category=lighting] .product-card>.product-image-wrap{height:320px;min-height:320px;padding:42px 12px 12px}
.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=lighting] .product-card>.photo,
.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=lighting] .product-card>.product-image-wrap{height:210px;min-height:210px;padding:38px 10px 10px}
@media(max-width:700px){.unified-catalogue.unified-catalogue[data-catalogue-category=lighting] .product-card>.photo,.unified-catalogue.unified-catalogue[data-catalogue-category=lighting] .product-card>.product-image-wrap{height:280px;min-height:280px}.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=lighting] .product-card>.photo,.unified-catalogue.unified-catalogue.catalogue-compact[data-catalogue-category=lighting] .product-card>.product-image-wrap{height:200px;min-height:200px}}

/* Unero source is left handed; share one original across every catalogue. */
.product-card .product-image-wrap img.product-photo[src*="cornerstone-unero-lava.jpg"],.product-card .photo img[src*="cornerstone-unero-lava.jpg"]{scale:1!important}
.product-card .product-image-wrap img.product-photo[src*="cornerstone-unero-lava.jpg?hand=right"],.product-card .photo img[src*="cornerstone-unero-lava.jpg?hand=right"]{scale:-1 1!important}

/* Shared mapping records the orientation of each original; override legacy card flips. */
.product-card .product-image-wrap img.product-photo[src][src*="catalogue-flip=0"],.product-card .photo img[src*="catalogue-flip=0"]{scale:1!important}
.product-card .product-image-wrap img.product-photo[src][src*="catalogue-flip=1"],.product-card .photo img[src*="catalogue-flip=1"]{scale:-1 1!important}
