*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }
body { min-width: 320px; overflow-x: hidden; }
img { max-width: 100%; }
a { transition: color .18s ease, border-color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease; }
a:hover { transform: translateY(-1px); }

.skip-link {
  position: fixed;
  left: 12px;
  top: 12px;
  z-index: 100;
  padding: 9px 13px;
  background: #5ac8ff;
  color: #04121f;
  font: 600 12px/1 "Sora", sans-serif;
  border-radius: 8px;
  transform: translateY(-180%);
}
.skip-link:focus { transform: translateY(0); }

.menu-button {
  display: none;
  border: 1px solid rgba(148,196,255,.22);
  border-radius: 10px;
  background: rgba(255,255,255,.04);
  color: #eaf2fa;
  padding: 9px 12px;
  font: 600 12px/1 "Sora", sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
}

[data-screen-label="Nav"] a:hover { color: #8eddff !important; }
.od-code-key { color: #72d8ff; }
.od-code-value { color: #7ce6ad; }
.od-code-string { color: #c5d1dd; }
.od-code-comment { color: rgba(214,230,246,.34); font-style: italic; }
[data-screen-label="Contact"] a:hover {
  border-color: rgba(90,200,255,.45) !important;
  box-shadow: 0 12px 40px rgba(37,132,204,.2);
}

[data-rv] { opacity: 1; transform: none; }

.contact-toast {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 100;
  max-width: 360px;
  padding: 13px 16px;
  border: 1px solid rgba(90,200,255,.38);
  border-radius: 12px;
  background: #0b1420;
  color: #eaf2fa;
  box-shadow: 0 18px 56px rgba(0,0,0,.42);
  font-size: 13px;
}

@media (max-width: 1080px) {
  .od-pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 920px) {
  [data-screen-label="Nav"] > div {
    height: auto !important;
    min-height: 66px;
    flex-wrap: wrap;
    padding-block: 12px !important;
  }
  .menu-button { display: inline-flex; }
  #site-nav {
    display: none !important;
    width: 100%;
    flex-direction: column;
    align-items: stretch !important;
    gap: 0 !important;
    padding-top: 8px;
  }
  #site-nav.open { display: flex !important; }
  #site-nav a { padding: 10px 0; border-top: 1px solid rgba(148,196,255,.1); }

  .od-hero-grid,
  #why [style*="grid-template-columns:1fr 1.12fr"],
  #packages [style*="grid-template-columns:.85fr 1.4fr"],
  #coverage [style*="grid-template-columns:1.25fr 1fr"],
  #samples [style*="grid-template-columns:.9fr 1.1fr"],
  .od-schema-grid,
  #trust [style*="grid-template-columns:.8fr 1.6fr"],
  .od-contact-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  .od-schema-grid > :first-child { border-right: 0 !important; border-bottom: 1px solid rgba(148,196,255,.12); }

  .od-hero-benefits { grid-template-columns: 1fr !important; }

  .od-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .od-metrics > :last-child { grid-column: 1 / -1; border-top: 1px solid rgba(148,196,255,.1); }
  #why [style*="grid-template-columns:repeat(3,1fr)"],
  #packages [style*="grid-template-columns:repeat(3,1fr)"],
  #trust [style*="grid-template-columns:repeat(4,1fr)"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  [data-screen-label="Footer"] > div { grid-template-columns: 1fr !important; gap: 16px !important; }
}

@media (max-width: 640px) {
  [data-screen-label] > div { padding-left: 18px !important; padding-right: 18px !important; }
  .od-pricing-grid,
  .od-metrics,
  #why [style*="grid-template-columns:repeat(3,1fr)"],
  #packages [style*="grid-template-columns:repeat(3,1fr)"],
  #trust [style*="grid-template-columns:repeat(4,1fr)"] { grid-template-columns: 1fr !important; }
  .od-metrics > * { border-left: 0 !important; border-bottom: 1px solid rgba(148,196,255,.1); }
  #top h1 { font-size: 44px !important; }
  .od-hero-benefits { gap: 7px !important; }
  .od-data-density { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  #packages [style*="grid-template-columns:1fr 76px 96px 130px"],
  #coverage [style*="grid-template-columns:56px 62px 1fr 84px 64px"] { min-width: 620px; }
  #packages [style*="border-radius:20px"][style*="overflow:hidden"],
  #coverage [style*="border-radius:20px"][style*="padding:24px"] { overflow-x: auto !important; }
  #top [style*="grid-template-columns:1fr auto 1fr"] { gap: 8px !important; }
  #top [style*="padding:24px 26px"] { padding: 18px 16px !important; }
}

@media (max-width: 420px) {
  .od-data-density { grid-template-columns: 1fr !important; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  [data-rv] { opacity: 1 !important; transform: none !important; }
}
