/* Shared layout repair: flexible content must never set a grid's minimum width. */
*,*::before,*::after{box-sizing:border-box}body{overflow-wrap:break-word}img{max-width:100%}main,.page-main,#productContent,.product-detail,.product-gallery,.product-info,.related-products{min-width:0}
body[data-page=product] .refined-detail{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.product-info{min-width:0;max-width:100%;overflow-wrap:anywhere}.product-options{grid-template-columns:repeat(2,minmax(0,1fr))}.product-options label,.product-options select{min-width:0;max-width:100%}.product-options select{font-size:16px}
.refined-detail .product-info h1{font:500 clamp(30px,3.5vw,46px)/1.15 'DM Sans',Arial,sans-serif;letter-spacing:-1.2px;margin:8px 0 20px;overflow-wrap:anywhere}.detail-spec{margin:0 0 20px}.product-tabs{flex-wrap:wrap;gap:12px 24px}.product-tabs button{min-height:44px;white-space:normal;text-align:left}.tab-panel{font-size:15px;line-height:1.8}.tab-panel ul{padding-left:20px}.tab-panel li{padding-left:0;margin-bottom:10px}.fit-accordion{width:100%}.fit-accordion summary span{display:none}.fit-accordion summary{font-size:15px;min-height:48px;gap:16px}.fit-accordion p{font-size:14px;line-height:1.8}.detail-meta{display:flex;flex-wrap:wrap;gap:12px!important}.detail-meta span{border:0!important;padding:0!important;overflow-wrap:anywhere}
.gallery-thumbs{display:flex;flex-wrap:wrap;gap:10px}.gallery-thumb{flex:0 0 64px;width:64px;height:64px}.refined-detail .detail-art img{height:100%;object-fit:contain}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid>button{min-width:0;text-align:left}.related-grid span,.related-grid strong{min-width:0;white-space:normal;overflow-wrap:anywhere}.related-grid img{flex-shrink:0;object-fit:contain}.product-info .reference-colors{max-width:100%}
.page-form input,.page-form textarea,.checkout-form input,.checkout-form select,.search-box input{font-size:16px}.page-split,.policy-layout{min-width:0}.page-split>*{min-width:0}.breadcrumbs{flex-wrap:wrap;line-height:1.7}.footer-grid>*{min-width:0}.footer-column a{overflow-wrap:anywhere}.product-name{overflow-wrap:anywhere}.card-spec{overflow-wrap:anywhere}.search-box{min-width:0}
.seo-catalogue{margin:32px 5%;border-top:1px solid var(--line);padding-top:28px}.seo-catalogue h2{font-size:24px;letter-spacing:-.5px}.seo-catalogue p{font-size:14px;max-width:70ch}.seo-links{display:flex;flex-wrap:wrap;gap:12px 24px}.seo-links a{font-size:14px;line-height:1.7;text-decoration:underline;text-underline-offset:4px}.server-product{padding:25px}.server-product img{width:min(100%,650px);object-fit:contain}.server-product h1{font-size:36px;letter-spacing:-1px}.server-product p{max-width:70ch}
@media(max-width:900px){body[data-page=product] .refined-detail{grid-template-columns:minmax(0,1fr);gap:28px}.refined-detail .product-gallery{position:static!important}.refined-detail .product-info{padding-top:0!important}.product-tabs{gap:10px 20px}.related-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){.product-options{grid-template-columns:minmax(0,1fr)}#productDialog{padding:18px}.tab-panel,.fit-accordion p{font-size:14px}.product-info .detail-purchase{flex-wrap:wrap}.detail-purchase>.button{max-width:100%;width:100%;justify-content:center}.gallery-thumb{flex-basis:56px;width:56px;height:56px}.refined-detail .product-info h1{font-size:32px}.related-grid>button{padding:14px}.related-grid img{width:64px;height:64px}.seo-catalogue{margin-top:24px}.seo-links{gap:10px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
.seo-catalogue summary{min-height:48px;font-size:14px}.seo-catalogue .seo-links{padding:15px 0}.product-name{display:inline-block}.product-info .tab-panel p{max-width:65ch}
/* Product pages and quick-view dialogs share the same bounded, inset layout. */
#productContent{width:100%;max-width:1440px;margin-inline:auto;padding:clamp(20px,3vw,48px)}
#productDialog .refined-detail{width:100%;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);margin:0}
#productDialog .product-info{width:100%;min-width:0;padding:8px 0 0;justify-self:stretch}
#productDialog .product-info>*{max-width:100%;min-width:0}
#productDialog .detail-purchase,#productDialog .product-tabs,#productDialog .fit-accordion{width:100%}
#productDialog .detail-purchase .button{min-width:0;flex:1;white-space:normal;overflow-wrap:anywhere;padding-inline:24px}
#productDialog .product-options{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}
#productDialog .product-options select{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding-right:32px}
body[data-page=product] #productDialog{max-width:1440px;margin-inline:auto;box-shadow:none;border-radius:0}
#productDialog .related-products{padding:0;margin-top:40px}
@media(max-width:900px){#productDialog .refined-detail{grid-template-columns:minmax(0,1fr)}#productContent{padding:24px}#productDialog .product-gallery{position:static}}
@media(max-width:650px){#productContent{padding:18px}#productDialog .product-options{grid-template-columns:minmax(0,1fr)}#productDialog .detail-purchase .button{padding-inline:18px}#productDialog .product-info{padding-top:0}body[data-page=product] #productDialog{width:100%;padding:0}}
/* Collection discovery: search, category pills, then four consistently labelled fields. */
#shop .section-top{align-items:center;margin-bottom:28px}#shop .section-top h2{margin:0}#shop .section-top>.text-link{font-size:14px;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}
#shop .shop-controls{display:block;border:1px solid #dedfd7;background:#f1f1eb;padding:24px;border-radius:12px;margin:0 0 32px}
#shop .search-box{display:flex;align-items:center;gap:14px;padding:0 16px;margin:0 0 22px;border:1px solid #c9cec5;border-radius:7px;background:#fffefa;min-height:56px;color:#465044}
#shop .search-box svg{flex:0 0 20px}#shop .search-box input{width:100%;min-width:0;flex:1;background:transparent;font-size:16px;color:#202522;padding:14px 0;border:0;min-height:54px}#shop .search-box input::placeholder{color:#666f65;opacity:1}#shop #resultCount{font-size:13px;color:#465044;white-space:nowrap;border-left:1px solid #dedfd7;padding-left:16px;line-height:1.5}
#shop .shop-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:22px;margin:0}#shop .filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:0;margin:0;width:100%}
#shop .filters button{flex:0 0 auto;min-height:44px;padding:10px 20px;border:1px solid #c9cec5;border-radius:6px;background:#fffefa;font-size:14px;line-height:1.4;color:#384235;margin:0}#shop .filters button.active{background:#263329;border-color:#263329;color:#fff}#shop .filters button::after{display:none}#shop .filters button:hover{border-color:#52634c}#shop .filters button:focus-visible{outline-offset:3px}
#shop .sort-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:16px;margin:0;width:100%;padding:0;border:0}#shop .filter-field{display:grid;gap:8px;min-width:0}#shop .filter-field label{font-size:12px;font-weight:600;line-height:1.4;color:#465044;margin:0}#shop .sort-controls select,#shop #familyFilter,#shop #deviceFilter{width:100%;max-width:100%;min-width:0;min-height:50px;font-size:15px;font-weight:400;line-height:1.4;color:#202522;border:1px solid #c9cec5;border-radius:6px;background-color:#fffefa;padding:12px 32px 12px 12px;text-align:left;grid-column:auto}
#shop .active-filters{min-height:0;margin:0}#shop .active-filters:not(:empty){display:flex;flex-wrap:wrap;gap:10px;padding-top:18px}#shop .filter-chip,#shop .reset-link{min-height:40px;font-size:13px}
@media(max-width:1000px){#shop .sort-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#shop .section-top{gap:12px;margin-bottom:22px}#shop .section-top h2{font-size:28px;line-height:1.2}#shop .section-top>.text-link{font-size:12px}#shop .shop-controls{padding:16px;border-radius:9px;margin-bottom:26px}#shop .search-box{padding-inline:12px;gap:10px;flex-wrap:wrap;margin-bottom:18px}#shop .search-box input{font-size:16px;width:calc(100% - 34px);flex-basis:calc(100% - 34px)}#shop #resultCount{width:100%;border-left:0;border-top:1px solid #e1e4dc;padding:8px 0;font-size:12px}#shop .filters{gap:7px}#shop .filters button{font-size:13px;padding:9px 14px}#shop .shop-toolbar{gap:20px}#shop .sort-controls{gap:14px 10px}#shop .sort-controls select,#shop #familyFilter,#shop #deviceFilter{font-size:16px;min-height:50px;padding-left:10px}#shop .filter-field label{font-size:12px}}
@media(max-width:380px){#shop .sort-controls{grid-template-columns:minmax(0,1fr)}#shop .section-top{align-items:flex-start;flex-direction:column}}
