:root,[data-theme=dark]{--bg:#191c1a;--text:#b0b0b0;--project:#b0b0b0;--project-text:#191c1a;--elevate:#202421;--line:hsla(0,0%,69%,.18)}[data-theme=light]{--bg:#e9e6df;--text:#23262a;--project:#191c1a;--project-text:#e9e6df;--elevate:#ddd9d0;--line:rgba(35,38,42,.16)}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-ms-overflow-style:none;box-sizing:border-box;margin:0;padding:0;scrollbar-width:none}::-webkit-scrollbar{display:none;height:0;width:0}body,html{background:#191c1a;background:var(--bg);font-family:Neue Montreal,sans-serif;height:100%;text-transform:uppercase;width:100%}.theme-transition,.theme-transition *{transition:background-color .4s ease,color .4s ease,border-color .4s ease!important}.bg{-webkit-animation:bg-animation .2s infinite;animation:bg-animation .2s infinite;background:transparent url(/static/media/noise.1690cd3defa001b4f87e.png) repeat 0 0;background-repeat:repeat;bottom:-50%;height:200vh;left:-50%;opacity:.15;pointer-events:none;position:fixed;right:-50%;top:-50%;visibility:visible;width:200%;z-index:2}@-webkit-keyframes bg-animation{0%{-webkit-transform:translate(0);transform:translate(0)}10%{-webkit-transform:translate(-5%,-5%);transform:translate(-5%,-5%)}20%{-webkit-transform:translate(-10%,5%);transform:translate(-10%,5%)}30%{-webkit-transform:translate(5%,-10%);transform:translate(5%,-10%)}40%{-webkit-transform:translate(-5%,15%);transform:translate(-5%,15%)}50%{-webkit-transform:translate(-10%,5%);transform:translate(-10%,5%)}60%{-webkit-transform:translate(15%);transform:translate(15%)}70%{-webkit-transform:translateY(10%);transform:translateY(10%)}80%{-webkit-transform:translate(-15%);transform:translate(-15%)}90%{-webkit-transform:translate(10%,5%);transform:translate(10%,5%)}to{-webkit-transform:translate(5%);transform:translate(5%)}}@keyframes bg-animation{0%{-webkit-transform:translate(0);transform:translate(0)}10%{-webkit-transform:translate(-5%,-5%);transform:translate(-5%,-5%)}20%{-webkit-transform:translate(-10%,5%);transform:translate(-10%,5%)}30%{-webkit-transform:translate(5%,-10%);transform:translate(5%,-10%)}40%{-webkit-transform:translate(-5%,15%);transform:translate(-5%,15%)}50%{-webkit-transform:translate(-10%,5%);transform:translate(-10%,5%)}60%{-webkit-transform:translate(15%);transform:translate(15%)}70%{-webkit-transform:translateY(10%);transform:translateY(10%)}80%{-webkit-transform:translate(-15%);transform:translate(-15%)}90%{-webkit-transform:translate(10%,5%);transform:translate(10%,5%)}to{-webkit-transform:translate(5%);transform:translate(5%)}}h1,h2,h3{font-weight:400}h1{font-size:6.5rem;letter-spacing:-5px}h1,h2{line-height:.85}h2{font-size:clamp(1.5rem,5.5vw,3.375rem);letter-spacing:-.04em}h3{font-size:.75rem}h3,p{font-weight:500}p{font-size:.9rem}a{font-size:.75rem;font-weight:500;text-decoration:none}.reveal-heading,a,h1,h2,h3,p{color:#b0b0b0;color:var(--text);position:relative}.reveal-heading{font-size:clamp(2.4rem,10.5vw,6.5rem);font-weight:400;letter-spacing:-.045em;line-height:.85}.reveal-heading .h1{position:relative}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;white-space:nowrap;width:1px}[lang=ar],[lang=ar] body{font-family:IBM Plex Sans Arabic,Neue Montreal,sans-serif}[lang=ar] .contact-email,[lang=ar] .reveal-heading,[lang=ar] h1,[lang=ar] h2{letter-spacing:normal}[lang=ar] .reveal-heading{line-height:1.05}[dir=rtl] .about-container,[dir=rtl] .projects-nav-container,[dir=rtl] .stack-container{margin-left:0;margin-right:auto}[dir=rtl] .page-hero-meta,[dir=rtl] .project-dir{text-align:left}[dir=rtl] .project-link .project-link-img{margin-left:1em;margin-right:0}[dir=rtl] .backButton{left:auto;right:0}[dir=rtl] .backButton .back p,[dir=rtl] .footer-nav .arrow p{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.nav{align-items:flex-start;display:flex;justify-content:space-between;left:0;padding:2em;pointer-events:none;position:fixed;top:0;width:100%;z-index:10}.nav a,.nav button,.nav p{color:inherit;pointer-events:auto}.nav-dark{color:var(--text)}.nav-light{color:var(--bg)}.nav-brand{position:relative;z-index:2}.nav-brand p{font-weight:500}.nav-right{align-items:flex-start;display:flex;gap:2rem}.nav-links{display:flex;gap:1.5rem}.nav-link{color:inherit;opacity:.6;transition:opacity .4s cubic-bezier(.075,.82,.165,1)}.nav-link-active,.nav-link:hover{opacity:1}.nav-controls{align-items:flex-start;display:flex;gap:1.25rem}.nav-langs{display:flex;gap:.6rem}.nav-lang{color:inherit;opacity:.4;transition:opacity .4s cubic-bezier(.075,.82,.165,1)}.nav-lang-active,.nav-lang:hover{opacity:1}.nav-theme{background:none;border:none;cursor:pointer;font-family:inherit;font-size:.95rem;line-height:1;margin:0;opacity:.6;padding:0;transition:opacity .4s cubic-bezier(.075,.82,.165,1)}.nav-theme:hover{opacity:1}.nav-burger{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:6px;height:22px;justify-content:center;padding:0;position:relative;width:30px;z-index:2}.nav-burger span{background:currentColor;display:block;height:2px;transition:opacity .3s ease,-webkit-transform .35s cubic-bezier(.83,0,.17,1);transition:transform .35s cubic-bezier(.83,0,.17,1),opacity .3s ease;transition:transform .35s cubic-bezier(.83,0,.17,1),opacity .3s ease,-webkit-transform .35s cubic-bezier(.83,0,.17,1);width:100%}@media (max-width:900px){.nav-burger{display:flex}.nav-open .nav-burger span:first-child{-webkit-transform:translateY(4px) rotate(45deg);transform:translateY(4px) rotate(45deg)}.nav-open .nav-burger span:nth-child(2){-webkit-transform:translateY(-4px) rotate(-45deg);transform:translateY(-4px) rotate(-45deg)}.nav-right{align-items:flex-start;background:var(--bg);flex-direction:column;gap:2.5rem;inset:0;justify-content:center;opacity:0;padding:2em;position:fixed;-webkit-transform:translateY(-12px);transform:translateY(-12px);transition:opacity .4s ease,visibility 0s linear .4s,-webkit-transform .4s cubic-bezier(.83,0,.17,1);transition:opacity .4s ease,transform .4s cubic-bezier(.83,0,.17,1),visibility 0s linear .4s;transition:opacity .4s ease,transform .4s cubic-bezier(.83,0,.17,1),visibility 0s linear .4s,-webkit-transform .4s cubic-bezier(.83,0,.17,1);visibility:hidden;z-index:1}.nav-right.is-open{opacity:1;-webkit-transform:none;transform:none;transition:opacity .4s ease,-webkit-transform .4s cubic-bezier(.83,0,.17,1);transition:opacity .4s ease,transform .4s cubic-bezier(.83,0,.17,1);transition:opacity .4s ease,transform .4s cubic-bezier(.83,0,.17,1),-webkit-transform .4s cubic-bezier(.83,0,.17,1);visibility:visible}.nav-links{flex-direction:column;gap:1.1rem}.nav-link{font-size:2.4rem;letter-spacing:-.03em;opacity:.85}.nav-controls{align-items:center;gap:1.75rem;margin-top:1.5rem}.nav-langs{gap:1.1rem}.nav-lang{font-size:1.05rem}.nav-theme{font-size:1.4rem}}.Home{background:var(--bg);height:100vh;left:0;overflow-x:hidden;overflow-y:scroll;padding:2em;position:fixed;top:0;width:100%}.hero{flex-direction:column;height:80vh;margin-top:5em}.hero,.hero .headers{display:flex;justify-content:space-between;width:100%}.h1-revealer,h1,h1 .h1{position:relative}.h1-revealer:after{background:var(--bg);content:"";display:block;height:7rem;left:0;position:absolute;top:0;width:120%;z-index:0}.hero .headers .header-2{margin-top:4rem}.hero-portrait{height:280px;margin-top:2.5rem;width:220px}@media (max-width:900px){.hero-portrait{height:230px;margin-top:1.5rem;width:180px}}.footer{opacity:.5;width:100%}.footer .divider{background:var(--text);height:.65px;margin:.75em 0;width:100%}.footer .footer-content{display:flex;justify-content:space-between;padding:.75em 0;width:100%}.footer .footer-content .footer-col:first-child{display:flex}.footer .footer-content .footer-col .arrow{align-items:center;background:var(--text);border-radius:100%;display:flex;height:1.5rem;justify-content:center;margin-right:.25rem;width:1.5rem}.footer .footer-content .footer-col .arrow p{color:var(--bg);opacity:1}@media (max-width:900px){.hero .headers{flex-direction:column;gap:3rem}.footer .footer-content{flex-wrap:wrap}.footer .footer-content .footer-col{margin:.5rem 0;width:50%}.footer .footer-content .footer-col:nth-child(2),.footer .footer-content .footer-col:nth-child(4){text-align:right}}section.about{margin:4rem 0;padding:10rem 0;width:100%}.about-container{display:flex;gap:10rem;margin-left:auto;width:75%}.about-col:first-child{flex:3 1}.about-col:nth-child(2){flex:2 1}.about-col p:first-child{opacity:.5}.socials{display:flex;flex-direction:column}.projects-nav{margin:8rem 0 2em;width:100%}.projects-nav-container{margin-left:auto;width:75%}.projects-nav-label{margin-bottom:1.5rem;opacity:.5}.projects-nav-all{border-top:2px solid var(--text);display:flex;justify-content:flex-end;padding:1em 0}@media (max-width:900px){.about-container{flex-direction:column;gap:4em;width:100%}.projects-nav-container{width:100%}}.project-link{border-top:2px solid var(--text);display:flex;height:110px;justify-content:space-between;padding:1em 0;width:100%}.project-l{display:flex;flex:4 1}.project-date{flex:2 1}.project-dir{flex:0.5 1;text-align:right}.project-link .project-link-img{height:100%;margin-right:1em;overflow:hidden;transition:all 1s cubic-bezier(.075,.82,.165,1);width:0}.project-link:hover .project-link-img{width:120px}.project-link img,.project-link:hover .project-link-img{height:100%;transition:all 1s cubic-bezier(.075,.82,.165,1)}.project-link img{object-fit:cover;width:100%}@media (max-width:900px){.project-l{width:300px}.project-date{display:none}}.portrait{-webkit-clip-path:polygon(0 0,0 0,0 100%,0 100%);clip-path:polygon(0 0,0 0,0 100%,0 100%);overflow:hidden}.portrait img{display:block;height:100%;object-fit:cover;width:100%}.stack{margin:8rem 0 2rem;width:100%}.stack-container{margin-left:auto;width:75%}.stack-label{margin-bottom:2.5rem;opacity:.5}.stack-group{margin-bottom:3.5rem}.stack-group-label{border-top:2px solid var(--text);margin-bottom:1.25rem;opacity:.5;padding-top:1rem}.stack-grid{grid-gap:1px;background:var(--line);border:1px solid var(--line);display:grid;gap:1px;grid-template-columns:repeat(4,1fr)}.stack-item{align-items:center;background:var(--bg);display:flex;flex-direction:column;gap:.9rem;justify-content:center;padding:1.8rem .75rem;transition:background .4s cubic-bezier(.075,.82,.165,1)}.stack-item:hover{background:var(--elevate)}.stack-item-empty{pointer-events:none}.stack-mark{align-items:center;display:flex;height:40px;justify-content:center}.stack-icon{background-color:var(--text);display:block;height:34px;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;opacity:.75;transition:opacity .4s cubic-bezier(.075,.82,.165,1),-webkit-transform .4s cubic-bezier(.075,.82,.165,1);transition:opacity .4s cubic-bezier(.075,.82,.165,1),transform .4s cubic-bezier(.075,.82,.165,1);transition:opacity .4s cubic-bezier(.075,.82,.165,1),transform .4s cubic-bezier(.075,.82,.165,1),-webkit-transform .4s cubic-bezier(.075,.82,.165,1);width:34px}.stack-initials{color:var(--text);font-size:1.6rem;font-weight:500;letter-spacing:-1px;opacity:.75;transition:opacity .4s cubic-bezier(.075,.82,.165,1)}.stack-item:hover .stack-icon{background-color:var(--text);background-color:var(--brand,var(--text));opacity:1;-webkit-transform:scale(1.08);transform:scale(1.08)}.stack-item:hover .stack-initials{color:var(--text);color:var(--brand,var(--text));opacity:1}.stack-item p{opacity:.7;text-align:center}.stack-note{margin-top:1.25rem;opacity:.5}@media (max-width:900px){.stack-container{width:100%}.stack-grid{grid-template-columns:repeat(2,1fr)}}.page-hero{align-items:flex-end;display:flex;justify-content:space-between;margin-top:8em;width:100%}.page-hero-meta{text-align:right}.page-hero-meta p:first-child{opacity:.5}.projects-nav-full{margin-top:6rem}.projects-nav-full .projects-nav-container{width:100%}@media (max-width:900px){.page-hero{align-items:flex-start;flex-direction:column;gap:2rem}.page-hero-meta{text-align:left}}.project-container{background:var(--bg);display:flex;flex-direction:column;gap:3em;height:100vh;justify-content:space-between;padding:5.5em 2em 2em;width:100vw}.project-info{align-items:flex-end;display:flex;flex-direction:row-reverse;gap:4em;height:100%;min-height:0;width:100%}.project-info .project-preview{flex:5 1;height:100%;min-height:0}.project-info .project-description{flex:2 1}.project-description p+p{margin-top:1rem}.project-link-out{margin-top:1.5rem}.project-link-out a{border-bottom:1px solid var(--text);padding-bottom:2px}.project-container .footer{opacity:1}.footer-nav a{display:inline-flex}.footer-nav .arrow{cursor:pointer;transition:opacity .4s cubic-bezier(.075,.82,.165,1),-webkit-transform .4s cubic-bezier(.075,.82,.165,1);transition:transform .4s cubic-bezier(.075,.82,.165,1),opacity .4s cubic-bezier(.075,.82,.165,1);transition:transform .4s cubic-bezier(.075,.82,.165,1),opacity .4s cubic-bezier(.075,.82,.165,1),-webkit-transform .4s cubic-bezier(.075,.82,.165,1)}.footer-nav a:hover .arrow{opacity:.8;-webkit-transform:scale(1.12);transform:scale(1.12)}.backButton{align-items:center;background:var(--text);border-radius:100%;display:flex;height:24px;justify-content:center;margin:2em;position:fixed;width:24px}.backButton .back p{color:var(--bg)}@media (max-width:900px){.project-container{gap:2em;height:auto;min-height:100vh;padding-top:7.5em}.project-info{flex-direction:column;gap:2em;height:auto}.project-info .project-preview{flex:none;height:65vh;width:100%}.project-description{flex:1 1}}.site-preview{-webkit-animation:preview-reveal 1.4s cubic-bezier(.83,0,.17,1) both;animation:preview-reveal 1.4s cubic-bezier(.83,0,.17,1) both;background:#fff;border:1px solid var(--line);color:#1a1a1a;display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}@-webkit-keyframes preview-reveal{0%{-webkit-clip-path:polygon(0 0,0 0,0 100%,0 100%);clip-path:polygon(0 0,0 0,0 100%,0 100%)}to{-webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}}@keyframes preview-reveal{0%{-webkit-clip-path:polygon(0 0,0 0,0 100%,0 100%);clip-path:polygon(0 0,0 0,0 100%,0 100%)}to{-webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}}.site-preview-bar{align-items:center;border-bottom:1px solid #e6e6e6;display:flex;flex:none;gap:1rem;padding:.6rem .85rem}.site-preview-dots{display:flex;flex:none;gap:.4rem}.site-preview-dots span{border:1px solid #c2c2c2;border-radius:50%;height:11px;width:11px}.site-preview-url{flex:1 1;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.site-preview-url p{opacity:.55;text-transform:lowercase}.site-preview-open{flex:none}.site-preview-window{background:#fff;flex:1 1;min-height:0;overflow:hidden;position:relative}.site-preview-frame{background:#fff;border:0;display:block;height:100%;width:100%}.site-preview-poster{background-color:#fff;background-position:top;background-repeat:no-repeat;background-size:100% auto;inset:0;pointer-events:none;position:absolute}.site-preview-poster.is-blocked{align-items:center;display:flex;justify-content:center}.site-preview-poster.is-blocked:before{background:rgba(25,28,26,.55);content:"";inset:0;position:absolute}.site-preview-fallback{background:#191c1a;border:1px solid #fff;color:#fff;padding:.6rem 1rem;pointer-events:auto;position:relative}.about-page{margin:6rem 0 4rem;padding:6rem 0}.about-page .about-container{align-items:stretch;gap:5rem;width:100%}.about-portrait{flex:2 1;min-height:460px}.about-page .about-bio{flex:3 1}.about-page .about-col:nth-child(3){flex:2 1}.about-bio p+p{margin-top:1.5rem}.about-block{margin-bottom:3rem}.about-block p:first-child{margin-bottom:1rem;opacity:.5}.about-list{display:flex;flex-direction:column;gap:.35rem}.journey{margin-top:6rem;width:100%}.journey-item{border-top:2px solid var(--text);display:flex;gap:5rem;padding:2.5rem 0}.journey-label{flex:2 1}.journey-label p{opacity:.5}.journey-body{flex:5 1}.journey-body p{line-height:1.4}@media (max-width:900px){.journey{margin-top:4rem}.journey-item{flex-direction:column;gap:1rem;padding:2rem 0}.about-portrait{flex:none;height:320px;min-height:0;width:100%}}.contact{margin:6rem 0 4rem;padding:4rem 0}.contact-email{border-bottom:2px solid var(--text);display:inline-block;font-size:clamp(1.3rem,5.5vw,3.375rem);letter-spacing:-.03em;line-height:.9;max-width:100%;overflow-wrap:anywhere;padding-bottom:.5rem;text-transform:lowercase;transition:opacity .4s cubic-bezier(.075,.82,.165,1)}.contact-email:hover{opacity:.6}.contact-grid{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;margin-top:6rem}.contact-block{flex:1 1;min-width:200px}.contact-block>p:first-child{margin-bottom:1rem;opacity:.5}.contact-list{display:flex;flex-direction:column;gap:.35rem}@media (max-width:900px){.contact-grid{flex-direction:column;gap:2.5rem}}
/*# sourceMappingURL=main.7a7c7abc.css.map*/