/* SEO_20261020: public discovery and accessibility additions, existing theme preserved. */
.seo-skip { position: absolute; top: -100px; left: 16px; z-index: 1000; padding: 12px 16px; background: #121b2b; color: #fff; border: 2px solid #a6caff; border-radius: 6px; }
.seo-skip:focus { top: 12px; }
.seo-discover { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 24px; font-size: 14px; }
.seo-discover a,.seo-feature-link { color: #afceff; text-decoration: underline; text-underline-offset: 4px; display: inline-flex; min-height: 44px; align-items: center; }
.seo-feature-link { margin-top: 10px; font-size: 14px; }
.seo-mobile-nav { display: none; }
/* Keep the original 24px footer mark square despite the 28px HTML fallback. */
header .brand img[src*="/brand-mark-"], footer img[src*="/brand-mark-"] { height: auto; aspect-ratio: 1 / 1; }
/* Reserve the two catalogue lanes before their public data arrives. */
#model-lanes { min-height: 96px; }
.seo-legal-table { max-width: 100%; overflow-x: auto; overscroll-behavior: contain; margin: 16px 0; }
.legal .seo-legal-table table { min-width: 640px; margin: 0; }
.legal .seo-legal-table[data-columns="2"] table { min-width: 0; }
.seo-legal-table-tip { display: none; }
.seo-legal-table:focus-visible { outline: 2px solid #a6caff; outline-offset: 4px; }
body footer .fcols h4 { font-size: 12px; color: #a8b4c7; }
body .ctarow .stats span { font-size: 12px; color: #a8b4c7; }
.seo-product { --seo-space: 24px; }
.seo-product .hero { padding-bottom: 24px; }
.seo-product h1 { max-width: 22ch; }
.seo-product .lead { max-width: 76ch; line-height: 1.7; }
.seo-product .seo-product-body { display: grid; grid-template-columns: minmax(0,1fr) 280px; align-items: start; gap: 48px; margin-top: 36px; }
.seo-product .seo-product-body > * { min-width: 0; }
.seo-product h2 { font-size: clamp(24px,2.5vw,32px); margin: 0 0 16px; }
.seo-product h3 { font-size: 18px; margin: 24px 0 8px; }
.seo-product p,.seo-product li { color: #b9c3d2; line-height: 1.75; font-size: 16px; }
.seo-product section { margin-top: 48px; }
.seo-product section:first-child { margin-top: 0; }
.seo-product ul,.seo-product ol { padding-left: 24px; }
.seo-product li { margin-bottom: 12px; }
.seo-product strong { color: #f0f3f8; }
.seo-product figure { margin: 28px 0 40px; }
.seo-product figure img { display: block; width: 100%; height: auto; border: 1px solid #303a49; border-radius: 10px; background: #10151d; }
.seo-product figcaption { color: #a8b4c7; font-size: 12px; margin-top: 12px; line-height: 1.7; }
.seo-product aside { border: 1px solid #303a49; padding: 24px; border-radius: 10px; background: #10151d; }
.seo-product aside h2 { font-size: 18px; }
.seo-product aside a { display: block; min-height: 44px; color: #afceff; padding-block: 10px; overflow-wrap: anywhere; line-height: 1.5; }
.seo-product aside p { font-size: 14px; margin-top: 12px; }
.seo-product .seo-faq details { border-top: 1px solid #303a49; padding-block: 16px; }
.seo-product .seo-faq summary { cursor: pointer; min-height: 44px; font-size: 16px; font-weight: 600; line-height: 1.6; }
.seo-product .seo-faq p { margin-top: 12px; }
.seo-product .seo-cta { margin-top: 36px; padding-top: 24px; border-top: 1px solid #303a49; }
.seo-product .crumb { color: #a8b4c7; font-size: 14px; margin-bottom: 20px; }
.seo-product .crumb a { color: #afceff; }
.seo-product .seo-cta .btn { margin: 12px 12px 0 0; }
.seo-product a:focus-visible,.seo-discover a:focus-visible,.seo-feature-link:focus-visible,.seo-mobile-nav a:focus-visible,summary:focus-visible { outline: 2px solid #a6caff; outline-offset: 4px; }
@media (max-width: 800px) {
  header.nav { padding: 12px 18px; gap: 12px; flex-wrap: wrap; }
  header.nav .brand { flex-shrink: 0; font-size: 18px; }
  header.nav .cta { gap: 8px; }
  header.nav .cta .btn { min-height: 44px; font-size: 13px; padding: 10px 12px; white-space: nowrap; }
  main .hero { padding-top: 64px; }
  .shot::before { left: 0; right: 0; }
  footer { grid-template-columns: minmax(0,1fr); padding: 32px 18px; }
  .seo-legal-table-tip { display: block; font-size: 12px; color: #a8b4c7; }
  .seo-mobile-nav { display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 8px 20px; padding: 8px 18px; border-bottom: 1px solid #303a49; position: relative; z-index: 2; background: #0c1119; }
  .seo-mobile-nav a { color: #c4d9f7; display: flex; align-items: center; min-height: 44px; font-size: 14px; }
  .seo-product .seo-product-body { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .seo-product h1 { font-size: clamp(30px,8vw,42px); }
  .seo-product aside { order: 2; }
}
@media (max-width: 360px) {
  header.nav .cta { width: 100%; margin-left: 0; }
  header.nav .cta .btn { flex: 1; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  .seo-product * { scroll-behavior: auto; }
}
