@font-face{font-family:Manrope;src:url('/fonts/font-2.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/font-4.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Instrument;src:url('/fonts/font-0.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
:root{color-scheme:light;--citron:#e7fa78;--ink:#203323;--blue:#2549ed;--white:#f5f6f2;--drift:0px;--tilt:0deg;font-family:Manrope,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--citron);color:var(--ink);font-size:1rem;line-height:1.5;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:6px}::selection{background:var(--blue);color:white}
.skip{position:fixed;top:12px;left:12px;z-index:20;padding:12px 20px;background:var(--ink);color:var(--citron);transform:translateY(-180%)}.skip:focus{transform:none}.wrap{width:calc(100% - 112px);max-width:1440px;margin-inline:auto}.hero-shell{overflow:hidden;overflow:clip}
.header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:112px}.wordmark{font-size:1.875rem;font-weight:600;letter-spacing:-.07em;line-height:1.4}.header-right{display:flex;align-items:center;gap:28px}.location{font-size:.875rem;letter-spacing:-.02em}.motion-control{width:44px;height:44px;flex-shrink:0;border:1px solid #20332355;border-radius:50%;background:transparent;color:inherit;cursor:pointer;display:grid;place-items:center;transition:background .25s,color .25s}.motion-control[hidden]{display:none}.motion-control:hover{background:var(--ink);color:var(--citron)}.motion-icon{display:block;width:10px;height:12px;border-inline:3px solid currentColor}.motion-control[aria-pressed=true] .motion-icon{border:0;width:0;height:0;margin-left:3px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:10px solid currentColor}
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 29%;column-gap:5%;row-gap:44px;padding-top:56px;padding-bottom:90px;min-height:660px}.identity{position:relative;z-index:2;align-self:center;min-width:0}.eyebrow{margin:0 0 27px;font-size:1rem;letter-spacing:-.02em}h1{margin:0 0 0 -.065em;font-size:clamp(4rem,9.8vw,9.8rem);line-height:1.07;letter-spacing:-.025em;font-weight:600}.name-line{display:block;white-space:nowrap;transform:translateX(calc(var(--drift) * -1))}.name-line+.name-line{transform:translateX(var(--drift))}.char{display:inline-block;white-space:pre;transform-origin:50% 95%}
.portrait-stage{position:relative;grid-column:2;grid-row:1/3;align-self:center;min-width:0;z-index:1;margin:10px 0 0;transform:translateY(calc(var(--drift) * -1))}.portrait{margin:0;transform:rotate(calc(5deg + var(--tilt)));position:relative;z-index:1}.portrait-window{aspect-ratio:3/4;overflow:hidden;border-radius:24px;background:var(--blue);transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0)}.portrait img{width:100%;height:100%;object-fit:cover;object-position:51% 40%;display:block;transform:scale(1.05)}.portrait-orbit{position:absolute;inset:7% -9%;border:1px solid #20332366;border-radius:50%;transform:rotate(-23deg);z-index:0}.spark{position:absolute;z-index:3;color:var(--blue);width:clamp(56px,7vw,108px);height:clamp(56px,7vw,108px);left:-15%;bottom:0;transform:rotate(10deg)}.spark svg{width:100%;height:100%}
.intro-copy{grid-column:1;max-width:600px;align-self:start;position:relative;z-index:2}.tagline{margin:0;max-width:21em;font-size:clamp(1.375rem,2.15vw,2rem);line-height:1.37;letter-spacing:-.04em;text-wrap:pretty}.tagline>span{color:var(--blue)}.bio{margin:24px 0 0;font-size:1rem;line-height:1.6;letter-spacing:-.015em}
.ticker{background:var(--blue);color:var(--citron);padding:20px 0 24px;transform:rotate(-2.5deg) scale(1.04);position:relative;z-index:3;overflow:hidden}.ticker-track{display:flex;width:max-content}.ticker-group{display:flex;flex-shrink:0;align-items:center;gap:48px;padding-right:48px;font-size:clamp(2rem,4.6vw,4.75rem);font-weight:600;line-height:1.1;letter-spacing:-.055em}.ticker i{font-family:Arial,sans-serif;font-size:.7em;font-style:normal}
.connections{background:var(--blue);color:var(--white);margin-top:-40px;padding-top:116px}.elsewhere{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding-block:12px 68px}.destination{display:flex;align-items:flex-start;flex-direction:column;gap:8px;font-size:clamp(1.5rem,2.6vw,2.625rem);line-height:1.4;letter-spacing:-.055em;width:fit-content;max-width:100%}.destination small{font-size:.875rem;line-height:1.5;letter-spacing:0;color:#e2e7ff}.roll>span{display:block;position:relative;overflow:hidden;line-height:1.4}.roll>span::after{content:attr(data-label);position:absolute;inset:0;transform:translateY(110%);transition:transform .5s cubic-bezier(.22,1,.36,1);color:var(--citron)}.wordmark>span::after{color:var(--blue)}.roll>span .roll-text{display:block;transition:transform .5s cubic-bezier(.22,1,.36,1)}.roll:hover .roll-text,.roll:focus-visible .roll-text{transform:translateY(-110%)}.roll:hover>span::after,.roll:focus-visible>span::after{transform:translateY(0)}
.contact{padding:55px 0 92px;border-top:1px solid #ffffff55;display:flex;align-items:flex-end;justify-content:space-between;gap:32px}h2{font-size:clamp(4rem,10.8vw,10.5rem);line-height:1.05;letter-spacing:-.055em;font-weight:400;margin:0;white-space:nowrap}h2 em{font-family:Instrument,Georgia,serif;letter-spacing:-.03em;font-weight:400;color:var(--citron)}.contact-actions{display:flex;align-items:flex-start;flex-direction:column;gap:22px;padding-bottom:7px;min-width:0}.email{display:block;border:1px solid #ffffff88;border-radius:60px;padding:15px 27px;font-size:clamp(1rem,1.6vw,1.5rem);letter-spacing:-.035em;transition:background .3s,color .3s;max-width:100%;overflow-wrap:anywhere}.email:hover{background:var(--citron);color:var(--blue)}.email>span::after{color:var(--blue)}.telegram{font-size:.875rem;min-height:44px;display:flex;align-items:center}footer{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #ffffff55;padding-block:27px 32px;font-size:.8125rem;color:#e2e7ff}.footer-alias{font-size:1.5rem;font-weight:600;letter-spacing:-.06em;color:var(--citron)}
html[data-motion=on] .char{animation:letter-in 1.05s cubic-bezier(.16,1,.3,1) both,name-wave 7s ease-in-out infinite;animation-delay:calc(70ms + var(--i) * 35ms),calc(1.4s + var(--i) * 120ms)}html[data-motion=on] .portrait{animation:portrait-in 1.35s cubic-bezier(.16,1,.3,1) both,portrait-float 7s ease-in-out 1.35s infinite}html[data-motion=on] .portrait-window{animation:window-in 1.35s cubic-bezier(.16,1,.3,1) both}html[data-motion=on] .spark svg{animation:spin 15s linear infinite}html[data-motion=on] .portrait-orbit{animation:orbit 12s ease-in-out infinite}html[data-motion=on] .ticker-track{animation:ticker 26s linear infinite}html[data-motion=on] .eyebrow,html[data-motion=on] .intro-copy{animation:copy-in 1.1s cubic-bezier(.16,1,.3,1) .3s both}html[data-motion=on] .reveal{transition:opacity .8s,transform 1s cubic-bezier(.16,1,.3,1)}html[data-motion=on] .reveal:not(.in-view){opacity:0;transform:translateY(44px)}html[data-motion=off] *,html[data-motion=off] *::before,html[data-motion=off] *::after{animation-play-state:paused!important;scroll-behavior:auto!important}
@keyframes letter-in{from{transform:translate3d(0,95%,0) rotate(9deg);opacity:0}to{transform:translate3d(0,0,0) rotate(0);opacity:1}}@keyframes portrait-in{from{opacity:0;transform:translateY(60px) rotate(-9deg) scale(.88)}to{opacity:1;transform:translateY(0) rotate(5deg) scale(1)}}@keyframes window-in{from{clip-path:inset(48% 0 48% 0 round 160px)}to{clip-path:inset(0 round 0)}}@keyframes portrait-float{0%,100%{transform:translateY(0) rotate(calc(5deg + var(--tilt)))}50%{transform:translateY(-13px) rotate(calc(2deg + var(--tilt)))}}@keyframes copy-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes orbit{0%,100%{transform:rotate(-23deg) scale(1)}50%{transform:rotate(-10deg) scale(1.055)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ticker{to{transform:translateX(-50%)}}
@media(min-width:1600px){.hero{padding-block:80px 120px;row-gap:60px}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.header{min-height:92px}.hero{padding-top:34px;padding-bottom:72px;column-gap:4%;grid-template-columns:minmax(0,1fr) 30%;row-gap:30px;min-height:560px}h1{font-size:9.8vw}.tagline{font-size:1.5rem}.contact{align-items:flex-start;flex-direction:column;gap:38px;padding-bottom:65px}.contact-actions{flex-direction:row;align-items:center;gap:28px}}
@media(max-width:650px){.wrap{width:calc(100% - 44px)}.header{min-height:82px;gap:16px}.wordmark{font-size:1.625rem}.header-right{gap:12px}.location{font-size:.8125rem}.motion-control{width:40px;height:40px}.hero{grid-template-columns:1fr;gap:0;padding-top:28px;padding-bottom:58px;min-height:0}.identity{grid-column:1;grid-row:1}.eyebrow{margin-bottom:18px;font-size:.9375rem}h1{font-size:clamp(2.6rem,14.1vw,5rem);line-height:1.08;letter-spacing:-.025em}.name-line{white-space:normal;overflow-wrap:anywhere}.portrait-stage{grid-column:1;grid-row:2;width:72%;max-width:300px;margin:34px auto 40px;align-self:center}.portrait-window{aspect-ratio:1/1.08;border-radius:20px}.portrait img{object-position:51% 42%}.portrait-orbit{inset:4% -12%}.spark{width:70px;height:70px;left:-15%;bottom:-10px}.intro-copy{grid-column:1;grid-row:3}.tagline{font-size:1.5rem;line-height:1.35;max-width:20em;letter-spacing:-.04em}.bio{font-size:.9375rem;margin-top:19px}.ticker{padding-block:20px 22px;transform:rotate(-3deg) scale(1.06)}.ticker-group{font-size:2.25rem;gap:26px;padding-right:26px}.connections{padding-top:86px;margin-top:-25px}.elsewhere{grid-template-columns:1fr 1fr;gap:26px 20px;padding-bottom:43px}.destination{font-size:1.75rem;gap:2px;letter-spacing:-.05em}.destination small{font-size:.8125rem}.contact{padding:36px 0 43px;gap:26px}h2{font-size:clamp(3.5rem,18vw,6.5rem);white-space:normal}.contact-actions{flex-direction:column;align-items:flex-start;gap:13px;padding:0}.email{font-size:1.125rem;padding:13px 24px}.telegram{font-size:.875rem}footer{padding-block:22px 26px;gap:14px;font-size:.75rem}.footer-alias{font-size:1.375rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}.name-line,.portrait-stage{transform:none!important}}

/* Interaction is progressive: content remains complete without animation. */
.char{transition:color .3s,translate .5s cubic-bezier(.2,.8,.2,1),rotate .5s cubic-bezier(.2,.8,.2,1)}
@media(hover:hover) and (pointer:fine){html[data-motion=on] .char:hover{color:var(--blue);translate:0 -.12em;rotate:-6deg}}
html[data-motion=off] .roll-text,html[data-motion=off] .roll>span::after{transition:none}
/* Columns follow text size as well as viewport width. */
.elsewhere{grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr))}
.destination{min-width:0;width:100%}
.destination>span{max-width:100%;overflow-wrap:anywhere}
@media(max-width:650px){.elsewhere{grid-template-columns:repeat(auto-fit,minmax(min(100%,7rem),1fr))}}

@font-face{font-family:"Unbounded";src:url('/fonts/unbounded-semibold.woff') format('woff');font-weight:600;font-style:normal;font-display:swap}
.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;font-family:"Unbounded",sans-serif;font-weight:600;letter-spacing:.035em;line-height:1.2}
.brand-logo{display:block;flex:0 0 auto;transform:translateY(-5px);margin-inline-end:5px;width:30px;height:40px;background:currentColor;-webkit-mask:url('/logo.svg') center/contain no-repeat;mask:url('/logo.svg') center/contain no-repeat}
.wordmark{font-size:2rem}
.footer-alias{font-size:1.625rem;gap:9px}
.footer-alias .brand-logo{width:24px;height:32px}
.header,footer{flex-wrap:wrap}
.header{padding-block:16px}
.header-right{margin-left:auto}
.ticker-group>span{white-space:nowrap}
html[data-motion=on] .ticker-track{animation-duration:38s}
@keyframes name-wave{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}25%{transform:translate3d(0,-.055em,0) rotate(-1.2deg)}75%{transform:translate3d(0,.035em,0) rotate(.8deg)}}
@media(max-width:650px){.wordmark{font-size:1.625rem;gap:9px}.wordmark .brand-logo{width:25px;height:34px}.header{gap:12px}.footer-alias{font-size:1.375rem;gap:8px}.footer-alias .brand-logo{width:22px;height:29px}.destination small{max-width:100%;text-wrap:pretty}}

/* Prefer the color boundary; wrap words only within a segment that is too wide. */
.intro-copy{max-width:none}
.tagline{display:flex;flex-wrap:wrap;column-gap:.24em;max-width:none;text-wrap:wrap}
.tagline>span{flex:0 1 auto;min-width:0;max-width:100%;text-wrap:balance}
.tagline>.tagline-main{color:var(--ink)}
