/* Products: three scroll-driven announcements on the shared white canvas. */
.focus-products.nav-open { padding-top: var(--header-h); }
.focus-products.nav-open .site-header { position: fixed; inset: 0 0 auto; }
.products-story { position: relative; }
.products-scene {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100svh - var(--header-h));
  max-width: 1280px;
  margin-inline: auto;
  padding: 70px 40px 90px;
  text-align: center;
}
.products-scene h1, .products-scene h2 {
  margin: 0;
  color: var(--ink);
  text-wrap: balance;
}
.products-opening h1 {
  max-width: 1000px;
  font-size: clamp(32px, 4.8vw, 72px);
  font-weight: 450;
  line-height: 1.16;
  letter-spacing: -.045em;
}
.products-scene h2 {
  font-size: clamp(56px, 8.4vw, 128px);
  font-weight: 350;
  line-height: 1.08;
  letter-spacing: -.06em;
}
.products-coming h2 { font-weight: 650; }
.products-motion .products-story {
  height: calc(var(--products-viewport) + var(--products-travel));
}
.products-motion .products-stage {
  position: sticky;
  top: var(--header-h);
  height: var(--products-viewport);
  overflow: hidden;
}
.products-motion .products-scene {
  position: absolute;
  inset: 0;
  min-height: 0;
  padding: 32px 40px 52px;
  opacity: var(--scene-opacity, 0);
  transform: translateY(var(--scene-offset, 0px));
}
.products-motion .products-scene:not(.is-visible) { visibility: hidden; pointer-events: none; }
@media(max-width:700px) {
  .products-scene { padding: 60px 24px 80px; }
  .products-opening h1 { font-size: clamp(30px, 8.5vw, 48px); }
  .products-scene h2 { font-size: clamp(38px, 10.7vw, 70px); }
  .products-motion .products-scene { padding: 28px 24px 44px; }
}
@media print {
  .products-motion .products-story { height: auto; }
  .products-motion .products-stage { position: static; height: auto; overflow: visible; }
  .products-scene, .products-motion .products-scene {
    position: static;
    min-height: 0;
    visibility: visible;
    opacity: 1;
    transform: none;
    padding: 30px 0;
  }
}
