@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700;800&display=swap";:root{--base-width: 1440;--base-font: 16px}html{font-size:var(--base-font)}*{box-sizing:border-box}html,body{margin:0;padding:0}html,body{--cursor: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'>  <circle cx='16' cy='16' r='10.5' fill='rgba(0,0,0,0.85)'/>  <circle cx='16' cy='16' r='10.5' fill='none' stroke='rgba(255,255,255,0.9)' stroke-width='1.4'/>  <circle cx='16' cy='16' r='10' fill='none' stroke='rgba(0,0,0,0.8)' stroke-width='0.8'/>  <circle cx='16' cy='16' r='2.2' fill='rgba(255,255,255,0.9)' stroke='rgba(0,0,0,0.6)' stroke-width='0.3'/></svg>") 16 16, auto;cursor:var(--cursor)!important}body *:not(iframe):not(canvas):not(video):not(img){cursor:var(--cursor, inherit)!important}html:active,body:active,*:active{--cursor: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'>  <circle cx='16' cy='16' r='10.5' fill='white'/>  <circle cx='16' cy='16' r='10.5' fill='none' stroke='black' stroke-width='1.4'/>  <circle cx='16' cy='16' r='10' fill='none' stroke='white' stroke-width='0.8'/>  <circle cx='16' cy='16' r='2.2' fill='black' stroke='white' stroke-width='0.3'/></svg>") 16 16, auto}a,button,[role=button],label,input:not([type=text]),select,[tabindex]:not([tabindex="-1"]),[draggable=true]{--cursor: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'>  <circle cx='16' cy='16' r='10.5' fill='rgba(0,0,0,0.85)'/>  <circle cx='16' cy='16' r='10.5' fill='none' stroke='rgba(255,255,255,0.9)' stroke-width='1.4'/>  <circle cx='16' cy='16' r='10' fill='none' stroke='rgba(0,0,0,0.8)' stroke-width='0.8'/>  <circle cx='16' cy='16' r='5.5' fill='none' stroke='rgba(255,255,255,0.8)' stroke-width='0.7'/>  <circle cx='16' cy='16' r='2.2' fill='rgba(255,255,255,0.9)' stroke='rgba(0,0,0,0.6)' stroke-width='0.3'/></svg>") 16 16, auto}@media (pointer: coarse){html,body,*{cursor:auto!important}}:root{--color-active: initial;--color-secondary: initial;--font-primary: Neue Haas Grotesk, sans-serif;--font-secondary: Open Sans, sans-serif;--font-base: Neue Haas Grotesk, sans-serif;--text-base-color: rgba(255, 255, 255, .87);--background-base: #2a2e31;--transition-default: .4s ease-in-out;--transition-fast: .25s ease;--color-black: #111;--color-white: #f3ecd8;--color-cyan: #1de8ff;--color-pink: #fc7f7f;--color-red: #ff3503;--color-blue: #031cff;--color-blue-variant: #0b24ff;--color-yellow: #fff700;--bg-black: #252525;--bg-white: #dedcd8;--bg-cyan: #94e6ef;--bg-pink: #ffb0b0;--bg-red: #ff7b5e;--bg-blue: #5292e6;--bg-yellow: #fdf4a0}html,body,#root{width:100%;max-width:100%;margin:0;padding:0;box-sizing:border-box;overflow-x:hidden;overscroll-behavior:none}*,*:before,*:after{box-sizing:inherit}html{box-sizing:border-box}html,body{min-height:100vh;height:100%;background-color:#212629;color:#ffffffde;font-family:Neue Haas Grotesk,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;transition:background-color .6s ease,color .6s ease;overflow-y:hidden}#root{min-width:0;min-height:100%;height:100%;overflow:hidden;overscroll-behavior:none}#hero,#footer{position:relative;min-width:0;z-index:0}iframe[src^="https://w.soundcloud.com/player/api.html"]{position:absolute!important;bottom:0!important;left:0!important;width:30px!important;height:30px!important;opacity:0!important;pointer-events:none!important;z-index:-1!important;border:none!important}main{width:100%;height:100vh;min-width:0;min-height:0;overflow-y:scroll;overflow-x:hidden;scroll-snap-type:y mandatory;scroll-behavior:smooth;overscroll-behavior:none;-webkit-overflow-scrolling:touch}main.main--projects{scroll-snap-type:none;scroll-behavior:auto;overscroll-behavior:none}@media (min-width: 1025px){main.main--projects-index{overflow-y:hidden}}main.main--locked{overflow-y:hidden}main>section{position:relative;display:block;width:100%;min-width:0;min-height:100vh;scroll-snap-align:start;scroll-snap-stop:always;z-index:0}main>section#footer{min-height:100vh;scroll-snap-align:start;scroll-snap-stop:normal}#hero,#music{display:flex;align-items:center;justify-content:center;scroll-snap-align:start}#music.app-section--hidden{display:none}.manifesto-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100000;width:100vw;height:100dvh;min-height:100svh;margin:0;padding:0;box-sizing:border-box;overflow:hidden;overscroll-behavior:none;background:#000;isolation:isolate}.manifesto-overlay__frame{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;margin:0;padding:0;box-sizing:border-box;border:0;overscroll-behavior:none;background:#000}.orientation-lock{display:none}@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse){.orientation-lock{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;width:100vw;height:100dvh;min-height:100svh;box-sizing:border-box;padding:max(1.5rem,env(safe-area-inset-top)) max(1.5rem,env(safe-area-inset-right)) max(1.5rem,env(safe-area-inset-bottom)) max(1.5rem,env(safe-area-inset-left));background:#212629;color:#ffffffe6;text-align:center;overflow:hidden;pointer-events:auto}.orientation-lock__phone{position:relative;width:2.5rem;height:4.5rem;flex-shrink:0;border:1.5px solid rgba(255,255,255,.8);border-radius:.45rem;transform:rotate(-90deg)}.orientation-lock__screen{position:absolute;top:.3rem;right:.3rem;bottom:.3rem;left:.3rem;border:1px solid rgba(255,255,255,.18);border-radius:.2rem}.orientation-lock__text{margin:.8rem 0 0;font-size:clamp(1.2rem,4vw,1.65rem);font-weight:500;letter-spacing:-.02em}.orientation-lock__hint{font-size:.75rem;font-weight:400;letter-spacing:.02em;color:#ffffff73}}@media (orientation: landscape) and (max-height: 430px) and (pointer: coarse){.orientation-lock{gap:.7rem;padding:max(.8rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(.8rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left))}.orientation-lock__phone{width:2rem;height:3.6rem}.orientation-lock__text{margin-top:.5rem;font-size:clamp(1rem,3.5vw,1.3rem)}.orientation-lock__hint{font-size:.68rem}}@media (prefers-reduced-motion: reduce){html,body{transition:none}main{scroll-behavior:auto}}
