/* Finishing adjustments to the existing landing; retain its layout and palette. */
.landing-page .sf-primary { border-radius: 6px; box-shadow: none; }
.landing-page header > div { border-radius: 14px; border-color: #e5e5e5; box-shadow: 0 4px 16px -10px rgb(0 0 0 / .2); }
.landing-page header a[href="#features"] { border-radius: 6px; }
.closing-secondary { text-decoration: underline; text-underline-offset: 5px; text-decoration-color: #b8b8b8; }
.closing-secondary:hover { color: #000; text-decoration-color: #000; }
.closing-details > span + span { border-left: 1px solid #dedede; padding-left: 20px; }
.landing-page a:focus-visible, .landing-page button:focus-visible, .landing-page summary:focus-visible { outline: 2px solid #525252; outline-offset: 4px; }
/* Each benefit stays with its corresponding scene, including on mobile. */
#scanner .scanner-scene { display: flex; flex-direction: column; overflow: hidden; background: #fff; border: 1px solid #e8e8e8; border-radius: 12px; }
#scanner .scanner-scene-copy { padding: 32px 32px 28px; flex: 1; }
#scanner .scanner-scene-title { margin: 0; color: #111; }
#scanner .scanner-scene-copy p { margin-top: 14px; font-size: 14px; line-height: 1.7; color: #666; }
#scanner .scanner-scene-photo { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
@media (max-width: 639px) {
  #scanner .scanner-scene { border-radius: 12px; }
  #scanner .scanner-scene-copy { padding: 24px; }
  #scanner .scanner-scene-copy p { margin-top: 12px; }
}
section[id] { scroll-margin-top: 88px; }
section h2 { text-wrap: wrap; }
.hero-description strong { white-space: nowrap; }

a, button, summary {
  -webkit-tap-highlight-color: transparent;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}
.scan-range-cards p, .extra-feature-cards p { line-height: 1.7; }
.scan-range-cards > div { padding: 20px; }
.extra-feature-cards .grid > div { padding: 24px; }

#pricing .price-recommended-dark {
  box-shadow: 0 12px 32px -16px rgba(0,0,0,.22), 0 0 0 2px #000000 inset;
}
#pricing li { line-height: 1.65; }
#pricing .tabular-nums, #pricing .price-scan-suffix { white-space: nowrap; }
#pricing li > .tabular-nums { flex-shrink: 0; }
#faq summary { gap: 20px; min-height: 28px; }
#faq summary > span:last-child { flex-shrink: 0; }
.diag-item[data-checked="true"] { background-color: #F0F0F0; border-color: #111; }

@media (min-width: 1024px) {
  #features > div > .mt-28 { margin-top: 144px; }
}
@media (max-width: 639px) {
  section[id] { scroll-margin-top: 80px; }
  #features > div > .mt-28 { margin-top: 80px; }
  .scan-range-cards > div, .extra-feature-cards .grid > div { padding: 20px; }
  #pricing .price-recommended-dark { padding: 28px 24px 24px; }
  #pricing > div > .grid { row-gap: 20px; }
  #compare th, #compare td { padding-left: 12px; padding-right: 12px; line-height: 1.65; }
  #faq summary { line-height: 1.6; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  a, button, summary { transition: none; }
}
