.stage[data-astro-cid-f7espo7c] {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--gutter);
  perspective: 1200px;
}

.logo[data-astro-cid-f7espo7c] {
  display: block;
  width: min(60vmin, 420px);
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: none;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  transform: rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));
  transform-style: preserve-3d;
  transition: transform .6s cubic-bezier(.2, .7, .3, 1);
  will-change: transform;
}

.logo[data-astro-cid-f7espo7c]:focus-visible {
  border-radius: 50%;
}

.logo[data-astro-cid-f7espo7c][data-tracking] {
  transition: transform .12s linear;
}

.coin[data-astro-cid-f7espo7c] {
  display: block;
  position: relative;
  transform-style: preserve-3d;
}

.face[data-astro-cid-f7espo7c] {
  display: block;
  backface-visibility: hidden;
}

.face[data-astro-cid-f7espo7c].back {
  position: absolute;
  inset: 0;
  transform: rotateY(180deg);
}

.face[data-astro-cid-f7espo7c] img {
  display: block;
  width: 100%;
  height: auto;
}

@keyframes spin {
  from {
    transform: rotate3d(var(--axis-x, 0), var(--axis-y, 1), 0, 0deg);
  }

  to {
    transform: rotate3d(var(--axis-x, 0), var(--axis-y, 1), 0, 720deg);
  }
}

.coin[data-astro-cid-f7espo7c][data-spinning] {
  animation: 2.4s cubic-bezier(.15, .85, .25, 1) spin;
}

.coin[data-astro-cid-f7espo7c][data-face="back"] {
  transform: rotateY(180deg);
}

@keyframes breathe {
  0%, 100% {
    transform: rotateX(7deg) rotateY(-12deg) rotateZ(-2deg);
  }

  25% {
    transform: rotateX(-6deg) rotateY(-4deg) rotateZ(1.5deg);
  }

  50% {
    transform: rotateX(-7deg) rotateY(12deg) rotateZ(2deg);
  }

  75% {
    transform: rotateX(6deg) rotateY(4deg) rotateZ(-1.5deg);
  }
}

@media (hover: none) {
  .logo[data-astro-cid-f7espo7c] {
    animation: 14s ease-in-out infinite breathe;
  }
}

@media (prefers-reduced-motion: reduce) {
  .logo[data-astro-cid-f7espo7c] {
    animation: none;
    transition: none;
    transform: none;
  }

  .coin[data-astro-cid-f7espo7c][data-spinning] {
    animation: none;
  }
}
.scene[data-astro-cid-iwpgssty] {
  position: fixed;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
  background: linear-gradient(to bottom, var(--sky-high) 0%, var(--sky-low) 62%);
}

.ground[data-astro-cid-iwpgssty] {
  position: absolute;
  inset: auto 0 0;
  height: 22%;
  background: var(--meadow);
}

.ridge[data-astro-cid-iwpgssty] {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 22%;
  width: 100%;
  height: clamp(3.5rem, 18.33vw, 18rem);
  margin-bottom: -1px;
  display: block;
}

.far[data-astro-cid-iwpgssty] {
  fill: var(--meadow-shade);
}

.near[data-astro-cid-iwpgssty] {
  fill: var(--meadow);
}

.cloud[data-astro-cid-iwpgssty] {
  position: absolute;
  left: 0;
  max-width: 60vw;
  transform: translateX(104vw);
  animation: linear infinite drift;
}

.cloud-a[data-astro-cid-iwpgssty] {
  top: 9%;
  width: 17rem;
  animation-duration: 90s;
  animation-delay: -24s;
}

.cloud-b[data-astro-cid-iwpgssty] {
  top: 19%;
  width: 11rem;
  animation-duration: 170s;
  animation-delay: -96s;
}

.cloud-c[data-astro-cid-iwpgssty] {
  top: 13%;
  width: 21rem;
  animation-duration: 130s;
  animation-delay: -140s;
}

.cloud[data-astro-cid-iwpgssty] svg[data-astro-cid-iwpgssty] {
  display: block;
  width: 100%;
  height: auto;
}

.puff[data-astro-cid-iwpgssty] {
  fill: var(--cloud);
}

.underside[data-astro-cid-iwpgssty] {
  fill: var(--cloud-shade);
}

@keyframes drift {
  from {
    transform: translateX(104vw);
  }

  to {
    transform: translateX(calc(-100% - 4vw));
  }
}

@media (prefers-reduced-motion: reduce) {
  .cloud[data-astro-cid-iwpgssty] {
    animation-play-state: paused;
  }
}
.gallery[data-astro-cid-rj65ajc3] {
  position: relative;
  z-index: 1;
  background: var(--surface);
  padding: clamp(4rem, 10vh, 6rem) var(--gutter) clamp(3rem, 8vh, 5rem);
}

