/* The approved glass treatment, scoped to the homepage approach section. */
@font-face {
  font-family: "Corvana Approach Serif";
  src: url("/assets/fonts/approach-reckless-light.woff2") format("woff2");
  font-style: normal;
  font-weight: 300;
  font-display: swap;
}
@font-face {
  font-family: "Corvana Approach Mono";
  src: url("/assets/fonts/approach-jetbrains-mono-light.woff2") format("woff2");
  font-style: normal;
  font-weight: 300;
  font-display: swap;
}
.approach-solutions--glass {
  position: relative;
  padding: 0 48px 80px;
  background: transparent;
  overflow: visible;
}
.approach-glass-backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: visible;
  pointer-events: none;
  /* Let the complete glass frame extend past the section without a white seam. */
  mix-blend-mode: multiply;
}
.approach-glass-canvas {
  position: absolute;
  top: -212px;
  left: 50%;
  width: 1400px;
  max-width: 100vw;
  aspect-ratio: 1;
  transform: translateX(-50%);
}
.approach-glass-canvas video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.approach-glass-heading {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  height: 866px;
  margin: 0 -48px max(77px, calc(min(1400px, 100vw) - 1078px));
  padding: 80px 20px 0;
  text-align: center;
}
.approach-glass-heading .approach-glass-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  margin: 0;
  padding: 8px 24px;
  border: 1px solid #737373;
  border-radius: 32px;
  background: #ffffffcc;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  color: #262626;
  font-size: 14px;
  text-transform: uppercase;
}
.approach-glass-heading h2 {
  max-width: 100%;
  margin: 0;
  color: #171717;
  font-size: 51px;
  text-wrap: balance;
}
/* Shared site typography is layered and injected last by the build. */
@layer corvana-typography {
  #technology .approach-glass-heading h2 {
    font-family: "Corvana Approach Serif", Georgia, serif !important;
    font-weight: 300 !important;
    line-height: 1.08 !important;
    letter-spacing: -1.5px !important;
  }
  #technology .approach-glass-label {
    font-family: "Corvana Approach Mono", monospace !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
  }
  @media (max-width: 809.98px) {
    #technology .approach-glass-heading h2 {
      line-height: 1.12 !important;
      letter-spacing: -1px !important;
    }
  }
}
.approach-solutions--glass .approach-flow {
  position: relative;
  z-index: 1;
}
.approach-solutions--glass .approach-sticky:has([data-approach-photo="2"]:not([inert])) > .approach-selectors {
  bottom: 80px;
}
@media (min-width: 1200px) and (max-width: 1439.98px) {
  .approach-glass-heading h2 { font-size: 41px; }
}
@media (min-width: 810px) and (max-width: 1199.98px) {
  .approach-glass-canvas { width: 1106px; top: -162px; }
  .approach-glass-heading { height: 690px; margin-bottom: max(77px, calc(min(1106px, 100vw) - 852px)); }
  .approach-glass-heading h2 { font-size: 38px; }
}
@media (max-width: 1100px) {
  .approach-solutions--glass { padding: 0 30px 60px; }
  .approach-glass-heading { margin-inline: -30px; }
}
@media (max-width: 809.98px) {
  .approach-glass-canvas { width: 786px; top: 0; }
  .approach-glass-heading { height: min(786px, 100vw); margin-bottom: 77px; padding: 0 24px; gap: 20px; }
  .approach-glass-heading h2 { font-size: 33px; max-width: 580px; }
  .approach-glass-heading .approach-glass-label { min-height: 28px; padding: 7px 22px; font-size: 12px; }
}
@media (max-width: 600px) {
  .approach-solutions--glass { padding: 0 24px 48px; }
  .approach-glass-heading { margin-inline: -24px; }
  .approach-glass-heading h2 { max-width: 100%; font-size: clamp(20px, 6.4vw, 30px); }
  .approach-solutions--glass .approach-row { background: linear-gradient(#f5f5f5d9, var(--homepage-surface, #f5f5f5) 40%); }
  .approach-solutions--glass .approach-product-controls button { font-size: 11px; }
}
