@font-face{font-family:sofiaPro;src:url(../media/sofia_pro_regular-s.p.0jf1_xa4a50ok.otf)format("opentype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:sofiaPro;src:url(../media/sofia_pro_semibold-s.p.1oe8z63wlf4ve.otf)format("opentype");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:sofiaPro;src:url(../media/sofia_pro_bold-s.p.25hucwt86a-cc.otf)format("opentype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:sofiaPro Fallback;src:local(Arial);ascent-override:71.98%;descent-override:23.99%;line-gap-override:0.0%;size-adjust:104.19%}.sofiapro_5b2a2b7d-module__mgKEbq__className{font-family:sofiaPro,sofiaPro Fallback}.sofiapro_5b2a2b7d-module__mgKEbq__variable{--font-sofia-pro:"sofiaPro", "sofiaPro Fallback"}
:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--white:#fff;--orange:#e25035;--black:#050505;--frame-width:1180px;--label-size:clamp(.95rem, 1.15vw, 1.1rem)}*{box-sizing:border-box}html,body{background:var(--black);width:100%;height:100%;color:var(--white);font-family:var(--font-sofia-pro), Arial, Helvetica, sans-serif;-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}a{color:inherit}.landing{isolation:isolate;width:100%;height:100svh;min-height:420px;position:relative;overflow:hidden}.landing:before{z-index:0;background:var(--black);content:"";height:clamp(58px,5vw,68px);position:absolute;top:0;left:0;right:0}.background-video,.video-shade{width:100%;height:100%;position:absolute;inset:0}.background-video{z-index:-2;object-fit:cover}.video-shade{z-index:-1;background:linear-gradient(#e84c3000 32%,#e84c300f 70%,#e84c3029 100%),linear-gradient(#0000 24%,#00000014 52%,#0006 78%,#000000ad 100%),radial-gradient(#0000 20%,#0003 100%),#0000002e;transition:background-color .16s}.top-bar{z-index:1;width:min(calc(100% - 80px), var(--frame-width));grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;height:clamp(58px,5vw,68px);display:grid;position:absolute;top:0;left:50%;transform:translate(-50%)}.top-logo{grid-column:1;justify-self:start;width:clamp(96px,8vw,120px);height:auto;display:block}.mobile-hero-logo{display:none}.corner-link,.bottom-label,.projects-menu summary,.social-links{font-size:var(--label-size);letter-spacing:-.025em;font-weight:600}.social-links{white-space:nowrap;grid-column:3;justify-self:end;align-items:center;gap:7px;line-height:.98;display:flex}.social-links a{text-decoration:none}.social-links a:hover{color:var(--orange)}.social-divider{color:#ffffff75}.email-link{text-underline-offset:5px;text-decoration:none}.email-link:hover{color:var(--orange)}:focus-visible{outline:2px solid var(--white);outline-offset:5px}.hero-message{width:min(100% - 80px,1040px);color:var(--white);letter-spacing:-.04em;text-align:center;margin:0;font-size:clamp(2.6rem,5.8vw,5.8rem);font-weight:600;line-height:1.02;transition:top .22s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-message span{display:block}.landing:has(.projects-menu[open]) .hero-message{top:43%}.landing:has(.projects-menu[open]) .video-shade{background:linear-gradient(#e84c3000 32%,#e84c300f 70%,#e84c3029 100%),linear-gradient(#0000 24%,#0000001a 52%,#0000004d 75%,#0000008a 100%),radial-gradient(#0000 18%,#0000002e 100%),#0000007a}.logo{width:100%;height:auto;display:block}.bottom-bar{width:min(calc(100% - 80px), var(--frame-width));border-top:1px solid #ffffff47;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;padding-top:12px;display:grid;position:absolute;bottom:clamp(20px,3vw,44px);left:50%;transform:translate(-50%)}.bottom-right{grid-column:3;justify-self:end}.bottom-label{line-height:1}.projects-menu{z-index:2;grid-column:2;width:auto;position:relative}.projects-menu summary{width:max-content;color:var(--orange);cursor:pointer;align-items:center;gap:10px;margin-inline:auto;line-height:1;list-style:none;display:flex}.location-link{grid-column:1;justify-self:start;align-items:center;gap:7px;line-height:1;text-decoration:none;display:inline-flex}.location-link svg{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;flex:none;width:1.05em;height:1.05em}.location-link:hover{color:var(--orange)}.projects-menu summary::-webkit-details-marker{display:none}.projects-menu summary:hover{color:var(--white)}.projects-menu[open] summary span{transform:rotate(45deg)}.projects-menu summary span{font-size:1.25em;transition:transform .16s;display:inline-block}.projects-panel{width:min(100vw - 40px,920px);color:var(--white);grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid;position:absolute;bottom:calc(100% + 18px);left:50%;transform:translate(-50%)}.project-tile{aspect-ratio:3/4;min-width:0;color:var(--white);background:#000c;border:1px solid #ffffffb3;flex-direction:column;padding:12px;text-decoration:none;display:flex;position:relative;overflow:hidden}.projects-panel a:hover{border-color:var(--orange);color:var(--orange)}.project-logo-wrap{flex:none;height:55%;position:relative;overflow:hidden}.project-logo{object-fit:contain;width:100%;height:100%;transition:opacity .16s;display:block}.project-logo-tint{background:var(--orange);opacity:0;transition:opacity .16s;position:absolute;inset:0;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.projects-panel a:hover .project-logo-default{opacity:0}.projects-panel a:hover .project-logo-tint{opacity:1}.project-copy{border-top:1px solid #ffffff47;height:45%;padding-top:9px;line-height:1.2;display:block}.project-copy strong{height:auto;min-height:2.3em;font-size:.86rem;font-weight:600;line-height:1.15;display:block}.project-copy span{min-height:2.3em;margin-top:5px;font-size:.7rem;display:block}.project-lock-wrap{height:55%;color:var(--orange);flex:none;place-items:center;display:grid}.project-lock{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.4px;width:clamp(30px,3.4vw,44px);height:auto}.project-placeholder-copy{color:var(--orange)}.cookie-consent{z-index:20;color:#111;background:#efefec;border:0;width:min(1280px,100vw - 32px);padding:34px 40px 30px;animation:.22s both cookie-enter;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 -10px 34px #00000057}.cookie-consent strong{color:#111;font-size:1.05rem;font-weight:600}.cookie-consent p{color:#111111c7;max-width:920px;margin:12px 0 24px;font-size:.84rem;line-height:1.5}.cookie-text-grid{grid-template-columns:1.15fr 1fr;gap:clamp(28px,5vw,72px);margin:12px 0 24px;display:grid}.cookie-text-grid p{margin:0}.cookie-text-grid strong{font-size:inherit;margin-bottom:5px;display:block}.cookie-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.cookie-actions button{min-width:180px;color:var(--white);font:inherit;cursor:pointer;background:#111;border:1px solid #111;border-radius:0;padding:12px 18px;font-size:.76rem;font-weight:600}.cookie-actions-main button{flex:1}.cookie-actions button:hover,.cookie-actions .cookie-accept{border-color:var(--orange);background:var(--orange);color:var(--white)}.cookie-actions .cookie-accept:hover{color:var(--orange);background:0 0}.cookie-options{border-top:1px solid #1111113d;margin:0 0 22px}.cookie-option{border-bottom:1px solid #1111113d;justify-content:space-between;align-items:center;gap:20px;min-height:54px;display:flex}.cookie-option>span:first-child{gap:3px;display:grid}.cookie-option strong{color:#111;font-size:.78rem}.cookie-option small{color:#111111a3;font-size:.68rem;line-height:1.3}.cookie-option input{width:18px;height:18px;accent-color:var(--orange);flex:none}.cookie-required{color:var(--orange);flex:none;font-size:.62rem}@keyframes cookie-enter{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:820px){:root{--label-size:.78rem}.top-bar{justify-content:center;gap:0;width:calc(100% - 24px);height:60px;display:flex}.top-logo{display:none}.landing:before{height:60px}.social-links{justify-content:center;gap:4px;font-size:.78rem}.mobile-hero-logo{width:min(68vw,360px);height:auto;transition:top .22s;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-message{letter-spacing:-.025em;white-space:nowrap;width:calc(100% - 32px);font-size:clamp(.82rem,3.8vw,1rem);line-height:1;top:calc(50% + 42px)}.hero-message span{display:inline}.hero-message span+span:before{content:" "}.landing:has(.projects-menu[open]) .mobile-hero-logo{top:36%}.landing:has(.projects-menu[open]) .hero-message{top:calc(36% + 42px)}.bottom-bar{justify-content:center;gap:0;width:calc(100% - 40px);display:flex;bottom:22px}.location-link,.bottom-right{display:none}.projects-menu{position:relative;bottom:auto;left:auto;transform:none}.projects-menu summary{font-size:1.05rem}.projects-panel{overscroll-behavior:contain;scrollbar-width:thin;grid-template-columns:1fr;grid-auto-rows:74px;gap:5px;width:min(100vw - 24px,620px);max-height:max(120px,100svh - 415px);overflow-y:auto}.project-tile{aspect-ratio:auto;flex-direction:row;height:74px;min-height:74px;padding:7px}.project-logo-wrap,.project-lock-wrap{width:26%;height:auto;min-height:0}.project-logo-wrap{place-items:center;display:grid}.project-logo{width:46px;height:46px;margin:auto}.project-logo-tint{width:46px;height:46px;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.project-copy{border-top:0;border-left:1px solid #ffffff47;flex-direction:column;justify-content:center;width:74%;height:auto;padding:4px 8px 4px 12px;display:flex}.project-copy strong{min-height:0;font-size:.68rem}.project-copy span{min-height:0;margin-top:4px;font-size:.6rem}.project-lock{width:24px}.cookie-consent{width:100vw;max-height:calc(100svh - 16px);padding:24px 18px 18px;bottom:0;left:50%;overflow-y:auto}.cookie-text-grid{grid-template-columns:1fr;gap:10px}.cookie-actions{grid-template-columns:1fr;display:grid}.cookie-actions button{width:100%}.cookie-option{gap:12px}}@media (max-height:560px) and (min-width:821px){.hero-message{font-size:clamp(1.65rem,7vw,3.2rem)}.projects-panel{width:min(100vw - 40px,760px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important}}
