@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Poppins:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Gloock&display=swap);@import url(https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css);@import url(https://fonts.googleapis.com/css2?family=Karantina:wght@300;400;700&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0f3460;color:#f8fafc;font-family:Inter,SF Pro Text,system-ui,sans-serif;line-height:1.6}code{font-family:JetBrains Mono,Fira Code,monospace}::selection{background:#3b82f64d;color:#f8fafc}html{scroll-behavior:smooth}h1,h2,h3,h4,h5,h6{font-family:Poppins,SF Pro Display,system-ui,sans-serif;font-weight:600;letter-spacing:-.025em;line-height:1.2}h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f8fafc,#3b82f6);-webkit-background-clip:text;background-clip:text;font-size:clamp(2.5rem,5vw,4rem);font-weight:700}.glass{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 4px 20px #00000026}.text-nav-toggle{font-family:Inter,sans-serif;transition:all .3s ease}.text-logo{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f8fafc,#3b82f6);-webkit-background-clip:text;background-clip:text;font-family:Poppins,sans-serif;font-weight:700}.window-outline{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#ffffff0d;border:1px solid #ffffff1a;transition:all .3s ease}.window-outline:hover{box-shadow:0 0 30px #3b82f626;transform:translateY(-2px)}.text-body-info-emphasis,.text-info-hero-serif{color:#3b82f6;font-weight:600}.text-info-hero-serif{font-family:Poppins,sans-serif}.footer{background:#0000}.footer-link{font-family:Inter,sans-serif;transition:all .3s ease}.footer-link:hover{color:#3b82f6;transform:translateY(-1px)}.footer-highlight{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#8b5cf6);font-weight:600}.animate-in{animation:fadeInUp .8s ease forwards}@media (max-width:768px){.homepage-name-landing{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f8fafc,#3b82f6);-webkit-background-clip:text;background-clip:text;font-family:Poppins,sans-serif;font-size:clamp(2rem,8vw,3rem);font-weight:700}.homepage-location-landing,.homepage-role-landing{color:#cbd5e1;font-family:Inter,sans-serif;font-weight:500}.homepage-quote-landing{color:#cbd5e1;font-family:Inter,sans-serif;line-height:1.6}.homepage-quote-highlight-landing{color:#3b82f6;font-weight:600}.text-hero.info-hero{color:#f8fafc;font-family:Poppins,sans-serif;font-weight:600;line-height:1.5}.text-projectpage-body.info-hero{color:#cbd5e1;font-family:Inter,sans-serif;line-height:1.6}.text-projectpage-overline{color:#94a3b8;font-family:Inter,sans-serif;font-weight:600;letter-spacing:.1em}.window-outline.info-hero{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px}.container-hero-image.info-hero{transition:all .3s ease}.container-hero-image.info-hero:hover{box-shadow:0 0 30px #3b82f626;transform:translateY(-2px)}.footer-heading,.footer-text-size-large-space{font-family:Poppins,sans-serif;font-weight:600}}.open-source-section{margin:3rem auto 0;max-width:800px;padding:0 1rem;width:100%}.open-source-container{width:100%}.open-source-title{color:#fff;font-family:Neue Montreal,sans-serif;font-size:1.5rem;font-weight:500;letter-spacing:.5px;margin-bottom:1.5rem}.contributions-table{overflow-x:auto;width:100%}.contributions-table table{background:#ffffff05;border:1px solid #ffffff1a;border-collapse:collapse;border-radius:.5rem;overflow:hidden;width:100%}.contributions-table th{background:#ffffff0d;border-bottom:1px solid #ffffff1a;color:#fff;font-size:.875rem;font-weight:600;padding:1rem;text-align:left}.contributions-table td{border-bottom:1px solid #ffffff0d;height:80px;padding:1rem;vertical-align:top}.contributions-table tr:last-child td{border-bottom:none}.contributions-table tr:hover{background:#ffffff08}.pr-title{color:#fff;font-size:.875rem;font-weight:600;line-height:1.4;width:30%}.pr-description{color:#f2f2f292;font-size:.8rem;line-height:1.4;overflow:hidden;text-overflow:ellipsis;width:40%}.pr-repo{width:15%}.pr-repo a{color:#f2f2f299;font-family:Courier New,monospace;font-size:.75rem;text-decoration:none;transition:color .3s ease}.pr-repo a:hover{color:#fff}.pr-actions{text-align:center;width:15%}.copy-btn,.github-link{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:4px;color:#f2f2f299;cursor:pointer;display:inline-flex;height:28px;justify-content:center;margin:0 2px;text-decoration:none;transition:all .3s ease;width:28px}.copy-btn{position:relative}.copy-btn:hover,.github-link:hover{background:#ffffff1a;color:#fff;transform:scale(1.05)}.copy-tooltip{animation:fadeInOut 1.2s ease-in-out;background:#333;border-radius:4px;color:#fff;font-size:.75rem;left:50%;padding:4px 8px;position:absolute;top:-35px;transform:translateX(-50%);white-space:nowrap;z-index:10}@keyframes fadeInOut{0%{opacity:0;transform:translateX(-50%) translateY(5px)}20%{opacity:1;transform:translateX(-50%) translateY(0)}80%{opacity:1;transform:translateX(-50%) translateY(0)}to{opacity:0;transform:translateX(-50%) translateY(-5px)}}.github-profile-link{color:#f2f2f299;font-size:.875rem;margin-top:1rem;text-align:center}.github-profile-link a{color:#fff;text-decoration:none;transition:color .3s ease}.github-profile-link a:hover{color:#f2f2f2}@media (max-width:768px){.contributions-table{font-size:.75rem}.contributions-table td,.contributions-table th{padding:.75rem .5rem}.pr-title{font-size:.75rem;width:35%}.pr-description{font-size:.7rem;width:35%}.pr-repo{width:20%}.pr-actions{width:10%}.copy-btn,.github-link{height:24px;margin:1px;width:24px}}.experience-body{animation:fadeIn 1.5s ease-in-out;background-color:#101010;color:#f2f2f2;overflow-x:hidden}.section-experience{grid-row-gap:80px;align-items:center;background-image:radial-gradient(circle closest-corner at 50% 0,#f2f2f226,#0000);display:flex;flex-direction:column;padding-bottom:200px;padding-top:172px;position:relative}.section-experience .overline-info-wrapper{grid-row-gap:24px;animation:fadeInUp 1s ease-out forwards;box-sizing:border-box;color:#f2f2f2;display:flex;flex-direction:column;margin:0 auto;max-width:100%;padding:0 189px}.experience-section{padding:80px 0;position:relative}.experience-container{margin:0 auto;max-width:882px;padding:0 24px}.overline-wrapper.experience{grid-column-gap:12px;align-items:center;align-self:flex-start;display:flex;margin-bottom:48px}.experience-cards{display:flex;flex-direction:column;gap:24px}.experience-card-outline{animation:experienceSlideUp 1s ease-out forwards;background-color:#f2f2f20a;border-radius:24px;box-shadow:0 40px 80px #00000080;opacity:0;outline:1px solid #f2f2f20d;outline-offset:-1px;padding:8px;position:relative;transform:translateY(50px)}@keyframes experienceSlideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.experience-card{background-image:linear-gradient(190deg,#252525,#101010);border:1px solid #3d3d3d;border-radius:16px;color:#f2f2f2;overflow:hidden;padding:32px;position:relative;transition:border .4s cubic-bezier(.165,.84,.44,1)}.experience-card:hover{border-color:#5a5a5a}.experience-card-outline:hover .experience-card-colour{opacity:1}.experience-card-colour{background-color:#050505;background-image:radial-gradient(circle at 50% 0,#4a90d9bf,#0000 50%),radial-gradient(circle at 80% 80%,#00000060,#0000 60%),linear-gradient(145deg,#050505,#101010);inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .3s ease;z-index:0}.experience-card-header{align-items:flex-start;display:flex;gap:20px;margin-bottom:24px;position:relative;z-index:1}.experience-logo-wrapper{align-items:center;background:#1a1a1a;border:1px solid #3d3d3d;border-radius:12px;display:flex;flex-shrink:0;height:64px;justify-content:center;overflow:hidden;width:64px}.experience-logo{height:100%;object-fit:contain;padding:8px;width:100%}.experience-header-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.experience-company{color:#f2f2f2;font-family:Neue Montreal,sans-serif;font-size:20px;font-weight:600;letter-spacing:.2px;text-shadow:0 -2px 10px #fff3}.experience-role{color:#f2f2f2cc;font-family:Neue Montreal,sans-serif;font-size:16px;font-weight:500;margin-top:2px}.experience-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.experience-duration,.experience-location{color:#f2f2f280;font-family:Neue Montreal,sans-serif;font-size:13px;font-weight:400;letter-spacing:.2px}.experience-separator{color:#f2f2f240}.experience-content{position:relative;z-index:1}.experience-description{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0 0 20px;padding:0}.experience-description li{color:#f2f2f280;font-family:Neue Montreal,sans-serif;font-size:14px;font-weight:400;letter-spacing:.2px;line-height:1.5;padding-left:20px;position:relative}.experience-description li:before{color:#f2f2f260;content:"→";font-size:12px;left:0;position:absolute}.experience-skills{display:flex;flex-wrap:wrap;gap:8px}.experience-skill-tag{background:#f2f2f20f;border:1px solid #f2f2f21a;border-radius:20px;color:#f2f2f2cc;font-family:Neue Montreal,sans-serif;font-size:12px;font-weight:500;letter-spacing:.3px;padding:6px 12px;transition:all .2s ease}.experience-skill-tag:hover{background:#f2f2f21a;border-color:#f2f2f233}@media screen and (max-width:991px){.experience-section{padding:60px 0}.experience-container{padding:0 48px}}@media screen and (max-width:768px){.experience-section{padding:48px 0}.experience-container{padding:0 24px}.experience-card{padding:24px}.experience-card-header{flex-direction:column;gap:16px}.experience-logo-wrapper{height:56px;width:56px}.experience-company{font-size:18px}.experience-role{font-size:15px}.experience-meta{align-items:flex-start;flex-direction:column;gap:4px}.experience-separator{display:none}.experience-description li{font-size:13px}.experience-skill-tag{font-size:11px;padding:5px 10px}.experience-card-colour{opacity:1!important}}@media screen and (max-width:479px){.experience-section{padding:32px 0}.experience-container{padding:0 16px}.experience-card{padding:20px}.overline-wrapper.experience{margin-bottom:32px}.experience-logo-wrapper{height:48px;width:48px}.experience-company{font-size:16px}.experience-role{font-size:14px}.experience-duration,.experience-location{font-size:12px}}@media screen and (max-width:991px){.section-experience{align-items:stretch;padding-left:48px;padding-right:48px}.section-experience .overline-info-wrapper{padding:0 32px}.section-experience .text-hero.info-hero{font-size:36px;line-height:120%}}@media screen and (max-width:768px){.section-experience{padding:140px 16px 16px}.section-experience .text-hero.info-hero{font-size:24px;line-height:130%;text-align:center}.section-experience .overline-info-wrapper{align-items:center;text-align:center}}@media screen and (max-width:479px){.section-experience .overline-info-wrapper{grid-row-gap:2vh;align-items:flex-start;display:flex;flex-direction:column;padding:0 16px}.section-experience .text-hero.info-hero{font-size:18px;line-height:140%}.section-experience{padding:120px 8px 8px}}@media screen and (min-width:992px){.section-experience .overline-info-wrapper{margin:0 auto;max-width:882px;padding:0}}.section-nav{animation:fadeIn 1s ease-out forwards;display:flex;height:168px;inset:0 0 auto;opacity:0;padding:clamp(8px,3%,24px);position:fixed;transition:height .3s ease,padding .3s ease;z-index:10}.nav-bar{flex:1 1;flex-wrap:nowrap;gap:16px;justify-content:space-between;min-width:0}.nav-bar,.nav-left-wrapper{align-items:center;display:flex;height:56px}.nav-left-wrapper{flex:1 1}.logo-text{grid-row-gap:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;margin-top:1px}.text-logo{display:inline-block;font-size:clamp(16px,2vw,20px);font-weight:500;line-height:20px}.text-logo,.text-underlogo{font-family:Neue Montreal,sans-serif}.text-underlogo{color:#f2f2f280;display:block;font-size:12px;line-height:12px}.nav-pill-wrapper{display:flex;flex-direction:column;height:56px;justify-content:center;max-width:340px;position:relative;width:auto}.nav-indicator-glow{background-color:#ececec;border-radius:2px;box-shadow:0 2px 25px 2px #fff;display:none;height:4px;position:absolute;transition:all .3s ease;width:24px}.nav-pill{align-items:center;animation:subtle-glow 4s ease-in-out infinite;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background-color:#262424;border:1px solid #f2f2f21a;border-radius:24px;box-shadow:0 8px 20px #ffffff1a;display:flex;gap:2px;height:48px;justify-content:space-around;min-width:-webkit-fit-content;min-width:fit-content;padding-left:8px;padding-right:8px;pointer-events:auto;position:relative;transition:box-shadow .8s cubic-bezier(.23,1,.32,1),border .6s cubic-bezier(.165,.84,.44,1);width:auto}.nav-pill:hover{box-shadow:0 0 20px #fff3,0 8px 20px #00000026;transition:box-shadow 1.5s ease}@keyframes subtle-glow{0%{box-shadow:0 0 20px #ffffff1a,0 8px 20px #00000026}50%{box-shadow:0 0 25px #fff3,0 8px 20px #00000026}to{box-shadow:0 0 20px #ffffff1a,0 8px 20px #00000026}}.nav-toggle{align-items:center;background:none;border:none;border-radius:18px;color:#f2f2f2;cursor:pointer;display:flex;height:36px;justify-content:center;padding:0 12px;text-align:center;text-decoration:none;transition:all .2s cubic-bezier(.165,.84,.44,1);white-space:nowrap;width:auto}.nav-toggle:hover{background-color:#fff3;color:#f2f2f2;transition:transform .3s ease,background-color .3s ease}.text-nav-toggle{font-family:Neue Montreal,sans-serif;font-size:14px;font-weight:500;line-height:18px;text-align:center}.nav-indicator-pill{background-color:#f2f2f20d;border-radius:18px;display:none;height:36px;position:absolute;transition:all .3s ease;width:0}.nav-right-wrapper{align-items:center;display:flex;flex:1 1;height:56px;justify-content:flex-end}.chip-socials-wrapper{grid-column-gap:4px;align-items:center;display:flex;flex-wrap:nowrap}.chip-socials{align-items:center;border-radius:24px;display:flex;gap:8px;height:clamp(40px,6vh,48px);justify-content:center;max-width:100%;min-width:-webkit-fit-content;min-width:fit-content;padding-left:12px;padding-right:10px;text-decoration:none;transition:background-color .3s cubic-bezier(.165,.84,.44,1)}.chip-socials i{color:#f2f2f2;font-size:20px}.chip-socials img{height:18px;transition:transform .3s ease,filter .3s ease;width:18px}.chip-socials:hover{background-color:#222;color:#fff;transform:translateY(-1px);transition:transform .6s ease}.chip-socials i:hover,.chip-socials img:hover{filter:drop-shadow(0 0 5px rgba(255,255,255,.8));transform:scale(1.1)}.fa-linkedin:before{content:"\f08c";transition:transform .3s ease,filter .3s ease}.icon-external{fill:#f2f2f2;filter:none;height:12px;transition:filter .3s ease;width:12px}.text-socialnav{color:#f2f2f2;font-family:Neue Montreal,sans-serif;font-size:14px;font-weight:500;line-height:18px;text-decoration:none}.nav-menu-button{background:none;border:none;cursor:pointer;display:none;padding:0;pointer-events:auto}.mobile-popup-menu{display:none;opacity:0;transform:translateY(-20px);transition:opacity .3s ease,transform .3s ease}.mobile-popup-menu.show{background:#000c;border-radius:8px;display:block;opacity:1;padding:8px;transform:translateY(0)}.icon-contact,.icon-contact-close{transition:opacity .3s ease,transform .3s ease}@media screen and (max-width:350px){.nav-menu-button{left:5px;position:relative}}@media screen and (max-width:476px){.nav-menu-button{height:60px;width:60px}.icon-contact{position:relative;top:10px}}@media screen and (max-width:501px){.nav-pill-wrapper{left:15px;position:absolute;top:20px}.nav-right-wrapper{left:299px;position:relative;top:-4px}.nav-menu-button{grid-column-gap:8px;align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 0 10px #0000001a,0 4px 16px #00000040;display:flex;justify-content:center;left:105px;margin-left:auto;position:relative;top:1px;z-index:1}.section-nav{background-image:linear-gradient(#0009,#0000);height:auto;inset:0 0 auto;padding:20px 16px 48px}.logo-text,.nav-left-wrapper{display:none}.text-logo{font-size:16px;line-height:20px;padding-bottom:2px}.nav-pill{box-shadow:0 12px 30px #0003}.chip-socials{background-color:#f2f2f20d;border-radius:100px;height:56px;justify-content:center}.text-socialnav{font-size:18px}.nav-menu-button{display:block}.chip-socials-wrapper{display:none}.mobile-popup-menu{right:16px;top:84px}.text-popup-menu{font-family:Neue Montreal,sans-serif;letter-spacing:.2px}.nav-pill-wrapper{flex-direction:column;flex-grow:1;justify-content:flex-start;width:100%}.nav-toggle{text-align:center;width:100%}.nav-bar{align-items:center;flex-wrap:nowrap;gap:30px}}@media screen and (max-width:767px){.section-nav{height:144px;padding-left:24px;padding-right:24px}.nav-menu-button{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#f2f2f20d;border:1px solid #f2f2f21a;border-radius:100px;box-shadow:0 4px 15px #00000040;display:flex;height:48px;justify-content:center;transition:all .2s cubic-bezier(.165,.84,.44,1);width:48px}.nav-bar{grid-column-gap:8px}.logo-text{grid-row-gap:4px}.text-logo{font-size:18px;letter-spacing:-.5px;line-height:22px}.nav-right-wrapper{flex:0 1 auto}.chip-socials-wrapper{display:none}.icon-contact{left:9px;position:relative;top:10px;width:28px}.icon-contact-close{opacity:0;position:absolute;right:8px;top:10px;width:28px}.nav-menu-button{display:block}.mobile-popup-menu{grid-row-gap:4px;align-items:flex-start;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background-color:#f2f2f20d;border:1px solid #f2f2f21a;border-radius:16px;box-shadow:0 10px 30px #0000004d;display:none;flex-direction:column;inset:88px 24px auto auto;overflow:hidden;padding:8px;position:fixed;width:160px;z-index:10}.popup-menu-item{grid-column-gap:4px;align-items:center;align-self:stretch;border-radius:10px;color:#f2f2f2;display:flex;justify-content:space-between;padding:12px 14px;text-decoration:none;transition:all .2s cubic-bezier(.165,.84,.44,1)}.text-popup-menu{font-family:Inter,sans-serif;font-size:14px;font-weight:500}.icon-popup-external{width:16px}}@media screen and (max-width:1200px){.chip-socials{gap:6px;padding-left:8px;padding-right:6px}.text-socialnav{font-size:13px}}@media screen and (max-width:991px){.section-nav{padding-left:48px;padding-right:48px}.text-socialnav{font-size:12px;line-height:18px}.nav-bar{gap:12px;justify-content:space-between}.nav-pill-wrapper{height:49px;max-width:280px;width:auto}.nav-right-wrapper{left:10px;position:relative}.chip-socials{gap:4px;height:44px;padding-left:6px;padding-right:4px}.text-logo{font-size:clamp(18px,2.5vw,22px)}}@keyframes comeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.homepage-content-wrapper-landing{align-items:center;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:100px;justify-content:center;max-width:100vw;padding:190px 20px 20px;width:100%}.container-hero-image-landing.info-hero-landing{animation:comeUp 1s ease-out forwards;height:auto;max-width:350px;object-fit:contain;opacity:0;position:relative;width:100%;z-index:3}.homepage-text-section-landing{align-items:flex-start;animation:comeUp 1s ease-out forwards;animation-delay:.5s;color:#fff;display:flex;flex:1 1;flex-direction:column;gap:13px;justify-content:center;max-width:50%;opacity:0;width:100%}.homepage-name-landing{color:#f2f2f2bf;font-family:Neue Montreal,sans-serif;font-size:3rem;font-weight:700;margin:0;padding-bottom:9px;text-shadow:0 4px 8px #0057ff33,0 -4px 8px #ff5a0026,0 0 20px #787575c3}.homepage-location-landing,.homepage-role-landing{color:#f2f2f299;font-family:Neue Montreal,sans-serif;font-size:1.2rem;margin:0}.homepage-quote-landing{font-family:Neue Montreal,sans-serif;font-size:1.4rem;letter-spacing:-1px;line-height:143%;margin-top:20px;text-shadow:0 4px 8px #0057ff33,0 -4px 8px #ff5a0026,0 0 20px #919090}.homepage-quote-highlight-landing{-webkit-text-fill-color:#0000;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(180deg,#f2f2f2 50%,#f2f2f233);font-family:Gloock,sans-serif;font-style:italic;font-weight:500;letter-spacing:-1px;text-shadow:0 4px 6px #0057ff26,0 -4px 6px #ff5a001a,0 0 20px #ffffff40}.glare-item-top-landing.outer-edge-landing{background-image:linear-gradient(90deg,#0000 5%,#fffc 35%,#fff 50%,#fffc 65%,#0000 95%);inset:0 0 auto;position:absolute;z-index:1}.glare-item-top-landing{background-image:linear-gradient(90deg,#0000 10%,#fff 50%,#0000 90%);height:1px;margin-bottom:-1px}.window-outline-landing.info-hero-landing{box-shadow:inset 0 0 8px #0006,0 0 60px #0003,0 30px 80px #00000080}.window-outline-landing{-webkit-backdrop-filter:none;backdrop-filter:none;background-image:radial-gradient(circle farthest-side at 50% 0,#f2f2f233,#0000);border-radius:24px;outline:1px solid #f2f2f226;outline-offset:-1px;overflow:hidden;padding:8px}.glare-item-top-landing.hero-inner-landing{height:2px;margin-bottom:-2px}.window-main-landing{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid #f2f2f24d;border-radius:16px;box-shadow:inset 0 0 10px #0000001a,0 0 12px #0006;overflow:hidden}.window-content-landing.info-hero-landing{padding:0}.window-content-landing.info-hero-landing img{border-radius:8px;height:auto;max-width:100%;object-fit:contain}.hero-image-landing{transition:filter .3s ease-in-out}.hero-image-landing:hover{filter:brightness(1.1)}.window-bar-landing.info-hero-landing{align-items:center;background:#2a2a2a;border-bottom:1px solid #404040;display:flex;padding:12px 16px}.window-dots-wrapper-landing{grid-column-gap:10px;display:flex}.dot-landing{background-color:#f46b5d;height:12px;width:12px}.dot-landing.red-landing{border:1px solid #10101040;border-radius:100px;box-shadow:0 0 20px 2px #f46b5d}.dot-landing.yellow-landing{background-color:#f9bd4e;border:1px solid #10101040;border-radius:100px;box-shadow:0 0 20px 2px #f9bd4e}.dot-landing.green-landing{background-color:#57c353;border:1px solid #10101040;border-radius:100px;box-shadow:0 0 20px 2px #57c353}.vapour-landing{display:inline-flex;left:71px;padding:0 5px;position:relative;top:75px;z-index:1}.vapour-landing span{animation:animate 3s linear infinite;animation-delay:calc(var(--i)*-.3s);background:#fff;border-radius:50%;bottom:5px;display:block;filter:blur(6px);height:30px;margin:0 1px 5px;min-width:1px;opacity:0;position:relative}@keyframes animate{0%{opacity:0;transform:translateY(0) scaleX(1)}15%{opacity:1}50%{transform:translateY(-40px) scaleX(2)}95%{opacity:0}to{transform:translateY(-80px) scaleX(4)}}.quote-container-middle{max-width:100vw;opacity:0;padding:140px 2rem 2rem;text-align:center;transform:translateY(50px);transition:opacity 1s,transform 1s}.quote-text-hero-middle.info-hero-middle{color:#fff;display:inline-block;font-size:3rem;font-weight:500;letter-spacing:-1px;line-height:1.4;text-align:center;text-shadow:0 4px 10px #0057ff33,0 -4px 10px #ff5a0026,0 0 30px #fff3}.quote-text-info-hero-serif-middle{-webkit-text-fill-color:#0000;word-wrap:break-word;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(90deg,#f0f0f0,#333);display:inline-block;font-family:Playfair Display,serif;font-style:italic;letter-spacing:-1px;text-shadow:0 4px 6px #0057ff26,0 -4px 6px #ff5a001a,0 0 20px #ffffff40}@media (max-width:768px){.homepage-content-wrapper-landing{flex-direction:column;gap:20px}.container-hero-image-landing.info-hero-landing{max-width:100%;width:100%}.homepage-text-section-landing{max-width:100%;text-align:center}.homepage-name-landing{font-size:2rem}.homepage-quote-landing{font-size:1.2rem}.quote-text-hero-middle.info-hero-middle{font-size:2rem}}@media (max-width:480px){.homepage-content-wrapper-landing{gap:15px}.homepage-name-landing{font-size:1.8rem}.homepage-location-landing,.homepage-role-landing{font-size:1rem}.homepage-text-section-landing{max-width:100%;text-align:center}.homepage-quote-landing{font-size:1rem}.quote-text-hero-middle.info-hero-middle{font-size:1.8rem}}@media (max-width:1024px){.quote-text-hero-middle.info-hero-middle{font-size:2.5rem}}.transition-overlay{background-color:#000000e6;height:100%;left:0;opacity:0;position:fixed;top:0;transform:translateY(100%);transition:opacity .8s ease,transform .8s ease;width:100%;z-index:1000}.transition-overlay.active{opacity:1;transform:translateY(0)}.relative.modern{padding-top:110px;position:relative}.container.modern{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;gap:5px;justify-content:center;min-height:100vh;padding:0 1rem;width:100vw}.section-title.modern{font-family:Poppins,sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:700;letter-spacing:.02em;margin-bottom:1.5rem;text-align:center;text-shadow:0 6px 18px #ffffff0a,0 2px 6px #ffffff05}.projects-list.modern{margin:0 auto;padding:0 1rem}.project-card.modern,.projects-list.modern{max-width:800px;overflow:visible;width:100%}.project-card.modern{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff05;border:1px solid #ffffff1a;border-radius:1rem;box-sizing:border-box;margin:0 auto 2rem;max-height:212px!important;min-height:60px;opacity:0;padding:1rem 2rem;padding-bottom:.75rem!important;position:relative;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.project-card.visible.modern{opacity:1;transform:translateY(0)}.project-card:hover .project-title.modern{color:#fff;text-shadow:0 6px 18px #ffffff1f,0 3px 8px #ffffff14;transform:translateY(-5px)}.project-row.modern{align-items:center;display:flex;justify-content:space-between}.project-title.modern{align-items:center;display:flex;font-family:Neue Montreal,sans-serif;font-size:clamp(1.25rem,3.2vw,2rem);font-weight:700;justify-content:flex-start;letter-spacing:.02em;line-height:1.05;margin:0;padding-left:1.5rem;text-shadow:0 4px 12px #ffffff0f,0 2px 4px #ffffff0a;transition:color .3s ease,transform .3s ease,text-shadow .3s ease}.project-details.modern,.project-title.modern{overflow:hidden;overflow-wrap:anywhere;white-space:normal;word-break:break-word}.project-details.modern{color:#ffffff40;font-size:clamp(.95rem,1.6vw,1.125rem);font-weight:400;letter-spacing:.3px;line-height:1.5;text-align:right}.project-details p.modern{opacity:.7;transition:opacity .3s ease,transform .3s ease}.project-card:hover .project-details p.modern{color:#b1b1b1;opacity:1;transform:translateY(-2px)}.project-image.modern{background-position:center calc(50% + 14px);background-size:cover;border:2px solid #3a3a3a!important;border-radius:12px!important;box-shadow:0 10px 30px #00000080,0 0 0 1px #ffffff1a!important;display:block;height:120px!important;left:0;margin:0 auto;max-width:180px;opacity:0;overflow:hidden;pointer-events:none;position:absolute!important;top:0;transform:scale(.8);transition:opacity .3s ease,transform .3s ease;width:180px!important;z-index:999!important}.project-image.modern:before{background:linear-gradient(180deg,#2d2d2d,#1a1a1a)!important;border-bottom:1px solid #404040!important;content:""!important;height:30px!important;left:0!important;position:absolute!important;right:0!important;top:0!important;z-index:10!important}.project-image.modern:after{background:#ff5f57!important;border-radius:50%!important;box-shadow:20px 0 0 #ffbd2e,40px 0 0 #28ca42!important;content:""!important;height:12px!important;left:15px!important;position:absolute!important;top:10px!important;width:12px!important;z-index:11!important}.project-card:hover .project-image.modern{opacity:1!important;pointer-events:auto;transform:scale(1.05)!important}hr.modern{display:none}.section.modern{display:block;padding:3rem;position:relative}.btn-container.visible.modern{opacity:1;transform:translateY(0)}.btn-container.modern{margin:0 auto;max-width:100em;opacity:0;padding:0 1rem;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.center-grid-btn.modern,.grid-after-btn.modern{display:flex;justify-content:center}.btn.modern{margin-bottom:1rem;position:relative}.btn-click.modern{align-items:center;animation:glowing 4s infinite alternate;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#0000;background-color:#747474b0;border:0;border-radius:34px;cursor:pointer;display:flex;font-size:1em;height:4.25em;justify-content:center;min-width:12em;overflow:hidden;padding:0;position:relative;text-decoration:none;transform:translateZ(0);transition:transform .4s ease,box-shadow .3s ease}.btn-click:hover.modern{box-shadow:0 15px 25px #00000026;transform:scale(1.08)}.btn-fill.modern{background:linear-gradient(135deg,#f5f5f5,#e0e0e0);border-radius:50%;height:200%;left:-25%;position:absolute;top:-50%;transform:translate3d(0,100%,0);transition:transform .4s ease,background-color .4s ease;width:150%}.btn-click:hover .btn-fill.modern{background:linear-gradient(135deg,#2e2e2e,#4f4f4f);transform:translateZ(0)}.btn-text.modern{color:#ebebec;pointer-events:none;position:relative;transition:color .3s ease;z-index:2}.btn-text-inner:hover.modern{transform:translateY(-3px);transition:transform .3s ease}.btn-click:hover .btn-text.modern{color:#f5f5f5}.count-nr.modern{display:inline-block;font-size:.8em;margin-left:.25em;opacity:.8;position:relative;transform:translate(20%,-15%)}.projects-guide.modern{color:#f2f2f299;font-size:.9rem;margin-top:2rem;padding:0 1rem;text-align:center}.projects-guide.modern code{background-color:#333;border-radius:4px;font-family:Courier New,monospace;padding:2px 6px}@media (max-width:1024px){.projects-list.modern{max-width:90%}}@media (max-width:768px){.project-card.modern{margin-bottom:1.5rem}.project-row.modern{text-align:center}.project-details.modern{margin-top:.5rem}.project-image.modern{height:180px!important;width:250px!important}.btn-click.modern{font-size:.9em;height:3.5em}}@media (max-width:480px){.project-row.modern{flex-direction:column;text-align:center}.project-title.modern,.section-title.modern{font-size:1.5rem}.projects-list.modern{padding:0 .5rem}.project-image.modern{height:150px!important;width:200px!important}.btn-click.modern{font-size:.85rem;height:3rem;padding:.75rem 1rem}}.project-links{gap:12px}.project-link,.project-links{align-items:center;display:flex}.project-link{color:#f2f2f299;transition:color .3s ease,transform .3s ease}.project-link:hover{color:#fff;transform:scale(1.1)}.external-link-icon{color:#f2f2f299;transition:color .3s ease,transform .3s ease}.external-link-icon:hover{color:#fff;transform:scale(1.1)}.tech-stack-wrapper-language{margin-bottom:100px;opacity:0;padding:170px 20px 20px;text-align:center;transform:translateY(50px);transition:opacity .8s ease-out,transform .8s ease-out}.tech-stack-wrapper-language.scroll-visible{opacity:1;transform:translateY(0)}.tech-stack-title-language{color:#f2f2f2;font-family:Neue Montreal,sans-serif;font-size:36px;font-weight:300;margin-bottom:80px;position:relative;z-index:10}.tech-stack-language{flex-wrap:wrap;gap:15px;margin:0 auto;max-width:1000px;perspective:2000px;row-gap:30px}.tech-item-language,.tech-stack-language{align-items:center;display:flex;justify-content:center}.tech-item-language{animation:pulse 3s infinite alternate;aspect-ratio:1;background:#ffffff1a;border-radius:50%;box-shadow:0 8px 20px #000000b3,0 0 40px #fff3;color:#fffc;cursor:pointer;filter:blur(0);flex:0 0 auto;font-size:18px;font-weight:700;height:120px;overflow:hidden;position:relative;transition:transform .6s ease,box-shadow .4s ease,filter .5s ease;width:120px;will-change:transform}.tech-item-language .tech-icon-language{height:60px;object-fit:cover;width:60px}.tech-item-language:hover{animation:glowing 1s infinite alternate;box-shadow:0 20px 40px hsla(0,1%,52%,.443);filter:blur(.5px);transform:scale(1.4) rotateX(1turn) rotateY(1turn)}@keyframes liquidMorph{0%{transform:scale(1) rotate(0deg)}to{transform:scale(1.3) rotate(1turn)}}.tech-item-language:hover{animation:liquidMorph .6s ease forwards}@keyframes glowing{0%{box-shadow:0 0 10px #94949466}50%{box-shadow:0 0 25px #949494cc}to{box-shadow:0 0 10px #a9a9a966}}@keyframes pulse{0%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}to{opacity:.8;transform:scale(1)}}.tech-item-language:after{bottom:-30px;color:#fffc;content:attr(data-tech);font-size:14px;opacity:0;position:absolute;transition:opacity .3s ease}.tech-item-language:hover:after{opacity:1}@media (max-width:768px){.tech-stack-language{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(5,1fr);justify-items:center}.tech-item-language{align-items:center;aspect-ratio:1/1;border-radius:50%;display:flex;font-size:14px;height:90px;justify-content:center;margin-bottom:0;width:90px}.tech-stack-title-language{font-size:24px}}@media (max-width:480px){.tech-item-language{height:80px;width:80px}.tech-stack-title-language{font-size:24px}}.section-info-hero.desktop{background-image:radial-gradient(circle closest-corner at 50% 0,#f2f2f226,#0000);padding-top:172px}.section-info-hero{justify-content:center;padding-bottom:120px;position:relative}.hero-fade,.section-info-hero{align-items:center;display:flex;flex-direction:column}.hero-fade{background-image:linear-gradient(180deg,#10101000,#101010 60%);height:200px;inset:auto 0 0;padding-top:48px;position:absolute;z-index:5}.container-info.hero{grid-row-gap:80px;animation:fadeUpP 1s ease-out}@keyframes fadeUpP{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.container-info{display:flex;flex-direction:column;position:relative;width:882px;z-index:1}.overline-wrapper{grid-column-gap:12px;align-items:center;align-self:flex-start;display:flex}.icon-section-dot{background-color:#f2f2f2;border-radius:50%;box-shadow:0 0 20px #fff;height:10px;width:10px}.text-projectpage-overline{color:#f2f2f266;font-family:Neue Montreal,sans-serif;font-size:11px;font-weight:500;letter-spacing:1.5px;line-height:19px;margin-top:1px;text-align:left}.text-hero.info-hero{font-size:48px;font-weight:500;letter-spacing:-1px;line-height:110%;text-align:left;text-shadow:0 4px 10px #0057ff33,0 -4px 10px #ff5a0026,0 0 30px #fff3}.text-hero{font-family:Neue Montreal,sans-serif}.text-info-hero-serif{-webkit-text-fill-color:#0000;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(180deg,#f2f2f2 50%,#f2f2f233);font-family:Gloock,sans-serif;font-style:italic;letter-spacing:-1px;text-shadow:0 4px 6px #0057ff26,0 -4px 6px #ff5a001a,0 0 20px #ffffff40}.double-column-block.info-hero{align-items:start}.double-column-block{grid-column-gap:48px;grid-row-gap:16px;align-self:stretch;display:grid;grid-auto-columns:1fr;grid-template-columns:1fr 1fr;grid-template-rows:auto;justify-content:space-between}.content-info-hero{grid-row-gap:64px;display:flex;flex-direction:column}.container-hero-image.info-hero{width:auto}.container-hero-image{position:relative;z-index:3}.window-outline.info-hero{box-shadow:inset 0 0 8px #0006,0 0 60px #0003,0 30px 80px #00000080}.window-outline{-webkit-backdrop-filter:none;backdrop-filter:none;background-image:radial-gradient(circle farthest-side at 50% 0,#f2f2f233,#0000);border-radius:24px;outline:1px solid #f2f2f226;outline-offset:-1px;overflow:hidden;padding:8px}.glare-item-top.hero-inner{height:2px;margin-bottom:-2px}.glare-item-top{background-image:linear-gradient(90deg,#0000 10%,#fff 50%,#0000 90%)}.window-main{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid #f2f2f24d;border-radius:16px;box-shadow:inset 0 0 10px #0000001a,0 0 12px #0006;overflow:hidden}.window-bar.info-hero{background-color:#f2f2f233;background-image:none;border-bottom:1px solid #f2f2f24d;border-radius:0;display:none}.window-bar{-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);box-shadow:0 10px 20px 4px #0003;height:40px;padding-left:20px;padding-right:12px}.window-dots-wrapper{grid-column-gap:10px;display:flex}.dot{background-color:#f46b5d;height:12px;width:12px}.dot.red{box-shadow:0 0 20px 2px #f46b5d}.dot.red,.dot.yellow{border:1px solid #10101040;border-radius:100px}.dot.yellow{background-color:#f9bd4e;box-shadow:0 0 20px 2px #f9bd4e}.dot.green{background-color:#57c353;border:1px solid #10101040;border-radius:100px;box-shadow:0 0 20px 2px #57c353}.window-content.info-hero{padding:0}.window-content{grid-column-gap:32px;grid-row-gap:0;align-items:stretch;background-color:#101010b3;display:flex;flex-direction:column;justify-content:space-around;position:relative;z-index:5}.text-projectpage-body.info-hero{font-family:Neue Montreal,sans-serif;line-height:150%;padding-left:24px;padding-right:24px}.text-projectpage-body{color:#f2f2f299;flex:1 1;font-size:16px;font-weight:300;letter-spacing:.4px}.text-body-info-emphasis{color:#f2f2f2e6;font-size:18px;font-weight:500}.content-info-hero.has-offset{padding-top:48px}.info-hero-ending-wrapper{grid-row-gap:8px;display:flex;flex-direction:column}.signature-wrapper{padding-left:24px;padding-right:24px}.info-signature{padding-top:20px;width:180px}.hero-noise{background-image:url(https://cdn.prod.website-files.com/63dcb6e1a80e9454b630f4c4/644af02a8b5b2b6b1b5b2b6b_noise-overlay-2.png);background-position:0 0;background-size:200px;display:block;inset:0;mix-blend-mode:overlay;opacity:.2;position:absolute;z-index:0}.section-info-hero.mobile{background-image:radial-gradient(circle closest-corner at 50% 0,#f2f2f226,#0000);display:none}.info-hero-stack-mobile{grid-row-gap:64px;display:flex;flex-direction:column}@media screen and (max-width:767px){.section-info-hero.mobile{background-image:radial-gradient(circle farthest-side at 50% 0,#f2f2f226,#0000);display:flex}.section-info-hero{padding:144px 24px 64px}.hero-fade.info-hero{display:none}.hero-fade{height:24vw;padding-top:4vw}.container-info.hero{grid-row-gap:64px}.container-info{grid-row-gap:48px}.text-hero.info-hero{font-size:8vw;letter-spacing:-.15vw;line-height:110%}.text-hero{font-size:8.4vw;letter-spacing:-1.5px}.window-outline.info-hero{box-shadow:inset 0 0 8px #0006,0 0 60px #0003,0 20px 80px #000c}.window-outline{-webkit-backdrop-filter:blur(50px);backdrop-filter:blur(50px)}.window-content{padding-bottom:28vw}.text-projectpage-body{font-size:15px}.section-info-hero.desktop{display:none}.section-info-hero.mobile{display:block}}@media screen and (max-width:991px){.container-info{width:auto}.section-info-hero{padding-left:48px;padding-right:48px}.text-hero.info-hero{font-size:42px;line-height:110%}.text-hero{font-size:8.2vw}.container-hero-image{width:auto}.window-content{grid-row-gap:32px;padding:8vw 5vw 26vw}.text-projectpage-body{width:auto}}@media screen and (max-width:479px){.section-info-hero{background-image:radial-gradient(circle farthest-side at 50% 0,#f2f2f240,#0000 50%);padding-left:16px;padding-right:16px;padding-top:144px}.hero-fade{height:180px;padding-top:32px}.container-info.hero{grid-row-gap:40px}.overline-info-wrapper{grid-row-gap:2vh;align-items:flex-start;display:flex;flex-direction:column}.overline-wrapper{grid-column-gap:10px}.text-projectpage-overline{font-size:10px;line-height:16px}.text-hero.info-hero{font-size:7.9vw;letter-spacing:-.1vw;line-height:110%}.container-hero-image{display:flex;flex:1 1;height:100%;justify-content:center}.window-outline.info-hero{box-shadow:inset 0 0 8px #0006,0 0 60px #0003,0 10px 40px #000c;display:flex}.text-projectpage-body.info-hero{padding-left:16px;padding-right:16px}.text-projectpage-body{font-size:15px}.signature-wrapper{padding-left:16px;padding-right:16px}.hero-noise{opacity:.6;z-index:0}}.project-body{animation:fadeIn 1.5s ease-in-out;background-color:#101010;color:#f2f2f2;overflow-x:hidden}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.project-heading{color:#f2f2f2;font-family:Poppins,sans-serif;font-size:32px;font-style:normal;font-weight:300;margin-bottom:24px;text-align:center}.section-projects{grid-row-gap:80px;align-items:center;background-image:radial-gradient(circle closest-corner at 50% 0,#f2f2f226,#0000);display:flex;flex-direction:column;padding-bottom:200px;padding-top:172px;position:relative}.overline-info-wrapper{grid-row-gap:24px;animation:fadeInUp 1s ease-out forwards;box-sizing:border-box;color:#f2f2f2;display:flex;flex-direction:column;margin:0 auto;max-width:100%;padding:0 189px}.container-projects{grid-row-gap:48px;align-items:stretch;display:flex;flex-direction:column;flex-wrap:wrap;gap:16px;position:relative;width:882px}.project-card-outline{align-self:stretch;background-color:#f2f2f20a;border-radius:24px;box-shadow:0 40px 80px #00000080;outline:1px solid #f2f2f20d;outline-offset:-1px;padding:8px;position:relative}.container-projects .project-card-outline{animation:slideUp 1s ease-out forwards;animation-delay:.5s;opacity:0;transform:translateY(50px)}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.container-projects .project-card-outline:first-child{animation-delay:.5s}.container-projects .project-card-outline:nth-child(2){animation-delay:.7s}.container-projects .project-card-outline:nth-child(3){animation-delay:.9s}.container-projects .project-card-outline:nth-child(4){animation-delay:1.1s}.container-projects .project-card-outline:nth-child(5){animation-delay:1.3s}.glare-item-top.outer-edge{background-image:linear-gradient(90deg,#0000 5%,#fffc 35%,#fff 50%,#fffc 65%,#0000 95%);inset:0 0 auto;position:absolute;z-index:1}.glare-item-top{height:1px;margin-bottom:-1px}.project-card{grid-row-gap:56px;background-image:linear-gradient(190deg,#252525,#101010);border:1px solid #3d3d3d;border-radius:16px;color:#f2f2f2;display:flex;flex-direction:column;height:588px;overflow:hidden;padding-left:28px;padding-right:28px;padding-top:32px;position:relative;text-decoration:none;transition:border .4s cubic-bezier(.165,.84,.44,1)}.w-inline-block{max-width:100%}a{background-color:#0000;cursor:pointer}.glare-item-top.inner-edge{background-image:linear-gradient(90deg,#0000 20%,#fff 50%,#0000 80%);inset:0 0 auto;position:absolute;z-index:1}.projectcard-top{grid-row-gap:8px;align-items:flex-start;display:flex;flex-direction:column;position:relative;z-index:1}.projectcard-title-row{align-items:center;align-self:stretch;display:flex;justify-content:space-between}.text-projectcard-title{display:flex;font-family:Neue Montreal,sans-serif;font-size:24px;font-weight:500;justify-content:space-between;letter-spacing:0;line-height:100%;text-shadow:0 -2px 10px #fff3}.icon-projectcard-arrow{height:32px}img{border:0;display:inline-block;max-width:100%;vertical-align:middle}.text-projectcard-description{align-self:stretch;color:#f2f2f280;font-family:Neue Montreal,sans-serif;font-size:14px;font-weight:400;letter-spacing:.2px;line-height:20px;padding-right:32px}.text-projectcard-description-company{color:#f2f2f2cc;font-weight:500}.project-thumbnail{align-self:center;box-shadow:0 40px 50px 10px #00000040;max-width:90%;position:relative;z-index:1}.project-card-colour.balanced{background-color:#050505;background-image:radial-gradient(circle at 50% 0,#009affbf,#0000 50%),radial-gradient(circle at 80% 80%,#00000060,#0000 60%),linear-gradient(145deg,#050505,#101010)}.project-card-colour.stadiabt{background-color:#050505;background-image:radial-gradient(circle at 50% 0,#b266ffbf,#0000 50%),radial-gradient(circle at 70% 80%,#000,#0000 60%),radial-gradient(circle at 30% 90%,#000,#0000 55%),radial-gradient(circle at 50% 50%,#1a1a40aa,#0000 65%),linear-gradient(145deg,#050505,#101010)}.project-card-colour.thn{background-color:#050505;background-image:radial-gradient(circle at 50% 0,#ff4500bf,#0000 50%),radial-gradient(circle at 80% 80%,#00000060,#0000 60%),linear-gradient(145deg,#050505,#000)}.project-card-colour{background-image:linear-gradient(#035,#0000);inset:0;opacity:0;position:absolute;transition:opacity .3s ease;z-index:0}.project-card-outline:hover .project-card-colour{opacity:1}.project-card-outline:hover .project-thumbnail{transform:translateY(-10px);transition:transform .3s ease}.project-card-outline:hover .icon-projectcard-arrow{transform:translateX(5px);transition:transform .3s ease}.projects-guide{color:#f2f2f299;font-size:.9rem;margin-top:2rem;padding:0 1rem;text-align:center}.projects-guide code{background-color:#333;border-radius:4px;font-family:Courier New,monospace;padding:2px 6px}@media screen and (max-width:991px){.section-projects{padding:165px 24px 24px}.container-projects{width:auto}.section-projects{align-items:stretch;padding-left:48px;padding-right:48px}.overline-info-wrapper{padding:0 32px}.text-hero.info-hero{font-size:36px;line-height:120%}.text-hero{font-size:8.2vw}}@media screen and (max-width:768px){.section-projects{padding:140px 16px 16px}.container-projects{align-items:center;flex-direction:column;gap:16px}.project-card{height:auto;padding:16px}.project-thumbnail{max-width:100%}.container-projects{width:auto}.text-hero.info-hero{font-size:24px;line-height:130%;text-align:center}.text-hero{font-size:8.4vw;letter-spacing:-1.5px}.overline-info-wrapper{align-items:center;text-align:center}.container-projects .project-card-outline{animation:slideUp 1s ease-out forwards;animation-delay:.5s}.project-card-colour{opacity:1!important}}@media screen and (max-width:479px){.overline-info-wrapper{grid-row-gap:2vh;align-items:flex-start;display:flex;flex-direction:column;padding:0 16px}.overline-wrapper{grid-column-gap:10px}.text-projectpage-overline{font-size:9px}.text-hero.info-hero{font-size:18px;line-height:140%}.section-projects{padding:120px 8px 8px}.project-card{padding:12px}}@media screen and (min-width:992px){.overline-info-wrapper{margin:0 auto;max-width:882px;padding:0}}body.page-loaded{animation:fadeIn 1.5s ease-in-out}.footer{animation:fadeIn 1s ease-in-out;box-sizing:border-box;color:#ccc;flex-shrink:0;font-family:Spacegrotesk,sans-serif;max-height:280px;overflow:visible;padding:3rem 1.5rem}.footer-container-large{margin:0 auto;max-width:80em;padding:0 1em}.footer-top{align-items:center;display:flex;justify-content:center;margin-bottom:3em;opacity:0;padding:1em 0;text-align:center;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.footer-text-size-large-space{color:#fff;font-size:1.9em;line-height:1.5;max-width:30em;text-shadow:2px 2px 10px #0000004d}.footer-highlight{-webkit-background-clip:text;background-clip:text;color:#fbf4e6;font-family:Playfair Display,serif;font-style:italic;position:relative;text-shadow:0 4px 6px #0057ff26,0 -4px 6px #ff5a001a,0 0 20px #ffffff40;transition:color .3s ease}.footer-highlight:before{background-color:#fbf4e6;bottom:-4px;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:bottom right;transition:transform .3s ease-out;width:100%}.footer-highlight:hover:before{transform:scaleX(1);transform-origin:bottom left}.footer-grid{display:flex;gap:4em;justify-content:center;margin-bottom:2em}.footer-col{flex:1 1;margin:0 1em;opacity:0;text-align:center;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.footer-col.visible{opacity:1;transform:translateY(0)}.footer-col:first-child{animation-delay:0s}.footer-col:nth-child(2){animation-delay:.2s}.footer-col:nth-child(3){animation-delay:.4s}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.footer-heading{color:#fff;font-size:1.2em;margin-bottom:1em;opacity:0;text-transform:uppercase;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.footer-heading.visible{opacity:1;transform:translateY(0)}.footer-link{color:#ccc;display:block;font-size:1.1em;margin-bottom:1em;position:relative;text-decoration:none;transition:color .3s ease,opacity .3s ease}.footer-col .footer-link:hover{color:#fbf4e6;opacity:1!important}.footer-col .footer-link:not(:hover){opacity:.5}.footer-col .footer-link:hover~.footer-link,.footer-col:first-child .footer-link:hover~.footer-link{color:#888;opacity:.5}.footer-col .footer-link:hover{color:#fbf4e6!important}.footer-col:nth-child(2) .footer-link:hover{color:#fbf4e6}.footer-col:nth-child(2) .footer-link:hover~.footer-link{color:#888;opacity:.5}.footer-bottom{color:#999;display:flex;font-size:1em;justify-content:center;opacity:.75;padding:1em 0;transition:opacity .6s ease-out,transform .6s ease-out}.footer-bottom,.footer-name-banner{text-align:center;transform:translateY(20px)}.footer-name-banner{-webkit-background-clip:text;background-clip:text;color:#fbf4e694;font-size:7vw;font-weight:900;letter-spacing:.1em;line-height:1;margin:0;opacity:0;text-shadow:0 4px 6px #0057ff26,0 -4px 6px #ff5a001a,0 0 20px #ffffff40;text-transform:uppercase;transition:color .3s ease;transition:opacity .6s ease-out,transform .6s ease-out;width:100%}.banner{height:400px;margin-top:-50px;overflow:hidden;position:relative}.product{bottom:170px;transition:.7s;width:500px;z-index:2}.product,.product .soda{left:50%;position:absolute;transform:translateX(-50%)}.product .soda{bottom:0}.soda{aspect-ratio:1/2;background:var(--url) 0,url(https://res.cloudinary.com/dcf0cpuqf/image/upload/v1734447236/mockup_rmuy1a.png) 0 0;background-blend-mode:multiply;background-size:auto 100%;-webkit-mask-image:url(https://res.cloudinary.com/dcf0cpuqf/image/upload/v1734447236/mockup_rmuy1a.png);mask-image:url(https://res.cloudinary.com/dcf0cpuqf/image/upload/v1734447236/mockup_rmuy1a.png);-webkit-mask-size:auto 100%;mask-size:auto 100%;transition:.8s;width:100px}.soda:nth-child(2){opacity:0}.product:hover{bottom:300px}.product:hover .soda:nth-child(2){background-position-x:500px;opacity:1}.product:hover .soda:first-child{background-position-x:500px;opacity:0}.rock{inset:0 0 0 0;pointer-events:none;position:absolute;width:100%}.rock img:first-child{bottom:30px;height:100px;left:50%;position:absolute;transform:translateX(-50%);transition:.7s;z-index:1}.banner:has(.product:hover) .rock img:first-child{transform:translateX(-50%) translateY(50px)}@media screen and (max-width:1023px){.soda{width:400px}}@media screen and (max-width:767px){.soda{width:250px}.footer-grid{flex-direction:column;text-align:center}.footer-col{margin-bottom:2em}.footer-text-size-large-space{font-size:1.2em}.footer-heading{font-size:1.1em}}@keyframes fadeInSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.footer-bottom.visible,.footer-name-banner.visible,.footer-top.visible{animation:fadeInSlideUp 1s ease-out forwards;opacity:1;transform:translateY(0)}.footer-arrow-indicator{border-bottom:2px solid #fbf4e6;border-left:2px solid #fbf4e6;height:20px;left:13%;opacity:.8;position:absolute;top:-13px;transform:translateX(-50%) rotate(-103deg);transition:transform .3s ease-in-out,opacity .3s ease-in-out;width:20px}.welcome-screen{align-items:center;background-color:#101010;display:flex;height:100vh;justify-content:center;left:0;overflow:hidden;position:fixed;top:0;width:100vw;z-index:9999}.welcome-screen:before{background-image:radial-gradient(circle closest-corner at 50% 0,#f2f2f226,#0000);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.greeting-content{position:relative;text-align:center;z-index:1}#greeting{color:#f2f2f2;font-family:Playfair Display,serif;font-size:clamp(3rem,8vw,6rem);font-weight:600;margin:0;opacity:1;text-shadow:0 4px 8px #0057ff33,0 -4px 8px #ff5a0026,0 0 20px #787575c3;transform:translateY(0);transition:all .3s ease-in-out}#animation-container{transition:all 1s ease-in-out}#animation-container.final{opacity:0;transform:scale(.95)}@media (max-width:768px){#greeting{font-size:clamp(2.5rem,10vw,4rem)}}@media (max-width:480px){#greeting{font-size:clamp(2rem,12vw,3rem)}}@media (prefers-reduced-motion:reduce){#animation-container,#greeting{transition:none}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Neue Montreal,sans-serif;font-size:14px;line-height:20px;margin:0;min-height:100vh;overflow-x:hidden}.body,body{background-color:#101010;color:#f2f2f2}body::-webkit-scrollbar{height:10px;width:10px}body::-webkit-scrollbar-thumb{background:linear-gradient(160deg,#3c3c3c,#2a2a2a);border:2px solid #1a1a1a;border-radius:20px;box-shadow:inset 0 0 4px #0009,0 1px 1px #ffffff0d;-webkit-transition:background .3s ease,box-shadow .3s ease;transition:background .3s ease,box-shadow .3s ease}body::-webkit-scrollbar-thumb:hover{background:linear-gradient(160deg,#505050,#3a3a3a);box-shadow:inset 0 0 6px #00000080,0 2px 4px #ffffff0d}body::-webkit-scrollbar-track{background:#121212;border-radius:20px;box-shadow:inset 0 0 6px #ffffff08}*{scrollbar-color:#3c3c3c #121212;scrollbar-width:thin}.transitioning{transform:translateY(-10px)}.gradient{background-image:radial-gradient(circle closest-corner at 50% 0,#f2f2f226,#0000);height:100vh;left:0;position:absolute;top:0;width:100vw}
/*# sourceMappingURL=main.c2a9dfbf.css.map*/