/* Each published garden has its own entrance and interaction language. */
.signature .hero{overflow:hidden;overflow:clip;touch-action:pan-y}
.signature .entrance-panel{display:none}
.intro-active .signature .entrance,.intro-active .signature .entrance-skip{animation-duration:4.4s}
.intro-active .signature.bamboo .entrance,.intro-active .signature.bamboo .entrance-skip{animation-duration:3.8s}
.intro-active .signature.winter .entrance,.intro-active .signature.winter .entrance-skip{animation-duration:3.9s}
.signature .entrance:before,.signature .entrance:after{content:'';position:absolute;inset:0;pointer-events:none;mask:none;-webkit-mask:none}
.signature .entrance:after{display:none}
.signature.rain .entrance:before{background:#071c20;animation:rain-curtain 2s ease both}
.signature.rain .entrance-mark{color:#e7e4cf;animation:signature-stamp 1.15s ease both}
.signature.rain .entrance-mark>span:first-child{font-size:40px;letter-spacing:.18em}
.signature.rain .entrance-skip{background:#0a252bd9;color:#f0e6cd;border-color:#f0e6cd55}
.signature.bamboo .entrance:before{background:#031219;animation:night-curtain 2.2s ease both}
.signature.bamboo .entrance-mark{animation:signature-stamp 1.1s ease both}
.signature.winter .entrance:before{background:#f6f0e5;animation:snow-curtain 2.6s ease both}
.signature.winter .entrance-mark{animation:signature-stamp 1.05s ease both}
.signature-opening{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.signature-drop{position:absolute;left:var(--impact-x,50%);top:var(--impact-y,54%);width:30px;height:48px;transform:translate(-50%,-50%);border-radius:65% 65% 55% 55%/83% 83% 35% 35%;border:1px solid #edf1dca6;background:radial-gradient(ellipse at 28% 32%,#fff8dd 0%,#f4f2df8c 10%,transparent 25%),linear-gradient(105deg,#a4c3b328,#dcebd789 35%,#688f864a 66%,#d7e4d7bd);box-shadow:inset -4px -4px 8px #eaf0d77a,0 0 27px #dcebd742;animation:signature-drop-fall 1.28s cubic-bezier(.42,0,.8,.8) both}
.signature-ring{position:absolute;left:var(--impact-x,50%);top:var(--impact-y,54%);width:2px;height:1px;transform:translate(-50%,-50%);border:1px solid #e7f0d5bb;box-shadow:0 0 16px #cfebdb47;border-radius:50%;opacity:0;animation:signature-ripple 2.5s cubic-bezier(.15,.6,.25,1) 1.12s both}
.ring-two{animation-delay:1.26s;border-color:#d9eadb8f}.ring-three{animation-delay:1.43s;border-color:#e5edcf64}
.signature-moonbeam{position:absolute;inset:-40%;background:linear-gradient(113deg,transparent 37%,#bfdfec4a 44%,#ddf1eea3 48%,#b4d6e64a 53%,transparent 61%);mix-blend-mode:screen;filter:blur(12px);animation:signature-moon-sweep 3.6s cubic-bezier(.16,.65,.2,1) both}
.signature-fog{position:absolute;top:-20%;bottom:-20%;width:110%;filter:blur(22px);background:radial-gradient(ellipse at center,#86afba91,transparent 68%);animation:signature-fog-left 3.7s cubic-bezier(.2,.6,.2,1) both}
.fog-left{left:-35%}.fog-right{right:-35%;animation-name:signature-fog-right;animation-delay:.1s}
.signature-snowveil{position:absolute;inset:-30%;background:linear-gradient(112deg,transparent 19%,#fffdf4e6 41%,#f8f7e985 57%,transparent 76%);filter:blur(13px);animation:signature-snow-pass 3.7s cubic-bezier(.2,.6,.2,1) both}
.signature-snowwind{position:absolute;inset:0;background-image:radial-gradient(circle,#fffdf9c9 0 2px,transparent 4px),radial-gradient(circle,#fffdf9a6 0 3px,transparent 6px),radial-gradient(circle,#fffdf9db 0 1px,transparent 3px);background-size:123px 157px,271px 213px,187px 131px;animation:signature-blizzard 3.8s ease-out both}
.signature-controls{display:flex;flex-direction:column;gap:3px;align-items:flex-end;flex:none}
.signature-replay{font:inherit;font-size:9px;letter-spacing:.02em;color:inherit;background:transparent;border:0;border-bottom:1px solid currentColor;padding:6px 0;min-height:27px;opacity:.8}
.signature-replay:hover{opacity:1}.signature-replay:disabled{opacity:.4;cursor:default}
.signature.rain .signature-replay{background:#f7f1e5ba;padding:6px 8px;border-color:#46624955}
.signature.bamboo .scene-light{animation:signature-moonlight 8.5s ease-in-out infinite alternate}
.signature.bamboo .scene-mist{animation-duration:10s;background:radial-gradient(ellipse,#a2c6d075,transparent 67%)}
.signature.winter .scene-branch{animation-duration:6s}
.intro-enabled:not(.intro-skipped):not(.motion-paused) .signature .scene-camera{animation:signature-camera 4.3s cubic-bezier(.15,.65,.2,1) both}
.intro-enabled:not(.intro-skipped):not(.motion-paused) .signature.bamboo .scene-camera{animation-name:signature-night-camera;animation-duration:3.8s}
.intro-enabled:not(.intro-skipped):not(.motion-paused) .signature.winter .scene-camera{animation-name:signature-snow-camera;animation-duration:3.9s}
.intro-enabled:not(.intro-skipped):not(.motion-paused) .signature .scene-foreground{animation:signature-branch-pass 4.2s cubic-bezier(.13,.7,.2,1) both}
.intro-enabled:not(.intro-skipped):not(.motion-paused) .signature.bamboo .scene-foreground{animation-name:signature-bamboo-pass;animation-duration:3.8s}
.intro-enabled:not(.intro-skipped):not(.motion-paused) .signature.winter .scene-foreground{animation-name:signature-plum-pass;animation-duration:3.9s}
.intro-enabled:not(.intro-skipped):not(.motion-paused) .signature .hero .glyph{animation-delay:calc(1.5s + var(--letter) * .035s);animation-duration:1.3s}
.intro-enabled:not(.intro-skipped):not(.motion-paused) .signature.bamboo .hero .glyph{animation-delay:calc(1.13s + var(--letter) * .04s)}
.intro-enabled:not(.intro-skipped):not(.motion-paused) .signature.winter .hero .glyph{animation-delay:calc(1.23s + var(--letter) * .035s)}
.intro-enabled:not(.intro-skipped) .signature .hero-copy>.hero-enter:first-child{animation-delay:1.45s}
.intro-enabled:not(.intro-skipped) .signature .hero-description{animation-delay:2s}
.intro-enabled:not(.intro-skipped) .signature .hero-actions{animation-delay:2.2s}
.intro-active:not(.signature-ready) .signature .entrance,.intro-active:not(.signature-ready) .signature .entrance *,.intro-active:not(.signature-ready) .signature .entrance:before,.intro-active:not(.signature-ready) .signature .entrance-skip,.intro-active:not(.signature-ready) .signature .scene-camera,.intro-active:not(.signature-ready) .signature .scene-foreground,.intro-active:not(.signature-ready) .signature .hero-enter,.intro-active:not(.signature-ready) .signature .glyph{animation-play-state:paused!important}
.motion-paused .signature .scene-camera,.motion-paused .signature .scene-foreground{animation:none!important;transform:none;filter:none}
@keyframes rain-curtain{0%,33%{opacity:1}87%,100%{opacity:0}}
@keyframes night-curtain{0%,15%{opacity:1}88%,100%{opacity:0}}
@keyframes snow-curtain{0%,10%{opacity:1}82%,100%{opacity:0}}
@keyframes signature-stamp{0%,23%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-15px);filter:blur(8px)}}
@keyframes signature-drop-fall{0%,8%{transform:translate(-50%,-65vh) scale(.55,.75);opacity:0}16%{opacity:1}62%{transform:translate(-50%,-19vh) scale(.7,1.28)}87%{transform:translate(-50%,-50%) scale(.8,1.15);opacity:1}100%{transform:translate(-50%,-50%) scale(2.1,.08);opacity:0}}
@keyframes signature-ripple{0%{width:2px;height:1px;opacity:0}13%{opacity:.9}100%{width:245vmax;height:135vmax;opacity:0}}
@keyframes signature-moon-sweep{0%,12%{opacity:0;transform:translateX(65%) rotate(-7deg)}39%{opacity:.95}100%{opacity:0;transform:translateX(-35%) rotate(7deg)}}
@keyframes signature-fog-left{0%,12%{opacity:.9;transform:translateX(15%) scale(1.2)}100%{opacity:0;transform:translateX(-70%) scale(1.35)}}
@keyframes signature-fog-right{0%,12%{opacity:.8;transform:translateX(-15%) scale(1.2)}100%{opacity:0;transform:translateX(70%) scale(1.4)}}
@keyframes signature-snow-pass{0%{opacity:1;transform:translateX(-38%) rotate(-4deg)}100%{opacity:0;transform:translateX(50%) rotate(4deg)}}
@keyframes signature-blizzard{0%{opacity:0;background-position:-280px -40px,-330px -10px,-190px -30px}14%,40%{opacity:.85}100%{opacity:0;background-position:510px 240px,690px 290px,490px 190px}}
@keyframes signature-camera{0%,16%{transform:scale(1.38);filter:brightness(.8)}100%{transform:scale(1);filter:brightness(1)}}
@keyframes signature-night-camera{0%,12%{transform:scale(1.4) translateX(3%);filter:brightness(.5)}100%{transform:scale(1) translateX(0);filter:brightness(1)}}
@keyframes signature-snow-camera{0%{transform:scale(1.25) translateY(2%)}100%{transform:scale(1) translateY(0)}}
@keyframes signature-branch-pass{0%{transform:scale(2.1) translate(-15%,8%) rotate(-7deg);opacity:0}18%{opacity:1}100%{transform:scale(1) translate(0,0) rotate(0);opacity:1}}
@keyframes signature-bamboo-pass{0%{transform:scale(2.4) translate(35%,6%) rotate(9deg);opacity:0}16%{opacity:1}100%{transform:scale(1) translate(0,0) rotate(0);opacity:1}}
@keyframes signature-plum-pass{0%{transform:scale(1.8) translate(-20%,10%) rotate(-9deg);opacity:0}20%{opacity:1}100%{transform:scale(1) translate(0,0) rotate(0);opacity:1}}
@keyframes signature-moonlight{0%{transform:rotate(-10deg) translateX(-3%);opacity:.2}45%{opacity:.58}100%{transform:rotate(7deg) translateX(5%);opacity:.3}}
@media(max-width:700px){.signature-drop{width:23px;height:39px}.signature-controls{gap:2px}.signature-replay{font-size:8px;min-height:26px}.signature.bamboo .scene-light{opacity:.3}.signature .entrance-skip{right:25px;bottom:25px}}
@media(prefers-reduced-motion:reduce){.signature-opening,.signature .entrance,.signature .entrance-skip{display:none!important}.signature .scene-camera,.signature .scene-foreground{animation:none!important;transform:none!important;filter:none!important}}
@media(min-width:701px) and (max-height:820px){.signature .hero{min-height:720px}}
.signature.winter .signature-replay{background:#f7f1e5de;padding:6px 8px;border-color:#46624955}
.signature.bamboo .signature-replay{text-shadow:0 1px 6px #031820}
.signature-ready:not(.intro-active) .signature .scene-camera,.signature-ready:not(.intro-active) .signature .scene-foreground,.signature-ready:not(.intro-active) .signature .hero-enter,.signature-ready:not(.intro-active) .signature .glyph{animation:none!important;opacity:1;transform:none;filter:none}
@media(max-width:700px){.signature-replay{font-size:9px;min-height:28px}}
