/* Amen presentation: real app capture and slowly moving stained-glass light. */
.site-header .header-cta.header-app-link {
  width: 50px;
  min-width: 50px;
  height: 50px;
  padding: 4px;
  justify-content: center;
  background: transparent;
  border: 1px solid #c8ab756b;
  border-radius: 13px;
}
.header-app-link img { width: 40px; height: 40px; border-radius: 9px; }
.site-header.hero-action-visible .header-app-link { visibility: hidden; pointer-events: none; }
.site-header .header-app-link:hover { background: #d5b17015; border-color: #d5b170; }
.hero.hero-sanctuary {
  isolation: isolate;
  background: #111b26;
  padding-top: 42px;
  row-gap: 24px;
}
.sanctuary-scene {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: -1;
  pointer-events: none;
}
.sanctuary-scene::before {
  content: "";
  position: absolute;
  inset: 0 0 0 24%;
  background: url('/free-visuals/1f37aeda6490f0c48733f704360498338b788bdbd5acbeb0a72ff78dca0b8f15.webp') center / cover no-repeat;
  opacity: .65;
  filter: saturate(.7);
}
.sanctuary-scene::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  background: linear-gradient(90deg,#111b26 0%,#111b26fa 29%,#111b26b8 51%,#111b2633 80%,#111b263d),linear-gradient(0deg,#111b26 0%,transparent 28%,#111b2618 100%);
}
.sanctuary-beam {
  position: absolute;
  z-index: 2;
  width: 85%;
  height: 160%;
  left: 24%;
  top: -35%;
  background:
    radial-gradient(ellipse 32% 18% at 62% 30%, #ffe7a378, transparent 80%),
    linear-gradient(116deg, transparent 26%, #fce8b133 31%, #ffdfa78c 35%, #e6b56752 41%, transparent 48%, transparent 55%, #fce8b159 59%, transparent 66%);
  filter: blur(9px);
  transform-origin: 65% 15%;
  animation: sanctuary-light 11s ease-in-out -3s infinite alternate;
  animation-play-state: paused;
}
.sanctuary-shadow {
  position: absolute;
  z-index: 1;
  inset: -15% -12% -20% 28%;
  background: linear-gradient(116deg, transparent 24%, #030a13b3 32%, transparent 40%, transparent 51%, #030a1399 56%, transparent 65%);
  filter: blur(13px);
  animation: sanctuary-shadow 13s ease-in-out -4s infinite alternate;
  animation-play-state: paused;
}
.hero-motion-on .sanctuary-beam,
.hero-motion-on .sanctuary-shadow {
  animation-play-state: running;
}
@keyframes sanctuary-light {
  from { transform: translate3d(-12%,-2%,0) rotate(-9deg); opacity: .48; }
  to { transform: translate3d(10%,3%,0) rotate(3deg); opacity: .96; }
}
@keyframes sanctuary-shadow {
  from { transform: translate3d(8%,0,0) rotate(2deg); opacity: .35; }
  to { transform: translate3d(-10%,2%,0) rotate(-5deg); opacity: .82; }
}
.hero-sanctuary .hero-copy { padding-bottom: 20px; }
.hero-sanctuary .hero-app-visual { min-height: 605px; padding-top: 0; }
.hero-sanctuary .hero-app-visual .arch { display: none; }
.hero-sanctuary .hero-app-visual figure > a { width: min(100%,262px); border-color: #56606b; box-shadow: 0 24px 58px #02080dc0,0 0 65px #edbe7215; }
.hero-sanctuary .hero-app-visual figcaption { max-width: 350px; font-size: 11px; color: #d5d9db; }
.hero-sanctuary .hero-app-visual figcaption strong { color: #edc98f; margin-bottom: 3px; }
.hero-actions .button.amen-browser-action { gap: 18px; padding-block: 12px; }
.amen-browser-action img { width: 34px; height: 34px; flex: 0 0 34px; border-radius: 8px; }
.hero-sanctuary .hero-bottom { background: transparent; align-items: center; gap: 20px; padding-block: 14px; }
.hero-motion-toggle {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  padding: 8px 10px;
  background: #111b2670;
  border: 1px solid #c9ad732e;
  color: #c8c1b4;
  border-radius: 5px;
  font: 11px/1.4 var(--sans);
  cursor: pointer;
  white-space: nowrap;
}
.hero-motion-toggle[hidden] { display: none; }
.hero-motion-toggle svg { width: 12px; height: 12px; }
.hero-motion-toggle:hover { color: #f1d5a2; border-color: #c9ad7366; }
.hero-motion-toggle:focus-visible { outline-color: #f1d5a2; }
.hero-motion-toggle span { max-width: none!important; text-align: left!important; }
.hero-sanctuary + .plans-section { padding-top: 62px; }
@media(max-width:1100px) and (min-width:761px) {
  .hero-sanctuary .hero-app-visual figure > a { width: 242px; }
  .hero-sanctuary .hero-app-visual { min-height: 580px; padding-inline: 10px; }
  .hero-sanctuary .hero-bottom { gap: 12px; font-size: 10px; letter-spacing: .8px; }
}
@media(max-width:760px) {
  .site-header .header-cta.header-app-link { width: 46px; min-width: 46px; height: 46px; padding: 4px; }
  .header-app-link img { width: 36px; height: 36px; }
  .hero.hero-sanctuary { padding-top: 30px; }
  .sanctuary-scene::before { inset: 28% -45% 0 -35%; background-position: center bottom; opacity: .56; }
  .sanctuary-scene::after { background: linear-gradient(180deg,#111b26 0%,#111b26eb 32%,#111b2660 64%,#111b26c9 89%,#111b26 100%); }
  .sanctuary-beam { top: 27%; left: -40%; width: 180%; height: 85%; filter: blur(7px); }
  .sanctuary-shadow { inset: 25% -50% -10% -40%; filter: blur(9px); }
  .hero-sanctuary .hero-copy { padding-bottom: 0; }
  .hero-sanctuary .hero-app-visual { min-height: 0; padding-top: 4px; padding-bottom: 8px; }
  .hero-sanctuary .hero-app-visual figure > a { width: min(100%,250px); }
  .hero-actions .button.amen-browser-action { padding: 12px 16px; gap: 12px; text-align: left; }
  .hero-sanctuary .hero-bottom { display: grid; grid-template-columns: repeat(3,1fr); font-size: 9px; letter-spacing: .6px; gap: 12px; }
  .hero-motion-toggle { grid-column: 1/-1; justify-self: center; }
  .hero-sanctuary + .plans-section { padding-top: 42px; }
}
@media(prefers-reduced-motion:reduce) {
  .hero-motion-on .sanctuary-beam,
  .hero-motion-on .sanctuary-shadow { animation-play-state: paused; }
  .hero-motion-toggle { display: none; }
}
