/* Shared by static HTML and enhanced navigation. */
.seo-breadcrumbs { margin: 0 0 1.5rem; font-size: .75rem; line-height: 1.5; }
.seo-breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .4rem .6rem; list-style: none; padding: 0; margin: 0; }
.seo-breadcrumbs li + li::before { content: "/"; margin-right: .6rem; opacity: .5; }
.seo-breadcrumbs a { color: inherit; text-underline-offset: .2em; }
.seo-breadcrumbs a:hover { text-decoration: underline; }
.nojs-nav { position: relative; z-index: 25; display: flex; gap: .75rem; flex-wrap: wrap; padding: 1rem 5%; margin-top: 6rem; background: #eef0f1; color: #142b42; }
.nojs-nav a { text-decoration: underline; }
.specification-directory-controls { display: grid; grid-template-columns: minmax(0, 2fr) minmax(12rem, 1fr); gap: 1.5rem; margin-top: 2rem; }
.specification-directory-controls .spec-search { width: 100%; max-width: none; }
.specification-directory-controls input,
.specification-directory-controls select { width: 100%; min-height: 3.25rem; padding: .8rem; border: 1px solid #a4afb6; border-radius: 0; background: #fff; color: #142b42; font: inherit; }
.specification-directory-controls :is(input, select):focus-visible { outline: 2px solid #2449ed; outline-offset: 3px; }
.specification-manufacturer-index { margin: 2rem 0 3rem; padding-bottom: 2rem; border-bottom: 1px solid #b8c0c7; }
.specification-manufacturer-index ul { display: flex; flex-wrap: wrap; gap: .65rem 1.3rem; list-style: none; padding: 0; }
.specification-manufacturer-index a { font-size: .9rem; text-decoration: underline; text-underline-offset: .2em; }
.specification-manufacturer-group { margin: 0 0 3rem; }
.specification-manufacturer-group > h2 { margin: 0 0 1.25rem; font-size: clamp(1.5rem, 2vw, 2.2rem); line-height: 1.15; }
.specification-reference-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.specification-reference { padding: 1.5rem; border: 1px solid #b8c0c7; background: #fff; }
.specification-reference h3 { font-size: 1.15rem; margin: 0 0 1rem; line-height: 1.4; }
.specification-reference h3 a { color: #1638c9; text-underline-offset: .2em; }
.specification-code-list { margin: 0 0 1.25rem; padding-left: 1.15rem; }
.specification-code-list li { margin: .5rem 0; overflow-wrap: anywhere; line-height: 1.5; }
.specification-reference p { font-size: .9rem; line-height: 1.6; margin: .8rem 0 0; }
.specification-directory-link, .specification-finish-link { text-decoration: underline; text-underline-offset: .2em; }
.specification-reference[hidden], .specification-manufacturer-group[hidden] { display: none; }
[id^="spec-"], [id^="manufacturer-"] { scroll-margin-top: 8rem; }
@media (max-width: 960px) { .specification-reference-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) {
  .specification-directory-controls, .specification-reference-list { grid-template-columns: minmax(0, 1fr); }
  .specification-directory-controls { gap: 1rem; }
  .specification-reference { padding: 1.2rem; }
  .specification-manufacturer-index { margin-bottom: 2rem; }
}
