.shop-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;padding-block:40px;align-items:center}.shop-intro h1{font-size:clamp(40px,5vw,76px);line-height:1.06;letter-spacing:-.04em;margin:16px 0}.shop-intro>div>p:not(.eyebrow){max-width:48ch}.shop-builder{position:relative;min-height:340px;border-radius:24px;overflow:hidden;background:#091a21;color:#fff;text-decoration:none;display:flex;align-items:end}.shop-builder img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}.shop-builder:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,12,17,.94),rgba(0,12,17,.2))}.shop-builder>div{position:relative;z-index:1;padding:32px;max-width:340px}.shop-builder h2{color:white;font-size:36px;line-height:1.1}.shop-builder p{color:#ecf7f5}.shop-category-bar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding-block:16px;border-block:1px solid #c6d6d4;position:relative;z-index:20}.shop-category-bar>a,.shop-category-bar>button,.shop-category-menu>summary{padding:12px 16px;border-radius:12px;background:#edf6f5;color:#12332f;border:1px solid #bdcecb;text-decoration:none;font-weight:700;cursor:pointer}.shop-category-menu{position:relative}.shop-category-menu>div{position:absolute;top:calc(100% + 8px);left:0;min-width:250px;background:#fff;color:#18332e;border:1px solid #c6d6d4;border-radius:16px;padding:8px;box-shadow:0 18px 50px #0002;display:grid;max-height:65vh;overflow:auto}.shop-category-menu a{padding:12px;border-radius:8px;color:inherit;text-decoration:none}.shop-category-menu a:hover,.shop-category-menu a[aria-current]{background:#d9f1ed}.shop-featured{padding-block:40px}.shop-featured .catalogue-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.smart-filter-grid{display:flex!important;flex-wrap:wrap;gap:10px!important}.smart-filter{position:relative;flex:1 1 155px;overflow:visible!important}.smart-filter-options{position:absolute!important;top:calc(100% + 8px);left:0;width:min(340px,80vw);max-height:340px;overflow:auto;z-index:30;background:#fff!important;color:#18332e;box-shadow:0 18px 50px #0003;border:1px solid #bdcecb;border-radius:14px;padding:12px!important}.smart-filter:last-child .smart-filter-options{left:auto;right:0}.smart-filter-shell{overflow:visible!important;padding:16px!important}.smart-filter-heading{margin-bottom:12px!important}.shop-support{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-block:48px}.shop-support>a{padding:32px;border-radius:20px;background:#edf6f5;border:1px solid #c6d6d4;text-decoration:none;color:inherit}.shop-support h2{font-size:clamp(26px,3vw,38px)}#catalogue{scroll-margin-top:110px}.catalogue-card{min-width:0}.catalogue-card h3{overflow-wrap:anywhere}.shop-featured .catalogue-card .actions{flex-wrap:wrap}.shop-featured .catalogue-card .button{font-size:13px}html[data-theme=dark] .shop-support>a,html[data-theme=dark] .shop-category-bar>a,html[data-theme=dark] .shop-category-bar>button,html[data-theme=dark] .shop-category-menu>summary{background:#122a2c;color:#edf8f6;border-color:#345053}html[data-theme=dark] .shop-category-menu>div,html[data-theme=dark] .smart-filter-options{background:#122a2c!important;color:#edf8f6}html[data-theme=dark] .shop-category-menu a:hover{background:#244340}@media(max-width:1000px){.shop-featured .catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.shop-intro{grid-template-columns:1fr;gap:20px;padding-block:24px}.shop-builder{min-height:260px}.shop-builder>div{padding:24px}.shop-category-bar{gap:8px}.shop-category-bar>a,.shop-category-bar>button,.shop-category-menu>summary{font-size:13px;padding:10px}.shop-support{grid-template-columns:1fr}.shop-featured .catalogue-grid{grid-template-columns:1fr}.shop-intro .actions{flex-wrap:wrap}.shop-category-menu>div{min-width:230px}.shop-support>a{padding:24px}.smart-filter{flex:1 1 120px}.shop-featured{padding-block:24px}}

.shop-category-menu>div{min-width:min(520px,85vw);grid-template-columns:repeat(2,minmax(0,1fr))}.catalogue-card .catalogue-description{display:none}.catalogue-card h3{font-size:17px;line-height:1.4}.catalogue-card .catalogue-card-body{padding:18px}.catalogue-card .catalogue-price strong{font-size:24px}.catalogue-card .actions{gap:8px}.catalogue-card .actions .button{padding:10px 12px;font-size:13px}.catalogue-grid{align-items:stretch}.catalogue-card{display:flex;flex-direction:column}.catalogue-card-body{flex:1;display:flex;flex-direction:column}.catalogue-card .catalogue-price{margin-top:auto}.shop-category-menu summary{min-width:170px}.smart-filter-options .smart-filter-option{color:inherit!important}@media(min-width:1100px){#product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:400px){.shop-category-menu>div{min-width:260px;grid-template-columns:1fr}}

@media(max-width:640px){.smart-filter[open]{flex-basis:100%}.smart-filter-options{position:static!important;width:100%;max-height:260px;box-shadow:none}}

/* Keep hidden loading/error states hidden even when a component uses grid. */
body[data-page="store"] [hidden]{display:none!important}
.mobile-filter-toggle{display:none}
body[data-page="store"] .shop-builder::before{display:none!important}
body[data-page="store"] .shop-builder::after{background:linear-gradient(0deg,rgba(0,12,17,.88),rgba(0,12,17,.08) 85%)!important}
body[data-page="store"] .shop-builder{background:#091a21!important;color:#fff!important}
@media(min-width:701px){.smart-filter-shell>summary{display:none}}
@media(max-width:700px){
 body[data-page="store"] .shop-intro{padding-block:18px;gap:16px}
 body[data-page="store"] .shop-intro h1{font-size:36px;margin:10px 0}
 body[data-page="store"] .shop-intro .eyebrow,body[data-page="store"] #store-state{display:none}
 body[data-page="store"] .shop-intro .actions{display:none}
 body[data-page="store"] .department-search{margin:14px 0 0}
 body[data-page="store"] .department-search>div{flex-direction:row;gap:6px}
 body[data-page="store"] .department-search label{display:none}
 body[data-page="store"] .department-search input{padding:12px;min-width:0;font-size:14px}
 body[data-page="store"] .department-search .button{width:auto;font-size:12px;padding:12px}
 body[data-page="store"] .shop-builder{min-height:170px}
 body[data-page="store"] .shop-builder>div{padding:18px;max-width:none}
 body[data-page="store"] .shop-builder h2{font-size:24px;margin:0 0 10px}
 body[data-page="store"] .shop-builder p{display:none}
 body[data-page="store"] .shop-builder h2 br{display:none}
 body[data-page="store"] .store-departments{padding-block:20px 0}
 body[data-page="store"] .department-heading h2{font-size:24px;margin:0}
 body[data-page="store"] .department-heading .eyebrow,body[data-page="store"] .department-heading>a,body[data-page="store"] .department-group-heading p,body[data-page="store"] .department-copy p,body[data-page="store"] .department-stock{display:none}
 body[data-page="store"] .department-image{aspect-ratio:1.65;padding:10px}
 body[data-page="store"] .department-copy{padding:10px}
 body[data-page="store"] .department-copy h3{margin:0;font-size:13px}
 body[data-page="store"] .department-group{margin:18px 0 24px}
 body[data-page="store"] .department-group-heading{padding-bottom:8px;margin-bottom:10px}
 body[data-page="store"] .department-group-heading h2{font-size:18px}
 body[data-page="store"] .shop-category-bar>a{display:none}
 body[data-page="store"] .shop-category-bar{justify-content:space-between}
 body[data-page="store"] .shop-featured{display:none!important}
 body[data-page="store"] .store-catalogue-wrap{padding-block:24px}
 body[data-page="store"] .store-catalogue-wrap>.section-heading .eyebrow{display:none}
 .mobile-filter-toggle{display:list-item;cursor:pointer;font-weight:700;padding:4px;min-height:32px}
 .smart-filter-shell:not([open])>*:not(summary){display:none!important}
 .smart-filter-heading{display:none!important}
 .smart-filter-grid{margin-top:12px}
 .catalogue-page-controls:first-of-type{gap:8px}
 .catalogue-page-controls:first-of-type>nav{display:none}
 .catalogue-results-head>[data-open-cart]{display:none}
 .catalogue-card .catalogue-media{min-height:150px}
 .catalogue-card h3{font-size:14px;line-height:1.45}
 .catalogue-card .eyebrow{font-size:10px;letter-spacing:0}
 .catalogue-card .actions .button{font-size:12px;padding:10px}
 .catalogue-card .catalogue-price span{font-size:12px}
}

@media(max-width:700px){
 body[data-page="store"] #catalogue{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
 body[data-page="store"] .catalogue-toolbar{display:contents}
 body[data-page="store"] .catalogue-toolbar .field{min-width:0!important;margin:0}
 body[data-page="store"] .catalogue-toolbar .field-search{grid-column:1/-1}
 body[data-page="store"] .catalogue-toolbar .field-sort{grid-column:1}
 body[data-page="store"] .field-sort select{width:100%;font-size:13px;padding:12px}
 body[data-page="store"] .smart-filter-shell{grid-column:2;align-self:end;margin:0;padding:10px!important}
 body[data-page="store"] .mobile-filter-toggle{min-height:24px;font-size:13px;line-height:24px;padding:0}
 body[data-page="store"] .smart-filter-shell[open]{grid-column:1/-1}
 #active-filter-chips,#catalogue-preview,.catalogue-results-head,.catalogue-page-controls,#product-grid,.catalogue-pricing-note{grid-column:1/-1}
 body[data-page="store"] .catalogue-results-head{margin:0;display:flex;align-items:center;justify-content:space-between}
 body[data-page="store"] .catalogue-results-head p{width:auto;margin:0}
 body[data-page="store"] #reset-filters{padding:8px 12px;font-size:12px}
 body[data-page="store"] .catalogue-page-controls-top{padding:4px 0;border:0;background:transparent;margin:0;box-shadow:none}
 body[data-page="store"] .catalogue-page-controls-top>nav{display:none}
 body[data-page="store"] .catalogue-page-controls-top label{font-size:12px}
 body[data-page="store"] .catalogue-grid,body[data-page="store"] .shop-featured .catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body[data-page="store"] .catalogue-card{display:flex;flex-direction:column}
 body[data-page="store"] .catalogue-card .catalogue-media{min-height:0;height:auto;aspect-ratio:1.15}
 body[data-page="store"] .catalogue-card-body{padding:10px;display:flex;flex-direction:column;flex:1}
 body[data-page="store"] .catalogue-card .eyebrow{font-size:9px;line-height:1.4}
 body[data-page="store"] .catalogue-card h3{font-size:12px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:10px}
 body[data-page="store"] .catalogue-card .catalogue-price{margin-top:auto;padding-top:4px}
 body[data-page="store"] .catalogue-card .catalogue-price strong{font-size:14px;line-height:1.5}
 body[data-page="store"] .catalogue-card .catalogue-price span{font-size:10px}
 body[data-page="store"] .catalogue-card .actions{margin-top:10px}
 body[data-page="store"] .catalogue-card .actions .button{min-height:42px;padding:8px;font-size:11px}
 body[data-page="store"] .catalogue-card .actions a{display:none}
 body[data-page="store"] .shop-featured:not([hidden]){display:block!important;padding-block:16px}
 body[data-page="store"] .shop-featured .section-heading .eyebrow{display:none}
 body[data-page="store"] .shop-featured .section-heading h2{font-size:22px}
}

/* Independent quote-first Store: do not hide the only ordering action on phones.
   The standard e-commerce card still hides secondary anchors as before. */
@media(max-width:700px){
 body[data-page="store"][data-store-mode="enquiry"] #catalogue .catalogue-card .actions a[href^="https://wa.me/"]{
  display:inline-flex; min-height:42px; padding:10px 8px; font-size:11px;
  line-height:1.35; white-space:normal; text-align:center; overflow-wrap:anywhere;
 }
}
