@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{color:#eeeff1;font-synthesis:none;text-rendering:optimizelegibility;--bg:#090a0c;--panel:#101215;--white:#f1f2f2;--muted:#85898e;--line:#ecf0f424;--cyan:#7ce5f2;--mono:"DM Mono",monospace;--display:"Space Grotesk","Manrope",sans-serif;scroll-behavior:smooth;background:#090a0c;scroll-padding-top:94px;font-family:Manrope,Arial,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-width:320px;color:var(--white);margin:0}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--cyan);color:#080a0c}.page-grain{pointer-events:none;z-index:10;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.94' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.24'/%3E%3C/svg%3E");position:fixed;inset:0}.micro{font:10px/1.5 var(--mono);letter-spacing:.12em;color:#9ba0a4}.site-header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#090a0ce6;border-bottom:1px solid #ffffff12;align-items:center;height:82px;padding:0 5.5vw;display:flex;position:sticky;top:0}.wordmark{font:600 21px var(--display);letter-spacing:-.08em;color:#f5f5f5}.wordmark span{margin-left:3px;font-size:.8em}.wordmark i{color:var(--cyan);font-style:normal}.header-status{font:9px var(--mono);letter-spacing:.11em;color:#93979b;margin-left:42px}.header-status b{background:var(--cyan);border-radius:50%;width:6px;height:6px;margin:0 8px 1px 0;display:inline-block;box-shadow:0 0 12px #7ce5f277}.main-nav{gap:29px;margin-left:auto;display:flex}.main-nav a{font:600 11px var(--mono);color:#d2d4d6;transition:color .2s}.main-nav a span{color:#73777b;margin-right:6px;font-size:8px}.main-nav a:hover,.text-link:hover{color:var(--cyan)}.menu-toggle{display:none}.hero{background:radial-gradient(42% 56% at 73% 53%,#78dde912,#0000 75%),linear-gradient(115deg,#090a0c 15%,#0b0d10 65%,#0a0c0f);flex-direction:column;justify-content:center;min-height:calc(100svh - 82px);padding:28px 8.3vw 40px;display:flex;position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(90deg,#0000 49.9%,#ffffff0e 50%,#0000 50.1%),linear-gradient(#0000 49.9%,#ffffff0b 50%,#0000 50.1%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:8.33333% 12.5%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 60%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 60%,#0000 100%)}.hero-top{justify-content:space-between;display:flex;position:absolute;top:29px;left:8.3vw;right:8.3vw}.cyan-dot{color:var(--cyan);margin-left:5px;font-size:7px}.hero-content{z-index:1;width:100%;max-width:1200px;margin:auto;position:relative}.eyebrow{font:10px var(--mono);letter-spacing:.17em;color:#a6aaae;align-items:center;gap:12px;margin:0 0 28px;display:flex}.eyebrow-line{background:var(--cyan);width:38px;height:1px}h1{font-family:var(--display);letter-spacing:-.085em;flex-direction:column;align-items:flex-start;margin:0;font-weight:500;line-height:.77;display:flex}h1 .hero-name{white-space:nowrap;color:#f2f2f0;font-size:clamp(88px,15.4vw,230px)}.hero-surname{color:#0000;-webkit-text-stroke:1px #f1f2f2ad;padding-left:clamp(70px,14vw,215px);font-size:clamp(95px,16vw,239px);position:relative}.hero-surname:after{content:"";border:1px solid var(--cyan);border-radius:50%;width:clamp(12px,2vw,28px);height:clamp(12px,2vw,28px);position:absolute;top:25%;right:-35px;box-shadow:0 0 30px #7ce5f244}.period{color:var(--cyan);-webkit-text-stroke:0}.hero-bottom{justify-content:space-between;align-items:flex-end;margin:35px 3px 0 max(15px,15vw);display:flex}.hero-intro{color:#aeb2b5;max-width:360px;font-size:23px;line-height:1.8}.round-link{width:94px;height:94px;font:8px/1.5 var(--mono);letter-spacing:.07em;border:1px solid #72777a;border-radius:50%;justify-content:center;align-items:center;gap:8px;transition:all .25s;display:flex}.round-link .arrow{color:var(--cyan);font-size:15px}.round-link:hover{background:var(--cyan);color:#090a0c;border-color:var(--cyan);transform:rotate(-8deg)}.round-link:hover .arrow{color:#090a0c}.hero-side{z-index:2;writing-mode:vertical-rl;text-align:right;justify-content:space-between;height:220px;display:flex;position:absolute;top:44%;right:3vw}.hero-index{position:absolute;bottom:30px;left:8.3vw}.hero-index span{color:var(--cyan);padding:0 9px}.hero-grid{opacity:.7;border:1px solid #ffffff0f;position:absolute;inset:17% 8% 12% 56%;transform:skewY(-7deg)}.hero-grid span{background:#ffffff14;position:absolute}.hero-grid span:first-child,.hero-grid span:nth-child(2){width:1px;height:100%;left:33%}.hero-grid span:nth-child(2){left:66%}.hero-grid span:nth-child(3),.hero-grid span:nth-child(4){width:100%;height:1px;top:33%}.hero-grid span:nth-child(4){top:66%}.hero-grid span:nth-child(5){background:var(--cyan);width:5px;height:5px;box-shadow:0 0 18px var(--cyan);border-radius:50%;top:25%;right:20%}.section{border-top:1px solid var(--line);padding:130px 11vw;position:relative}.section-heading{grid-template-columns:minmax(190px,30%) 1fr;align-items:start;display:grid}.section-label{align-items:center;gap:12px;padding-top:18px;display:flex}.section-label span{color:var(--cyan)}.section-label i{background:#73777b;width:25px;height:1px}.section-heading h2,.contact-content h2{font:500 clamp(54px,8.2vw,112px)/.93 var(--display);letter-spacing:-.075em;margin:0}.section-heading h2 em,.contact-content h2 em{color:#0000;-webkit-text-stroke:1px #ebedee99;font-style:normal}.about-copy{color:#9da1a5;width:min(460px,60%);margin:55px 7% 0 auto;font-size:14px;line-height:1.9}.about-copy .lead{font:500 22px/1.5 var(--display);color:#e4e6e6;margin:0 0 17px}.about-meta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:90px 1fr;gap:10px 22px;margin:27px 0;padding:25px 0;display:grid}.about-meta span{font:9px var(--mono);letter-spacing:.12em;color:#74797e}.about-meta strong{color:#d6d8d9;font-size:11px;font-weight:500}.text-link{font:10px var(--mono);letter-spacing:.1em;color:#d8dbdc;transition:color .2s}.text-link .arrow{color:var(--cyan);margin-left:8px;font-size:15px}.section-note{color:#92979b;margin:38px 0 25px 30%;font-size:12px}.skill-groups{margin-left:30%}.skill-row{border-top:1px solid var(--line);grid-template-columns:42px 120px 1fr;align-items:start;gap:14px;padding:23px 0;display:grid}.skill-index{font:10px var(--mono);color:var(--cyan);padding-top:4px}.skill-row h3{font:12px var(--mono);letter-spacing:.12em;margin:0;padding-top:3px}.skill-tags{flex-wrap:wrap;gap:8px;display:flex}.skill-tags span,.project-stack span{font:10px var(--mono);color:#aeb3b6;border:1px solid #ffffff21;padding:8px 10px}.projects-intro{justify-content:space-between;align-items:center;gap:20px;margin:32px 0 45px 30%;display:flex}.projects-intro p{color:#9da1a5;font-size:12px}.project-list{border-top:1px solid var(--line)}.project-card{border-bottom:1px solid var(--line);grid-template-columns:70px 1fr 40px;gap:18px;padding:33px 15px 35px 0;transition:background .25s,padding .25s;display:grid;position:relative}.project-card:hover{background:linear-gradient(90deg,#7ce5f20b,#0000);padding-left:15px;padding-right:0}.project-no{font:11px var(--mono);color:var(--cyan);padding-top:4px}.project-category{color:#82888d;font-size:9px}.project-main h3{font:500 clamp(20px,2.8vw,34px)/1.25 var(--display);letter-spacing:-.035em;margin:9px 0}.project-main p{color:#a4a8ab;max-width:670px;margin:0 0 15px;font-size:12px;line-height:1.8}.project-stack{flex-wrap:wrap;gap:6px;display:flex}.project-stack span{padding:5px 8px;font-size:9px}.project-main small{color:#73797d;font:9px/1.7 var(--mono);margin-top:11px;display:block}.project-arrow{color:#757b80;justify-self:end;font-size:18px;transition:color .2s,transform .2s}.project-card:hover .project-arrow{color:var(--cyan);transform:translate(3px,-3px)}.empty-note{border:1px solid var(--line);align-items:center;gap:25px;min-height:160px;margin:48px 0 0 30%;padding:25px;display:flex;position:relative}.empty-mark{font:11px var(--mono);color:var(--cyan)}.empty-note p{font:18px/1.5 var(--display);color:#e3e5e6}.empty-note p span{color:#8d9397;font:11px/1.7 Manrope,sans-serif}.empty-note .micro{font-size:8px;position:absolute;bottom:17px;right:22px}.post-list{border-top:1px solid var(--line);margin:45px 0 0 30%}.post-row{border-bottom:1px solid var(--line);grid-template-columns:90px 1fr 30px;align-items:center;gap:20px;padding:25px 0;display:grid}.post-row>span{font:10px var(--mono);color:var(--cyan)}.post-row h3{font:20px var(--display);margin:0 0 6px}.post-row p{color:#969b9f;margin:0;font-size:11px}.post-row>.arrow{color:var(--cyan)}.contact-section{border-top:1px solid var(--line);background:radial-gradient(at 65% 55%,#70d1dc13,#0000 50%),#08090b;min-height:520px;padding:100px 11vw 36px;position:relative;overflow:hidden}.contact-section:after{content:"AW";font:700 40vw/.8 var(--display);letter-spacing:-.12em;color:#ffffff05;pointer-events:none;position:absolute;bottom:-13%;right:-4%}.contact-kicker{z-index:1;position:relative}.contact-kicker span{color:var(--cyan);padding:0 9px}.contact-content{z-index:1;max-width:670px;margin:55px 0 68px 30%;position:relative}.contact-content p{color:#9da2a5;max-width:350px;margin:25px 0;font-size:12px;line-height:1.8}.contact-button{font:10px var(--mono);letter-spacing:.12em;border:1px solid #777d80;align-items:center;gap:40px;padding:15px 17px;transition:all .2s;display:inline-flex}.contact-button .arrow{color:var(--cyan);font-size:16px}.contact-button:hover{border-color:var(--cyan);background:#7ce5f20d}.contact-bottom{border-top:1px solid var(--line);justify-content:space-between;padding-top:18px;font-size:8px;display:flex}.site-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;height:82px;padding:0 5.5vw;font-size:8px;display:flex}.site-footer>a:last-child{color:#c2c5c7;transition:color .2s}.site-footer>a:last-child:hover{color:var(--cyan)}[data-reveal]{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1);transform:translateY(18px)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}@media (width<=760px){:root{scroll-padding-top:112px}.site-header{height:68px;padding:0 6vw}.header-status{max-width:140px;margin-left:20px;font-size:7px;line-height:1.6}.menu-toggle{color:#e7e8e9;font:10px var(--mono);letter-spacing:.1em;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:12px 0 12px 12px;display:block}.main-nav{border-bottom:1px solid var(--line);background:#0b0d0f;flex-direction:column;gap:20px;padding:20px 6vw 24px;display:none;position:absolute;top:67px;left:0;right:0}.main-nav.open{display:flex}.main-nav a{font-size:13px}.hero{min-height:calc(86svh - 68px);padding:25px 7vw 38px}.hero-top{font-size:8px;top:23px;left:7vw;right:7vw}.hero-content{margin-top:40px}.eyebrow{margin-bottom:25px;font-size:8px}.hero h1 .hero-name{font-size:clamp(68px,16vw,120px)}.hero-surname{padding-left:16vw;font-size:clamp(86px,20vw,145px)}.hero-bottom{margin:28px 0 0 5vw}.hero-intro{max-width:245px;font-size:13px}.round-link{width:77px;height:77px;font-size:7px}.hero-side{height:170px;font-size:8px;top:49%;right:3vw}.hero-index{font-size:8px;bottom:20px;left:7vw}.hero-grid{inset:23% 4% 20% 43%}.section{padding:90px 7vw}.section-heading{grid-template-columns:1fr;gap:25px}.section-label{padding:0}.section-heading h2{font-size:clamp(58px,13vw,92px)}.about-copy{width:88%;margin:40px 0 0 auto}.about-copy .lead{font-size:20px}.section-note,.skill-groups,.projects-intro,.empty-note,.post-list{margin-left:0}.section-note{line-height:1.7}.skill-row{grid-template-columns:32px 95px 1fr;gap:8px}.skill-row h3{font-size:10px}.skill-tags span{padding:7px;font-size:9px}.projects-intro{flex-direction:column;align-items:flex-start;margin-bottom:30px}.project-card{grid-template-columns:34px 1fr 20px;gap:10px;padding:25px 0}.project-main h3{font-size:24px}.project-main p{font-size:11px}.project-no{font-size:9px}.empty-note{gap:15px;min-height:150px;padding:20px}.empty-note p{font-size:16px}.empty-note .micro{font-size:7px;bottom:10px;right:15px}.post-row{grid-template-columns:62px 1fr 18px;gap:12px}.post-row h3{font-size:17px}.contact-section{min-height:470px;padding:76px 7vw 26px}.contact-content{margin:60px 0 60px 7%}.contact-content h2{font-size:clamp(49px,11vw,78px)}.contact-bottom{gap:10px;font-size:7px}.site-footer{gap:10px;height:70px;padding:0 6vw}.site-footer>span{text-align:center;max-width:145px;font-size:7px;line-height:1.6}.site-footer>a:last-child{font-size:7px}}@media (width<=430px){.header-status{max-width:112px}.hero-top{font-size:7px}.hero h1 .hero-name{font-size:16vw}.hero-surname{font-size:21vw}.hero-intro{max-width:200px;font-size:12px}.round-link{width:67px;height:67px}.hero-side{font-size:7px}.skill-row{grid-template-columns:24px 1fr;row-gap:12px}.skill-tags{grid-column:2}.project-card{grid-template-columns:26px 1fr 16px}.contact-bottom{flex-direction:column}.site-footer .wordmark{font-size:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}}.hero h1{white-space:nowrap;flex-direction:row;align-items:baseline;gap:clamp(5px,1.4vw,20px);width:100%;line-height:.95}.hero h1 .hero-name,.hero h1 .hero-surname{font-size:clamp(25px,8vw,125px);line-height:.95}.hero-surname{padding-left:0}.hero-surname:after{width:clamp(10px,1.8vw,22px);height:clamp(10px,1.8vw,22px);top:18%;right:clamp(-18px,-1.4vw,-7px)}.about-links,.contact-links{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.project-details{color:#a4a8ab;max-width:700px;margin:0 0 15px;padding:0 0 0 16px;font-size:12px;line-height:1.8}.contact-links .contact-button{gap:20px}@media (width<=760px){.hero h1 .hero-name,.hero h1 .hero-surname{font-size:clamp(34px,10vw,76px)}.skill-content{grid-column:2}.project-details{font-size:11px}.contact-links{gap:10px}.contact-links .contact-button{gap:12px;padding:13px 11px;font-size:9px}}@media (width<=430px){.hero h1 .hero-name,.hero h1 .hero-surname{font-size:clamp(34px,10vw,43px)}.about-links{gap:12px}.contact-links .contact-button{font-size:8px}}.skills-section .section-heading h2{white-space:nowrap;letter-spacing:-.07em;font-size:clamp(28px,4.9vw,70px)}.skill-row{grid-template-columns:32px 165px minmax(0,1fr);gap:12px}.skill-row h3{white-space:nowrap}.skill-tags{scrollbar-width:thin;scrollbar-color:#7ce5f273 #ffffff0f;flex-wrap:nowrap;gap:8px;min-width:0;padding:3px 3px 9px;display:flex;overflow:auto hidden}.skill-tags span{white-space:nowrap;flex:none}.skill-tags{align-items:center}.skill-tags:focus-visible{outline:1px solid var(--cyan);outline-offset:2px}@media (width<=760px){.skill-row{grid-template-columns:24px 120px minmax(0,1fr);gap:8px}.skill-row h3{letter-spacing:.06em;font-size:9px}.skill-content{grid-column:3}}.section-heading h2,.contact-content h2{font-size:clamp(28px,4.8vw,68px);font-weight:500;line-height:.96}.skills-section .section-heading h2{font-size:clamp(28px,4.8vw,68px)}.hero-surname{color:#f2f2f0;-webkit-text-stroke:0}.hero-intro{transition:color .25s,text-shadow .25s,transform .25s}.hero-intro:hover{color:#d9f5f8;text-shadow:0 0 12px #7ce5f247;transform:translate(3px)}.header-status{transition:color .25s,text-shadow .25s}.header-status b{transition:transform .25s,box-shadow .25s}.header-status:hover{color:#d9f5f8;text-shadow:0 0 12px #7ce5f247}.header-status:hover b{transform:scale(1.25);box-shadow:0 0 14px #7ce5f2b8}.hero-grid:before{content:"";opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000,#7ce5f27a,#0000);height:1px;animation:16s ease-in-out infinite gridScan;position:absolute;top:8%;left:0;right:0;box-shadow:0 0 14px #7ce5f229}.hero-grid span:nth-child(5){animation:5s ease-in-out infinite signalPulse}@keyframes gridScan{0%,to{opacity:0;top:8%}12%{opacity:.36;top:8%}82%{opacity:.36;top:88%}92%{opacity:0;top:92%}}@keyframes signalPulse{0%,to{opacity:.58;box-shadow:0 0 8px #7ce5f26b}50%{opacity:1;box-shadow:0 0 16px #7ce5f2b8}}@media (prefers-reduced-motion:reduce){.hero-grid:before,.hero-grid span:nth-child(5){animation:none}}.about-copy{text-align:center;width:min(620px,88%);margin:55px auto 0}.about-meta{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px 20px;display:flex}@media (width<=760px){.about-copy{width:88%;margin:40px auto 0}}.skill-groups{width:min(900px,100%);margin:0 auto}@media (width<=760px){.site-header{flex-wrap:wrap;align-content:center;height:auto;min-height:68px;padding:9px 6vw 0}.menu-toggle{display:none}.main-nav,.main-nav.open{background:0 0;border-top:1px solid #ffffff1a;border-bottom:0;flex-flow:row;flex:0 0 100%;order:3;gap:clamp(10px,3.4vw,22px);width:100%;margin:8px 0 0;padding:10px 0 11px;display:flex;position:static;overflow-x:auto}.main-nav a{white-space:nowrap;flex:none;font-size:10px}.main-nav a span{font-size:7px}.hero{min-height:calc(86svh - 90px)}}.main-nav a{align-items:center;padding:8px 0;transition:color .25s;display:inline-flex;position:relative}.main-nav a:after{content:"";background:linear-gradient(90deg,var(--cyan),transparent);transform-origin:0;height:1px;transition:transform .25s;position:absolute;bottom:3px;left:0;right:0;transform:scaleX(0)}.main-nav a:hover,.main-nav a:focus-visible{color:var(--cyan)}.main-nav a:hover:after,.main-nav a:focus-visible:after{transform:scaleX(1)}.main-nav a:hover span,.main-nav a:focus-visible span{color:var(--cyan)}.main-nav a:focus-visible{outline:1px solid var(--cyan);outline-offset:4px}.main-nav a.nav-resume-link{color:#d2d9dc;letter-spacing:.1em;text-transform:uppercase;border:1px solid #ecf0f433;gap:8px;padding:7px 10px;font-size:10px}.main-nav a.nav-resume-link:hover,.main-nav a.nav-resume-link:focus-visible{border-color:var(--cyan);color:#fff;background:#7ce5f20f}.main-nav a.nav-resume-link .nav-download-icon{color:var(--cyan);margin:0;font-size:14px;line-height:1}.micro{transition:color .25s,text-shadow .25s}.micro:hover{color:var(--cyan);text-shadow:0 0 12px #7ce5f247}.section,.contact-section{isolation:isolate}.section:before,.contact-section:before{content:"";z-index:-1;pointer-events:none;opacity:.22;background-image:linear-gradient(#c8dce10e 1px,#0000 1px),linear-gradient(90deg,#c8dce10e 1px,#0000 1px);background-position:0 0;background-size:84px 84px;animation:38s linear infinite ambientGridDrift;position:absolute;inset:0;-webkit-mask-image:linear-gradient(115deg,#0000 0%,#000 18% 82%,#0000 100%);mask-image:linear-gradient(115deg,#0000 0%,#000 18% 82%,#0000 100%)}.hero:before{content:"";z-index:0;pointer-events:none;opacity:.18;background-image:linear-gradient(#c8dce10e 1px,#0000 1px),linear-gradient(90deg,#c8dce10e 1px,#0000 1px);background-position:0 0;background-size:84px 84px;animation:38s linear infinite ambientGridDrift;position:absolute;inset:0;-webkit-mask-image:linear-gradient(115deg,#0000 0%,#000 18% 82%,#0000 100%);mask-image:linear-gradient(115deg,#0000 0%,#000 18% 82%,#0000 100%)}@keyframes ambientGridDrift{to{background-position:84px 42px}}@media (prefers-reduced-motion:reduce){.hero:before,.section:before,.contact-section:before{animation:none}}a:focus-visible,.menu-toggle:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}img,video,canvas,svg{max-width:100%}pre{max-width:100%;overflow-x:auto}main,.section,.contact-section,.project-main,.post-row>div,body{min-width:0}@media (width<=760px){.site-header{flex-wrap:wrap;align-content:center;height:auto;min-height:68px;padding:9px 6vw 0}.header-status{max-width:clamp(105px,35vw,145px);margin-left:clamp(12px,4vw,20px)}.menu-toggle{display:none}.main-nav,.main-nav.open{z-index:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;background:0 0;border-top:1px solid #ffffff1a;border-bottom:0;flex-flow:row;flex:0 0 100%;order:3;gap:clamp(5px,1.7vw,12px);width:100%;max-height:none;margin:8px 0 0;padding:8px 0 10px;display:flex;position:static;overflow:auto hidden}.main-nav::-webkit-scrollbar{display:none}.main-nav a{white-space:nowrap;flex:none;align-items:center;min-height:44px;padding:10px 0;font-size:clamp(9px,2.8vw,11px);display:inline-flex}.main-nav a span{margin-right:4px;font-size:7px}.section{padding:clamp(76px,12vw,96px) 7vw}.section-heading{gap:clamp(18px,5vw,25px)}.section-label{flex-wrap:wrap;row-gap:6px}.about-copy{width:100%;margin:36px auto 0}.contact-section{padding:76px 7vw 26px}.contact-content{width:100%;margin:48px 0 56px}.contact-button{min-height:44px}}@media (width<=430px){.hero{padding-left:6vw;padding-right:6vw}.hero h1{letter-spacing:-.09em;gap:4px}.hero h1 .hero-name,.hero h1 .hero-surname{font-size:clamp(32px,10vw,43px)}.hero-surname:after{right:-10px}.hero-bottom{gap:12px;margin-left:0}.hero-intro{flex:1;min-width:0;max-width:none;font-size:clamp(11px,3.4vw,13px)}.round-link{flex:0 0 clamp(58px,18vw,67px);width:clamp(58px,18vw,67px);height:clamp(58px,18vw,67px)}.hero-index{max-width:88%;line-height:1.7}.section-heading h2,.contact-content h2{overflow-wrap:anywhere}.about-meta{grid-template-columns:1fr;gap:8px}.skill-row{grid-template-columns:24px minmax(0,1fr);gap:10px 8px}.skill-row h3{white-space:normal;overflow-wrap:anywhere}.skill-content{grid-column:2}.project-card{grid-template-columns:26px minmax(0,1fr) 16px;gap:9px}.project-main h3,.project-details{overflow-wrap:anywhere}.empty-note{align-items:flex-start;gap:12px;padding:18px 16px}.empty-note p{margin-top:0;padding-bottom:25px}.post-row{grid-template-columns:52px minmax(0,1fr) 16px;gap:10px}.contact-links{align-items:stretch}.contact-links .contact-button{letter-spacing:.08em;gap:10px;max-width:100%;min-height:44px;padding:12px 10px;font-size:8px}.contact-bottom{overflow-wrap:anywhere}}@media (width<=360px){.header-status{letter-spacing:.06em;max-width:100px;font-size:6px}.hero h1 .hero-name,.hero h1 .hero-surname{font-size:32px}.hero-bottom{gap:8px}.round-link{flex-basis:58px;width:58px;height:58px}}.project-list{border-top:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px;display:grid}.project-card{border-top:1px solid var(--line);border-bottom:0;grid-template-columns:30px minmax(0,1fr) 16px;align-content:start;gap:12px;min-width:0;height:100%;min-height:300px;padding:25px 12px 25px 0}.project-cover{aspect-ratio:16/9;background:#111417;border:1px solid #ffffff1a;grid-column:1/-1;width:100%;margin-bottom:4px;position:relative;overflow:hidden}.project-cover img{object-fit:cover;object-position:center;width:100%;height:100%;transform:scale(var(--cover-scale,1));transition:transform .45s;display:block}.project-card:hover .project-cover img{transform:scale(var(--cover-hover-scale,1.025))}.music-toggle{z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#b9c0c3;min-height:38px;font:9px var(--mono);letter-spacing:.12em;cursor:pointer;background:#090a0cd1;border:1px solid #ecf0f433;border-radius:999px;align-items:center;gap:9px;padding:0 12px;transition:border-color .2s,color .2s,background .2s;display:inline-flex;position:fixed;bottom:20px;right:22px}.music-toggle:hover,.music-toggle:focus-visible{border-color:var(--cyan);color:#eefcfd;background:#0c1315f0}.music-toggle:focus-visible{outline:1px solid var(--cyan);outline-offset:3px}.music-toggle:disabled{opacity:.65;cursor:not-allowed}.music-toggle-icon{color:var(--cyan);font:17px/1 var(--display);letter-spacing:0}.music-toggle.is-playing .music-toggle-icon{animation:1.8s ease-in-out infinite music-note-pulse}@keyframes music-note-pulse{50%{text-shadow:0 0 10px #7ce5f2a6}}@media (width<=760px){.music-toggle{min-height:36px;padding:0 10px;font-size:8px;bottom:14px;right:14px}}@media (prefers-reduced-motion:reduce){.music-toggle.is-playing .music-toggle-icon{animation:none}}@media (width<=760px){.hero-intro{font-size:clamp(14px,2.2vw,16px)}}@media (width<=430px){.hero-intro{font-size:clamp(13px,3.8vw,15px)}}.hero h1{column-gap:clamp(10px,2vw,24px)}@media (width<=430px){.hero h1{column-gap:6px}}@media (width<=360px){.hero h1{column-gap:5px}}@media (width>=761px){.main-nav a{font-size:12px}}.project-cover-fallback{color:#e8ebed;background:radial-gradient(at 78% 40%,#7ce5f21a,#0000 44%),linear-gradient(120deg,#0d1013,#121619 58%,#0b0e11);justify-content:space-between;align-items:center;gap:18px;padding:clamp(16px,3vw,30px);display:flex;position:absolute;inset:0;overflow:hidden}.project-cover-fallback:before{content:"";pointer-events:none;background-image:linear-gradient(#c8dce10e 1px,#0000 1px),linear-gradient(90deg,#c8dce10e 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(110deg,#0000,#000 45%,#000);mask-image:linear-gradient(110deg,#0000,#000 45%,#000)}.project-cover-fallback>span{font:500 clamp(34px,6vw,68px)/1 var(--display);letter-spacing:-.08em;color:#f0f3f4b8;position:relative}.project-cover-fallback small{font:9px/1.6 var(--mono);letter-spacing:.14em;color:#9ca4a9;text-align:right;position:relative}.project-cover-fallback small:before{content:"COVER IMAGE";color:var(--cyan);margin-bottom:5px;font-size:8px;display:block}.project-summary{color:#a4a8ab;margin:0 0 17px;font-size:12px;line-height:1.75}.project-details{padding-left:15px}.all-projects-section .section-heading h2{font-size:clamp(28px,4.8vw,68px)}.all-projects-intro{color:#92979b;margin:34px 0 28px 30%;font-size:12px;line-height:1.7}.all-projects-list .project-card{min-height:340px}@media (width<=640px){.project-list{grid-template-columns:minmax(0,1fr);gap:0}.project-card,.all-projects-list .project-card{grid-template-columns:26px minmax(0,1fr) 16px;height:auto;min-height:0;padding:23px 4px 25px 0}.all-projects-intro{margin:30px 0 26px}}@media (prefers-reduced-motion:reduce){.project-card:hover .project-cover img{transform:scale(var(--cover-scale,1))}}.project-list{grid-auto-rows:auto;align-items:start;gap:22px 24px}.project-card{background:linear-gradient(145deg,#111417e0,#0a0c0ef0);border:1px solid #ecf0f424;flex-direction:column;align-self:start;height:auto;min-height:460px;padding:14px;transition:transform .22s,border-color .22s,background .22s;display:flex}.project-card:hover{background:linear-gradient(145deg,#14191cf5,#0a0c0ef5);border-color:#7ce5f285;padding:14px;transform:translateY(-2px)}.project-cover{aspect-ratio:16/9;border-color:#ffffff17;flex:none;margin:0}.project-card-meta{align-items:center;gap:10px;min-height:18px;margin:14px 0 4px;display:flex}.project-no{font:10px var(--mono);color:var(--cyan);padding:0}.project-card-meta .project-category{letter-spacing:.12em;font-size:8px}.project-arrow{margin-left:auto;line-height:1}.project-main{flex-direction:column;flex:1;width:100%;min-width:0;display:flex}.project-main h3{letter-spacing:-.04em;min-height:2.45em;margin:8px 0 10px;font-size:clamp(19px,2.1vw,27px);line-height:1.22}.project-summary{color:#a4a8ab;min-height:3.5em;margin:0;font-size:12px;line-height:1.7}.project-details{flex:1;margin-bottom:12px;font-size:11px;line-height:1.7}.project-details li+li{margin-top:5px}.project-card .project-stack{flex-wrap:wrap;align-items:center;gap:6px 7px;margin-top:auto;padding-top:15px;display:flex}.project-card .project-stack span{color:#b4dce1;white-space:nowrap;background:#ffffff06;border-color:#ffffff29;padding:6px 8px;font-size:9px}.project-main h3 a{color:inherit;transition:color .2s}.project-main h3 a:hover,.project-main h3 a:focus-visible,.project-arrow:hover{color:var(--cyan)}@media (width<=640px){.project-list{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:16px}.project-card,.all-projects-list .project-card{height:auto;min-height:0;padding:12px}.project-card:hover{padding:12px}.project-main h3{min-height:0;font-size:clamp(21px,5vw,26px)}.project-summary{min-height:0;margin-bottom:5px}.project-details{flex:initial}}@media (prefers-reduced-motion:reduce){.project-card,.project-cover img{transition:none}}.tech-atmosphere{z-index:0;pointer-events:none;opacity:.58;position:fixed;inset:0;overflow:hidden}.tech-atmosphere:before{content:"";background:radial-gradient(at 50% 48%,#05182b52,#0000 76%);position:absolute;inset:0}.tech-circuit-layer{fill:none;stroke:#1977c2b3;stroke-width:1.1px;opacity:.78;width:100%;height:100%;position:absolute;inset:0}.tech-circuit-layer .tech-dot-field{fill:url(#tech-dots);stroke:none;opacity:.32}.tech-circuit-layer #tech-dots circle{fill:#1289db;stroke:none}.tech-circuit-nodes{fill:#3af;stroke:none;filter:drop-shadow(0 0 4px #078df4)}.tech-mark{color:#a8e5ec;opacity:.38;fill:none;stroke:currentColor;stroke-width:1.15px;stroke-linecap:round;stroke-linejoin:round;grid-template-columns:clamp(24px,2.4vw,38px) auto;align-items:center;column-gap:clamp(7px,1vw,13px);display:grid;position:absolute}.tech-mark--right{grid-template-columns:auto clamp(24px,2.4vw,38px)}.tech-mark--blue{color:#48aeff}.tech-mark--violet{color:#ae83ff}.tech-mark--teal{color:#39c6c2}.tech-mark--amber{color:#f19b55}.tech-mark--coral{color:#ee776d}.tech-mark-icon{grid-column:1;width:clamp(20px,2.2vw,34px);height:clamp(20px,2.2vw,34px);overflow:visible}.tech-mark--right .tech-mark-icon{grid-column:2}.tech-mark-label{font:clamp(8px,.72vw,11px)/1.4 var(--mono);letter-spacing:.1em;white-space:nowrap;color:currentColor;grid-column:2}.tech-mark--right .tech-mark-label{text-align:right;grid-area:1/1}.tech-mark-node{background:#7ce5f2;border-radius:50%;width:3px;height:3px;position:absolute;top:9px;left:-8px;box-shadow:0 0 5px #7ce5f2}.tech-mark--right .tech-mark-node{left:auto;right:-8px}.tech-atmosphere-lambda{font:19px var(--display);letter-spacing:0;fill:currentColor;stroke:none}@keyframes constellationDriftA{0%,to{transform:translate(0,0)}50%{transform:translate(3px,-2px)}}@keyframes constellationDriftB{0%,to{transform:translate(0,0)}50%{transform:translate(-2px,3px)}}@keyframes constellationDriftC{0%,to{transform:translate(0,0)}50%{transform:translate(2px,2px)}}@keyframes constellationDriftD{0%,to{transform:translate(0,0)}50%{transform:translate(-3px,-1px)}}@keyframes constellationPulse{0%,to{opacity:.38}50%{opacity:1}}.tech-mark--drift-a{animation:42s ease-in-out infinite constellationDriftA}.tech-mark--drift-b{animation:51s ease-in-out infinite constellationDriftB}.tech-mark--drift-c{animation:46s ease-in-out infinite constellationDriftC}.tech-mark--drift-d{animation:57s ease-in-out infinite constellationDriftD}.tech-circuit-nodes circle:nth-child(2),.tech-circuit-nodes circle:nth-child(5),.tech-circuit-nodes circle:nth-child(8){animation:9s ease-in-out infinite constellationPulse}.tech-circuit-nodes circle:nth-child(5){animation-delay:-4s}.tech-circuit-nodes circle:nth-child(8){animation-delay:-6s}main,.site-footer{z-index:1;position:relative}.hero{background:radial-gradient(42% 56% at 73% 53%,#78dde912,#0000 75%),linear-gradient(115deg,#090a0c4d 15%,#0b0d1047 65%,#0a0c0f4d)}.skills-section{background:linear-gradient(#0c0e1099 0%,#090a0c94 100%)}.blog-section{background:#0d0f1199}.contact-section{background:radial-gradient(at 65% 55%,#70d1dc13,#0000 50%),#08090b9e}@media (width<=760px){.tech-atmosphere{opacity:.36}.tech-mark--extra{display:none}.tech-circuit-layer{opacity:.68}}@media (width<=1440px){.tech-mark-label{display:none}}@media (width<=430px){.tech-atmosphere{opacity:.28}.tech-mark{opacity:.34}.tech-mark-label{display:none}.tech-mark-icon{width:18px;height:18px}}@media (prefers-reduced-motion:reduce){.tech-atmosphere *{scroll-behavior:auto!important;animation:none!important}.tech-mark--drift-a,.tech-mark--drift-b,.tech-mark--drift-c,.tech-mark--drift-d,.tech-circuit-nodes circle{animation:none!important}}@media (width<=640px){.project-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:14px 12px}.project-card,.all-projects-list .project-card{gap:8px;height:auto;min-height:0;padding:9px}.project-card:hover{padding:9px}.project-card-meta{gap:6px;min-height:16px;margin:9px 0 3px}.project-card-meta .project-category{letter-spacing:.08em;font-size:7px}.project-main h3{overflow-wrap:anywhere;min-height:0;margin:5px 0 8px;font-size:clamp(14px,3.9vw,19px);line-height:1.2}.project-summary{min-height:0;margin:0 0 7px;font-size:10px;line-height:1.55}.project-details{flex:initial;overflow-wrap:anywhere;margin:0 0 8px;padding-left:13px;font-size:9px;line-height:1.55}.project-card .project-stack{gap:5px;margin-top:auto;padding-top:8px}.project-card .project-stack span{white-space:normal;overflow-wrap:anywhere;padding:5px 6px;font-size:8px}.project-main{overflow-wrap:anywhere}}@media (width<=360px){.project-list{gap:10px 8px}.project-card,.all-projects-list .project-card,.project-card:hover{padding:7px}.project-card-meta .project-category{font-size:6px}.project-main h3{font-size:13px}.project-summary,.project-details{font-size:9px}.project-card .project-stack span{padding:4px 5px;font-size:7px}}.contact-links .contact-icon-button{color:#c6dadd;justify-content:center;align-items:center;gap:0;width:58px;max-width:none;height:58px;min-height:58px;padding:0;display:inline-flex}.projects-section .project-list{gap:16px;width:min(900px,100%);margin-inline:auto}.projects-section .project-card{gap:8px;min-height:0;padding:10px}.projects-section .project-card:hover{padding:10px}.projects-section .project-cover{margin-bottom:0}.projects-section .project-card-meta{margin:9px 0 2px}.projects-section .project-main{flex:initial}.projects-section .project-main h3{min-height:0;margin:5px 0 7px;font-size:clamp(17px,1.8vw,23px)}.projects-section .project-summary{min-height:0;margin:0 0 8px;font-size:11px;line-height:1.6}.projects-section .project-card .project-stack{gap:5px;margin-top:0;padding-top:7px}.projects-section .project-card .project-stack span{padding:5px 7px;font-size:8px}@media (width<=640px){.projects-section .project-list{gap:12px 10px;width:100%}.projects-section .project-card,.projects-section .project-card:hover{padding:8px}.projects-section .project-main h3{font-size:clamp(13px,3.4vw,17px)}.projects-section .project-summary{font-size:9px}}@media (width<=360px){.projects-section .project-card,.projects-section .project-card:hover{padding:7px}}.section-heading--no-label{grid-template-columns:1fr}.skills-section .section-heading{text-align:center;justify-items:center}.skills-section .section-heading h2{text-align:center}.skills-section .section-note{text-align:center;width:min(100%,920px);margin:38px auto 25px}.skills-section .skill-groups{width:min(100%,920px);margin:42px auto 0}.main-nav a .nav-dot{color:var(--cyan);margin:0 0 0 5px;font-size:12px;line-height:0;transition:transform .2s,color .2s;display:inline-block}.main-nav a:hover .nav-dot,.main-nav a:focus-visible .nav-dot{color:#fff;transform:scale(1.25)}.about-section .section-heading{text-align:center;flex-direction:column;align-items:center;gap:22px;display:flex}.about-section .section-heading h2{white-space:nowrap;font-size:clamp(24px,7.2vw,64px)}.projects-section .section-heading{text-align:center;flex-direction:column;align-items:center;gap:24px;display:flex}.projects-section .section-label{justify-content:center}.projects-section .section-heading h2{text-align:center;white-space:nowrap;font-size:clamp(24px,7.2vw,64px)}.projects-section .projects-intro{text-align:center;justify-content:center;margin:28px auto 36px}.projects-section .projects-intro p{margin:0}.contact-kicker{text-align:center}.contact-content{text-align:center;width:min(670px,100%);margin:55px auto 52px}.contact-content h2{font-size:clamp(48px,7vw,82px)}.contact-content p{max-width:430px;margin:24px auto}.contact-content .contact-links{justify-content:center}.contact-icon-button[title=Email] svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.contact-icon-button svg{fill:currentColor;width:30px;height:30px;display:block}.contact-links .contact-icon-button:hover{color:var(--cyan)}.contact-bottom{letter-spacing:.1em;font-size:10px}@media (width<=760px){.contact-links .contact-icon-button{width:54px;height:54px;min-height:54px;padding:0}.contact-icon-button svg{width:28px;height:28px}.contact-bottom{font-size:9px}}.project-card--01 .project-cover{--cover-tint:#0794d2;--cover-tint-dark:#08628f;--cover-accent:#2db7ef8c}.project-card--02 .project-cover{--cover-tint:#ff7a36;--cover-tint-dark:#c94923;--cover-accent:#ff8f4c8c}.project-card--03 .project-cover{--cover-tint:#8754d9;--cover-tint-dark:#493188;--cover-accent:#a67af58c}.project-card--04 .project-cover{--cover-tint:#17a88b;--cover-tint-dark:#0c5b55;--cover-accent:#3ddab78c}.project-cover{isolation:isolate;background:var(--cover-tint-dark,#111417);border-color:var(--cover-accent,#ffffff1a)}.projects-section .project-cover-link{outline-offset:4px;border:0;flex:none;width:100%;min-width:0;display:block}.projects-section .project-cover-link:focus-visible{outline:2px solid var(--cyan)}.project-cover img,.project-cover .project-cover-fallback{opacity:.12}.project-cover:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(118deg,var(--cover-tint,#16799c),var(--cover-tint-dark,#123441));opacity:.91;position:absolute;inset:0}.project-cover-copy{z-index:2;color:#fff;align-items:center;padding:clamp(12px,2vw,22px);display:flex;position:absolute;inset:0;overflow:hidden}.project-cover-copy-main{flex-direction:column;align-items:flex-start;gap:8px;max-width:78%;display:flex;position:relative}.project-cover-kicker{font:8px/1.4 var(--mono);letter-spacing:.13em;color:#ffffffd1;text-transform:uppercase}.project-cover-copy-main strong{font:600 clamp(15px,2.2vw,27px)/1.08 var(--display);letter-spacing:-.045em;text-wrap:balance;text-shadow:0 1px 8px #0000001f}.project-cover-number{font:700 clamp(50px,9vw,108px)/1 var(--display);letter-spacing:-.08em;color:#ffffff2b;position:absolute;top:-.28em;right:-.02em}@media (width<=640px){.project-cover-copy{padding:10px}.project-cover-copy-main{gap:5px;max-width:84%}.project-cover-kicker{font-size:7px}.project-cover-copy-main strong{font-size:clamp(11px,2.8vw,18px)}.project-cover-number{font-size:clamp(34px,9vw,70px)}}@media (width<=430px){.project-cover-copy-main{max-width:90%}}.skill-groups{width:auto;margin:42px 0 0 30%;display:block}.skill-row{border-top:1px solid var(--line);grid-template-columns:32px 165px minmax(0,1fr);gap:12px;padding:23px 0}.skill-row h3{font:12px var(--mono);letter-spacing:.12em;white-space:nowrap;margin:0;padding-top:3px}.skill-content{min-width:0}.skill-tags{scrollbar-width:thin;scrollbar-color:#7ce5f273 #ffffff0f;flex-wrap:nowrap;align-items:center;gap:8px;min-width:0;margin:0;padding:3px 3px 9px;list-style:none;display:flex;overflow:auto hidden}.skill-bar-item{color:#c3c9cc;font:10px var(--mono);white-space:nowrap;border:1px solid #ffffff21;flex:none;align-items:center;gap:7px;padding:6px 9px;transition:border-color .2s,background .2s;display:flex}.skill-bar-item:hover{background:#7ce5f20e;border-color:#7ce5f26b}.skill-bar-item strong{font:inherit}.skill-bar-item .skill-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px;display:block}.skill-bar-item .skill-icon--asset,.skill-bar-item .skill-icon--brand{object-fit:contain;stroke:none;width:16px;height:16px}.skill-bar-item .skill-icon-lambda{font:16px var(--display)}.skill-group--cloud{--skill-accent:#7ce5f2}.skill-group--devops{--skill-accent:#69baff}.skill-group--systems{--skill-accent:#8bcbb2}.skill-group--ai{--skill-accent:#9ea7ff}@media (width<=760px){.skill-groups{margin:32px 0 0}.skill-row{grid-template-columns:24px 120px minmax(0,1fr);gap:8px;padding:20px 0}.skill-row h3{letter-spacing:.06em;font-size:9px}.skill-content{grid-column:3}.skill-bar-item{gap:6px;padding:6px 8px;font-size:9px}}@media (width<=430px){.skill-row{grid-template-columns:24px minmax(0,1fr);gap:10px 8px}.skill-row h3{white-space:normal;overflow-wrap:anywhere}.skill-content{grid-column:2}}@media (prefers-reduced-motion:reduce){.skill-bar-item{transition:none}}.round-link{letter-spacing:.025em;gap:6px;width:106px;height:106px;font-size:10px}.round-link .arrow{font-size:17px}@media (width<=760px){.round-link{width:86px;height:86px;font-size:9px}}@media (width<=430px){.round-link{flex-basis:76px;width:76px;height:76px;font-size:8px}}@media (width<=360px){.round-link{flex-basis:68px;width:68px;height:68px;font-size:7.5px}}.section{padding-block:clamp(82px,8vw,108px)}.about-section .section-heading{gap:16px}.about-copy{margin-top:38px}.skills-section .section-note{margin-top:24px;margin-bottom:20px}.skills-section .skill-groups{margin-top:26px}.projects-section .projects-intro{margin-top:20px;margin-bottom:26px}.blog-section .empty-note{margin-top:30px}.contact-section{min-height:0;padding:76px 11vw 30px}.contact-content{margin:36px auto 40px}@media (width<=760px){.section{padding-block:clamp(58px,9vw,72px)}.about-copy{margin-top:30px}.skills-section .skill-groups{margin-top:20px}.projects-section .projects-intro{margin:16px auto 22px}.blog-section .empty-note{margin-top:22px}.contact-section{min-height:0;padding:60px 7vw 26px}.contact-content{margin:30px auto 34px}}.contact-content h2{white-space:nowrap;overflow-wrap:normal;font-size:clamp(32px,8vw,82px)}.hero-intro{font-size:clamp(15px,1.2vw,17px)}.about-copy{font-size:16px}.section-note,.projects-intro p,.all-projects-intro,.project-summary{font-size:14px}.project-details,.projects-section .project-summary{font-size:13px}.post-row p,.empty-note p span,.contact-content p{font-size:14px}@media (width<=760px){.hero-intro{font-size:clamp(13px,2vw,15px)}.about-copy{font-size:15px}.project-details{font-size:11px}}@media (width<=640px){.projects-section .project-summary{font-size:10px}.project-summary{font-size:11px}.project-details{font-size:10px}}@media (width<=430px){.hero-intro{font-size:clamp(12px,3.5vw,14px)}.projects-section .project-summary{font-size:10px}}.project-details-toggle{color:var(--cyan);font:10px/1.4 var(--mono);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;margin-top:2px;padding:8px 0;transition:color .2s;display:inline-flex}.project-details-toggle:hover{color:#fff}.project-details-toggle:focus-visible{outline:1px solid var(--cyan);outline-offset:3px}@media (width<=640px){.project-details-toggle{padding:6px 0;font-size:9px}}.all-projects-list{grid-auto-rows:auto;align-items:start}.all-projects-list .project-main{flex:none}.all-projects-list .project-details{flex:none;margin:0 0 10px}.project-card-accessible-title{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.all-projects-list{grid-auto-rows:auto;align-items:start;width:calc(100% + clamp(24px,5vw,64px));margin-left:calc(clamp(24px,5vw,64px)/-2)}.all-projects-list .project-card{align-self:start;height:auto;min-height:0}.all-projects-list .project-cover{aspect-ratio:16/9;width:100%;margin:0}.blog-section .section-heading{text-align:center;justify-content:center;display:flex}.blog-section .section-heading h2{white-space:nowrap;font-size:clamp(24px,7.2vw,64px)}.blog-section .empty-note{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:min(100%,720px);min-height:145px;margin-inline:auto;padding:28px 20px}.blog-section .empty-note p{margin:0;padding:0}.blog-section .empty-note .micro{margin-top:4px;font-size:8px;position:static}.hero-index{opacity:.62;font-size:9px}@media (width<=760px){.hero h1 .hero-name,.hero h1 .hero-surname{font-size:clamp(32px,9.5vw,70px)}}@media (width<=430px){.hero h1 .hero-name,.hero h1 .hero-surname{font-size:clamp(32px,9vw,39px)}}.hero-intro{position:relative;top:-8px}@media (width<=760px){.hero-intro{top:-6px}}@media (width>=761px){.hero h1 .hero-name,.hero h1 .hero-surname{font-size:clamp(34px,9vw,132px)}.hero-intro{top:-12px}}@media (width<=760px){.hero h1,.hero-bottom{position:relative;top:10px}}.project-cover{width:90%;margin-inline:auto}.project-cover-kicker{font-size:8px}.project-cover-copy-main strong{font-size:clamp(15px,2.2vw,27px)}.project-cover-number{font-size:clamp(50px,9vw,108px)}@media (width<=640px){.all-projects-list{width:100%;margin-left:0}.project-cover-copy-main strong{font-size:clamp(11px,2.8vw,18px)}.project-cover-number{font-size:clamp(34px,9vw,70px)}}.hero-location{font:11px var(--mono);color:#a0a5aa;align-items:center;gap:7px;margin-top:12px;display:flex}.hero-name,.hero-surname{display:inline-block}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(30px)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}.project-card{transition:transform .35s,border-color .35s,box-shadow .35s}.project-card:hover{border-color:var(--cyan);transform:translateY(-6px);box-shadow:0 8px 30px #00dcff1f}.project-card img{transition:transform .5s}.project-card:hover img{transform:scale(1.04)}.projects-section .project-card{transition:transform .35s,border-color .35s,box-shadow .35s}.projects-section .project-card:hover{border-color:var(--cyan);transform:translateY(-5px);box-shadow:0 10px 28px #7ce5f21f}.projects-section .project-cover img{transition:transform .6s}.projects-section .project-card:hover .project-cover img{transform:scale(1.05)}@media (prefers-reduced-motion:reduce){.projects-section .project-card,.projects-section .project-cover img{transition:none}.projects-section .project-card:hover{box-shadow:none;transform:none}}.more-projects{text-align:center;background:0 0;border:none;margin:45px auto 10px;padding:20px 10px}.more-projects h3{color:#f0f5f7;margin:0 0 10px;font-size:clamp(19px,2.5vw,26px)}.more-projects p{color:#a5b1ba;margin-bottom:20px;font-size:12px;line-height:1.7}.more-projects a{color:var(--cyan);font:600 14px var(--mono);align-items:center;gap:12px;transition:color .3s,transform .3s;display:inline-flex}.more-projects a:hover{color:#fff;transform:translateY(-3px)}@media (prefers-reduced-motion:reduce){.more-projects a{transition:none}.more-projects a:hover{transform:none}}@media (width<=600px){.hero-surname{margin-left:12px}}.entry-preloader{z-index:1000;width:100%;min-height:100svh;color:var(--white);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);cursor:pointer;isolation:isolate;opacity:1;background:#050709f6;border:0;place-items:center;padding:24px;transition:opacity .42s cubic-bezier(.65,0,.35,1);display:grid;position:fixed;inset:0;overflow:hidden}.entry-preloader:focus-visible{outline:1px solid var(--cyan);outline-offset:-12px}.entry-preloader--leaving{opacity:0;pointer-events:none}.entry-preloader-watermark{z-index:-1;white-space:nowrap;color:#ffffff0d;font:600 clamp(190px,47vw,620px)/.8 var(--display);letter-spacing:-.12em;text-shadow:0 0 90px #7ce5f21f;pointer-events:none;animation:1.1s ease-out both entry-watermark-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-54%)}.entry-mark-w{vertical-align:-.015em;margin-left:.025em;font-size:.72em}.entry-mark-dot{color:#7ce5f2b8;vertical-align:.02em;text-shadow:0 0 28px #7ce5f252;margin-left:.035em;font-size:.42em}.entry-preloader-prompt{z-index:1;color:#e7eaec;font:500 10px/1.4 var(--mono);letter-spacing:.34em;opacity:0;padding-left:.34em;animation:.8s ease-out .18s forwards entry-prompt-in;position:relative}@keyframes entry-watermark-in{0%{opacity:0;transform:translate(-50%,-51%)}to{opacity:1;transform:translate(-50%,-54%)}}@keyframes entry-prompt-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (width<=600px){.entry-preloader-watermark{font-size:clamp(150px,51vw,330px)}.entry-preloader-prompt{letter-spacing:.27em;padding-left:.27em;font-size:9px}}@media (prefers-reduced-motion:reduce){.entry-preloader{transition:none}.entry-preloader-watermark,.entry-preloader-prompt{opacity:1;animation:none}}.hero[data-entry-stage=waiting] .hero-name,.hero[data-entry-stage=waiting] .hero-surname,.hero[data-entry-stage=leaving] .hero-name,.hero[data-entry-stage=leaving] .hero-surname{opacity:0}.hero[data-entry-stage=waiting] .eyebrow,.hero[data-entry-stage=waiting] .hero-bottom,.hero[data-entry-stage=waiting] .hero-index,.hero[data-entry-stage=leaving] .eyebrow,.hero[data-entry-stage=leaving] .hero-bottom,.hero[data-entry-stage=leaving] .hero-index,.hero[data-entry-stage=name-reveal] .eyebrow,.hero[data-entry-stage=name-reveal] .hero-bottom,.hero[data-entry-stage=name-reveal] .hero-index{opacity:0;transform:translateY(12px)}.hero[data-entry-stage=name-reveal] .hero-name{animation:.64s cubic-bezier(.2,.7,.2,1) both hero-entry-name}.hero[data-entry-stage=name-reveal] .hero-surname{animation:.64s cubic-bezier(.2,.7,.2,1) .12s both hero-entry-name}.hero[data-entry-stage=content-reveal] .eyebrow,.hero[data-entry-stage=content-reveal] .hero-bottom,.hero[data-entry-stage=content-reveal] .hero-index{animation:.5s cubic-bezier(.2,.7,.2,1) both hero-entry-content}.hero[data-entry-stage=content-reveal] .hero-bottom{animation-delay:70ms}.hero[data-entry-stage=content-reveal] .hero-index{animation-delay:.11s}@keyframes hero-entry-name{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-entry-content{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.hero[data-entry-stage] .hero-name,.hero[data-entry-stage] .hero-surname,.hero[data-entry-stage] .eyebrow,.hero[data-entry-stage] .hero-bottom,.hero[data-entry-stage] .hero-index{opacity:1;animation:none;transform:none}}.hero-title-block,.hero-title-block h1{width:max-content;max-width:100%}.hero-typing-statement{white-space:nowrap;text-align:right;text-overflow:clip;width:100%;height:1.7em;min-height:1.7em;color:var(--cyan);margin:0 0 16px;font-size:clamp(9px,1.05vw,14px);line-height:1.7;display:block;overflow:hidden}.hero-typing-statement:before{content:"";background:var(--cyan);border-radius:50%;width:5px;height:5px;margin:0 9px 2px 0;display:inline-block}.hero-typing-statement>span{white-space:nowrap}.typing-statement-cursor{vertical-align:-.12em;background:var(--cyan);width:1px;height:1em;margin-left:3px;animation:1.05s ease-in-out infinite typing-cursor-blink;display:inline-block}@keyframes typing-cursor-blink{50%{opacity:.18}}@media (width<=760px){.hero-title-block,.hero-title-block h1{width:100%}.hero-typing-statement{margin-bottom:13px;font-size:clamp(8px,3.2vw,12px)}}.hero-bottom>.round-link{position:relative;top:7px;left:-12px}@media (width<=760px){.hero-bottom>.round-link{top:5px;left:-8px}}.hero[data-entry-stage=waiting] .hero-typing-statement,.hero[data-entry-stage=leaving] .hero-typing-statement,.hero[data-entry-stage=name-reveal] .hero-typing-statement{opacity:0;transform:translateY(12px)}.hero[data-entry-stage=content-reveal] .hero-typing-statement{animation:.5s cubic-bezier(.2,.7,.2,1) 45ms both hero-entry-content}@media (prefers-reduced-motion:reduce){.typing-statement-cursor{animation:none}.hero[data-entry-stage] .hero-typing-statement{opacity:1;animation:none;transform:none}}.project-card[data-reveal]{transition:opacity .7s,transform .35s,border-color .35s,box-shadow .35s}.contact-network-animation{z-index:0;pointer-events:auto;background:0 0;width:100%;height:clamp(112px,16vw,170px);margin:0;position:absolute;top:51%;left:0;overflow:hidden;transform:translateY(-50%);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000000bf 13%,#0000 39% 61%,#000000bf 87%,#000 100%);mask-image:linear-gradient(90deg,#000 0%,#000000bf 13%,#0000 39% 61%,#000000bf 87%,#000 100%)}.contact-network-canvas{touch-action:pan-y;cursor:crosshair;outline:none;width:100%;height:100%;display:block}.contact-network-canvas:focus-visible{box-shadow:inset 0 0 0 1px #7ce5f27a}@media (width<=760px){.contact-network-animation{opacity:.74;height:96px;top:48%;-webkit-mask-image:linear-gradient(90deg,#000 0%,#0000 24% 76%,#000 100%);mask-image:linear-gradient(90deg,#000 0%,#0000 24% 76%,#000 100%)}}
