@font-face{font-family:faracohand;src:url(fonts/FaracoHand.woff2) format("woff2");font-display:swap}
@font-face{font-family:faracohand Fallback;src:local(Arial);ascent-override:84.56%;descent-override:48.93%;line-gap-override:12.29%;size-adjust:81.42%}
:root{--font-faraco:"faracohand","faracohand Fallback",cursive;--c-canvas:#fff;--c-accent:#2f5fc4;--color-canvas:var(--c-canvas);--color-accent:var(--c-accent)}
*,:before,:after{box-sizing:border-box;margin:0;padding:0;border:0 solid}
html,body{height:100%}
body{background:#0b0b0b;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--font-faraco)}
img,svg,canvas{display:block;vertical-align:middle}
img{max-width:100%;height:auto}
button{font:inherit;color:inherit;background:transparent}
.font-faraco{font-family:var(--font-faraco)}
.leaf-cursor{pointer-events:none;position:fixed;top:0;left:0;z-index:9999;width:30px;opacity:0;will-change:transform;-webkit-user-select:none;user-select:none}
.leaf-cursor img{width:100%;height:100%;transform-origin:20% 7.9%}
.leaf-cursor-on,.leaf-cursor-on :not(input):not(textarea):not([contenteditable=true]){cursor:none!important}
.intro{--open:0;--p:0;--ready:0;--glow:0;--wash:0;--settle:0;--intro-haze:#8a5a2b;--intro-ink:#1d1e24;--intro-gold:#e0a444;z-index:9990;pointer-events:auto;-webkit-user-select:none;user-select:none;background:#0b0b0b;display:none;position:fixed;inset:0;overflow:hidden}
html.intro-on .intro{display:block}
html.intro-on body{overflow:hidden}
.intro-stage{transform-origin:0 0;will-change:transform;opacity:var(--open);position:absolute;top:0;left:0}
.intro-stage>img{max-width:none;position:absolute;top:0;left:0}
html.intro-on .intro--fonts .intro-page{visibility:visible}
html.intro-on .intro--gltext .intro-page{visibility:hidden}
.intro-photo{opacity:calc(clamp(0, (var(--p) - .3) / .6, 1))}
.intro-glow{opacity:var(--glow)}
.intro-page{transform-origin:0 0;visibility:hidden;mix-blend-mode:multiply;opacity:calc(1 - var(--textout,0));clip-path:inset(0 calc(-40px * var(--strip-k,1)));position:absolute;top:0;left:0}
.intro-page svg{display:block;overflow:visible}
.intro-haze text{fill:var(--intro-haze);fill-opacity:calc(.55 * (1 - var(--glow)))}
.intro-ink text{fill:var(--intro-gold)}
@supports (color:color-mix(in lab, red, red)){.intro-ink text{fill:color-mix(in srgb, var(--intro-gold) calc(var(--glow) * 70%), var(--intro-ink))}}
.intro-halo text{fill:var(--intro-gold)}
.intro-halo{opacity:calc(var(--glow) * .8)}
.intro-bloom{mix-blend-mode:screen;opacity:clamp(0, (var(--glow) - .15) / .85, 1);pointer-events:none;position:absolute;inset:0}
.intro:not(.intro--entering) .intro-bloom{display:none}
.intro-dust{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}
.intro-vignette{pointer-events:none;opacity:calc(1 - var(--wash));background:radial-gradient(80% 75%,#0000 60%,#281e1459 100%);position:absolute;inset:0}
.intro-progress{text-align:center;color:#4a4642;width:min(30rem,80vw);opacity:var(--open);transition:opacity .4s;position:absolute;bottom:max(2.2rem,5vh);left:50%;transform:translate(-50%)}
.intro--entering .intro-progress,.intro--entering .intro-hint-arrow{opacity:0}
.intro-progress svg{width:100%;height:1.5rem;display:block;overflow:visible}
.intro-progress path{stroke-width:2px;stroke-linecap:round;vector-effect:non-scaling-stroke}
.intro-progress-track{stroke:#281e1424}
.intro-progress-bar{stroke:#1d1e24;stroke-dasharray:1 1;stroke-dashoffset:1px}
.intro-progress p{letter-spacing:.06em;margin-top:.5rem;font-size:.95rem}
.intro-pct{text-align:right;font-variant-numeric:tabular-nums;min-width:2ch;display:inline-block}
.intro-wash{pointer-events:none;opacity:var(--wash);background:radial-gradient(circle,#fffaf0 0%,#fff3dc 60%,#ffe7bf 100%);position:absolute;inset:0}
.intro-settle{pointer-events:none;background:var(--color-canvas);opacity:var(--settle);position:absolute;inset:0}
.intro-logo{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;position:absolute}
.intro-logo:disabled{pointer-events:none}
.intro-logo:focus-visible{outline:3px solid var(--color-accent);outline-offset:6px}
.intro-hint-arrow{color:var(--intro-ink);opacity:max(.001, var(--ready));will-change:opacity;pointer-events:none;transition:opacity .3s;position:absolute;overflow:visible}
.intro-hint{fill:currentColor;stroke:none}
.intro-hint-arrow path{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 1;stroke-dashoffset:1px}
.intro--ready:not(.intro--entering) .intro-hint-body{animation:7s ease-in-out infinite intro-draw-body}
.intro--ready:not(.intro--entering) .intro-hint-head{animation:7s ease-in-out infinite intro-draw-head}
@keyframes intro-draw-body{0%{stroke-dashoffset:1px;opacity:1}14%{stroke-dashoffset:0}88%{stroke-dashoffset:0;opacity:1}96%,to{stroke-dashoffset:0;opacity:0}}
@keyframes intro-draw-head{0%,14%{stroke-dashoffset:1px;opacity:1}19%{stroke-dashoffset:0}88%{stroke-dashoffset:0;opacity:1}96%,to{stroke-dashoffset:0;opacity:0}}
.intro-dolly{display:none;position:absolute;top:0;left:0}
.intro--dolly .intro-dolly{display:block}
.intro--dolly .intro-stage>img{visibility:hidden}