:root{font-family:Segoe UI,sans-serif;color:#353535;line-height:1.5;font-weight:400;--mainColor: #29478c;--backgroundColor: #f8f8f8}*{box-sizing:border-box}html,body,#root{height:100%}html{scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:hidden;background-color:var(--backgroundColor)}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}.page{width:100%}.cursor-dot{position:fixed;left:0;top:0;width:1rem;height:1rem;border-radius:50%;background:var(--mainColor);pointer-events:none;z-index:9999;opacity:0;transform:translate(-100px,-100px);margin-left:-.3rem;margin-top:-.3rem}.sections{width:80%;margin:0 auto;padding:6vh 0 0}.navbar{display:flex;align-items:center;justify-content:space-between;gap:2rem;width:80%;margin:0 auto;padding:3vh 0;background:transparent;position:sticky;top:0;z-index:10;color:var(--mainColor)}.navbar-scrolled{width:fit-content;margin-left:auto;margin-right:3%;padding:3vh 0 0}.navbar-scrolled-light,.navbar-scrolled-light .navbar-link,.navbar-scrolled-light .navbar-brand{color:#fff}.navbar-brand{font-size:1.1vw;font-weight:700;letter-spacing:.04em}.navbar-links{display:flex;align-items:center;gap:3vw}.navbar-link{font-size:1.1vw;font-weight:500}.navbar-scrolled .navbar-links{flex-direction:column;align-items:flex-end;text-align:right;gap:.3vh}.section-content{width:100%}.about-hero{min-height:auto;padding-top:4rem;padding-bottom:2rem}.about-page{display:flex;align-items:center;justify-content:center;min-height:100vh;max-height:100vh;overflow:hidden}.about-layout{max-width:56rem}.about-copy h1{max-width:12ch}.about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.about-card{padding:1.75rem;border-radius:1.5rem;background:#ffffffb8;border:1px solid rgba(19,34,56,.08);box-shadow:0 16px 40px #13223814}.about-timeline-shell{max-width:74rem}.about-copy-wide{max-width:44rem;margin-bottom:3rem}.about-journey{--about-journey-rail-left: 1.2vw;--about-journey-node-width: 10vw;--about-journey-node-core-size: 3vh;position:relative;display:flex;flex-direction:column;padding-left:5.85vw;margin:0 8vw}.about-journey-rail{position:absolute;left:var(--about-journey-rail-left);top:1.7vh;bottom:1.7vh;width:.2vw;background:linear-gradient(180deg,#29478c38,#29478ceb)}.about-journey-row{position:relative;display:grid;grid-template-columns:45vw minmax(0,1fr);align-items:center;gap:1.5rem}.about-journey-node{position:absolute;left:-13.8vw;top:50%;transform:translateY(-50%);z-index:1;display:inline-flex;flex-direction:row-reverse;align-items:center;justify-content:flex-start;gap:.55rem;width:var(--about-journey-node-width);color:#132238}.about-journey-node-core{width:var(--about-journey-node-core-size);aspect-ratio:1 / 1;border-radius:50%;border:.3vw solid rgba(41,71,140,.96);background:#fff;box-shadow:0 0 0 .3vw #29478c14}.about-journey-node-year{font-size:1vw;font-weight:700;letter-spacing:.04em;color:#132238b3}.about-journey-card{width:50vw;text-align:left;padding:.5vh .5vw}.about-journey-card h2{margin:0 0 .8vh;font-size:2vw;color:#132238}.about-journey-card .section-copy{margin:0;color:#132238c7}.about-journey-card-year{margin:2vh 0 .5vh;font-size:1vw;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hero{min-height:100vh}.hero-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(14vw,.7fr);min-height:calc(100vh - 7rem);align-items:center;align-content:center;gap:4rem}.hero-copy{max-width:60vw}#contact .section-content{display:flex;flex-direction:column;align-items:flex-end;gap:.75rem}#contact h1,#contact p{text-align:right}.contact-email-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;width:min(100%,28rem);min-height:18rem;padding:1.5rem;border-radius:1.5rem;background:#ffffffd6;border:1px solid rgba(19,34,56,.08);box-shadow:0 18px 40px #13223814;text-align:center}.contact-email-label{margin:0;font-size:.9rem;font-weight:700;color:#132238;letter-spacing:.04em;text-transform:uppercase}.contact-email-link{color:var(--mainColor);font-size:1.7vw;font-weight:700;line-height:1.2;word-break:break-word}.hero-lead{font-size:1.5vw;line-height:1.45}.temperature-tooltip{position:relative;display:inline-flex;align-items:center}.temperature-tooltip-bubble{position:absolute;left:100%;top:calc(100% + .35rem);transform:translate(.35rem) translateY(0);padding:.55rem .8rem;border-radius:.8rem;background:#132238eb;color:#fff;font-size:.82rem;line-height:1.2;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}.temperature-tooltip:hover .temperature-tooltip-bubble,.temperature-tooltip:focus-within .temperature-tooltip-bubble{opacity:1;transform:translate(.35rem) translateY(0)}.hero-facts{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.hero-pill{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.6rem 1rem;border-radius:50%;background:#13223814;border:1px solid rgba(19,34,56,.1);font-size:.92rem;font-weight:600;color:#132238}.hero-visual{display:flex;justify-content:flex-end}.hero-portrait-frame{width:min(100%,28rem);padding:1rem;border-radius:2rem;background:linear-gradient(160deg,#ffffffe6,#dfe8f4e6);box-shadow:0 24px 60px #13223829}.hero-portrait{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:1.4rem}.hero-portrait-caption{display:flex;justify-content:space-between;gap:1rem;padding:.9rem .25rem .1rem;font-size:.9rem;color:#132238c7}.horizontal-showcase{position:relative;width:100vw;height:100vh;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);overflow:hidden}.horizontal-track{display:grid;grid-auto-flow:column;grid-auto-columns:100vw;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.horizontal-track::-webkit-scrollbar{display:none}.horizontal-panel{min-height:100vh;position:relative;scroll-snap-align:start;display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;justify-content:space-between;padding:4vh 4vw 10vh}.horizontal-panel-header{width:100%}.horizontal-panel-title{margin:0;color:#fff;font-size:3vw;line-height:1}.project-carousel{--project-carousel-height: 110svh;--project-carousel-caption-height: 5.5rem;display:flex;align-items:center;flex-direction:column;margin-top:.5rem;height:var(--project-carousel-height)}.project-carousel-stage{position:relative;flex:0 0 auto;height:calc(var(--project-carousel-height));width:min(100%,calc((var(--project-carousel-height) - var(--project-carousel-caption-height)) * 1.75));max-width:100%;min-height:0}.project-carousel-slot{position:absolute;border:0;padding:0;background:transparent;cursor:pointer;transition:transform .26s ease,filter .26s ease,opacity .26s ease,box-shadow .26s ease}.project-carousel-slot:hover,.project-carousel-slot:focus-visible{transform:translateY(-.3rem)}.project-carousel-slot-main{left:1%;top:6%;z-index:4;width:58%;box-shadow:0 28px 60px #0f172a47}.project-carousel-slot-back{left:57%;top:0;z-index:1;width:24%;filter:drop-shadow(0 0 20px rgb(80,80,80))}.project-carousel-slot-right{right:0;top:14%;z-index:2;width:30%;filter:drop-shadow(0 0 20px rgb(80,80,80))}.project-carousel-slot-bottom{right:4%;bottom:36%;z-index:4;width:38%;filter:drop-shadow(0 0 20px rgb(80,80,80))}.project-carousel-image{display:block;width:100%;height:auto}.project-carousel-caption{position:absolute;color:#fffffff5;text-align:left;width:40vw}.project-carousel-caption-title{margin:0 0 .2rem;font-size:1vw;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.project-carousel-caption-text{margin:0;font-size:1vw;line-height:1.45;color:#ffffffd1}.hotspot-scene{margin-left:4vw;--hotspot-scene-height: 70svh;margin-top:4vh;display:flex;justify-content:center;align-items:center}.hotspot-scene-stage{position:relative;height:var(--hotspot-scene-height);width:min(100%,calc(var(--hotspot-scene-height) * 1.7778));max-width:100%;aspect-ratio:16 / 9}.hotspot-scene-main-image{position:absolute;left:50%;top:52%;transform:translate(-39%,-55%);width:136%;height:auto;display:block;filter:drop-shadow(0 18px 42px rgba(15,23,42,.24))}.hotspot-scene-item{position:absolute;left:var(--hotspot-x);top:var(--hotspot-y);width:var(--hotspot-width);border:0;padding:0;background:transparent;cursor:pointer;transform:translate(-50%,-50%)}.hotspot-scene-thumb{display:block;width:100%;height:auto;filter:drop-shadow(0 12px 28px rgba(15,23,42,.2));transition:transform .18s ease,filter .18s ease}.hotspot-scene-item:hover .hotspot-scene-thumb,.hotspot-scene-item:focus-visible .hotspot-scene-thumb{transform:translateY(-.2rem) scale(1.02);filter:drop-shadow(0 18px 32px rgba(15,23,42,.28))}.hotspot-scene-copy{position:absolute;top:50%;width:18vw;max-height:45vh;padding:1vh;background:#ffffff24;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;opacity:0;pointer-events:none;transform:translateY(-50%);transition:opacity .18s ease,transform .18s ease}.hotspot-scene-copy-left{right:calc(100% + .7vw);text-align:right;width:17vw!important}.hotspot-scene-copy-right{left:calc(100% + 1vw);text-align:left}.hotspot-scene-item:hover .hotspot-scene-copy,.hotspot-scene-item:focus-visible .hotspot-scene-copy{opacity:1}.hotspot-scene-item:hover .hotspot-scene-copy-left,.hotspot-scene-item:focus-visible .hotspot-scene-copy-left{transform:translateY(-50%) translate(-.25rem)}.hotspot-scene-item:hover .hotspot-scene-copy-right,.hotspot-scene-item:focus-visible .hotspot-scene-copy-right{transform:translateY(-50%) translate(.25rem)}.hotspot-scene-copy-title{display:block;margin-bottom:.25rem;font-size:1vw;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.hotspot-scene-copy-text{display:block;font-size:1vw;line-height:1.4;color:#ffffffd6}.horizontal-panel-footer{position:absolute;left:4vw;right:4vw;bottom:33.5vh;display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:12vh;z-index:2}.horizontal-panel-tags{color:#fff;font-size:1vw;font-weight:500;margin:0;max-width:55%}.horizontal-panel-meta{color:#ffffffe6;text-align:right;font-size:1vw;margin:0;white-space:nowrap}.horizontal-panel-blue{background:#87aa8c}.horizontal-panel-red{background:#3736a1}.horizontal-panel-green{background:#1b1b1b}.horizontal-dots{position:absolute;left:50%;bottom:6vh;transform:translate(-50%);display:flex;align-items:center;gap:.7vw;z-index:3;background:transparent;pointer-events:none}.horizontal-dots .horizontal-dot{pointer-events:auto}.horizontal-dot{display:inline-flex;align-items:center;justify-content:flex-start;gap:.6vw;width:2vw;height:2vw;aspect-ratio:1 / 1;padding:0 .9vw;border:0;border-radius:999px;background:#ffffff73;color:#132238;cursor:pointer;overflow:hidden;transition:width .26s ease,background-color .22s ease,transform .22s ease,box-shadow .22s ease}.horizontal-dot:hover,.horizontal-dot:focus-visible{width:10vw;background:#ffffffe0;transform:translateY(-.15vw);box-shadow:0 .8vw 1.6vw #1322381f}.horizontal-dot-active{background:#ffffffe0}.horizontal-dot-core{width:.7rem;height:.7rem;min-width:.7rem;border-radius:50%;background:#132238}.horizontal-dot-label{display:inline-flex;align-items:center;justify-content:center;width:100%;text-align:center;font-size:1vw;font-weight:600;white-space:nowrap;opacity:0;transform:translate(-.3vw);transition:opacity .2s ease,transform .22s ease}.horizontal-dot:hover .horizontal-dot-label,.horizontal-dot:focus-visible .horizontal-dot-label{opacity:1;transform:translate(0)}.eyebrow{margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;color:#8a5a00}h1{font-size:6vw;line-height:.95;max-width:10ch;margin-bottom:1rem}h2{font-size:clamp(2rem,5vw,3.5rem);line-height:1;margin-bottom:0}.intro,.section-copy{max-width:50vw;font-size:.8vw}.section-heading{margin-bottom:1.5rem}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}.card{padding:1.4rem;border-radius:1.25rem;background:#ffffffb8;border:1px solid rgba(19,34,56,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.card h3{margin-bottom:.75rem}.card span{display:inline-block;margin-top:1rem;font-size:.9rem;color:#5b6b7f}
