/* Shared quote catalogue only: no account catalogue or pricing changes. */
.public-catalogue.unified-catalogue{margin:0;background:#f8f5ed;color:#27231e;font-family:'Hanken Grotesk',Arial,sans-serif;font-size:14px}
.unified-catalogue *{box-sizing:border-box}
.unified-catalogue .portal-main.guide-main,.unified-catalogue .lighting{width:100%;max-width:none;padding:20px!important}
.unified-catalogue .catalogue-layout{display:grid!important;grid-template-columns:220px minmax(0,1fr);gap:18px 24px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;margin:0}
.unified-catalogue .picker-toolbar{grid-column:1/-1;display:flex;gap:12px;align-items:center}
.unified-catalogue .catalogue-controls{display:flex;gap:12px;width:100%;max-width:none}
.unified-catalogue .catalogue-search{flex:1;max-width:none;min-width:0}
.unified-catalogue .catalogue-sort{width:210px;flex:none}
.unified-catalogue .catalogue-search,.unified-catalogue .catalogue-sort{padding:0 13px;min-height:44px;border:1px solid #ddd2c3;border-radius:7px;background:#fffdfa;box-shadow:none}
.unified-catalogue input,.unified-catalogue select{font:inherit!important;color:#27231e;min-width:0}
.unified-catalogue .picker-toolbar>#search{flex:1;min-height:44px;width:auto;background:#fffdfa;border:1px solid #ddd2c3;border-radius:7px;padding:10px 13px}
.unified-catalogue .picker-toolbar>#sort{width:210px;min-height:44px}
.unified-catalogue .picker-sidebar{align-self:start;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow:auto;padding:16px;background:#eee9df;border:1px solid #e1d7c9;border-radius:9px}
.unified-catalogue .picker-sidebar h2{font-size:16px;margin:0 0 16px;font-weight:800}
.unified-catalogue .filter-board,.unified-catalogue .filters{display:block;border:0;background:none;padding:0;margin:0;border-radius:0}
.unified-catalogue .filter-step{display:block;padding:0 0 16px;border:0;margin:0}
.unified-catalogue .filter-step-label{display:block;font-size:12px;text-transform:none;margin-bottom:7px}
.unified-catalogue .filter-step-label>span,.unified-catalogue .guide-filters{display:none!important}
.unified-catalogue .picker-sidebar select{width:100%;height:40px;padding:7px;background:#fffdfa;border:1px solid #d5cbbb;border-radius:5px}
.unified-catalogue .filters label{display:block;margin:0 0 14px;font-size:12px}
.unified-catalogue .filters label select{display:block;margin-top:7px}
.unified-catalogue .categories{display:flex;flex-direction:column;gap:3px;padding:0 0 16px}
.unified-catalogue .categories button{border:0;border-radius:5px;text-align:left;padding:9px 10px;font-size:13px;transform:none;box-shadow:none}
.unified-catalogue #ClearFilters,.unified-catalogue #clear{font:inherit;font-size:12px;border:0;border-radius:0;background:transparent;text-decoration:underline;padding:5px 0;color:#63594d;cursor:pointer}
.unified-catalogue .picker-results{min-width:0}
.unified-catalogue .catalogue-status,.unified-catalogue .status{margin:0 0 12px;min-height:20px;font-size:12px;color:#347671;padding:0}
.unified-catalogue .product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.unified-catalogue .product-card{display:flex;flex-direction:column;min-width:0;border:1px solid #ded3c4;border-radius:9px;box-shadow:none;background:#fffdfa;overflow:hidden;cursor:default!important}
.unified-catalogue .product-image-wrap,.unified-catalogue .photo{height:160px;min-height:160px;padding:12px;background:#fff;aspect-ratio:auto}
.unified-catalogue .product-image-wrap img,.unified-catalogue .photo img{height:100%;width:100%;object-fit:contain;mix-blend-mode:normal}
.unified-catalogue .product-card-body,.unified-catalogue .product-card>.body{padding:12px;display:flex;flex-direction:column;flex:1}
.unified-catalogue .product-title-row{display:block}
.unified-catalogue .product-card h3,.unified-catalogue .product-card h2{font-family:inherit;font-size:14px;line-height:1.35;letter-spacing:0;margin:8px 0;font-weight:700}
.unified-catalogue .product-card p,.unified-catalogue .product-specs,.unified-catalogue .code{font-size:12px;line-height:1.5;min-height:0}
.unified-catalogue .product-price{margin:10px 0;text-align:left}
.unified-catalogue .product-price strong,.unified-catalogue .foot strong{font-size:19px}
.unified-catalogue .product-price small{font-size:10px}
.unified-catalogue .quote-picker-add,.unified-catalogue .foot button{display:flex;justify-content:center;align-items:center;width:100%;min-height:40px;padding:10px;background:#27231e;color:white;border:0;border-radius:5px;font:700 12px Arial,sans-serif;text-transform:none;letter-spacing:0;cursor:pointer}
.unified-catalogue .foot{padding:0 12px 12px;display:flex;flex-direction:column;align-items:stretch;gap:12px}
.unified-catalogue .product-card-footer{font-size:11px;margin-top:12px}
.unified-catalogue .guide-alert{padding:9px 12px;margin:0 0 12px;font-size:12px}
.unified-catalogue .picker-filter-toggle{display:none}
.unified-catalogue [hidden]{display:none!important}
.unified-catalogue button:focus-visible,.unified-catalogue select:focus-visible,.unified-catalogue input:focus-visible{outline:2px solid #347671;outline-offset:2px}
@media(min-width:1100px){.unified-catalogue .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:850px){.unified-catalogue .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.unified-catalogue .catalogue-layout{grid-template-columns:1fr}.unified-catalogue .picker-sidebar{display:none;position:static;max-height:none}.unified-catalogue .picker-sidebar.is-open{display:block}.unified-catalogue .picker-filter-toggle{display:block;border:1px solid #d5cbbb;background:#eee9df;padding:12px;border-radius:5px}.unified-catalogue .catalogue-controls{flex-wrap:wrap}.unified-catalogue .catalogue-sort,.unified-catalogue .picker-toolbar>#sort{width:145px}.unified-catalogue .picker-toolbar{flex-wrap:wrap}.unified-catalogue .catalogue-controls{flex:1}.unified-catalogue .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.unified-catalogue .portal-main.guide-main,.unified-catalogue .lighting{padding:12px!important}}
@media(max-width:450px){.unified-catalogue .product-grid{grid-template-columns:1fr}}
.unified-catalogue .foot .product-price{display:block;text-align:left!important;margin:0;min-width:0}
.unified-catalogue .foot .product-price small{display:block;text-align:left}
.unified-catalogue .foot .quote-picker-add{margin:0}
.unified-catalogue summary{cursor:pointer;font-size:12px;color:#347671;margin-top:12px}
.unified-catalogue .product-card details p{margin:10px 0}

/* One spacing rule for the driver, details, price and action stack. */
.unified-catalogue .product-card .foot{gap:12px}
.unified-catalogue .product-card .foot > *, .unified-catalogue .product-card .foot > details > summary{margin:0}

.unified-catalogue .product-card .driver,.unified-catalogue .product-card details > summary{text-transform:uppercase}

.unified-catalogue .product-card .highlights{text-transform:uppercase}

/* Share each specification track across cards in the same visual row.
   Wrapped text sets the track height; all shorter entries start at its top. */
@supports (grid-template-rows: subgrid) {
 .unified-catalogue .product-grid {row-gap:12px}
 .unified-catalogue .product-card {display:grid;grid-row:span 8;grid-template-rows:subgrid;padding-bottom:12px;align-items:start}
 .unified-catalogue .product-card > .photo,.unified-catalogue .product-card > .product-image-wrap {grid-row:1}
 .unified-catalogue .product-card > .body,.unified-catalogue .product-card > .product-card-body {grid-row:2;padding-bottom:0}
 .unified-catalogue .product-card > .foot {display:contents}
 .unified-catalogue .product-card .foot > * {margin:0 12px;min-width:0;align-self:start}
 .unified-catalogue .product-card .foot > .highlights {grid-row:4}
 .unified-catalogue .product-card .foot > .driver {grid-row:5}
 .unified-catalogue .product-card .foot > details {grid-row:6}
 .unified-catalogue .product-card .foot > strong,.unified-catalogue .product-card .foot > .product-price {grid-row:7;margin:0 12px}
 .unified-catalogue .product-card .foot > button {grid-row:8;width:calc(100% - 24px);margin:0 12px}
}

/* Consistent uppercase presentation throughout the quote pickers. */
.public-catalogue.unified-catalogue,.public-catalogue.unified-catalogue button,.public-catalogue.unified-catalogue input,.public-catalogue.unified-catalogue select,.public-catalogue.unified-catalogue option,.public-catalogue.unified-catalogue input::placeholder{ text-transform:uppercase!important }

/* Match footer typography and spacing regardless of the catalogue base styles. */
.unified-catalogue .product-card {row-gap:12px}
.unified-catalogue .product-card .foot > details > summary {font:400 12px/18px Arial,sans-serif;padding:0}
.unified-catalogue .product-card .foot > .product-price {display:flex;align-items:baseline;justify-content:flex-start;gap:6px;line-height:24px}
.unified-catalogue .product-card .foot > .product-price strong {order:0;font:700 19px/24px Arial,sans-serif;color:#27231e}
.unified-catalogue .product-card .foot > .product-price small {order:1;font:400 10px/14px Arial,sans-serif;color:#756a60}
.unified-catalogue .product-card .foot > strong {font:700 19px/24px Arial,sans-serif;color:#27231e}
.unified-catalogue .product-card .foot > strong small {font:400 10px/14px Arial,sans-serif;color:#756a60}
.unified-catalogue .product-card .foot > button {font:700 12px/18px Arial,sans-serif;min-height:40px;padding:10px}

.unified-catalogue .product-card .foot > button i{display:none}

/* The picker owns its type system; underlying account-page fonts must not leak in. */
.public-catalogue.unified-catalogue,.public-catalogue.unified-catalogue *:not(.bi) {font-family:Arial,sans-serif!important;text-transform:uppercase!important;letter-spacing:normal!important}
.unified-catalogue .picker-sidebar h2 {font-size:16px;line-height:22px;font-weight:700;color:#27231e}
.unified-catalogue .filter-step-label,.unified-catalogue .filter-step-label strong,.unified-catalogue .filters label {font-size:12px;line-height:18px;font-weight:700;color:#27231e}
.unified-catalogue .picker-sidebar select {font-size:13px!important;line-height:18px!important;font-weight:400!important;background:#fffdfa;color:#27231e}
.unified-catalogue .catalogue-status,.unified-catalogue .catalogue-status strong,.unified-catalogue .status {font-size:12px;line-height:20px;font-weight:400;color:#347671}
.unified-catalogue .product-card h2,.unified-catalogue .product-card h3 {font-size:14px;line-height:1.35;font-weight:700;color:#27231e}
.unified-catalogue .product-code,.unified-catalogue .product-code strong,.unified-catalogue .code {font-size:12px;line-height:18px;font-weight:400;color:#756a60}
.unified-catalogue .product-card .brand {font-size:14px;line-height:20px;font-weight:700;color:#347671}
.unified-catalogue .catalogue-controls input,.unified-catalogue .catalogue-controls select,.unified-catalogue #search,.unified-catalogue #sort {font-size:13px!important;line-height:20px!important;font-weight:400!important}
.unified-catalogue .product-card summary {color:#347671}
.unified-catalogue .product-card .highlights {font-size:12px;line-height:18px;font-weight:400}
.unified-catalogue .product-card .driver {font-size:12px;line-height:18px;font-weight:700}
.unified-catalogue .catalogue-search .bi,.unified-catalogue .catalogue-sort .bi {display:none}
.unified-catalogue .product-card {content-visibility:visible;contain-intrinsic-size:none}

body.quote-picker-mode:not(.catalogue-ready) .guide-main,body:has(.lighting):not(.catalogue-ready) .lighting{visibility:hidden}
.unified-catalogue .catalogue-search,.unified-catalogue .catalogue-sort{display:flex;align-items:center}
.unified-catalogue .catalogue-search input,.unified-catalogue .catalogue-sort select{width:100%;flex:1;min-width:0}

/* Shared filter refinement: 8% wider, refined type (+4% from previous), 8% tighter spacing. */
@media(min-width:701px){.unified-catalogue .catalogue-layout{grid-template-columns:237.6px minmax(0,1fr)}}
.unified-catalogue .picker-sidebar{padding:13.248px}
.unified-catalogue .picker-sidebar h2{font-size:14.82px;line-height:19px;margin-bottom:11.592px}
.unified-catalogue .categories{gap:2.484px;padding-bottom:13.248px}
.unified-catalogue .categories button{font-size:11.856px;line-height:15.2px;padding:6.624px 8.28px}
.unified-catalogue .filter-step-label,.unified-catalogue .filter-step-label strong,.unified-catalogue .filters label{font-size:10.868px;line-height:15.2px}
.unified-catalogue .filter-step{padding-bottom:11.592px}
.unified-catalogue .filter-step-label{margin-bottom:5.796px}
.unified-catalogue .filters label{margin-bottom:9.936px}
.unified-catalogue .filters label select{margin-top:5.796px}
/* Keep dropdowns equal to a single-line selected category. */
.unified-catalogue .picker-sidebar select{font-size:11.856px!important;line-height:15.2px!important;height:28.448px;min-height:28.448px;padding:0 8.28px;box-sizing:border-box}
.unified-catalogue #ClearFilters,.unified-catalogue #clear{font-size:11.856px;padding:4.14px 8.28px;text-align:left}
/* Codes share a top-aligned row immediately above colour and wattage. */
@supports (grid-template-rows: subgrid){.unified-catalogue .product-card .foot > .code,.unified-catalogue .product-card .foot > .product-code{grid-row:3;margin:0 12px;align-self:start}}

/* Align filters with the compact search row above the product cards. */
@media(min-width:701px){
 .unified-catalogue .picker-toolbar{grid-column:2;grid-row:1;min-width:0}
 .unified-catalogue .picker-sidebar{grid-column:1;grid-row:1 / span 2}
 .unified-catalogue .picker-results{grid-column:2;grid-row:2}
}
.unified-catalogue .picker-toolbar>.catalogue-status,.unified-catalogue .picker-toolbar>.status{flex:none;margin:0;max-width:28%}
.unified-catalogue .picker-toolbar>.catalogue-controls{flex:1;min-width:0;width:auto;margin:0}
.unified-catalogue .picker-toolbar>#search{min-width:0}
.unified-catalogue .picker-toolbar>#sort{flex:none}
@media(max-width:1000px){
 .unified-catalogue .picker-toolbar{flex-wrap:wrap}
 .unified-catalogue .picker-toolbar>.catalogue-status,.unified-catalogue .picker-toolbar>.status{flex-basis:100%;max-width:none}
}
@media(max-width:700px){
 .unified-catalogue .picker-toolbar>.catalogue-status,.unified-catalogue .picker-toolbar>.status{flex:1}
 .unified-catalogue .picker-toolbar>.catalogue-controls{flex-basis:100%}
 .unified-catalogue .picker-toolbar>#search{flex-basis:calc(100% - 157px)}
}
/* Identical brand/type pills on all four quote catalogues. */
.unified-catalogue .product-image-wrap,.unified-catalogue .photo{position:relative}
.unified-catalogue .photo .card-top{position:absolute;z-index:2;top:13px;left:13px;right:13px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.unified-catalogue .product-brand,.unified-catalogue .product-kind,
.unified-catalogue .photo .brand,.unified-catalogue .photo .badge{border-radius:999px;padding:6px 9px;font-family:inherit;font-size:10px;line-height:14px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.unified-catalogue .product-brand,.unified-catalogue .photo .brand{background:#24221f;color:#fff;flex-shrink:0}
.unified-catalogue .product-kind,.unified-catalogue .photo .badge{background:rgba(226,239,237,.94);color:#315f5c;text-align:center}
.unified-catalogue .product-brand{top:13px;left:13px}
.unified-catalogue .product-kind{top:13px;right:13px}
/* Same successful-add state as Kitchen Units and Door Accessories. */

.product-card.is-just-added .add,
.product-card.is-just-added [data-quote-picker-add] { background:#2c674c!important; border-color:#2c674c!important; color:#fff!important; }

/* Account catalogues share the quote layout, with navigation and browsing only. */
.catalogue-browse-mode .quote-picker-add,.catalogue-browse-mode .product-card .add{display:none!important}
.catalogue-browse-mode .guide-help-banner,.catalogue-browse-mode .guide-footer{display:none}
.catalogue-browse-mode #Products{margin:0}
.catalogue-browse-mode .product-disclaimer{display:none!important}
.catalogue-browse-mode .account-catalogue-title{font-size:24px;margin:0 0 18px;font-weight:700}
.catalogue-browse-mode .portal-header summary{margin-top:0}
.catalogue-browse-mode .portal-header a{font-size:inherit}
@supports(grid-template-rows:subgrid){.catalogue-browse-mode .product-card{grid-row:span 7}}

.catalogue-browse-mode .guide-main > .lighting{padding:0!important}
.catalogue-browse-mode .portal-header > .account-button{margin-left:auto;text-decoration:none}

/* Full-page catalogues use the extra desktop width; quote popups stay four across. */
@media(min-width:1400px){
 .unified-catalogue.catalogue-browse-mode .product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}

/* Public website container only; catalogue rules above are copied from Online Quoting. */
.public-catalogue{padding:20px;max-width:none;width:100%;margin:0}.public-catalogue #sort{padding:11px;border:1px solid #d5cbbb;border-radius:6px;background:#fffdf8}.public-catalogue .photo{display:flex;align-items:center;justify-content:center}.public-catalogue .categories button{background:transparent;color:inherit;cursor:pointer}.public-catalogue .categories button[aria-pressed=true]{background:#28231e;color:white}.public-catalogue .catalogue-pagination{display:flex;gap:16px;justify-content:center;align-items:center;margin-top:20px;font-size:12px}.public-catalogue .page-button{padding:9px 12px;background:#fffdfa;border:1px solid #d5cbbb;border-radius:5px;cursor:pointer}.public-catalogue .page-button:disabled{opacity:.4}.public-catalogue .picker-sidebar{scrollbar-width:thin;scrollbar-color:#aaa294 transparent}.public-catalogue .picker-sidebar::-webkit-scrollbar{width:8px}.public-catalogue .picker-sidebar::-webkit-scrollbar-thumb{background:#aaa294;border-radius:8px}.public-catalogue .picker-sidebar::-webkit-scrollbar-button{display:none}@supports(grid-template-rows:subgrid){.public-catalogue.catalogue-browse-mode .product-card{grid-row:span 6}}
