/* One photographic scene, with its geometry synchronized in hero.js. */
.sh-main-hero.sh-main-hero {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate;
  /* Stackable's transition: all must not interpolate responsive geometry. */
  transition: none !important;
  display: flex;
  align-items: center;
  height: auto !important;
  min-height: max(620px, 44vw) !important;
  max-height: none !important;
  padding-top: 70px !important;
  padding-bottom: 70px !important;
  background-size: cover !important;
  background-position: center bottom !important;
}
.sh-main-hero.sh-main-hero.sh-hero-ready { background-image: none !important; }
.sh-main-hero.sh-main-hero > .stk-row { position: relative; z-index: 1; }
.sh-main-hero.sh-main-hero .stk-20a795f-inner-blocks { max-width: 46%; }
.sh-main-hero.sh-main-hero > .sh-hero-scene {
  position: absolute !important;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  background-repeat: no-repeat;
}
.sh-ball-only-stage { position: absolute; z-index: 1; pointer-events: none; }
.sh-ball-only-stage canvas {
  display: block;
  width: 100%;
  height: 100%;
  filter: blur(var(--sh-ball-softness, .4px)) contrast(.96) saturate(.94);
}
.sh-ball-cast-shadow,
.sh-ball-contact-shadow {
  position: absolute;
  left: var(--sh-ball-x);
  top: var(--sh-ball-ground);
  pointer-events: none;
  /* Ordinary alpha compositing avoids the rotated blend-layer rectangle. */
  mix-blend-mode: normal;
  border-radius: 50%;
  background-repeat: no-repeat;
}
/* Window light falls from upper left; the penumbra extends to the right. */
.sh-ball-cast-shadow {
  width: calc(var(--sh-ball-size) * .82);
  height: calc(var(--sh-ball-size) * .16);
  transform: translate(-30%, -35%);
  background-image: radial-gradient(ellipse closest-side at 38% 50%,
    rgba(68, 53, 34, .24) 0%, rgba(68, 53, 34, .15) 28%,
    rgba(68, 53, 34, .05) 60%, rgba(68, 53, 34, 0) 100%);
}
.sh-ball-contact-shadow {
  width: calc(var(--sh-ball-size) * .3);
  height: calc(var(--sh-ball-size) * .045);
  transform: translate(-50%, -45%);
  background-image: radial-gradient(ellipse closest-side,
    rgba(57, 44, 29, .38) 0%, rgba(57, 44, 29, .22) 25%,
    rgba(57, 44, 29, .07) 55%, rgba(57, 44, 29, 0) 100%);
}
#shBallMount { display: none; }

@media (max-width: 1023px) {
  .sh-main-hero.sh-main-hero {
    --sh-scene-height: clamp(300px, 62vw, 520px);
    background-color: #f1eee6 !important;
    min-height: 0 !important;
    padding: 48px 24px calc(var(--sh-scene-height) + 40px) !important;
  }
  .sh-main-hero.sh-main-hero .stk-20a795f-inner-blocks {
    max-width: 636px;
    margin-inline: auto;
    text-align: center;
  }
  .sh-main-hero.sh-main-hero .stk-button-group { justify-content: center; }
  .sh-main-hero.sh-main-hero .stk-aa0ab6c { margin-inline: auto !important; }
  .sh-main-hero.sh-main-hero > .sh-hero-scene { top: auto; height: var(--sh-scene-height); }
}
