@font-face{font-family:TT Firs Neue;src:url(/fonts/TTFirsNeue-Light.woff2) format("woff2"),url(/fonts/TTFirsNeue-Light.ttf) format("truetype");font-weight:300;font-display:swap}@font-face{font-family:TT Firs Neue;src:url(/fonts/TTFirsNeue-Regular.woff2) format("woff2"),url(/fonts/TTFirsNeue-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:TT Firs Neue;src:url(/fonts/TTFirsNeue-Medium.woff2) format("woff2"),url(/fonts/TTFirsNeue-Medium.ttf) format("truetype");font-weight:500;font-display:swap}@font-face{font-family:TT Firs Neue;src:url(/fonts/TTFirsNeue-Bold.woff2) format("woff2"),url(/fonts/TTFirsNeue-Bold.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Open Sans;src:url(/fonts/OpenSans-Regular.woff2) format("woff2"),url(/fonts/OpenSans-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Open Sans;src:url(/fonts/OpenSans-Semibold.woff2) format("woff2"),url(/fonts/OpenSans-Semibold.ttf) format("truetype");font-weight:600;font-display:swap}:root{--bg:#0a0a0b;--panel:#121214;--light:#F0F0F1;--red:#9E101C;--red-bright:#c41525;--muted:#7a7a80;--warn:#FFD166;--line:rgba(240,240,241,0.12);--surface:linear-gradient(180deg,rgba(240,240,241,0.045),rgba(240,240,241,0.022));--surface-hover:linear-gradient(180deg,rgba(240,240,241,0.075),rgba(240,240,241,0.04));--edge:inset 0 0 0 1px rgba(240,240,241,0.06);--heading:"TT Firs Neue",sans-serif;--body:"Open Sans",sans-serif}*{margin:0;padding:0;box-sizing:border-box}.site-bg{position:fixed;inset:0;z-index:-1;display:block;width:100%;height:100lvh;pointer-events:none}html{scroll-behavior:smooth;background:var(--bg)}body{color:var(--light);font-family:var(--body);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--heading);overflow-wrap:break-word}a{color:inherit}img{max-width:100%}.wrap{max-width:1400px;margin:0 auto;padding:0 48px}main>.page-transition>section:not(.hero):not(#projects),main>section:not(.hero):not(#projects){max-width:2400px;margin-left:auto;margin-right:auto}.site-header{position:fixed;inset:0 0 auto;z-index:100;background:linear-gradient(rgba(10,10,11,.92),rgba(10,10,11,0));padding:28px 0;transition:background .3s}.site-header .nav{display:flex;justify-content:space-between;align-items:center;gap:24px}.site-header .logo img{height:26px;display:block}.site-header nav ul{display:flex;gap:44px;list-style:none}.site-header nav a{color:var(--light);text-decoration:none;font-family:var(--heading);font-size:14px;letter-spacing:.14em;text-transform:uppercase;opacity:.75;transition:opacity .25s}.site-header nav a.active,.site-header nav a:hover{opacity:1}.btn{display:inline-block;cursor:pointer;border:0;font-family:var(--heading);font-weight:500;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--light);background:var(--red);padding:16px 36px;text-decoration:none;transition:background .25s,transform .25s}.btn:hover{background:var(--red-bright);transform:translateY(-2px)}.btn--ghost{background:transparent;border:1px solid var(--light)}.btn--ghost:hover{background:var(--light);color:var(--bg)}.burger{display:none;background:none;border:0;cursor:pointer;width:44px;height:44px;padding:9px}.burger span{display:block;width:26px;height:2px;background:var(--light);margin:6px 0;transition:transform .3s cubic-bezier(.22,.7,.3,1),opacity .2s ease}.burger.is-active span:first-child{transform:translateY(8px) rotate(45deg)}.burger.is-active span:nth-child(2){opacity:0}.burger.is-active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.hero{position:relative;min-height:min(100svh,1200px);display:flex;align-items:center;padding:120px 0 clamp(48px,5rem,96px);overflow:hidden}.detail-hero .wrap,.hero .wrap{position:relative;z-index:2}.hero-bg{object-fit:cover;width:100%;height:100%;filter:grayscale(.4) brightness(.9);z-index:0}.hero-bg,.hero-overlay{position:absolute;inset:0}.hero-overlay{background:linear-gradient(0deg,rgba(10,10,11,.96) 8%,rgba(10,10,11,.35) 55%,rgba(10,10,11,.55));z-index:1}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--red)}.hero-grid{position:absolute;inset:0;z-index:1;pointer-events:none;background:repeating-linear-gradient(90deg,rgba(240,240,241,.05) 0 1px,transparent 1px 220px),repeating-linear-gradient(180deg,rgba(240,240,241,.04) 0 1px,transparent 1px 180px)}.hero-tag{font-family:var(--heading);font-size:clamp(11px,.9vw,14px);letter-spacing:.3em;color:var(--red-bright);margin-bottom:clamp(12px,1.5rem,24px);animation:fade 1s .2s both}.hero h1,.hero-tag{text-transform:uppercase}.hero h1{font-weight:700;font-size:clamp(52px,8.2vw,128px);line-height:.94;letter-spacing:-.01em;animation:fade 1s .35s both}.hero h1 .stroke{color:transparent;-webkit-text-stroke:1.5px var(--light)}.hero-bottom{display:grid;grid-template-columns:minmax(280px,480px) auto;justify-content:space-between;align-items:center;grid-gap:40px;gap:40px;margin-top:clamp(24px,3rem,48px);animation:fade 1s .5s both}.hero-bottom p{max-width:44ch;color:#c7c7cb}@keyframes fade{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.service-marquee{overflow:hidden;border-bottom:1px solid var(--line);padding:22px 0;white-space:nowrap}.service-marquee-track{display:inline-flex;align-items:center;animation:service-marquee-scroll 28s linear infinite}.service-marquee-item{display:inline-flex;align-items:center;font-family:var(--heading);font-size:15px;letter-spacing:.25em;text-transform:uppercase;color:var(--muted)}.service-marquee-item b{color:var(--red-bright);font-weight:400;margin:0 28px}@keyframes service-marquee-scroll{0%{transform:translateX(0)}to{transform:translateX(calc(-100% / var(--copies, 2)))}}.partners-section{padding:110px 0 100px;overflow:hidden}.partners-label{margin-bottom:34px}.partner-marquee{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;cursor:-webkit-grab;cursor:grab;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0}.partner-marquee::-webkit-scrollbar{display:none}.partner-marquee.is-dragging{cursor:-webkit-grabbing;cursor:grabbing;-webkit-user-select:none;-moz-user-select:none;user-select:none}.partner-marquee:focus-visible{outline:2px solid var(--red-bright);outline-offset:-2px}.partner-marquee-track{display:inline-flex;align-items:center;gap:36px;padding-right:36px}.partner-logo{width:176px;height:64px;flex:0 0 176px;display:grid;place-items:center}.partner-logo img{display:block;width:auto;height:auto;max-width:142px;max-height:44px;object-fit:contain;opacity:.68;filter:grayscale(1) brightness(1.4);transition:opacity .3s,filter .3s}.partner-logo:hover img{opacity:1;filter:grayscale(0) brightness(1.1)}section{padding:130px 0}.sec-label{display:flex;align-items:center;gap:20px;margin-bottom:60px}.sec-label:before{content:"";width:64px;height:3px;background:var(--red)}.sec-label span{font-family:var(--heading);font-size:14px;letter-spacing:.28em;color:var(--muted)}.sec-label span,h2.big{text-transform:uppercase}h2.big{font-weight:700;font-size:clamp(38px,5vw,72px);line-height:1.02;margin-bottom:64px}.stats{display:grid;grid-template-columns:1.25fr 1fr;grid-auto-rows:1fr;grid-gap:8px;gap:8px}.stat{background:var(--surface);box-shadow:var(--edge);padding:56px 48px;border-top:3px solid var(--red)}.stat--lead{grid-row:1/3;display:flex;flex-direction:column;justify-content:flex-end}.stat--lead b{font-size:clamp(64px,9vw,150px)}.stat b{font-weight:700;font-size:clamp(44px,5vw,80px);line-height:1}.stat b,.stat span{display:block;font-family:var(--heading)}.stat span{margin-top:12px;color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-size:13px}.proj{position:relative;display:block;text-decoration:none;color:var(--light);margin-bottom:8px;overflow:hidden;background:var(--panel)}#projects>.proj{width:min(100%,calc(820px * 21 / 9));margin-inline:auto;height:auto;min-height:0;max-height:820px;aspect-ratio:21/9}.proj img{width:100%;height:100%;object-fit:cover;filter:grayscale(.9) brightness(.75);transition:filter .6s,transform 1.2s cubic-bezier(.2,.7,.2,1)}.proj:hover img{filter:grayscale(0) brightness(.85);transform:scale(1.03)}.proj-info{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:28px 48px;background:linear-gradient(transparent,rgba(10,10,11,.85))}.proj-info h3{font-weight:500;font-size:clamp(22px,2.4vw,34px);line-height:1.15;letter-spacing:.02em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.proj-info h3,.proj-info span{text-transform:uppercase;overflow:hidden}.proj-info span{font-size:12px;letter-spacing:.18em;color:#c7c7cb;white-space:nowrap;text-overflow:ellipsis;max-width:45%}.proj-info span,.proj-num{font-family:var(--heading)}.proj-num{position:absolute;top:32px;right:48px;font-weight:300;font-size:80px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(240,240,241,.5)}.proj-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.proj-grid .proj{width:100%;height:48vh;min-height:360px;max-width:none;margin-left:0;margin-right:0;margin-bottom:0}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:48px}.filters a{display:inline-flex;align-items:center;min-height:44px;font-family:var(--heading);font-size:13px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:var(--muted);border:1px solid var(--line);padding:10px 24px;transition:color .25s,border-color .25s}.filters a.active,.filters a:hover{color:var(--light);border-color:var(--red)}.detail-hero{position:relative;min-height:70vh;display:flex;align-items:flex-end;padding-bottom:64px;overflow:hidden}.detail-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px;margin:64px 0}.fact{background:var(--surface);box-shadow:var(--edge);padding:36px 32px;border-top:3px solid var(--red)}.fact-num{font-weight:700;color:var(--red-bright);font-size:15px;letter-spacing:.2em;margin-bottom:14px}.fact-label,.fact-num{font-family:var(--heading)}.fact-label{color:var(--muted);font-size:13px;letter-spacing:.14em;text-transform:uppercase}.fact-value{font-family:var(--heading);font-weight:500;font-size:20px;margin-top:4px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.gallery-item{position:relative;display:block;overflow:hidden;padding:0;border:0;aspect-ratio:16/10;background:var(--panel);color:var(--light);cursor:zoom-in}.gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease,filter .4s ease}.gallery-item:after{content:"";position:absolute;inset:0;border:1px solid transparent;transition:border-color .3s}.gallery-item:hover img{transform:scale(1.025);filter:brightness(.78)}.gallery-item:hover:after{border-color:var(--red)}.gallery-item:focus-visible{outline:2px solid var(--red-bright);outline-offset:3px}.gallery-item-index{position:absolute;right:22px;bottom:18px;z-index:1;font-family:var(--heading);font-size:13px;letter-spacing:.18em;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}.gallery-item:focus-visible .gallery-item-index,.gallery-item:hover .gallery-item-index{opacity:1;transform:none}.lightbox{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;width:100vw;height:100vh;height:100dvh;max-height:100dvh;overflow:hidden;background:repeating-linear-gradient(180deg,rgba(158,16,28,.07) 0,rgba(158,16,28,.07) 1px,transparent 0,transparent 48px),rgba(5,5,6,.98);animation:lightbox-in .24s ease both;touch-action:pan-y}@keyframes lightbox-in{0%{opacity:0}}.lightbox-topbar{flex:0 0 auto;min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:18px 32px;border-bottom:1px solid var(--line)}.lightbox-project{font-size:13px;letter-spacing:.18em;text-transform:uppercase}.lightbox-counter,.lightbox-project{display:block;font-family:var(--heading)}.lightbox-counter{margin-top:4px;color:var(--red-bright);font-size:12px;letter-spacing:.2em}.lightbox-arrow,.lightbox-close{border:1px solid var(--line);background:rgba(10,10,11,.72);color:var(--light);cursor:pointer;transition:color .25s,background .25s,border-color .25s}.lightbox-arrow:hover,.lightbox-close:hover{color:#fff;background:var(--red);border-color:var(--red)}.lightbox-arrow:focus-visible,.lightbox-close:focus-visible{outline:2px solid var(--red-bright);outline-offset:3px}.lightbox-close{width:52px;height:52px;flex:0 0 52px;font-family:var(--heading);font-size:34px;font-weight:300;line-height:1}.lightbox-stage{position:relative;flex:1 1 auto;min-height:0;width:100%;display:flex;align-items:center;justify-content:center;padding:24px 96px;overflow:hidden}.lightbox-image{display:block;width:auto;height:auto;max-width:min(100%,calc(100vw - 192px));max-height:min(100%,calc(100dvh - 140px));object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:lightbox-image-in .28s ease both}@keyframes lightbox-image-in{0%{opacity:0;transform:scale(.985)}}.lightbox-image-preload{position:absolute;top:0;left:0;width:1px;height:1px;opacity:0;pointer-events:none}.lightbox-arrow{position:absolute;top:50%;z-index:2;width:60px;height:60px;transform:translateY(-50%);font-size:24px}.lightbox-arrow--previous{left:28px}.lightbox-arrow--next{right:28px}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.svc{background:var(--surface);box-shadow:var(--edge);padding:56px 48px;border-top:3px solid transparent;transition:border-color .3s,background .3s}.svc:hover{border-top-color:var(--red);background:var(--surface-hover)}.svc-num{font-family:var(--heading);font-weight:300;font-size:15px;letter-spacing:.2em;color:var(--red-bright);margin-bottom:24px}.svc h3{font-weight:500;font-size:27px;text-transform:uppercase;margin-bottom:16px}.svc p{color:var(--muted);font-size:15px}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.member{position:relative;overflow:hidden;background:var(--panel)}.member img{width:100%;height:auto;aspect-ratio:3/4.2;object-fit:cover;display:block;filter:grayscale(1) brightness(.8);transition:filter .6s,transform 1.2s cubic-bezier(.2,.7,.2,1)}.member:hover img{filter:grayscale(0) brightness(.9);transform:scale(1.03)}.member-placeholder{width:100%;aspect-ratio:3/4.2;display:flex;align-items:center;justify-content:center;font-family:var(--heading);font-weight:700;font-size:56px;color:rgba(240,240,241,.14)}.member-info{position:absolute;left:0;right:0;bottom:0;padding:24px;background:linear-gradient(transparent,rgba(10,10,11,.9))}.member-info h4{font-weight:500;font-size:17px}.member-info p{color:#b3b3b8;font-size:13px}.dept-title{font-family:var(--heading);font-weight:500;font-size:22px;text-transform:uppercase;letter-spacing:.08em;margin:72px 0 28px;display:flex;align-items:center;gap:18px}.dept-title:after{content:"";flex:1 1;height:1px;background:var(--line)}.project-block{margin-top:96px}.project-block .sec-label{margin-bottom:36px}.construction-stage .dept-title{margin-top:0}.construction-stage+.construction-stage{margin-top:72px}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.value-card{background:var(--surface);box-shadow:var(--edge);padding:40px 36px;border-top:3px solid transparent;transition:border-color .3s}.value-card:hover{border-top-color:var(--red)}.value-card h4{font-weight:500;font-size:19px;text-transform:uppercase;margin-bottom:10px}.value-card p{color:var(--muted);font-size:14px}.cta{background:var(--red);position:relative;overflow:hidden}.cta:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(180deg,rgba(0,0,0,.14) 0,rgba(0,0,0,.14) 2px,transparent 0,transparent 42px);pointer-events:none}.cta .wrap{position:relative;display:grid;grid-template-columns:1.1fr 1fr;grid-gap:80px;gap:80px}.cta h2{font-weight:700;font-size:clamp(40px,5.5vw,80px);text-transform:uppercase;line-height:.98}.cta p{margin-top:28px;color:rgba(240,240,241,.85);max-width:40ch}.lead-form label{display:block;font-family:var(--heading);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:rgba(240,240,241,.7);margin:26px 0 8px}.lead-form input,.lead-form textarea{width:100%;background:rgba(0,0,0,.25);border:1px solid rgba(240,240,241,.25);color:var(--light);font-family:var(--body);font-size:16px;padding:14px 16px;outline:none;resize:none;transition:border-color .3s,background .3s}.lead-form input:focus,.lead-form textarea:focus{border-color:var(--light);background:rgba(0,0,0,.4)}.lead-form .consent{display:flex;gap:10px;align-items:flex-start;margin-top:18px;font-family:var(--body);font-size:13px;letter-spacing:normal;text-transform:none;color:rgba(240,240,241,.7);cursor:pointer}.lead-form .consent input[type=checkbox]{width:16px;height:16px;margin-top:2px;flex-shrink:0;accent-color:var(--bg);cursor:pointer}.lead-form .consent span{line-height:1.5}.lead-form .consent a{color:inherit;text-decoration:underline}.lead-form .consent a:hover{color:var(--light)}.lead-form .consent{transition:color .2s ease}.lead-form .consent.consent-missing,.lead-form .consent.consent-missing a:hover{color:var(--warn)}.lead-form .consent.consent-missing input[type=checkbox]{outline:2px solid var(--warn);outline-offset:2px}.cta .btn{margin-top:36px;background:var(--bg)}.cta .btn:hover{background:#000}.form-status{margin-top:20px;font-family:var(--heading);letter-spacing:.08em}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.contact-card{background:var(--surface);box-shadow:var(--edge);padding:48px;border-top:3px solid var(--red)}.contact-card h3{font-family:var(--heading);font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.contact-card a,.contact-card p{font-family:var(--heading);font-weight:500;font-size:clamp(20px,2.4vw,30px);text-decoration:none;line-height:1.3}.contact-card a:hover{color:var(--red-bright)}.page-hero{padding:220px 0 90px;border-bottom:1px solid var(--line)}.page-hero h1{font-weight:700;font-size:clamp(44px,7vw,110px);text-transform:uppercase;line-height:.98}.page-hero p{margin-top:24px;color:var(--muted);max-width:60ch}.legal-hero h1{font-size:clamp(28px,5.5vw,76px);overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.legal-text{max-width:760px}.legal-text h2{margin:48px 0 16px;font-size:clamp(20px,2.4vw,26px);font-weight:700;text-transform:uppercase}.legal-text p{margin:0 0 14px;color:var(--muted);line-height:1.7}.legal-text ul{margin:0 0 14px;padding-left:22px}.legal-text li{margin-bottom:8px;color:var(--muted);line-height:1.7}.all-link{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--heading);font-weight:500;font-size:clamp(22px,3vw,36px);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--light);transition:color .3s,padding-left .3s}.all-link .arrow{font-weight:300;transition:transform .3s}.all-link:hover{color:var(--red-bright);padding-left:18px}.all-link:hover .arrow{transform:translateX(10px)}.skel{background:linear-gradient(100deg,var(--panel) 40%,#1b1b1f 50%,var(--panel) 60%);background-size:200% 100%;animation:skel-shimmer 1.4s linear infinite}@keyframes skel-shimmer{to{background-position:-200% 0}}.skel-line{height:16px}.skel-title{height:clamp(44px,7vw,110px);max-width:640px}.skel-proj{height:48vh;min-height:360px}.skel-hero{min-height:70vh}@media (prefers-reduced-motion:reduce){.skel{animation:none}}.site-footer{padding:72px 0 48px;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;padding-bottom:48px;border-bottom:1px solid var(--line)}.footer-top img{height:22px}.footer-col h4{font-family:var(--heading);font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}.footer-col a,.footer-col p{display:block;color:var(--light);text-decoration:none;font-size:15px;margin-bottom:8px}.footer-col a:hover{color:var(--red-bright)}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-top:32px;color:var(--muted);font-size:13px}.footer-legal{display:flex;flex-direction:column;gap:6px;max-width:62ch}.social-links{display:flex;align-items:center;gap:4px;margin:10px 0 0 -9px}.social-links a{margin-bottom:0;width:52px;height:52px;display:grid;place-items:center;color:var(--light);transition:color .25s,transform .25s}.social-links a:hover{color:var(--red-bright);transform:translateY(-2px)}.social-links svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}@media (max-width:1200px){.wrap{padding:0 32px}.team-grid{grid-template-columns:repeat(3,1fr)}.detail-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.site-header nav ul{gap:28px}.proj-info{padding:24px 32px;gap:16px}.proj-num{right:32px}}@media (max-width:1024px){.proj-grid .proj,.skel-proj{height:auto;min-height:0;aspect-ratio:4/3}#projects>.proj{aspect-ratio:4/3}.detail-hero,.skel-hero{min-height:0;aspect-ratio:16/10}}@media (min-width:901px) and (max-height:700px){.site-header{padding:18px 0}.site-header .logo img{height:22px}.site-header nav ul{gap:32px}.site-header nav a{font-size:12px}.site-header .btn{padding:13px 28px;font-size:12px}.hero{padding-top:96px;padding-bottom:32px}.hero h1{font-size:clamp(50px,7.4vw,84px)}.hero-bottom{grid-template-columns:minmax(280px,340px) auto;gap:32px;margin-top:20px}.hero-bottom p{font-size:14px;line-height:1.55}.hero-bottom .btn{padding:13px 28px;font-size:12px}}@media (max-width:900px){.wrap{padding:0 20px}.site-header nav{position:absolute;top:100%;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);padding:4px 20px 20px;opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .28s ease,transform .32s cubic-bezier(.22,.7,.3,1),visibility .32s}.site-header nav.open{opacity:1;visibility:visible;transform:none}.site-header nav ul{flex-direction:column;gap:0}.site-header nav a{display:block;padding:15px 0;font-size:15px;border-bottom:1px solid var(--line)}.site-header nav li:last-child a{border-bottom:0}.burger{display:block;margin-right:-9px}.site-header{padding:16px 0}.site-header .logo img{height:22px}.site-header .btn{padding:13px 20px;font-size:12px;letter-spacing:.1em}.contact-grid,.cta .wrap,.gallery,.proj-grid,.services-grid,.stats,.values-grid{grid-template-columns:1fr}.stats{grid-auto-rows:auto}.stat--lead{grid-row:auto}.values-grid .value-card:nth-child(2n){margin-top:0}.values-grid .value-card:nth-child(odd):last-child{margin-bottom:0}.detail-facts,.team-grid{grid-template-columns:repeat(2,1fr)}.proj,.proj-grid .proj{aspect-ratio:4/3}.detail-hero{aspect-ratio:16/10;padding-bottom:24px}.proj-info{padding:20px;gap:14px}.proj-info h3{font-size:clamp(19px,5.2vw,26px)}.proj-info span{font-size:11px;letter-spacing:.14em;max-width:42%}.proj-num{top:20px;right:20px;font-size:44px}section{padding:80px 0}.page-hero{padding:128px 0 48px}.hero{padding:112px 0 40px;min-height:100svh}.hero h1{font-size:clamp(40px,11vw,68px)}.page-hero h1{font-size:clamp(26px,7.8vw,56px)}h2.big{font-size:clamp(30px,8vw,46px)}.sec-label{margin-bottom:36px}.sec-label:before{width:40px}h2.big{margin-bottom:40px}.stat{padding:40px 24px}.stat--lead b{font-size:clamp(56px,18vw,96px)}.stat b{font-size:clamp(40px,12vw,64px)}.svc{padding:40px 24px}.svc h3{font-size:clamp(22px,5.5vw,27px)}.contact-card{padding:32px 24px}.contact-card a,.contact-card p{font-size:clamp(18px,5vw,26px)}.value-card{padding:32px 24px}.fact{padding:28px 24px}.cta{padding:80px 0}.cta .wrap{gap:40px}.cta h2{font-size:clamp(34px,9vw,56px)}.all-link{font-size:clamp(18px,5vw,26px);padding:24px 0}.footer-top{gap:32px;padding-bottom:36px}.partners-section{padding:80px 0 72px}.service-marquee-item{font-size:13px}.dept-title{margin:48px 0 22px;font-size:18px}.hero-bottom{grid-template-columns:1fr;gap:24px}.hero-bottom .btn{justify-self:start}.member-info h4{font-size:14px}.member-info p{font-size:12px}.lightbox-topbar{min-height:72px;padding:12px 16px}.lightbox-close{width:46px;height:46px;flex-basis:46px}.lightbox-stage{padding:16px 12px 82px}.lightbox-image{max-width:min(100%,calc(100vw - 24px));max-height:min(100%,calc(100dvh - 170px))}.lightbox-arrow{top:auto;bottom:16px;width:52px;height:52px;transform:none}.lightbox-arrow--previous{left:calc(50% - 60px)}.lightbox-arrow--next{right:calc(50% - 60px)}}@media (max-width:600px){.team-grid{grid-template-columns:repeat(2,1fr);gap:6px}.detail-facts{grid-template-columns:1fr}.filters{gap:8px;margin-bottom:32px}.filters a{padding:10px 16px;font-size:12px}.proj-info{flex-direction:column;align-items:flex-start;gap:8px}.proj-info span{max-width:100%}}html.anim .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.7,.3,1);will-change:opacity,transform}html.anim .reveal.is-visible{opacity:1;transform:none}html.anim .contact-grid .reveal:nth-child(2),html.anim .stats .reveal:nth-child(2),html.anim .team-grid .reveal:nth-child(4n+2),html.anim .values-grid .reveal:nth-child(3n+2){transition-delay:.1s}html.anim .contact-grid .reveal:nth-child(3),html.anim .stats .reveal:nth-child(3),html.anim .team-grid .reveal:nth-child(4n+3),html.anim .values-grid .reveal:nth-child(3n){transition-delay:.2s}html.anim .contact-grid .reveal:nth-child(4),html.anim .team-grid .reveal:nth-child(4n){transition-delay:.3s}html.anim .proj-grid .reveal:nth-child(2n),html.anim .services-grid .reveal:nth-child(2n){transition-delay:.12s}html.anim .detail-facts .reveal:nth-child(2){transition-delay:90ms}html.anim .detail-facts .reveal:nth-child(3){transition-delay:.18s}html.anim .detail-facts .reveal:nth-child(4){transition-delay:.27s}html.anim .detail-facts .reveal:nth-child(5){transition-delay:.36s}html.anim .reveal.reveal-d1{transition-delay:90ms}html.anim .reveal.reveal-d2{transition-delay:.18s}html.anim .sec-label.reveal:before{transform:scaleX(0);transform-origin:left center;transition:transform .8s cubic-bezier(.22,.7,.3,1) .25s}html.anim .sec-label.reveal.is-visible:before{transform:scaleX(1)}html.anim .hero .hero-bg{animation:hero-kenburns 30s ease-in-out infinite alternate;will-change:transform}@keyframes hero-kenburns{0%{transform:scale(1)}to{transform:scale(1.07)}}html.anim .proj img{transform:translateY(var(--par,0)) scale(1.09);will-change:transform}html.anim .proj:hover img{transform:translateY(var(--par,0)) scale(1.12)}.proj-num{transition:transform .45s cubic-bezier(.22,.7,.3,1)}.proj:hover .proj-num{transform:translateX(-10px)}.btn{position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:0;bottom:0;left:-70%;width:46%;background:linear-gradient(100deg,transparent,rgba(240,240,241,.3),transparent);transform:skewX(-18deg);pointer-events:none}.btn:hover:after{left:135%;transition:left .55s ease}.site-header{transition:transform .35s ease,background .3s ease}.site-header.is-solid{background:rgba(10,10,11,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.site-header.is-open{background:var(--bg);backdrop-filter:none;-webkit-backdrop-filter:none}.site-header.is-hidden{transform:translateY(-100%)}html.anim .page-transition{animation:page-fade .5s ease both}@keyframes page-fade{0%{opacity:0}}@media (hover:none) and (pointer:coarse),(max-width:1024px){html.anim .reveal{transform:none;transition:opacity .55s ease}html.anim .reveal.is-visible{transform:none}html.anim .proj img,html.anim .proj:hover img{transform:scale(1.04)}.site-header.is-hidden{transform:none}.hero h1,.hero-bottom,.hero-tag{animation:fade-opacity .9s both}}@keyframes fade-opacity{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){html.anim .reveal{opacity:1}html.anim .reveal,html.anim .sec-label.reveal:before{transform:none;transition:none}html.anim .hero .hero-bg{animation:none}html.anim .proj img,html.anim .proj:hover img{transform:none}html.anim .page-transition{animation:none}.proj:hover .proj-num{transform:none}.btn:after{display:none}.site-header.is-hidden{transform:none}.hero h1,.hero-bottom,.hero-tag,.service-marquee-track{animation:none}}.lang-switch{display:flex;gap:2px}.lang-switch a{padding:4px 7px;font-size:12px;letter-spacing:.08em;color:var(--muted);border-radius:4px;transition:color .2s}.lang-switch a.active{color:#fff;background:rgba(255,255,255,.12)}.lang-switch a:hover{color:#fff}.lang-switch--menu{display:none}@media (max-width:900px){.nav>div>.lang-switch{display:none}.lang-switch--menu{display:flex}.site-header nav .lang-switch--menu a{display:inline-block;padding:4px 7px;font-size:12px;border-bottom:none}}