.section{opacity:0;transform:translateY(20px);transition:opacity .5s ease-in-out,transform .5s ease-in-out;margin:2vh 1vw}.about-section{margin-top:4rem;max-width:800px}.contact-section ul{list-style:none;padding:0}.keen-slider img,.keen-slider video{display:block;width:100%;height:100%;object-fit:cover}.keen-slider{display:flex;width:100px;flex-direction:row;overflow:hidden;height:calc(100vh - 1.5vh);position:relative}.keen-slider__slide{cursor:pointer;display:flex;justify-content:center;align-items:center;max-width:300px;height:100vh;flex-shrink:0;scroll-snap-align:center;box-sizing:border-box}.gallery-description{padding-top:100px;margin:1.5vh 1vw 20vh;max-width:100vw}.gallery-description a,.gallery-description p{font-size:4vw;line-height:1.2;background:none}.navigation-bar{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:1.5vh 1vw;background:var(--background);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--color);z-index:1000}button{background:none;border:none;font-size:var(--font-size);cursor:pointer;color:var(--color);padding:0;margin:0;line-height:1;vertical-align:middle;transition:opacity .25s ease-in-out}button.active,button:hover{opacity:var(--opacity)}.title-project{gap:1vw}.nav-links,.title-project{display:flex;align-items:center}.nav-links{gap:5px}.nav-links li{list-style:none}.current-project{text-align:left;transition:opacity .2s ease-in-out;line-height:1;vertical-align:middle;display:flex;align-items:center}.fade-out{opacity:0}.fade-in{opacity:var(--opacity)}.main-media-display{height:auto}.media-item{width:auto!important;margin-right:0!important}.title-description-container{max-width:800px!important}.thumbnail-container{display:none!important}.sort-buttons{padding:1.5vh 0;border-bottom:1px solid #ddd;margin:0 1vw}.hover-preview{transition:transform .1s ease,opacity .1s ease;opacity:.9;transform:translate(-50%,-50%)}.project-list{list-style-type:none;padding:0;margin:0 1vw}.project-item{cursor:pointer;border-bottom:1px solid #ddd;padding:1.5vh 0;margin:0;display:flex;justify-content:space-between;align-items:center}.project-item .view{margin-left:auto;opacity:1;transition:opacity .2s ease}.project-item:hover .view{opacity:var(--opacity)}.project-item h3{margin:0}.project-item:first-child{border-top:none}.project-item:last-child{border-bottom:none}.project-item-container{margin:45px 1vw}.title-description-container{width:100%;max-width:500px}.details-left{display:flex;flex-direction:column}.description-right,.project-title{text-align:left}.project-description{margin:0;text-align:left;max-width:100%}.main-media-display{display:flex;justify-content:space-between;width:100%;overflow:hidden;margin-bottom:20px}.side-by-side-media{display:flex;transition:transform .5s ease-in-out;width:calc(100% * 2)}.media-item{flex-shrink:0;width:50%}.media-content{width:100%;height:auto;object-fit:cover}.thumbnail-container{display:flex;justify-content:left;width:100%;margin:20px 0;overflow-x:auto;white-space:nowrap}.thumbnail-wrapper{display:flex}.thumbnail{display:inline-block;border:2px solid transparent;margin-right:10px;cursor:pointer;transition:border-color .3s ease}.thumbnail.active{border-color:var(--color)}.back-to-gallery-button{text-align:left;margin:10px 0 20px}*{margin:0;padding:0;box-sizing:border-box;list-style-type:none;font-family:Inter Variable,sans-serif;letter-spacing:0;font-weight:400}:root{--font-size:1.2rem;--background-color:snow;--color:#0c0c0c;--background:snow;--opacity:0.4}@media (prefers-color-scheme:dark){:root{--background-color:#0c0c0c;--color:snow;--background:#0c0c0c}}a,body,h1,h2,h3,p{font-size:var(--font-size);line-height:1.1;background-color:var(--background-color);color:var(--color);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;text-size-adjust:none}a{text-decoration:none;transition:opacity .4s ease-out,transform .4s ease-out}a:hover{opacity:.4}.container{padding-top:5vh;width:100%;margin:0 auto}@keyframes fadeInSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOutSlideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.content{opacity:0;transform:translateY(20px);visibility:hidden;transition:opacity .6s ease-out,transform .6s ease-out}.content.visible{opacity:1;transform:translateY(0);visibility:visible;animation:fadeInSlideUp .6s ease-out forwards}.content.hidden{opacity:0;transform:translateY(20px);visibility:hidden;animation:fadeOutSlideDown .6s ease-in forwards}