:root{--bg:#061d45;--bg-alt:#08234f;--panel:#071a3d;--text:#fff;--muted:#dce7ff;--line:#ffffff9e;--accent:#df714a;--accent2:#ff9a6b;--shadow:0 26px 70px #00000059;--content-max:1200px;--page-pad:clamp(24px, 2.2vw, 32px);--content-gutter:max(var(--page-pad), calc((100vw - var(--content-max)) / 2));--section-blend:clamp(32px, 4vw, 56px)}:root[data-theme=light]{--bg:#e8edf5;--bg-alt:#dce5f1;--text:#061d45;--muted:#2b3a54;--line:#061d453d;--shadow:0 22px 55px #061d451a}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0;overflow-x:hidden}html{scrollbar-gutter:stable}body{background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}button,a,input,textarea{font:inherit}button{cursor:pointer;border:0}button,a{-webkit-tap-highlight-color:transparent}button:focus,a:focus{outline:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}img,video{max-width:100%}h1,h2,h3,p{margin-top:0}p{color:var(--muted);line-height:1.55}small{color:var(--accent);font-weight:900}.textReveal{opacity:0;filter:blur(10px);transition:opacity .82s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s), transform .82s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s), filter .82s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s);will-change:opacity, transform, filter;transform:translateY(34px)}.textReveal.textInView{opacity:1;filter:blur();transform:translateY(0)}.hideMobileGlass{display:none}.sectionPad{width:100%;max-width:calc(var(--content-max) + (var(--page-pad) * 2));padding-left:var(--page-pad);padding-right:var(--page-pad);margin-inline:auto}.page{background:var(--bg);min-height:100vh;padding-top:140px}.routeView{position:relative}.routeView.routeExit,.routeView.routeEnter{overflow:clip}.routePage{width:100%;font-size:15px}.routeLoading{background:var(--bg)}.routeExit .routePage{opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;transform:translateY(-10px)}.routeEnter .routePage{animation:.3s cubic-bezier(.16,1,.3,1) both routePageEnter}@keyframes routePageEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.routeView.langExit,.routeView.langEnterStart{opacity:0;transition:opacity .16s}.routeView.langEnter{opacity:1;transition:opacity .22s}.navWrap{z-index:80;border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#061d45d1;border-radius:34px;align-items:center;gap:12px;min-width:470px;max-width:680px;height:58px;padding:8px 15px;transition:min-width .38s cubic-bezier(.16,1,.3,1),max-width .38s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:26px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 12px 28px #0000002e}:root[data-theme=light] .navWrap{background:#ffffffe0}.logoBtn{background:0 0;border-radius:20px;flex:0 0 54px;place-items:center;width:54px;height:42px;display:grid}.logoImg{object-fit:contain;width:46px;height:46px}.navWrap nav{opacity:1;visibility:visible;pointer-events:auto;align-items:center;gap:5px;max-width:600px;transition:max-width .38s cubic-bezier(.16,1,.3,1),max-height .38s cubic-bezier(.16,1,.3,1),opacity .22s,transform .32s cubic-bezier(.16,1,.3,1),visibility;display:flex;position:relative;overflow:hidden;transform:translate(0)}.navWrap nav button{z-index:1;color:var(--text);white-space:nowrap;opacity:1;transition:background .2s,color .2s,opacity .22s,transform .32s cubic-bezier(.16,1,.3,1);transition-delay:0s, 0s, var(--nav-delay,0s), var(--nav-delay,0s);background:0 0;border-radius:8px;padding:11px 18px;position:relative;transform:translate(0)}.navLabel,.langLabel{opacity:1;transition:opacity .16s,transform .16s;display:inline-block;transform:translateY(0)}.langExit .navLabel,.langLabel.langExit{opacity:0;transform:translateY(-4px)}.langEnterStart .navLabel,.langLabel.langEnterStart{opacity:0;transform:translateY(4px)}.langEnter .navLabel,.langLabel.langEnter{opacity:1;transition-duration:.22s;transform:translateY(0)}.navWrap nav button.active{color:#061d45;background:0 0}.navWrap nav button:hover:not(.active){color:var(--accent);background:0 0}.navIndicator{z-index:0;width:var(--indicator-width,0px);height:var(--indicator-height,0px);background:var(--accent);opacity:0;transform:translate3d(var(--indicator-x,0px),var(--indicator-y,0px),0);pointer-events:none;border-radius:8px;transition:transform .32s cubic-bezier(.16,1,.3,1),width .32s cubic-bezier(.16,1,.3,1),height .32s cubic-bezier(.16,1,.3,1),opacity .16s;position:absolute;top:0;left:0}.navIndicator.ready{opacity:1}.navWrap.navSmall .navIndicator{opacity:0}.navWrap:not(.navSmall) nav button:first-child{--nav-delay:40ms}.navWrap:not(.navSmall) nav button:nth-child(2){--nav-delay:85ms}.navWrap:not(.navSmall) nav button:nth-child(3){--nav-delay:.13s}.navWrap:not(.navSmall) nav button:nth-child(4){--nav-delay:.175s}.navWrap.navSmall{width:86px;min-width:86px;max-width:86px}.navWrap.navSmall nav{opacity:0;visibility:hidden;pointer-events:none;max-width:0;transition-delay:0s,0s,0s,0s,.38s;transform:translate(-12px)}.navWrap.navSmall nav button{opacity:0;transition-delay:0s;transform:translate(-12px)}.hamb{color:var(--text);background:0 0;margin-left:auto;font-size:24px;display:none}.floatControls{z-index:90;gap:10px;display:flex;position:fixed;top:24px;right:28px}.floatControls button{border:1px solid var(--line);min-width:58px;min-height:48px;color:var(--text);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#061d45d1;border-radius:999px;place-items:center;padding:0 14px;font-weight:900;display:grid;box-shadow:0 15px 35px #0000002e}:root[data-theme=light] .floatControls button{background:#ffffffe0}.themeToggle{position:relative;overflow:hidden}.themeToggle span{background:#ffd76a;border-radius:999px;width:24px;height:24px;transition:transform .55s cubic-bezier(.16,1,.3,1),background .35s,box-shadow .35s;display:block;position:relative;transform:rotate(0)scale(1);box-shadow:0 0 0 4px #ffd76a38,0 0 24px #ffd76ab3}:root[data-theme=light] .themeToggle span{background:#061d45;transform:rotate(-35deg)scale(1);box-shadow:inset -8px 0 #fff,0 0 0 4px #061d451f,0 0 22px #061d4547}:root[data-theme=light] .themeToggle:hover span{transform:rotate(145deg)scale(1.12)}.langToggle{font-size:13px}.heroSticky{background:#001936;height:51vw;min-height:470px;max-height:700px;position:sticky;top:0;overflow:hidden}.heroVideo,.heroVignette{position:absolute;inset:0}.heroVideo video{object-fit:cover;width:100%;height:100%;display:block;transform:scale(1.1)}.heroVignette{background:linear-gradient(180deg, #061d450d, var(--bg));-webkit-backdrop-filter:blur(var(--heroBlur,0));backdrop-filter:blur(var(--heroBlur,0));opacity:var(--heroFade,1)}.introCover{z-index:2;background:var(--bg);max-width:none;margin-top:-2px;padding-top:86px;padding-bottom:94px;position:relative}.introGrid{width:100%;max-width:var(--content-max);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:clamp(64px,6vw,96px);margin-inline:auto;display:grid;position:relative}.slideUp{animation:.9s cubic-bezier(.16,1,.3,1) both headingReveal}.delay{animation-delay:.18s}.introGrid h1{margin:0;font-size:clamp(47px,4vw,62px);line-height:.96;animation:.9s cubic-bezier(.16,1,.3,1) both headingReveal}.workPreview h2,.skills h2,.cta h2,.story h1,.hobbiesPage h1,.contact h2,.portfolioPage h1{animation:.9s cubic-bezier(.16,1,.3,1) both headingReveal}.introGrid h1 span{color:var(--accent);margin-bottom:.08em;display:block}.introGrid h1 em{color:var(--text);font-style:normal;display:block}.introGrid p{max-width:470px;margin:18px 0 0;font-size:18px;line-height:1.55}.photoBox.profileFloat{width:clamp(270px,18vw,350px);height:clamp(270px,18vw,350px);box-shadow:var(--shadow);border-radius:52px;position:absolute;top:-360px;right:112px}.photoBox{background:var(--panel);position:relative;overflow:hidden}.photoBox>img,.videoBox video{object-fit:cover;background:0 0;width:100%;height:100%;display:block}.workPreview{z-index:2;text-align:center;background:linear-gradient(to bottom, var(--bg) 0, var(--bg-alt) var(--section-blend), var(--bg-alt) calc(100% - var(--section-blend)), var(--bg) 100%);max-width:none;padding-top:83px;padding-bottom:81px;position:relative;overflow:hidden}.workPreview h2{margin-bottom:52px;font-size:clamp(31px,3.6vw,49px)}.autoSlider{width:100%;max-width:var(--content-max);background:0 0;min-height:414px;margin-inline:auto;position:relative}.sliderArrow{z-index:8;width:52px;height:52px;color:var(--accent);background:#061d45ad;border:1px solid #ffffff6b;border-radius:50%;place-items:center;padding:0;font-size:0;transition:transform .18s,background .18s,color .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 18px 40px #00000038}.sliderArrow:before{content:"";box-sizing:border-box;border-top:3px solid;border-right:3px solid;width:12px;height:12px;position:relative;top:10px;right:2px}.sliderArrow.left{left:clamp(18px,5vw,76px)}.sliderArrow.left:before{transform:rotate(-135deg)}.sliderArrow.right{right:clamp(18px,5vw,76px)}.sliderArrow.right:before{transform:rotate(45deg)}.sliderArrow:hover{background:var(--accent);color:#061d45;transform:translateY(-50%)scale(1.08)}.sliderArrow:active{transform:translateY(-50%)scale(.96)}.workCarouselStage{height:387px;position:relative}.largeWork{cursor:pointer;width:min(738px,56vw);height:360px;box-shadow:var(--shadow);border-radius:18px;transition:transform .35s,opacity .35s;position:absolute;top:0;left:50%}.largeWork>img,.largeWork>video{object-position:var(--work-crop,50% 50%)}.workCropEditor{border:1px solid var(--line);background:var(--panel);text-align:left;border-radius:12px;width:min(738px,100%);margin:22px auto 0;padding:16px 18px}.workCropEditorHeader,.workCropEditor label{align-items:center;gap:14px;display:flex}.workCropEditorHeader{justify-content:space-between;margin-bottom:12px}.workCropEditor label+label{margin-top:10px}.workCropEditor label span{flex:0 0 125px;font-size:13px;font-weight:800}.workCropEditor input{width:100%;accent-color:var(--accent)}.workCropEditor button{border:1px solid var(--line);color:var(--text);background:0 0;border-radius:7px;margin-top:12px;padding:7px 12px;font-weight:800}.carouselItem.current{z-index:4;opacity:1;transform:translate(-50%)scale(1)}.carouselItem.prev{z-index:3;opacity:.62;transform:translate(-105%)scale(.82)}.carouselItem.next{z-index:3;opacity:.62;transform:translate(5%)scale(.82)}.carouselItem.far{opacity:0;pointer-events:none;transform:translate(-50%)scale(.7)}.workGlass{color:#fff;text-align:left;background:#061d45b8;border-radius:8px;padding:16px 20px;position:absolute;bottom:20px;left:20px}.workGlass h3{margin-bottom:8px;font-size:22px}.workGlass p{color:#fff;margin-bottom:14px}.workGlass button,.projectAction,.cta button,.contact button,.popup button{background:var(--accent);color:#061d45;border-radius:6px;justify-content:center;align-items:center;min-height:44px;padding:0 22px;font-weight:900;text-decoration:none;display:inline-flex}.cta button{animation:2.1s ease-in-out infinite contactGlow}.toolsSection{z-index:2;background:var(--bg);grid-template-columns:minmax(390px,.85fr) minmax(520px,1.15fr);align-items:center;gap:clamp(50px,6.3vw,115px);padding-top:77px;padding-bottom:83px;display:grid;position:relative}.toolsText h2{max-width:504px;font-size:40px;line-height:1.06}.toolsText p{max-width:468px}.toolGrid{flex-wrap:wrap;gap:14px 23px;margin-top:27px;display:flex;position:relative}.toolName{z-index:2;color:var(--accent);background:0 0;padding:0;font-size:32px;font-weight:900;line-height:1.06;transition:transform .25s;position:relative}.toolBall{z-index:1;background:var(--accent);pointer-events:none;border-radius:999px;width:10px;height:10px;transition:transform .36s cubic-bezier(.22,1,.36,1),box-shadow .25s;position:absolute;top:0;left:0;box-shadow:0 0 18px #df714aa6}.toolBall.jumping{box-shadow:0 0 26px #df714ae6}:root[data-theme=light] .toolBall{background:#061d45;box-shadow:0 0 18px #061d4573}:root[data-theme=light] .toolBall.jumping{box-shadow:0 0 26px #061d45a6}:root[data-theme=light] .toolName{color:#061d45}.toolName.active,.toolName:hover{transform:scale(1.16)rotate(-3deg)}.toolImage{aspect-ratio:16/10;width:100%;max-width:684px;box-shadow:var(--shadow);justify-self:end;position:relative;overflow:hidden}.toolCaption{color:#fff;background:#061d45d1;border-radius:6px;max-width:calc(100% - 50px);padding:9px 16px;font-size:clamp(20px,2.25vw,34px);font-weight:900;line-height:1.05;position:absolute;bottom:22px;left:25px}.skills{z-index:2;text-align:center;background:linear-gradient(to bottom, var(--bg) 0, var(--bg-alt) var(--section-blend), var(--bg-alt) calc(100% - var(--section-blend)), var(--bg) 100%);max-width:none;padding-top:83px;padding-bottom:104px;position:relative}.skills h2{margin-bottom:20px;font-size:clamp(31px,3.6vw,49px)}.skills>p{max-width:684px;margin:0 auto 52px}.skillBox{background:var(--bg);text-align:left;border:0;border-radius:8px;grid-template-columns:minmax(300px,.42fr) minmax(460px,.58fr);max-width:1062px;margin:0 auto;display:grid;position:relative;overflow:hidden}.skillBox:before{content:"";z-index:4;pointer-events:none;border:1px solid var(--line);border-radius:inherit;clip-path:inset(0 100% 100% 0);transition:clip-path 1.05s cubic-bezier(.22,1,.36,1) .2s;position:absolute;inset:0}.skillBox:after{content:"";z-index:3;pointer-events:none;background:linear-gradient(var(--line), var(--line)) calc(42% - 1px) 0 / 1px 100% no-repeat, repeating-linear-gradient(to bottom, transparent 0, transparent calc(20% - 1px), var(--line) calc(20% - 1px), var(--line) 20%) 0 0 / 42% 100% no-repeat;clip-path:inset(0 100% 0 0);border-radius:7px;transition:clip-path 1.05s cubic-bezier(.22,1,.36,1) .38s;position:absolute;inset:1px;overflow:hidden}.skillBox.textInView:before,.skillBox.textInView:after{clip-path:inset(0)}.skillTabs{flex-direction:column;display:flex}.skillBox button{min-height:67px;color:var(--text);text-align:left;background:0 0;flex:1 1 0;padding:0 25px;font-weight:900}.skillBox button.active{background:var(--accent);color:#061d45}.skillPanel{padding:52px 45px 49px}.mobileSkillPanel{display:none}.skillPanel span{color:var(--accent);margin-bottom:16px;font-size:31px;display:block}.skillPanel h3{max-width:504px;color:var(--accent);font-size:27px;line-height:1.15}.wideGameplay{z-index:2;background:#000;width:100%;height:clamp(504px,56vw,738px);position:relative;overflow:hidden}.wideGameplay .videoBox{width:100%;height:100%}.cta{z-index:2;text-align:center;background:var(--bg);padding-top:95px;padding-bottom:95px;position:relative}.cta h2{font-size:40px}.footer{z-index:2;border-top:1px solid var(--line);background:var(--bg);text-align:left;grid-template-columns:minmax(0,1fr) 160px minmax(360px,400px);align-items:start;gap:clamp(65px,9vw,149px);padding-top:65px;padding-bottom:38px;display:grid;position:relative}.footerLogo{margin-bottom:22px}.footerLogo .logoImg{width:74px;height:74px}.footer a{color:var(--muted)}.footercl3{max-width:400px}.orangeText{color:var(--accent);font-weight:900}.socials{color:var(--accent);gap:18px;margin-top:22px;font-weight:900;display:flex}.socials a{min-width:16px;color:var(--accent);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.socials img{object-fit:contain;width:18px;height:18px;display:block}.footerLinks{gap:17px;margin-top:20px;display:grid}.footerLinks button{color:var(--text);text-align:left;background:0 0}.footerBottom{border-top:1px solid var(--line);color:var(--muted);grid-column:1/-1;justify-content:space-between;margin-top:49px;padding-top:29px;display:flex}.portfolioPage>.footer,.hobbiesPage>.footer{width:calc(100% + (var(--page-pad) * 2));margin-left:calc(var(--page-pad) * -1);margin-right:calc(var(--page-pad) * -1)}.portfolioPage{text-align:center}.portfolioPage>p{margin-bottom:59px}.portfolioList{gap:38px;margin-bottom:clamp(72px,9vw,135px);display:grid}.portfolioGrowing{max-width:720px;color:var(--muted);text-align:center;margin:clamp(10px,1vw,18px) auto 0}.projectCard{border:1px solid var(--line);background:linear-gradient(to bottom, var(--bg) 0, var(--bg-alt) var(--section-blend), var(--bg-alt) calc(100% - var(--section-blend)), var(--bg) 100%);text-align:left;border-radius:8px;grid-template-columns:1fr 378px;align-items:center;gap:0 36px;padding:32px;display:grid}.projectText h2{font-size:27px}.projectRole,.projectCreditNote{display:block}.projectRole{color:var(--accent)}.projectCreditNote{color:var(--muted);margin-top:5px;font-weight:600}.projectCreditNote+.projectCreditNote{margin-top:2px}.tag{background:var(--accent);color:#061d45;margin:0 6px 18px 0;padding:5px 9px;font-size:12px;font-weight:900;display:inline-block}.projectActions{flex-wrap:wrap;gap:13px 16px;margin-top:31px;display:flex}.mobileDownloadNote{display:none}.projectActions .projectAction.ghost:first-child{padding-left:0}.ghost{color:var(--accent);background:0 0}.projectImg{background:0 0;justify-content:center;align-items:center;height:225px;display:flex;overflow:hidden}.projectImg>img{object-fit:contain;object-position:center;width:100%;height:100%}.projectExpand{color:var(--accent);background:0 0;border:0;align-items:center;gap:8px;margin-top:18px;padding:0;font-weight:900;display:inline-flex}.projectExpand:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.projectDetailsReveal{visibility:hidden;grid-column:1/-1;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.22,1,.36,1),visibility 0s linear .42s;display:grid}.projectDetailsReveal.isOpen{visibility:visible;grid-template-rows:1fr;transition-delay:0s}.projectDetailsClip{min-height:0;overflow:hidden}.projectDetails{opacity:0;border-top:1px solid #0000;padding-top:0;transition:padding-top .42s cubic-bezier(.22,1,.36,1),border-color .2s,opacity .2s,transform .3s;transform:translateY(-8px)}.projectDetailsReveal.isOpen .projectDetails{border-color:var(--line);opacity:1;padding-top:32px;transform:translateY(0)}.projectDetails>*{opacity:0;transition:opacity .26s,transform .32s;transform:translateY(8px)}.projectDetailsReveal.isOpen .projectDetails>*{opacity:1;transform:translateY(0)}.projectDetailsReveal.isOpen .projectDetails>:nth-child(2){transition-delay:50ms}.projectDetailsReveal.isOpen .projectDetails>:nth-child(3){transition-delay:.1s}.projectDetailsReveal.isOpen .projectDetails>:nth-child(4){transition-delay:.15s}.projectDetails section>small{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-weight:900;display:block}.caseOverview p{max-width:760px;margin:12px 0 0}.caseDevelopment{margin-top:38px}.developmentTrack{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px;display:grid}.developmentTrack article{padding:24px 24px 0 0;position:relative}.developmentTrack article:not(:last-child):after{content:"";background:var(--line);width:1px;height:calc(100% - 24px);position:absolute;top:24px;right:12px}.developmentTrack span{color:var(--accent);font-size:12px;font-weight:900}.developmentTrack h3{margin:8px 0 10px;font-size:20px}.developmentTrack p,.caseLearned li{color:var(--muted)}.caseSplit{border-top:1px solid var(--line);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:36px;margin-top:42px;padding-top:32px;display:grid}.caseTools>div{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.caseTools div span{border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800}.caseLearned ul{gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.caseLearned li{padding-left:18px;position:relative}.caseLearned li:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:.62em;left:0}.caseGallerySection{border-top:1px solid var(--line);margin-top:42px;padding-top:32px}.caseGallery{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;margin-top:18px;display:grid}.caseGallery.count-1{grid-template-columns:minmax(0,1fr)}.caseGallery.count-1 .caseGalleryItem{justify-self:center;width:100%;max-width:900px}.caseGalleryItem{border:1px solid var(--line);background:var(--bg);cursor:zoom-in;border-radius:8px;width:100%;padding:0;overflow:hidden}.caseGalleryItem:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.caseGalleryMedia,.caseGalleryMedia>img,.caseGalleryMedia>video{width:100%;height:auto}.caseGalleryMedia>img,.caseGalleryMedia>video{object-fit:scale-down;display:block}.bioPage{padding-top:0}.story{background:var(--bg);grid-template-columns:minmax(420px,.95fr) minmax(420px,1fr);align-items:center;gap:63px;min-height:738px;padding-top:131px;display:grid}.story h1{margin-bottom:25px;font-size:clamp(40px,4.3vw,63px)}.story p{max-width:648px;font-size:18px}.storyPhoto{border-radius:45px;justify-self:end;width:min(540px,38vw);height:576px}.orangeBand{min-height:243px;padding:74px var(--content-gutter);color:#061d45;text-align:center;opacity:1;filter:none;background:0 0;grid-template-columns:minmax(0,.95fr) minmax(0,1fr);align-items:center;gap:63px;display:grid;position:relative;overflow:hidden;transform:none}.orangeBand:before{content:"";z-index:0;background:var(--accent);transform-origin:0;transition:transform .46s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:scaleX(0)}.orangeBand.bandInView:before{transform:scaleX(1)}:root[data-theme=light] .orangeBand:before{background:#061d45}:root[data-theme=light] .orangeBand{color:#fff;background:0 0}.orangeBand>div{z-index:1;opacity:0;transition:opacity .46s cubic-bezier(.22,1,.36,1) .26s,transform .46s cubic-bezier(.22,1,.36,1) .26s;position:relative;transform:translateY(18px)}.orangeBand>div:nth-child(2){justify-self:end;width:min(540px,38vw)}.orangeBand.bandInView>div{opacity:1;transform:translateY(0)}.orangeBand b{margin-bottom:16px;font-size:29px;display:block}.orangeBand span{max-width:297px;margin:0 auto;line-height:1.35;display:block}.orangeBand button{color:inherit;background:0 0;margin-top:22px;font-weight:900}.contact{text-align:center;background:var(--bg);padding-top:83px;padding-bottom:86px;scroll-margin-top:90px}.contact h2{font-size:40px}.contact form{text-align:left;gap:16px;max-width:585px;margin:41px auto 0;display:grid}.contact input,.contact textarea{border:1px solid var(--line);width:100%;color:var(--text);background:0 0;border-radius:8px;margin-top:8px;padding:12px}.contact textarea{min-height:117px}.popup{z-index:120;background:#0000008c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.popup>div{border:1px solid var(--line);background:var(--bg);max-width:420px;padding:32px}.hobbiesPage{text-align:center}.hobbiesPage h1{max-width:945px;margin-left:auto;margin-right:auto;font-size:clamp(40px,4.3vw,65px);line-height:1.05}.hobbiesPage>p{margin-bottom:63px}.hobbyAccordion{border:1px solid var(--line);background:0 0;width:min(100%,1062px);min-height:504px;margin:0 auto clamp(72px,9vw,135px);display:flex;position:relative;overflow:hidden}.hobbyAccordion:before{content:"";z-index:4;pointer-events:none;border:1px solid var(--line);clip-path:inset(0 100% 100% 0);position:absolute;inset:0}.hobbyAccordion.textInView:before{animation:1.05s cubic-bezier(.22,1,.36,1) .18s forwards outlineDraw}.hobbyAccordion article{border-right:1px solid var(--line);grid-template-columns:106px minmax(0,1fr);min-width:0;transition:width .25s;display:grid}.hobbyAccordion article.active{flex:0 0 calc(100% - 318px);width:calc(100% - 318px)}.hobbyAccordion article.collapsed{flex:0 0 106px;width:106px}.hobbyAccordion article>button{color:var(--text);background:0 0;grid-template-rows:auto 1fr;align-items:start;padding:31px 20px;display:grid}.hobbyAccordion article>button b{color:var(--text);font-size:20px;transition:color .25s}.hobbyAccordion article.active>button b,.hobbyAccordion article.active>button span{color:var(--accent)}.hobbyAccordion article>button span{text-align:center;writing-mode:vertical-rl;place-self:end center;font-size:23px;font-weight:900;line-height:1.05;transition:color .25s;transform:rotate(180deg)}.hobbyAccordion article.active>button span{color:var(--accent)}.hobbyContent{text-align:center;padding:58px 58px 49px;display:none}.hobbyAccordion article.active .hobbyContent{display:block}.hobbyContent h2{font-size:31px}.hobbyContent .photoBox{width:min(504px,100%);height:279px;margin:36px auto 0}.contactActions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.mailtoLink{color:var(--accent);font-weight:700;text-decoration:none}.mailtoLink:hover{text-decoration:underline}@keyframes outlineDraw{to{clip-path:inset(0)}}@keyframes outlineDrawX{to{clip-path:inset(0)}}@keyframes contactGlow{0%,to{box-shadow:0 0 #df714a00,0 0 #df714a47}50%{box-shadow:0 0 24px #df714a8f,0 0 0 8px #df714a24}}@keyframes orangeWipe{to{clip-path:inset(0)}}.introGrid h1 em{font-size:50px}@media (width<=1100px) and (width>=721px){.introGrid{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(36px,5vw,56px)}.toolsSection{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,5vw,56px)}.skillBox{grid-template-columns:minmax(0,.42fr) minmax(0,.58fr)}.story{grid-template-columns:minmax(0,.95fr) minmax(0,1fr);gap:clamp(36px,5vw,56px)}}@media (width<=720px){:root{--page-pad:22px}.page{padding-top:110px}.navWrap{transform-origin:28px 28px;border-radius:24px;grid-template-columns:56px 1fr;align-items:start;width:calc(100vw - 112px);min-width:0;height:auto;min-height:58px;max-height:212px;padding:8px 12px;transition:width .38s cubic-bezier(.16,1,.3,1),min-width .38s cubic-bezier(.16,1,.3,1),max-width .38s cubic-bezier(.16,1,.3,1),max-height .38s cubic-bezier(.16,1,.3,1),border-radius .38s cubic-bezier(.16,1,.3,1),transform .38s cubic-bezier(.16,1,.3,1);display:grid;top:16px;left:16px;right:auto;transform:none}.navWrap.navSmall{grid-template-columns:56px 1fr;gap:12px;width:82px;min-width:82px;max-width:82px;max-height:60px;transform:scale(.92)}.logoBtn{width:56px;height:42px}.logoImg{width:44px;height:44px}.navWrap nav{touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:flex-start;gap:6px;width:calc(100vw - 206px);min-width:calc(100vw - 206px);max-width:calc(100vw - 206px);max-height:186px;display:flex}.navWrap.navSmall nav{opacity:1;visibility:visible;max-width:calc(100vw - 206px);max-height:186px;transform:none}.navWrap nav button{text-align:center;width:100%;min-width:calc(100vw - 206px);min-height:42px;padding:10px 12px;transition-delay:0s}.navWrap.navSmall nav button{opacity:1;transform:none}.navIndicator{transition:transform .38s cubic-bezier(.16,1,.3,1),width .38s cubic-bezier(.16,1,.3,1),height .38s cubic-bezier(.16,1,.3,1),opacity .38s cubic-bezier(.16,1,.3,1)}.navWrap.navSmall .navIndicator{transition-delay:0s}.hamb{display:none}.floatControls{flex-direction:column;gap:8px;top:16px;right:14px}.floatControls button{border:1px solid var(--line);width:58px;min-width:58px;height:58px;min-height:58px;color:var(--text);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#061d45d1;border-radius:999px;place-items:center;padding:0;font-weight:900;transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s,background .28s;display:grid;box-shadow:0 15px 35px #0000002e}:root[data-theme=light] .floatControls button{background:#ffffffe0}.floatControls button:hover{transform:translateY(-4px)scale(1.08);box-shadow:0 22px 45px #00000047}.floatControls button:active{transform:translateY(0)scale(.94)}.heroSticky{height:355px;min-height:355px;max-height:none;position:relative}.heroVideo video{transform:none}.introCover{padding-top:0;padding-bottom:68px}.introGrid{text-align:center;flex-direction:column;gap:20px;display:flex}.photoBox.profileFloat{border-radius:32px;order:-1;align-self:center;width:min(244px,68vw);height:min(244px,68vw);margin:-110px auto 15px;position:relative;top:auto;right:auto}.photoBox.projectImg{background:0 0}.introGrid h1{text-align:center;font-size:clamp(30px,10.3vw,45px)}.introGrid h1 em{font-size:clamp(24px,7.7vw,34px)}.introGrid p{text-align:center;max-width:320px;margin:15px auto 0;font-size:15px}.workPreview{padding-top:68px;padding-bottom:26px}.workPreview h2,.skills h2,.portfolioPage h1,.hobbiesPage h1,.contact h2,.cta h2{font-size:clamp(32px,9.4vw,45px);line-height:1.05}.autoSlider{touch-action:pan-y;cursor:grab;min-height:282px;overflow:visible}.autoSlider.isDragging{cursor:grabbing}.sliderArrow{display:none}.workCarouselStage{height:274px;overflow:visible}.largeWork{aspect-ratio:16/9;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:18px;width:min(78vw,330px);height:auto;top:18px;left:50%}.autoSlider.isDragging .largeWork{transition:none}.carouselItem.current{transform:translateX(calc(-50% + var(--drag-x,0px))) scale(1)}.carouselItem.prev{opacity:.7;transform:translateX(calc(-112% + var(--drag-x,0px))) scale(.78)}.carouselItem.next{opacity:.7;transform:translateX(calc(12% + var(--drag-x,0px))) scale(.78)}.carouselItem.far{pointer-events:auto}.hideMobileGlass,.carouselItem.prev .workGlass,.carouselItem.next .workGlass,.carouselItem.far .workGlass{display:none}.workGlass{max-width:calc(100% - 20px);padding:10px 12px;bottom:10px;left:10px}.workGlass h3{margin-bottom:4px;font-size:18px}.workGlass p{margin-bottom:0;font-size:13px;line-height:1.25}.workGlass button{display:none}.toolsSection{grid-template-columns:1fr;gap:26px;padding-top:68px;padding-bottom:77px}.toolsText{text-align:center}.toolsText>small{text-align:center;display:block}.toolsText h2{text-align:center;max-width:330px;margin-left:auto;margin-right:auto;font-size:clamp(32px,8.5vw,41px)}.toolsText p{text-align:center;max-width:320px;margin-left:auto;margin-right:auto}.toolGrid{justify-content:center}.toolName{font-size:clamp(21px,6.6vw,28px)}.toolImage{justify-self:stretch}.toolCaption{font-size:22px;bottom:16px;left:16px}.skills{padding-top:68px;padding-bottom:68px}.skills>p{max-width:310px}.skillBox{border:0;grid-template-columns:1fr;width:100%;max-width:100%;overflow:hidden}.skillBox:after{display:none}.skillTabs{display:contents}.skillBox button{border-right:0;border-bottom:1px solid var(--line);align-items:center;min-height:72px;padding:0 21px;font-size:16px;display:flex}.skillBox button.active{border-bottom-color:var(--line)}.desktopSkillPanel{display:none}.skillPanel{border-bottom:1px solid var(--line);width:100%;min-width:0;padding:36px 21px 39px}.mobileSkillPanel{display:none}.mobileSkillPanel.active{display:block}.skillPanel h3{overflow-wrap:anywhere;word-break:break-word;max-width:100%;font-size:23px}.skillPanel p{overflow-wrap:anywhere;word-break:break-word}.wideGameplay{aspect-ratio:16/9;height:auto}.footer{grid-template-columns:1fr;gap:32px;padding-top:55px;padding-bottom:36px}.footerBottom{flex-direction:column;gap:21px}.projectCard{text-align:center;grid-template-columns:1fr;gap:0;padding:22px}.projectText{display:contents}.projectText h2{order:1;margin-bottom:14px}.projectTags{order:2}.projectCard .projectMedia{order:3;margin-top:2px;margin-bottom:18px}.projectCredit{order:5}.projectSummary{order:4}.projectActions{text-align:center;flex-direction:column;order:6;justify-content:center;align-items:center;width:100%;margin-top:20px}.projectActions .projectAction.ghost{order:1}.projectActions .desktopDownload{display:none}.mobileDownloadNote{color:var(--muted);text-align:center;flex-basis:100%;order:0;margin-top:2px;font-size:13px;font-weight:700;display:block}.projectExpand{order:8;justify-self:center;margin-top:18px}.projectDetailsReveal{order:9}.projectDetailsReveal.isOpen .projectDetails{padding-top:26px}.developmentTrack{border-top:0;grid-template-columns:1fr}.developmentTrack article{border-left:1px solid var(--line);padding:18px 0 18px 24px}.developmentTrack article:not(:last-child):after{background:var(--accent);border-radius:50%;width:7px;height:7px;top:24px;left:-4px;right:auto}.developmentTrack article:last-child:after{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:24px;left:-4px}.caseSplit{grid-template-columns:1fr;gap:28px}.caseGallery,.caseGallery.count-1{grid-template-columns:1fr}.caseGalleryItem{min-height:0}.projectActions .projectAction{width:fit-content!important;min-height:44px!important;padding-left:14px!important;padding-right:14px!important}.projectActions .projectAction.ghost{margin-left:0!important}.projectActions .projectAction.ghost:first-child{padding-left:14px!important}.projectImg{height:216px}.story{text-align:center;grid-template-columns:1fr;gap:32px;min-height:0;padding-top:12px;padding-bottom:54px}.story small{color:var(--accent);margin-bottom:10px;display:block}.story h1{font-size:clamp(38px,10.3vw,49px)}.storyPhoto{aspect-ratio:1/1.08;justify-self:stretch;width:100%;height:auto;margin-bottom:26px}.orangeBand{grid-template-columns:1fr;gap:41px;min-height:253px;padding:60px 24px}.orangeBand>div:nth-child(2){justify-self:stretch;width:auto}.contact form{max-width:100%}.hobbyAccordion{min-height:0;display:grid}.hobbyAccordion:after{display:none}.hobbyAccordion article,.hobbyAccordion article.active,.hobbyAccordion article.collapsed{order:initial;border-right:0;border-bottom:1px solid var(--line);touch-action:pan-y;grid-template-columns:1fr;width:100%;min-height:0;display:grid}.hobbyAccordion article>button{grid-template-rows:1fr;grid-template-columns:auto 1fr;align-items:center;gap:17px;min-height:68px;padding:0 21px}.hobbyAccordion article>button span{writing-mode:horizontal-tb;text-align:right;place-self:center end;max-width:none;min-height:0;font-size:18px;line-height:1.05;transform:none}.hobbyContent{padding:30px 21px 28px}.hobbyContent .photoBox{height:207px}}@media (prefers-reduced-motion:reduce){.routeExit .routePage,.routeEnter .routePage,.textReveal,.orangeBand:before,.orangeBand>div,.carouselItem,.toolBall{transition:none;animation:none}.textReveal,.orangeBand>div{opacity:1;filter:none;will-change:auto;transform:none}.orangeBand:before{transform:scaleX(1)}.projectDetailsReveal,.projectDetails,.projectDetails>*{transition:none}}.projectMedia{cursor:zoom-in;background:0 0;border:0;outline:none;width:100%;margin:0;padding:0;overflow:hidden}.projectMedia:focus{outline:none}.projectMedia:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.projectMedia .projectImg{width:100%}.projectMedia.isSilenceVisual .projectImg{height:clamp(250px,23vw,292px)}.projectMedia.isSilenceVisual .projectImg>img{object-position:center top}.projectMedia img,.projectMedia video{display:block}.projectMedia video{pointer-events:none}.mediaLightbox{z-index:999999;box-sizing:border-box;cursor:zoom-out;background:#000000f0;place-items:center;padding:32px;animation:.24s both lightboxOpen;display:grid;position:fixed;inset:0}.mediaLightboxContent{justify-content:center;align-items:center;width:fit-content;max-width:calc(100% - 32px);height:fit-content;max-height:calc(100dvh - 64px);animation:.34s cubic-bezier(.16,1,.3,1) both lightboxMediaOpen;display:flex}.mediaLightboxContent img,.mediaLightboxContent video{object-fit:contain;cursor:default;border:0;border-radius:10px;outline:0;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 64px);display:block;box-shadow:0 30px 100px #000000b3}.mediaLightboxContent.isEmbed{width:min(1440px,100vw - 64px);animation:none}.mediaLightboxContent iframe{aspect-ratio:16/9;border:0;border-radius:10px;width:100%;max-height:calc(100dvh - 64px);display:block;box-shadow:0 30px 100px #000000b3}.mediaLightbox.isClosing{animation:.2s both lightboxClose}.mediaLightbox.isClosing .mediaLightboxContent{animation:.2s both lightboxMediaClose}.mediaLightboxClose{z-index:1000000;color:#fff;cursor:pointer;background:#061d45e6;border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:48px;height:48px;padding:0;font-size:30px;line-height:1;display:grid;position:fixed;top:24px;right:28px}.mediaLightboxArrow{z-index:1000000;color:#fff;background:#061d45e6;border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:54px;height:54px;padding:0;font-size:38px;line-height:1;display:grid;position:fixed;top:50%;transform:translateY(-50%)}.mediaLightboxArrow.prev{left:24px}.mediaLightboxArrow.next{right:24px}.mediaLightboxCounter{z-index:1000000;color:#fff;background:#061d45e6;border-radius:999px;padding:7px 12px;font-weight:800;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}body.lightboxOpen{overflow:hidden}@media (width<=720px){.workCropEditorHeader,.workCropEditor label{flex-direction:column;align-items:stretch;gap:6px}.workCropEditor label span{flex-basis:auto}.mediaLightbox{padding:18px}.mediaLightboxArrow{width:46px;height:46px;font-size:32px;top:auto;bottom:14px;transform:none}.mediaLightboxArrow.prev{left:18px}.mediaLightboxArrow.next{right:18px}.mediaLightboxCounter{bottom:20px}}@media (orientation:landscape) and (height<=500px) and (width<=1000px){:root{--page-pad:clamp(18px, 3vw, 28px);--section-blend:24px}.page{padding-top:76px}.routePage{font-size:14px}.navWrap,.navWrap.navSmall{border-radius:25px;align-items:center;gap:4px;width:max-content;min-width:0;max-width:calc(100vw - 116px);height:50px;min-height:50px;max-height:50px;padding:4px 8px;display:flex;top:8px;left:10px;right:auto;transform:none}.logoBtn{flex-basis:44px;width:44px;height:40px}.logoImg{width:40px;height:40px}.navWrap nav,.navWrap.navSmall nav{opacity:1;visibility:visible;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:row;align-items:center;gap:2px;width:auto;min-width:0;max-width:none;max-height:40px;transform:none}.navWrap nav button,.navWrap.navSmall nav button{opacity:1;white-space:nowrap;width:auto;min-width:0;min-height:40px;padding:8px 10px;font-size:13px;transform:none}.floatControls{flex-direction:row;gap:6px;top:8px;right:8px}.floatControls button{width:44px;min-width:44px;height:44px;min-height:44px;padding:0}.themeToggle span{width:20px;height:20px}.heroSticky{height:min(58vh,250px);min-height:190px;max-height:250px;position:relative}.introCover{padding-top:28px;padding-bottom:40px}.introGrid{grid-template-columns:minmax(0,1.25fr) minmax(150px,.75fr);align-items:center;gap:12px 32px;display:grid}.introGrid>div{grid-area:1/1}.introGrid>p{grid-area:2/1;margin-top:0;font-size:14px}.photoBox.profileFloat{border-radius:28px;grid-area:1/2/3;place-self:center end;width:min(28vw,190px);height:min(28vw,190px);margin:0;position:relative;top:auto;right:auto}.introGrid h1{font-size:clamp(31px,5vw,42px)}.introGrid h1 em{font-size:clamp(25px,4vw,34px)}.workPreview,.toolsSection,.skills{padding-top:44px;padding-bottom:44px}.workPreview h2,.skills h2,.portfolioPage h1,.hobbiesPage h1,.contact h2,.cta h2{font-size:clamp(29px,4.8vw,38px)}.workPreview h2{margin-bottom:24px}.autoSlider{min-height:250px}.workCarouselStage{height:236px}.largeWork{aspect-ratio:16/9;width:min(58vw,430px);height:min(58vh,230px);top:0}.toolsSection{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px}.toolsText h2{font-size:clamp(28px,4.5vw,36px)}.toolGrid{gap:10px 16px;margin-top:18px}.toolName{font-size:clamp(18px,3.2vw,25px)}.toolImage{aspect-ratio:16/9;max-height:min(64vh,300px)}.skillBox{grid-template-columns:minmax(210px,.42fr) minmax(0,.58fr)}.skillTabs{flex-direction:column;display:flex}.skillBox button{min-height:48px;padding:0 18px;font-size:14px}.mobileSkillPanel{display:none!important}.desktopSkillPanel{display:block}.skillPanel{padding:25px 26px}.skillPanel h3{font-size:21px}.wideGameplay{aspect-ratio:auto;height:min(70vh,360px)}.cta{padding-top:48px;padding-bottom:48px}.footer{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 40px;padding-top:38px;padding-bottom:28px;font-size:13px}.footerLogo{margin-bottom:12px}.footerLogo .logoImg{width:56px;height:56px}.footerLinks{gap:11px;margin-top:8px}.footercl3{grid-column:1/-1;max-width:none}.footercl3 p{margin-bottom:0}.footerBottom{flex-direction:row;gap:18px;margin-top:4px;padding-top:18px}.portfolioPage>p,.hobbiesPage>p{margin-bottom:30px}.portfolioList{gap:24px;margin-bottom:58px}.projectCard{grid-template-columns:minmax(210px,.8fr) minmax(0,1.2fr);grid-template-areas:"media text""details details";align-items:start;column-gap:22px;padding:18px}.projectText{grid-area:text;min-width:0;display:block}.projectCard .projectMedia{grid-area:media;margin:0}.projectDetailsReveal{grid-area:details}.projectText h2{margin-bottom:10px;font-size:22px}.tag{margin:0 4px 10px 0;padding:4px 7px;font-size:11px}.projectSummary{margin-bottom:12px;font-size:13px;line-height:1.42}.projectCredit{font-size:12px;line-height:1.35}.projectImg,.projectMedia.isSilenceVisual .projectImg{height:min(58vh,230px)}.projectActions{flex-direction:row;justify-content:flex-start;align-items:flex-start;gap:5px 12px;margin-top:14px}.projectActions .desktopDownload{display:none}.projectActions .projectAction,.projectActions .projectAction.ghost,.projectActions .projectAction.ghost:first-child{font-size:13px;min-height:36px!important;padding:0 10px!important}.mobileDownloadNote{text-align:left;flex-basis:100%;order:0;margin:0;font-size:12px;display:block}.projectExpand{justify-self:start;margin-top:12px}.projectDetailsReveal.isOpen .projectDetails{padding-top:20px}.caseDevelopment,.caseGallerySection{margin-top:26px}.developmentTrack{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.developmentTrack article{border-left:0;padding:16px 14px 0 0}.developmentTrack article:not(:last-child):after{border-radius:0;width:1px;height:calc(100% - 16px);top:16px;left:auto;right:7px}.developmentTrack article:last-child:after{display:none}.developmentTrack h3{font-size:17px}.caseSplit{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:22px;margin-top:28px;padding-top:22px}.caseGallerySection{padding-top:22px}.caseGallery,.caseGallery.count-1{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.caseGallery.count-1 .caseGalleryItem{max-width:520px}.caseGalleryMedia>img,.caseGalleryMedia>video{object-fit:contain;max-height:min(72vh,330px)}.story{text-align:left;grid-template-columns:minmax(0,1.08fr) minmax(210px,.92fr);gap:28px;min-height:0;padding-top:76px;padding-bottom:38px}.story h1{margin-bottom:16px;font-size:clamp(32px,5vw,43px)}.story p{font-size:14px;line-height:1.45}.storyPhoto{aspect-ratio:auto;border-radius:30px;justify-self:end;width:100%;height:min(74vh,320px);margin-bottom:0}.orangeBand{min-height:0;padding:38px var(--content-gutter);grid-template-columns:minmax(0,1.08fr) minmax(210px,.92fr);gap:28px}.orangeBand>div:nth-child(2){justify-self:stretch;width:auto}.orangeBand b{margin-bottom:10px;font-size:23px}.orangeBand button{margin-top:14px}.contact{padding-top:46px;padding-bottom:48px}.contact form{gap:12px;margin-top:24px}.contact textarea{min-height:82px}.hobbiesPage h1{max-width:720px}.hobbyAccordion{min-height:300px;margin-bottom:52px;display:flex}.hobbyAccordion article,.hobbyAccordion article.active,.hobbyAccordion article.collapsed{order:initial;border-right:1px solid var(--line);touch-action:pan-y;border-bottom:0;grid-template-columns:70px minmax(0,1fr);min-height:300px;display:grid}.hobbyAccordion article.active{flex:0 0 calc(100% - 210px);width:calc(100% - 210px)}.hobbyAccordion article.collapsed{flex:0 0 70px;width:70px}.hobbyAccordion article>button{grid-template-rows:auto 1fr;grid-template-columns:1fr;align-items:start;gap:12px;min-height:0;padding:18px 10px}.hobbyAccordion article>button span{writing-mode:vertical-rl;text-align:center;place-self:end center;font-size:17px;transform:rotate(180deg)}.hobbyContent{padding:20px 18px}.hobbyContent h2{font-size:24px}.hobbyContent .photoBox{height:min(34vh,145px);margin-top:16px}.mediaLightbox{padding:10px}.mediaLightboxContent,.mediaLightboxContent img,.mediaLightboxContent video{max-height:calc(100dvh - 20px)}.mediaLightboxContent.isEmbed{width:min(1000px,100vw - 72px)}.mediaLightboxClose{width:40px;height:40px;font-size:25px;top:8px;right:8px}.mediaLightboxArrow{width:40px;height:40px;font-size:29px;top:50%;bottom:auto;transform:translateY(-50%)}.mediaLightboxArrow.prev{left:8px}.mediaLightboxArrow.next{right:8px}.mediaLightboxCounter{padding:5px 9px;font-size:12px;bottom:8px}}@keyframes lightboxOpen{0%{opacity:0}to{opacity:1}}@keyframes lightboxClose{0%{opacity:1}to{opacity:0}}@keyframes lightboxMediaOpen{0%{opacity:0;transform:scale(.92)translateY(18px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes lightboxMediaClose{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.94)translateY(10px)}}@media (width<=720px){.mediaLightbox{padding:16px}.mediaLightboxContent{width:fit-content;max-width:calc(100% - 16px);height:fit-content;max-height:calc(100dvh - 32px);margin:auto}.mediaLightboxContent img,.mediaLightboxContent video{max-width:100%;max-height:calc(100dvh - 32px)}.mediaLightboxClose{top:14px;right:14px}.logoBtn.logoHintPulse{animation:2.1s ease-in-out infinite contactGlow}@media (prefers-reduced-motion:reduce){.logoBtn.logoHintPulse{animation:none}}@media (width<=720px){.portfolioPage>small,.portfolioPage>h1,.portfolioPage>p,.hobbiesPage>small,.hobbiesPage>h1,.hobbiesPage>p{position:relative;top:18px}}}
