/* R01 only. A header in normal flow also reserves its real height after text reflow. */
.mp-equipment-finder-page { overflow-wrap: anywhere; }
.mp-equipment-finder-page .mp-bulk-hero-copy h1 { overflow-wrap: anywhere; }
.mp-equipment-finder-page .mp-selection-entrance-line > span { white-space: normal; }
.mp-equipment-finder-page .mp-site-header { position: sticky !important; top: 0; height: auto; }
.mp-equipment-finder-page .mp-site-footer-grid > * { min-width: 0; }
.mp-equipment-finder-page .mp-site-footer-contact a { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
@media (min-width: 1100px) {
    .mp-equipment-finder-page .mp-header-catalogue > span:last-child { overflow-wrap: normal; }
}
.mp-equipment-finder-page.mp-equipment-selection .mp-selection-main { padding-top: 22px; }
.mp-equipment-finder-page .mp-bulk-main { padding-top: 0 !important; }
.mp-equipment-finder-page .mp-selection-breadcrumb { margin-bottom: 12px; }
.mp-equipment-finder-page .mp-selection-intro { padding-top: 8px; }
.mp-equipment-finder-page :is(.mp-selection-phone, .mp-selection-contact-links a) { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.mp-equipment-finder-page .mp-selection-contact > * { min-width: 0; }
.mp-equipment-finder-page .mp-selection-form { grid-template-columns: minmax(0, 1fr); overflow-wrap: anywhere; }
.mp-equipment-finder-page .mp-selection-form > * { min-width: 0; }
.mp-equipment-finder-page .mp-selection-form :is(input, select, textarea) { min-width: 0; max-width: 100%; box-sizing: border-box; }
.mp-equipment-finder-page .mp-bulk-main { overflow-wrap: anywhere; }
.mp-equipment-finder-page .mp-bulk-main :is(article, header, form, div) { min-width: 0; }
.mp-equipment-finder-page .mp-bulk-form { grid-template-columns: minmax(0, 1fr); }
.mp-equipment-finder-page .mp-bulk-form > * { min-width: 0; }
.mp-equipment-finder-page .mp-bulk-form :is(input, select, textarea) { min-width: 0; max-width: 100%; box-sizing: border-box; }
.mp-equipment-finder-page :is(.mp-bulk-call, .mp-bulk-contact-links a) { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.mp-equipment-finder-page .mp-bulk-breadcrumbs { max-height: none; white-space: normal; overflow: visible; flex-wrap: wrap; line-height: 1.4; }
.mp-equipment-finder-page .mp-bulk-lead { display: block; overflow: visible; -webkit-line-clamp: unset; }
.mp-equipment-finder-page .mp-selection-jumps a { display: grid; grid-template-columns: 88px minmax(0, 1fr) auto; padding: 10px 14px; }
.mp-equipment-finder-page .mp-selection-jumps img { width: 88px; height: 94px; object-fit: contain; }
.mp-equipment-finder-page .mp-selection-more li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; }
.mp-equipment-finder-page .mp-selection-more li > a { min-width: 0; overflow-wrap: anywhere; }
.mp-equipment-finder { margin: 28px 0 40px; padding: clamp(16px, 3vw, 28px); border: 1px solid #cbd5d9; border-radius: 16px; background: #f5f8f9; color: #182b35; scroll-margin-top: 110px; }
.mp-bulk-main > .mp-equipment-finder { width: min(1240px, calc(100% - 40px)); margin-inline: auto; box-sizing: border-box; }
.mp-equipment-finder [hidden], .mp-equipment-finder[hidden], .mp-finder-add[hidden], .mp-finder-open[hidden], .mp-finder-limit[hidden] { display: none !important; }
.mp-finder-heading { display: flex; align-items: start; justify-content: space-between; gap: 20px; }
.mp-equipment-finder .mp-finder-heading h2 { font-size: clamp(23px, 2.6vw, 34px); margin: 0 0 10px; line-height: 1.2; }
.mp-finder-heading p { margin: 0; }
.mp-finder-heading > button { flex: 0 0 auto; }
.mp-finder-toolbar { display: flex; justify-content: flex-end; margin-top: 18px; }
.mp-equipment-finder button, .mp-finder-add { min-height: 44px; padding: 9px 12px; border: 1px solid #7a909c; border-radius: 6px; background: #fff; color: #183847; font: inherit; font-size: 15px; line-height: 1.4; cursor: pointer; }
.mp-finder-add { margin-top: 12px; }
.mp-finder-limit { display: grid; gap: 4px; flex: 1 0 100%; min-width: 0; width: 100%; box-sizing: border-box; margin-top: 10px; padding: 10px 12px; border: 1px solid #a78738; border-radius: 6px; background: #fff6dc; color: #443812; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.mp-finder-limit a { color: #065f90; min-height: 44px; align-content: center; text-underline-offset: 3px; }
.mp-bulk-model-copy .mp-finder-limit { flex: 0 0 auto; font-size: 14px; font-weight: 400; letter-spacing: normal; text-transform: none; }
.mp-finder-add[aria-pressed="true"] { color: #fff; background: #15587b; border-color: #15587b; }
.mp-selection-more .mp-finder-add { margin: 0; flex: 0 0 auto; }
.mp-equipment-finder button:hover, .mp-finder-add:hover { border-color: #006aa3; }
.mp-equipment-finder button:disabled { opacity: .5; cursor: default; }
.mp-equipment-finder :is(a,button,select,.mp-finder-scroll):focus-visible, .mp-finder-add:focus-visible { outline: 3px solid #0076b8; outline-offset: 3px; }
.mp-finder-slots { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; margin-top: 22px; }
.mp-finder-slot { min-width: 0; }
.mp-finder-slot label { display: block; font-size: 14px; font-weight: 650; margin-bottom: 7px; }
.mp-finder-slot > div { display: flex; gap: 6px; }
.mp-finder-slot select { width: 100%; min-width: 0; min-height: 46px; padding: 9px; border: 1px solid #7a909c; border-radius: 6px; background: #fff; color: inherit; font: inherit; font-size: 16px; }
.mp-finder-slot button { flex: 0 0 44px; font-size: 23px; padding: 0; }
.mp-finder-status, .mp-finder-scroll-hint { font-size: 14px; line-height: 1.5; }
.mp-finder-scroll-hint { margin: 18px 0 8px; color: #425967; }
.mp-finder-scroll { overflow-x: auto; max-width: 100%; border: 1px solid #cbd5d9; border-radius: 8px; background: #fff; }
/* At the normal15px table font, minima stay240/640px. Growing text gives
   labels and complete words more room inside the existing scroll region. */
.mp-finder-scroll table { border-collapse: collapse; table-layout: fixed; width: 100%; min-width: max(640px, calc(56em - 200px)); font-size: 15px; line-height: 1.5; }
.mp-finder-scroll table[data-mp-compare-count="1"] { min-width: max(0px, calc(36em - 300px)); }
.mp-finder-scroll table[data-mp-compare-count="1"] th:first-child { width: clamp(72px, 34%, max(150px, 8em)); }
.mp-finder-scroll table[data-mp-compare-count="1"] :is(th,td) { padding: 10px; }
.mp-finder-scroll th, .mp-finder-scroll td { padding: 16px; text-align: left; vertical-align: top; border-bottom: 1px solid #d7e0e4; overflow-wrap: anywhere; }
.mp-finder-scroll thead th { background: #e6eef2; font-size: 17px; }
.mp-finder-scroll th:first-child { width: max(150px, 8em); }
.mp-finder-scroll tbody th { font-weight: 600; }
.mp-finder-scroll ul { margin: 0; padding-left: 18px; }
.mp-finder-scroll li + li { margin-top: 7px; }
.mp-finder-scroll button { width: 100%; }
.mp-finder-scroll a { color: #065f90; text-underline-offset: 3px; }
.mp-finder-model-link { display: grid; grid-template-rows: 96px auto; gap: 12px; min-width: 0; }
.mp-finder-model-link img { display: block; width: 96px; height: 96px; max-width: 100%; object-fit: contain; background: transparent; }
.mp-finder-help { display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid #cbd5d9; padding-top: 18px; margin-top: 20px; }
.mp-finder-help p { max-width: 740px; margin: 0; font-size: 15px; }
.mp-finder-help a { flex: 0 0 auto; min-height: 44px; align-content: center; font-weight: 650; color: #065f90; }
.mp-finder-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.mp-equipment-finder-page .mp-bulk-directions { display: flex; flex-wrap: wrap; gap: 10px 20px; padding: 18px 24px; margin: 0 auto; width: min(1240px, calc(100% - 40px)); box-sizing: border-box; }
.mp-bulk-directions a { min-height: 44px; align-content: center; color: #065f90; font-weight: 650; text-underline-offset: 4px; }
.mp-equipment-finder-page .mp-bulk-models { padding-block: 36px; }
.mp-equipment-finder-page .mp-bulk-form { scroll-margin-top: 110px; }
.mp-equipment-finder-page .mp-bulk-form select[name="subject_id"] { width: 100%; min-width: 0; max-width: 100%; min-height: 48px; box-sizing: border-box; font: inherit; font-size: 16px; padding: 10px; }
@media (max-width: 760px) {
    .mp-equipment-finder-page .mp-selection-contact { grid-template-columns: minmax(0, 1fr); }
    .mp-equipment-finder-page .mp-bulk-contact { grid-template-columns: minmax(0, 1fr); }
    .mp-equipment-finder-page .mp-selection-form :is(.mp-form-grid, .mp-selection-brief-fields) { grid-template-columns: minmax(0, 1fr); }
    .mp-finder-heading, .mp-finder-help { flex-direction: column; gap: 12px; }
    .mp-finder-heading > button { align-self: flex-start; }
    .mp-finder-slots { grid-template-columns: 1fr; gap: 12px; }
    .mp-equipment-finder { margin-block: 20px 28px; }
    .mp-bulk-main > .mp-equipment-finder, .mp-equipment-finder-page .mp-bulk-directions { width: calc(100% - 32px); }
    .mp-equipment-finder-page .mp-selection-jumps a { grid-template-columns: 68px minmax(0,1fr) auto; gap: 10px; }
    .mp-equipment-finder-page .mp-selection-jumps img { width: 68px; height: 78px; }
    .mp-equipment-finder-page .mp-selection-more li { align-items: flex-start; flex-direction: column; flex-wrap: nowrap; gap: 6px; }
    .mp-selection-more .mp-finder-limit { flex: 0 0 auto; }
    .mp-equipment-finder-page .mp-bulk-hero h1 { line-height: 1.08 !important; }
    .mp-equipment-finder-page .mp-bulk-breadcrumbs { font-size: 12px; }
    .mp-equipment-finder-page .mp-bulk-primary-cta { font-size: 14px; }
    .mp-equipment-finder-page .mp-bulk-call span { font-size: 10px; }
    .mp-equipment-finder-page .mp-bulk-call strong { font-size: 14px; white-space: normal; overflow-wrap: anywhere; }
    .mp-equipment-finder-page .mp-bulk-hero .mp-eyebrow { font-size: 12px; line-height: 1.5; }
    .mp-equipment-finder-page .mp-bulk-hero-media figcaption { font-size: 12px; line-height: 1.5; }
}

@media (max-width: 520px) {
    .mp-equipment-finder-page .mp-site-header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; }
    .mp-equipment-finder-page .mp-site-header .mp-header-tools { min-width: 0; flex-wrap: wrap; justify-content: flex-end; }
}

.mp-finder-open { display: inline-flex; min-height: 44px; align-items: center; color: #065f90; text-underline-offset: 3px; font-size: 15px; }
#equipment-compare-title, .mp-equipment-finder-page .mp-bulk-model-group { scroll-margin-top: 110px; }

@media (max-width: 360px) {
    .mp-equipment-finder-page .mp-bulk-hero-actions { grid-template-columns: minmax(0, 1fr); }
    .mp-equipment-finder-page .mp-selection-jumps a { grid-template-columns: 52px minmax(0, 1fr) auto; gap: 8px; }
    .mp-equipment-finder-page .mp-selection-jumps img { width: 52px; }
    .mp-equipment-finder-page.mp-equipment-selection .mp-selection-phone { font-size: 14px; }
}
