:root{--color-bg-light:#f1f0ed;--color-bg-dark:#000;--color-text-dark:#000;--color-text-light:#fff;--color-text-muted:#666;--font-primary:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg-light);color:var(--color-text-dark);min-height:100vh;margin:0;line-height:1.5;overflow-x:hidden}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img{max-width:100%;height:auto;display:block}::selection{color:#fff;background:#000}:root{--anim-duration:.8s;--anim-duration-fast:.5s;--anim-duration-slow:1.2s;--anim-ease:cubic-bezier(.33,1,.68,1);--anim-ease-bounce:cubic-bezier(.34,1.56,.64,1)}@keyframes ascend{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes ascendSubtle{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:.9;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes charReveal{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.reveal-text{opacity:0;transition:opacity var(--anim-duration)var(--anim-ease),transform var(--anim-duration)var(--anim-ease);transform:translateY(40px)}.reveal-text.visible{opacity:1;transform:translateY(0)}.reveal-subtle{opacity:0;transition:opacity var(--anim-duration-fast)var(--anim-ease),transform var(--anim-duration-fast)var(--anim-ease);transform:translateY(20px)}.reveal-subtle.visible{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}.delay-4{transition-delay:.4s}.delay-5{transition-delay:.5s}@media (max-width:768px){:root{--anim-duration:.6s;--anim-duration-fast:.4s;--anim-duration-slow:.9s}.reveal-text{transform:translateY(25px)}}.preloader{z-index:9999;pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0;overflow:hidden}.curtain{will-change:transform;background:#000;width:100%;height:110%;position:absolute;top:0;left:0;transform:translateY(0)}.preloader--reveal .curtain{animation:2s cubic-bezier(.76,0,.24,1) forwards smoothCurtainPull}@keyframes smoothCurtainPull{0%{border-radius:0;transform:translateY(0)}to{border-radius:0 0 50% 50%/0 0 5% 5%;transform:translateY(-100%)}}.nav-blur-overlay{-webkit-backdrop-filter:blur();z-index:9998;opacity:0;pointer-events:none;background-color:#0000;width:100%;height:100%;transition:opacity .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s;position:fixed;top:0;left:0}.nav-blur-overlay.active{opacity:1;-webkit-backdrop-filter:blur(10px)}@keyframes descend{0%{opacity:0;transform:translateY(-25px)}to{opacity:1;transform:translateY(0)}}.pre-animate-rise{opacity:0;will-change:opacity,transform;transform:translateY(25px)}.pre-animate-fall{opacity:0;will-change:opacity,transform;transform:translateY(-25px)}.animate-rise{will-change:opacity,transform;animation:2.5s cubic-bezier(.33,1,.68,1) forwards ascend}.animate-fall{will-change:opacity,transform;animation:2.5s cubic-bezier(.33,1,.68,1) forwards descend}.delay-1{animation-delay:.25s}.delay-2{animation-delay:.45s}.delay-3{animation-delay:.65s}.hero{color:#000;box-sizing:border-box;z-index:1;background-color:#f1f0ed;height:100vh;max-height:100vh;padding:24px 50px;position:sticky;top:0;overflow:hidden}.hero__fade-wrapper{will-change:opacity,filter,transform;width:100%;height:100%;transition:none}.navbar{justify-content:space-between;align-items:center;padding:10px 0;font-size:16px;transition:all .3s;display:flex}.navbar--dark{-webkit-backdrop-filter:blur(10px);z-index:9999;background-color:#000000e6;border-radius:0;padding:20px 50px;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 20px #0000001a}.navbar__left span{color:#333;font-size:16px;font-weight:400}.navbar__right{gap:35px;display:flex}.navbar__right a{color:#333;font-size:16px;font-weight:400;text-decoration:none;transition:all .3s;position:relative}.navbar__right a:after{content:"";background:#000;width:0;height:1px;transition:width .3s;position:absolute;bottom:-4px;left:0}.navbar__right a:hover{color:#000}.navbar__right a:hover:after{width:100%}.navbar-mobile{display:none}.hero__content{flex-direction:column;justify-content:center;min-height:calc(100vh - 80px);margin-top:0;padding-top:20px;display:flex;position:relative}.hero__title{letter-spacing:-.03em;text-transform:uppercase;text-align:center;z-index:5;margin:0;font-size:clamp(60px,10vw,160px);font-weight:800;line-height:.9;position:relative}.hero__title-line{display:inline}.hero__title-line:first-child{margin-right:.25em}.hero__arrow{color:#8c8c73;font-size:28px;font-weight:300;position:absolute;bottom:380px;left:0}.hero__bio{max-width:380px;position:absolute;bottom:150px;left:0}.hero__bio p{color:#393632;margin-bottom:30px;font-size:22px;font-weight:400;line-height:1.5}.hero__contact-btn{color:#f1f0ed;background:#393632;border-radius:9999px;align-items:center;gap:10px;padding:18px 36px;font-size:18px;font-weight:600;text-decoration:none;transition:transform .3s,background .3s;display:inline-flex}.hero__contact-btn:hover{background:#2a2825;transform:scale(1.05)}.hero__contact-btn span{font-size:20px}.hero__bottom-grid{display:contents}.hero__portrait{width:420px;height:580px;margin:30px auto 0;position:relative;overflow:hidden;box-shadow:0 25px 80px #0000001f}.hero__portrait-img{object-fit:cover;object-position:center top;filter:grayscale()contrast(1.1);width:100%;height:100%;transition:filter .5s,transform .5s}.hero__portrait:hover .hero__portrait-img{filter:grayscale(0%)contrast();transform:scale(1.02)}.hero__availability{text-align:right;position:absolute;bottom:50px;right:0}.hero__availability-label{letter-spacing:.12em;color:#555;text-transform:uppercase;margin-bottom:0;font-size:18px;display:block}.hero__availability-date{letter-spacing:-.03em;color:#000;font-size:clamp(60px,10vw,140px);font-weight:800}@media (max-width:1024px){.hero__portrait{width:220px;height:300px}}@media (max-width:768px){.hero{box-sizing:border-box;width:100%;max-width:100vw;min-height:100vh;padding:20px 20px 40px;overflow-x:hidden}.navbar{flex-direction:row;justify-content:space-between;align-items:flex-start}.navbar__left span{letter-spacing:.02em;opacity:.8;font-size:11px}.navbar__right{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.navbar__right a{opacity:.7;font-size:12px;transition:opacity .3s}.navbar__right a:hover{opacity:1}.navbar__right a:after{display:none}.hero__content{flex-direction:column;justify-content:space-between;min-height:calc(100vh - 180px);margin-top:50px;padding-top:0;display:flex;position:relative}.hero__title{letter-spacing:-.03em;text-align:left;z-index:auto;order:1;font-size:52px;line-height:.92;position:static}.hero__title-line{opacity:0;animation:ascend 1s var(--anim-ease)forwards;display:block}.hero__title-line:first-child{animation-delay:.3s}.hero__title-line:nth-child(2){animation-delay:.45s}.hero__arrow{opacity:0;animation:ascendSubtle .7s var(--anim-ease)forwards;order:2;margin-top:24px;font-size:20px;animation-delay:.6s;position:static}.hero__bio{order:3;max-width:100%;margin-top:20px;position:static}.hero__bio p{color:#4a4744;margin-bottom:24px;font-size:14px;line-height:1.6}.hero__contact-btn{transition:transform .4s var(--anim-ease),box-shadow .4s ease;padding:16px 32px;font-size:14px;font-weight:600;box-shadow:0 4px 20px #39363233}.hero__contact-btn:hover{transform:scale(1.03);box-shadow:0 6px 28px #3936324d}.hero__contact-btn span{font-size:15px}.hero__bottom-grid{order:4;grid-template-columns:auto 1fr;align-items:flex-end;gap:16px;margin-top:auto;padding-top:24px;display:grid}.hero__portrait{border-radius:16px;width:160px;height:230px;margin:0;position:static;box-shadow:0 16px 48px #00000026}.hero__availability{text-align:right;flex-direction:column;justify-content:flex-end;display:flex;position:static}.hero__availability-label{letter-spacing:.14em;margin-bottom:4px;font-size:11px}.hero__availability-date{letter-spacing:-.03em;font-size:52px;font-weight:800}.navbar-mobile{display:none}}@media (max-width:400px){.hero{padding:16px}.navbar__left span{font-size:10px}.navbar__right{gap:6px}.navbar__right a{font-size:10px}.hero__title{font-size:44px}.hero__bio p{font-size:13px}.hero__portrait{width:140px;height:200px}.hero__availability-label{font-size:10px}.hero__availability-date{font-size:44px}.hero__contact-btn{padding:14px 24px;font-size:13px}}.services{color:#fff;z-index:2;background-color:#050505;border-radius:40px 40px 0 0;min-height:350vh;margin-top:0;padding:120px 50px 200px;position:relative}.services__header{opacity:0;will-change:transform,opacity;justify-content:space-between;margin-bottom:100px;transition:transform .8s cubic-bezier(.33,1,.68,1),opacity .8s cubic-bezier(.33,1,.68,1);display:flex;transform:translateY(30px)}.services__header.visible{opacity:1;will-change:auto;transform:translate(0,0)}.services__title{letter-spacing:-.04em;flex:1;margin:0;font-size:clamp(60px,8vw,120px);font-weight:800;line-height:.9}.services__intro{text-align:right;width:400px;padding-top:20px}.services__label{letter-spacing:.05em;color:#666;text-transform:uppercase;margin-bottom:24px;font-size:13px;display:block}.services__desc{color:#999;margin:0;font-size:16px;line-height:1.6}.services__list{border-top:1px solid #ffffff26;position:sticky;top:100px}.service{background-color:#050505;border-bottom:1px solid #ffffff26;transition:background-color .3s}.service:hover{background-color:#0a0a0a}.service__header{cursor:pointer;grid-template-columns:60px 1fr 40px;align-items:flex-start;padding:30px 0;transition:padding .5s cubic-bezier(.16,1,.3,1);display:grid}.service.active .service__header{padding:60px 0 40px}.service__number{color:#555;padding-top:8px;font-family:monospace;font-size:14px}.service__title{letter-spacing:-.02em;color:#888;margin:0;font-size:clamp(32px,4vw,42px);font-weight:600;transition:all .5s cubic-bezier(.16,1,.3,1)}.service.active .service__title{color:#fff;font-size:clamp(42px,5vw,64px);font-weight:700}.service__toggle{display:none}.service__content{opacity:.3;grid-template-rows:0fr;transition:grid-template-rows .8s cubic-bezier(.22,1,.36,1),opacity .5s ease-out;display:grid}.service.active .service__content{opacity:1;grid-template-rows:1fr}.service__body{grid-template-columns:60px 1fr 1fr;gap:40px;display:grid;overflow:hidden}.service.active .service__body{padding-bottom:100px}.service__description{color:#888;grid-column:2;max-width:450px;margin:0;font-size:18px;line-height:1.6}.service__tech{grid-column:3;margin:0;padding:0;list-style:none}.service__tech-item{border-top:1px solid #ffffff1a;align-items:baseline;gap:20px;padding:16px 0;display:flex}.service__tech-item:first-child{border-top:none;padding-top:0}.tech-num{color:#444;font-family:monospace;font-size:12px}.tech-name{color:#fff;font-size:18px;font-weight:500}@media (max-width:1024px){.services{padding:80px 24px 100px}.services__header{flex-direction:column;gap:40px;margin-bottom:60px}.services__intro{text-align:left;width:100%}.service__body{grid-template-columns:1fr;gap:40px}.service__description,.service__tech{grid-column:1;padding-left:60px}}@media (max-width:768px){.services{border-radius:32px 32px 0 0;min-height:auto;padding:80px 20px 100px}.services__header{flex-direction:column;gap:24px;margin-bottom:50px}.services__title{font-size:44px;line-height:.95}.services__intro{text-align:left;width:100%;padding-top:0}.services__label{margin-bottom:16px;font-size:11px}.services__desc{font-size:14px;line-height:1.7}.services__list{position:relative;top:0}.service{opacity:0;transition:opacity .6s var(--anim-ease),transform .6s var(--anim-ease),background-color .3s ease;transform:translateY(30px)}.service.visible{opacity:1;transform:translateY(0)}.service:first-child{transition-delay:.1s}.service:nth-child(2){transition-delay:.2s}.service:nth-child(3){transition-delay:.3s}.service:nth-child(4){transition-delay:.4s}.service__toggle{color:#555;width:32px;height:32px;transition:transform .4s var(--anim-ease),color .3s ease;justify-content:center;align-items:center;display:flex}.service__toggle svg{width:18px;height:18px}.service.active .service__toggle{color:#fff;transform:rotate(180deg)}.service__header{grid-template-columns:36px 1fr 44px;align-items:center;min-height:56px;padding:20px 0}.service.active .service__header{padding:24px 0 20px}.service__number{padding-top:0;font-size:12px}.service__title{letter-spacing:-.01em;font-size:20px}.service.active .service__title{color:#fff;font-size:24px}.service__content{transition:grid-template-rows .5s var(--anim-ease),opacity .4s ease}.service__body{grid-template-columns:1fr;gap:24px}.service.active .service__body{padding-bottom:32px}.service__description{color:#999;grid-column:1;padding-left:36px;font-size:14px;line-height:1.7}.service__tech{grid-column:1;padding-left:36px}.service__tech-item{gap:12px;padding:12px 0}.tech-num{font-size:10px}.tech-name{font-size:14px}}@media (max-width:400px){.services{padding:60px 16px 80px}.services__title{font-size:36px}.service__header{grid-template-columns:28px 1fr 40px}.service__title{font-size:18px}.service.active .service__title{font-size:20px}.service__description,.service__tech{padding-left:28px}}.works{color:#f5f5f5;z-index:3;background-color:#050505;padding:140px 50px 160px;position:relative}.works__header{justify-content:space-between;align-items:flex-start;gap:40px;margin-bottom:100px;display:flex}.works__title{letter-spacing:-.03em;opacity:0;margin:0;font-size:clamp(54px,7vw,96px);transition:transform .7s cubic-bezier(.33,1,.68,1),opacity .7s cubic-bezier(.33,1,.68,1);transform:translateY(20px)scale(.98)}.works__intro{opacity:0;max-width:360px;transition:transform .7s cubic-bezier(.33,1,.68,1) .12s,opacity .7s cubic-bezier(.33,1,.68,1) .12s;transform:translateY(20px)scale(.98)}.works__title.visible,.works__intro.visible{opacity:1;transform:translate(0,0)}.works__label{letter-spacing:.08em;color:#777;text-transform:uppercase;margin-bottom:18px;font-size:12px;display:inline-block}.works__desc{color:#b0b0b0;margin:0;font-size:16px;line-height:1.6}.works__container{grid-template-columns:200px 1fr;align-items:start;gap:80px;display:grid}.works__numbers{flex-direction:column;justify-content:flex-start;align-items:flex-start;height:200px;display:flex;position:sticky;top:140px}.work__number{color:#ffffff1f;font-size:clamp(100px,15vw,180px);font-weight:700;line-height:.9;animation:.6s cubic-bezier(.33,1,.68,1) numberChange}@keyframes numberChange{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translate(0,0)scale(1)}}.works__list{flex-direction:column;align-items:flex-end;gap:140px;display:flex}.work{opacity:0;will-change:transform,opacity;transition:transform .8s cubic-bezier(.33,1,.68,1),opacity .8s cubic-bezier(.33,1,.68,1);position:relative;transform:translateY(30px)}.work.visible{opacity:1;transform:translate(0,0)}.work__content{flex-direction:column;gap:26px;display:flex}.work__meta{justify-content:space-between;align-items:center;gap:20px;display:flex}.work__tags{flex-wrap:wrap;gap:12px;display:flex}.work__tag{color:#dcdcdc;letter-spacing:.01em;background-color:#ffffff0f;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;display:inline-flex}.work__year{color:#aaa;letter-spacing:.08em;font-size:14px}.work__card{flex-direction:column;gap:24px;display:flex}.work__window{cursor:pointer;background:#1e1e1ef2;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;width:100%;max-width:950px;transition:transform .4s cubic-bezier(.33,1,.68,1);display:flex;overflow:hidden;box-shadow:0 30px 80px #00000080,0 10px 30px #0000004d}.work__window:hover{transform:translateY(-4px)}.work__window-header{background:#282828f2;border-bottom:1px solid #ffffff14;align-items:center;gap:12px;padding:12px 16px;display:flex}.work__window-controls{gap:8px;display:flex}.work__window-control{border-radius:50%;width:12px;height:12px;transition:opacity .2s}.work__window-control--close{background:#ff5f56}.work__window-control--minimize{background:#ffbd2e}.work__window-control--maximize{background:#27c93f}.work__window-control:hover{opacity:.8}.work__window-title{color:#999;font-size:13px;font-weight:500}.work__window-content{aspect-ratio:16/8;background:#000;width:100%;position:relative;overflow:hidden}.work__window-image{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.33,1,.68,1);display:block}.work__window:hover .work__window-image{transform:scale(1.05)}.work__window-overlay{opacity:0;background:0 0;justify-content:center;align-items:center;width:100%;height:100%;transition:all .4s cubic-bezier(.33,1,.68,1);display:flex;position:absolute;top:0;left:0}.work__window:hover .work__window-overlay{opacity:1;-webkit-backdrop-filter:blur(4px);background:#0006}.work__open-btn{color:#000;letter-spacing:.02em;cursor:pointer;background-color:#fffffff2;border:1px solid #ffffff4d;border-radius:50px;padding:14px 32px;font-size:15px;font-weight:600;transition:all .4s cubic-bezier(.33,1,.68,1);box-shadow:0 8px 30px #0000004d}.work__open-btn:hover{background-color:#fff;border-color:#ffffff80;transform:scale(1.05)translateY(-2px);box-shadow:0 12px 40px #0006}.work__image-wrapper{display:none}.work__image{object-fit:cover;filter:saturate(1.05)brightness(1.02);width:100%;height:100%;transition:transform .9s cubic-bezier(.33,1,.68,1);display:block}.work__image-wrapper:hover .work__image{transform:scale(1.06)}.work__view{color:#000;letter-spacing:.02em;cursor:pointer;-webkit-backdrop-filter:blur(10px);background-color:#fffffff2;border:1px solid #fff3;border-radius:50%;width:70px;height:70px;font-size:14px;font-weight:500;transition:transform .4s cubic-bezier(.33,1,.68,1),background-color .3s,border-color .3s,box-shadow .3s;position:absolute;bottom:24px;right:24px;box-shadow:0 4px 20px #0003}.work__view:hover{background-color:#fff;border-color:#ffffff4d;transform:scale(1.08)translateY(-3px);box-shadow:0 8px 30px #0000004d}.work__details{flex-direction:column;gap:16px;display:flex}.work__title{letter-spacing:-.025em;color:#f5f5f5;margin:0;font-size:clamp(32px,3.5vw,48px);font-weight:600}.work__description{color:#b8b8b8;max-width:100%;margin:0;font-size:16px;line-height:1.75}@media (max-width:1024px){.works{padding:100px 24px 120px}.works__header{flex-direction:column;gap:28px;margin-bottom:60px}.works__container{grid-template-columns:120px 1fr;gap:40px}.works__numbers{gap:100px;top:100px}.work__number{font-size:clamp(80px,20vw,140px)}.works__list{gap:100px}.work__card{gap:20px}}@media (max-width:768px){.works{padding:80px 20px 100px;overflow-x:hidden}.works__header{gap:20px;margin-bottom:50px}.works__title{animation:ascendSubtle .8s var(--anim-ease)both;font-size:40px}.works__intro{max-width:100%}.works__label{margin-bottom:12px;font-size:10px}.works__desc{font-size:14px;line-height:1.6}.works__container{display:block}.works__numbers{display:none}.works__list{gap:70px}.work{opacity:0;will-change:transform,opacity;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(40px)}.work.visible{opacity:1;transform:translateY(0)}.work:first-child{transition-delay:.1s}.work:nth-child(2){transition-delay:.2s}.work:nth-child(3){transition-delay:.3s}.work__meta{flex-direction:column;align-items:flex-start;gap:12px}.work__tags{gap:8px}.work__tag{border-radius:20px;padding:6px 12px;font-size:11px}.work__year{font-size:12px}.work__card{gap:16px}.work__window{display:none}.work__image-wrapper{aspect-ratio:16/10;cursor:pointer;border-radius:16px;width:100%;display:block;position:relative;overflow:hidden;box-shadow:0 20px 50px #0006}.work__image{object-fit:cover;will-change:transform;width:100%;height:100%;transition:transform .4s ease-out}.work__image-wrapper:active .work__image{transform:scale(1.03)}.work__view{color:#000;background:#fffffff2;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:12px;font-weight:600;display:flex;position:absolute;bottom:14px;right:14px;box-shadow:0 4px 20px #0000004d}.work__title{margin-top:4px;font-size:24px}.work__description{color:#999;font-size:14px;line-height:1.7}}@media (max-width:400px){.works{padding:60px 16px 80px}.works__title{font-size:32px}.work__title{font-size:22px}.work__tag{padding:5px 10px;font-size:10px}.work__image-wrapper{border-radius:14px}}@media (prefers-reduced-motion:reduce){.works__title,.works__intro,.work,.work__image{transition:none;animation:none;transform:none}}.about{color:#f5f5f5;z-index:2;background-color:#050505;padding:140px 50px 180px;position:relative}.about__container{max-width:1400px;margin:0 auto}.about__top{grid-template-columns:1fr 2fr;gap:80px;margin-bottom:140px;display:grid}.about__hero{opacity:0;transition:transform .8s cubic-bezier(.33,1,.68,1),opacity .8s cubic-bezier(.33,1,.68,1);transform:translateY(30px)}.about__hero.visible{opacity:1;transform:translate(0,0)}.about__hero-title{letter-spacing:-.03em;margin:0;font-size:clamp(48px,6vw,72px);font-weight:800;line-height:.95}.about__skills{opacity:0;transition:transform .8s cubic-bezier(.33,1,.68,1) .1s,opacity .8s cubic-bezier(.33,1,.68,1) .1s;transform:translateY(30px)}.about__skills.visible{opacity:1;transform:translate(0,0)}.about__skills-title{text-transform:uppercase;letter-spacing:.08em;color:#888;margin:0 0 36px;font-size:14px;font-weight:500}.about__skills-grid{grid-template-columns:repeat(3,1fr);gap:50px;display:grid}.about__skill-column{flex-direction:column;gap:14px;display:flex}.about__skill-heading{text-transform:uppercase;letter-spacing:.08em;color:#666;margin:0 0 6px;font-size:12px;font-weight:600}.about__skill-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.about__skill-list li{color:#d0d0d0;opacity:0;font-size:17px;font-weight:400;transition:transform .6s cubic-bezier(.33,1,.68,1),opacity .6s cubic-bezier(.33,1,.68,1),color .3s;transform:translate(-10px)}.about__skills.visible .about__skill-list li{opacity:1;transform:translate(0,0)}.about__skill-list li:hover{color:#fff}.about__team{opacity:0;margin-top:120px;transition:transform .8s cubic-bezier(.33,1,.68,1) .2s,opacity .8s cubic-bezier(.33,1,.68,1) .2s;transform:translateY(30px)}.about__team.visible{opacity:1;transform:translate(0,0)}.about__team-title{color:#f5f5f5;letter-spacing:-.02em;margin:0 0 60px;font-size:clamp(28px,4vw,42px);font-style:italic;font-weight:500}.bookshelf{grid-template-columns:auto 1fr;gap:50px;min-height:450px;display:grid}.bookshelf__spines{background:#ffffff05;border:1px solid #ffffff0f;border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.bookshelf__spine{writing-mode:vertical-rl;text-orientation:mixed;cursor:pointer;background:0 0;border-left:3px solid #0000;padding:40px 22px;transition:background .3s,border-color .3s,box-shadow .3s,padding .3s;position:relative}.bookshelf__spine:hover{background:#ffffff05}.bookshelf__spine--active{background:#ffffff0a;border-left:3px solid #fffc;padding:40px 28px;box-shadow:inset 6px 0 16px #ffffff0f,-4px 0 30px #ffffff1a}.bookshelf__spine-name{letter-spacing:.25em;text-transform:uppercase;color:#ffffff26;font-size:16px;font-weight:600;transition:color .3s,text-shadow .3s}.bookshelf__spine:hover .bookshelf__spine-name{color:#ffffff59}.bookshelf__spine--active .bookshelf__spine-name{color:#fff;text-shadow:0 0 20px #ffffff59}.bookshelf__content{background:linear-gradient(145deg,#151515 0%,#0a0a0a 100%);border:1px solid #ffffff0f;border-radius:20px;justify-content:flex-start;align-items:center;min-height:400px;display:flex;position:relative}.bookshelf__page{flex-direction:column;gap:20px;width:100%;padding:60px 70px;animation:.5s cubic-bezier(.33,1,.68,1) pageReveal;display:flex}@keyframes pageReveal{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.bookshelf__page-header{justify-content:space-between;align-items:center;gap:50px;display:flex}.bookshelf__page-info{flex-direction:column;flex:1;gap:10px;display:flex}.bookshelf__page-avatar{opacity:0;border:3px solid #ffffff1a;border-radius:20px;flex-shrink:0;width:320px;height:320px;animation:.6s cubic-bezier(.33,1,.68,1) .3s forwards avatarReveal;overflow:hidden;transform:scale(.96);box-shadow:0 12px 45px #00000080}.bookshelf__page-avatar img{object-fit:cover;width:100%;height:100%}@keyframes avatarReveal{to{opacity:.75;transform:scale(1)}}.bookshelf__page-role{letter-spacing:.18em;text-transform:uppercase;color:#888;font-size:13px;font-weight:500}.bookshelf__page-name{letter-spacing:-.03em;color:#fff;margin:0;font-size:clamp(40px,6vw,64px);font-weight:700;line-height:1.1}.bookshelf__page-description{color:silver;max-width:580px;margin:16px 0 24px;font-size:18px;line-height:1.75}.bookshelf__page-focus{color:#999;letter-spacing:.03em;border-top:1px solid #ffffff1a;padding-top:20px;font-size:15px;font-weight:500;display:inline-block}.bookshelf__empty{text-align:center;width:100%;padding:60px}.bookshelf__empty span{color:#444;font-size:16px;font-style:italic}@media (max-width:1024px){.about{padding:100px 24px 120px}.about__top{grid-template-columns:1fr;gap:50px;margin-bottom:80px}.about__skills-grid{grid-template-columns:1fr;gap:40px}.bookshelf{gap:30px}.bookshelf__spine{padding:24px 14px}.bookshelf__page{padding:35px}.bookshelf__page-header{flex-direction:column-reverse;align-items:flex-start;gap:20px}.bookshelf__page-avatar{border-radius:16px;align-self:center;width:180px;height:180px}}@media (max-width:768px){.about{padding:80px 20px 100px;overflow-x:hidden}.about__top{gap:40px;margin-bottom:60px}.about__hero-title{font-size:42px;line-height:1}.about__skills-title{margin-bottom:28px;font-size:28px}.about__skills-grid{grid-template-columns:repeat(3,1fr);gap:32px 20px;display:grid}.about__skill-column{gap:10px}.about__skill-heading{letter-spacing:.08em;color:#666;margin-bottom:10px;font-size:11px;font-weight:600}.about__skill-list{flex-direction:column;gap:7px;display:flex}.about__skill-list li{font-size:13px}.about__team{margin-top:80px}.about__team-title{margin-bottom:40px;font-size:26px}.bookshelf{grid-template-columns:1fr;gap:20px}.bookshelf__spines{flex-direction:row;justify-content:center;gap:0}.bookshelf__spine{writing-mode:horizontal-tb;border-bottom:3px solid #0000;border-left:none;padding:12px 18px}.bookshelf__spine--active{border-bottom:3px solid #ffffffb3;border-left:none;padding:12px 18px;box-shadow:0 4px 15px #ffffff1a}.bookshelf__spine-name{letter-spacing:.15em;font-size:12px}.bookshelf__content{min-height:auto}.bookshelf__page{padding:30px 24px}.bookshelf__page-header{text-align:center;flex-direction:column-reverse;align-items:center;gap:16px}.bookshelf__page-info{align-items:center}.bookshelf__page-avatar{border-radius:14px;width:140px;height:140px}.bookshelf__page-name{font-size:24px}.bookshelf__page-description{text-align:center;font-size:13px}.bookshelf__page-focus{text-align:center;font-size:11px}}@media (max-width:400px){.about{padding:60px 16px 80px}.about__hero-title{font-size:32px}.about__skills-title{margin-bottom:16px;font-size:22px}.about__skills-grid{gap:24px 16px}.about__skill-heading{font-size:10px}.about__skill-list{gap:6px}.about__skill-list li{font-size:12px}.about__team-title{font-size:22px}.bookshelf__page-avatar{width:120px;height:120px}.bookshelf__page-name{font-size:20px}}.contact{color:#000;z-index:5;background:linear-gradient(135deg,#fafaf8 0%,#f0f0ed 50%,#f5f5f2 100%);padding:140px 50px 120px;position:relative}.contact:before{content:"";background:linear-gradient(90deg,#0000,#0000000d,#0000);height:1px;position:absolute;top:0;left:0;right:0}.contact__container{flex-direction:column;align-items:center;gap:60px;max-width:1200px;margin:0 auto;display:flex;position:relative}.contact__container:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle,#00000005 0%,#0000 70%);width:600px;height:600px;position:absolute;top:-100px;left:50%;transform:translate(-50%)}.contact__title{letter-spacing:-.02em;text-align:center;color:#000;opacity:0;margin:0;font-size:clamp(56px,10vw,110px);font-weight:700;line-height:.95;transition:transform .8s cubic-bezier(.33,1,.68,1),opacity .8s cubic-bezier(.33,1,.68,1);transform:translateY(30px)scale(.98)}.contact__title.visible{opacity:1;transform:translate(0,0)scale(1)}.contact__form-wrapper{opacity:0;width:100%;max-width:520px;transition:transform .8s cubic-bezier(.33,1,.68,1) .15s,opacity .8s cubic-bezier(.33,1,.68,1) .15s;transform:translateY(30px)}.contact__form-wrapper.visible{opacity:1;transform:translate(0,0)}.contact__form{-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#1a1a1af2 0%,#141414fa 100%);border:1px solid #ffffff1f;border-radius:28px;flex-direction:column;gap:24px;padding:50px 40px;display:flex;box-shadow:0 30px 80px #0000004d,0 15px 40px #0003,0 5px 15px #0000001a,inset 0 1px #ffffff14}.contact__form-title{text-align:center;letter-spacing:-.01em;color:#fff;margin:0 0 8px;font-size:28px;font-weight:500;animation:3s ease-in-out infinite titleGlow;position:relative}@keyframes titleGlow{0%,to{text-shadow:0 0 20px #ffffff1a}50%{text-shadow:0 0 30px #ffffff26,0 0 40px #ffffff14}}.contact__input,.contact__textarea{color:#fff;background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;width:100%;padding:16px 20px;font-family:inherit;font-size:15px;transition:all .4s cubic-bezier(.33,1,.68,1);position:relative;box-shadow:inset 0 2px 8px #00000026}.contact__input::placeholder,.contact__textarea::placeholder{color:#ffffff59;transition:all .3s}.contact__input:hover,.contact__textarea:hover{background:#ffffff0f;border-color:#ffffff1f;transform:translateY(-1px)}.contact__input:focus,.contact__textarea:focus{background:#ffffff14;border-color:#ffffff40;outline:none;transform:translateY(-2px);box-shadow:0 8px 24px #0003,inset 0 2px 8px #0000001a,0 0 0 3px #ffffff0d}.contact__input:focus::placeholder,.contact__textarea:focus::placeholder{color:#ffffff40;transform:translate(4px)}.contact__textarea{resize:vertical;min-height:120px}.contact__button{color:#000;cursor:pointer;background:linear-gradient(135deg,#fff 0%,#f0f0f0 100%);border:none;border-radius:14px;width:100%;margin-top:8px;padding:16px 32px;font-size:16px;font-weight:600;transition:all .4s cubic-bezier(.33,1,.68,1);position:relative;overflow:hidden;box-shadow:0 4px 16px #ffffff26,inset 0 1px #ffffff80}.contact__button:before{content:"";background:#fff6;border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.contact__button:hover{background:linear-gradient(135deg,#fff 0%,#fafafa 100%);transform:translateY(-3px);box-shadow:0 8px 28px #ffffff40,0 4px 12px #0000001a,inset 0 1px #fff9}.contact__button:hover:before{width:300px;height:300px}.contact__button:active{transform:translateY(-1px);box-shadow:0 4px 16px #fff3}.contact__button:disabled{opacity:.6;cursor:not-allowed;transform:none}.contact__status{text-align:center;border-radius:10px;margin:0;padding:12px;font-size:14px;animation:.3s cubic-bezier(.33,1,.68,1) slideIn}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.contact__status--success{color:#22c55e;background:#22c55e26;border:1px solid #22c55e4d}.contact__status--error{color:#ef4444;background:#ef444426;border:1px solid #ef44444d}@media (max-width:768px){.contact{box-sizing:border-box;width:100%;max-width:100vw;padding:80px 20px;overflow-x:hidden}.contact__container{gap:40px;width:100%;max-width:100%}.contact__container:before{display:none}.contact__title{word-break:break-word;font-size:42px}.contact__form-wrapper{max-width:100%}.contact__form{border-radius:20px;padding:32px 20px}.contact__form-title{font-size:22px}.contact__input,.contact__textarea{padding:14px 16px;font-size:14px}.contact__button{padding:14px 24px;font-size:15px}}@media (prefers-reduced-motion:reduce){.contact__title,.contact__form-wrapper{opacity:1;transition:none;transform:none}}.scroll-blur-overlay{-webkit-backdrop-filter:blur();z-index:9999;opacity:0;pointer-events:none;background-color:#0000;width:100%;height:100%;transition:opacity .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s;position:fixed;top:0;left:0}.scroll-blur-overlay.active{opacity:1;-webkit-backdrop-filter:blur(8px)}.footer{color:#f5f5f5;z-index:6;background-color:#0a0a0a;padding:80px 50px 100px;position:relative}.footer__container{align-items:flex-start;gap:60px;max-width:1600px;margin:0 auto;display:flex}.footer__info{flex-direction:column;gap:8px;display:flex}.footer__info-label{letter-spacing:.1em;text-transform:uppercase;color:#666;font-size:11px;font-weight:600}.footer__info-value{color:#d0d0d0;font-family:monospace;font-size:15px}.footer__availability{align-items:center;gap:10px;display:flex}.footer__status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.footer__status-dot.open{background-color:#22c55e;animation:2s ease-in-out infinite pulse-green;box-shadow:0 0 10px #22c55e80}.footer__status-dot.closed{background-color:#ef4444;box-shadow:0 0 6px #ef44444d}@keyframes pulse-green{0%,to{box-shadow:0 0 10px #22c55e80}50%{box-shadow:0 0 20px #22c55ecc}}.footer__status-text{color:#d0d0d0;font-size:15px}.footer__status-text span{color:#888;font-size:13px}.footer__closed-message{color:#d0d0d0;margin:0;font-size:14px}.footer__closed-message i{color:#888;margin-right:8px;font-size:13px}.footer__message{animation:.5s ease-out fadeIn}.scroll-top{color:#fff;cursor:pointer;opacity:0;pointer-events:none;z-index:1001;-webkit-backdrop-filter:blur(10px);background-color:#000000b3;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:24px;transition:transform .4s cubic-bezier(.33,1,.68,1),opacity .4s,background-color .3s;display:flex;position:fixed;bottom:40px;right:40px;transform:translateY(20px)}.scroll-top.visible{opacity:1;pointer-events:auto;transform:translate(0,0)}.scroll-top:hover{background-color:#000000d9;transform:translateY(-3px)}.scroll-top:active{transform:translate(0,0)}@media (max-width:768px){.footer{box-sizing:border-box;width:100%;max-width:100vw;padding:40px 20px 60px;overflow-x:hidden}.footer__container{flex-direction:column;gap:30px;width:100%;max-width:100%;overflow:hidden}.footer__info-value{word-break:break-word;font-size:13px}.footer__status-text{font-size:14px}.footer__status-text span{font-size:12px}.scroll-top{width:44px;height:44px;font-size:18px;bottom:20px;right:20px}}@media (prefers-reduced-motion:reduce){.scroll-top{transition:opacity .3s;transform:none}.scroll-top.visible{transform:none}}.hamburger{z-index:1000;cursor:pointer;opacity:0;pointer-events:none;will-change:transform,opacity;-webkit-backdrop-filter:blur(10px);background-color:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:56px;height:56px;padding:0;transition:transform .6s cubic-bezier(.33,1,.68,1),opacity .6s cubic-bezier(.33,1,.68,1),background-color .3s,border-color .3s;display:flex;position:fixed;top:30px;right:50px;transform:translateY(-20px)scale(.9)}.hamburger.visible{opacity:1;pointer-events:auto;transform:translate(0,0)scale(1)}.hamburger__line{background-color:#fff;border-radius:2px;width:24px;height:2px;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .2s,background-color .3s}.hamburger--dark{background-color:#00000014;border-color:#00000026}.hamburger--dark .hamburger__line{background-color:#000}.hamburger--dark:hover{background-color:#0000001f;border-color:#0003}.hamburger.open .hamburger__line:first-child{transform:translateY(8px)rotate(45deg)}.hamburger.open .hamburger__line:nth-child(2){opacity:0;transform:scale(.8)}.hamburger.open .hamburger__line:nth-child(3){transform:translateY(-8px)rotate(-45deg)}.hamburger:hover{background-color:#ffffff14;border-color:#ffffff26}.hamburger:active,.hamburger.visible:active{transform:translate(0,0)scale(.95)}@media (max-width:768px){.hamburger{width:48px;height:48px;top:20px;right:20px}.hamburger__line{width:20px}.hamburger.open .hamburger__line:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.open .hamburger__line:nth-child(3){transform:translateY(-7px)rotate(-45deg)}}@media (prefers-reduced-motion:reduce){.hamburger,.hamburger__line{transition:none}.hamburger{opacity:1;transform:none}}.menu-backdrop{-webkit-backdrop-filter:blur();z-index:998;opacity:0;pointer-events:none;background-color:#0006;width:100%;height:100%;transition:opacity .5s cubic-bezier(.33,1,.68,1),-webkit-backdrop-filter .5s cubic-bezier(.33,1,.68,1),backdrop-filter .5s cubic-bezier(.33,1,.68,1);position:fixed;top:0;left:0}.menu-backdrop.active{opacity:1;-webkit-backdrop-filter:blur(20px);pointer-events:auto}.menu{z-index:999;opacity:0;will-change:transform,opacity;background:linear-gradient(135deg,#141414fa 0%,#0a0a0afa 100%);flex-direction:column;justify-content:space-between;width:min(600px,90vw);height:100%;padding:120px 60px 80px;transition:transform .6s cubic-bezier(.33,1,.68,1),opacity .6s cubic-bezier(.33,1,.68,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-10px 0 50px #00000080}.menu.active{opacity:1;transform:translate(0,0)}.menu__nav{flex-direction:column;gap:8px;display:flex}.menu__link{color:#fff6;letter-spacing:-.02em;opacity:0;will-change:transform,opacity,color;padding:8px 0;font-size:clamp(48px,6vw,64px);font-weight:700;line-height:1.1;text-decoration:none;transition:transform .5s cubic-bezier(.33,1,.68,1),opacity .5s cubic-bezier(.33,1,.68,1),color .3s;display:block;position:relative;transform:translate(40px)}.menu.active .menu__link{opacity:1;transform:translate(0,0)}.menu__link:before{content:"";transform-origin:0;background-color:#fff;width:30px;height:2px;transition:transform .4s cubic-bezier(.33,1,.68,1);position:absolute;top:50%;left:-40px;transform:translateY(-50%)scaleX(0)}.menu__link:hover{color:#fff;transform:translate(0,0)}.menu__link:hover:before{transform:translateY(-50%)scaleX(1)}.menu__footer{opacity:0;flex-direction:column;gap:40px;transition:transform .6s cubic-bezier(.33,1,.68,1) .3s,opacity .6s cubic-bezier(.33,1,.68,1) .3s;display:flex;transform:translateY(20px)}.menu.active .menu__footer{opacity:1;transform:translate(0,0)}.menu__contact{flex-direction:column;gap:12px;display:flex}.menu__label{letter-spacing:.1em;color:#666;text-transform:uppercase;font-size:11px;font-weight:500}.menu__email{color:#999;font-family:monospace;font-size:15px;text-decoration:none;transition:color .3s}.menu__email:hover{color:#fff}.menu__social{flex-wrap:wrap;gap:24px;display:flex}.menu__social-link{color:#999;font-size:14px;text-decoration:none;transition:color .3s;position:relative}.menu__social-link:after{content:"";transform-origin:100%;background-color:#fff;width:100%;height:1px;transition:transform .3s cubic-bezier(.33,1,.68,1);position:absolute;bottom:-4px;left:0;transform:scaleX(0)}.menu__social-link:hover{color:#fff}.menu__social-link:hover:after{transform-origin:0;transform:scaleX(1)}@media (max-width:768px){.menu{width:100vw;padding:100px 32px 60px}.menu__link{font-size:40px}.menu__footer{gap:32px}}@media (max-width:480px){.menu__link{font-size:36px}.menu__social{gap:16px}}@media (prefers-reduced-motion:reduce){.menu-backdrop,.menu,.menu__link,.menu__footer{transition:none}.menu{transform:none}.menu__link{opacity:1;transform:none}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}#root{text-align:left;max-width:100%;margin:0;padding:0}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}
