.sr {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.garden {
  position: relative;
  isolation: isolate;
  overflow-x: clip;
  padding: clamp(30px, 5vw, 70px) 0 clamp(170px, 20vw, 290px);
}
.garden-vines,
.garden-glow {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  z-index: 0;
  pointer-events: none;
}
.garden-glow {
  filter: blur(6px);
}
.garden .wrap {
  position: relative;
  z-index: 2;
}
.garden-crown,
.garden-root {
  position: absolute;
  z-index: 1;
  pointer-events: none;
}
.garden-crown {
  right: max(-30px, calc(50% - 700px));
  top: clamp(-300px, -19vw, -110px);
  width: min(780px, 60vw);
}
.garden-root {
  right: max(-20px, calc(50% - 660px));
  bottom: calc(-1 * clamp(40px, 8vw, 96px));
  width: min(820px, 66vw);
}
.orn {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}
.garden-title {
  width: fit-content;
  margin: 0 0 clamp(80px, 9vw, 140px);
  padding-right: 0.1em;
  font: italic 400 clamp(3.4rem, 8.6vw, 7.4rem)/0.92 var(--serif);
  letter-spacing: -0.01em;
  background: var(--grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 0 26px rgb(255 190 80/0.18));
}
.garden-list {
  display: grid;
  gap: clamp(96px, 11vw, 170px);
  margin: 0;
  padding: 0;
  list-style: none;
}
.bloom {
  --d: clamp(200px, 21vw, 280px);
  display: grid;
  grid-template-columns: var(--d) minmax(0, 33rem);
  gap: clamp(26px, 4vw, 60px);
  align-items: center;
  transition:
    opacity 0.9s var(--ease),
    filter 0.9s var(--ease);
}
.bloom:nth-child(even) {
  grid-template-columns: minmax(0, 33rem) var(--d);
  justify-content: end;
}
.bloom:nth-child(even) .bloom-disc {
  order: 2;
}
.garden.live .bloom:not(.in) {
  opacity: 0;
  filter: blur(6px);
}
.bloom-disc {
  position: relative;
  width: var(--d);
  aspect-ratio: 1;
}
.bloom-disc::before {
  content: "";
  position: absolute;
  inset: -45%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(
    closest-side,
    color-mix(in oklab, var(--c) 13%, transparent),
    color-mix(in oklab, var(--c) 5%, transparent) 55%,
    transparent
  );
  pointer-events: none;
}
.bloom-art {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}
.bloom-num {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font: italic 400 calc(var(--d) * 0.22)/1 var(--serif);
  color: var(--c);
  text-shadow:
    0 0 18px color-mix(in oklab, var(--c) 70%, transparent),
    0 0 44px color-mix(in oklab, var(--c) 40%, transparent);
}
.bloom-text {
  --accent: var(--c);
  --accent-2: var(--c);
}
.bloom-area {
  font: 500 11px/1.4 var(--mono);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--c);
}
.bloom-glyph {
  display: block;
  margin: 12px 0 2px;
  font-size: 1.32rem;
  color: var(--c);
  filter: drop-shadow(0 0 10px color-mix(in oklab, var(--c) 60%, transparent));
}
.bloom-glyph svg {
  max-width: none;
}
.bloom h3 {
  margin: 6px 0 14px;
  font: 400 clamp(2rem, 3.3vw, 2.8rem)/1.02 var(--serif);
  color: #fff;
}
.bloom p {
  margin: 0;
  font-size: 1rem;
  line-height: 1.68;
  color: var(--soft);
}
.bloom .links {
  margin-top: 22px;
}
.garden .vg .stroke {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.garden-glow .gw {
  stroke-width: 7;
  stroke-opacity: 0.5;
}
.garden-glow .vg.hot .gw {
  stroke-opacity: 0.95;
}
.garden-glow .sock-glow {
  fill-opacity: 0.7;
}
.garden-glow .tip-glow {
  fill-opacity: 0.85;
}
.garden-vines .v-mid {
  stroke-width: 3;
  stroke-opacity: 0.26;
}
.garden-vines .v-core {
  stroke-width: 1.5;
  stroke-opacity: 0.95;
}
.garden-vines .v-white {
  stroke: #fff;
  stroke-width: 0.6;
  stroke-opacity: 0.6;
}
.garden-vines .vg.hot .v-mid {
  stroke-opacity: 0.5;
}
.garden-vines .vg.hot .v-white {
  stroke-opacity: 0.95;
}
.garden .vg.wait .stroke {
  stroke-dasharray: 1 1;
  stroke-dashoffset: 1;
}
.garden .vg.in .stroke {
  stroke-dasharray: 1 1;
  stroke-dashoffset: 0;
  transition: stroke-dashoffset 1.9s var(--ease);
}
.garden-vines .sock {
  fill: var(--bg);
  stroke-width: 1.3;
}
.garden-vines .sock-eye,
.garden-vines .tip-eye {
  fill: #fff;
}
.garden-vines .tip-hl {
  fill: none;
  stroke: #fff;
  stroke-width: 0.55;
  stroke-opacity: 0.8;
  stroke-linecap: round;
}
.garden .vg .tip,
.garden .vg .tip-glow {
  transition: opacity 0.6s 1.4s;
}
.garden .vg.wait .tip,
.garden .vg.wait .tip-glow,
.garden-vines .vg.wait .deco {
  opacity: 0;
}
.garden-vines .deco {
  transition: opacity 0.8s 1.2s;
}
.garden-vines .sprout {
  fill: currentColor;
  opacity: 0.88;
}
.garden-vines .sprout .vein {
  fill: none;
  stroke: #fff;
  stroke-opacity: 0.4;
  stroke-width: 0.8;
  stroke-linecap: round;
  vector-effect: non-scaling-stroke;
}
.garden-vines .spore {
  opacity: 0.8;
}
.garden-vines text {
  font: italic 400 17px var(--serif);
  fill: var(--muted);
  letter-spacing: 0.01em;
  transition: fill 0.4s;
}
.garden-vines .vg.hot text {
  fill: #fff;
}
.garden-vines .pulse {
  fill: none;
  stroke-dashoffset: 0.07;
  opacity: 0;
}
.garden-vines .p-halo {
  stroke-width: 13;
  stroke-opacity: 0.2;
  stroke-linecap: round;
  stroke-dasharray: 0.003 1.997;
  stroke-dashoffset: 0.003;
}
.garden-vines .p-tail {
  stroke-width: 4.5;
  stroke-opacity: 0.4;
  stroke-linecap: round;
  stroke-dasharray: 0.07 1.93;
}
.garden-vines .p-mid {
  stroke-width: 2.6;
  stroke-opacity: 0.85;
  stroke-dasharray: 0 0.04 0.03 1.93;
}
.garden-vines .p-core {
  stroke: #fff;
  stroke-width: 1.8;
  stroke-dasharray: 0 0.058 0.012 1.93;
}
@media (prefers-reduced-motion: no-preference) {
  .bloom-art .spin-a {
    animation: gspin 110s linear infinite;
  }
  .bloom-art .spin-b {
    animation: gspin 170s linear infinite reverse;
  }
  .orn .rose {
    transform-box: fill-box;
    transform-origin: center;
    animation: gspin 60s linear infinite;
  }
  .orn .twinkle {
    transform-box: fill-box;
    transform-origin: center;
    animation: gtwinkle 3.4s ease-in-out infinite;
  }
  .orn .twinkle:nth-of-type(2n) {
    animation-delay: -1.3s;
  }
  .orn .twinkle:nth-of-type(3n) {
    animation-delay: -2.2s;
  }
  .garden-vines .spore {
    transform-box: fill-box;
    transform-origin: center;
    animation: gtwinkle 3.2s ease-in-out infinite;
  }
  .garden-vines .vg.in .pulse.first {
    animation: gchase1 7s cubic-bezier(0.45, 0, 0.55, 1) infinite;
  }
  .garden-vines .vg.in .pulse.second {
    animation: gchase2 7s cubic-bezier(0.45, 0, 0.55, 1) infinite;
  }
  .garden-vines .vg.in .pulse.flow {
    animation: gflow 6s linear infinite;
  }
  .garden-vines .vg.in .p-halo.first {
    animation-name: gchase1h;
  }
  .garden-vines .vg.in .p-halo.second {
    animation-name: gchase2h;
  }
  .garden-vines .vg.in .p-halo.flow {
    animation-name: gflowh;
  }
}
@keyframes gspin {
  to {
    rotate: 360deg;
  }
}
@keyframes gtwinkle {
  50% {
    scale: 0.45;
    opacity: 0.4;
  }
}
@keyframes gchase1 {
  0% {
    stroke-dashoffset: 0.07;
    opacity: 0;
  }
  4% {
    opacity: 1;
  }
  38% {
    stroke-dashoffset: -1;
    opacity: 1;
  }
  43%,
  100% {
    stroke-dashoffset: -1;
    opacity: 0;
  }
}
@keyframes gchase2 {
  0%,
  41% {
    stroke-dashoffset: 0.07;
    opacity: 0;
  }
  45% {
    opacity: 1;
  }
  79% {
    stroke-dashoffset: -1;
    opacity: 1;
  }
  84%,
  100% {
    stroke-dashoffset: -1;
    opacity: 0;
  }
}
@keyframes gflow {
  0% {
    stroke-dashoffset: 0.07;
    opacity: 0;
  }
  8% {
    opacity: 1;
  }
  70% {
    stroke-dashoffset: -1;
    opacity: 1;
  }
  76%,
  100% {
    stroke-dashoffset: -1;
    opacity: 0;
  }
}
@keyframes gchase1h {
  0% {
    stroke-dashoffset: 0.003;
    opacity: 0;
  }
  4% {
    opacity: 1;
  }
  38% {
    stroke-dashoffset: -1.067;
    opacity: 1;
  }
  43%,
  100% {
    stroke-dashoffset: -1.067;
    opacity: 0;
  }
}
@keyframes gchase2h {
  0%,
  41% {
    stroke-dashoffset: 0.003;
    opacity: 0;
  }
  45% {
    opacity: 1;
  }
  79% {
    stroke-dashoffset: -1.067;
    opacity: 1;
  }
  84%,
  100% {
    stroke-dashoffset: -1.067;
    opacity: 0;
  }
}
@keyframes gflowh {
  0% {
    stroke-dashoffset: 0.003;
    opacity: 0;
  }
  8% {
    opacity: 1;
  }
  70% {
    stroke-dashoffset: -1.067;
    opacity: 1;
  }
  76%,
  100% {
    stroke-dashoffset: -1.067;
    opacity: 0;
  }
}
@media (max-width: 1000px) {
  .bloom {
    --d: clamp(160px, 20vw, 200px);
  }
}
@media (max-width: 760px) {
  .garden {
    padding-bottom: clamp(150px, 42vw, 220px);
    padding-top: calc(33vw + 20px);
  }
  .garden-crown {
    right: -8px;
    top: 0;
    width: 70vw;
  }
  .garden-root {
    right: 0;
    width: 94vw;
  }
  .garden-list {
    gap: 88px;
  }
  .bloom,
  .bloom:nth-child(even) {
    --d: 150px;
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: 18px;
  }
  .bloom:nth-child(even) .bloom-disc {
    order: 0;
  }
  .bloom-text {
    justify-self: stretch;
    padding: 0 6px;
  }
  .garden-vines text,
  .bloom-art .lf-o {
    display: none;
  }
  .garden-glow {
    filter: blur(4px);
  }
}
.sun-rise {
  transition: transform 0.32s cubic-bezier(0.2, 0.9, 0.3, 1.15);
  will-change: transform;
}
.sun-cat {
  --cat: #d9a31c;
  --cat-deep: #2a1d03;
}
.sun-cat .sc-face {
  fill: var(--cat);
  fill-opacity: 0.2;
}
.sun-cat .sc-leaf,
.sun-cat .sc-nose {
  fill: var(--cat);
}
.sun-cat .sc-vein {
  fill: none;
  stroke: #fff4c8;
  stroke-opacity: 0.45;
  stroke-width: 0.45;
  stroke-linecap: round;
}
.sun-cat .sc-eye,
.sun-cat .sc-mark {
  fill: none;
  stroke: var(--cat);
  stroke-width: 2.4;
  stroke-linecap: round;
}
.sun-cat .sc-eye {
  fill: var(--cat-deep);
  fill-opacity: 0.55;
}
