@import "https://fonts.googleapis.com/css2?family=Unbounded:wght@400;600;800&family=Familjen+Grotesk:wght@400;500;700&display=swap";@font-face{font-family:Discipline Notes;src:url(/fonts/discipline_notes/Discipline%20Notes.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap;size-adjust:90%}:root{--ivory:#fbf8f1;--ink:#000a1a;--blue:#0e4798;--pink:#dfa4b8;--butter:#f7de93;--cream:var(--ivory);--cream-deep:#f2ede2;--paper:var(--ivory);--plum:var(--ink);--plum-soft:#464f5f;--accent:var(--blue);--marker:#dfa4b88c;--charcoal:#36393d;--lit-contact:#000a1a8c;--display:"Unbounded", "Arial Black", sans-serif;--body:"Familjen Grotesk", "Helvetica Neue", sans-serif;--pen:"Discipline Notes", cursive;font:18px/1.55 var(--body);color:var(--plum);background:var(--cream);-webkit-font-smoothing:antialiased}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px;overflow-x:clip}:root[data-theme=dark]{--cream:#0b1629;--cream-deep:#16233a;--plum:var(--ivory);--plum-soft:#b8c0cd;--accent:#8fb0e6;--marker:#dfa4b866;--charcoal:#c4c7cc;--lit-contact:#000000bf;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--cursor-pen:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 34 34'%3E%3Cg stroke='%23000a1a' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 31l3-9 6 6z' fill='%23000a1a'/%3E%3Cpath d='M6 22L22 6l6 6-16 16z' fill='%23dfa4b8'/%3E%3Cpath d='M22 6l3-3a2 2 0 0 1 3 0l3 3a2 2 0 0 1 0 3l-3 3z' fill='%230e4798'/%3E%3C/g%3E%3C/svg%3E") 2 24, auto;--cursor-pen-click:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 34 34'%3E%3Cg stroke='%23000a1a' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 31l3-9 6 6z' fill='%23000a1a'/%3E%3Cpath d='M6 22L22 6l6 6-16 16z' fill='%23f7de93'/%3E%3Cpath d='M22 6l3-3a2 2 0 0 1 3 0l3 3a2 2 0 0 1 0 3l-3 3z' fill='%230e4798'/%3E%3C/g%3E%3C/svg%3E") 2 24, pointer;--cursor-zoom:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 36 36'%3E%3Cg stroke='%23000a1a' stroke-width='2.5' stroke-linecap='round'%3E%3Ccircle cx='15' cy='15' r='11' fill='%23f7de93' fill-opacity='.45'/%3E%3Cpath d='M23.5 23.5L33 33' stroke-width='4'/%3E%3Cpath d='M15 10v10M10 15h10' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E") 12 12, zoom-in}:root[data-theme=dark]{--cursor-pen:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 34 34'%3E%3Cg stroke='%23fbf8f1' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 31l3-9 6 6z' fill='%23fbf8f1'/%3E%3Cpath d='M6 22L22 6l6 6-16 16z' fill='%23dfa4b8'/%3E%3Cpath d='M22 6l3-3a2 2 0 0 1 3 0l3 3a2 2 0 0 1 0 3l-3 3z' fill='%230e4798'/%3E%3C/g%3E%3C/svg%3E") 2 24, auto;--cursor-pen-click:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 34 34'%3E%3Cg stroke='%23fbf8f1' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 31l3-9 6 6z' fill='%23fbf8f1'/%3E%3Cpath d='M6 22L22 6l6 6-16 16z' fill='%23f7de93'/%3E%3Cpath d='M22 6l3-3a2 2 0 0 1 3 0l3 3a2 2 0 0 1 0 3l-3 3z' fill='%230e4798'/%3E%3C/g%3E%3C/svg%3E") 2 24, pointer;--cursor-zoom:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 36 36'%3E%3Cg stroke='%23fbf8f1' stroke-width='2.5' stroke-linecap='round'%3E%3Ccircle cx='15' cy='15' r='11' fill='%23f7de93' fill-opacity='.45'/%3E%3Cpath d='M23.5 23.5L33 33' stroke-width='4'/%3E%3Cpath d='M15 10v10M10 15h10' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E") 12 12, zoom-in}html{cursor:var(--cursor-pen)}a,button,summary,label,[role=button]{cursor:var(--cursor-pen-click)}::selection{background:var(--pink);color:var(--ink)}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:var(--cream-deep)}::-webkit-scrollbar-thumb{background:var(--pink);border:3px solid var(--cream-deep);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--blue)}@supports not selector(::-webkit-scrollbar){html{scrollbar-color:var(--pink) var(--cream-deep)}}body{margin:0;transition:background-color .4s,color .4s;overflow-x:clip}h1,h2,h3{font-family:var(--display);margin:0;line-height:1}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}main,.footer{max-width:1680px;margin-inline:auto;padding-inline:clamp(16px,4vw,72px)}.section{padding-block:120px}.slide-section.from-left{--from:-75vw;--tilt:-7deg}.slide-section.from-right{--from:75vw;--tilt:7deg}.slide-section{transition:translate 1.1s cubic-bezier(.2,.8,.2,1),rotate 1.1s cubic-bezier(.2,.8,.2,1),scale 1.1s cubic-bezier(.2,.8,.2,1),opacity .8s}.slide-section:not(.in){translate:var(--from) 0;rotate:var(--tilt);opacity:0;scale:.85}@supports (animation-timeline:view()){.slide-section,.slide-section:not(.in){opacity:1;animation:linear both section-slide;animation-duration:auto;animation-timeline:view();animation-range:entry entry 75%;translate:none;rotate:none;scale:none}}@keyframes section-slide{0%{translate:var(--from) 0;rotate:var(--tilt);opacity:0;scale:.85}45%{opacity:1}to{opacity:1;translate:none;rotate:none;scale:none}}@media (prefers-reduced-motion:reduce){.slide-section,.slide-section:not(.in){opacity:1;animation:none;translate:none;rotate:none;scale:none}}.button{border:2px solid var(--plum);--lit:var(--cream);border-radius:999px;padding:14px 26px;font-weight:700;text-decoration:none;transition:color .2s,translate .2s,rotate .2s;display:inline-block}.button:hover{--lit:var(--plum);color:var(--cream);translate:0 -3px;rotate:-2deg}.button.primary{--lit:var(--plum);color:var(--cream)}.button.primary:hover{--lit:var(--pink);border-color:var(--pink);color:var(--ink)}.text-link{color:var(--accent);font-weight:700;text-decoration:none}.text-link:hover{text-underline-offset:4px;text-decoration:underline}.project-link{--lit:var(--blue);border:2px solid var(--ink);color:var(--ivory);border-radius:999px;align-items:center;gap:8px;margin-top:16px;padding:13px 24px;font-size:1.05rem;font-weight:700;text-decoration:none;transition:translate .2s cubic-bezier(.3,1.8,.5,1);display:inline-flex}.project-link:hover{translate:0 -3px}.project-link:active{translate:0 1px}.project-link .nav-arrow{fill:currentColor;stroke:none;transition:translate .2s cubic-bezier(.3,1.8,.5,1)}.project-link:hover .nav-arrow{translate:2px -2px}.flag{width:22px;box-shadow:0 0 0 1.5px var(--plum);vertical-align:middle;border-radius:3px}.word{vertical-align:top;margin:-.15em .2em -.22em 0;padding:.15em 0 .22em;display:inline-block;overflow:hidden}.word.joined{margin-right:0}.char{display:inline-block}.pen-dab{z-index:70;pointer-events:none;width:24px;height:24px;animation:.45s ease-out forwards dab-fade;position:fixed;overflow:visible;translate:-50% -50%}.pen-dab path{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-dasharray:1;animation:.25s ease-out both dab-draw}@keyframes dab-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes dab-fade{60%{opacity:1}to{opacity:0}}.progress{z-index:60;background:linear-gradient(90deg, var(--pink), var(--butter), var(--blue));transform-origin:0;height:4px;position:fixed;inset:0 0 auto;scale:0 1}@supports (animation-timeline:scroll()){.progress{animation:linear both progress;animation-timeline:scroll(root)}}@keyframes progress{to{scale:1}}.reveal{opacity:0;transform:translateY(32px) rotate(var(--r,0deg));transition:opacity .7s,transform .8s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0s)}.reveal.pop{transform:translateY(48px) scale(.88) rotate(var(--r,-4deg))}.reveal.slide{transform:translate(64px)rotate(2deg)}.reveal.in{opacity:1;transform:none}.tilt.in{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,0px))}.tilt.in:hover{--lift:-6px;transition-duration:.7s,.2s;transition-delay:0s}.pen{font-family:var(--pen);letter-spacing:0;text-transform:none;color:var(--accent);font-weight:400;line-height:1}.write{clip-path:inset(-40% 100% -40% -5%);transition:clip-path 1.4s cubic-bezier(.5,0,.3,1);transition-delay:var(--d,.3s)}.write.in,.in .write{clip-path:inset(-40% -5%)}.draw path{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .9s;transition-delay:calc(var(--d,0s) + .7s)}.draw.in path,.in .draw path{stroke-dashoffset:0}.doodle-underline{width:108%;height:.45em;color:var(--pink);position:absolute;bottom:-.3em;left:-4%;overflow:visible}.doodle-circle{width:124%;height:160%;color:var(--pink);pointer-events:none;position:absolute;top:-30%;left:-12%;overflow:visible}.hl{color:inherit;background:linear-gradient(transparent 58%, var(--marker) 58%, var(--marker) 92%, transparent 92%) no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone;background-size:0% 100%;padding:0 .1em;transition:background-size 1s cubic-bezier(.6,0,.3,1) .4s}.in .hl{background-size:100% 100%}.circled,.underlined{display:inline-block;position:relative}.title{letter-spacing:-.03em;flex-wrap:wrap;align-items:baseline;column-gap:.35em;margin-bottom:56px;font-size:clamp(2rem,5vw,3.6rem);font-weight:800;line-height:1.05;display:flex}.title.reveal{opacity:1;transform:none}.title .char{transition:transform .8s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * 28ms);transform:translateY(115%)}.title.in .char{transform:none}.title .title-en .word{overflow:visible}.title .title-en .char{transition:translate .35s cubic-bezier(.3,1.8,.5,1),rotate .35s cubic-bezier(.3,1.8,.5,1),scale .35s cubic-bezier(.3,1.8,.5,1);transform:none}.title .title-en .char:hover{translate:0 -.18em;rotate:-10deg;scale:1.1}.nav{z-index:50;pointer-events:none;align-items:flex-start;gap:8px;max-width:1680px;height:64px;margin-inline:auto;padding-inline:clamp(16px,4vw,72px);display:flex;position:sticky;top:0}.nav:before{content:"";background:var(--plum);height:4px;position:fixed;inset:0 0 auto}.nav-link,.nav nav a.nav-cta,.nav-drop-item,.menu-toggle{--lit:var(--tab,var(--cream));min-height:52px;color:var(--tab-text,var(--plum));border:2px solid var(--plum);pointer-events:auto;transform-origin:50% 0;animation:tab-drop .6s cubic-bezier(.3, 1.5, .5, 1) var(--delay,0s) backwards;border-top:0;border-radius:0 0 14px 14px;flex-shrink:0;transition:min-height .45s cubic-bezier(.33,1,.68,1),translate .35s cubic-bezier(.3,.8,.3,1)}@keyframes tab-drop{0%{translate:0 -110%}}.nav nav>:nth-child(2){--delay:80ms}.nav nav>:nth-child(3){--delay:.16s}.nav nav>:nth-child(4){--delay:.24s}.nav.scrolled :is(.nav-link,.nav-cta,.menu-toggle){min-height:44px}.nav.hidden:not(:focus-within,:hover) :is(.nav-charm,.nav-link,.nav-cta,.menu-toggle){translate:0 calc(9px - 100%)}.nav-charm{color:var(--plum);pointer-events:auto;transform-origin:50% 0;background:0 0;border:0;flex-direction:column;flex-shrink:0;align-items:center;padding:0;text-decoration:none;transition:translate .35s cubic-bezier(.3,1.8,.5,1);animation:.6s cubic-bezier(.3,1.5,.5,1) backwards tab-drop;display:flex;position:relative}.nav-charm:before{content:"";width:2px;height:var(--cord,14px);background:var(--plum)}.nav-charm:hover{animation:.6s cubic-bezier(.3,1.5,.5,1) backwards tab-drop,.7s tab-swing}.nav-charm:active{transition-duration:80ms;translate:0 8px}.charm-knob{width:var(--knob,40px);height:var(--knob,40px);border:2px solid var(--plum);--lit:var(--cream);border-radius:50%;place-items:center;transition:color .2s;display:grid}.nav-logo{--knob:50px;--cord:8px}.nav-logo img{width:auto;height:30px;transition:rotate .3s,scale .3s;display:block}.nav-prefs{gap:6px;margin-left:8px;display:flex}.nav-logo:hover img{animation:.6s logo-wiggle}@keyframes logo-wiggle{25%{rotate:-10deg;scale:1.1}60%{rotate:8deg}}:root[data-theme=dark] .nav-logo img{filter:invert()hue-rotate(180deg)}.nav nav{pointer-events:none;align-items:flex-start;gap:8px;margin-left:auto;display:flex}.link-about{--tab:var(--butter);--tab-text:var(--ink)}.link-projects{--tab:var(--blue);--tab-text:var(--ivory)}.link-skills{--tab:var(--pink);--tab-text:var(--ink)}.nav nav a.nav-cta{--tab:var(--plum);--tab-text:var(--cream)}.nav-link,.nav nav a.nav-cta{white-space:nowrap;align-content:end;justify-items:center;padding:10px 16px 8px;font-weight:600;text-decoration:none;display:grid}.nav nav a.nav-cta{font-weight:700}.nav-link:hover,.nav-link.current,.nav nav a.nav-cta:hover,.nav nav a.nav-cta.current{min-height:62px}.nav.scrolled :is(.nav-link:hover,.nav-link.current,.nav-cta:hover,.nav-cta.current){min-height:52px}.nav-link:hover,.nav nav a.nav-cta:hover{animation:tab-drop .6s cubic-bezier(.3, 1.5, .5, 1) var(--delay,0s) backwards, tab-swing .7s ease;transition-duration:.3s,.35s;transition-timing-function:cubic-bezier(.3,1.3,.5,1),cubic-bezier(.3,.8,.3,1)}@keyframes tab-swing{25%{rotate:-3deg}60%{rotate:2deg}}.theme-toggle:hover .charm-knob{--lit:var(--butter);color:var(--ink)}.lang-switch .charm-knob{border-radius:999px;grid-template-columns:1fr 1fr;width:auto;height:40px;padding:3px;display:grid;position:relative}.lang-bubble{--lit:var(--blue);width:calc(50% - 3px);translate:calc(var(--at) * 100%) 0;border-radius:999px;transition:translate .38s cubic-bezier(.32,1.28,.5,1),scale .2s;position:absolute;top:3px;bottom:3px;left:3px}.lang-switch .charm-knob:active .lang-bubble{scale:1.07 .93}.lang-switch button{min-width:30px;height:100%;color:var(--plum);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 7px;font-size:.8rem;font-weight:700;transition:color .25s;position:relative}.lang-switch button:hover:not(.on){color:var(--accent)}.lang-switch button.on{color:var(--ivory)}.nav-drop{pointer-events:auto;display:flex;position:relative}button.nav-link{z-index:2;font:inherit;font-weight:600;position:relative}.nav-drop-label{align-items:center;gap:6px;display:inline-flex}.nav-caret{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;width:11px;transition:rotate .25s}.nav-drop.open .nav-caret{rotate:180deg}.nav-drop-menu{visibility:hidden;opacity:0;transition:opacity .15s,visibility 0s .15s;position:absolute;top:100%;left:0;right:0}.nav-drop.open .nav-drop-menu{visibility:visible;opacity:1;transition:opacity .15s}.nav-drop-item{--tab:var(--blue);--tab-text:var(--ivory);font-weight:600;text-decoration:none}@media (width>=901px){.nav nav>.nav-link,.nav nav>a.nav-cta{z-index:2;position:relative}.nav-drop-menu{--pivot:-60px;--boards:214px;width:var(--boards);margin-left:calc(var(--boards) / -2);transform-origin:50% var(--pivot);padding-top:16px;transition:opacity .15s,visibility 0s .15s,translate .15s;left:50%;right:auto;translate:0 -26px}.nav-drop.open .nav-drop-menu{animation:.6s linear backwards sign-drop;translate:0}@keyframes sign-drop{0%{animation-timing-function:cubic-bezier(.5,0,.9,.6);translate:0 -40px;rotate:-3deg}40%{animation-timing-function:ease-out;translate:0 4px;rotate:1.6deg}65%{animation-timing-function:ease-in-out;translate:0 -2px;rotate:-.8deg}to{translate:0;rotate:0deg}}.nav-sign{transform-origin:50% calc(var(--pivot) - 16px);gap:8px;animation:2.6s ease-in-out infinite alternate sign-sway;display:grid;position:relative}@keyframes sign-sway{0%{rotate:-.5deg}to{rotate:.5deg}}.nav-sign:is(:hover,:focus-within){animation:none}.nav-sign:before{content:"";background:var(--plum);pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:-200px;bottom:24px;left:50%}.nav-drop-item{--lit:var(--ivory);--fill:var(--butter);border:2px solid var(--ink);min-height:0;color:var(--ink);white-space:nowrap;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:11px 15px;font-size:.9rem;line-height:1.15;transition:none;animation:none;display:flex;position:relative}.nav-drop-item:nth-child(2){--fill:var(--pink)}.nav-drop-item:hover,.nav-drop-item:focus-visible,.nav-drop-item.current{--lit:var(--fill)}.nav-drop-item:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.nav-drop-item:before{content:"";background:var(--ink);border-radius:2px;width:14px;height:6px;margin-left:-7px;position:absolute;top:-5px;left:50%}:root[data-theme=dark] .nav-drop-item:before{background:var(--plum)}.nav-plate-arrow{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:14px;transition:translate .18s}.nav-drop-item:is(:hover,:focus-visible) .nav-plate-arrow{translate:3px}}.theme-toggle svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;animation:.5s cubic-bezier(.3,1.5,.5,1) spin-in}@keyframes spin-in{0%{rotate:-120deg;scale:.3}}.menu-toggle{--tab:var(--plum);--tab-text:var(--cream);place-items:center;width:48px;padding:0;display:none}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{background:currentColor;border-radius:2px;width:18px;height:2.5px;transition:translate .25s,rotate .25s,opacity .2s;display:block}.menu-toggle span{position:relative}.menu-toggle span:before,.menu-toggle span:after{content:"";position:absolute;left:0}.menu-toggle span:before{translate:0 -6px}.menu-toggle span:after{translate:0 6px}.nav.open .menu-toggle span{background:0 0}.nav.open .menu-toggle span:before{translate:0;rotate:45deg}.nav.open .menu-toggle span:after{translate:0;rotate:-45deg}@media (width<=900px){.menu-toggle{display:grid}.nav-prefs{margin-left:auto}.nav nav{visibility:hidden;opacity:0;flex-direction:column;align-items:stretch;gap:6px;margin:0;transition:opacity .2s,translate .2s,visibility 0s .2s;position:absolute;top:60px;left:clamp(16px,4vw,72px);right:clamp(16px,4vw,72px);translate:0 -8px}.nav.open nav{visibility:visible;opacity:1;transition:opacity .2s,translate .2s;translate:0}.nav-drop,.nav-drop-menu,.nav-sign{visibility:inherit;opacity:1;display:contents}button.nav-link{display:none}.nav-link,.nav nav a.nav-cta,.nav-drop-item{border-top:2px solid var(--plum);border-radius:14px;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 18px;font-size:1.1rem;animation:none;display:flex}.nav-link:hover,.nav nav a.nav-cta:hover{animation:.7s tab-swing}.nav-link.current,.nav-drop-item.current,.nav nav a.nav-cta.current{text-underline-offset:4px;text-decoration:underline}.nav-plate-arrow{display:none}}.hero{--name:min(calc((min(100vw, 1680px) - 2 * clamp(16px, 4vw, 72px)) / 7), 22.5svh);min-height:max(calc(100svh - 64px), calc(var(--name) * 4 + 64px));padding-block:28px 64px;position:relative}.hero-text{container-type:inline-size}.hero-name{font-size:var(--name);letter-spacing:-.05em;white-space:nowrap;margin-bottom:24px;font-weight:800;line-height:1.03}.hero-name>span{display:block}.hero-name .word{margin-bottom:-.5em;margin-right:.14em;padding-bottom:.5em;padding-right:.06em}.hero-name .char{animation:.9s cubic-bezier(.2,.8,.2,1) both rise;animation-delay:calc(var(--i) * 40ms)}@keyframes rise{0%{transform:translateY(170%)}}.accent-line{color:var(--accent)}.hero-fade{animation:.9s both fade-up;animation-delay:var(--d,0s)}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}}.hero-role{text-wrap:balance;margin:0;font-size:clamp(1.4rem,5.2cqw,2.2rem);font-weight:500}@media (width>=901px){.hero-role{max-width:calc(var(--name) * 4.3)}}.amp{vertical-align:baseline;margin:0 .05em;font-size:1.7em;line-height:0;display:inline-block;translate:0 .125em}.hero-note{white-space:nowrap;color:var(--plum-soft);margin:6px 0 24px;font-size:min(4.6cqw,1.9rem);display:inline-block;position:relative;rotate:-2deg}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:22px;margin-top:40px;display:flex}@media (width>=901px){.hero-actions{max-width:calc(var(--name) * 3.4)}}.fun-btn{--btn-bg:var(--blue);--spring:cubic-bezier(.3, 1.8, .5, 1);isolation:isolate;color:var(--ivory);white-space:nowrap;rotate:var(--tilt);transition:translate .35s var(--spring), rotate .35s var(--spring), scale .2s ease;font-size:1.05rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-block;position:relative}.folder-btn{--tilt:-2deg}.mail-btn{--tilt:2deg;--btn-bg:var(--butter);color:var(--ink)}.fun-btn:hover,.fun-btn:focus-visible{translate:0 -5px;rotate:calc(var(--tilt) * -1.5)}.fun-btn:active{transition-duration:80ms;translate:3px 3px;rotate:0deg;scale:1.03 .94}.fun-face{--lit:var(--btn-bg);border:2.5px solid var(--plum);border-radius:14px;align-items:center;gap:10px;min-height:58px;padding:0 26px 0 20px;display:inline-flex;position:relative}.fun-label i{white-space:pre;font-style:normal;display:inline-block}.fun-btn:is(:hover,:focus-visible) .fun-label i{animation:letter-hop .5s var(--spring) calc(var(--i) * 28ms)}@keyframes letter-hop{35%{translate:0 -.32em;rotate:-6deg}}.fun-btn svg{stroke:currentColor;stroke-width:1.8px;stroke-linejoin:round;width:26px;transition:rotate .35s var(--spring), scale .35s var(--spring);flex:none;overflow:visible}.fun-btn:is(:hover,:focus-visible) svg{rotate:-8deg;scale:1.18}.btn-cover,.btn-flap{fill:var(--btn-bg)}.btn-page{fill:var(--ivory);stroke:var(--ink);stroke-width:1.4px;transition:translate .3s var(--spring)}.fun-btn:is(:hover,:focus-visible) .btn-page{translate:0 -6px}.btn-flap{transform-origin:50% 6.5px;transition:scale .25s}.fun-btn:is(:hover,:focus-visible) .btn-flap{scale:1 -1}.fun-peek{z-index:-1;position:absolute;inset:0}.folder-btn .fun-peek i{border:2px solid var(--ink);background:linear-gradient(var(--ink) 0 0) 7px 7px / 50% 2px no-repeat, linear-gradient(var(--ink) 0 0) 7px 13px / 70% 2px no-repeat, var(--page);transform-origin:50% 100%;width:30%;height:46px;transition:translate .45s var(--spring), rotate .45s var(--spring);border-radius:5px;position:absolute;top:-9px}.folder-btn .fun-peek i:first-child{--page:var(--pink);left:12%;rotate:-7deg}.folder-btn .fun-peek i:nth-child(2){--page:var(--butter);transition-delay:40ms;left:35%;rotate:2deg}.folder-btn .fun-peek i:nth-child(3){--page:var(--ivory);transition-delay:80ms;left:58%;rotate:8deg}.folder-btn:is(:hover,:focus-visible) .fun-peek i:first-child{translate:-22px -26px;rotate:-20deg}.folder-btn:is(:hover,:focus-visible) .fun-peek i:nth-child(2){translate:0 -36px;rotate:-2deg}.folder-btn:is(:hover,:focus-visible) .fun-peek i:nth-child(3){translate:22px -26px;rotate:20deg}.mail-btn .fun-peek i{border:2px solid var(--ink);background:var(--ivory);color:#c2416b;text-align:center;height:46px;transition:translate .45s var(--spring), rotate .45s var(--spring), scale .45s var(--spring);border-radius:5px;padding-top:1px;font-size:.8rem;font-style:normal;line-height:1;position:absolute;top:-9px;left:18%;right:18%}.mail-btn:is(:hover,:focus-visible) .fun-peek i{translate:0 -30px;rotate:-4deg;scale:1.04}.mail-btn .fun-peek b{top:-34px;left:var(--x);color:#c2416b;font-size:var(--s);opacity:0;font-weight:400;line-height:1;position:absolute}.mail-btn .fun-peek b:first-of-type{--x:26%;--s:.85rem;--drift:-14px}.mail-btn .fun-peek b:nth-of-type(2){--x:50%;--s:1.1rem;--drift:5px;animation-delay:.12s!important}.mail-btn .fun-peek b:nth-of-type(3){--x:72%;--s:.75rem;--drift:16px;animation-delay:.24s!important}.mail-btn:is(:hover,:focus-visible) .fun-peek b{animation:1s ease-out .15s heart-float}@keyframes heart-float{0%{opacity:0;translate:0 6px;scale:.4}25%{opacity:1}to{opacity:0;translate:var(--drift) -38px;rotate:14deg;scale:1}}@media (prefers-reduced-motion:reduce){.fun-btn:is(:hover,:focus-visible) :is(.fun-label i,.fun-peek b){animation:none}}.hero-visual{left:calc(var(--name) * 4.225);top:calc(28px + var(--name) * 1.565);width:calc(var(--name) * 2.35);aspect-ratio:1;position:absolute}@keyframes pop-in{0%{opacity:0;rotate:-10deg;scale:.6}}@media (width>=900px){.hero-role{font-size:min(2.2rem, calc(var(--name) * .21))}.hero-note{font-size:min(1.9rem, calc(var(--name) * .18))}}.hero-visual{--pull:0px;--tension:0;container-type:inline-size}.badge{z-index:4;width:72cqi;height:107cqi;translate:-50% var(--pull);transform:rotate(calc(var(--tension) * 4deg + var(--swing,0deg))) translateY(var(--stretch,0px));transform-origin:50% calc(var(--reach,0px) * -1);-webkit-user-select:none;user-select:none;cursor:grab;touch-action:none;outline:none;animation:1.3s linear .3s backwards badge-drop,5s ease-in-out 1.6s infinite swing;position:absolute;top:-6cqi;left:50%;container-type:inline-size}.badge-flip{opacity:0;pointer-events:none;position:absolute;inset:13cqi 0 0}.badge.held{cursor:grabbing}.badge.flipped{cursor:pointer;touch-action:pan-y}.badge-body{rotate:var(--hang,0deg);transform-origin:50% 11cqi;perspective:900px;position:absolute;inset:0}.badge-shadow{filter:blur(3cqi);translate:calc(2.5cqi + var(--sheen,0) * -2.5cqi) 3cqi;background:#000a1a57;border-radius:7cqi;transition:inset .25s,opacity .25s;position:absolute;inset:15cqi 3cqi -1cqi}.badge.held .badge-shadow{opacity:.7;inset:18cqi 1cqi -6cqi}:root[data-theme=dark] .badge-shadow{background:#0009}.badge-tilt{transform:rotateX(var(--pitch,0deg)) rotateY(var(--twist,0deg));transform-origin:50% 19cqi;transform-style:preserve-3d;animation:7s ease-in-out infinite badge-turn;position:absolute;inset:0}.badge:hover .badge-tilt,.badge.held .badge-tilt{animation-play-state:paused}.badge.flipped .badge-tilt{animation:none}.badge.ripped .badge-tilt{animation:.8s cubic-bezier(.5,0,.9,.6) forwards badge-tumble}@keyframes badge-turn{0%,to{rotate:y -5deg}50%{rotate:y 5deg}}@keyframes badge-tumble{to{rotate:1 .5 .2 240deg}}@media (prefers-reduced-motion:reduce){.badge-tilt{animation:none}}.badge-edge{transform:translateZ(calc((var(--i) - 3.5) * .34cqi));background:#1a2438;border-radius:7cqi;position:absolute;inset:0}.badge:hover,.badge.held,.badge.flipped{animation-play-state:running,paused}.badge:has(.badge-flip:focus-visible){animation-play-state:running,paused}.badge.ripped{pointer-events:none;animation:.8s cubic-bezier(.5,0,.9,.6) forwards badge-fall}.badge.rehung{animation:.9s cubic-bezier(.3,1.4,.5,1) badge-rehang,5s ease-in-out .9s infinite swing}.lanyard{pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.hero[data-intro=playing] .lanyard{visibility:hidden}.badge-clip{z-index:2;border:3px solid var(--ink);background:linear-gradient(#f3f3f8,#c8c8d2 45%,#8f8f9e);border-radius:6px 6px 12px 12px;width:18cqi;height:11cqi;position:absolute;top:6cqi;left:50%;transform:translateZ(calc(1.3cqi + 3px));box-shadow:inset 0 1px 1px #fff,0 2px 3px #000a1a66}.badge-card{transform-style:preserve-3d;transition:transform .8s cubic-bezier(.3,1.4,.5,1);position:absolute;inset:13cqi 0 0}.badge.flipped .badge-card{transform:rotateY(180deg)}.badge-hint{z-index:3;color:var(--plum);font-size:min(1.7rem, calc(var(--name) * .16));white-space:nowrap;pointer-events:none;align-items:flex-end;gap:2px;line-height:1;animation:.6s cubic-bezier(.3,1.6,.5,1) 2s backwards hint-in,2.4s ease-in-out 3s 2 hint-nudge;display:flex;position:absolute;rotate:-5deg}.badge-hint svg{fill:none;width:1.9em;stroke:var(--accent);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;margin-bottom:-.2em}.badge-hint.flip{top:62%;right:89%}.badge-hint.drag{flex-direction:column;align-items:center;animation-name:hint-in,hint-sway;top:36%;left:91%;rotate:5deg}.badge-hint.drag svg{margin:.1em 0 0}@keyframes hint-sway{25%{translate:-6px}75%{translate:6px}}@keyframes hint-in{0%{opacity:0;scale:.4}}@keyframes hint-nudge{50%{translate:8px}}.hero[data-intro=playing] .badge-hint{visibility:hidden}@media (width<=900px){.badge-hint{font-size:1.1rem}.badge-hint.flip{top:-11%;right:58%}.badge-hint.drag{flex-direction:row;gap:.4em;top:-24%;left:auto;right:58%}.badge-hint.flip svg{rotate:30deg}}.badge-face{border:3px solid var(--ink);backface-visibility:hidden;color:var(--ink);border-radius:7cqi;flex-direction:column;align-items:center;padding:14cqi 7cqi 7cqi;display:flex;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff59}.badge-front{background:var(--pink);align-items:stretch;padding-bottom:0;transform:translateZ(1.3cqi)}.badge-face:after{content:"";translate:calc(var(--sheen,0) * 42%) 0;pointer-events:none;background:linear-gradient(105deg,#0000 38%,#ffffff12 44%,#ffffff47 50%,#ffffff12 56%,#0000 62%);position:absolute;inset:-30% -60%}.badge-back{background:repeating-radial-gradient(circle at 20% 110%,#0000 0 9px,#0e47980d 9px 10px),linear-gradient(160deg,#f7f9fc,#e8eef7);align-items:stretch;padding-bottom:4cqi;transform:rotateY(180deg)translateZ(1.3cqi)}.badge:has(.badge-flip:focus-visible) .badge-face{outline:3px solid var(--blue);outline-offset:4px}.badge-slot{border:2.5px solid var(--ink);background:var(--cream);border-radius:999px;width:25cqi;height:4.6cqi;position:absolute;top:5.4cqi;left:50%;translate:-50%;box-shadow:inset 0 2px 3px #000a1a80}.badge-portrait{flex:none;position:relative}.badge-photo{aspect-ratio:1/.8;border:3px solid var(--ink);background:var(--butter);box-shadow:1.6cqi 1.6cqi 0 var(--blue);border-radius:4cqi;overflow:hidden;rotate:-1.5deg}.badge-sticker{aspect-ratio:1;border:3px solid var(--ink);background:var(--butter);border-radius:50%;place-items:center;width:23cqi;display:grid;position:absolute;bottom:-6cqi;right:-3.5cqi;rotate:10deg}.badge-sticker img{object-fit:contain;width:76%;height:76%}.badge-photo img,.monogram{object-fit:cover;object-position:50% 36%;width:100%;height:100%;display:block}.badge-name{font-family:var(--display);letter-spacing:-.03em;margin:5.5cqi 0 1.6cqi;font-size:11.4cqi;font-weight:800;line-height:1.08}.badge-role{color:var(--ink);margin:0;font-size:4.3cqi;font-weight:600;line-height:1.3}.badge-id{background:var(--ink);color:var(--ivory);white-space:nowrap;align-items:center;gap:3cqi;margin:auto -7cqi 0;padding:3cqi 7cqi;font-family:ui-monospace,monospace;font-size:3cqi;font-weight:700;display:flex}.badge-barcode{background:repeating-linear-gradient(90deg, var(--ivory) 0 2px, transparent 2px 4px, var(--ivory) 4px 7px, transparent 7px 9px, var(--ivory) 9px 10px, transparent 10px 13px);flex:1;height:6cqi}.badge-stripe{background:linear-gradient(#2b2e33,#121417 60%,#2b2e33);flex:none;height:9cqi;margin:-3cqi -7cqi 3cqi}.badge-back-kicker{color:var(--blue);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:3.3cqi;font-weight:800}.badge-back-title{color:var(--ink);font-family:var(--display);white-space:nowrap;margin:0 0 2.6cqi;font-size:6.6cqi;font-weight:800;line-height:1.05}.access{border:2px solid var(--ink);background:#fff;border-radius:2.4cqi;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.access li{align-items:center;gap:2.4cqi;padding:1.5cqi 2.6cqi;display:flex}.access li+li{border-top:1.5px dashed #000a1a40}.access-area{flex:1;min-width:0;display:grid}.access-area strong{font-size:4cqi;line-height:1.15}.access-area small{opacity:.65;font-size:2.9cqi;line-height:1.2}.access-status{letter-spacing:.08em;text-transform:uppercase;flex:none;align-items:center;gap:1.2cqi;font-size:2.9cqi;font-weight:800;display:inline-flex}.access-led{aspect-ratio:1;border:1.5px solid var(--ink);border-radius:50%;width:2.6cqi}.access .granted .access-led{background:radial-gradient(circle at 35% 35%,#c9f7d3,#2fb355 60%)}.access .pending .access-led{background:radial-gradient(circle at 35% 35%,#fff1b8,#f0a920 60%);animation:1.4s ease-in-out infinite led-blink}@keyframes led-blink{50%{opacity:.35}}.access-bar{border:1.5px solid var(--ink);background:#fff;border-radius:999px;height:1.6cqi;margin-top:1cqi;display:block;overflow:hidden}.access-bar i{background:repeating-linear-gradient(-45deg, var(--butter) 0 4px, #e9c45a 4px 8px);height:100%;display:block}.badge-back-main{align-items:center;gap:5cqi;margin-top:2cqi;display:flex}.badge-seal{aspect-ratio:1;flex:none;place-items:center;width:22cqi;display:grid}.badge-seal img{object-fit:contain;width:100%;height:100%}.badge-back-info{flex:1;gap:1cqi;margin:0;padding:0;font-size:3.8cqi;font-weight:700;list-style:none;display:grid}.badge-back-info li{border-bottom:1.5px dashed #000a1a40;padding-bottom:.6cqi}.badge-back-info small{letter-spacing:.12em;text-transform:uppercase;opacity:.55;font-size:2.4cqi;font-weight:600;display:block}.badge-sign{cursor:var(--cursor-pen);flex:none;margin-top:3cqi;position:relative}.badge-sign canvas{touch-action:none;background:repeating-linear-gradient(-30deg,#f8fafd 0 3px,#eaf0f8 3px 6px);border:1.5px solid #000a1a73;border-radius:1.6cqi;width:100%;height:12cqi;display:block}.badge-sign-hint{height:12cqi;color:var(--blue);white-space:nowrap;opacity:.75;pointer-events:none;align-items:center;font-size:5.6cqi;display:flex;position:absolute;top:0;left:3cqi;rotate:-2deg}.badge-sign-foot{letter-spacing:.12em;text-transform:uppercase;min-height:4cqi;color:var(--ink);justify-content:space-between;align-items:center;margin-top:.6cqi;font-size:2.5cqi;display:flex}.badge-sign-foot small{font-size:inherit;opacity:.65}.badge-sign-foot button{color:var(--blue);font:inherit;letter-spacing:inherit;text-transform:inherit;background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}.badge-contact{flex:none;gap:2.2cqi;width:fit-content;margin:3cqi auto 0;display:grid}.badge-contact a{border:2.5px solid var(--ink);--lit:var(--blue);min-height:12.4cqi;color:var(--ivory);cursor:pointer;border-radius:3cqi;justify-content:center;align-items:center;gap:2.6cqi;padding:0 6cqi;font-size:5cqi;font-weight:800;text-decoration:none;transition:translate .15s;display:flex}.badge-contact a:nth-child(2){--lit:var(--pink);color:var(--ink)}.badge-contact a:nth-child(3){--lit:var(--butter);color:var(--ink)}.badge-contact svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:6cqi}.badge-contact a:hover,.badge-contact a:focus-visible{translate:-.4cqi -.6cqi}.badge-small-print{color:var(--ink);text-align:center;opacity:.6;margin:1.4cqi 0 0;font-size:2.7cqi;font-style:italic}@keyframes swing{0%,to{rotate:1.2deg}50%{rotate:-1.2deg}}@keyframes badge-drop{0%{translate:-50% calc(-100% - var(--reach,0px));animation-timing-function:cubic-bezier(.5,0,.85,.5);rotate:-5deg}36%{translate:-50% calc(var(--pull) + 1.5cqi);animation-timing-function:ease-out;rotate:6deg}52%{translate:-50% calc(var(--pull) - 1cqi);animation-timing-function:ease-in-out;rotate:-4.5deg}68%{translate:-50% var(--pull);animation-timing-function:ease-in-out;rotate:3deg}84%{animation-timing-function:ease-in-out;rotate:-1.8deg}to{rotate:1.2deg}}@keyframes badge-fall{0%{translate:-50% var(--pull);rotate:0deg}14%{translate:-50% calc(var(--pull) - 40px);rotate:-3deg}85%{opacity:1}to{translate:-50% calc(var(--pull) + 140vh);opacity:0;rotate:14deg}}@keyframes badge-rehang{0%{translate:-50% calc(-100% - var(--reach,0px));rotate:-3deg}}.monogram{font-family:var(--display);color:var(--ink);place-items:center;font-size:14cqi;font-weight:800;display:grid}@keyframes float{50%{translate:0 -14px}}.sparkle{z-index:2;width:38px;fill:var(--butter);stroke:var(--ink);stroke-width:2px;animation:2.4s ease-in-out infinite twinkle;position:absolute}@keyframes twinkle{0%,to{opacity:.25;scale:.7}50%{opacity:1;scale:1.1}}.about-grid{grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:56px;margin-bottom:72px;display:grid}.statement{margin:0 0 32px;font-size:clamp(1.35rem,2.6vw,2.05rem);font-weight:500;line-height:1.4}.statement:nth-child(2){padding-left:clamp(0px,6vw,80px)}.sticky-note{background:var(--butter);color:var(--ink);font-family:var(--pen);margin-top:24px;padding:30px 26px 28px;font-size:1.75rem;line-height:1.1;transition:rotate .3s,scale .3s;position:relative;rotate:3deg;box-shadow:0 16px 30px -18px #000a1a99}.sticky-note:before{content:"";background:#dfa4b8cc;width:96px;height:28px;position:absolute;top:-14px;left:50%;translate:-50%;rotate:-4deg}.sticky-note.in{animation:2.4s .9s note-press}.note-hand{transform-origin:7.5% 1.5%;opacity:0;pointer-events:none;width:160px;position:absolute;top:-16px;left:calc(50% + 4px);rotate:-80deg}.sticky-note.in .note-hand{animation:2.4s cubic-bezier(.4,0,.3,1) .9s both hand-stick}@keyframes hand-stick{0%{opacity:0;translate:170px -150px}10%{opacity:1}32%,52%{translate:0}40%,60%{translate:-5px 6px}70%{opacity:1;translate:0}to{opacity:0;translate:190px -170px}}@keyframes note-press{0%,36%,48%,56%,to{scale:1}40%,60%{scale:.97}}.sticky-note:hover{rotate:-1deg;scale:1.04}.sticky-note p{color:var(--blue);margin:0 0 12px;font-size:2.2rem}.sticky-note ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.sticky-note .nav-arrow.pen-arrow{fill:none;stroke:#000;stroke-width:2.2px;stroke-linecap:round;margin:0 .3em 0 0}.journey-section{padding-top:40px}.journey-intro{max-width:40ch;margin:-24px 0 72px;font-size:clamp(1.2rem,2.2vw,1.6rem);font-weight:500}.journey-lead{max-width:40ch}.journey-line{--fill:0px;position:relative}.journey-road{background:repeating-linear-gradient(var(--cream-deep) 0 14px, transparent 14px 24px);border-radius:999px;width:8px;position:absolute;top:0;bottom:0;left:18px;translate:-50%}.journey-traveller{display:none}.journey-pin{width:34px;animation:1.6s ease-in-out infinite pin-hop;display:block;overflow:visible}.journey-pin path{fill:var(--pink);stroke:var(--plum);stroke-width:3px}.journey-pin circle{fill:var(--paper);stroke:var(--plum);stroke-width:3px}@keyframes pin-hop{50%{translate:0 -6px}}.journey-stops{margin:0;padding:0;list-style:none}.stop{grid-template-columns:minmax(0,1fr);grid-template-areas:"art""card";row-gap:48px;padding:72px 0 40px 52px;display:grid;position:relative}.stop-when{z-index:2;border:2.5px solid var(--plum);background:var(--paper);color:var(--ink);font-family:var(--display);white-space:nowrap;box-shadow:3px 3px 0 var(--pink);border-radius:999px;padding:6px 14px;font-size:.85rem;font-weight:600;position:absolute;top:24px;left:52px;rotate:-4deg}.stop.flip .stop-when{rotate:4deg}.journey-section.sideways{padding-block:0}.sideways .journey-sticky{align-items:center;width:100vw;height:100vh;margin-left:calc(50% - 50vw);display:flex;position:sticky;top:0;overflow:hidden}.sideways .journey-track{will-change:translate;align-items:center;gap:8vw;width:max-content;padding:80px 30vw 0 max(16px,50vw - 600px);display:flex}.sideways .journey-lead{flex:none;width:min(460px,34vw)}.journey-hint{color:var(--charcoal);margin:28px 0 0;font-size:1.8rem;rotate:-3deg}.journey-hint .nav-arrow.pen-arrow{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;animation:1.2s ease-in-out infinite hint-nudge}.sideways .journey-road{background:repeating-linear-gradient(90deg, var(--cream-deep) 0 14px, transparent 14px 24px);width:auto;height:8px;inset:17px 0 auto;translate:0 -50%}.sideways .journey-road:after{content:"";width:clamp(0px, var(--fill), 100%);border-radius:inherit;background:linear-gradient(90deg, var(--pink), var(--butter), var(--blue));position:absolute;inset:0 auto 0 0}.sideways .journey-traveller{z-index:3;top:17px;left:clamp(0px, var(--fill), 100%);display:block;position:absolute;translate:-50% -100%}.sideways .journey-stops{gap:8vw;display:flex}.sideways .stop{--enter:1;flex:none;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);grid-template-areas:"art card";align-items:center;column-gap:48px;width:min(980px,70vw);padding:64px 0 0}.sideways .stop-when{top:0;left:0;translate:0}.sideways .postcard{--late:clamp(0, var(--enter) * 1.4 - .1, 1);opacity:var(--late);transform:translateX(calc((1 - var(--late)) * 40vw)) rotate(calc((1 - var(--late)) * 24deg))}.sideways .stop-card{--later:clamp(0, var(--enter) * 1.6 - .6, 1);opacity:var(--later);transform:translateX(calc((1 - var(--later)) * 55vw)) rotate(calc((1 - var(--later)) * -6deg))}.sideways .journey-end{flex:none;margin:72px 0 0}.postcard{border:2.5px solid var(--plum);background:var(--paper);box-shadow:10px 10px 0 var(--pink);border-radius:14px;grid-area:art;margin:0;padding:12px 12px 52px;transition:rotate .4s,scale .4s;position:relative}.postcard.in{rotate:var(--r)}.postcard:hover{rotate:0deg;scale:1.02}.postcard-art{border:2.5px solid var(--ink);border-radius:8px;overflow:hidden}.scene{width:100%;height:auto;display:block}.postcard figcaption{color:var(--blue);font-size:2rem;position:absolute;bottom:10px;left:22px;rotate:-2deg}.postcard-stamp{background:var(--paper);width:62px;height:72px;filter:drop-shadow(0 0 0 var(--ink));place-items:center;display:grid;position:absolute;top:-18px;right:22px;rotate:6deg;-webkit-mask:radial-gradient(5px,#0000 98%,#000) -5px -5px/12px 12px round;mask:radial-gradient(5px,#0000 98%,#000) -5px -5px/12px 12px round}.postcard-stamp:before{content:"";border:2px solid var(--ink);position:absolute;inset:7px}.postcard-stamp .flag{width:38px;box-shadow:0 0 0 1.5px var(--ink)}.postcard-postmark{color:#000a1aa6;width:78px;height:78px;font-family:var(--display);text-align:center;text-transform:uppercase;pointer-events:none;border:2.5px dashed #000a1a8c;border-radius:50%;place-content:center;justify-items:center;font-size:.55rem;font-weight:600;line-height:1.3;display:grid;position:absolute;top:8px;right:74px;rotate:-14deg}.stop-card{background:var(--cream-deep);border-radius:24px;grid-area:card;padding:clamp(24px,3vw,36px)}.reveal.slide.from-left:not(.in){transform:translate(-64px)rotate(-2deg)}.stop-place{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 12px;font-size:.8rem;font-weight:700}.stop-num{background:var(--accent);color:var(--cream);border-radius:999px;margin-right:6px;padding:2px 8px}.stop-card h3{letter-spacing:-.03em;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.1;position:relative}.stop-note{vertical-align:middle;margin-left:14px;font-size:.8em;display:inline-block;rotate:-5deg}.stop-text{margin:16px 0 24px;font-size:1.05rem}.stop-stats{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.stop-stats li{border:2px solid var(--plum);background:var(--cream);border-radius:16px;min-width:120px;padding:12px 18px;transition:rotate .2s,translate .2s;display:grid}.stop-stats li:nth-child(odd){box-shadow:4px 4px 0 var(--butter)}.stop-stats li:nth-child(2n){box-shadow:4px 4px 0 var(--pink)}.stop-stats li:hover{translate:0 -3px;rotate:-3deg}.stop-stats strong{font-family:var(--display);font-size:1.6rem;font-weight:800;line-height:1.1}.stop-stats span{letter-spacing:.06em;text-transform:uppercase;color:var(--plum-soft);font-size:.8rem;font-weight:700}.stop-footnote{color:var(--plum-soft);margin:16px 0 0;font-size:.85rem}.stop-card .text-link{margin-top:20px;display:inline-block}.journey-end{--flight:path("M30 128C80 130 96 84 132 82S176 120 196 96 214 30 250 16");width:260px;height:150px;margin:8px auto 0;position:relative}.journey-end.reveal{opacity:1;transform:none}.journey-end-text{color:var(--charcoal);white-space:nowrap;margin:0;font-size:2.4rem;position:absolute;bottom:-28px;left:-40px;rotate:-3deg}.end-dots span{display:inline-block}.journey-end.in .end-dots span{animation:1.4s ease-in-out infinite dot-hop}.end-dots span:nth-child(2){animation-delay:.15s}.end-dots span:nth-child(3){animation-delay:.3s}@keyframes dot-hop{0%,60%,to{translate:0}30%{translate:0 -.3em}}.end-trail{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.end-trail path{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:2 9;clip-path:inset(0 100% 0 0)}.journey-end.in .end-trail path{animation:4.5s ease-in-out infinite trail-grow}@keyframes trail-grow{0%{clip-path:inset(0 100% 0 0);opacity:1}55%{clip-path:inset(0)}80%{opacity:1}to{clip-path:inset(0);opacity:0}}.end-plane{offset-path:var(--flight);offset-rotate:auto;offset-distance:0%;opacity:0;width:34px;height:26px;position:absolute;top:0;left:0}.end-plane svg{width:100%;height:100%;display:block;overflow:visible}.plane-top{fill:var(--ivory);stroke:var(--ink);stroke-width:2px;stroke-linejoin:round}.plane-fold{fill:var(--pink);stroke:var(--ink);stroke-width:2px;stroke-linejoin:round}.journey-end.in .end-plane{animation:4.5s ease-in-out infinite plane-fly}@keyframes plane-fly{0%{offset-distance:0%;opacity:0;scale:.6}8%{opacity:1;scale:1}55%{offset-distance:100%;opacity:1}62%,to{offset-distance:100%;opacity:0;scale:1.2}}@media (prefers-reduced-motion:reduce){.journey-end.in .end-dots span,.journey-end.in .end-trail path,.journey-end.in .end-plane{animation:none}.end-trail path{clip-path:none}.end-plane{opacity:1;offset-distance:100%}}.scene .sprout{transform-box:fill-box;transform-origin:50% 100%;transition:transform .8s cubic-bezier(.3,1.6,.5,1);transition-delay:var(--d,0s);transform:scale(0)}.postcard.in .sprout{transform:none}.scene .scene-label{font-family:var(--display);font-size:8px;font-weight:800}.scene .scene-pen{font-family:var(--pen);font-size:15px}.scene .scene-pen.small{font-size:11.5px}.scene .drift{animation:14s ease-in-out infinite alternate drift}.scene .drift.slow{animation-duration:20s;animation-direction:alternate-reverse}@keyframes drift{to{transform:translate(60px)}}.scene .glow{transform-box:fill-box;transform-origin:50%;animation:4s ease-in-out infinite glow}@keyframes glow{50%{transform:scale(1.08)}}.scene .flap{transform-box:fill-box;transform-origin:50%;animation:.9s ease-in-out infinite flap}.scene .flap.late{animation-delay:-.4s}@keyframes flap{50%{transform:scaleY(.3)}}.scene .birds{animation:10s ease-in-out infinite alternate birds}@keyframes birds{to{translate:40px -10px}}.scene .beam{transform-box:view-box;transform-origin:431px 48px;animation:4s ease-in-out infinite alternate beam}@keyframes beam{0%{transform:rotate(-14deg)}to{transform:rotate(14deg)}}.scene .roll{animation:3s linear infinite roll}.scene .roll.slow{animation-duration:4.5s;animation-direction:reverse}@keyframes roll{to{transform:translate(40px)}}.scene .bob{transform-box:fill-box;transform-origin:50% 100%;animation:3s ease-in-out infinite bob-boat}@keyframes bob-boat{25%{transform:translateY(2px)rotate(2deg)}75%{transform:translateY(-1px)rotate(-2deg)}}.scene .leap{transform-box:fill-box;transform-origin:50%;animation:5s ease-in-out infinite leap}@keyframes leap{0%,55%{transform:translate(-30px,34px)rotate(-30deg)}75%{transform:translateY(-4px)rotate(0)}95%,to{transform:translate(30px,34px)rotate(40deg)}}.scene .wave-flag{transform-box:fill-box;transform-origin:0;animation:1.2s ease-in-out infinite alternate wave-flag}@keyframes wave-flag{to{transform:scaleX(.7)skewY(-6deg)}}.scene .sway{transform-box:fill-box;transform-origin:50% 100%;animation:4s ease-in-out infinite sway}.decor-clock,.decor-lamp{aspect-ratio:1}.decor-lamp img{width:100%;height:100%;position:absolute;inset:0}.lamp-on{animation:6s step-end infinite lamp-flicker}@keyframes lamp-flicker{0%,38%{opacity:1}39%{opacity:0}41%{opacity:1}43%{opacity:0}45%{opacity:1}46%,60%{opacity:0}61%{opacity:1}63%{opacity:0}65%,to{opacity:1}}@media (prefers-reduced-motion:reduce){.lamp-on{animation:none}}.decor-clock img,.decor-clock svg{width:100%;height:100%;position:absolute;inset:0}.decor-clock .hand{transform-origin:187.5px 187.5px}.decor-clock .hour rect,.decor-clock .minute rect{fill:#a8788c}.decor-clock .second{transition:transform .25s cubic-bezier(.3,1.8,.5,1)}.decor-clock .second rect,.decor-clock .second circle{fill:#e0507e}.decor-clock .hub{fill:#fbf8f1;stroke:#a8788c;stroke-width:2.5px}@keyframes sway{50%{transform:rotate(1.5deg)}}.scene .toss{transform-box:fill-box;transform-origin:50%;animation:3.2s ease-in-out infinite toss}@keyframes toss{0%,to{opacity:0;transform:translateY(50px)rotate(0)}15%{opacity:1}50%{transform:translateY(-6px)rotate(200deg)}85%{opacity:1}}.scene .twinkle{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite twinkle-star}.scene .twinkle:nth-of-type(2n){animation-delay:-1.2s}@keyframes twinkle-star{50%{opacity:.6;transform:scale(.5)rotate(45deg)}}.scene .fly{animation:11s linear infinite fly}@keyframes fly{0%{transform:translate(-260px,30px)}to{transform:translate(300px,-30px)}}.scene .spin{transform-box:view-box;transform-origin:451px 182px;animation:6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=899px){.postcard{margin-top:28px}.postcard figcaption{font-size:1.45rem}.postcard-postmark{display:none}.reveal.slide.from-left:not(.in){transform:translate(64px)rotate(2deg)}}@media (prefers-reduced-motion:reduce){.scene .sprout{transform:none}.journey-traveller{display:none}}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:56px;display:flex}.section-head .title{margin:0}.more-link{color:var(--accent);flex-direction:column;align-items:flex-end;gap:6px;font-weight:700;text-decoration:none;display:flex}.more-link .pen{color:var(--plum-soft);font-size:1.7rem;rotate:-4deg}.more-stamp{aspect-ratio:1;border:2.5px solid var(--plum);--lit:var(--butter);border-radius:50%;place-items:center;width:168px;transition:rotate .4s cubic-bezier(.3,1.8,.5,1),scale .4s cubic-bezier(.3,1.8,.5,1);display:grid;position:relative;rotate:8deg}.more-ring{width:100%;height:100%;animation:24s linear infinite ring-spin;position:absolute;inset:0;overflow:visible}.more-ring text{fill:var(--ink);font-family:var(--display);font-size:12.5px;font-weight:800}.more-core{aspect-ratio:1;border:2.5px solid var(--ink);--lit:var(--blue);width:86px;color:var(--ivory);font-family:var(--display);border-radius:50%;align-content:center;justify-items:center;line-height:1;transition:rotate .4s cubic-bezier(.3,1.8,.5,1);display:grid;position:relative}.more-core strong{font-size:1.6rem}.more-core small{letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:700}.more-core .nav-arrow.inline{vertical-align:0;width:1.4rem;height:1.4rem;fill:var(--butter);stroke:var(--ink);stroke-width:2.4px;margin:3px 0 0}.more-link:hover .more-stamp{rotate:-6deg;scale:1.08}.more-link:hover .more-ring{animation-play-state:paused}.more-link:hover .more-core{--lit:var(--pink);color:var(--ink);animation:.5s ease-in-out core-wobble}@keyframes ring-spin{to{rotate:360deg}}@keyframes core-wobble{30%{rotate:-14deg}60%{rotate:10deg}}@media (prefers-reduced-motion:reduce){.more-ring,.more-link:hover .more-core{animation:none}}.featured{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;display:grid}.card{background:var(--cream-deep);border:2px solid var(--plum);box-shadow:6px 6px 0 var(--plum);border-radius:22px;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.card:hover{box-shadow:10px 10px 0 var(--pink)}.thumb{aspect-ratio:16/10;background:var(--plum);border-bottom:2px solid var(--plum);position:relative;overflow:hidden}.thumb img{object-fit:cover;object-position:top;width:100%;height:100%;transition:scale .5s;display:block}.card:hover .thumb>img{scale:1.05}.thumb-empty{place-items:center;display:grid}.thumb-empty span{font-family:var(--display);opacity:.35;font-size:4rem;font-weight:800;transition:scale .4s cubic-bezier(.3,1.6,.5,1),rotate .4s}.card:hover .thumb-empty span{rotate:-8deg;scale:1.2}.card-body{flex-direction:column;flex:1;padding:24px;display:flex}.card h3{letter-spacing:-.02em;margin-bottom:12px;font-size:1.3rem;font-weight:800;line-height:1.15}.card-desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 20px;display:-webkit-box;overflow:hidden}.card-more{border:2px solid var(--plum);background:var(--paper);color:var(--ink);box-shadow:3px 3px 0 var(--accent);border-radius:999px;align-self:flex-start;align-items:center;gap:12px;margin-top:auto;padding:5px 5px 5px 18px;font-weight:700;transition:rotate .3s cubic-bezier(.3,1.8,.5,1),background .3s,box-shadow .3s;display:inline-flex}.card-more-text{height:1.6em;display:grid;overflow:hidden}.card-more-text>span{align-items:center;height:1.6em;transition:translate .4s cubic-bezier(.6,0,.2,1);display:flex}.card-more-text .pen{height:1.18519em;color:var(--blue);font-size:1.35em}.card-more-arrow{border:2px solid var(--plum);background:var(--accent);border-radius:50%;place-items:center;width:34px;height:34px;display:grid;overflow:hidden}.card-more-arrow .nav-arrow.inline{vertical-align:0;width:24px;height:24px;fill:var(--butter);stroke:var(--plum);margin:0}.card:hover .card-more{background:var(--butter);color:var(--ink);box-shadow:5px 5px 0 var(--pink);rotate:-4deg}.card:hover .card-more-text>span{translate:0 -100%}.card:hover .card-more-arrow .nav-arrow{animation:.6s cubic-bezier(.5,0,.3,1) arrow-zip;translate:0}@keyframes arrow-zip{45%{translate:180%}46%{translate:-180%}to{translate:0}}.butter,.pink{color:var(--ink)}.butter{background:var(--butter)}.pink{background:var(--pink)}.blue{background:var(--blue);color:var(--paper)}.plum{background:var(--plum);color:var(--cream)}.skills-section{position:relative}.desk-pin{height:420vh}.desk-stage{justify-content:center;align-items:center;width:100vw;height:100vh;margin-left:calc(50% - 50vw);display:flex;position:sticky;top:0;overflow:clip}.desk-title{z-index:3;max-width:1680px;opacity:var(--title,1);pointer-events:none;margin-inline:auto;padding-inline:clamp(16px,4vw,72px);position:absolute;top:clamp(90px,14vh,140px);left:0;right:0}@media (prefers-reduced-motion:reduce){.desk-pin{height:auto}.desk-stage{position:relative}}.desk{--u:1;--slab:#d9a066;--slab-edge:#b86f50;--wood:#e8bf7a;--wood-dark:#6b4228;width:calc(var(--u) * 3000px);height:calc(var(--u) * 1800px);will-change:transform;flex:none;position:relative}:root[data-theme=dark] .desk{--slab:#b8804e;--slab-edge:#94563f;--wood:#c9a063;--wood-dark:#523220}.desk-wall{z-index:3;pointer-events:none;position:absolute;inset:0}.desk-wall .decor{bottom:calc(var(--u) * 824px);-webkit-user-select:none;user-select:none;height:auto;position:absolute}.decor-lamp{left:calc(var(--u) * 30px);width:calc(var(--u) * 660px)}.desk-wall .decor-pens{left:calc(var(--u) * 585px);width:calc(var(--u) * 250px);bottom:calc(var(--u) * 816px)}.decor-bottle{left:calc(var(--u) * 1900px);width:calc(var(--u) * 400px)}.decor-coffee{left:calc(var(--u) * 2150px);width:calc(var(--u) * 330px)}.decor-plant{left:calc(var(--u) * 2400px);width:calc(var(--u) * 560px);transform-origin:50% 100%;animation:5s ease-in-out infinite sway}.desk-wall .decor-clock{left:calc(var(--u) * 2000px);width:calc(var(--u) * 420px);bottom:calc(var(--u) * 1360px)}.monitor{z-index:1;left:50%;bottom:calc(var(--u) * 826px);width:calc(var(--u) * 880px);flex-direction:column;align-items:center;display:flex;position:absolute;translate:-50%}.monitor-bezel{width:100%;padding:calc(var(--u) * 16px);background:#1c2027;border-radius:16px;box-shadow:0 18px 40px #000a1a4d}.screen{background:var(--blue);color:#000a1a;border-radius:6px;flex-direction:column;gap:14px;height:560px;padding:18px 18px 14px;font-size:17px;display:flex;position:relative;overflow:hidden}.screen-window{background:#fffdf8;border-radius:14px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden;box-shadow:0 14px 34px #000a2859}.screen-bar{background:linear-gradient(#fff,#f4efe3);border-bottom:1px solid #000a1a14;align-items:center;gap:14px;padding:10px 14px;font-size:.8em;font-weight:600;display:flex}.screen-bar .dots{gap:6px;display:flex}.screen-bar .dots i{background:#f08fb0;border-radius:50%;width:11px;height:11px}.screen-bar .dots i:nth-child(2){background:#f7c948}.screen-bar .dots i:nth-child(3){background:#4fc08d}.screen-path{opacity:.6}.screen-body{flex:1;grid-template-columns:minmax(150px,30%) 1fr;min-height:0;display:grid}.screen-side{background:#f6f2ea;border-right:1px solid #000a1a14;flex-direction:column;gap:0;padding:0;display:flex}.screen-side button{width:100%;color:inherit;font:inherit;text-align:left;cursor:var(--cursor-pen-click);background:0 0;border:0;border-bottom:1px solid #000a1a1f;border-radius:0;align-items:center;gap:10px;padding:14px;font-weight:600;transition:background .2s;display:flex}.screen-side button:hover{background:#fff9}.screen-side button.on{--lit:#fff}.side-icon{background:var(--c);width:2.1em;height:2.1em;color:var(--on);font-family:var(--display);letter-spacing:-.06em;border-radius:10px;flex:none;place-items:center;font-size:.72em;font-weight:800;transition:rotate .25s cubic-bezier(.3,1.8,.5,1);display:grid}.screen-side button:hover .side-icon,.screen-side button.on .side-icon{rotate:-8deg}.side-name{flex:1;line-height:1.2}.screen-main{background:radial-gradient(circle at 100% 0, color-mix(in srgb, var(--c,#5b7bea) 16%, transparent), transparent 55%), #fffdf8;padding:clamp(16px,2.6vw,30px);position:relative;overflow:hidden}.screen-main h3{letter-spacing:-.02em;margin:0 0 30px;font-size:1.8em;font-weight:800;animation:.35s ease-out both screen-in}.screen-main ul{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.screen-main li{background:color-mix(in srgb, var(--c) 24%, #fff);animation:.4s cubic-bezier(.3,1.5,.5,1) both screen-in;animation-delay:calc(var(--k) * 45ms);border-radius:999px;padding:12px 20px;font-size:1.1em;font-weight:600;transition:background .2s,color .2s,translate .2s,rotate .2s}.screen-main li:nth-child(3n+2){background:color-mix(in srgb, var(--c) 38%, #fff)}.screen-main li:hover{background:var(--c);color:var(--on);translate:0 -3px;rotate:-3deg}@keyframes screen-in{0%{opacity:0;translate:0 8px;scale:.94}}.screen-main li.linked{--lit:color-mix(in srgb, var(--c) 38%, #fff);padding:0}.screen-main li.linked:hover{--lit:var(--c)}.screen-main li.linked a{color:inherit;padding:12px 20px;text-decoration:none;display:block}.desk:not(.zoomed) .screen-main h3,.desk:not(.zoomed) .screen-main li,.desk:not(.zoomed) .screen-status.on{animation:none}.desk:not(.zoomed) .bd{opacity:0}.desk:not(.zoomed) .bd,.desk:not(.zoomed) .bd *{animation-play-state:paused}.bd{transition:opacity .5s}.screen-main>:not(.bd){position:relative}.bd{color:var(--c);opacity:.28;font-family:var(--display);letter-spacing:-.06em;pointer-events:none;font-size:11rem;font-weight:800;line-height:1;position:absolute;bottom:6px;right:20px}.bd-fonts{gap:.1em;font-size:7rem;display:flex}.bd-stack{display:grid}.bd-stack span{opacity:0;grid-area:1/1;animation:2.4s step-end infinite bd-flick}.bd-stack span:first-child{opacity:1}.bd-stack span:nth-child(2){font-family:var(--pen);letter-spacing:0;font-weight:400;animation-delay:.6s}.bd-stack span:nth-child(3){font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:400;animation-delay:1.2s}.bd-stack span:nth-child(4){font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-weight:700;animation-delay:1.8s}.bd-stack:nth-child(2) span{animation-delay:calc(var(--n) * -.8s)}.bd-stack:nth-child(2) span:nth-child(2){animation-delay:-.2s}.bd-stack:nth-child(2) span:nth-child(3){animation-delay:.4s}.bd-stack:nth-child(2) span:nth-child(4){animation-delay:1s}.bd-stack:nth-child(3) span:first-child{animation-delay:1.4s}.bd-stack:nth-child(3) span:nth-child(2){animation-delay:2s}.bd-stack:nth-child(3) span:nth-child(3){animation-delay:.2s}.bd-stack:nth-child(3) span:nth-child(4){animation-delay:.8s}@keyframes bd-flick{0%{opacity:1}25%,to{opacity:0}}.bd-code .caret{background:currentColor;width:.08em;height:.8em;margin-left:.04em;animation:.6s step-end infinite bd-caret;display:inline-block}.bd-code span{animation:3s step-end infinite bd-type;animation-delay:calc(var(--k) * .3s)}@keyframes bd-type{0%{opacity:0}10%,75%{opacity:1}85%,to{opacity:0}}@keyframes bd-caret{50%{opacity:0}}.bd-braces{align-items:center;display:flex}.bd-braces>span{display:inline-block}.bd-braces>span:first-child{animation:2.4s ease-in-out infinite bd-open-left}.bd-braces>span:last-child{animation:2.4s ease-in-out infinite bd-open-right}.bd-braces .dots{font-size:.4em}@keyframes bd-open-left{50%{translate:-.22em}}@keyframes bd-open-right{50%{translate:.22em}}.bd-graph svg,.bd-git svg{width:22rem;display:block;overflow:visible}.bd-graph path,.bd-git path{fill:none;stroke:currentColor;stroke-width:9px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:5s ease-in-out infinite bd-draw}.bd-graph rect{fill:currentColor;opacity:.55;transform-box:fill-box;transform-origin:bottom;animation:5s ease-in-out infinite bd-grow;animation-delay:calc(var(--n) * .12s)}.bd-git .branch{animation-delay:.5s}.bd-git circle{fill:currentColor;transform-box:fill-box;transform-origin:50%;animation:5s ease-in-out infinite bd-pop}.bd-git circle.late{animation-delay:1s}@keyframes bd-draw{0%{stroke-dashoffset:1px;opacity:1}45%,85%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}@keyframes bd-grow{0%{scale:1 0}35%,85%{scale:1}to{opacity:0;scale:1}}@keyframes bd-pop{0%,10%{scale:0}25%,85%{scale:1}to{opacity:0;scale:1}}.screen-status{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#000a1a8c;border-radius:999px;align-self:center;margin:0;padding:8px 20px;font-size:.85em;display:block}.screen-status.on{animation:.3s ease-out used-in}@keyframes used-in{0%{opacity:0;translate:0 4px}}.monitor-neck{width:calc(var(--u) * 76px);height:calc(var(--u) * 44px);background:linear-gradient(90deg,#b9bec6,#e3e6ea,#b9bec6)}.monitor-foot{width:calc(var(--u) * 240px);background:#d6dae0;border-radius:999px 999px 0 0;height:12px}.desk-furniture i{display:block;position:absolute}.desk-furniture{z-index:2;pointer-events:none;position:absolute;inset:0}.desk-slab{left:0;right:0;bottom:calc(var(--u) * 800px);height:calc(var(--u) * 44px);background:linear-gradient(var(--slab) 0 45%, var(--slab-edge) 45%);border-radius:calc(var(--u) * 6px)}.desk-slab:before,.desk-slab:after{content:"";top:calc(var(--u) * 10px);height:calc(var(--u) * 16px);border-radius:calc(var(--u) * 5px);background:#e9ecf0;position:absolute}.desk-slab:before{width:calc(var(--u) * 700px);left:50%;translate:-50%}.desk-slab:after{left:calc(50% + calc(var(--u) * 470px));width:calc(var(--u) * 54px);border-radius:999px}.desk-apron{left:calc(var(--u) * 56px);right:calc(var(--u) * 56px);bottom:calc(var(--u) * 710px);height:calc(var(--u) * 90px);background:var(--slab-edge);box-shadow:inset 0 calc(var(--u) * -8px) 0 #00000024}.desk-leg{background:linear-gradient(90deg, var(--wood-dark), color-mix(in srgb, var(--wood-dark) 75%, #000));border-radius:calc(var(--u) * 4px);bottom:0}.desk-leg.front{width:calc(var(--u) * 60px);height:calc(var(--u) * 800px)}.desk-leg.back{width:calc(var(--u) * 44px);height:calc(var(--u) * 740px);bottom:calc(var(--u) * 60px)}.desk-leg.left.front{left:calc(var(--u) * 90px)}.desk-leg.right.front{right:calc(var(--u) * 90px)}.desk-leg.left.back{left:calc(var(--u) * 250px)}.desk-leg.right.back{right:calc(var(--u) * 250px)}@media (width<=760px){.desk{--u:.6}.screen{height:700px;font-size:22px}.screen-body{grid-template-rows:auto 1fr;grid-template-columns:1fr}.screen-side{border-bottom:1px solid #000a1a1a;border-right:0;flex-flow:wrap;padding:8px}.screen-side button{white-space:nowrap;border-bottom:0;border-radius:8px;flex:none;width:auto;padding:6px 10px;font-size:.8em}.side-name br,.side-icon{display:none}}@media (prefers-reduced-motion:reduce){.decor-plant,.bd *,.bd,.screen-main h3,.screen-main li,.screen-status.on{animation:none}}.projects-head .skill-filter{border:2px solid var(--plum);background:var(--butter);width:fit-content;color:var(--ink);border-radius:999px;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 28px;padding:10px 12px 10px 18px;font-size:1rem;font-weight:500;display:flex}.skill-filter button{border:2px solid var(--ink);--lit:var(--ivory);color:var(--ink);font:inherit;border-radius:999px;padding:6px 14px;font-weight:700;transition:rotate .2s}.skill-filter button:hover{--lit:var(--pink);rotate:-4deg}.contact{text-align:center;padding-block:140px 110px;position:relative}.contact>*{z-index:1;position:relative}.contact-big{letter-spacing:-.05em;margin-bottom:40px;font-size:clamp(3rem,12vw,9rem);font-weight:800;line-height:1}.reveal.zoom{opacity:0;filter:blur(10px);transition:transform 1.3s cubic-bezier(.2,.8,.2,1),opacity .8s,filter 1s;transform:scale(3.4)}.reveal.zoom.in{opacity:1;filter:none;transform:none}@supports (animation-timeline:view()){.reveal.zoom{animation:linear both zoom-in;animation-timeline:view();animation-range:entry cover 45%}}@keyframes zoom-in{0%{opacity:0;filter:blur(10px);transform:scale(3.4)}to{opacity:1;filter:none;transform:none}}.wobble .char{transition:rotate .25s,translate .25s,color .25s}.wobble .char:hover{color:var(--accent);translate:0 -.06em;rotate:10deg}.button.big{padding:18px 36px;font-size:clamp(1rem,2.4vw,1.3rem)}.envelope{--paper-env:#f6dfa0;--paper-env-dark:#e8c873;--w:min(500px, 88vw);width:var(--w);margin:calc(var(--w) * .4) auto 0;container-type:inline-size}.env-body{aspect-ratio:600/380;perspective:1400px;filter:drop-shadow(8px 10px 0 var(--pink));position:relative}.env-back,.env-front{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.env-back{z-index:0}.env-back rect{fill:var(--paper-env-dark);stroke:var(--ink);stroke-width:3px}.env-front{z-index:3}.env-front path{stroke:var(--ink);stroke-width:3px;stroke-linejoin:round}.env-side{fill:var(--paper-env)}.env-bottom{fill:#fbe9b8}.env-letter{z-index:2;border:3px solid var(--ink);background:linear-gradient(90deg, transparent 8cqi, var(--pink) 8cqi calc(8cqi + 2px), transparent 0), repeating-linear-gradient(transparent 0 calc(7cqi - 1px), #c9d6ee calc(7cqi - 1px) 7cqi), var(--ivory);height:90%;color:var(--ink);text-align:left;border-radius:8px;padding:7cqi 7cqi 0 11cqi;transition:translate .5s cubic-bezier(.5,0,.7,.4);position:absolute;top:6%;left:6%;right:6%;translate:0 4%}.env-hi,.env-sign{color:var(--charcoal);margin:0;font-size:5.4cqi;line-height:7cqi}.env-sign{color:#36393d;text-align:right;padding-right:4cqi}.env-hi{color:#36393d}.env-email{color:var(--blue);text-decoration:underline;-webkit-text-decoration-color:var(--pink);text-decoration-color:var(--pink);text-underline-offset:6px;font-size:7.6cqi;line-height:7cqi;display:inline-block;rotate:-2deg}.env-email:hover{color:var(--ink);-webkit-text-decoration-color:var(--blue);text-decoration-color:var(--blue)}.env-flap{z-index:4;transform-origin:50% 0;height:60%;transition:transform .6s cubic-bezier(.5,0,.3,1) .4s,z-index 0s .7s;position:absolute;top:0;left:0;right:0}.env-flap svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.env-flap path{stroke:var(--ink);stroke-width:3px;stroke-linejoin:round}.flap-out path{fill:var(--paper-env)}.flap-in{opacity:0}.flap-in path{fill:var(--paper-env-dark)}.flap-out,.flap-in,.env-seal{transition:opacity 0s .7s}.env-seal{aspect-ratio:1;border:3px solid var(--ink);background:radial-gradient(circle at 35% 30%, #f2c3d3, var(--pink) 60%);border-radius:46% 54% 50% 50%/52% 48%;place-items:center;width:15cqi;display:grid;position:absolute;bottom:-6cqi;left:50%;translate:-50%;box-shadow:inset 0 0 0 1.4cqi #000a1a1f}.env-seal img{width:68%;height:auto;display:block;rotate:-8deg}.env-hint{z-index:5;color:var(--ink);background:var(--ivory);border:2.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink);pointer-events:none;border-radius:999px;padding:.15em .7em .05em;font-size:clamp(1.4rem,6cqi,2.1rem);transition:scale .3s cubic-bezier(.3,1.6,.5,1);position:absolute;top:-6%;right:-4%;rotate:8deg;scale:0}.envelope.shut:not(.open) .env-hint{transition-delay:1s;animation:2.4s ease-in-out 1.3s infinite hint-wiggle;scale:1}@keyframes hint-wiggle{0%,70%,to{rotate:8deg}78%{rotate:-4deg}86%{rotate:12deg}93%{rotate:4deg}}.env-body:focus-visible{outline:3px dashed var(--accent);outline-offset:8px;border-radius:14px}.envelope.open .env-flap{z-index:1;transition:transform .7s cubic-bezier(.5,0,.3,1),z-index 0s .35s;transform:rotateX(180deg)}.envelope.open .flap-out,.envelope.open .env-seal{opacity:0;transition-delay:.35s}.envelope.open .flap-in{opacity:1;transition-delay:.35s}.envelope.open .env-letter{transition:translate .9s cubic-bezier(.3,1.3,.5,1) .55s;translate:0 -58%}.env-links{flex-wrap:wrap;justify-content:center;gap:18px;margin-top:44px;display:flex}.pop{transform-origin:50% 100%;display:inline-block}.envelope:not(.open) .pop{opacity:0}.envelope.open .pop{animation:pop-out 1.4s calc(1.2s + var(--d)) backwards}@keyframes pop-out{0%{opacity:0;transform:translate(var(--from), -42cqi) scale(.3);animation-timing-function:cubic-bezier(0,.55,.45,1)}10%{opacity:1}32%{transform:translate(calc(var(--from) * .5), -64cqi) scale(1) rotate(calc(var(--from) * -.1deg));animation-timing-function:cubic-bezier(.55,0,1,.45)}62%{animation-timing-function:cubic-bezier(0,.55,.45,1);transform:translate(0)scale(1.2,.78)}78%{animation-timing-function:cubic-bezier(.55,0,1,.45);transform:translateY(-36px)scale(.95,1.06)}90%{transform:translateY(0)scale(1.06,.94)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.envelope .env-flap,.envelope .env-letter,.envelope .flap-out,.envelope .flap-in,.envelope .env-seal,.envelope.open .env-flap,.envelope.open .env-letter,.envelope.open .flap-out,.envelope.open .flap-in,.envelope.open .env-seal{transition:none}.envelope:not(.open) .pop{opacity:1}.envelope.shut:not(.open) .env-hint,.envelope.open .pop{animation:none}}.social{border:2.5px solid var(--ink);color:var(--ink);border-radius:999px;align-items:center;gap:10px;padding:14px 26px;font-size:1.1rem;font-weight:700;text-decoration:none;transition:translate .2s,rotate .2s;display:inline-flex}.social svg:not(.nav-arrow){fill:currentColor;width:24px;height:24px}.social.github{--lit:var(--pink);rotate:-2deg}.social.linkedin{--lit:var(--blue);color:var(--paper);rotate:2deg}.social:hover{translate:-2px -4px;rotate:0deg}.social.cv{--lit:var(--butter);rotate:-1deg}.social.cv svg{fill:none}.footer{color:var(--plum-soft);text-align:center;border-top:1.5px solid var(--cream-deep);padding-block:28px;font-size:.85rem}.projects-head{padding-block:72px 48px;position:relative}.ph-title.title{letter-spacing:-.05em;margin-bottom:36px;padding-right:calc(clamp(110px,14vw,160px) + 24px);font-size:clamp(2.8rem,9vw,7.4rem);line-height:.95;display:block}.ph-line{display:block}.ph-box{background:var(--blue);color:var(--paper);border:3px solid var(--plum);box-shadow:.1em .1em 0 var(--pink);transform-origin:0;border-radius:.18em;margin-top:.12em;padding:0 .18em .27em;transition:scale .8s cubic-bezier(.7,0,.2,1) .2s;display:inline-block;rotate:-2deg;scale:0 1}.in .ph-box{scale:1}.ph-box .word{margin-right:0}.ph-title .word{margin-bottom:-.5em;padding-bottom:.5em}.ph-title .char{transform:translateY(170%)}:is(.ph-box,.hero-name,.badge-name) .char-j{position:relative}:is(.ph-box,.hero-name,.badge-name) .char-j:after{content:"";border-bottom:.17em solid;border-right:.235em solid;border-bottom-right-radius:.36em;width:.535em;height:.24em;position:absolute;top:.97em;left:-.25em}.ph-sticker{aspect-ratio:1;background:var(--pink);width:clamp(110px,14vw,160px);color:var(--ink);border:3px solid var(--plum);box-shadow:6px 6px 0 var(--plum);border-radius:50%;place-content:center;justify-items:center;animation:.9s cubic-bezier(.3,1.5,.5,1) .6s both pop-in,4s ease-in-out 1.5s infinite bob;display:grid;position:absolute;top:64px;right:0;rotate:12deg}.ph-sticker strong{font-family:var(--display);font-size:clamp(2.2rem,4vw,3.2rem);line-height:1}.ph-sticker span{font-family:var(--pen);font-size:1.5rem;line-height:1}@keyframes bob{50%{translate:0 -10px;rotate:4deg}}.ph-spark{width:30px;fill:var(--butter);stroke:var(--ink);stroke-width:2px;animation:2.6s ease-in-out infinite twinkle;position:absolute}.ph-spark.a{top:40px;right:clamp(130px,17vw,190px)}.ph-spark.b{width:22px;fill:var(--blue);animation-delay:1s;top:clamp(190px,22vw,250px);right:10px}.projects-head>p{max-width:560px;color:var(--plum-soft);margin:0 0 40px;font-size:1.15rem}.freelance-note+.project-index{margin-top:48px}.freelance-note{width:fit-content;max-width:720px;color:var(--ink);background:var(--butter);border:2.5px solid var(--ink);box-shadow:6px 6px 0 var(--blue);transform-origin:50% 0;border-radius:6px 22px 8px 26px/24px 8px 22px 6px;align-items:center;gap:24px;margin:8px auto 0;padding:24px 32px 24px 24px;animation:5s ease-in-out infinite note-sway;display:flex;position:relative}.freelance-note:hover{animation:.6s ease-in-out note-wiggle}@keyframes note-sway{0%,to{rotate:-1.6deg}50%{rotate:.8deg}}@keyframes note-wiggle{20%{rotate:2.5deg;scale:1.02}45%{rotate:-3deg}70%{rotate:1.5deg}}.freelance-note:before{content:"";background:#dfa4b8bf;border-inline:2px dashed #000a1a4d;width:96px;height:26px;position:absolute;top:-14px;left:50%;translate:-50%;rotate:-3deg}.freelance-stamp{aspect-ratio:1;background:var(--ivory);border:2.5px solid var(--ink);width:112px;box-shadow:3px 3px 0 var(--ink);border-radius:50%;flex-shrink:0;place-items:center;display:grid;position:relative}.freelance-ring{width:100%;height:100%;animation:16s linear infinite ring-spin;position:absolute;inset:0;overflow:visible}.freelance-note:hover .freelance-ring{animation-duration:4s}.freelance-ring text{fill:var(--ink);font-family:var(--body);letter-spacing:.08em;font-size:13.5px;font-weight:700}.freelance-stamp .mini-site{background:var(--ivory);border:2px solid var(--ink);border-radius:5px;flex-direction:column;gap:3px;width:58px;padding-bottom:4px;display:flex;overflow:hidden}.mini-site i{display:block}.mini-bar{background:var(--ink);gap:2px;padding:2px 3px;display:flex}.mini-bar i{background:var(--ivory);border-radius:50%;width:3px;height:3px}.mini-hero,.mini-line,.mini-cards{transform-origin:0;margin-inline:4px;animation:4.5s ease-in-out infinite site-build}.mini-hero{background:var(--blue);border-radius:2px;height:13px;animation-name:site-build-hero}.mini-line{background:var(--pink);border-radius:2px;width:60%;height:3px;animation-delay:.45s}.mini-cards{gap:2px;animation:none;display:flex}.mini-cards i{background:var(--butter);border:1px solid var(--ink);border-radius:1px;flex:1;height:8px;animation:4.5s cubic-bezier(.3,1.5,.5,1) infinite site-pop}.mini-cards i:first-child{animation-delay:.8s}.mini-cards i:nth-child(2){animation-delay:1s}.mini-cards i:nth-child(3){animation-delay:1.2s}@keyframes site-build-hero{0%{scale:0 1}12%,85%{opacity:1;scale:1}95%,to{opacity:0;scale:1}}@keyframes site-build{0%{scale:0 1}12%,75%{opacity:1;scale:1}85%,to{opacity:0;scale:1}}@keyframes site-pop{0%{scale:0}10%,70%{opacity:1;scale:1}80%,to{opacity:0;scale:1}}.freelance-copy p{margin:0}.freelance-psst{color:var(--blue);transform-origin:0;font-size:1.9rem;line-height:1.1;rotate:-2deg}.freelance-copy p:not(.freelance-psst){margin-top:8px;font-size:1.05rem}.freelance-copy .hl{--marker:var(--pink)}.freelance-cta{color:var(--ivory);--lit:var(--ink);border-radius:999px;align-items:center;gap:8px;margin-top:12px;padding:6px 16px;font-weight:700;text-decoration:none;transition:rotate .3s cubic-bezier(.3,1.8,.5,1),scale .3s cubic-bezier(.3,1.8,.5,1);display:inline-flex}.freelance-cta:hover{rotate:-3deg;scale:1.06}.freelance-cta .nav-arrow{animation:1.2s ease-in-out infinite cta-nudge}@keyframes cta-nudge{50%{translate:4px}}.freelance-spark{width:22px;fill:var(--pink);stroke:var(--ink);stroke-width:2px;transition:scale .35s cubic-bezier(.3,1.8,.5,1),translate .35s cubic-bezier(.3,1.8,.5,1);animation:2.6s ease-in-out infinite twinkle;position:absolute}.freelance-spark.a{top:-10px;right:22px}.freelance-spark.b{width:16px;fill:var(--ivory);animation-delay:.8s;bottom:26px;right:-12px}.freelance-spark.c{width:18px;fill:var(--blue);animation-delay:1.5s;bottom:-10px;left:44%}.freelance-note:hover .freelance-spark{scale:1.7}.freelance-note:hover .freelance-spark.a{translate:10px -10px}.freelance-note:hover .freelance-spark.b{translate:12px}.freelance-note:hover .freelance-spark.c{translate:0 12px}@media (width<=560px){.freelance-note{flex-direction:column;align-items:flex-start;padding:24px 20px}}@media (prefers-reduced-motion:reduce){.freelance-note,.freelance-ring,.mini-hero,.mini-line,.mini-cards i,.quote-word span,.freelance-cta .nav-arrow,.freelance-spark{animation:none}}.projects-head>p.grade-note{margin-top:-24px;font-size:.9rem}.project-index{columns:2 280px;column-gap:40px;margin:0;padding:0;list-style:none}.project-index li{break-inside:avoid}.project-index a{border-bottom:1.5px solid var(--cream-deep);align-items:baseline;gap:10px;padding:10px 0;font-weight:500;text-decoration:none;transition:padding .25s,color .25s;display:flex}.project-index a span{font-family:var(--display);color:var(--accent);font-size:.8rem}.project-index em{letter-spacing:.08em;text-transform:uppercase;color:var(--plum-soft);margin-left:auto;font-size:.68rem;font-style:normal;font-weight:700}.project-index a:hover{color:var(--accent);padding-left:10px}.project-entry{border-top:1.5px solid var(--cream-deep);grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);grid-template-areas:"info visual";align-items:start;gap:clamp(32px,5vw,72px);padding-block:120px 90px;display:grid;position:relative}.project-entry.flip{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-template-areas:"visual info"}.project-info{z-index:1;grid-area:info;position:relative}.project-entry.wide{grid-template-columns:minmax(0,1fr);grid-template-areas:"info""visual";gap:clamp(36px,5vw,64px)}.project-entry.wide .project-info{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:start;gap:clamp(32px,6vw,96px);display:grid}.project-entry.wide .project-body{font-size:1.1rem}.project-entry.wide .project-body>p:first-child{margin-top:0}.project-entry.wide .entry-title{margin-bottom:0;font-size:clamp(2.2rem,4.2vw,3.6rem)}.project-entry.wide .visual{translate:0 60px;rotate:0deg;scale:1}.visual{z-index:1;grid-area:visual;position:relative}.project-entry.wide .quote-card{width:min(100%,860px);color:var(--ink);background:var(--ivory);border:2.5px solid var(--plum);box-shadow:7px 7px 0 var(--pink);border-radius:24px;margin-inline:auto;padding:clamp(24px,5vw,48px)}.quote-sentence{margin:0;font-size:clamp(1.35rem,3.1vw,2.1rem);font-weight:700;line-height:1.9}.quote-word{font:inherit;color:var(--ink);--lit:var(--butter);border:2px solid var(--ink);border-radius:999px;padding:0 .5em;line-height:1.5;transition:rotate .25s cubic-bezier(.3,1.8,.5,1),translate .15s;display:inline-block;rotate:-1.5deg}.quote-word span{animation:.35s cubic-bezier(.3,1.8,.5,1) word-pop;display:inline-block}.quote-word.who{--lit:var(--pink);rotate:1deg}.quote-word.feel{color:var(--ivory);--lit:var(--blue);rotate:-1deg}.quote-word.when{rotate:1.5deg}.quote-word:hover{rotate:-4deg}.quote-word:active{translate:2px 2px}@keyframes word-pop{0%{opacity:0;translate:0 .5em;scale:.7}}.quote-actions{flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:28px;display:flex}.quote-actions .button.primary{color:var(--ivory);--lit:var(--ink)}.quote-surprise{font:inherit;color:var(--ink);--lit:var(--cream);border:2px solid var(--ink);border-radius:999px;padding:10px 18px;font-weight:700;transition:rotate .25s cubic-bezier(.3,1.8,.5,1)}.quote-surprise:hover{--lit:var(--butter);rotate:3deg}.quote-fallback{overflow-wrap:anywhere;margin:20px 0 0;font-size:.9rem}.quote-fallback button,.quote-fallback a{font:inherit;color:inherit;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.entry-bignum{z-index:0;font-family:var(--display);letter-spacing:-.06em;color:#0000;-webkit-text-stroke:2px var(--pink);pointer-events:none;font-size:clamp(6rem,15vw,13rem);font-weight:800;line-height:.8;position:absolute;top:16px;left:-.04em}.flip .entry-bignum{left:auto;right:-.04em}.project-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.project-meta{letter-spacing:.08em;text-transform:uppercase;border:1.5px dashed var(--plum-soft);border-radius:999px;padding:6px 12px;font-size:.7rem;font-weight:700;rotate:2deg}.project-badges{align-items:center;gap:10px;display:flex}.project-mark{letter-spacing:.08em;text-transform:uppercase;color:var(--paper);background:var(--blue);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);border-radius:999px;padding:5px 12px;font-size:.72rem;font-weight:700;rotate:-2deg}.project-mark strong{font-family:var(--display);letter-spacing:0;margin-left:4px;font-size:.85rem}.project-mark.pending{color:var(--ink);background:var(--butter)}.project-mark.german{color:var(--ink);background:var(--pink);rotate:2deg}.project-module{color:var(--plum-soft);margin:12px 0 0;font-size:.95rem}.project-module strong{color:var(--plum)}.project-theme{color:var(--ink);background:#f8e1e9;border-radius:14px;padding:14px 18px;font-size:.95rem}.project-tech{margin-bottom:20px}.project-tech h3{letter-spacing:.08em;text-transform:uppercase;color:var(--plum-soft);margin:20px 0 10px;font-size:.8rem;font-weight:700}.stack-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.stack-list li{border:2px solid var(--plum);border-radius:999px;padding:3px 12px;font-size:.9rem;font-weight:600}.tech-notes{margin:0;padding-left:1.2em;font-size:.95rem}.tech-notes li+li{margin-top:6px}.entry-title{letter-spacing:-.03em;margin-bottom:18px;font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:800;line-height:1.05}.entry-note{letter-spacing:0;vertical-align:middle;margin-left:6px;font-size:.75em;display:inline-block;rotate:-6deg}.project-info>p{margin:0 0 24px}.project-entry .project-info{opacity:0;transition:opacity .7s,translate .9s cubic-bezier(.2,.8,.2,1);translate:-70px}.project-entry.flip .project-info{translate:70px}.project-entry .visual{opacity:0;transition:opacity .7s .1s,translate .9s cubic-bezier(.2,.8,.2,1) .1s,rotate .9s cubic-bezier(.2,.8,.2,1) .1s,scale .9s cubic-bezier(.2,.8,.2,1) .1s;translate:90px 40px;rotate:5deg;scale:.9}.project-entry.flip .visual{translate:-90px 40px;rotate:-5deg}.project-entry .entry-bignum{opacity:0;transition:opacity .8s,translate 1s cubic-bezier(.2,.8,.2,1),scale 1s cubic-bezier(.2,.8,.2,1);translate:0 80px;scale:.6}.entry-title .char{transition:transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * 18ms + .15s);transform:translateY(115%)}.entry-note{clip-path:inset(-40% 100% -40% -5%);transition:clip-path 1s cubic-bezier(.5,0,.3,1) .8s}.project-entry.shown .project-info,.project-entry.shown .visual{opacity:1;translate:0;rotate:0deg;scale:1}.project-entry.shown .entry-bignum{opacity:.45;translate:0;scale:1}.project-entry.shown .entry-title .char{transform:none}.project-entry.shown .entry-note{clip-path:inset(-40% -5%)}.terminal{border:2px solid var(--plum);background:var(--ink);color:var(--paper);box-shadow:8px 8px 0 var(--blue);border-radius:16px}.terminal .frame-bar{background:#1a2436;border-radius:14px 14px 0 0}.terminal .frame-count{color:var(--paper)}.terminal-body{min-height:300px;padding:28px 28px 36px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.95rem}.terminal-head{color:var(--pink);margin:0 0 18px}.terminal ul{margin:0 0 14px;padding:0;list-style:none}.terminal li{clip-path:inset(0 100% 0 0);transition:clip-path .8s steps(28) calc(var(--t) * .3s + .7s);margin-bottom:12px}.terminal li:before{content:"> ";color:var(--butter)}.project-entry.shown .terminal li{clip-path:inset(0)}.cursor{vertical-align:middle;background:var(--butter);width:.6em;height:1.1em;animation:1s steps(2,jump-none) infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.no-gui{color:var(--ink);background:var(--butter);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:8px;padding:4px 14px 2px;font-size:1.9rem;position:absolute;bottom:-26px;right:-8px;rotate:-6deg}@media (width<=899px){.project-entry,.project-entry.flip{grid-template-columns:1fr;grid-template-areas:"info""visual"}.project-entry.wide .project-info{grid-template-columns:1fr;gap:20px}.ph-title.title{padding-right:0}.ph-sticker{margin:-12px 0 28px auto;position:static}.ph-spark{display:none}}@media (prefers-reduced-motion:reduce){.project-entry .project-info,.project-entry .visual,.project-entry .entry-bignum{opacity:1;translate:0;rotate:0deg;scale:1}.entry-title .char{transform:none}.entry-note,.terminal li{clip-path:none}.ph-box{scale:1}}.frame-bar{background:var(--plum);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.dots{gap:6px;display:flex}.dots i{background:var(--pink);border-radius:50%;width:10px;height:10px}.dots i:nth-child(2){background:var(--butter)}.dots i:nth-child(3){background:var(--blue)}.frame-count{color:var(--cream);font-size:.75rem;font-weight:700}.carousel{--s:60cqw;--g:2cqw;--ratio:1915 / 962;container-type:inline-size}.carousel.portrait{--s:38cqw;--ratio:710 / 1031}.carousel-stage{position:relative}.carousel-view{touch-action:pan-y;padding:8px 12px 22px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 17% 83%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 17% 83%,#0000 100%)}.carousel-track{gap:var(--g);transform:translateX(calc((100cqw - var(--s)) / 2 - var(--i) * (var(--s) + var(--g)) - 12px));margin:0;padding:0;list-style:none;transition:transform .7s cubic-bezier(.2,.8,.2,1);display:flex}.slide{flex:0 0 var(--s);opacity:.5;transition:opacity .5s,scale .5s;scale:.94}.slide.active{opacity:1;scale:1}.slide-btn{width:100%;aspect-ratio:var(--ratio);background:var(--cream-deep);box-shadow:0 0 0 2.5px var(--plum), 8px 8px 0 var(--pink);cursor:var(--cursor-pen-click);border:0;border-radius:14px;padding:0;display:block;position:relative;overflow:hidden}.slide.active .slide-btn{cursor:var(--cursor-zoom)}.slide-btn img,.slide-btn video{object-fit:cover;object-position:50% 36%;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.slide-empty{width:100%;height:100%;color:var(--plum);background-image:repeating-linear-gradient(-45deg,#0000 0 14px,#000a1a0d 14px 28px);place-content:center;justify-items:center;gap:6px;display:grid}.slide-empty span:first-child{font-family:var(--display);font-size:1.1rem;font-weight:600}.slide-empty .pen{font-size:2.2rem;rotate:-3deg}.carousel-nav{z-index:2;border:2.5px solid var(--plum);--lit:var(--cream);width:52px;height:52px;color:var(--plum);border-radius:50%;place-items:center;padding:0;font-size:1.4rem;font-weight:700;transition:scale .2s,opacity .2s;display:grid;position:absolute;top:calc(50% - 7px);translate:0 -50%}.nav-arrow{width:34px;height:34px;fill:var(--butter);stroke:var(--plum);stroke-width:2.4px;stroke-linejoin:round;margin:auto;transition:translate .2s;display:block;overflow:visible}.lightbox-bar .nav-arrow{width:26px;height:26px}.nav-arrow.left{scale:-1 1}.nav-arrow.inline{vertical-align:-.2em;fill:currentColor;stroke:currentColor;stroke-width:2.6px;width:1.1em;height:1.1em;margin:0 0 0 .15em;display:inline-block}.nav-arrow.out{rotate:-45deg}a:hover .nav-arrow.inline{translate:3px}a:hover .nav-arrow.inline.out{translate:2px -2px}.carousel-nav:hover:not(:disabled) .nav-arrow,.lightbox-bar button:hover .nav-arrow{translate:2px}.carousel-nav:hover:not(:disabled) .nav-arrow.left,.lightbox-bar button:hover .nav-arrow.left{translate:-2px}.carousel-nav.prev{left:2cqw}.carousel-nav.next{right:2cqw}.carousel-nav:hover:not(:disabled){scale:1.1}.carousel-nav:disabled{opacity:.3;cursor:default}.carousel-caption{text-align:center;max-width:62ch;min-height:3.4em;color:var(--plum);margin:8px auto 0;font-size:1.1rem;line-height:1.55}.carousel-dots{justify-content:center;align-items:center;gap:10px;margin-top:14px;display:flex}.carousel-count{letter-spacing:.08em;color:var(--plum-soft);margin-right:8px;font-size:.8rem;font-weight:700}.carousel-dots button{border:2px solid var(--plum);background:0 0;border-radius:999px;width:11px;height:11px;padding:0;transition:width .3s,background .3s}.carousel-dots button.active{background:var(--accent);border-color:var(--accent);width:32px}@media (width<=899px){.carousel{--s:84cqw;--g:3cqw}.carousel.portrait{--s:76cqw}.carousel-nav{width:42px;height:42px}.carousel-caption{font-size:1rem}}.cta{place-items:center;padding-block:110px 150px;display:grid}.cta-card{text-align:center;background:var(--butter);width:min(100%,720px);color:var(--ink);border:3px solid var(--ink);box-shadow:12px 12px 0 var(--pink);border-radius:32px;padding:76px clamp(24px,6vw,80px) 64px;position:relative;rotate:-1.5deg}.eyes{gap:10px;display:flex;position:absolute;top:-36px;left:50%;translate:-50%}.eye{background:var(--paper);border:3px solid var(--ink);border-radius:50%;place-items:center;width:62px;height:62px;display:grid;position:relative;overflow:hidden}.pupil{background:var(--ink);width:24px;height:24px;translate:var(--px,0px) var(--py,0px);border-radius:50%;transition:translate .12s ease-out;position:relative}.pupil:after{content:"";background:var(--paper);border-radius:50%;width:7px;height:7px;position:absolute;top:5px;left:6px}.eye:after{content:"";background:var(--pink);border-bottom:3px solid var(--ink);transform-origin:top;animation:4s ease-in-out infinite blink-lid;position:absolute;inset:0;scale:1 0}@keyframes blink-lid{0%,90%,to{scale:1 0}94%{scale:1}}.cta-title{letter-spacing:-.03em;margin-bottom:32px;font-size:clamp(2rem,5vw,3.4rem);font-weight:800}.cta-title .hl{--marker:var(--pink)}.cta-action{display:inline-block;position:relative}.cta .button.primary{--lit:var(--ink);border-color:var(--ink);color:var(--paper)}.tap{animation:1.4s ease-in-out infinite press}.finger{transform-origin:7.5% 1.5%;width:120px;margin-top:-2px;animation:1.4s ease-in-out infinite tap;position:absolute;top:50%;left:calc(100% + 12px);rotate:-45deg}@keyframes tap{0%,to{translate:0}40%,50%{translate:-18px}}@keyframes press{0%,36%,60%,to{scale:1}42%,50%{scale:.93}}.cta-action:hover .tap,.cta-action:hover .finger{animation-play-state:paused}@media (width<=560px){.finger{width:84px;left:calc(100% + 6px)}.cta-action{margin-right:70px}}.lightbox{background:var(--plum);border:0;border-radius:14px;max-width:min(92vw,1400px);padding:0;overflow:hidden}.lightbox::backdrop{background:#000a1ad9}.lightbox img,.lightbox video{max-width:100%;max-height:80vh;margin-inline:auto;display:block}.lightbox-bar{color:var(--cream);justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;display:flex}.lightbox-bar button,.lightbox-close{--lit:var(--cream);width:40px;height:40px;color:var(--plum);border:0;border-radius:50%;place-items:center;padding:0;font-size:1.2rem;font-weight:700;display:grid}.lightbox-close{position:absolute;top:10px;right:10px}.touch-only{display:none}@media (hover:none){.hover-only{display:none}.touch-only{display:inline}}@media (width<=899px){.hero{grid-template-columns:minmax(0,1fr);gap:32px;min-height:0;padding-top:24px;display:grid}.hero-visual{order:-1;justify-self:center;width:min(92%,460px);margin-top:clamp(48px,9vh,110px);position:relative;top:auto;left:auto}.about-grid{grid-template-columns:1fr}.statement:nth-child(2){padding-left:0}.sticky-note{justify-self:center;max-width:320px}.section{padding-block:88px}.more-link{align-items:flex-start}}@media (width<=560px){.hero-visual{width:min(100%,300px)}.section{padding-block:64px}.carousel{--s:74cqw}.carousel-dots button{display:none}.carousel-count{white-space:nowrap;margin:0}.carousel-nav{width:38px;height:38px}.carousel-nav .nav-arrow{width:24px;height:24px}.carousel-nav.prev{left:0}.carousel-nav.next{right:0}.hero{--name:calc((100vw - 32px) / 4.7)}.hero-name{white-space:normal}}@media (prefers-reduced-motion:reduce){.card:hover .card-more-arrow .nav-arrow{animation:none}.reveal,.title .char{opacity:1;filter:none;animation:none;transform:none}.write{clip-path:none}.draw path{stroke-dashoffset:0}.hl{background-size:100% 100%}}.media-skeleton{background:linear-gradient(100deg, transparent 30%, #ffffff59 50%, transparent 70%) 0 0 / 250% 100%, var(--cream-deep);pointer-events:none;place-items:center;transition:opacity .5s,visibility .5s;animation:1.6s linear infinite sk-shimmer;display:grid;position:absolute;inset:0}.media-skeleton.done{opacity:0;visibility:hidden}.thumb .media-skeleton img,.slide-btn .media-skeleton img{object-fit:contain;width:auto;height:56px;transition:none;animation:1.4s ease-in-out infinite sk-logo}:root[data-theme=dark] .media-skeleton img{filter:invert()hue-rotate(180deg)}@keyframes sk-shimmer{0%{background-position:150% 0,0 0}to{background-position:-50% 0,0 0}}@keyframes sk-logo{50%{opacity:.55;scale:1.12}}@media (prefers-reduced-motion:reduce){.media-skeleton,.media-skeleton img{animation:none}}.wallet-stage{--cw:clamp(150px, min(15.5vw, 27vh), 250px)}.facts{flex-wrap:wrap;justify-content:center;align-items:center;gap:32px 24px;margin:0;padding:0;list-style:none;display:flex}.item{color:var(--ink);flex:none;position:relative}.item.passport{width:calc(var(--cw) * .84);box-shadow:0 0 0 2.5px var(--ink), 6px 6px 0 var(--ink);background:#123a1f;border-radius:10px;overflow:hidden}.item.passport.nl{aspect-ratio:353/501;background:#5c1428;position:relative}.item.passport.nl img{width:107.365%;height:auto;position:absolute;top:-2.79441%;left:-3.96601%;scale:1}.item.passport img{-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block;scale:1.04}.item.permit{width:calc(var(--cw) * 1.05)}.permit-lanyard{pointer-events:none;width:1px;height:1px;position:absolute;top:6px;left:50%;overflow:visible}.permit-card{width:100%;min-height:calc(var(--cw) * 1.55);border:2.5px solid var(--ink);box-shadow:6px 6px 0 var(--ink);background:linear-gradient(160deg,#eaf1fb,#d5e3f6 60%,#e9eefa);border-radius:16px;flex-direction:column;gap:10px;padding:0 0 10px;display:flex;position:relative;overflow:hidden}.permit-slot{border:2px solid var(--ink);background:var(--cream);border-radius:99px;align-self:center;width:38px;height:8px;margin-top:8px}.permit-head{color:#fff;background:#0e4798;align-items:center;gap:8px;padding:8px 10px;display:flex}.permit-head strong{letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;line-height:1.15;display:block}.permit-head small{opacity:.85;font-size:.55rem}.eu-ring{fill:#ffd34e;flex:none;width:30px}.permit-body{gap:8px;padding:0 10px;display:flex}.permit-photo{aspect-ratio:3/4;object-fit:cover;border:2px solid var(--ink);border-radius:6px;flex:none;width:36%}.permit-fields{align-content:start;gap:5px;font-size:.68rem;font-weight:700;line-height:1.15;display:grid}.permit-fields small{letter-spacing:.08em;text-transform:uppercase;opacity:.6;font-size:.5rem;display:block}.permit-stamp{color:#c2416b;width:fit-content;font-family:var(--display);text-transform:uppercase;border:2.5px solid #c2416b;border-radius:8px;justify-items:center;margin:2px auto;padding:4px 12px;font-size:.95rem;font-weight:800;display:grid;rotate:-8deg}.permit-stamp small{letter-spacing:.14em;font-size:.55rem}.permit-note{text-align:center;padding:0 12px;font-size:.72rem;font-weight:700;line-height:1.3}.permit-mrz{letter-spacing:.04em;text-align:center;white-space:nowrap;background:#0e47981f;margin-top:auto;padding:4px 0;font-family:ui-monospace,monospace;font-size:.5rem;overflow:hidden}.item.permit.in .permit-stamp{animation:.5s cubic-bezier(.5,0,.7,.4) .2s backwards stamp-thud}@keyframes stamp-thud{0%{opacity:0;rotate:-20deg;scale:2.2}70%{opacity:1;rotate:-8deg;scale:.92}to{scale:1}}.item.ticket{width:calc(var(--cw) * 2.6);min-height:calc(var(--cw) * .98);border:2.5px solid var(--ink);background:var(--ivory);box-shadow:6px 6px 0 var(--ink);border-radius:14px;display:flex}.bp-main{flex-direction:column;flex:1;min-width:0;display:flex}.bp-head{color:#fff;letter-spacing:.1em;text-transform:uppercase;background:#0e4798;border-radius:11px 0 0;justify-content:space-between;align-items:center;padding:8px 12px;font-size:.62rem;display:flex}.bp-head strong{font-size:.8rem}.bp-route{justify-content:space-between;align-items:center;gap:6px;padding:8px 12px 4px;display:flex}.bp-stop{display:grid}.bp-stop strong{font-family:var(--display);font-size:1.8rem;line-height:1}.bp-stop small{opacity:.7;font-size:.62rem;font-weight:700}.bp-plane{background:linear-gradient(90deg, transparent 0 6px, var(--ink) 6px 12px) 0 50% / 12px 2px repeat-x;flex:1;min-width:0;height:26px;overflow:visible}.bp-plane path{fill:var(--ivory);stroke:var(--ink);stroke-width:2px;stroke-linejoin:round;transition:translate .8s cubic-bezier(.5,0,.3,1)}.bp-plane path:last-child{fill:var(--pink)}.item.ticket:hover .bp-plane path{translate:40px}.bp-grid{grid-template-columns:1.6fr 1fr .6fr .6fr;gap:6px 8px;padding:4px 12px;font-size:.7rem;font-weight:700;display:grid}.bp-grid small{letter-spacing:.1em;text-transform:uppercase;opacity:.6;font-size:.5rem;display:block}.bp-note{padding:6px 12px 10px;font-size:.78rem;font-weight:700;line-height:1.3}.bp-stub{border-left:2.5px dashed var(--ink);width:30%;font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;background:#e8eef8;border-radius:0 11px 11px 0;flex-direction:column;flex:none;gap:4px;padding:10px 10px 10px 12px;font-size:.56rem;font-weight:700;display:flex;position:relative}.bp-stub strong{letter-spacing:.02em;white-space:nowrap;font-size:.7rem}.bp-notch{border:2.5px solid var(--ink);background:var(--cream);border-radius:50%;width:26px;height:26px;position:absolute;left:-15px}.bp-notch.top{clip-path:inset(50% 0 0);top:-15px}.bp-notch.bottom{clip-path:inset(0 0 50%);bottom:-15px}.bp-barcode{background:repeating-linear-gradient(90deg, var(--ink) 0 2px, transparent 2px 4px, var(--ink) 4px 7px, transparent 7px 9px);flex:1;min-height:30px;margin-top:4px}.item.phone{width:calc(var(--cw) * 1);min-height:calc(var(--cw) * 1.9);border:2.5px solid var(--ink);box-shadow:6px 6px 0 var(--ink);background:#101828;border-radius:30px;flex-direction:column;padding:9px 8px 12px;display:flex}.phone-screen{color:#101828;background:#f4f6fb;border-radius:22px;flex-direction:column;flex:1;gap:8px;padding:8px 8px 10px;display:flex}.phone-status{justify-content:space-between;align-items:center;font-size:.55rem;font-weight:700;display:flex}.phone-island{background:#101828;border-radius:99px;width:34%;height:11px}.phone-bar{border-bottom:1px solid #10182826;align-items:center;gap:8px;padding-bottom:6px;font-size:.85rem;display:flex}.phone-avatar{background:var(--pink);width:26px;height:26px;font-family:var(--display);border-radius:50%;place-items:center;font-size:.7rem;font-weight:800;display:grid}.phone-home{opacity:.8;background:#f4f6fb;border-radius:99px;align-self:center;width:36%;height:4px;margin-top:8px}.item.phone .bubbles{gap:8px;margin:0;padding:0;list-style:none;display:grid}.item.phone .bubble{color:#101828;background:#e3e6ee;border-radius:16px 16px 16px 4px;justify-self:start;max-width:88%;padding:6px 10px 7px;display:grid}.item.phone .bubble.me{color:#fff;background:#2f7cf6;border-radius:16px 16px 4px;justify-self:end}.bubble-hello{white-space:nowrap;font-size:1.05rem;font-weight:800;line-height:1.2}.bubble-lang{opacity:.8;font-size:.7rem;font-weight:600}.item.phone:not(.in) .bubble{opacity:0}.item.phone.in .bubble{animation:bubble-pop .45s cubic-bezier(.3, 1.6, .5, 1) calc(.2s + var(--b) * .3s) backwards}@keyframes bubble-pop{0%{opacity:0;translate:0 10px;scale:.3}}.typing{vertical-align:middle;gap:3px;margin-left:6px;display:inline-flex}.typing i{background:currentColor;border-radius:50%;width:5px;height:5px;animation:1.2s ease-in-out infinite dot-hop}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@media (prefers-reduced-motion:reduce){.item.permit.in .permit-stamp,.item.phone.in .bubble,.typing i{animation:none}.item.phone:not(.in) .bubble{opacity:1}}.wallet-section.pinned{padding-block:0}.wallet-section.pinned .wallet-scroller{height:930vh}.wallet-section.pinned .wallet-stage{width:100vw;height:100vh;margin-left:calc(50% - 50vw);position:sticky;top:0;overflow:hidden}.wallet-section.pinned .facts{display:block;position:absolute;inset:0}.wallet-section.pinned .item{z-index:2;transform-origin:0 0;will-change:translate, rotate, scale;position:absolute;top:0;left:0}.wipe-hand{z-index:9;opacity:0;pointer-events:none;transform-origin:71% 7%;will-change:translate, rotate;filter:drop-shadow(6px 10px #0000001f);height:auto;position:absolute;top:0;left:0}.wallet-part{aspect-ratio:900/840;transform-origin:50% 100%;will-change:translate, rotate;pointer-events:none;width:min(94vw,166.667vh - 190px);position:absolute}.wallet-back{z-index:1}.wallet-front{z-index:3}.wallet-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.world{transform-origin:0 0;will-change:transform, opacity;position:absolute;inset:0}.sky{width:700vw;height:calc(var(--ground,80vh) + 300vh);background:linear-gradient(180deg, var(--cream) 0, var(--cream) 300vh, #eef8fd calc(300vh + 80px), #d3ebfa calc(300vh + 190px), #a9d9f6 calc(300vh + 340px), #86caf2 calc(300vh + 500px), #a6dbf7 calc(300vh + 700px), #c6e8fa calc(100% - 60px), #e8f7fd 100%);position:absolute;top:-300vh;left:-300vw}:root[data-theme=dark] .sky{background:linear-gradient(180deg, var(--cream) 0, var(--cream) 300vh, #0e2347 calc(300vh + 90px), #0c1f40 calc(300vh + 240px), #112a52 calc(300vh + 420px), #1a3868 calc(300vh + 640px), #234a7c calc(100% - 60px), #2c5688 100%)}.cloud-bank{pointer-events:none;background:linear-gradient(180deg, var(--cream) 0, var(--cream) 55%, transparent);width:700vw;height:200px;position:absolute;top:-80px;left:-300vw}.cloud-bank.l1{opacity:1;background:radial-gradient(ellipse 170px 64px at 190px 90px, var(--cream) 0, var(--cream) 45%, transparent 100%) 0px 0px / 380px 260px, radial-gradient(ellipse 130px 52px at 120px 70px, var(--cream) 0, var(--cream) 45%, transparent 100%) 170px 30px / 300px 260px;height:260px;top:-40px}.cloud-bank.l2{opacity:.8;background:radial-gradient(ellipse 230px 76px at 260px 100px, var(--cream) 0, var(--cream) 45%, transparent 100%) 40px 0px / 520px 260px, radial-gradient(ellipse 150px 54px at 140px 80px, var(--cream) 0, var(--cream) 45%, transparent 100%) 200px 40px / 330px 260px;height:260px;top:20px}.cloud-bank.l3{opacity:.6;background:radial-gradient(ellipse 150px 52px at 150px 80px, var(--cream) 0, var(--cream) 45%, transparent 100%) 0px 0px / 300px 240px, radial-gradient(ellipse 210px 60px at 230px 90px, var(--cream) 0, var(--cream) 45%, transparent 100%) 120px 30px / 460px 240px;height:240px;top:90px}.cloud-bank.l4{opacity:.42;background:radial-gradient(ellipse 220px 58px at 230px 80px, var(--cream) 0, var(--cream) 45%, transparent 100%) 60px 0px / 460px 220px, radial-gradient(ellipse 160px 46px at 160px 70px, var(--cream) 0, var(--cream) 45%, transparent 100%) 0px 40px / 340px 220px;height:220px;top:150px}.cloud-bank.l5{opacity:.26;background:radial-gradient(ellipse 280px 44px at 300px 70px, var(--cream) 0, var(--cream) 45%, transparent 100%) 0px 0px / 600px 200px, radial-gradient(ellipse 190px 40px at 200px 60px, var(--cream) 0, var(--cream) 45%, transparent 100%) 150px 30px / 400px 200px;height:200px;top:200px}.ground{width:700vw;left:-300vw;top:var(--ground,80vh);height:60vh;position:absolute}.ground:before{content:"";height:46px;position:absolute;top:-40px;left:0;right:0}.grass-front{width:700vw;left:-300vw;top:calc(var(--ground,80vh) - 14px);pointer-events:none;height:50px;position:absolute}.ground{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22300%22 height=%22150%22 viewBox=%220 0 300 150%22%3E%3Cdefs%3E%3C/defs%3E%3Cpath d=%22M135.7 85.7 l-0.3 -13.4%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M256.5 31.7 l-0.2 -12.4%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M237.9 17.7 l-3.3 -8.4%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M178.6 61.8 l1.9 -9.6%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M186.9 125.4 l-3.7 -6.5%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M179.9 117.6 l0.7 -8.6%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M155.7 97.5 l1.3 -10.0%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M196.4 63.4 l3.5 -10.4%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M212.3 50.0 l-1.7 -7.8%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M168.9 19.8 l-1.7 -6.9%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M287.4 127.7 l-2.3 -6.0%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M141.0 147.1 l-3.4 -9.2%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M233.6 43.4 l-1.3 -6.7%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M227.4 21.2 l-3.2 -8.0%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M139.5 75.1 l-2.5 -11.5%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M57.2 110.9 l1.1 -7.0%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M118.5 148.5 l2.9 -6.0%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M91.2 133.2 l-0.8 -7.7%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M192.6 18.6 l-2.3 -13.9%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M2.9 93.1 l-0.9 -12.6%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M27.0 89.1 l0.8 -7.9%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M186.6 22.6 l2.7 -10.7%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M260.0 30.7 l3.3 -7.2%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M74.8 31.7 l3.5 -11.9%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M206.1 60.7 l-3.4 -9.9%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M31.2 9.6 l-2.1 -13.7%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M77.1 124.3 l-1.7 -10.8%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M278.8 146.7 l-0.2 -7.0%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M184.3 44.9 l-2.4 -13.3%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M20.7 64.1 l-3.6 -8.0%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M110.6 87.5 l-1.1 -7.1%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M294.1 99.9 l0.7 -11.5%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M177.0 138.8 l-1.1 -9.8%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M288.8 7.1 l-0.1 -11.1%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M95.7 149.9 l0.4 -6.6%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M270.1 111.6 l2.3 -11.6%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M105.6 104.0 l3.0 -13.2%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M283.3 8.4 l-3.9 -10.0%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M113.8 5.8 l-3.3 -6.6%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M298.0 132.4 l-0.9 -11.8%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M137.3 71.5 l0.1 -10.3%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M8.9 91.8 l-2.2 -9.8%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M149.2 93.7 l-2.0 -13.4%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M110.4 24.9 l0.1 -10.9%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M198.0 68.5 l-1.4 -13.1%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M59.6 66.9 l3.3 -12.4%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M115.3 89.1 l-2.9 -8.5%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M105.2 134.8 l-3.5 -6.3%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M246.6 20.5 l3.4 -9.8%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M114.8 79.9 l1.7 -11.4%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M135.7 14.9 l3.0 -6.3%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M203.5 45.0 l1.2 -8.8%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M5.7 23.8 l-3.8 -9.6%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M71.2 24.6 l1.0 -6.4%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M32.7 82.2 l-1.1 -11.1%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M205.3 33.1 l-2.6 -9.8%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M226.5 82.1 l-2.2 -6.3%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M161.9 142.2 l4.0 -10.0%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M118.1 119.6 l-3.3 -13.2%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M39.0 70.2 l3.3 -11.0%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M165.0 99.3 l2.6 -10.0%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M139.1 99.1 l1.8 -7.6%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M64.0 135.4 l3.8 -13.8%22 stroke=%22%238fda7e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M293.0 140.1 l1.7 -8.1%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M104.6 16.1 l0.4 -9.5%22 stroke=%22%23337a3d%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M146.2 8.1 l-3.5 -12.5%22 stroke=%22%233f8f44%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M51.9 52.9 l-2.9 -12.3%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M299.9 135.5 l1.4 -10.1%22 stroke=%22%237fd072%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M283.7 75.9 l-3.3 -13.6%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M131.8 85.6 l0.5 -12.6%22 stroke=%22%2356a853%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%280 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%2860 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28120 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28180 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28240 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28300 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Ccircle cx=%2240%22 cy=%2250%22 r=%222%22 fill=%22%23f2c94c%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%280 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%2860 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28120 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28180 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28240 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28300 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Ccircle cx=%22150%22 cy=%22100%22 r=%222%22 fill=%22%23f2c94c%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%280 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%2860 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28120 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28180 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28240 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28300 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Ccircle cx=%22240%22 cy=%2240%22 r=%222%22 fill=%22%23f2c94c%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%280 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%2860 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28120 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28180 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28240 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28300 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Ccircle cx=%2295%22 cy=%22130%22 r=%222%22 fill=%22%23f2c94c%22/%3E%3Cellipse cx=%22200%22 cy=%2288%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%280 200 92%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%22200%22 cy=%2288%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%2872 200 92%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%22200%22 cy=%2288%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28144 200 92%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%22200%22 cy=%2288%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28216 200 92%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%22200%22 cy=%2288%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28288 200 92%29%22 fill=%22%23e58fb0%22/%3E%3Ccircle cx=%22200%22 cy=%2292%22 r=%221.8%22 fill=%22%23f7de93%22/%3E%3Cellipse cx=%2220%22 cy=%22106%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%280 20 110%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%2220%22 cy=%22106%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%2872 20 110%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%2220%22 cy=%22106%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28144 20 110%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%2220%22 cy=%22106%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28216 20 110%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%2220%22 cy=%22106%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28288 20 110%29%22 fill=%22%23e58fb0%22/%3E%3Ccircle cx=%2220%22 cy=%22110%22 r=%221.8%22 fill=%22%23f7de93%22/%3E%3C/svg%3E") 0 0/300px 150px,linear-gradient(#5cae56 0%,#4a9a4c 38%,#3b8545 100%)}.ground:before{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22150%22 height=%2246%22 viewBox=%220 0 150 46%22%3E%3Cdefs%3E%3ClinearGradient id=%22g0%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%235bad55%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%235bad55%22/%3E%3Cstop offset=%221%22 stop-color=%22%234f9a4a%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g1%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%235bad55%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%235bad55%22/%3E%3Cstop offset=%221%22 stop-color=%22%2346893f%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g2%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%235bad55%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%235bad55%22/%3E%3Cstop offset=%221%22 stop-color=%22%235fae56%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d=%22M35.7 46 Q36.4 31.2 37.8 19.1 Q39.6 32.6 41.0 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M90.8 46 Q91.2 27.2 91.9 11.8 Q93.5 28.9 94.7 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M70.5 46 Q71.5 28.0 73.3 13.3 Q74.0 29.6 74.2 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M22.7 46 Q19.3 27.0 13.0 11.5 Q21.1 28.7 28.5 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M113.7 46 Q110.5 30.7 104.4 18.2 Q112.4 32.1 119.8 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M89.2 46 Q91.2 27.1 95.0 11.6 Q94.6 28.8 93.8 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M120.1 46 Q122.8 32.3 127.7 21.1 Q125.9 33.6 123.7 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M74.2 46 Q76.2 34.4 79.8 24.8 Q80.3 35.4 80.3 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M76.1 46 Q76.7 33.0 77.8 22.3 Q79.8 34.1 81.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M102.3 46 Q105.7 27.0 112.1 11.4 Q110.2 28.7 107.7 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M104.8 46 Q105.3 33.6 106.2 23.5 Q107.5 34.7 108.3 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M31.7 46 Q30.2 28.1 27.4 13.4 Q31.4 29.7 35.1 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M148.5 46 Q147.8 36.2 146.7 28.2 Q149.6 37.1 152.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M-1.5 46 Q-2.2 36.2 -3.3 28.2 Q-0.4 37.1 2.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M64.1 46 Q64.8 29.3 66.2 15.6 Q68.3 30.8 69.8 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M107.8 46 Q111.1 33.6 117.4 23.4 Q115.2 34.7 112.6 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M46.5 46 Q43.2 36.4 37.1 28.5 Q43.9 37.2 50.3 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M43.7 46 Q47.1 34.3 53.3 24.7 Q50.9 35.4 48.1 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M143.8 46 Q143.5 27.3 143.0 12.1 Q146.1 29.0 148.7 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M-6.2 46 Q-6.5 27.3 -7.0 12.1 Q-3.9 29.0 -1.3 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M130.0 46 Q133.3 25.6 139.5 9.0 Q138.0 27.5 135.9 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M-20.0 46 Q-16.7 25.6 -10.5 9.0 Q-12.0 27.5 -14.1 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M64.7 46 Q63.3 29.3 60.7 15.6 Q66.2 30.8 71.1 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M45.4 46 Q48.9 33.5 55.2 23.2 Q52.7 34.6 49.7 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M92.4 46 Q93.3 26.3 94.9 10.2 Q96.2 28.1 97.1 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M137.6 46 Q137.5 30.5 137.4 17.8 Q140.3 31.9 142.7 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M-12.4 46 Q-12.5 30.5 -12.6 17.8 Q-9.7 31.9 -7.3 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M3.2 46 Q1.8 33.1 -0.8 22.6 Q4.0 34.3 8.4 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M153.2 46 Q151.8 33.1 149.2 22.6 Q154.0 34.3 158.4 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M54.6 46 Q55.3 33.8 56.5 23.7 Q57.9 34.9 58.8 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M15.7 46 Q17.0 28.3 19.4 13.7 Q19.6 29.9 19.4 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M165.7 46 Q167.0 28.3 169.4 13.7 Q169.6 29.9 169.4 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M33.4 46 Q31.2 28.4 27.1 13.9 Q32.8 30.0 38.0 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M14.6 46 Q15.8 30.6 18.1 18.0 Q18.5 32.0 18.5 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M164.6 46 Q165.8 30.6 168.1 18.0 Q168.5 32.0 168.5 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M12.0 46 Q12.5 29.0 13.4 15.2 Q14.9 30.6 16.1 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M162.0 46 Q162.5 29.0 163.4 15.2 Q164.9 30.6 166.1 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M5.1 46 Q7.4 26.7 11.8 10.8 Q11.3 28.4 10.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M155.1 46 Q157.4 26.7 161.8 10.8 Q161.3 28.4 160.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M51.0 46 Q51.9 23.6 53.4 5.3 Q55.0 25.7 56.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M43.8 46 Q42.7 28.5 40.7 14.1 Q44.8 30.1 48.4 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M85.2 46 Q83.1 36.8 79.2 29.3 Q84.9 37.6 90.0 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M148.0 46 Q151.0 32.4 156.6 21.3 Q154.5 33.7 152.0 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M-2.0 46 Q1.0 32.4 6.6 21.3 Q4.5 33.7 2.0 46Z%22 fill=%22url%28%23g2%29%22/%3E%3C/svg%3E") 0 100%/150px 46px repeat-x}.grass-front{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22170%22 height=%2250%22 viewBox=%220 0 170 50%22%3E%3Cdefs%3E%3ClinearGradient id=%22g0%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%2359ab54%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%2359ab54%22/%3E%3Cstop offset=%221%22 stop-color=%22%237ed06c%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g1%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%2359ab54%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%2359ab54%22/%3E%3Cstop offset=%221%22 stop-color=%22%236cc46a%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g2%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%2359ab54%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%2359ab54%22/%3E%3Cstop offset=%221%22 stop-color=%22%238bd873%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g3%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%2359ab54%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%2359ab54%22/%3E%3Cstop offset=%221%22 stop-color=%22%2358b055%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g4%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%2359ab54%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%2359ab54%22/%3E%3Cstop offset=%221%22 stop-color=%22%239be08a%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d=%22M105.9 50 Q109.0 28.4 114.7 10.7 Q113.4 30.4 111.5 50Z%22 fill=%22url%28%23g4%29%22/%3E%3Cpath d=%22M4.9 50 Q6.0 32.3 7.9 17.9 Q9.8 33.9 11.1 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M174.9 50 Q176.0 32.3 177.9 17.9 Q179.8 33.9 181.1 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M63.2 50 Q60.4 26.6 55.2 7.4 Q61.4 28.7 67.2 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M69.4 50 Q68.6 36.4 67.2 25.3 Q71.4 37.6 75.1 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M23.6 50 Q20.1 25.2 13.6 4.9 Q21.9 27.5 29.7 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M131.5 50 Q129.2 19.1 124.8 -6.2 Q130.5 21.9 135.7 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M91.7 50 Q94.8 29.3 100.5 12.4 Q99.1 31.2 97.1 50Z%22 fill=%22url%28%23g3%29%22/%3E%3Cpath d=%22M50.8 50 Q48.3 29.8 43.7 13.3 Q49.1 31.6 54.2 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M139.0 50 Q140.4 30.6 143.1 14.8 Q142.9 32.4 142.4 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M139.1 50 Q139.0 32.1 138.8 17.5 Q142.0 33.8 144.7 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M43.6 50 Q42.6 25.6 40.7 5.6 Q44.6 27.8 48.1 50Z%22 fill=%22url%28%23g4%29%22/%3E%3Cpath d=%22M133.9 50 Q130.5 33.8 124.1 20.5 Q130.9 35.2 137.3 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M106.0 50 Q104.3 19.2 101.0 -6.0 Q106.7 22.0 111.9 50Z%22 fill=%22url%28%23g3%29%22/%3E%3Cpath d=%22M58.5 50 Q60.5 33.9 64.1 20.8 Q63.3 35.4 62.1 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M146.1 50 Q143.3 38.5 138.0 29.0 Q144.4 39.5 150.5 50Z%22 fill=%22url%28%23g4%29%22/%3E%3Cpath d=%22M61.6 50 Q63.1 36.9 65.7 26.1 Q65.6 38.1 65.2 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M52.0 50 Q53.6 27.6 56.5 9.2 Q56.6 29.6 56.3 50Z%22 fill=%22url%28%23g3%29%22/%3E%3Cpath d=%22M27.5 50 Q27.7 38.3 28.1 28.7 Q30.3 39.4 32.0 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M125.9 50 Q127.0 34.1 128.9 21.1 Q129.4 35.5 129.6 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M136.3 50 Q139.7 34.2 145.9 21.3 Q143.9 35.7 141.3 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M107.2 50 Q106.7 22.2 105.9 -0.6 Q108.5 24.7 110.9 50Z%22 fill=%22url%28%23g3%29%22/%3E%3Cpath d=%22M50.1 50 Q52.6 32.5 57.2 18.2 Q57.2 34.1 56.5 50Z%22 fill=%22url%28%23g3%29%22/%3E%3Cpath d=%22M163.2 50 Q161.6 29.1 158.7 12.1 Q163.6 31.0 168.0 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M-6.8 50 Q-8.4 29.1 -11.3 12.1 Q-6.4 31.0 -2.0 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M19.1 50 Q16.9 27.2 12.7 8.6 Q19.4 29.3 25.4 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M189.1 50 Q186.9 27.2 182.7 8.6 Q189.4 29.3 195.4 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M30.6 50 Q31.0 32.0 31.6 17.2 Q33.8 33.6 35.5 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M133.6 50 Q134.8 27.9 136.9 9.9 Q138.4 29.9 139.3 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M95.1 50 Q93.4 29.4 90.4 12.6 Q96.3 31.3 101.5 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M162.7 50 Q165.1 30.2 169.7 13.9 Q168.8 32.0 167.4 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M-7.3 50 Q-4.9 30.2 -0.3 13.9 Q-1.2 32.0 -2.6 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M55.4 50 Q55.4 35.1 55.4 22.9 Q58.4 36.4 60.8 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M59.1 50 Q61.4 29.8 65.7 13.3 Q64.8 31.6 63.5 50Z%22 fill=%22url%28%23g1%29%22/%3E%3C/svg%3E") 0 100%/170px 50px repeat-x}:root[data-theme=dark] .ground{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22300%22 height=%22150%22 viewBox=%220 0 300 150%22%3E%3Cdefs%3E%3C/defs%3E%3Cpath d=%22M135.7 85.7 l-0.3 -13.4%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M256.5 31.7 l-0.2 -12.4%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M237.9 17.7 l-3.3 -8.4%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M178.6 61.8 l1.9 -9.6%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M186.9 125.4 l-3.7 -6.5%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M179.9 117.6 l0.7 -8.6%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M155.7 97.5 l1.3 -10.0%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M196.4 63.4 l3.5 -10.4%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M212.3 50.0 l-1.7 -7.8%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M168.9 19.8 l-1.7 -6.9%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M287.4 127.7 l-2.3 -6.0%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M141.0 147.1 l-3.4 -9.2%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M233.6 43.4 l-1.3 -6.7%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M227.4 21.2 l-3.2 -8.0%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M139.5 75.1 l-2.5 -11.5%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M57.2 110.9 l1.1 -7.0%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M118.5 148.5 l2.9 -6.0%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M91.2 133.2 l-0.8 -7.7%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M192.6 18.6 l-2.3 -13.9%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M2.9 93.1 l-0.9 -12.6%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M27.0 89.1 l0.8 -7.9%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M186.6 22.6 l2.7 -10.7%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M260.0 30.7 l3.3 -7.2%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M74.8 31.7 l3.5 -11.9%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M206.1 60.7 l-3.4 -9.9%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M31.2 9.6 l-2.1 -13.7%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M77.1 124.3 l-1.7 -10.8%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M278.8 146.7 l-0.2 -7.0%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M184.3 44.9 l-2.4 -13.3%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M20.7 64.1 l-3.6 -8.0%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M110.6 87.5 l-1.1 -7.1%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M294.1 99.9 l0.7 -11.5%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M177.0 138.8 l-1.1 -9.8%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M288.8 7.1 l-0.1 -11.1%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M95.7 149.9 l0.4 -6.6%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M270.1 111.6 l2.3 -11.6%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M105.6 104.0 l3.0 -13.2%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M283.3 8.4 l-3.9 -10.0%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M113.8 5.8 l-3.3 -6.6%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M298.0 132.4 l-0.9 -11.8%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M137.3 71.5 l0.1 -10.3%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M8.9 91.8 l-2.2 -9.8%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M149.2 93.7 l-2.0 -13.4%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M110.4 24.9 l0.1 -10.9%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M198.0 68.5 l-1.4 -13.1%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M59.6 66.9 l3.3 -12.4%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M115.3 89.1 l-2.9 -8.5%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M105.2 134.8 l-3.5 -6.3%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M246.6 20.5 l3.4 -9.8%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M114.8 79.9 l1.7 -11.4%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M135.7 14.9 l3.0 -6.3%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M203.5 45.0 l1.2 -8.8%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M5.7 23.8 l-3.8 -9.6%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M71.2 24.6 l1.0 -6.4%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M32.7 82.2 l-1.1 -11.1%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M205.3 33.1 l-2.6 -9.8%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M226.5 82.1 l-2.2 -6.3%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M161.9 142.2 l4.0 -10.0%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M118.1 119.6 l-3.3 -13.2%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M39.0 70.2 l3.3 -11.0%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M165.0 99.3 l2.6 -10.0%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M139.1 99.1 l1.8 -7.6%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M64.0 135.4 l3.8 -13.8%22 stroke=%22%234e9a54%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M293.0 140.1 l1.7 -8.1%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M104.6 16.1 l0.4 -9.5%22 stroke=%22%23245a2e%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M146.2 8.1 l-3.5 -12.5%22 stroke=%22%232d6b35%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M51.9 52.9 l-2.9 -12.3%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M299.9 135.5 l1.4 -10.1%22 stroke=%22%233f8a47%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M283.7 75.9 l-3.3 -13.6%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cpath d=%22M131.8 85.6 l0.5 -12.6%22 stroke=%22%233c8040%22 stroke-width=%222%22 stroke-linecap=%22round%22 opacity=%220.7%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%280 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%2860 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28120 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28180 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28240 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2240%22 cy=%2245.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28300 40 50%29%22 fill=%22%23fbf8f1%22/%3E%3Ccircle cx=%2240%22 cy=%2250%22 r=%222%22 fill=%22%23f2c94c%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%280 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%2860 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28120 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28180 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28240 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22150%22 cy=%2295.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28300 150 100%29%22 fill=%22%23fbf8f1%22/%3E%3Ccircle cx=%22150%22 cy=%22100%22 r=%222%22 fill=%22%23f2c94c%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%280 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%2860 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28120 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28180 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28240 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%22240%22 cy=%2235.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28300 240 40%29%22 fill=%22%23fbf8f1%22/%3E%3Ccircle cx=%22240%22 cy=%2240%22 r=%222%22 fill=%22%23f2c94c%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%280 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%2860 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28120 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28180 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28240 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Cellipse cx=%2295%22 cy=%22125.8%22 rx=%221.8%22 ry=%223.4%22 transform=%22rotate%28300 95 130%29%22 fill=%22%23fbf8f1%22/%3E%3Ccircle cx=%2295%22 cy=%22130%22 r=%222%22 fill=%22%23f2c94c%22/%3E%3Cellipse cx=%22200%22 cy=%2288%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%280 200 92%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%22200%22 cy=%2288%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%2872 200 92%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%22200%22 cy=%2288%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28144 200 92%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%22200%22 cy=%2288%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28216 200 92%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%22200%22 cy=%2288%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28288 200 92%29%22 fill=%22%23e58fb0%22/%3E%3Ccircle cx=%22200%22 cy=%2292%22 r=%221.8%22 fill=%22%23f7de93%22/%3E%3Cellipse cx=%2220%22 cy=%22106%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%280 20 110%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%2220%22 cy=%22106%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%2872 20 110%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%2220%22 cy=%22106%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28144 20 110%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%2220%22 cy=%22106%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28216 20 110%29%22 fill=%22%23e58fb0%22/%3E%3Cellipse cx=%2220%22 cy=%22106%22 rx=%221.8%22 ry=%223.2%22 transform=%22rotate%28288 20 110%29%22 fill=%22%23e58fb0%22/%3E%3Ccircle cx=%2220%22 cy=%22110%22 r=%221.8%22 fill=%22%23f7de93%22/%3E%3C/svg%3E") 0 0/300px 150px,linear-gradient(#2c6e43 0%,#22583a 45%,#1a4630 100%)}:root[data-theme=dark] .ground:before{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22150%22 height=%2246%22 viewBox=%220 0 150 46%22%3E%3Cdefs%3E%3ClinearGradient id=%22g0%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%232b6c42%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%232b6c42%22/%3E%3Cstop offset=%221%22 stop-color=%22%232a6334%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g1%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%232b6c42%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%232b6c42%22/%3E%3Cstop offset=%221%22 stop-color=%22%232f6f3a%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g2%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%232b6c42%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%232b6c42%22/%3E%3Cstop offset=%221%22 stop-color=%22%2338804a%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d=%22M35.7 46 Q36.4 31.2 37.8 19.1 Q39.6 32.6 41.0 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M90.8 46 Q91.2 27.2 91.9 11.8 Q93.5 28.9 94.7 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M70.5 46 Q71.5 28.0 73.3 13.3 Q74.0 29.6 74.2 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M22.7 46 Q19.3 27.0 13.0 11.5 Q21.1 28.7 28.5 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M113.7 46 Q110.5 30.7 104.4 18.2 Q112.4 32.1 119.8 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M89.2 46 Q91.2 27.1 95.0 11.6 Q94.6 28.8 93.8 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M120.1 46 Q122.8 32.3 127.7 21.1 Q125.9 33.6 123.7 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M74.2 46 Q76.2 34.4 79.8 24.8 Q80.3 35.4 80.3 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M76.1 46 Q76.7 33.0 77.8 22.3 Q79.8 34.1 81.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M102.3 46 Q105.7 27.0 112.1 11.4 Q110.2 28.7 107.7 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M104.8 46 Q105.3 33.6 106.2 23.5 Q107.5 34.7 108.3 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M31.7 46 Q30.2 28.1 27.4 13.4 Q31.4 29.7 35.1 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M148.5 46 Q147.8 36.2 146.7 28.2 Q149.6 37.1 152.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M-1.5 46 Q-2.2 36.2 -3.3 28.2 Q-0.4 37.1 2.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M64.1 46 Q64.8 29.3 66.2 15.6 Q68.3 30.8 69.8 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M107.8 46 Q111.1 33.6 117.4 23.4 Q115.2 34.7 112.6 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M46.5 46 Q43.2 36.4 37.1 28.5 Q43.9 37.2 50.3 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M43.7 46 Q47.1 34.3 53.3 24.7 Q50.9 35.4 48.1 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M143.8 46 Q143.5 27.3 143.0 12.1 Q146.1 29.0 148.7 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M-6.2 46 Q-6.5 27.3 -7.0 12.1 Q-3.9 29.0 -1.3 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M130.0 46 Q133.3 25.6 139.5 9.0 Q138.0 27.5 135.9 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M-20.0 46 Q-16.7 25.6 -10.5 9.0 Q-12.0 27.5 -14.1 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M64.7 46 Q63.3 29.3 60.7 15.6 Q66.2 30.8 71.1 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M45.4 46 Q48.9 33.5 55.2 23.2 Q52.7 34.6 49.7 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M92.4 46 Q93.3 26.3 94.9 10.2 Q96.2 28.1 97.1 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M137.6 46 Q137.5 30.5 137.4 17.8 Q140.3 31.9 142.7 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M-12.4 46 Q-12.5 30.5 -12.6 17.8 Q-9.7 31.9 -7.3 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M3.2 46 Q1.8 33.1 -0.8 22.6 Q4.0 34.3 8.4 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M153.2 46 Q151.8 33.1 149.2 22.6 Q154.0 34.3 158.4 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M54.6 46 Q55.3 33.8 56.5 23.7 Q57.9 34.9 58.8 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M15.7 46 Q17.0 28.3 19.4 13.7 Q19.6 29.9 19.4 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M165.7 46 Q167.0 28.3 169.4 13.7 Q169.6 29.9 169.4 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M33.4 46 Q31.2 28.4 27.1 13.9 Q32.8 30.0 38.0 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M14.6 46 Q15.8 30.6 18.1 18.0 Q18.5 32.0 18.5 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M164.6 46 Q165.8 30.6 168.1 18.0 Q168.5 32.0 168.5 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M12.0 46 Q12.5 29.0 13.4 15.2 Q14.9 30.6 16.1 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M162.0 46 Q162.5 29.0 163.4 15.2 Q164.9 30.6 166.1 46Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M5.1 46 Q7.4 26.7 11.8 10.8 Q11.3 28.4 10.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M155.1 46 Q157.4 26.7 161.8 10.8 Q161.3 28.4 160.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M51.0 46 Q51.9 23.6 53.4 5.3 Q55.0 25.7 56.2 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M43.8 46 Q42.7 28.5 40.7 14.1 Q44.8 30.1 48.4 46Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M85.2 46 Q83.1 36.8 79.2 29.3 Q84.9 37.6 90.0 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M148.0 46 Q151.0 32.4 156.6 21.3 Q154.5 33.7 152.0 46Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M-2.0 46 Q1.0 32.4 6.6 21.3 Q4.5 33.7 2.0 46Z%22 fill=%22url%28%23g2%29%22/%3E%3C/svg%3E") 0 100%/150px 46px repeat-x}:root[data-theme=dark] .grass-front{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22170%22 height=%2250%22 viewBox=%220 0 170 50%22%3E%3Cdefs%3E%3ClinearGradient id=%22g0%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%23296a40%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%23296a40%22/%3E%3Cstop offset=%221%22 stop-color=%22%233c8a48%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g1%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%23296a40%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%23296a40%22/%3E%3Cstop offset=%221%22 stop-color=%22%234a9a55%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g2%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%23296a40%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%23296a40%22/%3E%3Cstop offset=%221%22 stop-color=%22%232f7a3e%22/%3E%3C/linearGradient%3E%3ClinearGradient id=%22g3%22 x1=%220%22 y1=%221%22 x2=%220%22 y2=%220%22%3E%3Cstop offset=%220%22 stop-color=%22%23296a40%22/%3E%3Cstop offset=%220.35%22 stop-color=%22%23296a40%22/%3E%3Cstop offset=%221%22 stop-color=%22%2355a862%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d=%22M105.9 50 Q109.0 28.4 114.7 10.7 Q113.4 30.4 111.5 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M142.9 50 Q139.7 27.9 133.9 9.8 Q140.4 29.9 146.6 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M79.7 50 Q80.3 35.5 81.2 23.6 Q82.3 36.8 83.0 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M69.4 50 Q68.6 36.4 67.2 25.3 Q71.4 37.6 75.1 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M23.6 50 Q20.1 25.2 13.6 4.9 Q21.9 27.5 29.7 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M131.5 50 Q129.2 19.1 124.8 -6.2 Q130.5 21.9 135.7 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M91.7 50 Q94.8 29.3 100.5 12.4 Q99.1 31.2 97.1 50Z%22 fill=%22url%28%23g3%29%22/%3E%3Cpath d=%22M50.8 50 Q48.3 29.8 43.7 13.3 Q49.1 31.6 54.2 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M139.0 50 Q140.4 30.6 143.1 14.8 Q142.9 32.4 142.4 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M139.1 50 Q139.0 32.1 138.8 17.5 Q142.0 33.8 144.7 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M43.6 50 Q42.6 25.6 40.7 5.6 Q44.6 27.8 48.1 50Z%22 fill=%22url%28%23g3%29%22/%3E%3Cpath d=%22M62.3 50 Q59.1 25.9 53.2 6.2 Q59.8 28.1 66.0 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M20.2 50 Q20.0 35.5 19.5 23.6 Q22.5 36.8 25.1 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M131.9 50 Q133.9 37.5 137.8 27.2 Q138.1 38.6 137.9 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M73.6 50 Q73.7 25.0 73.9 4.6 Q76.2 27.3 78.0 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M57.8 50 Q56.5 25.8 54.0 6.0 Q58.3 28.0 62.0 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M135.8 50 Q134.5 30.0 132.0 13.7 Q136.5 31.9 140.6 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M13.8 50 Q10.5 30.4 4.4 14.4 Q12.2 32.2 19.4 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M183.8 50 Q180.5 30.4 174.4 14.4 Q182.2 32.2 189.4 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M140.5 50 Q137.4 32.5 131.6 18.2 Q139.4 34.1 146.7 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M136.3 50 Q139.7 34.2 145.9 21.3 Q143.9 35.7 141.3 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M107.2 50 Q106.7 22.2 105.9 -0.6 Q108.5 24.7 110.9 50Z%22 fill=%22url%28%23g3%29%22/%3E%3Cpath d=%22M50.1 50 Q52.6 32.5 57.2 18.2 Q57.2 34.1 56.5 50Z%22 fill=%22url%28%23g3%29%22/%3E%3Cpath d=%22M163.2 50 Q161.6 29.1 158.7 12.1 Q163.6 31.0 168.0 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M-6.8 50 Q-8.4 29.1 -11.3 12.1 Q-6.4 31.0 -2.0 50Z%22 fill=%22url%28%23g1%29%22/%3E%3Cpath d=%22M19.1 50 Q16.9 27.2 12.7 8.6 Q19.4 29.3 25.4 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M189.1 50 Q186.9 27.2 182.7 8.6 Q189.4 29.3 195.4 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M30.6 50 Q31.0 32.0 31.6 17.2 Q33.8 33.6 35.5 50Z%22 fill=%22url%28%23g0%29%22/%3E%3Cpath d=%22M133.6 50 Q134.8 27.9 136.9 9.9 Q138.4 29.9 139.3 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M95.1 50 Q93.4 29.4 90.4 12.6 Q96.3 31.3 101.5 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M162.7 50 Q165.1 30.2 169.7 13.9 Q168.8 32.0 167.4 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M-7.3 50 Q-4.9 30.2 -0.3 13.9 Q-1.2 32.0 -2.6 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M55.4 50 Q55.4 35.1 55.4 22.9 Q58.4 36.4 60.8 50Z%22 fill=%22url%28%23g2%29%22/%3E%3Cpath d=%22M59.1 50 Q61.4 29.8 65.7 13.3 Q64.8 31.6 63.5 50Z%22 fill=%22url%28%23g1%29%22/%3E%3C/svg%3E") 0 100%/170px 50px repeat-x}.sun{aspect-ratio:1;isolation:isolate;width:90px;position:absolute;top:16vh;right:12vw}.sun:before{content:"";z-index:0;background:repeating-conic-gradient(#f7de93 0 11deg, transparent 11deg 30deg);border-radius:50%;animation:30s linear infinite sun-turn;position:absolute;inset:-70px;-webkit-mask-image:radial-gradient(circle closest-side,#000 0 38%,#0000 100%);mask-image:radial-gradient(circle closest-side,#000 0 38%,#0000 100%)}.sun:after{content:"";z-index:1;border:3px solid var(--ink);background:var(--butter);border-radius:50%;position:absolute;inset:0}@keyframes sun-turn{to{rotate:360deg}}@media (prefers-reduced-motion:reduce){.sun:before,.cloud{animation:none}}.moon,.star,:root[data-theme=dark] .sun,:root[data-theme=dark] .cloud{display:none}:root[data-theme=dark] .moon{aspect-ratio:1;filter:drop-shadow(0 0 18px #f7de938c);border-radius:50%;width:96px;display:block;position:absolute;top:15vh;right:13vw;rotate:-12deg;box-shadow:inset -26px 10px #f7de93}:root[data-theme=dark] .star{aspect-ratio:1;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:3.6s ease-in-out infinite twinkle;animation-delay:var(--delay,0s);background:#fbf8f1;display:block;position:absolute}@media (prefers-reduced-motion:reduce){.star{animation:none}}.cloud{border:3px solid var(--ink);background:var(--ivory);width:130px;height:38px;animation:14s ease-in-out infinite alternate cloud-drift;animation-delay:var(--delay,0s);border-radius:99px;position:absolute}.cloud:before,.cloud:after{content:"";border:3px solid var(--ink);background:var(--ivory);border-bottom:0;position:absolute}.cloud:before{border-radius:27px 27px 0 0;width:54px;height:27px;top:-24px;left:24px}.cloud:after{border-radius:19px 19px 0 0;width:38px;height:17px;top:-14px;left:66px}@keyframes cloud-drift{0%{translate:-18px}to{translate:18px}}.girl{--sw:0;position:absolute;top:0;left:0}.girl img{-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.girl-hair,.girl-leg,.girl-arm{position:absolute;top:0;left:0}.girl-hair{clip-path:url(#girl-clip-hair);transform-origin:39.6% 14.6%;rotate:calc(var(--hs,0) * 1deg)}.girl-leg{aspect-ratio:1365/2048;width:100%;position:absolute;top:0;left:0}.girl-leg.back{--leg:calc((var(--sw) - 26) * .55deg)}.girl-leg.front{--leg:calc((var(--sw) - 26) * -.55deg)}.leg-seg{aspect-ratio:1365/2048;width:100%;position:absolute;top:0;left:0}.leg-seg.bend{rotate:calc(var(--leg) / 11)}.leg-seg>img{width:100%;height:auto;position:absolute;top:0;left:0}.girl-arm.back{clip-path:url(#girl-clip-back-arm);transform-origin:34.4% 38.1%;rotate:calc(var(--sw) * -.16deg)}.girl-arm.front{clip-path:url(#girl-clip-front-arm);transform-origin:56.4% 27.3%;rotate:calc(var(--sw) * .16deg)}.girl-hip{pointer-events:none;width:100%;height:auto;position:absolute;top:0;left:0}.girl-body{clip-path:url(#girl-clip-body);position:relative}.wallet-brand{aspect-ratio:650/500;pointer-events:none;position:absolute;rotate:-2deg}.wallet-brand.closed{width:20.3%;top:69.3%;left:39.9%}.wallet-brand.top{transform-origin:50% -141%;width:18.9%;transform:scaleY(var(--lid-cover,1));top:57.7%;left:40.6%}.wallet-brand i{position:absolute;inset:0;-webkit-mask:url(/favicon.svg) 50%/contain no-repeat;mask:url(/favicon.svg) 50%/contain no-repeat}.wallet-brand .shine{background:#ffe2be66;translate:0 1.6px}.wallet-brand .scorch{filter:blur(2.2px);background:#46200a66;inset:-7%}.wallet-brand .burn{mix-blend-mode:multiply;opacity:.95;background:linear-gradient(135deg,#4a2610,#2a1409 70%)}.case-closed,.case-open{transform-origin:50% 100%;position:absolute;inset:0}.case-closed{transform:perspective(1100px) rotateX(calc(var(--tilt,0) * 70deg));opacity:clamp(0, calc(1 - var(--tilt,0) * 1.8), 1)}.case-open{transform:perspective(1100px) rotateX(calc((var(--tilt,0) - 1) * 70deg));opacity:clamp(0, calc(var(--tilt,0) * 40), 1)}.open-lid-cover,.open-lid-inner{transform-box:view-box;transform-origin:450px 300px}.open-lid-cover{transform:scaleY(var(--lid-cover,1))}.open-lid-inner{transform:scaleY(var(--lid-inner,0))}.notes{z-index:6;pointer-events:none;position:absolute;inset:0}.notes-svg{fill:none;width:100%;height:100%;stroke:var(--plum);stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round;position:absolute;inset:0;overflow:visible}.note-line,.note-head{stroke-dasharray:1;stroke-dashoffset:1px}.note{white-space:nowrap;font-family:var(--pen);color:var(--plum);clip-path:inset(-20% calc(100% - var(--w,0%)) -20% -6%);font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.2;position:absolute;top:0;left:0;rotate:-2deg}.note-pen{opacity:0;filter:drop-shadow(3px 4px #0000002e);width:10px;height:10px;position:absolute;top:0;left:0;overflow:visible}@property --lens{syntax:"<length>";inherits:true;initial-value:0}.blueprint{--bleed-x:100vw;--bleed-y:140px;inset:calc(var(--bleed-y) * -1) calc(var(--bleed-x) * -1) 0;z-index:6;pointer-events:none;--mx:-999px;--my:-999px;--at:calc(var(--mx) + var(--bleed-x)) calc(var(--my) + var(--bleed-y));-webkit-mask-image:radial-gradient(circle var(--lens) at var(--at), #000 calc(var(--lens) - 1px), transparent var(--lens));-webkit-mask-image:radial-gradient(circle var(--lens) at var(--at), #000 calc(var(--lens) - 1px), transparent var(--lens));mask-image:radial-gradient(circle var(--lens) at var(--at), #000 calc(var(--lens) - 1px), transparent var(--lens));transition:--lens .35s cubic-bezier(.3,1.4,.5,1);position:absolute}.bp-paper{background:linear-gradient(#fff3 1px, transparent 1px) 0 0 / 120px 120px, linear-gradient(90deg, #fff3 1px, transparent 1px) 0 0 / 120px 120px, linear-gradient(#ffffff14 1px, transparent 1px) 0 0 / 24px 24px, linear-gradient(90deg, #ffffff14 1px, transparent 1px) 0 0 / 24px 24px, var(--blue);position:absolute;inset:0}.bp-inner{top:var(--bleed-y);bottom:0;left:var(--bleed-x);right:var(--bleed-x);position:absolute}.bp-copy-wrap{position:absolute}.bp-copy,.bp-copy *{transition:none!important;animation:none!important}.bp-copy{color:#ffffffbf}.bp-copy .write{clip-path:none}.bp-copy .draw path{stroke-dashoffset:0}.bp-copy .hero-name{font-family:var(--display)}.bp-copy .hero-name,.bp-copy .accent-line{color:#0000;-webkit-text-stroke:1.5px #fff}.bp-copy .hero-name .char-j:after{background:linear-gradient(#fff,#fff) 0 100%/1.5px .17em no-repeat;border-width:0 1.5px 1.5px 0;border-color:#fff}.bp-copy .hero-name .char-j:before{content:"";border-bottom:1.5px solid #fff;border-right:1.5px solid #fff;border-bottom-right-radius:.125em .19em;width:.3em;height:.07em;position:absolute;top:.97em;left:-.25em}.bp-copy .hero-role,.bp-copy .pen{color:#ffffffbf}.bp-copy .flag{filter:grayscale();opacity:.5}.bp-copy .fun-btn{--btn-bg:transparent;color:#fff}.bp-copy .fun-face,.bp-copy .fun-btn:active .fun-face{box-shadow:none;background:0 0;border:1.5px dashed #ffffffbf}.bp-copy :is(.btn-page,.fun-peek){display:none}.bp-palette{color:#fff;flex-wrap:wrap;gap:8px 16px;margin-top:26px;font-family:ui-monospace,monospace;font-size:.72rem;display:flex}.bp-palette span{align-items:center;gap:6px;display:inline-flex}.bp-palette i{border:1px solid #fff;border-radius:4px;width:16px;height:16px}.bp-marks{width:100%;height:100%;font-family:ui-monospace,monospace;font-size:11px;position:absolute;inset:0;overflow:visible}.bp-ring{z-index:7;border:3px solid var(--butter);width:260px;height:260px;box-shadow:0 0 0 2px var(--ink), 0 14px 30px #000a1a40;opacity:0;pointer-events:none;border-radius:50%;transition:opacity .25s;position:absolute;top:0;left:0}.bp-ring:before,.bp-ring:after{content:"";background:#fff9;position:absolute}.bp-ring:before{width:1px;height:16%;top:42%;left:50%}.bp-ring:after{width:16%;height:1px;top:50%;left:42%}.bp-ring span{background:var(--butter);color:var(--ink);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:2px 10px;font-family:ui-monospace,monospace;font-size:11px;position:absolute;bottom:-12px;left:50%;translate:-50%}.bp-toggle{z-index:8;border:2px solid var(--ink);--lit:var(--butter);color:#000a1a;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 12px 5px 9px;font-family:ui-monospace,monospace;font-size:12px;transition:translate .15s;display:inline-flex;position:absolute;bottom:20px;left:50%;translate:-50%}.bp-toggle:hover{translate:-50% -2px}.bp-toggle svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;width:14px}.bp-toggle[aria-pressed=true]{--lit:var(--blue);color:#fff}.bp-handle{display:none}.bp-touch .blueprint{clip-path:inset(0 0 0 calc(var(--split,72vw) + var(--bleed-x)));-webkit-mask-image:none;mask-image:none}.bp-touch .bp-ring{display:none}.bp-touch:not(.bp-on,[data-intro=playing]) .blueprint{visibility:hidden}.bp-touch.bp-on .bp-handle{z-index:7;background:var(--butter);touch-action:none;border:0;width:3px;padding:0;display:block;position:absolute;top:-140px;bottom:0;translate:-50%}.bp-touch.bp-on .bp-handle span{border:2px solid var(--ink);--lit:var(--butter);width:44px;height:44px;color:var(--ink);border-radius:50%;place-items:center;font-size:1.2rem;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}@media (prefers-reduced-motion:reduce){.blueprint{transition:none}}@property --wipe{syntax:"<length>";inherits:true;initial-value:0}.hero[data-intro] .hero-name .char,.hero[data-intro] .hero-fade{animation:none}.hero[data-intro=playing] .badge{visibility:hidden;animation:none}.hero[data-intro=done] .badge{animation-delay:0s,1.3s}.hero[data-intro=playing]>.hero-text .hero-note.write{clip-path:inset(-40% 100% -40% -5%);transition:none}.hero[data-intro=playing]>.hero-text .hero-note .draw path{stroke-dashoffset:1px;transition:none}.hero[data-intro=done]>.hero-text .hero-note{--d:50ms!important}.hero[data-intro=playing]{animation:1.05s cubic-bezier(.55,0,.35,1) .8s both paused bp-wipe}.hero[data-intro=playing].bp-touch{animation-name:bp-wipe-touch}@keyframes bp-wipe{0%{--wipe:-50vw}to{--wipe:100vw}}@keyframes bp-wipe-touch{0%{--wipe:-50vw}to{--wipe:var(--split,72vw)}}.hero[data-intro=playing] .blueprint{clip-path:inset(0 0 0 calc(var(--wipe) + var(--bleed-x)));-webkit-mask-image:none;mask-image:none}.hero[data-intro=playing] :is(.bp-copy-wrap,.bp-marks){animation:.7s cubic-bezier(.4,0,.5,1) both paused bp-plot}@keyframes bp-plot{0%{clip-path:inset(-60px 100% -60px -60px)}to{clip-path:inset(-60px -100vw -60px -60px)}}.hero[data-intro=playing] :is(.bp-ring,.bp-handle,.bp-toggle),.bp-sweep{display:none}.hero[data-intro=playing] .bp-sweep{z-index:8;top:-140px;bottom:0;left:var(--wipe);background:var(--butter);width:4px;box-shadow:0 0 0 1.5px var(--ink);pointer-events:none;display:block;position:absolute;translate:-50%}.bp-sweep svg{filter:drop-shadow(5px 6px #000a1a59);width:clamp(72px,9vw,130px);position:absolute;bottom:22%;left:0}.hero[data-intro=playing] .bp-sweep svg{animation:.26s ease-in-out infinite alternate paused bp-pen}@keyframes bp-pen{0%{translate:0 16vh}to{translate:0 -16vh}}.hero[data-intro=playing].bp-go,.bp-go[data-intro=playing] .bp-copy-wrap,.bp-go[data-intro=playing] .bp-marks,.bp-go[data-intro=playing] .bp-sweep svg{animation-play-state:running}.button,.nav-link,.nav-cta,.nav-drop-item,.menu-toggle,.charm-knob,.lang-bubble,.fun-face,.badge-contact a,.more-stamp,.more-core,.screen-side button.on,.screen-main li.linked,.skill-filter button,.social,.freelance-cta,.project-link,.quote-word,.quote-surprise,.carousel-nav,.lightbox-bar button,.lightbox-close,.bp-toggle,.bp-touch.bp-on .bp-handle span{--lit-top:color-mix(in srgb, var(--lit), #fff 16%);--lit-bottom:color-mix(in srgb, var(--lit), #000 9%);--lit-light:color-mix(in srgb, var(--lit), #fff 70%);--lit-shade:color-mix(in srgb, var(--lit), #000 32%);--lit-glow:color-mix(in srgb, var(--lit) 60%, transparent);background:linear-gradient(180deg, var(--lit-top), var(--lit-bottom));box-shadow:inset 0 1px 0 var(--lit-light), inset 0 -2px 0 var(--lit-shade), 0 1px 2px var(--lit-contact), 0 8px 22px -4px var(--lit-glow)}.button:active,.nav-link:active,.nav-cta:active,.nav-drop-item:active,.menu-toggle:active,.nav-charm:active .charm-knob,.lang-switch .charm-knob:active .lang-bubble,.fun-btn:active .fun-face,.badge-contact a:active,.more-link:active :is(.more-stamp,.more-core),.screen-side button.on:active,.screen-main li.linked:active,.skill-filter button:active,.social:active,.freelance-cta:active,.project-link:active,.quote-word:active,.quote-surprise:active,.carousel-nav:active,.lightbox-bar button:active,.lightbox-close:active,.bp-toggle:active,.bp-touch.bp-on .bp-handle:active span{background:linear-gradient(0deg, var(--lit-top), var(--lit-bottom));box-shadow:inset 0 2px 0 var(--lit-shade), inset 0 -1px 0 var(--lit-light), 0 0 1px var(--lit-contact), 0 3px 10px -3px var(--lit-glow)}.lang-switch .charm-knob,.nav-charm.lang-switch:active .charm-knob{background:var(--cream-deep);box-shadow:inset 0 1px 3px #000a1a4d,inset 0 -1px #ffffff80}
