.navbar{height:7VH;padding:0 32px;display:flex;align-items:center;justify-content:space-between;background:#fff;box-shadow:0 4px 20px #0000000d;position:relative;z-index:50}.nav-logo{display:flex;align-items:center}.logo{height:4VH;width:auto}.nav-right{display:flex;gap:1.5em;align-items:center}.nav-links{display:flex;font-size:.8em;gap:1em}.nav-links a:hover{color:var(--accent)}.nav-links a{text-decoration:none;color:#000}.nav-links a.active{text-decoration:underline;color:var(--bg-main)}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:#fff;display:flex;flex-direction:column;gap:24px;padding:24px 32px;transform:translateY(-10px);opacity:0;pointer-events:none;transition:transform .25s ease,opacity .25s ease;box-shadow:0 20px 40px #00000026}.mobile-menu.show{transform:translateY(0);opacity:1;pointer-events:auto}.mobile-menu a{font-size:.8em;color:#111}.mobile-menu a:hover{color:var(--bg-main)}.mobile-menu a:active{color:var(--bg-main);text-decoration:underline}.hamburger-wrapper{display:none}.mute-btn{height:2em;width:2em;background:var(--bg-main);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .25s ease,transform .2s ease}.mute-btn svg{font-size:.8em;transition:transform .2s ease,opacity .2s ease}.mute-btn:hover{background:var(--accent);transform:scale(1.1)}.mute-btn.unmuted{background:var(--bg-main)}.mute-btn.muted{background:gray}@media(max-width:768px){.navbar{height:60px;padding:0 12px}.logo{height:40px;width:auto}.nav-links{display:none}.hamburger-wrapper{display:flex;align-items:center}}.about-page{max-width:900px;margin:0 auto;padding:2.5em 24px;text-align:center}.about-text h1{font-family:var(--font-title);font-size:1.3em;margin-bottom:1.3em}.about-text p{font-family:var(--font-body);line-height:1.7;margin:24px 0;color:#222}.link{font-family:var(--font-body);text-decoration:underline;color:inherit}.link:hover{color:var(--accent)}.team-section{margin-top:3em;margin-bottom:3em}.team-section h2{font-family:var(--font-title);font-size:1.3em;margin-bottom:2em}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:64px 32px;justify-items:center}.team-member{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;color:inherit}.team-member.clickable{cursor:pointer}.team-member.clickable .team-name{text-decoration:underline}.team-member.clickable:hover{transform:translateY(-2px);color:var(--accent)}.team-member.clickable:hover .team-avatar{box-shadow:0 8px 20px #00000026}.team-avatar{width:140px;height:140px;border-radius:50%;object-fit:cover;background:#ddd;margin-bottom:.6em}.team-name{font-family:var(--font-body);font-size:.6em}@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.team-grid{grid-template-columns:1fr}}.projects-page{max-width:1200px;margin:0 auto;padding:2.5em 32px;text-align:center}.projects-title{font-family:var(--font-title);font-size:1.4em;margin-bottom:2.75em}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2.2em}.project-card{position:relative;border-radius:1.2em;overflow:hidden;background:#fff;box-shadow:0 10px 25px #00000014,0 2px 8px #0000000a;transition:transform .3s ease,box-shadow .3s ease}.project-card.clickable{cursor:pointer}.project-card.clickable:hover{transform:translateY(-6px);box-shadow:0 18px 40px #0000001f,0 6px 16px #00000014}.project-image{width:100%;height:auto;display:block}@media(max-width:900px){.projects-grid{grid-template-columns:1fr}}.contact-page{max-width:900px;margin:2em auto;padding:2.5em;text-align:center}.contact-title{font-family:var(--font-title);font-size:1.3em;margin-bottom:1.6em}.contact-text p{font-family:var(--font-body);line-height:1.7;margin:.8em 0;color:#222}.contact-links{margin:1.9em 0;display:flex;flex-direction:column;gap:20px;align-items:center}.contact-link{font-family:var(--font-body);font-size:1.2em;text-decoration:none;color:#1b5e20;border-bottom:1px solid transparent;transition:border-color .2s ease}.contact-link:hover{border-bottom-color:#1b5e20}:root{--font-body: "Alegreya", serif;--font-title: "Alegreya SC", serif;--bg-light: #ffffff;--bg-main: #8BD16E;--accent: #d6b65c;--text: #000000;--panel-bg: #ffffff;--hero-x: 30VW;--hero-y: 50VH;--hero-size: 60VH;--mobile-y: 10VH;--mobile-height: 35VH;--bird-height: 90VH;--ease-cinematic: cubic-bezier(.22, 1, .36, 1);--ease-soft-out: cubic-bezier(.16, 1, .3, 1);font-size:calc(12px + .8vw)}body{margin:0;background:#fff;color:var(--text);font-family:var(--font-body)}.app{height:100vh;width:100vw;overflow:hidden}.page-scroll{height:100vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.cloud-overlay{position:absolute;inset:0;z-index:50;pointer-events:auto}.cloud-hero{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:60;transition:transform 1.2s ease,opacity .8s ease;transition-delay:.1s}.cloud-overlay.revealed .cloud-hero{transform:translateY(20%);pointer-events:none;opacity:0}.cloud-overlay h2{font-family:var(--font-title);font-size:2em;text-align:center}.cloud{position:absolute;top:0;height:100%;width:auto}.cloud img{height:100%;width:auto;transition:transform 10s var(--ease-cinematic),opacity 1.2s ease;transform:translate(0)}.cloud-left{filter:blur(1px);transition-delay:0s;animation:cloud-drift-left 18s ease-in-out infinite alternate;transform:translate(-20%,-10%)}.cloud-right{filter:blur(2px);transition-delay:.12s;animation:cloud-drift-right 22s ease-in-out infinite alternate;transform:translate(30%,10%)}.cloud-overlay.revealed .cloud-left img{transform:translate(-110%);opacity:0}.cloud-overlay.revealed .cloud-right img{transform:translate(110%);opacity:0}.cta-button{position:relative;height:fit-content;width:fit-content;padding:14px 28px;font-size:1.2em;background:var(--bg-main);border:none;border-radius:999px;cursor:pointer;transition:transform .3s ease,background .3s ease,box-shadow .3s ease}.cta-button:hover{transform:scale(1.05) translateY(-1px);background:var(--accent);box-shadow:0 8px 20px #0003}@keyframes cloud-drift-left{0%{transform:translateY(-10%) translate(-20%)}to{transform:translateY(-10%) translate(-24%)}}@keyframes cloud-drift-right{0%{transform:translateY(10%) translate(30%)}to{transform:translateY(10%) translate(34%)}}.map-scene{position:relative;height:100vh;overflow:hidden}.map-scene:not(.revealed) .map-wrapper{pointer-events:none}.map-wrapper{flex:1;height:100vh;width:100vw;overflow-y:auto;overflow-x:hidden;background:var(--bg-light);scroll-behavior:smooth;overscroll-behavior:none;-webkit-overflow-scrolling:touch}.map-wrapper.panel-open .map-scroll{overflow-x:hidden}.map-wrapper.panel-open{overflow:hidden}.map-container{display:flex;transition:transform .6s ease,filter .4s ease;transform:scale(.99)}.map-scene.revealed .map-container{transform:scale(1)}.map-scene.revealed .cloud-overlay{pointer-events:none}.map-frame{position:relative;flex-shrink:0}.map{width:100VW;height:auto;display:block}.map.zoomed{filter:grayscale(.4) blur(2px)}.map-text{max-width:900px;font-family:var(--font-body);margin:auto auto 2.5em;padding:2.5em;text-align:center}.map-text h2{font-family:var(--font-title);margin:0;font-size:2em}.bird{position:absolute;cursor:pointer;transition:left .45s ease,top .45s ease,width .45s ease,transform .45s ease,filter .3s ease,opacity .3s ease;z-index:2}.bird:hover{filter:drop-shadow(10px 20px rgba(0,0,0,.2));transform:translateY(-5%) scale(1.05)}.bird.dimmed{pointer-events:none;opacity:0;filter:grayscale(.4) blur(2px)}.bird.active{image-rendering:auto;position:fixed;left:var(--hero-x);top:var(--hero-y);height:var(--hero-size);width:auto;max-width:40vw;object-fit:contain;transform:translate(-50%,-50%);z-index:10;filter:none;opacity:1;pointer-events:none;transition:left .45s ease,top .45s ease,width .45s ease,transform .45s ease}.info-panel-overlay{position:fixed;inset:0;z-index:30}.info-panel-wrapper{pointer-events:auto;position:absolute;max-height:calc(100vh - 200px);top:5em;right:2.5em;width:30vw;gap:20px;animation:slideIn .4s ease;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.info-panel{background:#fff;color:#222;border-radius:16px;padding:1.2em;box-shadow:0 20px 40px #0003;overflow:visible}.info-panel h2{font-family:var(--font-body);font-weight:700;margin:0;font-size:1.25em}.info-panel .latin{font-style:italic;color:#555}.info-panel hr{margin:16px 0;border:none;border-top:1px solid #ddd}.title-row{display:flex;align-items:center;justify-content:space-between}.call-btn{border:none;height:fit-content;width:fit-content;background:var(--bg-main);border-radius:10px;padding:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 8px 20px #0003;transition:background .2s ease,transform .15s ease}.call-btn:hover{background:var(--accent);box-shadow:0 20px 40px #0003}.call-btn.playing{background:#8bcf6a;transform:scale(1.1)}.call-icon{width:64px;height:64px;display:block}.external-link{cursor:pointer;display:block;margin-top:20px;padding:10px 24px;background:var(--bg-main);color:#1a3b1a;font-size:1.25em;text-align:left;border-radius:12px;text-decoration:none;font-weight:600;box-shadow:0 8px 20px #0003;transition:background .2s ease}.external-link:hover{background:var(--accent);color:#000;box-shadow:0 20px 40px #0003}.bird-controls{position:absolute;inset:0;pointer-events:none;z-index:40;touch-action:pan-y}.bird-nav{pointer-events:auto;position:absolute;bottom:2em;width:fit-content;height:fit-content;padding:1em;background-color:var(--bg-main);background-repeat:no-repeat;background-position:center;background-size:1em;box-shadow:0 6px 16px #0003;transition:background .2s ease transform .3 ease}.bird-nav:hover{border:none;transform:scale(1.1);background-color:var(--accent)}.bird-nav.left{left:2em;background-image:url(/assets/icons/arrow-left.svg)}.bird-nav.right{left:4.5em;background-image:url(/assets/icons/arrow-right.svg)}@keyframes slideIn{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}@media(max-aspect-ratio:3/2){.map-wrapper{overflow-y:hidden;overflow-x:hidden;touch-action:pan-y}.map-scroll{overflow-x:hidden;overflow-y:hidden;width:100%;-webkit-overflow-scrolling:touch}.map-wrapper.panel-open .map-scroll{overflow-x:auto}.map-container{width:max-content}.map{height:100vh;width:auto}.lock-scroll{touch-action:none;overflow:hidden!important}.mobile-swipe-zone{display:block;position:fixed;top:var(--mobile-y);left:0;width:100vw;height:var(--mobile-height);z-index:15;touch-action:pan-y}.bird.active{position:fixed;pointer-events:auto;left:50vw;top:var(--mobile-y);height:auto;width:70vw;max-width:none;max-height:var(--mobile-height);transform:translate(-50%)}.info-panel-overlay{align-items:flex-end}.info-panel-wrapper{position:fixed;right:0;left:0;top:calc(var(--mobile-y) + var(--bird-height) + 10VH);bottom:2em;width:90vw;padding:0 16px;animation:slideUp .35s ease}.info-panel{padding:20px;border-radius:18px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.title-row{align-items:flex-start;gap:12px}.call-btn{padding:10px;border-radius:12px}.call-icon{width:36px;height:36px}.external-link{padding:14px 18px;border-radius:14px;margin-top:16px}.bird-nav{top:var(--bird-height)}.bird-nav.left{left:2em}.bird-nav.right{left:auto;right:2em}}@media(min-aspect-ratio:3/2){.mobile-swipe-zone{display:none}}@keyframes slideUp{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}:root{font-family:Alegreya,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-BoldItalic-Ckz7nn-G.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-Black-DcMuBu9Y.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-ExtraBold-BiOPPWV5.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-Bold-BaEIEM9d.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-ExtraBoldItalic-RWJjFKZ2.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-BlackItalic-r5nkRsOY.woff2) format("woff2");font-weight:900;font-style:italic;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-Regular-B7jZ84gD.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-SemiBoldItalic-CXHjjzwY.woff2) format("woff2");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-Italic-Bs26WoS2.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-MediumItalic-B2I9Wo4K.woff2) format("woff2");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-SemiBold-BnqpQ_Kf.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Alegreya;src:url(/assets/Alegreya-Medium-C9BN11Lr.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Alegreya SC;src:url(/assets/AlegreyaSC-BlackItalic-hlkMiEjc.woff2) format("woff2");font-weight:900;font-style:italic;font-display:swap}@font-face{font-family:Alegreya SC;src:url(/assets/AlegreyaSC-Black-BbpM8ZuI.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Alegreya SC;src:url(/assets/AlegreyaSC-ExtraBold-BC0QCcrW.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Alegreya SC;src:url(/assets/AlegreyaSC-ExtraBoldItalic-CPuHcLA6.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Alegreya SC;src:url(/assets/AlegreyaSC-Bold-529G5Np3.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Alegreya SC;src:url(/assets/AlegreyaSC-BoldItalic-B32gArMu.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Alegreya SC;src:url(/assets/AlegreyaSC-Italic-Mf-QN5uC.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Alegreya SC;src:url(/assets/AlegreyaSC-Regular-BHKqkZhh.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Alegreya SC;src:url(/assets/AlegreyaSC-MediumItalic-CJIeLy3H.woff2) format("woff2");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Alegreya SC;src:url(/assets/AlegreyaSC-Medium-DQHtgshG.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
