/* One content edge across every public page. */
.site-page, .home-page, .algo-page {
  --site-content-width: 1240px;
  --site-gutter: 48px;
  --site-header-height: 80px;
  margin: 0;
}

.site-page .site-shell,
.site-page .site-container,
.home-page .container,
.home-page .case-studies-swiper,
.algo-wrap {
  box-sizing: border-box;
  width: calc(100% - var(--site-gutter) - var(--site-gutter));
  max-width: var(--site-content-width);
  min-width: 0;
  margin-inline: auto;
  padding-inline: 0 !important;
}
.site-page .site-section { width: 100%; max-width: none; padding-inline: 0 !important; }
.site-page .site-container .site-container { width: 100%; max-width: none; }
.site-page .site-container > .grid[class*="max-w-"] { max-width: none; }
.site-page .site-container > .row { margin-inline: 0; }
.site-page .site-container > .row > [class*="col-"]:first-child { padding-left: 0; }
.site-page .site-container > .row > [class*="col-"]:last-child { padding-right: 0; }
.site-page section[id], .site-page main[id] { scroll-margin-top: calc(var(--site-header-height) + 20px); }
.site-page .site-secondary-nav { position: sticky !important; top: var(--site-header-height) !important; z-index: 40; }
.site-page .site-content-main { padding-top: 40px !important; }
.site-page .site-product-heading { position: relative !important; top: auto !important; inset-inline: auto !important; z-index: 10 !important; }
.site-page img, .site-page video { max-width: 100%; }
.site-page .site-container .grid > *, .site-page .site-container .flex > * { min-width: 0; }

/* Older Swiper styles only contain .swiper-container; pages also use .swiper. */
.site-page .swiper, .site-page .swiper-container { overflow: hidden; min-width: 0; }
/* Keep content on its final edge from first paint, including below the fold. */
.site-page [data-aos], .site-page .reveal, .site-page .reveal-left, .site-page .reveal-right {
  transform: none !important; opacity: 1 !important; transition: none !important;
}

@media (max-width: 1100px) {
  .site-page, .home-page, .algo-page { --site-gutter: 32px; }
}
@media (max-width: 900px) {
  .site-page, .home-page, .algo-page { --site-gutter: 24px; }
}
@media (max-width: 620px) {
  .site-page, .home-page, .algo-page { --site-gutter: 20px; --site-header-height: 70px; }
  .site-page .site-container [class~="-right-8"] { right: 0; }
  .site-page .site-container [class~="-left-8"] { left: 0; }
  .site-page .site-container .flex-1 { overflow-wrap: anywhere; }
  .site-page .iso-card { transform: none; }
}
