/* Inter sentences and dotted display accents, shared by the main pages. */
@font-face {
  font-family: 'Brand Pixel';
  src: url('../../fonts/GeistPixel-Circle.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
:root {
  --section-title-size: clamp(30px, 3vw, 44px);
  --section-title-leading: 1.22;
}
.display-dots {
  font-family: 'BubbledotICG-FinePos', 'Brand Pixel', monospace;
  font-weight: 400;
  font-style: normal;
  letter-spacing: -0.065em;
}
h2 .display-dots {
  font-size: 0.94em;
  line-height: 1.3;
}
.home-page .ownership-head h2,
.home-page .event-inner h2,
.home-page .platform-intro h2,
.home-page #about .system-heading h2,
.home-page .models-intro h2,
.home-page .customer-heading h2,
.home-page .audience-heading h2,
.home-page #who-its-for h2,
.product-page .product-section h2 {
  font-size: var(--section-title-size);
  line-height: var(--section-title-leading);
  font-weight: 500;
  letter-spacing: -0.035em;
}
.home-page .ownership-head h2 {
  max-width: 680px;
  margin-top: 20px;
}
.home-page .industry-heading h2 {
  font-size: clamp(28px, 2.5vw, 36px);
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: -0.03em;
}
.home-page .last-cta h2 {
  font-size: clamp(36px, 3.5vw, 50px);
  line-height: 1.22;
  font-weight: 500;
  letter-spacing: -0.035em;
}
.product-page .product-hero h1 {
  font-size: clamp(44px, 4.5vw, 64px);
  line-height: 1.12;
  letter-spacing: -0.045em;
  max-width: 1000px;
}
@media (min-width: 761px) {
  .home-page .hero-showcase h1 {
    font-size: clamp(37px, 4.1vw, 60px);
    line-height: 1.2;
  }
  .home-page .ownership-visual {
    margin-top: 44px;
  }
}
@media (max-width: 760px) {
  :root {
    --section-title-size: clamp(28px, 5.5vw, 36px);
  }
  .home-page .last-cta h2 {
    font-size: clamp(32px, 6.5vw, 42px);
  }
  .product-page .product-hero h1 {
    font-size: clamp(34px, 7.2vw, 48px);
    line-height: 1.13;
  }
  .home-page .industry-heading h2 {
    font-size: clamp(27px, 4.7vw, 32px);
  }
}
.platform-foundations {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 38px;
  margin-top: 42px;
  border-top: 1px solid var(--theme-border);
}
.platform-foundations article {
  padding: 28px 0 4px;
  min-width: 0;
}
.platform-foundations .engineering-icon {
  width: 26px;
  height: 26px;
  color: var(--theme-brand);
  stroke-width: 1.4;
}
.platform-foundations h3 {
  margin: 20px 0 12px;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 1.3;
  color: var(--theme-heading);
}
.platform-foundations p {
  margin: 0;
  font-size: 14px;
  line-height: 1.75;
  color: var(--theme-body);
  max-width: 360px;
}
.platform-direction-note {
  margin: 29px 0 0;
  padding-top: 19px;
  border-top: 1px solid var(--theme-border);
  font-size: 12px;
  color: var(--theme-body);
  line-height: 1.7;
}
@media (max-width: 760px) {
  .platform-foundations {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-top: 30px;
  }
  .platform-foundations article {
    padding-top: 20px;
  }
  .platform-foundations article + article {
    border-top: 1px solid var(--theme-border);
  }
  .platform-foundations h3 {
    margin-top: 14px;
  }
  .platform-foundations p {
    max-width: none;
  }
}
