*{margin:0;padding:0;box-sizing:border-box}body{font-family:Zalando Sans Expanded,Tahoma,Verdana,sans-serif;overflow-x:hidden}h1{font-size:4rem;font-weight:500;line-height:1}h2{font-size:2rem;font-weight:500;line-height:1.125;letter-spacing:-.03rem}p{font-size:1rem;font-weight:500;line-height:1.5}.nav{z-index:120;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed;inset:0% 0% auto;transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .45s cubic-bezier(.22,1,.36,1);will-change:transform,opacity}.nav.nav-hidden{transform:translateY(-120%);opacity:0}.nav-inner{z-index:50;padding:.5rem 1rem;align-items:center;width:100%;display:grid;grid-template-columns:1fr auto 1fr;position:relative;inset:0% 0% auto;pointer-events:auto}.nav-left,.nav-center,.nav-right{display:flex;align-items:center;gap:1rem}.nav-left{justify-self:start}.nav-center{justify-self:center}.nav-right{justify-self:end}.nav-logo-img{min-height:3rem;height:auto;display:block}.nav-toggle{width:3rem;height:3rem;border:none;background-color:#c4d9a5;background-image:linear-gradient(90deg,#84ba88,#b2a5d9);background-size:200% 100%;background-position:0% 50%;border-radius:.5rem;display:grid;place-items:center;gap:6px;cursor:pointer;position:relative;overflow:visible;transition:transform .2s ease,background-color .2s ease}.nav-toggle:hover{transform:scale(1.05)}.nav-toggle:active{transform:scale(.9)}.nav-toggle>i,.nav-toggle>img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.9);line-height:1;opacity:0;transition:transform .4s ease,opacity .4s ease}.nav-toggle>i{color:#111;font-size:1.5rem}.nav-toggle>img.inactive{width:1.6rem;height:1.6rem;opacity:1}.nav-toggle:hover>.inactive{opacity:1;transform:translate(-50%,-50%) scale(1.4)}body.nav-open .nav-toggle>.open{opacity:0}body.nav-open .nav-toggle>.inactive{opacity:0;transform:translate(-50%,-50%) scale(.5)}body.nav-open .nav-toggle>.close{opacity:1;transform:translate(-50%,-50%) scale(1)}.nav-menu{position:fixed;inset:0;background:#1f241c;color:#e8f06a;z-index:110;opacity:0;pointer-events:none;transform:translateY(-10%)}.nav-link-group{display:flex;align-items:center;gap:1rem}.nav-item{display:flex;flex-direction:column;gap:0}.nav-subtoggle{width:2.75rem;height:2.75rem;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:inherit;display:grid;place-items:center;cursor:pointer;opacity:0;transform:translateY(20px);transition:transform .2s ease,background-color .2s ease,border-color .2s ease}.nav-subtoggle:hover{transform:scale(1.05);background:#ffffff29;border-color:#fff6}.nav-subtoggle-icon{display:inline-block;font-size:1.4rem;line-height:1;transition:transform .2s ease}.nav-subtoggle[aria-expanded=true] .nav-subtoggle-icon{transform:rotate(45deg)}.nav-submenu{margin-left:.75rem;margin-top:0;display:grid;grid-template-columns:repeat(4,minmax(180px,240px));gap:.75rem 1.5rem;max-height:0;opacity:0;transform:translateY(-6px);overflow:hidden;transition:max-height .3s ease,opacity .3s ease,transform .3s ease;justify-items:center}.nav-submenu.is-open{margin-top:.75rem;max-height:240px;opacity:1;transform:translateY(0)}.nav-sublink{font-size:1.5vw;font-family:Zalando Sans Expanded,Tahoma,Verdana,sans-serif;letter-spacing:.02em;color:inherit;text-decoration:none;opacity:.85}.nav-menu-inner{height:100%;display:flex;flex-direction:column;justify-content:center;gap:1rem;padding:8vh 8vw}.nav-menu .nav-link{font-size:3.5vw;font-family:limelight;letter-spacing:.02em;color:inherit;text-decoration:none;opacity:0;transform:translateY(20px)}body.nav-open .nav-menu{pointer-events:auto}section{position:relative;width:100vw;height:100vh;background-color:#1c2227;color:#000;overflow:hidden}.gallery-section{background-color:#c4d9a5;height:100vh;margin:0;overflow:hidden}#gallery{height:140vmax;width:140vmax;position:absolute}.tile{border-radius:1vmax;position:absolute;transition:transform .8s ease}.tile:hover{transform:scale(1.1)}.tile:hover>img{opacity:1;transform:scale(1.01)}.tile>img{height:100%;width:100%;object-fit:cover;border-radius:inherit;opacity:0;transition:opacity .8s ease,transform .8s ease}.tile:nth-child(1){background-color:#ffee58;height:14%;width:20%;left:5%;top:5%}.tile:nth-child(2){background-color:#42a5f5;height:24%;width:14%;left:32%;top:12%}.tile:nth-child(3){background-color:#ef5350;height:18%;width:16%;left:12%;top:24%}.tile:nth-child(4){background-color:#66bb6a;height:14%;width:12%;left:40%;top:38%}.tile:nth-child(5){background-color:#ab47bc;height:16%;width:32%;left:2%;top:47%}.tile:nth-child(6){background-color:#ffa726;height:24%;width:24%;left:58%;top:8%}.tile:nth-child(7){background-color:#3f51b5;height:16%;width:20%;left:38%;top:64%}.tile:nth-child(8){background-color:#8d6e63;height:24%;width:18%;left:62%;top:42%}.tile:nth-child(9){background-color:#459c1d;height:10%;width:8%;left:24%;top:68%}.tile:nth-child(10){background-color:#b53f98;height:10%;width:20%;left:43%;top:88%}.tile:nth-child(11){background-color:#3f86b5;height:17%;width:28%;left:64%;top:69%}.tile:nth-child(12){background-color:#b5a33f;height:20%;width:15%;left:4%;top:69%}.tile:nth-child(13){background-color:#3fb5a5;height:20%;width:12%;left:21%;top:80%}.tile:nth-child(14){background-color:#8cb53f;height:10%;width:8%;left:14%;top:74%}.projects{position:relative}.outro{position:relative;width:100vw;min-height:25vh;background:#84ba88;color:#f0f0f0}.footer-inner{max-width:1200px;margin:0 auto;padding:4rem 2rem 2rem;display:flex;flex-direction:column;gap:5rem}.footer-columns{display:grid;grid-template-columns:repeat(4,minmax(180px,240px));gap:6rem}.footer-col{display:flex;flex-direction:column;gap:1rem}.footer-eyebrow{font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:#ffffff73}.footer-link{font-size:1rem;color:#f0f0f0;text-decoration:none;display:inline-flex;gap:.35rem;align-items:center;transition:color .2s ease,transform .2s ease}.footer-link:hover{color:#fff;transform:translate(2px)}.footer-meta{display:flex;flex-direction:column;gap:.5rem;color:#ffffffa6}.footer-copy{font-size:.8rem;color:#ffffffe6}.footer-note{font-size:.76rem}@media(max-width:900px){.footer-inner{padding:5rem 2rem 3rem;gap:3rem}.footer-columns{grid-template-columns:1fr;gap:2.5rem}}.model-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:100vw;height:100vh;z-index:10;transform-origin:50% 50%;pointer-events:none;-webkit-user-select:none;user-select:none}.header-1{position:relative;padding-left:calc(var(--header-spacer-width) + 10vw);width:400vw;height:100svh;transform:translate(0);align-items:flex-start;padding-top:var(--header-pad-top);background-color:#1c2227;padding-bottom:5vh;display:flex}.project-1{position:relative;width:400vw;height:100svh;transform:translate(0);align-items:flex-start;padding-top:var(--header-pad-top);padding-bottom:5vh}.header-2{position:fixed;top:0;left:0;width:250vw;height:100svh;color:#f0f8ff;transform:translate(100%);align-items:flex-start;padding-top:var(--header-pad-top);padding-bottom:5vh;z-index:2}.project-2{position:fixed;top:0;left:0;width:200vw;height:100svh;background-color:#c4d9a5;color:inherit;transform:translate(100%);align-items:flex-start;padding-top:var(--header-pad-top);padding-bottom:5vh;z-index:2}.header-2,.project-1,.project-2{display:flex;padding-left:2rem}.horizontal-grid-row,.horizontal-grid-row-2{position:relative;display:grid;height:auto;flex:none;justify-content:flex-start;align-items:flex-start;width:auto;max-width:25rem;row-gap:var(--gap);grid-auto-rows:max-content;align-content:start}.image-link{transition:transform .2s ease;will-change:transform}.image-link:hover{transform:scale(1.1)}.horizontal-grid-row{margin-top:calc(var(--vh, 1vh) * 4.42);margin-bottom:auto}.horizontal-grid-row-2{margin-top:auto;margin-bottom:calc(var(--vh, 1vh) * 4.42)}.grid-image{display:flex;width:var(--grid-width);height:var(--grid-height);overflow:hidden;transform:translateZ(0);backface-visibility:hidden;will-change:transform}.grid-text{display:flex;width:var(--grid-width)}.horizontal-grid-row[data-position="1"],.horizontal-grid-row-2[data-position="1"]{--grid-width: calc(var(--vh, 1vh) * 24);--grid-height: calc(var(--vh, 1vh) * 30)}.horizontal-grid-row-2[data-position="1"]{left:calc(var(--vh, 1vh) * 10);--grid-width: calc(var(--vh, 1vh) * 40);--grid-height: calc(var(--vh, 1vh) * 30)}.horizontal-grid-row-2[data-position="1"]>.grid-image img{object-position:60%;transform:scale(1)}.horizontal-grid-row-2[data-position="3"]{left:calc(var(--vh, 1vh) * 26);--grid-width: calc(var(--vh, 1vh) * 25);--grid-height: calc(var(--vh, 1vh) * 35)}.horizontal-grid-row-2[data-position="6"]{right:calc(var(--vh, 1vh) * 5)}.horizontal-grid-row-2[data-position="2"]{margin-bottom:calc(var(--vh, 1vh) * 2);left:calc(var(--vh, 1vh) * 10);--grid-width: calc(var(--vh, 1vh) * 60);--grid-height: calc(var(--vh, 1vh) * 40)}.horizontal-grid-row-2[data-position="2"]>.grid-image img{object-position:5%;transform:scale(1)}.horizontal-grid-row[data-position="6"]{--grid-width: calc(var(--vh, 1vh) * 24);--grid-height: calc(var(--vh, 1vh) * 30)}.horizontal-grid-row[data-position="1"]>.grid-image{--grid-width: calc(var(--vh, 1vh) * 40);--grid-height: calc(var(--vh, 1vh) * 30)}.horizontal-grid-row-2[data-position="6"]>.grid-image{width:calc(var(--vh, 1vh) * 60);height:calc(var(--vh, 1vh) * 30)}.horizontal-grid-row[data-position="6"]>.grid-image img{object-position:34%;transform:scale(1.1)}.horizontal-grid-row-2[data-position="7"]>.grid-image{width:calc(var(--vh, 1vh) * 30);height:calc(var(--vh, 1vh) * 40)}.horizontal-grid-row[data-position="10"],.horizontal-grid-row-2[data-position="10"]{margin-top:auto;margin-bottom:auto}.horizontal-grid-row-2[data-position="6"]>.grid-image img{object-position:50%;transform:scale(1.1)}.horizontal-grid-row-2[data-position="4"] h2{font-size:1.25rem}.horizontal-grid-row[data-position="5"] h2{font-size:1.5rem}.horizontal-grid-row-2[data-position="7"]{left:calc(var(--vh, 1vh) * 12)}.horizontal-grid-row p,.horizontal-grid-row-2 p{font-size:.8rem;line-height:1.4;font-family:Courier New,Courier,monospace}.grid-image img{width:100%;height:100%;object-fit:cover;transform:translateZ(0);backface-visibility:hidden;will-change:transform;border-radius:.5rem}.horizontal-grid-spacer{height:100%;width:var(--header-spacer-width);flex:none}.horizontal-grid-column{display:flex;flex-direction:column;height:100%;width:auto;min-width:var(--grid-width);position:relative;z-index:1}.header-1 h1:not(.background-h1),.header-2 h1,.project-1 h1:not(.background-h1),.project-2 h1:not(.background-h1){font-size:1.15rem;line-height:1.25;letter-spacing:-.02em}.header-1 h1,.header-1 h2,.header-1 p{color:#fff}.header-2 h2{font-size:1.2rem}.header-2 p{color:#3a3059}.background-h1{position:absolute;top:50%;transform:translateY(-50%);width:100%;font-size:15vw;line-height:1.25;pointer-events:none;z-index:0}.projects-page .background-h1{left:calc(var(--header-spacer-width));width:calc(350vw - var(--header-spacer-width))}.header-1>.background-h1{left:calc(var(--header-spacer-width) + var(--header-spacer-pad) + 30vw);color:#cea5d9}.header-1>.horizontal-grid-column p{color:#f0f0f0}.header-2>.background-h1{position:absolute;top:50%;left:calc(var(--header-spacer-width));transform:translateY(-50%);width:calc(250vw - var(--header-spacer-width) - var(--header-spacer-pad));font-size:15vw;color:#c4d9a5}.header-2>.horizontal-grid-spacer{--header-spacer-width: 20vw}.header-2>.horizontal-grid-column>.horizontal-grid-row>.grid-image,.header-2>.horizontal-grid-column>.horizontal-grid-row-2>.grid-image,.imageContainer img{border-radius:1rem}.circular-mask{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#84ba88;clip-path:circle(0% at 50% 50%)}.rectangular-mask{position:absolute;top:0;left:0;width:100%;height:100%;--mx: 50%;--my: 50%;background:linear-gradient(100deg,#a89018,#cea5d9);background-size:200% 200%;animation:gradientShift 12s ease-in-out infinite;clip-path:inset(0% 0% 0% 0%);z-index:20;overflow:hidden}.rect-intro{position:relative;width:100%;height:100%;transform-origin:50% 50%;display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;padding:4rem 3rem 2rem;align-items:center;z-index:1;overflow:hidden}.introContainer{padding:1.5rem;display:flex;flex-direction:column;gap:2rem;background:#ffffff05;border-radius:1rem}.introTitle{padding:1rem 1.25rem;font-family:Bokor,system-ui;font-size:4rem;color:#000}.introParagraph{padding:1rem 2rem 1rem 1rem;position:relative;left:calc(var(--vh, 1vh) * 4);min-height:220px;color:#000;display:flex;align-items:flex-start}.imageContainer{padding:1.5rem;height:100%;display:flex;align-items:stretch;min-height:0;aspect-ratio:3 / 4}.rectMaskImage{width:100%;height:100%;object-fit:cover;display:block}@media(max-width:1000px){.rect-intro{grid-template-columns:1fr;gap:2rem;padding:2rem}.imageContainer{min-height:240px}}.rectangular-mask:before{content:"";position:absolute;inset:-10%;background-repeat:no-repeat;filter:blur(18px);opacity:.85;mix-blend-mode:screen;animation:blobFloat 14s ease-in-out infinite;background-image:radial-gradient(520px circle at var(--mx) var(--my),rgba(66,218,107,.75),transparent 62%),radial-gradient(600px circle at 20% 80%,rgba(125,30,106,.7),transparent 65%);animation-duration:16s}@keyframes blobFloat{0%{transform:translate3d(-4%,-2%,0) scale(1)}35%{transform:translate3d(3%,-3%,0) scale(1.05)}70%{transform:translate3d(5%,4%,0) scale(1.08)}to{transform:translate3d(-2%,3%,0) scale(1.03)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.tooltips{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:85%;height:75%;display:flex;gap:20rem;pointer-events:none;-webkit-user-select:none;user-select:none}.tooltip{flex:1;display:flex;flex-direction:column;gap:.5rem;color:#fff;pointer-events:none;-webkit-user-select:none;user-select:none}.tooltips .tooltip:nth-child(2){justify-content:flex-end;align-items:flex-end;text-align:right}.tooltip .divider{position:relative;width:100%;height:1px;background-color:#fff;margin:.5rem 0;transform:scaleX(0)}.tooltips .tooltip:nth-child(1) .divider{transform-origin:right center}.tooltips .tooltip:nth-child(2) .divider{transform-origin:left center}.tooltip .icon{font-size:2.5rem;overflow:hidden}.tooltip .description p{font-size:.9rem;color:#f0f0f0}.char,.header-1 h1 .char,.tooltip .title .line,.tooltip .description .line{display:inline-block;overflow:hidden}.char>span,.header-1 h1 .char>span,.tooltip .icon ion-icon,.tooltip .title .line>span,.tooltip .description .line>span{position:relative;display:block;transform:translateY(100%);will-change:transform}@media(max-width:1000px){.header-2{position:relative;top:auto;left:0;width:100vw;height:auto;transform:none!important}.header-2>.background-h1{left:0;width:100%}h1{text-align:center;font-size:2rem}h2,.tooltip .icon,.tooltips{width:100%;align-items:center;flex-direction:column;gap:2rem}.tooltip{width:85%}.tooltips .tooltip:nth-child(2){justify-content:flex-start;align-items:flex-start}.tooltip .divider{width:70%}.tooltips .tooltip:nth-child(2) .divider{transform-origin:right center}.tooltips .tooltip:nth-child(2) .icon,.tooltips .tooltip:nth-child(2) .title{width:100%}}.header-1 .horizontal-grid-spacer:first-child{padding-left:var(--header-spacer-pad)}.project-1 .horizontal-grid-spacer:first-child{padding-left:calc(var(--header-spacer-width) - 15vw)}:root{--header-spacer-width: 30vw;--header-spacer-pad: 100vw;--header-pad-top: 5vh;--header-pad-left: 2rem;--vh: 1vh;--gap: .5rem;--grid-width: calc(var(--vh, 1vh) * 50);--grid-height: calc(var(--vh, 1vh) * 30)}
