/* Source-specific additions for the filter, wash and dry system. */
.filter-wash-spec-hint { margin:0 0 12px; font-size:13px; color:#737373; }
.filter-wash-spec-scroll { width:100%; overflow-x:auto; overflow-y:hidden; padding-block:2px; }
.filter-wash-spec-scroll:focus-visible { outline:2px solid #376036; outline-offset:4px; }
.filter-wash-spec-table { width:100%; min-width:1000px; table-layout:fixed; border-collapse:collapse; font-size:clamp(17px,1.25vw,24px); line-height:1.25; color:#333; }
.filter-wash-spec-table th,.filter-wash-spec-table td { border:3px solid #505050; padding:5px 6px; text-align:center; vertical-align:middle; font-weight:400; }
.filter-wash-spec-table thead th { height:110px; background:#59ad58; color:#fff; font-weight:500; }
.filter-wash-spec-table tbody tr { height:50.8px; }
.filter-wash-spec-table tbody .is-shaded { background:#cecece; }
.filter-wash-spec-table .filter-wash-pressure { background:#fff; }
.filter-wash-pressure span { display:block; transform:translateY(-72px); }
.filter-wash-spec-note { margin:46px 3px 0; font-size:clamp(15px,1.145833vw,22px); line-height:26px; }
.filter-wash-spec-note p { margin:0; }
.filter-wash-spec-note p[lang] { padding-left:54px; text-indent:-54px; }
@media(max-width:991.98px) { .filter-wash-spec-note { margin-top:24px; line-height:24px; } .filter-wash-spec-note p[lang] { padding-left:0; text-indent:0; } }
/* Two source states share the same explanatory paragraph. */
.filter-wash-principle .filter-wash-principle-media { display:grid; place-items:center; height:100%; min-height:497px; margin-right:21px; }
.filter-wash-principle .filter-wash-principle-media img { width:100%; height:auto; max-height:497px; object-fit:contain; }
.filter-wash-principle .filter-wash-principle-media img.is-flow { width:95.366%; }
.filter-wash-principle .filter-wash-principle-copy { min-height:497px; height:100%; padding:30px; gap:20px; }
.filter-wash-principle-copy h3 { margin:0 0 20px; font-size:26px; line-height:31px; }
.filter-wash-principle-copy p { line-height:30px; }
.filter-wash-principle-controls { gap:20px; margin-top:auto; }
.filter-wash-principle-controls button { position:relative; flex:0 0 auto; width:clamp(48px,4vw,66px); height:clamp(48px,4vw,66px); padding:0; border:0; border-radius:50%; background:none; }
.filter-wash-principle-controls img { display:block; width:100%; height:100%; }
.filter-wash-principle-controls [data-principle-direction="-1"] img { transform:scaleX(-1); }
.filter-wash-control-hover { position:absolute; inset:0; opacity:0; }
.filter-wash-principle-controls button:hover .filter-wash-control-hover,.filter-wash-principle-controls button:focus-visible .filter-wash-control-hover { opacity:1; }
.filter-wash-principle-controls button:focus-visible { outline:3px solid #376036; outline-offset:4px; }
@media(max-width:991.98px) {
 .filter-wash-principle .filter-wash-principle-media { min-height:0; margin-right:0; aspect-ratio:669/497; }
 .filter-wash-principle .filter-wash-principle-copy { min-height:0; padding:24px 14px 16px; }
}
.product-filter-wash-dry.product-reviewed .filter-wash-highlights .highlight-list { padding-inline:85px 20px; }
.filter-wash-highlights ul { margin:0; padding-left:24px; font-size:16px; line-height:30px; }
@media (max-width:991.98px) { .product-filter-wash-dry.product-reviewed .filter-wash-highlights .highlight-list { padding-inline:24px; } }
.product-filter-wash-dry { --reviewed-feature-column:290px; --reviewed-related-width:min(calc(100% - 36px),1600px); --reviewed-related-padding:60px; }
.product-filter-wash-dry.product-reviewed .detail-hero p { max-width:370px; }
.product-filter-wash-dry.product-reviewed .detail-product-visual img { width:72.86%; height:72.86%; }
@media (min-width:992px) { .product-filter-wash-dry.product-reviewed .detail-overview-copy { padding:83px 42px 83px 39px; } }
