/* Station spec-sheet components (2026-10-10). Square corners. */
.spec-band .wrap > h2 { margin-bottom: 0.4rem; }
.spec-intro { max-width: 52rem; margin: 0 0 1.2rem; color: #3d5160; }
.spec-scroll { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid #d5e0ea; background: #fff; }
.spec-table { width: 100%; border-collapse: collapse; font-size: 1rem; line-height: 1.45; color: #131f23; }
.spec-table th, .spec-table td { padding: 0.8rem 1rem; text-align: left; vertical-align: top; border-bottom: 1px solid #e3ebf2; }
.spec-table tr:last-child th, .spec-table tr:last-child td { border-bottom: 0; }
.spec-table thead th { background: #131f23; color: #fff; font-size: 0.82rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; white-space: nowrap; }
.spec-table tbody th { width: 15rem; background: #f3f6f9; font-weight: 700; }
.spec-table td a, .spec-table th a { color: #0b3f86; font-weight: 600; }
.spec-key tbody th { width: 13rem; }
.spec-apps td:last-child { width: 11rem; white-space: nowrap; }
.spec-apps tbody th { width: 12rem; }
.spec-compare thead th.is-current, .spec-compare td.is-current { box-shadow: inset 3px 0 0 #fbcf11, inset -3px 0 0 #fbcf11; }
.spec-compare thead th.is-current { background: #fbcf11; color: #131f23; }
.spec-compare thead th.is-current a { color: #131f23; }
.spec-compare thead th a { color: #fff; text-decoration: none; }
.spec-compare td.is-current { background: #fffbea; }
.spec-compare tbody th { width: 9rem; }
.spec-note { margin: 0.9rem 0 0; font-size: 0.95rem; color: #3d5160; max-width: 52rem; }
.spec-steps { list-style: none; counter-reset: step; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 1rem 0 0; padding: 0; border: 1px solid #d5e0ea; background: #fff; }
.spec-steps li { counter-increment: step; position: relative; padding: 1.1rem 1.1rem 1.25rem; border-right: 1px solid #e3ebf2; }
.spec-steps li:last-child { border-right: 0; }
.spec-steps li::before { content: counter(step); display: grid; place-items: center; width: 2rem; height: 2rem; margin-bottom: 0.75rem; background: #0b3f86; color: #fff; font-weight: 700; font-size: 0.95rem; }
.spec-steps strong { display: block; margin-bottom: 0.35rem; font-size: 1.05rem; color: #131f23; }
.spec-steps span { display: block; color: #3d5160; line-height: 1.45; font-size: 0.97rem; }
.spec-faq { border: 1px solid #d5e0ea; background: #fff; max-width: 60rem; }
.spec-faq details { border-bottom: 1px solid #e3ebf2; }
.spec-faq details:last-child { border-bottom: 0; }
.spec-faq summary { cursor: pointer; list-style: none; padding: 0.95rem 3rem 0.95rem 1.1rem; font-weight: 700; color: #131f23; position: relative; }
.spec-faq summary::-webkit-details-marker { display: none; }
.spec-faq summary::after { content: "+"; position: absolute; right: 1.1rem; top: 50%; transform: translateY(-50%); width: 1.5rem; height: 1.5rem; display: grid; place-items: center; background: #e7eef6; color: #0b3f86; font-weight: 700; }
.spec-faq details[open] summary::after { content: "\2212"; background: #fbcf11; color: #131f23; }
.spec-faq summary:focus-visible { outline: 2px solid #fbcf11; outline-offset: -2px; }
.spec-faq details p { margin: 0; padding: 0 1.1rem 1.05rem; color: #3d5160; line-height: 1.5; max-width: 48rem; }
.spec-links { margin-top: 1rem; font-size: 0.97rem; }
@media (max-width: 860px) {
  .spec-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .spec-steps li:nth-child(2) { border-right: 0; }
  .spec-steps li:nth-child(-n+2) { border-bottom: 1px solid #e3ebf2; }
}
@media (max-width: 640px) {
  .spec-steps { grid-template-columns: 1fr; }
  .spec-steps li { border-right: 0; border-bottom: 1px solid #e3ebf2; }
  .spec-steps li:last-child { border-bottom: 0; }
  .spec-stack, .spec-stack tbody, .spec-stack tr, .spec-stack th, .spec-stack td { display: block; width: auto !important; }
  .spec-stack thead { display: none; }
  .spec-stack tr { border-bottom: 1px solid #d5e0ea; }
  .spec-stack tr:last-child { border-bottom: 0; }
  .spec-stack tbody th { border-bottom: 0; padding-bottom: 0.3rem; }
  .spec-stack td { border-bottom: 0; padding-top: 0.25rem; }
  .spec-stack td[data-label]::before { content: attr(data-label); display: block; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: #3d5160; margin-bottom: 0.15rem; }
  .spec-apps td:last-child { white-space: normal; }
  .spec-compare { min-width: 40rem; }
  .spec-table th, .spec-table td { padding: 0.7rem 0.85rem; }
}
.spec-compare .sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.spec-band .wrap > h2 { margin: 0 0 1.1rem; }
.spec-band .spec-intro { margin-top: -0.4rem; }
.spec-faq { max-width: none; }
.spec-compare { table-layout: fixed; }
.spec-compare thead th:first-child, .spec-compare tbody th { width: 9rem; }
.spec-hint { display: none; margin: 0.6rem 0 0; font-size: 0.9rem; color: #3d5160; }
@media (max-width: 640px) {
  .spec-hint { display: block; }
  .spec-stack td.spec-link { padding-top: 0.1rem; padding-bottom: 0.85rem; }
  .spec-compare thead th:first-child, .spec-compare tbody th { width: 7rem; }
}
.spec-compare thead th { white-space: normal; }

/* Key specifications + Inspection capabilities side by side (2026-10-10). */
.spec-pair { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem; align-items: start; }
.spec-pair .spec-col { min-width: 0; }
.spec-pair .spec-col > h2 { margin: 0 0 1.1rem; }
.spec-pair .spec-table tbody th { width: 38%; }
.spec-pair .spec-table thead th:first-child { width: 38%; }
@media (max-width: 980px) {
  .spec-pair { grid-template-columns: 1fr; gap: 2.5rem; }
}

/* Industry pages: wider capabilities column (2026-10-10). */
.spec-pair-wide { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); }
.spec-pair-wide .spec-key tbody th, .spec-pair-wide .spec-key thead th:first-child { width: 34%; }
.spec-caps tbody th { width: 34%; }
.spec-caps td:last-child { width: 26%; }
.spec-caps th a { color: #0b3f86; }
@media (max-width: 980px) {
  .spec-pair-wide { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .spec-caps td:last-child { width: auto; }
}

/* Scope of supply + Industry applications pair on station pages (2026-10-10). */
.spec-pair .spec-apps tbody th { width: 30%; }
.spec-pair .spec-apps td:last-child { width: 16%; white-space: nowrap; }
.spec-pair .spec-apps tbody th { width: 28%; }
