/* Shared landing-page body, cards, FAQ, footer — used with asm-chrome.css */

html { -webkit-text-size-adjust: 100%; }
html, body { overflow-x: hidden; max-width: 100%; }
body {
  margin: 0;
  font-family: 'Hanken Grotesk', 'Helvetica Neue', Arial, sans-serif;
  color: #1f2933;
  line-height: 1.6;
  background: #fff;
  font-size: 17px;
}
h1, h2, h3, p, summary { overflow-wrap: break-word; }
a { color: #3d68cf; }
img { max-width: 100%; height: auto; display: block; }
.wrap { max-width: 920px; margin: 0 auto; padding: 0 22px; }
h1, h2, h3 {
  font-family: 'ivypresto-display', Georgia, 'Times New Roman', serif;
  color: #1b2740;
  line-height: 1.18;
  font-weight: 600;
}
h1 { font-size: 2.15rem; margin: .2em 0 .3em; }
h2 { font-size: 1.5rem; margin: 1.8em 0 .5em; }
h3 {
  font-size: 1.15rem;
  margin: 1.4em 0 .3em;
  font-family: 'Hanken Grotesk', 'Helvetica Neue', Arial, sans-serif;
  font-weight: 700;
}
p { margin: .7em 0; }
.note {
  font-size: 15px;
  color: #5b6675;
  background: #f6f8fc;
  border-left: 3px solid #3d68cf;
  padding: 12px 16px;
  margin: 1.2em 0;
}
.asm-btn-primary, .asm-btn-secondary {
  display: inline-block;
  padding: 15px 30px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 15px;
  text-decoration: none;
  transition: transform .15s ease, box-shadow .15s ease;
  margin: 6px;
}
.asm-btn-primary {
  background: #3d68cf;
  color: #fff;
  box-shadow: 0 8px 20px rgba(61, 104, 207, .28);
}
.asm-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(61, 104, 207, .34);
}
.asm-btn-secondary {
  background: #fff;
  color: #3d68cf;
  border: 1.5px solid #cfdaf0;
}
.asm-btn-secondary:hover { border-color: #3d68cf; }
main { padding: 8px 0 10px; }
.crumbs { font-size: 13px; color: #7a8699; padding: 16px 0 0; }
.crumbs a { color: #7a8699; text-decoration: none; }
.grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 14px 0; }
.card { border: 1px solid #e7ebf3; border-radius: 12px; padding: 18px 20px; background: #fbfcfe; }
.card h3 { margin-top: 0; }
.faq { border-top: 1px solid #eef1f6; margin-top: 8px; }
.faq details { border-bottom: 1px solid #eef1f6; padding: 14px 0; }
.faq summary { font-weight: 700; cursor: pointer; font-size: 1.05rem; }
.faq details p { color: #41506a; }
.cta-band { background: #1b2740; color: #eaf1ff; text-align: center; padding: 40px 0; margin-top: 34px; }
.cta-band h2 { color: #fff; }
.cta-band p { color: #c3d1ee; max-width: 600px; margin: .4em auto 1em; }
footer.site { background: #0f1626; color: #aab6cc; font-size: 14px; padding: 34px 0; }
footer.site a { color: #cdd8ee; text-decoration: none; }
footer.site .cols { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 24px; }
footer.site h4 {
  color: #fff;
  font-family: 'Hanken Grotesk', 'Helvetica Neue', Arial, sans-serif;
  font-size: 14px;
  margin: 0 0 10px;
  letter-spacing: .02em;
}
footer.site ul { list-style: none; padding: 0; margin: 0; }
footer.site li { margin: 5px 0; }
.finelinks a { margin-right: 14px; }
@media (max-width: 720px) {
  .grid, footer.site .cols { grid-template-columns: 1fr; }
  h1 { font-size: 1.7rem; }
}
