.accessory-page { padding-bottom:80px; }
.catalog-accessory-entry { display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0;padding:20px 24px;border:1px solid var(--line);font-size:13px; }
.catalog-accessory-entry span { color:var(--muted); }
.accessory-filter { display:grid;grid-template-columns:2fr 1fr auto;gap:20px;align-items:end;margin:38px 0 24px;padding:26px;background:#f4f6f7;border:1px solid var(--line); }
.accessory-filter label { display:grid;gap:10px;font-size:12px;font-weight:600; }
.accessory-filter input,.accessory-filter select { width:100%;min-width:0;min-height:48px;background:#fff;border:1px solid var(--line);border-radius:0;padding:12px;color:var(--ink);font:inherit; }
.accessory-filter .button { min-height:48px; }
.accessory-compatibility-filter,.accessory-result-count { font-size:13px;color:var(--muted);margin:18px 0; }
.accessory-compatibility-filter a { margin-left:16px;text-decoration:underline; }
.accessory-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
.accessory-card { border:1px solid var(--line);min-width:0; }
.accessory-card>a { display:block;height:100%; }
.accessory-image { display:flex;width:100%;min-width:0;min-height:0;aspect-ratio:1.6;align-items:center;justify-content:center;flex-direction:column;gap:14px;background:linear-gradient(130deg,#fafbfc,#e9edf0);color:#8f9ba6;overflow:hidden; }
.accessory-image>.icon { width:64px;height:64px;stroke-width:1; }
.accessory-image>span { font-size:11px;letter-spacing:.06em; }
.accessory-image img { width:100%;height:100%;object-fit:contain; }
.accessory-card-copy { padding:24px; }
.accessory-card h2 { font-family:var(--font-sans);font-size:22px;font-weight:400;margin:10px 0; }
.accessory-card p,.accessory-detail-copy>p { font-size:13px;color:var(--muted);line-height:1.75; }
.accessory-part-number { overflow-wrap:anywhere;font-variant-numeric:tabular-nums; }
.accessory-card .text-link { margin-top:20px; }
.accessory-card a:hover h2 { color:var(--red); }
.accessory-detail { display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin:40px 0 70px; }
.accessory-detail .accessory-image { aspect-ratio:1.25; }
.accessory-detail-copy>p { margin:18px 0; }
.accessory-facts { border-top:1px solid var(--line);margin:24px 0; }
.accessory-facts>div { display:flex;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px; }
.accessory-facts dd { margin:0; }
.accessory-specs,.accessory-compatible { margin:48px 0; }
.accessory-specs h2,.accessory-compatible h2,.accessory-empty h2 { font-family:var(--font-sans);font-weight:400;font-size:32px;margin:14px 0 28px; }
.accessory-compatible-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px; }
.accessory-compatible-grid>a { display:flex;align-items:center;gap:20px;border:1px solid var(--line);padding:24px;min-width:0; }
.accessory-compatible-grid>a>div { flex:1;min-width:0; }
.accessory-compatible-grid h3 { font-family:var(--font-sans);font-weight:400;font-size:19px;margin:7px 0; }
.accessory-compatible-grid small,.accessory-compatible-grid p { font-size:11px;color:var(--muted); }
.accessory-empty { padding:40px 0; }
.enquiry-configuration-invalid { color:#ad2b33;font-size:12px;line-height:1.6;margin:8px 0; }
@media(max-width:900px) { .accessory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .accessory-detail { gap:30px; } }
@media(max-width:700px) {
  .catalog-accessory-entry { flex-direction:column;align-items:flex-start;gap:10px; }
  .accessory-grid,.accessory-detail,.accessory-compatible-grid,.accessory-filter { grid-template-columns:1fr; }
  .accessory-filter { padding:20px;gap:16px; }
  .accessory-detail { gap:24px;margin-bottom:40px; }
  .accessory-compatible-grid>a { padding:18px;gap:12px; }
  .product-template:has(#catalog-panel-configure:not([hidden])) .product-mobile-cta { display:none; }
  .product-template:has(#catalog-panel-configure:not([hidden])) .catalog-comparison-dock { bottom:calc(var(--configuration-mobile-height, 112px) + 10px); }
  .product-template:has(#catalog-panel-configure:not([hidden])) { padding-bottom:calc(var(--configuration-mobile-height, 112px) + 20px); }
}
