/* Marketing storefront. Documentation and technical reports keep their own theme. */
.homepage {
  --site-bg: #fcfcfb;
  --site-paper: #f3f6f7;
  --site-line: #dfe5e9;
}

.homepage .home-hero { padding-block: 68px 52px; }
.homepage .hero-heading h1 {
  font-size: clamp(32px, 3.5vw, 46px);
  line-height: 1.16;
  letter-spacing: -.035em;
  margin-bottom: 24px;
}
.homepage .hero-heading h1 span { color: #526f85; }
.homepage .hero-detail { color: #61717e; }
.homepage .hero-heading .lead { line-height: 1.8; }
.homepage .product-window {
  border-radius: 8px;
  border-color: #bac6d0;
  box-shadow: 0 20px 44px -28px #233c5260, 0 2px 6px #233c520d;
}
.homepage .window-bar { background: #253440; }
.homepage .image-caption { padding-top: 14px; }

.homepage .button { border-radius: 5px; transition: background .16s ease, border-color .16s ease, box-shadow .16s ease; }
.homepage .button:not(.button-secondary) { box-shadow: 0 2px 4px #203c5114, inset 0 1px 0 #ffffff12; }
.homepage .button-secondary { border-color: #b9c5ce; background: #ffffff80; }
.homepage .button-secondary:hover { background: #edf2f5; }
.homepage .compatibility-band { background: #fff; border-color: #e2e7eb; }
.homepage .compatibility { padding-block: 24px; }
.homepage .compatibility div + div { border-color: #e2e7eb; }

.homepage .section { padding-block: 64px; }
.homepage .section-heading { margin-bottom: 34px; }
.homepage .section-heading h2 { letter-spacing: -.03em; }
.homepage .catalog-product figure { border-radius: 7px; box-shadow: 0 8px 20px -14px #233c5250; }
.homepage .catalog-product figure img { border-radius: 7px; border-color: #c4cdd4; }
.homepage .toolkit-card-visual { border-color: #516271; }
.homepage .catalog-links { align-content: start; align-items: baseline; row-gap: 8px; }
.homepage .text-link { transition: color .16s ease, border-color .16s ease; }
.homepage .text-link > span { transition: transform .16s ease; }
.homepage .ai-flow li { display: block; padding-block: 20px; }
.homepage .ai-flow li:first-child { padding-top: 0; }
.homepage .ai-flow li::before { display: none; }
.homepage .closing { background: var(--site-bg); padding-block: 36px; }
.homepage .closing-inner { background: #edf2f5; border: 1px solid #dce5eb; border-radius: 8px; padding: 28px 32px; }

@media (hover: hover) and (pointer: fine) {
  .homepage .button:not(.button-secondary):hover { box-shadow: 0 4px 10px #203c5124, inset 0 1px 0 #ffffff12; }
  .homepage .text-link:hover > span { transform: translateX(3px); }
}
@media (max-width: 950px) {
  .homepage .home-hero { padding-block: 48px 36px; }
}
@media (max-width: 760px) {
  .homepage .home-hero { padding-block: 38px 30px; }
  .homepage .hero-heading h1 { font-size: clamp(30px, 7.6vw, 40px); }
  .homepage .section { padding-block: 42px; }
  .homepage .section-heading { margin-bottom: 26px; }
  .homepage .compatibility { padding-block: 20px; }
  .homepage .closing-inner { padding: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .homepage .button, .homepage .text-link, .homepage .text-link > span { transition: none; }
  .homepage .text-link:hover > span { transform: none; }
}
