/* Catalog and reference-detail surfaces. The homepage/header styles stay intact. */
.catalog-page { color-scheme:light; }
.catalog-page .catalog-content { padding:38px 0 70px; min-height:65vh; }
.catalog-page[data-catalog-url] .catalog-content { max-width:1460px; margin-inline:auto; }
/* Shared breadcrumb treatment for every existing catalog/reference page. */
.catalog-page .catalog-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin:0 0 30px; color:#1d1d1f; font:400 18px/1.5 "ZF Navigation",Impact,"Arial Narrow",sans-serif; letter-spacing:.015em; text-transform:uppercase; }
.catalog-breadcrumb a { display:inline-flex; align-items:center; max-width:100%; min-height:36px; color:#1d1d1f; overflow-wrap:anywhere; }
.catalog-breadcrumb a:hover { color:#42651f; text-decoration:underline; text-underline-offset:4px; }
.catalog-breadcrumb a:focus-visible { outline:2px solid #1d1d1f; outline-offset:4px; border-radius:2px; }
.catalog-breadcrumb [aria-hidden] { color:#737378; font-weight:400; }
.catalog-breadcrumb [aria-current] { display:inline-block; min-width:0; max-width:100%; padding:4px 12px; border-radius:4px; background:#8fc547; color:#101011; font-weight:400; overflow-wrap:anywhere; }
@media(max-width:600px) {
 .catalog-page .catalog-breadcrumb { gap:8px; margin-bottom:22px; }
}
.catalog-page .catalog-kicker { color:#737378; font-size:10px; line-height:1.5; font-weight:600; letter-spacing:.12em; margin:0 0 10px; }
.catalog-page h1 { font-size:clamp(34px,3.9vw,58px); font-weight:600; line-height:1.08; letter-spacing:-.045em; }
.catalog-page h2 { font-size:clamp(25px,2.5vw,34px); font-weight:600; letter-spacing:-.035em; line-height:1.15; margin:0; }
.catalog-page h3 { font-size:26px; font-weight:600; letter-spacing:-.03em; margin:0; }
.catalog-page-heading { padding:20px 0 36px; }
.catalog-page-heading>p:last-child { color:#6e6e73; font-size:17px; line-height:1.7; margin:18px 0 0; }
.catalog-page .catalog-company-list { margin:0 0 50px; }
.catalog-page .catalog-company-list .company-card { padding:30px; border-radius:16px; }
.catalog-directory-heading { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:4px 0 30px; border-bottom:1px solid #dcdce0; }
.catalog-company-identity { min-width:0; }
.catalog-directory-heading .catalog-kicker { font-size:16px; }
.catalog-company-identity h1 { max-width:780px; }
.catalog-total { display:flex; flex-direction:column; align-items:flex-end; gap:8px; flex:none; }
.catalog-total strong { font-family:"ZF Navigation",Impact,"Arial Narrow",sans-serif; font-size:clamp(48px,5vw,72px); letter-spacing:-.015em; line-height:1; font-weight:400; color:#111113; }
.catalog-total span { font-size:16px; color:#737379; }
.catalog-toolbar { display:grid; grid-template-columns:minmax(220px,1fr) 160px auto; align-items:end; gap:16px; padding:30px 0 24px; }
.catalog-search,.catalog-select { display:flex; flex-direction:column; gap:8px; min-width:0; }
.catalog-search>span,.catalog-select>span { color:#707076; font-size:12px; font-weight:500; }
.catalog-page input,.catalog-page select { font:400 15px/1.4 var(--font-system); color:#1d1d1f; border:1px solid #d5d5da; border-radius:9px; min-height:48px; padding:12px 15px; background:#fff; min-width:0; width:100%; }
.catalog-page input::placeholder { color:#929298; }
.catalog-page input:focus-visible,.catalog-page select:focus-visible { outline:2px solid #42651f; outline-offset:2px; }
.catalog-view-toggle { display:flex; padding:4px; gap:3px; border:1px solid #d5d5da; border-radius:10px; min-height:48px; background:#eaeaec; }
.catalog-view-toggle button { min-width:66px; border:0; border-radius:6px; padding:7px 12px; background:transparent; color:#6e6e73; font-size:13px; }
.catalog-view-toggle [aria-pressed=true] { background:#fff; color:#1d1d1f; box-shadow:0 1px 3px #00000012; }
.catalog-result-bar { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:0 0 16px; color:#818187; font-size:12px; line-height:1.5; }
.catalog-result-bar>span:first-child { color:#414146; font-weight:500; font-size:14px; }
.catalog-table-scroll { position:relative; max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; border:1px solid #dedee3; border-radius:12px; background:#fff; scrollbar-width:thin; }
.catalog-table { width:100%; border-collapse:collapse; text-align:left; font-size:13px; line-height:1.6; }
.catalog-table-container .catalog-table { min-width:1140px; table-layout:fixed; }
.catalog-table th { padding:15px 22px; color:#76767d; background:#fafafa; font-size:10px; font-weight:600; text-transform:uppercase; letter-spacing:.07em; text-align:left; white-space:nowrap; }
.catalog-table-container .catalog-table th { position:relative; width:calc(100% / 6); padding:18px 16px; background:#111113; color:#fff; font:400 22px/1.3 "ZF Navigation",Impact,"Arial Narrow",sans-serif; text-transform:uppercase; letter-spacing:.015em; text-align:center; }
.catalog-table-container .catalog-table th+th::before { content:""; position:absolute; left:0; top:25%; bottom:25%; width:1px; background:#ffffff24; }
.catalog-table td { padding:19px 22px; border-top:1px solid #eeeeF0; color:#49494f; vertical-align:middle; overflow-wrap:anywhere; }
.catalog-table-container .catalog-table td { padding:12px 16px; }
.catalog-table-container .catalog-table tbody tr[data-model-id]>td { text-align:center; }
body[data-catalog-url][data-company-id="wai"] .catalog-table-container .catalog-table tbody tr[data-model-id]>td:first-child,
body[data-catalog-url][data-company-id="as"] .catalog-table-container .catalog-table tbody tr[data-model-id]>td:first-child { text-align:left; padding-left:var(--catalog-model-inset,16px); }
.catalog-table-container .catalog-table tbody tr[data-model-id] { position:relative; transition:transform .22s ease-out,box-shadow .22s ease-out; }
.catalog-table tbody tr:hover { background:#fcfdfb; }
.catalog-model-link,.catalog-model-name { color:#1d1d1f; font-weight:600; font-size:17px; letter-spacing:-.025em; }
.catalog-model-link:hover,.catalog-model-name:hover { color:#42651f; text-decoration:underline; text-underline-offset:4px; }
.catalog-action { color:#42651f; font-size:12px; white-space:nowrap; }
.catalog-action:hover { text-decoration:underline; text-underline-offset:4px; }
.catalog-table-container tbody tr[data-model-id] td:nth-child(-n+4) { font:600 18px/1.6 var(--font-system); letter-spacing:-.025em; color:#1d1d1f; }
.catalog-table-container .catalog-model-link { font:inherit; letter-spacing:inherit; }
.catalog-table-container .catalog-action { font-size:17px; font-weight:500; }
.catalog-picture-link { display:flex; align-items:center; justify-content:center; width:56px; height:40px; max-width:100%; background:#fff; border-radius:4px; cursor:zoom-in; }
.catalog-picture-link:focus-visible { outline:2px solid #42651f; outline-offset:3px; }
.catalog-table-container .catalog-picture-link { margin-inline:auto; }
.catalog-model-thumbnail { display:block; width:56px; height:40px; max-width:100%; object-fit:contain; }
.catalog-model-picture .catalog-image-fallback { padding:0; font:400 11px/1.4 var(--font-system); text-align:center; }
.catalog-table-container tbody tr.catalog-picture-selected,
.catalog-table-container tbody tr.catalog-picture-selected:hover { background:linear-gradient(115deg,#ffffff1f 0%,#ffffff08 24%,#ffffff00 52%,#3b651b0a 100%),#8fc547; color:#fff; }
.catalog-table-container tbody tr.catalog-picture-selected[data-model-id] { z-index:2; transform:translateY(-5px); outline:1px solid #ffffff66; outline-offset:-1px; box-shadow:0 7px 20px -7px #1a2b173d,0 2px 8px #1a2b1714,inset 0 1px 0 #ffffffb3,inset 0 -1px 0 #ffffff59; }
.catalog-table-container tbody tr.catalog-picture-selected[data-model-id]>td { background:transparent; color:#fff; border-top-color:#ffffff80; }
.catalog-table-container .catalog-picture-selected a,
.catalog-table-container .catalog-picture-selected a:hover,
.catalog-table-container .catalog-picture-selected .catalog-image-fallback { color:#fff; }
.catalog-table-container .catalog-picture-selected a:focus-visible { outline-color:#fff; }
.catalog-table-container .catalog-picture-selected .catalog-picture-link { background:transparent; }
@media(prefers-reduced-motion:reduce) {
 .catalog-table-container .catalog-table tbody tr[data-model-id] { transition:none; }
 .catalog-table-container tbody tr.catalog-picture-selected[data-model-id] { transform:none; }
}
.catalog-picture-dialog { width:min(900px,calc(100vw - 32px)); max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); padding:20px; border:1px solid #dedee3; border-radius:12px; background:#fff; color:#1d1d1f; overflow:auto; overscroll-behavior:contain; }
.catalog-picture-dialog::backdrop { background:#0006; }
.catalog-picture-preview { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px; }
.catalog-page .catalog-picture-title { margin:0; font:600 20px/1.3 var(--font-system); letter-spacing:-.025em; overflow-wrap:anywhere; }
.catalog-picture-identity { min-width:0; }
.catalog-picture-close { border:0; border-radius:6px; min-height:44px; padding:10px 14px; background:#111113; color:#fff; font:500 14px/1.4 var(--font-system); }
.catalog-picture-media { grid-column:1/-1; display:flex; justify-content:center; align-items:center; min-height:120px; }
.catalog-picture-full { display:block; max-width:100%; max-height:max(120px,calc(100dvh - 160px)); width:auto; height:auto; object-fit:contain; }
.catalog-picture-media .catalog-picture-error { padding:24px; margin:0; color:#737379; font-size:14px; }
.catalog-page:has(.catalog-picture-dialog[open]) { overflow:hidden; }
.catalog-pagination { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:12px; padding:24px 0 12px; color:#7b7b81; font-size:12px; }
.catalog-pagination button,.catalog-pagination a.catalog-pagination-button { min-height:40px; border:1px solid #d8d8dd; border-radius:7px; padding:8px 14px; background:#fff; color:#333338; font-size:12px; }
.catalog-pagination a.catalog-pagination-button { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
.catalog-pagination a.catalog-records-link { color:inherit; font:inherit; text-decoration:none; }
.catalog-pagination button:hover:not(:disabled),.catalog-pagination a.catalog-pagination-button:hover { border-color:#8fc547; background:#f1f7e9; }
.catalog-pagination button:disabled { cursor:default; opacity:.4; }
.catalog-page-jump { display:inline-flex; align-items:center; gap:7px; }
.catalog-page-jump label { display:inline-flex; align-items:center; }
.catalog-pagination .catalog-page-input { width:58px; padding:8px 6px; min-height:38px; font-size:12px; text-align:center; border-radius:6px; }
.catalog-page-label,.catalog-page-gap { color:#8a8a90; font-size:12px; }
.catalog-page-go { min-height:38px; }
.catalog-bottom-links { display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-top:20px; }
.catalog-bottom-links>a,.catalog-text-link { color:#42651f; font-size:14px; text-decoration:underline; text-underline-offset:5px; }
.catalog-bottom-links p { margin:0; max-width:480px; color:#87878d; font-size:12px; line-height:1.7; }
.catalog-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.catalog-card { position:relative; min-width:0; display:grid; grid-template-rows:auto 1fr auto; border:1px solid #e0e0e4; border-radius:13px; background:#fff; overflow:hidden; transition:transform .22s ease-out,box-shadow .22s ease-out; }
.catalog-card-heading { padding:14px 24px; background:#111113; color:#fff; }
.catalog-card-heading h3,.catalog-card-heading .catalog-model-link { margin:0; color:#fff; font:600 24px/1.3 var(--font-system); letter-spacing:-.025em; overflow-wrap:anywhere; }
.catalog-card-heading .catalog-model-link:hover { color:#fff; }
.catalog-card-main { min-width:0; display:grid; grid-template-columns:42% minmax(0,1fr); align-items:center; min-height:200px; background:#fff; }
.catalog-card-body { min-width:0; padding:16px; }
.catalog-card-image { display:flex; align-items:center; justify-content:center; align-self:center; width:100%; aspect-ratio:1; padding:12px; background:transparent; }
.catalog-card-image img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; }
.catalog-card-image .catalog-image-fallback { min-width:0; padding:8px 0; text-align:center; overflow-wrap:anywhere; }
.catalog-card-picture-link { cursor:zoom-in; }
.catalog-card-meta { display:grid; grid-template-columns:78px minmax(0,1fr); gap:0; margin:0; }
.catalog-card-meta>div { display:contents; }
.catalog-card-meta dt { min-width:0; padding:12px 12px 12px 0; color:#737378; font:600 18px/1.45 var(--font-system); letter-spacing:0; text-align:right; }
.catalog-card-meta dd { min-width:0; margin:0; padding:12px 0 12px 14px; border-left:1px solid #d5d5dc; color:#1d1d1f; font:600 18px/1.45 var(--font-system); letter-spacing:0; text-align:left; overflow-wrap:anywhere; }
.catalog-card-footer { display:flex; align-items:center; justify-content:flex-end; min-height:44px; padding:0 16px; border-top:1px solid #eeeef0; background:#fff; }
.catalog-card .catalog-action { display:inline-flex; align-items:center; min-height:44px; color:#42651f; font:500 17px/1.6 var(--font-system); }
.catalog-card a:focus-visible { outline:2px solid #42651f; outline-offset:3px; border-radius:3px; }
.catalog-card-heading a:focus-visible { outline-color:#fff; }
.catalog-card .catalog-card-picture-link:focus-visible { outline-offset:-4px; border-radius:0; }
.catalog-card.catalog-card-selected { z-index:2; transform:translateY(-5px); box-shadow:0 7px 20px -7px #1a2b173d,0 2px 8px #1a2b1714,inset 0 1px 0 #ffffffb3,inset 0 -1px 0 #ffffff59; }
.catalog-card-selected .catalog-card-main { background:linear-gradient(115deg,#ffffff1f 0%,#ffffff08 24%,#ffffff00 52%,#3b651b0a 100%),#8fc547; }
.catalog-card-selected .catalog-card-meta dt,.catalog-card-selected .catalog-image-fallback { color:#fff; }
.catalog-card-selected .catalog-card-meta dd { border-color:#ffffff80; }
.catalog-card-selected .catalog-card-main a:focus-visible { outline-color:#fff; }
@media(prefers-reduced-motion:reduce) {
 .catalog-card { transition:none; }
 .catalog-card.catalog-card-selected { transform:none; }
}
.catalog-error { margin:0 0 18px; padding:14px 18px; background:#fff6e3; border:1px solid #ead9b4; border-radius:8px; color:#6e5529; font-size:13px; line-height:1.7; }
.catalog-error button,.catalog-reset { border:0; background:transparent; color:#42651f; text-decoration:underline; padding:6px; font:inherit; }
.catalog-empty { color:#7b7b81; font-size:14px; line-height:1.7; padding:30px 20px; grid-column:1/-1; }
.catalog-model-index { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0 24px; }
.catalog-model-index li { border-bottom:1px solid #e0e0e4; min-width:0; }
.catalog-model-index a { display:block; color:#42651f; padding:14px 0; font-size:14px; overflow-wrap:anywhere; }
.catalog-model-index a:hover { text-decoration:underline; }
.catalog-spec-panel { min-width:0; padding:30px; border:1px solid #e0e0e4; background:#fff; border-radius:16px; }
.catalog-panel-heading { margin-bottom:24px; }
.catalog-panel-heading h2 { font-size:25px; }
.catalog-spec-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:32px; margin:0; }
.catalog-spec-list>div { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; padding:15px 0; border-bottom:1px solid #eeeef0; min-width:0; }
.catalog-spec-list dt { color:#898990; font-size:12px; line-height:1.6; }
.catalog-spec-list dd { margin:0; color:#29292e; font-size:13px; line-height:1.5; text-align:right; overflow-wrap:anywhere; max-width:55%; }
.catalog-copy-button { display:flex; align-items:center; justify-content:space-between; width:100%; padding:13px 16px; min-height:46px; border:1px solid #273d1826; border-radius:8px; background:#fafff0; color:#2e421d; font:500 12px/1.5 var(--font-system); text-align:left; }
.catalog-copy-button:hover { background:#fff; }
.catalog-copy-status { color:#314721; font-size:12px; line-height:1.6; min-height:18px; margin:8px 0; }
.catalog-copy-fallback { display:block; margin-top:10px; width:100%; }
.catalog-detail-links { display:flex; align-items:flex-start; flex-wrap:wrap; justify-content:space-between; gap:18px 36px; margin:26px 0 10px; padding:0 0 24px; border-bottom:1px solid #dcdce0; }
.catalog-detail-links>a { color:#42651f; font-size:13px; flex:none; }
.catalog-detail-links nav { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px 20px; }
.catalog-detail-links nav a { color:#85858b; font-size:11px; line-height:1.7; }
.catalog-detail-links nav a:hover { color:#42651f; }
.catalog-data-section,.catalog-image-section { padding:38px 0; border-bottom:1px solid #dcdce0; scroll-margin-top:20px; }
.catalog-section-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:22px; }
.catalog-section-heading>span { color:#8a8a91; font-size:12px; }
.catalog-section-heading h2 { display:flex; align-items:center; flex-wrap:wrap; gap:14px; }
.catalog-count { display:inline-flex; justify-content:center; align-items:center; min-width:30px; height:25px; padding:0 8px; border:1px solid #d7dfcd; border-radius:999px; color:#60813e; background:#f0f5e9; font-size:11px; line-height:1; font-weight:500; letter-spacing:0; }
.catalog-section-search { max-width:250px; width:100%; }
.catalog-section-search input { font-size:12px; min-height:40px; padding:10px 13px; }
.catalog-detail-table { min-width:530px; }
.catalog-detail-table th { background:#fafafa; font-size:10px; }
.catalog-detail-table td { padding:15px 22px; font-size:12px; }
.catalog-wide-table { min-width:1300px; }
.catalog-wide-table td { min-width:100px; max-width:280px; }
.catalog-scroll-hint { color:#88888f; font-size:11px; margin:0 0 12px; line-height:1.6; }
.catalog-product-images { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.catalog-product-image { margin:0; min-width:0; }
.catalog-product-image>a { display:flex; align-items:center; justify-content:center; background:#fff; border:1px solid #e0e0e4; border-radius:15px; overflow:hidden; min-height:180px; padding:18px; }
.catalog-product-image img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; max-height:520px; }
.catalog-product-image figcaption { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; color:#909096; font-size:10px; line-height:1.6; margin:12px 3px 0; }
.catalog-product-image figcaption a { color:#42651f; }
.catalog-image-fallback { padding:32px 20px; color:#818188; font-size:13px; line-height:1.7; }
.catalog-data-notes { padding:24px; margin-top:26px; background:#fff6e3; border:1px solid #ead9b4; border-radius:10px; }
.catalog-data-notes h2 { font-size:18px; }
.catalog-data-notes li { font-size:12px; line-height:1.7; color:#7e6745; }
.catalog-compatibility-note { color:#85858c; font-size:12px; }
.catalog-footer-note { color:#99999f; font-size:11px; }
.catalog-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; clip-path:inset(50%)!important; white-space:nowrap!important; border:0!important; }
@media(max-width:1100px) {
 .catalog-directory-heading h1 { font-size:40px; }
 .catalog-spec-panel { padding:24px; }
 .catalog-spec-list { grid-template-columns:1fr; }
 .catalog-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .catalog-model-index { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media(max-width:800px) {
 .catalog-toolbar { grid-template-columns:minmax(0,1fr) 140px; }
 .catalog-view-toggle { grid-column:1/-1; justify-self:end; }
 .catalog-spec-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .catalog-detail-links { flex-direction:column; }
 .catalog-detail-links nav { justify-content:flex-start; }
}
@media(min-width:601px) and (max-width:760px) {
 .catalog-card-body { padding-inline:8px; }
}
@media(max-width:600px) {
 .catalog-page .site-shell { padding:0 20px; }
 .catalog-page .catalog-content { padding:24px 0 46px; }
 .catalog-directory-heading { display:block; padding:0 0 24px; }
 .catalog-directory-heading h1 { font-size:31px; }
 .catalog-total { flex-direction:row; align-items:baseline; margin-top:20px; gap:8px; }
 .catalog-total strong { font-size:36px; }
 .catalog-total span { white-space:nowrap; }
 .catalog-toolbar { grid-template-columns:minmax(0,1fr) auto; gap:14px 12px; padding:23px 0 20px; }
 .catalog-search { grid-column:1/-1; }
 .catalog-select { grid-column:1; }
 .catalog-view-toggle { grid-column:2; align-self:end; min-height:48px; }
 .catalog-page input,.catalog-page select { font-size:16px; }
 .catalog-view-toggle button { min-width:55px; padding:8px; }
 .catalog-result-bar { gap:8px; flex-direction:column; }
 .catalog-result-bar>span:last-child { font-size:10px; }
 .catalog-cards { grid-template-columns:minmax(0,1fr); }
 .catalog-picture-preview { grid-template-columns:minmax(0,1fr); gap:12px; }
 .catalog-picture-close { justify-self:end; }
 .catalog-bottom-links { flex-direction:column; gap:18px; }
 .catalog-pagination { gap:8px; }
 .catalog-pagination button,.catalog-pagination a.catalog-pagination-button { padding:8px 10px; }
 .catalog-model-index { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; }
 .catalog-spec-panel { padding:24px 20px; border-radius:12px; }
 .catalog-spec-list { grid-template-columns:1fr; }
 .catalog-spec-list>div { padding:14px 0; }
 .catalog-section-heading { align-items:flex-start; flex-direction:column; gap:18px; }
 .catalog-section-search { max-width:100%; }
 .catalog-section-search input { font-size:16px; }
 .catalog-data-section,.catalog-image-section { padding:30px 0; }
 .catalog-product-images { grid-template-columns:1fr; }
 .catalog-product-image>a { padding:10px; border-radius:12px; }
 .catalog-page .catalog-company-list .company-card { padding:20px 16px; }
 .catalog-footer-note { flex-basis:100%; order:3; }
}
@media(max-width:350px) {
 .catalog-page .site-shell { padding:0 14px; }
 .catalog-directory-heading h1 { font-size:27px; }
 .catalog-total strong { font-size:31px; }
 .catalog-spec-list dt { font-size:11px; }
 .catalog-spec-list dd { font-size:12px; }
 .catalog-page-jump { gap:5px; }
}

/* Detail hero: first product image and core model information. */
body[data-detail-url] .catalog-content { max-width:1460px; margin-inline:auto; }
body[data-detail-url] .catalog-product-hero { display:grid; grid-template-columns:minmax(0,.46fr) minmax(0,.54fr); align-items:center; gap:clamp(48px,4vw,64px); padding:8px 0 36px; }
body[data-detail-url] .catalog-detail-media { width:100%; max-width:540px; min-width:0; justify-self:center; scroll-margin-top:20px; }
body[data-detail-url] .catalog-detail-primary-image>a { width:100%; aspect-ratio:1; min-height:0; padding:16px; border-radius:16px; }
body[data-detail-url] .catalog-detail-primary-image img { width:100%; height:100%; aspect-ratio:1; max-height:none; object-fit:contain; }
body[data-detail-url] .catalog-detail-primary-image figcaption { margin:12px 2px 0; font-size:11px; gap:8px 16px; }
body[data-detail-url] .catalog-detail-primary-image figcaption>span { min-width:0; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-detail-primary-image figcaption>a { display:inline-flex; align-items:center; min-height:28px; }
body[data-detail-url] .catalog-detail-media>.catalog-empty { display:grid; place-items:center; width:100%; aspect-ratio:1; margin:0; border:1px solid #e0e0e4; border-radius:16px; background:#fff; padding:28px; text-align:center; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-detail-summary { min-width:0; padding:4px 0; }
body[data-detail-url] .catalog-detail-summary .catalog-kicker { margin:0 0 14px; color:#737378; font:600 12px/1.5 var(--font-system); letter-spacing:.12em; }
body[data-detail-url] .catalog-detail-summary h1 { margin:0; font:600 clamp(40px,4.4vw,55px)/1.08 var(--font-system); letter-spacing:-.045em; white-space:nowrap; overflow-wrap:normal; }
body[data-detail-url]:not([data-model-name]) .catalog-page-heading h1 { font-size:clamp(34px,3.9vw,55px); }
body[data-detail-url] .catalog-detail-description { max-width:46ch; margin:18px 0 28px; color:#737378; font:400 18px/1.55 var(--font-system); overflow-wrap:anywhere; }
body[data-detail-url] .catalog-detail-meta { display:grid; grid-template-columns:98px minmax(0,1fr); gap:0; max-width:620px; margin:0 0 28px; }
body[data-detail-url] .catalog-detail-meta>div { display:contents; }
body[data-detail-url] .catalog-detail-meta dt { min-width:0; padding:13px 18px 13px 0; color:#737378; font:600 18px/1.45 var(--font-system); letter-spacing:0; text-align:left; }
body[data-detail-url] .catalog-detail-meta dd { min-width:0; margin:0; padding:13px 0 13px 20px; border-left:1px solid #d5d5dc; color:#1d1d1f; font:600 18px/1.45 var(--font-system); letter-spacing:0; text-align:left; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-detail-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
body[data-detail-url] .catalog-detail-actions .catalog-copy-button { justify-content:center; gap:8px; width:auto; max-width:100%; min-height:46px; padding:12px 18px; border:1px solid #111113; border-radius:8px; background:#111113; color:#fff; font:600 14px/1.45 var(--font-system); text-align:center; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-detail-actions .catalog-copy-button:hover { background:#303034; }
body[data-detail-url] .catalog-detail-contact { display:inline-flex; align-items:center; justify-content:center; min-width:0; max-width:100%; min-height:46px; padding:12px 18px; border:1px solid #8fc547; border-radius:8px; background:#8fc547; color:#1d1d1f; font:600 14px/1.45 var(--font-system); text-align:center; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-detail-contact:hover { border-color:#80b43d; background:#80b43d; }
body[data-detail-url] .catalog-detail-summary .catalog-copy-status { min-height:20px; margin:8px 0 6px; color:#737378; font:400 12px/1.6 var(--font-system); overflow-wrap:anywhere; }
body[data-detail-url] .catalog-detail-summary .catalog-copy-fallback { min-width:0; max-width:100%; font-size:16px; }
body[data-detail-url] .catalog-product-hero a:focus-visible,
body[data-detail-url] .catalog-product-hero button:focus-visible { outline:2px solid #42651f; outline-offset:4px; }
@media(max-width:800px) {
 body[data-detail-url] .catalog-product-hero { grid-template-columns:minmax(0,1fr); gap:32px; padding:4px 0 30px; }
 body[data-detail-url] .catalog-detail-media { max-width:520px; }
 body[data-detail-url] .catalog-detail-summary { padding:0; }
 body[data-detail-url] .catalog-detail-summary h1 { font-size:clamp(40px,7.5vw,55px); }
 body[data-detail-url] .catalog-detail-description { margin:16px 0 24px; }
 body[data-detail-url] .catalog-detail-meta { max-width:none; margin-bottom:24px; }
}
@media(max-width:600px) {
 body[data-detail-url] .catalog-product-hero { gap:28px; padding-top:0; }
 body[data-detail-url] .catalog-detail-primary-image>a { padding:12px; border-radius:12px; }
 body[data-detail-url] .catalog-detail-summary .catalog-kicker { font-size:11px; letter-spacing:.09em; }
 body[data-detail-url] .catalog-detail-description { font-size:16px; }
 body[data-detail-url] .catalog-detail-meta { grid-template-columns:90px minmax(0,1fr); }
 body[data-detail-url] .catalog-detail-meta dt { padding-right:12px; }
 body[data-detail-url] .catalog-detail-meta dd { padding-left:16px; }
}

/* Detail technical data: four primary sections and their subordinate tables. */
body[data-detail-url] .catalog-data-group { min-width:0; max-width:100%; margin-top:28px; padding:30px; border:1px solid #e0e0e4; border-radius:16px; background:#fff; scroll-margin-top:20px; }
body[data-detail-url] .catalog-data-group>.catalog-group-title { margin:0; color:#1d1d1f; font:600 25px/1.15 var(--font-system); letter-spacing:-.035em; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-data-group>.catalog-data-section { min-width:0; padding:26px 0; border-bottom:1px solid #eeeef0; }
body[data-detail-url] .catalog-data-group>.catalog-data-section:last-of-type { padding-bottom:0; border-bottom:0; }
body[data-detail-url] .catalog-data-group .catalog-section-heading { min-width:0; gap:20px; margin-bottom:18px; }
body[data-detail-url] .catalog-data-group .catalog-section-heading>div { min-width:0; }
body[data-detail-url] .catalog-data-group .catalog-section-heading h3,
body[data-detail-url] .catalog-spec-panel .catalog-image-section h3 { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin:0; color:#36363b; font:600 18px/1.4 var(--font-system); letter-spacing:-.015em; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-data-group .catalog-section-search { min-width:0; flex:0 1 250px; }
body[data-detail-url] .catalog-data-group .catalog-table-scroll { min-width:0; width:100%; max-width:100%; }
body[data-detail-url] .catalog-data-group .catalog-detail-table:not(.catalog-wide-table) { min-width:0; table-layout:fixed; }
body[data-detail-url] .catalog-data-group .catalog-detail-table:not(.catalog-wide-table) th,
body[data-detail-url] .catalog-data-group .catalog-detail-table:not(.catalog-wide-table) td { overflow-wrap:anywhere; }
body[data-detail-url] .catalog-data-group>.catalog-empty { margin:22px 0 0; padding:0; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-legacy-anchor { display:block; height:0; scroll-margin-top:20px; }
body[data-detail-url] .catalog-spec-panel .catalog-image-section { min-width:0; margin-top:28px; padding:26px 0 0; border-top:1px solid #eeeef0; border-bottom:0; }
body[data-detail-url] .catalog-spec-panel .catalog-product-image figcaption>span { min-width:0; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-data-group>.catalog-data-notes { min-width:0; margin-top:26px; padding:20px; }
body[data-detail-url] .catalog-data-group .catalog-data-notes h3 { margin:0; color:#7e6745; font:600 18px/1.4 var(--font-system); letter-spacing:-.015em; }
body[data-detail-url] .catalog-data-group .catalog-data-notes ul { margin:12px 0 0; padding-left:20px; }
body[data-detail-url] .catalog-data-group .catalog-data-notes li { overflow-wrap:anywhere; }
@media(max-width:600px) {
 body[data-detail-url] .catalog-data-group { margin-top:24px; padding:24px 20px; border-radius:12px; }
 body[data-detail-url] .catalog-data-group .catalog-section-heading { align-items:stretch; flex-direction:column; gap:14px; }
 body[data-detail-url] .catalog-data-group .catalog-section-search { max-width:none; flex-basis:auto; }
 body[data-detail-url] .catalog-data-group>.catalog-data-section { padding-top:24px; padding-bottom:24px; }
 body[data-detail-url] .catalog-data-group>.catalog-data-section:last-of-type { padding-bottom:0; }
 body[data-detail-url] .catalog-spec-panel .catalog-image-section { margin-top:24px; padding-top:24px; }
 body[data-detail-url] .catalog-data-group>.catalog-data-notes { padding:18px; }
}

/* Detail readability: keep navigation and technical data legible at every width. */
body[data-detail-url] .catalog-detail-links>a,
body[data-detail-url] .catalog-detail-links nav a { display:inline-flex; align-items:center; min-height:44px; padding-block:8px; font:500 18px/1.5 var(--font-system); }
body[data-detail-url] .catalog-detail-links nav { min-width:0; max-width:100%; }
body[data-detail-url] .catalog-spec-panel .catalog-panel-heading h2,
body[data-detail-url] .catalog-data-group>.catalog-group-title { font:600 28px/1.2 var(--font-system); }
body[data-detail-url] .catalog-spec-panel .catalog-panel-heading .catalog-kicker { font:600 14px/1.5 var(--font-system); }
body[data-detail-url] .catalog-spec-list>div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:18px; }
body[data-detail-url] .catalog-spec-list dt { min-width:0; font:400 17px/1.6 var(--font-system); overflow-wrap:anywhere; }
body[data-detail-url] .catalog-spec-list dd { min-width:0; max-width:none; font:500 18px/1.6 var(--font-system); }
body[data-detail-url] .catalog-data-group .catalog-section-heading h3,
body[data-detail-url] .catalog-spec-panel .catalog-image-section h3,
body[data-detail-url] .catalog-data-group .catalog-data-notes h3 { font:600 20px/1.4 var(--font-system); }
body[data-detail-url] .catalog-detail-table th { font:600 14px/1.5 var(--font-system); }
body[data-detail-url] .catalog-detail-table td { font:400 18px/1.6 var(--font-system); }
body[data-detail-url] .catalog-detail-table:not(.catalog-wide-table) th { white-space:normal; }
body[data-detail-url] .catalog-count { font:500 14px/1 var(--font-system); }
body[data-detail-url] .catalog-section-heading>span { font:400 14px/1.5 var(--font-system); }
body[data-detail-url] .catalog-section-search input { font:400 16px/1.5 var(--font-system); min-height:44px; }
body[data-detail-url] .catalog-pagination,
body[data-detail-url] .catalog-pagination .catalog-page-input,
body[data-detail-url] .catalog-page-label,
body[data-detail-url] .catalog-page-gap { font:400 16px/1.5 var(--font-system); }
body[data-detail-url] .catalog-pagination button,body[data-detail-url] .catalog-pagination a.catalog-pagination-button { min-height:44px; font:500 16px/1.5 var(--font-system); }
body[data-detail-url] .catalog-pagination .catalog-page-input { min-height:44px; }
body[data-detail-url] .catalog-scroll-hint,
body[data-detail-url] .catalog-data-notes li,
body[data-detail-url] .catalog-compatibility-note { font:400 16px/1.7 var(--font-system); }
body[data-detail-url] .catalog-data-group .catalog-empty { font:400 16px/1.7 var(--font-system); }
body[data-detail-url] .catalog-product-image figcaption,
body[data-detail-url] .catalog-detail-primary-image figcaption { font:400 14px/1.6 var(--font-system); }
@media(max-width:1100px) {
 body[data-detail-url] .catalog-spec-list { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:600px) {
 body[data-detail-url] .catalog-detail-table th,
 body[data-detail-url] .catalog-detail-table td { padding-inline:12px; }
}


/* Detail data layout: aligned section headers and complete, single-line cells. */
body[data-detail-url] .catalog-detail-links { margin-bottom:32px; }
body[data-detail-url] .catalog-data-group .catalog-group-title { display:block; margin:0; color:#1d1d1f; font:600 28px/1.2 var(--font-system); letter-spacing:-.035em; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-data-group>.catalog-primary-data-section { padding-top:0; }
body[data-detail-url] .catalog-data-group .catalog-primary-data-section>.catalog-section-heading { display:grid; grid-template-columns:auto minmax(0,1fr) minmax(180px,250px); align-items:center; gap:24px; }
body[data-detail-url] .catalog-data-group .catalog-primary-data-section>.catalog-section-heading>h3 { min-width:0; }
body[data-detail-url] .catalog-data-group .catalog-primary-data-section>.catalog-section-heading>.catalog-section-search { width:100%; max-width:none; }
body[data-detail-url] .catalog-data-group .catalog-data-section .catalog-detail-table { width:max-content; min-width:100%; max-width:none; table-layout:auto; }
body[data-detail-url] .catalog-data-group .catalog-data-section .catalog-detail-table th,
body[data-detail-url] .catalog-data-group .catalog-data-section .catalog-detail-table td { width:auto; min-width:0; max-width:none; white-space:nowrap; overflow-wrap:normal; word-break:normal; }
@media(max-width:1100px) {
 body[data-detail-url] .catalog-data-group .catalog-primary-data-section>.catalog-section-heading { grid-template-columns:auto minmax(0,1fr); gap:18px 24px; }
 body[data-detail-url] .catalog-data-group .catalog-primary-data-section>.catalog-section-heading>.catalog-section-search { grid-column:1/-1; }
}
@media(max-width:600px) {
 body[data-detail-url] .catalog-detail-links { margin-bottom:24px; }
 body[data-detail-url] .catalog-data-group .catalog-primary-data-section>.catalog-section-heading { grid-template-columns:minmax(0,1fr); gap:14px; }
}
/* Detail reference tables: alternating rows keep long records easy to follow. */
body[data-detail-url] .catalog-detail-table tbody tr:nth-child(odd)>td { background:#fff; }
body[data-detail-url] .catalog-detail-table tbody tr:nth-child(even)>td { background:#f3f6ef; }
body[data-detail-url] .catalog-detail-table tbody tr:hover>td { background:#e9f2dd; }
/* Detail table headers share the site black-and-white palette. */
body[data-detail-url] .catalog-detail-table thead th { background:#111113; color:#fff; }

/* Detail hero: three aligned panels for image, specifications and model information. */
body[data-detail-url] .catalog-product-hero { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:24px; }
body[data-detail-url] .catalog-product-hero>.catalog-detail-media { display:flex; flex-direction:column; max-width:none; justify-self:stretch; border:1px solid #e0e0e4; border-radius:16px; background:#fff; }
body[data-detail-url] .catalog-product-hero>.catalog-detail-media .catalog-detail-primary-image { display:flex; flex:1; flex-direction:column; min-height:0; }
body[data-detail-url] .catalog-product-hero>.catalog-detail-media .catalog-detail-primary-image>a { flex:1; aspect-ratio:auto; border:0; border-radius:16px 16px 0 0; }
body[data-detail-url] .catalog-product-hero>.catalog-detail-media .catalog-detail-primary-image img { height:auto; max-width:540px; max-height:540px; }
body[data-detail-url] .catalog-product-hero>.catalog-detail-media .catalog-detail-primary-image figcaption { margin:12px 16px 16px; }
body[data-detail-url] .catalog-product-hero>.catalog-detail-media>.catalog-empty { flex:1; aspect-ratio:auto; border:0; border-radius:16px; }
body[data-detail-url] .catalog-product-hero>.catalog-spec-panel { margin:0; padding:24px; }
body[data-detail-url] .catalog-product-hero>.catalog-spec-panel .catalog-spec-list { grid-template-columns:minmax(0,1fr); }
body[data-detail-url] .catalog-product-hero>.catalog-spec-panel .catalog-spec-list>div { padding-block:12px; }
body[data-detail-url] .catalog-product-hero>.catalog-spec-panel .catalog-panel-heading .catalog-kicker { display:block; margin:0 0 10px; font:600 14px/1.5 var(--font-system); letter-spacing:.12em; }
body[data-detail-url] .catalog-product-hero>.catalog-spec-panel .catalog-product-images { grid-template-columns:minmax(0,1fr); }
body[data-detail-url] .catalog-product-hero>.catalog-detail-summary { display:flex; flex-direction:column; grid-column:1/-1; padding:24px; border:1px solid #e0e0e4; border-radius:16px; background:#fff; }
body[data-detail-url] .catalog-product-hero>.catalog-detail-summary>.catalog-detail-actions { margin-top:auto; }
body[data-detail-url] .catalog-product-hero>.catalog-detail-summary>.catalog-copy-status:empty { min-height:0; margin:0; }
@media(min-width:1200px) {
 body[data-detail-url] .catalog-product-hero { grid-template-columns:repeat(3,minmax(0,1fr)); }
 body[data-detail-url] .catalog-product-hero>.catalog-detail-summary { grid-column:auto; }
}
@media(max-width:800px) {
 body[data-detail-url] .catalog-product-hero { grid-template-columns:minmax(0,1fr); gap:28px; }
}
@media(max-width:600px) {
 body[data-detail-url] .catalog-product-hero>.catalog-spec-panel,
 body[data-detail-url] .catalog-product-hero>.catalog-detail-summary { padding:20px; }
}
/* Detail data controls: compact section cards and a clear selected reference row. */
body[data-detail-url] .catalog-product-hero { padding-bottom:32px; }
body[data-detail-url] .catalog-detail-links { flex-direction:row; flex-wrap:nowrap; align-items:center; gap:24px; margin:0; padding-bottom:12px; }
body[data-detail-url] .catalog-detail-links>a { align-self:center; }
body[data-detail-url] .catalog-detail-links nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; flex:0 1 507px; width:507px; max-width:507px; }
body[data-detail-url] .catalog-detail-links nav a { min-width:0; min-height:44px; justify-content:center; padding:10px 12px; border:1px solid #d7ddd0; border-radius:10px; background:#fff; color:#5f5d5d; font:400 18px/1.5 "ZF Navigation",Impact,"Arial Narrow",sans-serif; letter-spacing:.015em; text-transform:uppercase; text-align:center; overflow-wrap:anywhere; }
body[data-detail-url] .catalog-detail-links nav a:hover { border-color:#8fc547; color:#42651f; }
body[data-detail-url] .catalog-detail-links nav a[aria-current="location"] { border-color:#8fc547; background:#8fc547; color:#101011; }
body[data-detail-url] .catalog-detail-links a:focus-visible { outline:2px solid #42651f; outline-offset:3px; }
body[data-detail-url] .catalog-detail-links+[data-detail-error]+.catalog-data-group { margin-top:20px; }
body[data-detail-url] .catalog-detail-table tbody tr>td:not([colspan]) { cursor:pointer; }
body[data-detail-url] .catalog-detail-table tbody tr.catalog-detail-row-selected>td,
body[data-detail-url] .catalog-detail-table tbody tr.catalog-detail-row-selected:hover>td { background:#8fc547; color:#fff; }
@media(max-width:800px) {
 body[data-detail-url] .catalog-detail-links { flex-direction:column; align-items:stretch; gap:12px; }
 body[data-detail-url] .catalog-detail-links>a { align-self:flex-start; }
 body[data-detail-url] .catalog-detail-links nav { flex:none; width:100%; max-width:none; }
}
@media(max-width:600px) {
 body[data-detail-url] .catalog-detail-links nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Picture-led hero height; long specifications scroll below their fixed heading. */
body[data-detail-url] .catalog-spec-scroll { min-width:0; }
body[data-detail-url] .catalog-spec-scroll:focus-visible { outline:2px solid #42651f; outline-offset:3px; border-radius:4px; }
@media(min-width:801px) {
 body[data-detail-url] .catalog-product-hero>.catalog-detail-media { contain:size; min-height:460px; }
 body[data-detail-url] .catalog-product-hero>.catalog-detail-media .catalog-detail-primary-image,
 body[data-detail-url] .catalog-product-hero>.catalog-detail-media .catalog-detail-primary-image>a { min-height:0; }
 body[data-detail-url] .catalog-product-hero>.catalog-detail-media .catalog-detail-primary-image img { height:100%; max-height:100%; min-height:0; object-fit:contain; }
 body[data-detail-url] .catalog-product-hero>.catalog-detail-media .catalog-detail-primary-image figcaption { flex:none; }
 body[data-detail-url] .catalog-product-hero>.catalog-spec-panel { contain:size; display:flex; flex-direction:column; min-height:0; }
 body[data-detail-url] .catalog-product-hero>.catalog-spec-panel>.catalog-panel-heading { flex:none; }
 body[data-detail-url] .catalog-product-hero>.catalog-spec-panel>.catalog-spec-scroll { flex:1; min-height:0; overflow-y:auto; overflow-x:hidden; scrollbar-gutter:stable; margin-inline-end:-16px; padding-inline-end:24px; }
}

/* Compact desktop specifications and a caption-free primary image. */
body[data-detail-url] .catalog-product-hero>.catalog-detail-media .catalog-detail-primary-image>a { cursor:zoom-in; border-radius:16px; }
@media(min-width:801px) {
 body[data-detail-url] .catalog-product-hero>.catalog-spec-panel .catalog-kicker { font-size:12px; }
 body[data-detail-url] .catalog-product-hero>.catalog-spec-panel h2 { font-size:24px; }
 body[data-detail-url] .catalog-product-hero>.catalog-spec-panel .catalog-spec-list dt { font-size:16px; line-height:1.5; }
 body[data-detail-url] .catalog-product-hero>.catalog-spec-panel .catalog-spec-list dd { font-size:17px; line-height:1.5; }
}

/* Align only the car application year headers and values. */
body[data-detail-url] #applications .catalog-detail-table .catalog-year-column { text-align:center; }

/* One shared search before the three existing detail navigation cards. */
body[data-detail-url] .catalog-detail-search { display:block; flex:0 1 260px; min-width:180px; margin-inline-start:auto; }
body[data-detail-url] .catalog-detail-search input { box-sizing:border-box; width:100%; min-height:48px; padding:10px 14px; border:1px solid #d7ddd0; border-radius:10px; background:#fff; color:#1d1d1f; font:400 16px/1.5 var(--font-system); }
body[data-detail-url] .catalog-detail-search input:focus-visible { border-color:#8fc547; outline:2px solid #42651f; outline-offset:2px; }
body[data-detail-url] .catalog-detail-search input:disabled { color:#737378; background:#f3f4f6; }
@media(min-width:801px) and (max-width:1199px) {
 body[data-detail-url] .catalog-detail-links { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,260px); gap:12px 24px; }
 body[data-detail-url] .catalog-detail-links>a { justify-self:start; }
 body[data-detail-url] .catalog-detail-search { width:100%; margin:0; }
 body[data-detail-url] .catalog-detail-links nav { grid-column:1/-1; justify-self:end; }
}
@media(max-width:800px) {
 body[data-detail-url] .catalog-detail-search { flex:none; width:100%; min-width:0; margin:0; }
}

/* Shared manufacturer/number alignment and more readable detail table headers. */
body[data-detail-url] .catalog-detail-table th { font-size:16px; }
body[data-detail-url] #solenoid-oe .catalog-detail-table,
body[data-detail-url] #starter-codes .catalog-detail-table { width:100%; }
body[data-detail-url] #solenoid-oe .catalog-detail-table th:first-child:nth-last-child(2),
body[data-detail-url] #starter-codes .catalog-detail-table th:first-child:nth-last-child(2) { width:50%; }

/* AS has two collected reference sections; retain the shared card sizes. */
body[data-detail-url][data-company-id="as"] .catalog-detail-links nav { grid-template-columns:repeat(2,minmax(0,1fr)); flex:0 1 334px; width:334px; max-width:334px; }
@media(max-width:800px) {
 body[data-detail-url][data-company-id="as"] .catalog-detail-links nav { flex:none; width:100%; max-width:none; }
}

/* Uppercase the specifications heading on catalog detail pages. */
body[data-detail-url] #spec-title { text-transform:uppercase; }

/* Reference links retain their existing table typography and selected-row color. */
body[data-detail-url] .catalog-detail-number-search { color:inherit; font:inherit; text-decoration:none; }
body[data-detail-url] .catalog-detail-number-search:hover,
body[data-detail-url] .catalog-detail-number-search:focus-visible { text-decoration:underline; text-underline-offset:3px; }

/* Shared directory Cards: stable height, complete models and an internal scroll area. */
body[data-catalog-url] .catalog-cards .catalog-card { --catalog-card-info-width:290px; --catalog-card-label-width:78px; container:catalog-model-card / inline-size; }
body[data-catalog-url] .catalog-cards .catalog-card-heading h3,
body[data-catalog-url] .catalog-cards .catalog-card-heading .catalog-model-link { white-space:nowrap; overflow-wrap:normal; }
body[data-catalog-url] .catalog-cards .catalog-card-main { height:200px; min-height:200px; grid-template-columns:minmax(0,1fr) minmax(0,var(--catalog-card-info-width)); grid-template-rows:minmax(0,1fr); }
body[data-catalog-url] .catalog-cards .catalog-card-body { min-height:0; height:100%; max-height:100%; align-self:stretch; padding:12px 8px 12px 16px; overflow-y:auto; overflow-x:hidden; overscroll-behavior-block:contain; }
body[data-catalog-url] .catalog-cards .catalog-card-image { height:100%; max-height:100%; min-height:0; padding-inline:16px 8px; }
body[data-catalog-url] .catalog-cards .catalog-card-picture-link { padding:4px 0 4px 8px; }
body[data-catalog-url] .catalog-cards .catalog-card-image img { height:100%; max-height:100%; object-fit:contain; }
body[data-catalog-url] .catalog-cards .catalog-card-meta { grid-template-columns:var(--catalog-card-label-width) minmax(0,1fr); }
body[data-catalog-url] .catalog-cards .catalog-card-meta dt { padding-block:9px; padding-inline-end:8px; }
body[data-catalog-url] .catalog-cards .catalog-card-meta dd { padding-block:9px; padding-inline-start:10px; }
body[data-catalog-url] .catalog-cards .catalog-card-meta>div:first-child dd { white-space:nowrap; overflow-wrap:normal; }
@container catalog-model-card (max-width:380px) {
 body[data-catalog-url] .catalog-cards .catalog-card-main { grid-template-columns:minmax(0,1fr); grid-template-rows:72px minmax(0,1fr); }
 body[data-catalog-url] .catalog-cards .catalog-card-image { width:128px; max-width:100%; justify-self:center; padding:4px 0 4px 8px; }
}
@container catalog-model-card (max-width:300px) {
 body[data-catalog-url] .catalog-cards .catalog-card-heading { padding-inline:12px; }
 body[data-catalog-url] .catalog-cards .catalog-card-meta { grid-template-columns:minmax(0,1fr); }
 body[data-catalog-url] .catalog-cards .catalog-card-meta dt { padding:9px 0 3px; text-align:left; }
 body[data-catalog-url] .catalog-cards .catalog-card-meta dd { padding:0 0 9px; border-inline-start:0; }
}
@container catalog-model-card (max-width:280px) {
 body[data-catalog-url]:not(.own-catalog-page) .catalog-cards .catalog-card-heading { padding-inline:4px; }
}

/* CARGO publishes one collected reference section. */
body[data-detail-url][data-company-id="cargo"] .catalog-detail-links nav { grid-template-columns:minmax(0,1fr); flex:0 1 161px; width:161px; max-width:161px; }
@media(max-width:800px) {
 body[data-detail-url][data-company-id="cargo"] .catalog-detail-links nav { flex:none; width:100%; max-width:none; }
}
