/* The equipment catalogue: a quiet showroom with a practical browsing rail. */
.catalog-page { --catalog-surface: #f2f4f1; --catalog-soft-line: #e1e6e3; color: var(--ink); }
.catalog-page h1,.catalog-page h2,.catalog-page h3 { overflow-wrap: anywhere; }
.catalog-page a,.catalog-page button { -webkit-tap-highlight-color: transparent; }
.catalog-page .page-hero { align-items: center; }
.catalog-page .page-hero-split { grid-template-columns: minmax(0, 1.35fr) minmax(240px, .65fr); }
/* Titles use the available header width now that the summary cards are gone. */
.catalog-page .page-hero h1 { max-width: none; }
.catalog-hero-object { position: relative; min-height: 255px; display: grid; place-items: center; background: var(--catalog-surface); overflow: hidden; }
.catalog-hero-object img { display: block; width: 100%; height: 255px; object-fit: contain; mix-blend-mode: multiply; }
.catalog-hero-object > span { position: absolute; left: 20px; right: 20px; bottom: 15px; color: #71808a; font-size: 8px; letter-spacing: .3px; }

/* The horizontal department and family selectors also work with a trackpad. */
.catalog-category-strip { display: flex; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: #b4c1c7 #f5f7f4; border-bottom: 1px solid var(--line); padding: 25px 0; gap: 8px; }
.catalog-category-strip > a { display: flex; flex: 0 0 137px; flex-direction: column; align-items: flex-start; gap: 17px; min-height: 110px; padding: 12px 16px; font-size: 10px; line-height: 1.55; color: #596d7c; border-left: 1px solid var(--catalog-soft-line); }
.catalog-category-strip > a:first-child { border-left: 0; padding-left: 0; }
.catalog-category-strip [aria-current] { background: var(--catalog-surface); color: var(--blue); }
.catalog-family-area { padding-top: 28px; border-bottom: 1px solid var(--line); }
.catalog-section-caption { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.catalog-section-caption h2 { font-size: 23px; font-weight: 400; line-height: 1.2; letter-spacing: -.6px; }
.catalog-section-caption > span { font-size: 10px; color: #73818a; }
.catalog-family-strip { display: flex; gap: 17px; overflow-x: auto; padding: 0 2px 26px; overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: #b4c1c7 #f5f7f4; }
.catalog-family-strip > a { flex: 0 0 155px; min-width: 0; border-bottom: 2px solid transparent; padding-bottom: 10px; }
.catalog-family-strip > a[aria-current] { border-color: var(--red); }
.catalog-family-strip .catalog-visual { height: 112px; }
.catalog-family-strip .catalog-visual-symbol > .icon { width: 40px; height: 40px; stroke-width: 1; }
.catalog-family-strip .catalog-visual-caption { display: none; }
.catalog-family-strip > a > span { display: flex; align-items: baseline; gap: 14px; justify-content: space-between; font-size: 10px; line-height: 1.55; padding: 12px 0 0; }
.catalog-family-strip > a > span > .icon { flex-shrink: 0; width: 12px; height: 12px; }

/* Product listings use white card bodies and broad, uninterrupted image fields. */
.catalog-listing { display: grid; grid-template-columns: 220px minmax(0, 1fr); align-items: start; gap: 44px; padding: 47px 0 55px; }
.catalog-sidebar,.catalog-results { min-width: 0; }
.catalog-filter-details { border-bottom: 1px solid var(--line); }
.catalog-filter-details > summary { display: flex; justify-content: space-between; gap: 10px; align-items: center; padding: 0 0 22px; font-size: 15px; font-weight: 600; cursor: pointer; list-style: none; }
.catalog-filter-details > summary::-webkit-details-marker { display: none; }
.catalog-filter-details > summary > .icon { width: 15px; height: 15px; transition: transform 140ms ease; }
.catalog-filter-details[open] > summary > .icon { transform: rotate(180deg); }
.catalog-field { display: block; margin-bottom: 22px; color: #364b5c; font-size: 10px; font-weight: 600; }
.catalog-field input,.catalog-field select,.catalog-sort select { display: block; width: 100%; min-width: 0; max-width: 100%; height: 44px; padding: 0 10px; border: 1px solid #c6cfd2; border-radius: 0; background: #fff; color: #435966; font-family:var(--font-sans); font-size: 11px; font-weight: 400; }
.catalog-field select { margin-top: 10px; padding-right: 25px; }
.catalog-filter-group { min-width: 0; margin: 0 0 24px; padding: 22px 0 0; border: 0; border-top: 1px solid var(--catalog-soft-line); }
.catalog-filter-group legend { float: left; width: 100%; padding: 0 0 20px; font-size: 12px; line-height: 1.5; font-weight: 600; }
.catalog-filter-group legend + * { clear: both; }
.catalog-filter-group .catalog-field:last-child { margin-bottom: 0; }
.catalog-configuration-note { color: #657987; font-size: 10px; line-height: 1.7; margin-top: 16px; }
.catalog-request-configuration { text-align: left; }
.catalog-search-input { position: relative; margin-top: 10px; }
.catalog-search-input > .catalog-search-submit { position: absolute; left: 0; top: 0; width: 40px; height: 100%; display: grid; place-items: center; padding: 0; border: 0; background: transparent; color: #7b8c97; }
.catalog-search-input > .catalog-search-submit:hover { color: var(--red); }
.catalog-search-input > .catalog-search-submit .icon { width: 16px; height: 16px; }
.catalog-search-input > input { padding-left: 34px; }
.catalog-search-input input::placeholder { color: var(--text-secondary); opacity: 1; font-size: 10px; }
.catalog-filter-buttons { display: flex; flex-direction: column; align-items: stretch; gap: 6px; padding: 0 0 22px; }
.catalog-filter-buttons > .button { min-height: 43px; padding: 11px 12px; justify-content: space-between; font-size: 10px; border-color: #adbdc6; }
.catalog-filter-buttons > .button .icon { width: 15px; height: 15px; }
.catalog-reset { align-self: flex-start; padding: 10px 0; color: var(--text-secondary); font-size: 10px; text-decoration: underline; text-underline-offset: 3px; }
.catalog-sidebar-families { padding: 25px 0; border-bottom: 1px solid var(--line); }
.catalog-sidebar-families > a { display: flex; gap: 15px; align-items: baseline; justify-content: space-between; font-size: 10px; line-height: 1.55; padding: 9px 0; color: #647481; }
.catalog-sidebar-families > a > span { flex-shrink: 0; color: #87939b; font-size: 9px; font-variant-numeric: tabular-nums; }
.catalog-sidebar-families > a[aria-current] { color: var(--blue); font-weight: 700; }
.catalog-sidebar-families > a[aria-current] > span { color: var(--red); }
.catalog-results-top { display: flex; gap: 25px; align-items: center; justify-content: space-between; margin-bottom: 27px; min-height: 47px; }
.catalog-results-top h2 { font-size: 25px; letter-spacing: -.65px; line-height: 1.2; }
.catalog-results-top p { color: var(--text-secondary); font-size: 10px; margin-top: 9px; line-height: 1.6; overflow-wrap: anywhere; }
.catalog-sort { display: flex; flex-shrink: 0; gap: 12px; align-items: center; color: var(--text-secondary); font-size: 10px; white-space: nowrap; }
.catalog-sort select { width: 155px; font-size: 10px; height: 40px; }
.catalog-active-filters { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; background: #f1f4f3; padding: 12px 15px; margin-bottom: 22px; color: #526b7e; font-size: 10px; }
.catalog-active-filters > span { overflow-wrap: anywhere; min-width: 0; }
.catalog-active-filters > a { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.catalog-active-filters .icon { width: 12px; height: 12px; }
.catalog-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 35px 23px; }
.catalog-product-card { min-width: 0; }
.catalog-product-image { display: block; position: relative; overflow: hidden; background: var(--catalog-surface); }
.catalog-visual { height: 245px; display: grid; place-items: center; position: relative; background: var(--catalog-surface); overflow: hidden; }
.catalog-visual-photo img { width: 100%; height: 100%; max-width: none; object-fit: contain; mix-blend-mode: multiply; }
.catalog-visual-sprite > span { width: min(100%, 245px); height: auto; aspect-ratio: 1; display: block; background: url('assets/equipment-imaging.webp') no-repeat; background-size: 300% 200%; mix-blend-mode: multiply; }
.catalog-sprite-xray > span { background-position: 0 0; }
.catalog-sprite-mri > span { background-position: 100% 0; }
.catalog-sprite-ultrasound > span { background-position: 0 100%; }
.catalog-sprite-mammography > span { background-position: 50% 100%; }
.catalog-sprite-carm > span { background-position: 100% 100%; }
.catalog-visual-symbol > .icon { width: 84px; height: 84px; stroke-width: .8; color: #7892a2; }
.catalog-visual-caption { position: absolute; bottom: 21px; left: 22px; right: 22px; text-align: center; color: #7a8d97; font-size: 9px; line-height: 1.5; }
.catalog-product-copy { padding: 20px 0 0; }
.catalog-product-brand { display: flex; flex-wrap: wrap; gap: 5px; color: #607386; font-size: 9px; line-height: 1.6; }
.catalog-product-brand > span { color: #8a9398; font-size: 8px; }
.catalog-product-copy h3 { margin: 10px 0 9px; font-size: 23px; line-height: 1.16; letter-spacing: -.45px; }
.catalog-product-category { color: var(--text-secondary); font-size: 9px; line-height: 1.7; }
.catalog-product-actions { display: flex; gap: 15px; justify-content: space-between; align-items: center; border-top: 1px solid var(--catalog-soft-line); padding-top: 13px; margin-top: 19px; }
.catalog-product-actions > .text-link { color: #415e77; gap: 11px; font-size: 10px; }
.catalog-product-actions > .text-link > .icon { width: 14px; height: 14px; }
.catalog-add { position: relative; width: 35px; height: 35px; flex-shrink: 0; display: grid; place-items: center; border: 1px solid #cfd8dc; color: #526d82; }
.catalog-add > .icon { width: 17px; height: 17px; }
.catalog-add > span { position: absolute; height: 1px; width: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.catalog-content-note { border-top: 1px solid var(--line); color: #7c8891; font-size: 9px; line-height: 1.8; margin-top: 38px; padding-top: 19px; max-width: 900px; }
.catalog-empty { margin-top: 12px; }
.catalog-pagination { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 15px; border-top: 1px solid var(--line); padding: 28px 0 0; margin-top: 40px; }
.catalog-pagination > div { display: flex; gap: 5px; align-items: center; }
.catalog-pagination > div > a { min-width: 34px; height: 34px; display: grid; place-items: center; color: var(--text-secondary); font-size: 11px; }
.catalog-pagination > div > a[aria-current] { background: #263f79; color: #fff; }
.catalog-pagination > div > span { padding: 0 3px; color: var(--text-secondary); }
.catalog-page-prev,.catalog-page-next { display: inline-flex; align-items: center; gap: 8px; font-size: 10px; color: #536c80; padding: 10px 0; }
.catalog-page-prev { justify-self: start; }
.catalog-page-next { justify-self: end; }
.catalog-page-prev .icon,.catalog-page-next .icon { width: 14px; height: 14px; }
.catalog-page-prev .icon { transform: rotate(180deg); }

/* A full-size equipment presentation, supported by clearly separated facts. */
.catalog-detail-visual { height: 555px; }
.catalog-detail-visual.catalog-visual-photo img { object-fit: contain; }
.catalog-detail-visual.catalog-visual-sprite > span { width: min(100%, 510px); }
.catalog-detail-visual.catalog-visual-symbol > .icon { width: 165px; height: 165px; stroke-width: .7; }
.catalog-detail-visual .catalog-visual-caption { bottom: 58px; font-size: 11px; }

/* Brand logo slots are ready for official artwork without changing the layout. */
.catalog-brands-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 38px 28px; padding: 25px 0 55px; }
.catalog-brand-card { min-width: 0; }
.catalog-brand-card > a { display: block; }
.catalog-brand-logo { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; min-height: 220px; padding: 30px 24px; color: #526a7b; background: var(--catalog-surface); border: 1px solid transparent; }
.catalog-brand-logo img { display: block; max-width: min(72%, 230px); max-height: 92px; object-fit: contain; }
.catalog-brand-logo.is-placeholder strong { font-size: 26px; line-height: 1.15; font-weight: 500; letter-spacing: .8px; text-align: center; text-transform: uppercase; overflow-wrap: anywhere; }
.catalog-brand-logo.is-placeholder small { color: #87959e; font-size: 9px; letter-spacing: 1.1px; text-transform: uppercase; }
.catalog-brand-card-copy { padding: 24px 0 0; }
.catalog-brand-card-copy .page-kicker { margin-bottom: 13px; }
.catalog-brand-card-copy h2 { font-size: 32px; letter-spacing: -.8px; }
.catalog-brand-logo-hero { min-height: 250px; }
.catalog-brand-logo-hero img { max-width: min(76%, 270px); max-height: 110px; }
.catalog-brand-logo-hero.is-placeholder strong { font-size: 34px; }

@media (hover: hover) and (pointer: fine) {
 .catalog-category-strip > a:hover { color: var(--blue); background: #f3f5f2; }
 .catalog-family-strip > a:hover { border-color: #c2cdd2; }
 .catalog-family-strip > a[aria-current]:hover { border-color: var(--red); }
 .catalog-product-copy h3 a:hover,.catalog-sidebar-families > a:hover { color: var(--blue); }
 .catalog-add:hover { background: #eaf0f1; border-color: #91a3b0; }
 .catalog-pagination a:not([aria-current]):hover { color: var(--blue); background: #f0f4f3; }
 .catalog-brand-card a:hover .catalog-brand-logo { color: #3f5e78; border-color: #c9d4d7; }
}

@media (max-width: 1250px) {
 .catalog-listing { grid-template-columns: 200px minmax(0, 1fr); gap: 30px; }
 .catalog-product-grid { gap: 30px 20px; }
 .catalog-visual { height: 210px; }
 .catalog-visual-sprite > span { width: min(100%, 210px); }
 .catalog-product-copy h3 { font-size: 21px; }
 .catalog-detail-visual { height: 540px; }
 .catalog-detail-visual.catalog-visual-sprite > span { width: min(100%, 460px); }
}
@media (max-width: 1050px) {
 .catalog-page .page-hero-split { grid-template-columns: minmax(0, 1fr) 240px; }
 .catalog-hero-object,.catalog-hero-object img { min-height: 220px; height: 220px; }
 .catalog-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .catalog-visual { height: 240px; }
 .catalog-visual-sprite > span { width: min(100%, 240px); }
 .catalog-results-top { align-items: flex-start; }
 .catalog-results-top h2 { font-size: 23px; }
 .catalog-sort { display: block; padding-top: 2px; }
 .catalog-sort select { margin-top: 7px; width: 136px; }
 .catalog-detail-visual { height: 530px; }
 .catalog-brands-grid { gap: 35px 22px; }
 .catalog-brand-logo { min-height: 190px; gap: 10px; }
 .catalog-brand-logo.is-placeholder strong { font-size: 23px; letter-spacing: .5px; }
}
@media (max-width: 760px) {
 .catalog-page .page-hero-split { display: block; }
 .catalog-hero-object { min-height: 190px; margin-top: 25px; }
 .catalog-hero-object img { min-height: 190px; height: 190px; }
 .catalog-hero-object > span { left: 15px; bottom: 12px; font-size: 7px; }
 .catalog-category-strip { padding: 18px 0; gap: 0; }
 .catalog-category-strip > a { flex-basis: 123px; min-height: 102px; padding: 10px 14px; gap: 13px; font-size: 9px; }
 .catalog-family-area { padding-top: 23px; }
 .catalog-family-area .catalog-section-caption { align-items: flex-start; gap: 14px; }
 .catalog-family-area .catalog-section-caption h2 { font-size: 20px; }
 .catalog-family-area .catalog-section-caption > span { min-width: 65px; font-size: 8px; text-align: right; line-height: 1.6; }
 .catalog-family-strip { gap: 13px; padding-bottom: 19px; }
 .catalog-family-strip > a { flex-basis: 136px; }
 .catalog-family-strip .catalog-visual { height: 98px; }
 .catalog-family-strip > a > span { font-size: 9px; }
 .catalog-listing { grid-template-columns: minmax(0, 1fr); padding-top: 25px; gap: 25px; padding-bottom: 28px; }
 .catalog-sidebar { border-bottom: 1px solid var(--line); }
 .catalog-filter-details { border-bottom: 0; }
 .catalog-filter-details > summary { padding-bottom: 20px; font-size: 13px; }
 .catalog-filter-details form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 16px; align-items: start; }
 .catalog-field { margin-bottom: 16px; }
 .catalog-field:first-child { grid-column: 1 / -1; }
 .catalog-field input,.catalog-field select { height: 45px; font-size: 12px; }
 .catalog-search-input input::placeholder { font-size: 12px; }
 .catalog-filter-buttons { grid-column: 1 / -1; display: flex; flex-direction: row; align-items: center; gap: 22px; padding-bottom: 20px; }
 .catalog-filter-buttons .button { flex: 1; max-width: 220px; font-size: 11px; }
 .catalog-reset { align-self: center; white-space: nowrap; }
 .catalog-sidebar-families { display: none; }
 .catalog-results-top { gap: 17px; margin-bottom: 24px; align-items: flex-end; }
 .catalog-results-top h2 { font-size: 24px; letter-spacing: -.6px; }
 .catalog-results-top p { font-size: 9px; }
 .catalog-sort { font-size: 9px; }
 .catalog-sort select { width: 135px; height: 39px; }
 .catalog-product-grid { gap: 29px 16px; }
 .catalog-visual { height: 205px; }
 .catalog-visual-sprite > span { width: min(100%, 205px); }
 .catalog-visual-symbol > .icon { width: 65px; height: 65px; }
 .catalog-visual-caption { font-size: 8px; bottom: 20px; left: 13px; right: 13px; }
 .catalog-product-copy { padding-top: 15px; }
 .catalog-product-copy h3 { font-size: 23px; line-height: 1.16; margin-top: 9px; }
 .catalog-product-actions { margin-top: 16px; gap: 8px; }
 .catalog-product-actions > .text-link { font-size: 9px; gap: 7px; }
 .catalog-add { width: 34px; height: 34px; }
 .catalog-content-note { margin-top: 27px; font-size: 8px; }
 .catalog-pagination { margin-top: 28px; padding-top: 21px; gap: 6px; }
 .catalog-pagination > div { gap: 1px; }
 .catalog-pagination > div > a { min-width: 30px; height: 33px; font-size: 10px; }
 .catalog-page-prev,.catalog-page-next { font-size: 9px; gap: 5px; }
 .catalog-detail-visual { height: 390px; }
 .catalog-detail-visual.catalog-visual-sprite > span { width: min(100%, 355px); }
 .catalog-detail-visual.catalog-visual-symbol > .icon { width: 115px; height: 115px; }
 .catalog-brands-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 19px; padding-top: 19px; padding-bottom: 30px; }
 .catalog-brand-logo { min-height: 175px; padding: 20px 14px; gap: 9px; }
 .catalog-brand-logo.is-placeholder strong { font-size: 22px; }
 .catalog-brand-card-copy { padding-top: 20px; }
 .catalog-brand-card-copy h2 { font-size: 27px; }
 .catalog-brand-logo-hero { min-height: 205px; }
 .catalog-brand-logo-hero.is-placeholder strong { font-size: 29px; }
}
@media (max-width: 480px) {
 .catalog-results-top { flex-wrap: wrap; gap: 18px; align-items: center; }
 .catalog-results-top > div { width: 100%; }
 .catalog-sort { display: flex; justify-content: space-between; align-items: center; width: 100%; }
 .catalog-sort select { margin-top: 0; width: 165px; }
 .catalog-product-grid { grid-template-columns: minmax(0, 1fr); gap: 33px; }
 .catalog-visual { height: 275px; }
 .catalog-visual-sprite > span { width: min(100%, 275px); }
 .catalog-visual-symbol > .icon { width: 89px; height: 89px; }
 .catalog-visual-caption { font-size: 9px; bottom: 27px; }
 .catalog-product-copy h3 { font-size: 28px; }
 .catalog-product-brand { font-size: 10px; }
 .catalog-product-brand > span { font-size: 9px; }
 .catalog-product-category { font-size: 10px; }
 .catalog-product-actions { padding-top: 12px; }
 .catalog-product-actions > .text-link { font-size: 11px; }
 .catalog-add { width: 41px; height: 41px; }
 .catalog-detail-visual { height: 320px; }
 .catalog-detail-visual.catalog-visual-sprite > span { width: min(100%, 300px); }
 .catalog-page-prev > span,.catalog-page-next > span { display: none; }
 .catalog-pagination > div > a { min-width: 34px; height: 36px; }
 .catalog-brands-grid { grid-template-columns: minmax(0, 1fr); gap: 34px; }
 .catalog-brand-logo { min-height: 210px; gap: 10px; }
 .catalog-brand-logo.is-placeholder strong { font-size: 27px; }
 .catalog-brand-card-copy h2 { font-size: 32px; }
}
@media (max-width: 360px) {
 .catalog-filter-details form { column-gap: 12px; }
 .catalog-field { font-size: 9px; }
 .catalog-field select { padding-left: 7px; font-size: 10px; }
 .catalog-filter-buttons { gap: 16px; }
 .catalog-visual { height: 245px; }
 .catalog-visual-sprite > span { width: min(100%, 245px); }
 .catalog-detail-visual { height: 280px; }
 .catalog-detail-visual.catalog-visual-sprite > span { width: min(100%, 265px); }
 .catalog-pagination > div > a { min-width: 31px; }
}
@media (prefers-reduced-motion: reduce) {
 .catalog-filter-details > summary > .icon { transition: none; }
}

/* Comparison keeps the showroom cards and adds a small, persistent selection. */
.catalog-compare-button { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 10px; padding: 7px 0; color: #415e77; font-size: 11px; font-weight: 600; text-align: left; }
.catalog-compare-button::before { content: ''; width: 15px; height: 15px; border: 1px solid #8b9daa; flex-shrink: 0; }
.catalog-compare-button[aria-pressed="true"]::before { background: var(--blue); border-color: var(--blue); box-shadow: inset 0 0 0 3px #fff; }
.catalog-compare-button[aria-pressed="true"] { color: var(--blue); }
.catalog-add { width: 44px; height: 44px; }
.catalog-active-filters > div { display: flex; flex-wrap: wrap; gap: 8px; }
.catalog-active-filters a { display: inline-flex; align-items: center; gap: 7px; min-height: 36px; }
.catalog-active-filters > div > a { padding: 4px 9px; border: 1px solid #cad5d8; background: #fff; }
.catalog-active-filters .icon { width: 13px; height: 13px; }
.catalog-pagination > div > a { min-width: 44px; height: 44px; }
.catalog-page-prev,.catalog-page-next { min-width: 44px; min-height: 44px; }
.catalog-page.has-comparison { padding-bottom: 185px; }
.catalog-comparison-dock { position: fixed; bottom: max(16px, env(safe-area-inset-bottom)); left: 50%; transform: translateX(-50%); width: min(1260px, calc(100% - 48px)); z-index: 40; }
.catalog-comparison-tray { display: flex; align-items: center; gap: 24px; padding: 18px 22px; background: #fff; border: 1px solid #c6d1d6; box-shadow: 0 8px 32px #233b511a; }
.catalog-comparison-summary { flex-shrink: 0; display: grid; gap: 2px; font-size: 11px; color: #607386; }
.catalog-comparison-summary strong { color: var(--ink); font-size: 13px; font-variant-numeric: tabular-nums; }
.catalog-comparison-tray ul { display: flex; flex: 1; flex-wrap: wrap; align-items: center; gap: 7px; list-style: none; margin: 0; padding: 0; min-width: 0; }
.catalog-comparison-tray li { display: flex; align-items: center; min-width: 0; border: 1px solid #dbe2e3; background: #f5f7f4; padding-left: 10px; font-size: 10px; }
.catalog-comparison-tray li > span { overflow-wrap: anywhere; }
.catalog-comparison-tray li > button { min-width: 44px; height: 44px; display: grid; place-items: center; }
.catalog-comparison-tray li .icon { width: 14px; height: 14px; }
.catalog-comparison-actions { display: flex; gap: 14px; align-items: center; flex-shrink: 0; }
.catalog-comparison-actions .button { min-height: 44px; padding: 10px 14px; font-size: 11px; white-space: normal; }
.catalog-comparison-actions > button { min-height: 44px; font-size: 11px; text-decoration: underline; text-underline-offset: 3px; }
.catalog-comparison-feedback { background: #f2f4f1; border: 1px solid #c6d1d6; padding: 12px 18px; color: #314b62; font-size: 12px; line-height: 1.6; }
.catalog-comparison-page .page-hero { padding-bottom: 32px; }
.catalog-comparison-empty { margin: 15px 0 70px; }
.catalog-comparison-toolbar { display: flex; flex-wrap: wrap; gap: 22px; align-items: center; justify-content: space-between; padding: 20px 0; }
.catalog-comparison-toolbar h2 { font-size: 28px; letter-spacing: -.7px; }
.catalog-comparison-toolbar p { font-size: 12px; color: #647985; margin-top: 7px; }
.catalog-comparison-toolbar .text-link { font-size: 11px; }
.catalog-differences { display: flex; align-items: center; gap: 9px; min-height: 44px; font-size: 12px; cursor: pointer; }
.catalog-differences input { width: 18px; height: 18px; accent-color: var(--blue); }
.catalog-comparison-scroll-hint { font-size: 11px; color: #657987; padding-bottom: 14px; }
.catalog-comparison-table-wrap { width: 100%; overflow-x: auto; overscroll-behavior-x: contain; border: 1px solid #d2dcdf; }
.catalog-comparison-table { width: 100%; min-width: 650px; border-collapse: collapse; table-layout: fixed; text-align: left; }
.catalog-comparison-table caption { text-align: left; padding: 14px 18px; font-size: 11px; color: #5f7583; background: #f5f7f4; }
.catalog-comparison-table th,.catalog-comparison-table td { vertical-align: top; padding: 19px; border-bottom: 1px solid #dbe2e3; border-right: 1px solid #dbe2e3; overflow-wrap: anywhere; font-size: 12px; line-height: 1.7; }
.catalog-comparison-table th:first-child { width: 170px; background: #f5f7f4; font-weight: 500; color: #4c687c; }
.catalog-comparison-table thead th { font-weight: 500; }
.catalog-comparison-table thead a > span { display: block; font-family:var(--font-sans); font-size: 23px; line-height: 1.2; margin: 17px 0 10px; }
.catalog-comparison-table .catalog-visual { height: 165px; }
.catalog-comparison-table .catalog-visual-sprite > span { width: 165px; }
.catalog-comparison-table .catalog-visual-symbol > .icon { width: 65px; height: 65px; }
.catalog-comparison-table .catalog-visual-caption { display: none; }
.catalog-comparison-remove { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; padding: 4px 0; font-size: 11px; color: #60798a; }
.catalog-comparison-remove .icon { width: 14px; height: 14px; }
.catalog-comparison-table td .button { padding: 10px 12px; font-size: 11px; white-space: normal; text-align: left; gap: 10px; }
.catalog-comparison-table tr:last-child > * { border-bottom: 0; }
.catalog-comparison-table tr > *:last-child { border-right: 0; }
@media (max-width: 1050px) {
 .catalog-comparison-tray { flex-wrap: wrap; gap: 10px 20px; }
 .catalog-comparison-tray ul { flex-basis: 65%; }
 .catalog-comparison-actions { margin-left: auto; }
}
@media (max-width: 760px) {
 .catalog-field input,.catalog-field select,.catalog-sort select { font-size: 16px; }
 .catalog-field { font-size: 12px; }
 .catalog-sort select { min-height: 44px; width: 180px; }
 .catalog-comparison-dock { width: calc(100% - 24px); bottom: max(10px, env(safe-area-inset-bottom)); }
 .catalog-comparison-tray { padding: 12px; gap: 8px 12px; }
 .catalog-comparison-summary { flex: 1; }
 .catalog-comparison-tray ul { display: none; }
 .catalog-comparison-summary > span { max-width: 180px; overflow-wrap: anywhere; }
 .catalog-comparison-actions { gap: 10px; }
 .catalog-comparison-actions .button { max-width: 155px; }
 .catalog-comparison-actions > button { font-size: 10px; }
 .catalog-comparison-feedback { padding: 10px 12px; font-size: 11px; max-height: 145px; overflow-y: auto; }
 .catalog-comparison-table { min-width: 630px; }
 .catalog-comparison-table th,.catalog-comparison-table td { padding: 14px; }
 .catalog-comparison-table th:first-child { width: 145px; }
 .catalog-comparison-toolbar { gap: 14px; }
 .catalog-comparison-toolbar > div { width: 100%; }
 .catalog-pagination { grid-template-columns: 44px minmax(0, 1fr) 44px; gap: 4px; }
 .catalog-pagination > div { justify-content: center; gap: 0; }
 .catalog-pagination > div > a { min-width: 34px; }
 .catalog-page-prev > span,.catalog-page-next > span { display: none; }
}
@media (max-width: 380px) {
 .catalog-filter-details form { grid-template-columns: minmax(0, 1fr); }
 .catalog-comparison-tray { align-items: flex-start; }
 .catalog-comparison-summary { font-size: 10px; }
 .catalog-comparison-summary strong { font-size: 11px; }
 .catalog-comparison-actions { gap: 4px; flex-direction: column; }
 .catalog-comparison-actions .button { min-height: 40px; padding: 8px; font-size: 10px; }
 .catalog-comparison-actions > button { min-height: 28px; }
 .catalog-pagination > div > a { min-width: 30px; }
}

.catalog-comparison-table { min-width: calc(170px + var(--compare-columns, 2) * 220px); }
.catalog-product-brand > span:first-child { color: #607386; font-size: inherit; }
.catalog-product-actions:has(.catalog-request-configuration) { flex-wrap: wrap; }
.catalog-add.catalog-request-configuration { display: flex; justify-content: space-between; gap: 10px; width: auto; height: auto; min-height: 44px; flex: 1 1 100%; padding: 10px 12px; font-size: 11px; line-height: 1.6; }
.catalog-add.catalog-request-configuration > span { position: static; width: auto; height: auto; overflow: visible; clip-path: none; white-space: normal; }
.catalog-add.catalog-request-configuration > .icon { flex-shrink: 0; }
.catalog-comparison-table [data-comparison-unknown="true"] td { color: #71818b; }
@media (max-width: 760px) {
 .catalog-filter-group { grid-column: 1 / -1; }
 .catalog-filter-group { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 16px; }
 .catalog-filter-group legend { grid-column: 1 / -1; }
 .catalog-filter-group .catalog-field:last-child { margin-bottom: 22px; }
}
@media (max-width: 460px) {
 .catalog-filter-group { grid-template-columns: minmax(0, 1fr); }
}
