.home-product-search { padding-top: 40px; }
.global-product-search h2 { padding-bottom: 16px; border-bottom: 2px solid var(--ink); }
.global-search-fields input:focus, .global-search-fields select:focus { border-color: var(--blue); box-shadow: inset 0 -3px 0 var(--yellow); }
.type-autocomplete { position: relative; min-width: 0; }
.type-autocomplete-popup { position: absolute; top: calc(100% + 4px); left: 0; z-index: 100; width: max(100%, 260px); max-width: 80vw; background: white; border: 1px solid #aeb8c2; border-radius: 0; box-shadow: 0 8px 24px #152a3c26; }
.type-autocomplete-popup [role="listbox"] { max-height: 260px; overflow-y: auto; overscroll-behavior: contain; }
.type-autocomplete-popup [role="option"] { padding: 11px 12px; cursor: pointer; overflow-wrap: anywhere; }
.type-autocomplete-popup [role="option"]:hover, .type-autocomplete-popup [aria-selected="true"] { background: #e4eef7; color: var(--blue); }
.type-autocomplete-status { padding: 10px 12px; border-top: 1px solid #dce1e6; color: #53616d; font-size: 0.875rem; font-weight: 400; }
 .global-product-search { padding: 0; margin-bottom: 32px; background: transparent; border: 0; border-radius: 0; }
.global-product-search h2, .global-product-results h2 { font-size: 1.35rem; font-weight: 800; margin: 0 0 12px; }
.global-product-search p, .global-search-help { color: #53616d; font-size: .9rem; }
.global-search-fields { display: grid; grid-template-columns: 1.4fr repeat(3, 1fr) auto; gap: 12px; align-items: end; }
.global-search-fields label { display: grid; gap: 7px; min-width: 0; }
.global-search-fields input, .global-search-fields select { width: 100%; min-width: 0; min-height: 45px; padding: 0 14px; border: 1px solid #aeb8ca; border-radius: 0; background: #fff; color: var(--ink); font-size: 0.875rem; }
.global-search-fields button { min-height: 45px; padding: 0 17px; border: 1px solid var(--blue); border-radius: 0; background: var(--blue); color: #fff; font-size: 0.875rem; font-weight: 800; }
.global-search-help { display: flex; justify-content: space-between; gap: 16px; margin-top: 16px; }
.global-search-help a, .global-product-results a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.global-product-results { margin-bottom: 40px; scroll-margin-top: 110px; }
.global-product-results h2 small { font-size: .9rem; color: #53616d; margin-left: 12px; }
.global-results-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 20px; margin-bottom: 16px; }
.global-results-heading h2 { margin: 0; }
.global-results-range { color: #53616d; font-size: 0.875rem; font-variant-numeric: tabular-nums; }
.global-results-scroll { border-radius: 0; }
.global-results-scroll:focus-visible { outline: 3px solid #b07900; outline-offset: 3px; }
.global-product-results td { overflow-wrap: anywhere; }
.global-product-results tbody tr:hover { background: #edf3f8; }
.global-product-results td:nth-child(2) { font-weight: 700; color: var(--blue); }
.global-product-results td:nth-child(n+3):nth-child(-n+5) { font-variant-numeric: tabular-nums; }
.global-search-pagination { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 24px 0 8px; }
.global-pagination-buttons { display: flex; align-items: center; gap: 6px; }
.global-pagination-buttons a, .global-pagination-buttons span { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 42px; padding: 0 10px; border: 1px solid #dce1e6; border-radius: 0; font-size: .9rem; font-weight: 700; text-decoration: none; background: white; font-variant-numeric: tabular-nums; }
.global-pagination-buttons a:hover { background: #e4eef7; border-color: var(--blue); }
.global-pagination-buttons .is-current { background: var(--blue); color: #fff; border-color: var(--blue); box-shadow: none; }
.global-pagination-buttons .is-disabled { color: #aeb8c2; background: #f4f6f8; }
.global-pagination-summary { color: #53616d; font-size: 0.875rem; }
@media (max-width: 480px) { .global-pagination-buttons { gap: 3px; } .global-pagination-buttons a, .global-pagination-buttons span { min-width: 28px; height: 38px; padding: 0 5px; font-size: 0.875rem; } }
.global-search-empty { padding: 24px; background: #f4f6f8; }
.global-product-search :focus-visible, .global-product-results a:focus-visible { outline: 3px solid #b07900; outline-offset: 3px; }
@media (max-width: 767px) { .global-search-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } .global-search-fields button { grid-column: 1 / -1; } .global-product-search { padding: 0; } .global-search-help { flex-wrap: wrap; } }


/* Product finder: shared brand colors, square edges and a distinct search workspace. */
.global-product-search { border: 1px solid var(--line); border-top: 4px solid var(--blue); background: #fff; }
.search-panel-header { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 25px 28px; background: var(--blue); color: #fff; }
.search-panel-kicker { display: block; margin-bottom: 9px; color: var(--yellow); font-size: 0.875rem; font-weight: 900; letter-spacing: .18em; }
.global-product-search .search-panel-header h2 { padding: 0; border: 0; margin: 0 0 9px; font-size: 1.65rem; font-weight: 900; color: #fff; }
.global-product-search .search-panel-header p { margin: 0; color: #e0e7f4; font-size: 0.875rem; line-height: 1.7; }
.search-type-count { flex-shrink: 0; padding-left: 24px; border-left: 1px solid #ffffff40; color: #e0e7f4; font-size: 0.875rem; letter-spacing: .08em; }
.search-type-count strong { display: block; margin-top: 4px; color: var(--yellow); font-size: 1.75rem; font-variant-numeric: tabular-nums; }
.global-product-search form { padding: 28px; }
.global-search-fields { grid-template-columns: 1.5fr repeat(3, 1fr) auto; gap: 12px; align-items: start; }
.global-search-fields .specification-search-field { gap: 10px; }
.global-search-fields .specification-search-field > span { min-height: 18px; display: flex; align-items: center; gap: 8px; }
.search-type-field > span b { font-weight: 900; }
.search-type-field small { color: var(--muted); font-size: 0.875rem; line-height: 1.5; font-weight: 400; }
.global-search-fields input, .global-search-fields select { min-height: 52px; background: #fafbfe; }
.global-search-fields .search-submit { display: flex; align-items: center; justify-content: center; gap: 22px; min-height: 52px; margin-top: 28px; padding: 0 22px; background: var(--yellow); border-color: var(--yellow); color: var(--ink); font-size: .88rem; font-weight: 900; }
.global-search-fields .search-submit:hover { background: var(--ink); border-color: var(--ink); color: #fff; }
.search-submit span { font-size: 1.2rem; }
.global-search-help { padding-top: 18px; margin-top: 22px; border-top: 1px solid var(--line); font-size: 0.875rem; line-height: 1.7; }
.global-search-help strong { margin-right: 10px; color: var(--blue); font-size: 0.875rem; }
.global-search-help a { white-space: nowrap; font-weight: 800; text-decoration: none; }
.type-autocomplete input { padding-right: 42px; }
.global-search-fields .type-list-toggle { position: absolute; top: 1px; right: 1px; width: 38px; min-height: 50px; padding: 0; background: transparent; border: 0; border-left: 1px solid var(--line); color: var(--blue); }
.type-autocomplete-popup { border-color: var(--blue); border-top: 3px solid var(--yellow); }
@media (max-width: 991px) {
 .global-search-fields { grid-template-columns: repeat(3, minmax(0, 1fr)); }
 .search-type-field { grid-column: 1 / -1; }
 .global-search-fields .search-submit { grid-column: 1 / -1; margin-top: 4px; }
}
@media (max-width: 575px) {
 .search-panel-header { padding: 20px; gap: 12px; }
 .global-product-search .search-panel-header h2 { font-size: 1.3rem; }
 .search-type-count { padding-left: 12px; }
 .search-type-count strong { font-size: 1.2rem; }
 .global-product-search form { padding: 20px 16px; }
 .global-search-fields { gap: 10px 8px; }
 .global-search-fields input { padding-left: 10px; padding-right: 8px; }
 .type-autocomplete input { padding-right: 42px; }
 .global-search-help { flex-direction: column; gap: 12px; }
}

/* Keep the homepage finder and following product section in one visual rhythm. */
.home-product-search { padding-top: 32px; }
.home-product-search > .global-product-search { margin-bottom: 0; }
.home-product-search + .products-section { padding-top: 56px; }
.search-panel-header { padding: 22px 28px; }
.global-product-search form { padding: 24px 28px; }
.global-search-help { margin-top: 16px; padding-top: 14px; }
@media (max-width: 767px) {
 .home-product-search { padding-top: 24px; }
 .home-product-search + .products-section { padding-top: 36px; }
 .search-panel-header { padding: 20px; }
 .global-product-search form { padding: 20px 16px; }
}

.catalog-consultation { display: grid; grid-template-columns: 1.2fr 1fr; margin-top: 48px; border-top: 4px solid var(--yellow); background: var(--blue); color: #fff; }
.catalog-consultation-copy { padding: 32px; }
.catalog-consultation-kicker { color: var(--yellow); font-size: 0.875rem; font-weight: 900; letter-spacing: .16em; }
.catalog-consultation h3 { margin: 14px 0; font-size: 1.55rem; font-weight: 900; }
.catalog-consultation p { margin: 0 0 24px; color: #e0e7f4; font-size: 0.875rem; line-height: 1.85; }
.catalog-consultation-link { display: inline-flex; align-items: center; gap: 28px; padding: 14px 20px; background: var(--yellow); color: var(--ink); font-size: 0.875rem; font-weight: 900; }
.catalog-consultation-link:hover { background: #fff; color: var(--ink); }
.catalog-consultation-link:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
.catalog-consultation-guide { margin: 28px 0; padding: 4px 28px; border-left: 1px solid #ffffff40; }
.catalog-consultation-guide h4 { margin: 0 0 10px; color: #fff; font-size: 0.875rem; font-weight: 800; }
.catalog-consultation-guide ul { list-style: none; padding: 0; margin: 0; }
.catalog-consultation-guide li { display: flex; gap: 14px; padding: 13px 0; border-bottom: 1px solid #ffffff25; }
.catalog-consultation-guide li:last-child { border-bottom: 0; }
.catalog-consultation-guide li > b { color: var(--yellow); font-size: 0.875rem; padding-top: 2px; }
.catalog-consultation-guide strong, .catalog-consultation-guide span { display: block; font-size: 0.875rem; }
.catalog-consultation-guide span { margin-top: 5px; color: #e0e7f4; font-size: 0.875rem; line-height: 1.6; }
@media (max-width: 767px) { .catalog-consultation { grid-template-columns: 1fr; margin-top: 32px; } .catalog-consultation-copy { padding: 24px; } .catalog-consultation-guide { margin: 0 24px 24px; padding: 22px 0 0; border-left: 0; border-top: 1px solid #ffffff40; } }
