/* v16: retail storefront + wholesale catalog. No scroll listeners. */
:root{--contact-height:48px}
html{scroll-padding-top:126px}
.utility-bar{position:sticky;top:0;z-index:55;background:#244d3c}
.utility-inner{height:var(--contact-height);min-height:var(--contact-height);gap:16px}
.utility-inner>span{font-size:12px;letter-spacing:.02em;white-space:nowrap}
.utility-inner>span b{font-weight:500;margin-left:12px}
.utility-inner .contact-actions{display:flex;align-items:center;gap:24px;margin-left:auto}
.contact-actions>a{display:flex;align-items:center;gap:9px;min-height:44px;color:#fff;font-size:12px;white-space:nowrap}
.contact-actions>a .icon{width:17px;height:17px}
.contact-actions>a strong{font-size:18px;letter-spacing:.03em;font-weight:600;font-variant-numeric:tabular-nums}
.contact-actions .contact-list{display:flex;align-items:center;gap:8px;min-height:40px;border-left:1px solid #ffffff3a;padding:0 0 0 22px;color:#fff;font-size:12px;white-space:nowrap}
[data-quote-count]{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;border-radius:4px;background:#eef4e8;color:#244d3c;font-size:11px;font-weight:600;padding-inline:4px}
.main-nav{top:var(--contact-height)}
.catalog-inquiry-link{gap:7px!important;font-size:12px!important}
.catalog-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e8ece5;padding:17px 0 22px}
.catalog-tools>p{color:#798273;font-size:12px;line-height:1.9}
.catalog-tools>p strong{font-weight:500;color:#44533c;margin-right:5px}
.catalog-views{display:flex;align-items:center;gap:4px;flex-shrink:0}
.catalog-views button{display:flex;align-items:center;gap:6px;border:1px solid #e4e9df;border-radius:4px;min-height:40px;padding:7px 11px;font-size:12px;color:#7e8777}
.catalog-views button[aria-pressed="true"]{border-color:#35553e;color:#244d3c;background:#f1f5ed}
.catalog-views .icon{width:15px;height:15px}
.product-spec{font-size:12px;color:#7c8474;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:3em;margin-top:7px;overflow-wrap:anywhere}
.product-price .retail-label{display:block;font-size:10px;font-weight:400;line-height:1.7;letter-spacing:0;color:#8a9383}
.product-card-buttons>button{font-size:12px;min-height:39px}
.product-card-buttons>button:last-child{color:#35553e;font-weight:500}
.detail-info .detail-retail-label{display:block;font-size:13px;font-weight:400;color:#7d8773;margin-bottom:2px}
.detail-wholesale{border:1px solid #dce5d4;background:#f5f8f1;border-radius:6px;margin-top:22px;padding:19px;scroll-margin-top:12px}
.detail-wholesale strong{font-size:15px;font-weight:600;color:#354c2b}
.detail-wholesale p{font-size:12px;color:#7a8671;line-height:1.8;margin:5px 0 13px}
.detail-wholesale .button{width:100%;background:white;border-color:#bacbb0;color:#35553e;font-size:13px;min-height:44px}
.detail-wholesale .text-button{display:flex;margin-top:5px;font-size:12px;min-height:40px;color:#5d7550}
#product-grid.catalog-list{display:flex;flex-direction:column;gap:0;border-top:1px solid #dce3d5}
.catalog-item{display:grid;grid-template-columns:96px minmax(0,1fr) 145px 255px;align-items:center;gap:24px;padding:24px 8px;border-bottom:1px solid #e6ebe0;min-width:0;background:#fff}
.catalog-thumb,.quote-thumb{background:white;display:block;padding:0;border:1px solid #e8ece3;border-radius:6px;overflow:hidden;aspect-ratio:1}
.catalog-thumb img,.quote-thumb img{width:100%;height:100%;object-fit:contain;padding:8px;background:white}
.catalog-item-info{min-width:0}
.catalog-code{display:block;font-size:12px;color:#577248;letter-spacing:.02em;font-variant-numeric:tabular-nums}
.catalog-code small{font-size:11px;color:#939c8c;border-left:1px solid #d8dfd1;margin-left:9px;padding-left:9px}
.catalog-item-name{display:block;text-align:left;font-size:17px;color:#2a3224;line-height:1.55;font-weight:500;letter-spacing:-.4px;padding:4px 0;overflow-wrap:anywhere;white-space:normal}
.catalog-item-info p{font-size:12px;color:#7a8470;line-height:1.8;overflow-wrap:anywhere}
.catalog-availability{display:block;color:#818c76;font-size:11px;margin-top:7px}
.catalog-retail{padding-left:12px;border-left:1px solid #edf0e8;min-width:0}
.catalog-retail>span{display:block;font-size:11px;color:#8c9682}
.catalog-retail>strong{display:block;color:#25301d;font-size:22px;line-height:1.5;font-weight:650;letter-spacing:-.6px;white-space:nowrap}
.catalog-retail small{font-size:12px;font-weight:400;margin-left:2px}
.catalog-retail>button{display:block;padding:7px 0;min-height:40px;font-size:11px;color:#798970;text-align:left}
.catalog-choose{display:flex;flex-direction:column;gap:9px;min-width:0}
.catalog-choose label,.quote-item>label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#7d8973;min-width:0}
.catalog-choose select,.catalog-choose input,.quote-item input{border:1px solid #dbe3d3;background:#fff;border-radius:4px;min-height:42px;font-size:14px;color:#384e2b;width:100%;min-width:0;padding:7px 10px;box-sizing:border-box}
.catalog-choose>div{display:grid;grid-template-columns:80px minmax(0,1fr);gap:9px;align-items:end}
.catalog-choose>div>button{min-height:42px;background:#f0f5e9;color:#34512a;border:1px solid #cddbc1;border-radius:4px;padding:7px 10px;font-size:13px;white-space:nowrap}
.catalog-choose>div>button:hover{background:#e5efda}
.wholesale-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#f4f7f0;border:1px solid #e6ecdf;border-radius:8px;padding:28px 32px;margin-bottom:28px}
.wholesale-intro h2{font-size:25px;letter-spacing:-.8px;color:#33482a;line-height:1.5;margin:7px 0 12px;font-weight:550}
.wholesale-intro p{font-size:13px;color:#7a856f}
.wholesale-intro>a{display:block;font-size:27px;letter-spacing:-.7px;color:#294c29;white-space:nowrap;font-variant-numeric:tabular-nums}
.wholesale-intro>a small{display:block;font-size:12px;font-weight:400;letter-spacing:0;margin-bottom:7px;color:#7b8a6f}
.quote-list-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:10px;color:#445c35;font-size:14px}
.quote-list-heading strong{font-weight:500}
.quote-list-heading .text-button{font-size:13px;min-height:44px}
.quote-items{border-top:1px solid #dce4d4}
.quote-item{display:grid;grid-template-columns:78px minmax(0,1fr) 125px 50px;align-items:center;gap:24px;border-bottom:1px solid #e6ebdf;padding:22px 4px}
.quote-item>div{min-width:0}
.quote-item p{font-size:13px;color:#718264;overflow-wrap:anywhere}
.quote-unavailable{display:block;font-size:11px;margin-top:5px;color:#8c684b}
.quote-remove{font-size:12px;text-decoration:underline;text-underline-offset:3px;color:#89957d;min-height:44px}
.quote-contact{padding:25px 28px;margin-top:28px;border:1px solid #e3eadb;border-radius:6px;background:#fafbf8}
.quote-contact strong{font-size:16px;color:#3f5433;font-weight:500}
.quote-contact p{font-size:13px;color:#86917a;line-height:1.8;margin-top:7px}
.quote-contact-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.quote-contact-buttons .button{min-height:47px;font-size:13px;border-radius:4px}
.quote-contact-buttons .primary{background:#244d3c;border-color:#244d3c;color:white}
.quote-contact-buttons .secondary{border-color:#d7e1cd;background:white;color:#557147}
.quote-footnote{font-size:12px;color:#8c9681;line-height:1.9;margin-top:20px}
.large-text .catalog-item-name{font-size:20px}.large-text .catalog-item-info p,.large-text .product-spec{font-size:15px}.large-text .catalog-code,.large-text .quote-item p{font-size:15px}
@media(max-width:1150px){.catalog-item{grid-template-columns:78px minmax(0,1fr) 115px 210px;gap:17px}.catalog-item-name{font-size:16px}.catalog-retail>strong{font-size:20px}.wholesale-intro{padding:25px}.wholesale-intro>a{font-size:22px}}
@media(max-width:800px){:root{--contact-height:46px}html{scroll-padding-top:116px}.utility-inner{width:calc(100% - 32px);justify-content:space-between}.utility-inner>span{display:none}.utility-inner .contact-actions{width:100%;margin:0;gap:10px;justify-content:space-between}.contact-actions>a{font-size:11px;gap:6px}.contact-actions>a strong{font-size:17px}.contact-actions .contact-list{font-size:11px;padding-left:12px;gap:6px}.catalog-tools{align-items:flex-start;flex-wrap:wrap;gap:10px}.catalog-tools>p{font-size:12px}.catalog-views{margin-left:auto}.catalog-item{grid-template-columns:76px minmax(0,1fr) 210px;gap:18px}.catalog-retail{grid-column:2;grid-row:2;padding:0;border:0;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;margin-top:-12px}.catalog-retail>button{width:100%;padding:0}.catalog-choose{grid-column:3;grid-row:1/3}.catalog-thumb{align-self:start}.catalog-item-info p{font-size:12px}.catalog-item-name{font-size:16px}.wholesale-intro{align-items:flex-start;flex-direction:column;gap:21px}.wholesale-intro h2{font-size:23px}.wholesale-intro>a{font-size:25px}.quote-item{grid-template-columns:65px minmax(0,1fr) 90px 35px;gap:13px}.quote-item>label{font-size:11px}.quote-item input{font-size:16px}.quote-contact{padding:22px}.quote-contact-buttons{gap:8px}.quote-contact-buttons .button{padding-inline:15px}.product-card-buttons>button{font-size:11px}}
@media(max-width:560px){.contact-actions>a .icon{display:none}.contact-actions>a strong{font-size:16px}.contact-actions .contact-list>span{display:none}.contact-actions .contact-list{padding-left:10px}.catalog-inquiry-link{font-size:10px!important;padding:6px 8px!important;gap:4px!important;white-space:nowrap}.section-heading h2{font-size:20px}.catalog-tools{padding-top:14px}.catalog-tools>p strong{display:block}.catalog-views button{min-height:42px;padding:7px 13px;font-size:12px}.catalog-item{grid-template-columns:72px minmax(0,1fr);gap:10px 15px;padding:21px 0}.catalog-item-info{grid-column:2}.catalog-thumb{grid-column:1;grid-row:1/3}.catalog-item-name{font-size:16px}.catalog-code{font-size:11px}.catalog-code small{font-size:10px}.catalog-retail{grid-column:2;grid-row:2;gap:5px 9px;margin:0}.catalog-retail>button{width:auto;margin-left:auto;font-size:10px;min-height:34px}.catalog-retail>strong{font-size:20px}.catalog-choose{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:10px;margin-top:5px}.catalog-choose>div{grid-template-columns:60px minmax(0,1fr);gap:7px}.catalog-choose select,.catalog-choose input{font-size:16px;min-height:44px;padding:7px}.catalog-choose>div>button{min-height:44px;font-size:12px;padding:7px 4px}.catalog-availability{margin-top:4px}.product-spec{font-size:11px;margin-top:5px}.product-card-buttons>button{font-size:10px;min-height:38px}.product-price .retail-label{font-size:10px}.wholesale-intro{padding:23px}.wholesale-intro p{font-size:12px}.quote-item{grid-template-columns:62px minmax(0,1fr) 40px;gap:10px 12px;align-items:start}.quote-item .quote-thumb{grid-row:1/3}.quote-item>div{grid-column:2}.quote-item>label{grid-row:2;grid-column:2;flex-direction:row;align-items:center;gap:12px}.quote-item input{width:92px;min-height:44px}.quote-remove{grid-column:3;grid-row:1;font-size:11px}.quote-item .catalog-item-name{font-size:15px}.quote-item p{font-size:12px}.quote-contact{padding:20px}.quote-contact strong{font-size:15px}.quote-contact p,.quote-footnote{font-size:12px}.quote-contact-buttons{display:grid;grid-template-columns:1fr 1fr}.quote-contact-buttons .primary{grid-column:1/-1}.quote-contact-buttons .button{padding-inline:8px;font-size:12px}.large-text .catalog-item-name{font-size:19px}.large-text .catalog-item-info p{font-size:14px}.large-text .catalog-tools>p{font-size:14px}}
@media(max-width:360px){.contact-actions>a strong{font-size:15px}.contact-actions>a{gap:5px}.contact-actions .contact-list{gap:4px;font-size:10px}.catalog-choose{grid-template-columns:1fr}.catalog-choose>div{grid-template-columns:80px minmax(0,1fr)}.section-heading h2{font-size:18px}}
