/* The new pyramid is isolated from the existing homepage layout and styles. */
.scene.home-pyramid{position:relative;min-width:0;isolation:isolate;perspective:none}
.home-pyramid .pyramid-halo{position:absolute;inset:5% 0;z-index:-1;border-radius:50%;background:radial-gradient(ellipse at center,#7c3bff20,transparent 63%);pointer-events:none}
.home-pyramid .pyramid-art{display:block;width:100%;max-width:480px;height:auto;flex-shrink:1;overflow:visible}
.home-pyramid .pyramid-track{animation:homePyramidTrack 44s linear infinite}
.home-pyramid .pyramid-track-fast{animation-duration:18s;animation-direction:reverse}
.home-pyramid .pyramid-heart-orbit{transform-origin:center;transform-box:fill-box;animation:homePyramidOrbit 24s linear infinite}
.home-pyramid .pyramid-heart{animation:homePyramidHeart 5s ease-in-out infinite}
.home-pyramid .pyramid-motes{animation:homePyramidMotes 7s ease-in-out infinite}
.home-pyramid .pyramid-energy{stroke-dasharray:24 800;animation:homePyramidTrack 12s linear infinite}
.home-pyramid.pyramid-paused .pyramid-art *{animation-play-state:paused}
@keyframes homePyramidTrack{to{stroke-dashoffset:-904}}
@keyframes homePyramidOrbit{to{transform:rotate(360deg)}}
@keyframes homePyramidHeart{0%,100%{opacity:.8}50%{opacity:1}}
@keyframes homePyramidMotes{0%,100%{opacity:.3}50%{opacity:.85}}
@media(max-width:900px){.home-pyramid .pyramid-art{max-width:360px}}
@media(prefers-reduced-motion:reduce){.home-pyramid .pyramid-art *{animation:none!important}}

/* Give the pyramid a little breathing room below the mobile header. */
@media(max-width:760px){.home-pyramid .pyramid-art,.home-pyramid .pyramid-halo{transform:translateY(24px)}}
