:root {
  --ink:#0d1a2e;
  --muted:#435570;
  --brand:#2457d6;
  --line:#d8e2ee;
  --font:"Avenir Next","Segoe UI","Helvetica Neue",sans-serif;
}
* {
  box-sizing:border-box;
}
body {
  margin:0;
  background:#f7faff;
  color:var(--ink);
  font-family:var(--font);
  line-height:1.65;
}
h1,h2,h3,p,figure {
  margin:0;
}
a {
  color:#183f9e;
  text-underline-offset:.22em;
}
button {
  font:inherit;
}
img {
  display:block;
  max-width:100%;
  height:auto;
}
a:focus-visible,button:focus-visible {
  outline:3px solid var(--brand);
  outline-offset:5px;
}
a,button {
  -webkit-tap-highlight-color:transparent;
}
.container {
  width:min(1120px,calc(100% - 3rem));
  margin-inline:auto;
}
.skip-link {
  position:absolute;
  top:-6rem;
  left:1rem;
  z-index:100;
  padding:.65rem 1rem;
  background:var(--ink);
  color:white;
}
.skip-link:focus {
  top:1rem;
}
.site-header {
  border-bottom:1px solid var(--line);
  background:#fff;
}
.header-bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  min-height:88px;
}
.wordmark {
  font-size:1.6rem;
  font-weight:800;
  letter-spacing:-.08em;
  color:var(--ink);
  text-decoration:none;
}
.wordmark span {
  color:var(--brand);
}
nav {
  display:flex;
  flex-wrap:wrap;
  gap:.5rem 1.4rem;
  align-items:center;
}
nav a,footer button {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  text-decoration:none;
  font-size:.9rem;
  font-weight:650;
}
nav a:hover,footer button:hover {
  text-decoration:underline;
}
.header-cta {
  border:1px solid var(--line);
  border-radius:999px;
  padding:.3rem 1rem;
}
.eyebrow {
  text-transform:uppercase;
  font-size:.74rem;
  letter-spacing:.13em;
  font-weight:750;
  color:var(--muted);
}
.company-intro {
  padding-block:4.5rem 3.2rem;
}
.company-intro h1 {
  font-size:clamp(2.5rem,5vw,4rem);
  letter-spacing:-.05em;
  line-height:1.08;
  margin:.9rem 0 1.3rem;
}
.company-intro>p:last-child {
  font-size:1.1rem;
  color:var(--muted);
  max-width:48rem;
}
.featured-product {
  display:grid;
  grid-template-columns:1.25fr 1fr;
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  background:white;
  box-shadow:0 18px 60px #1632660a;
}
.product-copy {
  padding:clamp(1.5rem,4vw,3.5rem);
  align-self:center;
}
.product-identity {
  display:flex;
  align-items:center;
  gap:1rem;
  margin-bottom:2rem;
}
.product-identity img {
  border-radius:14px;
  width:64px;
  height:64px;
}
.product-identity h2 {
  font-size:1.8rem;
  line-height:1.15;
  letter-spacing:-.04em;
}
.product-identity .eyebrow {
  margin-bottom:.35rem;
}
.product-copy h3 {
  font-size:clamp(1.6rem,3vw,2.25rem);
  line-height:1.2;
  letter-spacing:-.035em;
  margin-bottom:1rem;
}
.product-copy>p {
  color:var(--muted);
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:1.5rem;
  min-height:48px;
  background:var(--brand);
  color:white;
  border-radius:999px;
  padding:.6rem 1.4rem;
  font-weight:750;
  text-decoration:none;
  margin-top:1.5rem;
}
.button:hover {
  background:#183f9e;
}
.store-links {
  display:flex;
  flex-wrap:wrap;
  gap:.65rem;
  margin-top:1.5rem;
}
.store-links a {
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #b8c8dc;
  border-radius:8px;
  min-height:48px;
  padding:.65rem .85rem;
  text-decoration:none;
  font-size:.85rem;
  font-weight:750;
}
.store-links a:hover {
  background:#edf3ff;
}
.product-copy .free-note {
  font-size:.9rem;
  color:var(--ink);
  font-weight:650;
  margin-top:.75rem;
}
.assistance {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  font-size:.85rem;
}
.product-visual {
  background:#e9f0fd;
  padding:2rem 1.5rem;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1.25rem;
}
.preview-label {
  color:#31445f;
  font-size:.78rem;
  font-weight:650;
}
.product-visual a {
  display:block;
  width:min(100%,300px);
  border-radius:20px;
}
.product-visual img {
  border-radius:20px;
  width:100%;
  box-shadow:0 12px 30px #0d1a2e1a;
}
.product-visual figcaption {
  max-width:300px;
  font-size:.75rem;
  color:#435570;
}
.product-resources {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3rem;
  padding-block:4rem;
}
.product-resources h2 {
  font-size:1.6rem;
  letter-spacing:-.03em;
  line-height:1.25;
  margin:.7rem 0;
}
.product-resources p {
  color:var(--muted);
}
.product-resources nav {
  display:grid;
  gap:0;
}
.product-resources nav a {
  justify-content:space-between;
  gap:1rem;
  min-height:48px;
  border-bottom:1px solid var(--line);
  padding:.55rem 0;
  scroll-margin-top:1rem;
}
.contact {
  padding:2rem 0 3rem;
  border-top:1px solid var(--line);
}
.contact h2 {
  font-size:1.35rem;
  margin-bottom:.5rem;
}
.contact p {
  color:var(--muted);
}
footer {
  padding:1.5rem 0 2rem;
  border-top:1px solid var(--line);
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
}
footer p {
  font-size:.85rem;
  color:var(--muted);
}
footer button {
  border:0;
  background:none;
  color:#183f9e;
  padding:0;
  cursor:pointer;
}
@media(max-width:760px) {
  .container {
    width:calc(100% - 2rem);
  }
  .header-bar {
    flex-wrap:wrap;
    padding-block:1rem;
    gap:.5rem;
  }
  .header-bar nav {
    gap:.25rem 1rem;
  }
  .company-intro {
    padding-block:2.5rem 2rem;
  }
  .desktop-break {
    display:none;
  }
  .featured-product {
    grid-template-columns:1fr;
  }
  .product-copy {
    padding:1.5rem;
  }
  .product-visual {
    padding:1.5rem;
  }
  .product-visual a {
    width:min(80vw,320px);
  }
  .product-resources {
    grid-template-columns:1fr;
    gap:1.25rem;
    padding-block:2.5rem;
  }
  .store-links {
    flex-direction:column;
    align-items:stretch;
  }
  .product-identity {
    margin-bottom:1.5rem;
  }
  footer nav {
    gap:.25rem 1rem;
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    scroll-behavior:auto!important;
  }
}
h1, h2, h3 {
  overflow-wrap: anywhere;
}