.grid[data-astro-cid-rj65ajc3] {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  max-width: 72rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr));
  gap: clamp(.75rem, 2vw, 1.25rem);
}

.shot[data-astro-cid-rj65ajc3] {
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: 4px;
  background: color-mix(in srgb, var(--ink-day) 8%, transparent);
}

.shot[data-astro-cid-rj65ajc3] img, .shot[data-astro-cid-rj65ajc3] button {
  display: block;
  width: 100%;
  height: 100%;
}

.shot[data-astro-cid-rj65ajc3] button {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  cursor: zoom-in;
  -webkit-tap-highlight-color: transparent;
}

.shot[data-astro-cid-rj65ajc3] img {
  object-fit: cover;
}

.viewer[data-astro-cid-rj65ajc3] {
  width: 100vw;
  max-width: 100vw;
  height: 100dvh;
  max-height: 100dvh;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  overflow: hidden;
  place-items: center;
}

.viewer[data-astro-cid-rj65ajc3][open] {
  display: grid;
}

.viewer[data-astro-cid-rj65ajc3]::backdrop {
  background: #16110fe0;
}

.viewer[data-astro-cid-rj65ajc3] figure {
  grid-area: 1 / 1;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .75rem;
  max-width: min(92vw, 60rem);
}

.viewer[data-astro-cid-rj65ajc3] img {
  display: block;
  max-width: 100%;
  max-height: 78dvh;
  width: auto;
  height: auto;
  border-radius: 4px;
  cursor: zoom-out;
}

.viewer[data-astro-cid-rj65ajc3] figcaption {
  max-width: 44rem;
  color: var(--surface);
  font-size: .9375rem;
  line-height: 1.5;
  text-align: center;
  text-wrap: balance;
}

.viewer[data-astro-cid-rj65ajc3] .step {
  grid-area: 1 / 1;
  align-self: center;
  z-index: 1;
  width: 3rem;
  height: 3rem;
  margin: 0 .5rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #f4f0e9e0;
  color: #16110f;
  cursor: pointer;
  display: grid;
  place-items: center;
  -webkit-tap-highlight-color: transparent;
}

.viewer[data-astro-cid-rj65ajc3] .step svg {
  width: 1.1rem;
  height: 1.1rem;
}

.viewer[data-astro-cid-rj65ajc3] .back {
  justify-self: start;
}

.viewer[data-astro-cid-rj65ajc3] .forth {
  justify-self: end;
}
.pin[data-astro-cid-lcdefpme] {
  position: sticky;
  top: 0;
  height: 100dvh;
  padding-bottom: 24dvh;
  display: flex;
  z-index: 2;
  pointer-events: none;
}

.pin[data-astro-cid-lcdefpme] .stage, .jump[data-astro-cid-lcdefpme] {
  pointer-events: auto;
}

.jump[data-astro-cid-lcdefpme] {
  position: absolute;
  left: 0;
  right: 0;
  bottom: .75rem;
  width: fit-content;
  margin-inline: auto;
  padding: .4rem .75rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .3rem;
  color: var(--ink-soft);
  text-decoration: none;
  font-weight: 600;
  font-size: 1rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.chevron[data-astro-cid-lcdefpme] {
  width: 1.25rem;
  height: auto;
  display: block;
}

@media (prefers-reduced-motion: no-preference) {
  .chevron[data-astro-cid-lcdefpme] {
    animation: 2.6s ease-in-out infinite nudge;
  }
}

@keyframes nudge {
  0%, 62%, 100% {
    translate: 0;
  }

  76% {
    translate: 0 .3rem;
  }
}

@supports (animation-timeline: scroll()) {
  .pin[data-astro-cid-lcdefpme] .stage {
    animation: linear both shrink;
    animation-timeline: scroll(root);
    animation-range: 0 100dvh;
  }

  .jump[data-astro-cid-lcdefpme] {
    animation: linear both fade;
    animation-timeline: scroll(root);
    animation-range: 0 30dvh;
  }
}

@keyframes shrink {
  0% {
    scale: 1;
    translate: 0;
    pointer-events: auto;
  }

  20% {
    pointer-events: auto;
  }

  21% {
    pointer-events: none;
  }

  55% {
    scale: .32;
    translate: 0 -30dvh;
  }

  100% {
    scale: .3;
    translate: 0 calc(-50dvh - 8rem);
    pointer-events: none;
  }
}

@keyframes fade {
  to {
    opacity: 0;
  }
}

@supports not (animation-timeline: scroll()) {
  .pin[data-astro-cid-lcdefpme] {
    position: static;
  }
}

@media (prefers-reduced-motion: reduce) {
  .pin[data-astro-cid-lcdefpme] .stage, .jump[data-astro-cid-lcdefpme] {
    animation: none;
  }

  .pin[data-astro-cid-lcdefpme] {
    position: static;
  }
}
