:root{--cloud-dancer: #F0EFEA;--hematite: #4A4543;--blue-fusion: #4A6C82;--veiled-vista: #B5D6B2;--golden-mist: #D4D181;--quiet-violet: #A68EB1;--baltic-sea: #5C94B7;--font-display: "TT Supermolot Neue", "Oswald", sans-serif;--font-body: "Hanken Grotesk", sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--cloud-dancer);color:var(--hematite);font-family:var(--font-body);overflow-x:hidden;line-height:1.6}body.no-scroll{overflow:hidden}.site-branding{position:absolute;top:9vh;right:5vw;font-family:var(--font-display);text-transform:uppercase;font-size:clamp(2rem,4vw,2.5rem);letter-spacing:2px;color:var(--hematite);font-weight:700;z-index:50}h1,h2,h3{font-family:var(--font-display);text-transform:uppercase;letter-spacing:2px;line-height:1.1}.hero-title{font-size:clamp(4rem,10vw,12rem);padding:10vh 5vw 0;color:var(--hematite);position:relative;z-index:1}.hero-title span{color:var(--blue-fusion)}.about-section{padding:0 5vw 10vh;max-width:1600px;margin:0 auto;position:relative}.about-intro{font-size:clamp(1.25rem,2vw,1.75rem);max-width:650px;margin-left:auto;margin-right:0;margin-top:-6vh;margin-bottom:4rem;line-height:1.4;position:relative;z-index:10}@media(max-width:1280px){.about-intro{margin-top:4rem}}.process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:3rem;border-top:2px solid var(--hematite);padding-top:3rem}.process-step h3{font-size:2rem;margin-bottom:1rem;color:var(--baltic-sea)}.process-step p{font-size:1rem;max-width:400px}.gallery-header{display:flex;justify-content:space-between;align-items:flex-end;padding:0 5vw;max-width:1600px;margin:0 auto 1rem}.project-gallery-title{font-size:4rem}@media(max-width:767px){.gallery-header{flex-direction:column;align-items:flex-start;gap:1rem}.project-gallery-title{font-size:3rem}}.gallery-controls button{background:none;border:none;font-family:var(--font-display);font-size:2.5rem;cursor:pointer;color:var(--hematite);transition:color .2s;padding:0 .5rem}.gallery-controls button:hover{color:var(--baltic-sea)}.project-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:4rem;padding:1rem 0 6rem;padding-inline:29vw;scrollbar-width:none;-ms-overflow-style:none}@media(max-width:768px){.project-track{padding-inline:7.5vw}}.project-track::-webkit-scrollbar{display:none}.project-card{position:relative;cursor:pointer;display:block;text-decoration:none;color:inherit;flex:0 0 85vw;scroll-snap-align:center}@media(min-width:768px){.project-card{flex:0 0 42vw}}.card-inner{position:relative;z-index:2;background:var(--cloud-dancer);border:2px solid var(--hematite);padding:1rem;transition:transform .4s cubic-bezier(.25,1,.5,1);height:100%;display:flex;flex-direction:column}.project-card:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border:2px solid var(--hematite);z-index:1;transition:transform .5s cubic-bezier(.25,1,.5,1)}.project-card:nth-child(4n+1):after{background-color:var(--veiled-vista);transform:translate(12px,15px)}.project-card:nth-child(4n+1):hover:after{transform:translate(25px,28px)}.project-card:nth-child(4n+2):after{background-color:var(--golden-mist);transform:translate(-10px,18px)}.project-card:nth-child(4n+2):hover:after{transform:translate(-22px,32px)}.project-card:nth-child(4n+3):after{background-color:var(--quiet-violet);transform:translate(18px,-8px)}.project-card:nth-child(4n+3):hover:after{transform:translate(30px,-18px)}.project-card:nth-child(4n+4):after{background-color:var(--baltic-sea);transform:translate(15px,20px)}.project-card:nth-child(4n+4):hover:after{transform:translate(28px,35px)}.project-card:nth-child(odd):hover .card-inner{transform:translate(-8px,-8px)}.project-card:nth-child(2n):hover .card-inner{transform:translate(6px,-6px)}.card-image-wrapper{width:100%;aspect-ratio:16/10;overflow:hidden;border:1px solid var(--hematite)}.card-image-wrapper img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .6s ease}.project-card:hover .card-image-wrapper img{transform:scale(1.03)}.card-title{font-size:2.5rem;margin-top:1.5rem}.card-tags{font-size:.9rem;color:var(--blue-fusion);font-weight:600;margin-top:.5rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.overlay{position:fixed;inset:0;background:#4a454399;opacity:0;pointer-events:none;transition:opacity .4s ease;z-index:90}.overlay.is-active{opacity:1;pointer-events:all}.close-btn{position:absolute;top:2rem;right:2rem;background:none;border:none;font-family:var(--font-display);font-size:1.5rem;cursor:pointer;color:var(--hematite);z-index:101;letter-spacing:1px}.close-btn span{transition:text-decoration .2s ease;text-underline-offset:4px;text-decoration-thickness:2px}.close-btn:hover span{text-decoration:underline}.project-slide{position:fixed;top:0;right:0;width:100vw;max-width:900px;height:100vh;background-color:var(--cloud-dancer);z-index:100;transform:translate(100%);transition:transform .5s cubic-bezier(.25,1,.5,1);overflow-y:auto}.project-slide.is-open{transform:translate(0)}.slide-content{padding:6rem 4rem 4rem}.slide-title{font-size:clamp(3rem,6vw,6rem);margin-bottom:2rem;color:var(--hematite)}.metadata-box{background-color:var(--golden-mist);padding:2rem;margin-bottom:4rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;border-left:6px solid var(--baltic-sea)}.meta-label{font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:1px;margin-bottom:.5rem}.offset-presentation{display:flex;align-items:flex-end;width:100%;margin:4rem 0 6rem}.desktop-wrapper{width:80%;border:2px solid var(--hematite);margin-bottom:6%}.desktop-shot-optimized{width:100%;height:auto;display:block}.mobile-mockup-wrapper{width:35%;margin-left:-15%;position:relative;z-index:2;margin-bottom:10%}.mockup-screen{width:65%;height:auto;border:2px solid var(--hematite);box-shadow:-15px 15px 0 var(--hematite)}.screen-one{position:relative;z-index:1;display:block}.screen-two{position:absolute;top:15%;right:0;z-index:2}.content-image{width:100%;height:auto;border:2px solid var(--hematite);margin:2.5rem 0;display:block}.narrative{max-width:70ch;font-size:1.125rem}.narrative p{margin-bottom:1.5rem}.legal-slide{position:fixed;top:0;left:0;width:100vw;max-width:700px;height:100vh;background-color:var(--cloud-dancer);z-index:100;transform:translate(-100%);transition:transform .5s cubic-bezier(.25,1,.5,1);overflow-y:auto}.legal-slide.is-open{transform:translate(0)}.legal-content{padding:6rem 4rem 4rem;max-width:65ch}.legal-content h2{font-size:3rem;margin-bottom:2rem;color:var(--baltic-sea)}.legal-content h3{font-size:1.5rem;margin:2rem 0 1rem;color:var(--hematite)}.legal-content p{margin-bottom:1rem;font-size:1rem}.contact-section{padding:10vw 5vw 2vw;background-color:var(--hematite);color:var(--cloud-dancer);border-top:4px solid var(--golden-mist)}.contact-section h2{color:var(--golden-mist);font-size:4rem}.contact-form{display:flex;flex-direction:column;gap:2.5rem;max-width:700px;margin-top:4rem}.form-group input,.form-group textarea{width:100%;background:transparent;border:none;border-bottom:2px solid rgba(240,239,234,.3);color:var(--cloud-dancer);font-family:var(--font-body);font-size:1.25rem;padding:.5rem 0;outline:none;transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus{border-bottom-color:var(--golden-mist)}.submit-btn{background-color:var(--golden-mist);color:var(--hematite);font-family:var(--font-display);font-size:1.5rem;text-transform:uppercase;letter-spacing:2px;border:none;padding:1rem 3rem;align-self:flex-start;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:1rem}.submit-btn:hover{transform:translate(-5px,-5px);box-shadow:5px 5px 0 var(--baltic-sea)}.footer-bottom{margin-top:8rem;display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(240,239,234,.2);padding-top:2rem;font-size:.9rem}.legal-links a{color:var(--cloud-dancer);text-decoration:none;margin-left:2rem;transition:color .3s ease}.legal-links a:hover{color:var(--golden-mist)}@media(max-width:768px){.offset-presentation{flex-direction:column;align-items:center;margin:3rem 0 4rem}.desktop-wrapper{width:100%;margin-bottom:0}.mobile-mockup-wrapper{width:80%;margin-left:0;margin-top:-15%;margin-bottom:15%}.footer-bottom{flex-direction:column;gap:1rem;align-items:flex-start}.legal-links a{margin-left:0;margin-right:2rem}}
