@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:400 700;font-display:swap;src:url('../assets/space-grotesk.woff2') format('woff2')}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('../assets/public-sans.woff2') format('woff2')}
:root{--blue:#033e8c;--night:#0a2540;--signal:#ffc20e;--ground:#f4f7fb;--panel:#e3eaf4;--body:"Public Sans",sans-serif;--display:"Space Grotesk",sans-serif;--gutter:clamp(20px,3.4vw,64px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--ground);color:var(--night);font:17px/1.6 var(--body)}::selection{background:var(--signal);color:var(--night)}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:5px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:3px}button,a{transition:transform .2s,opacity .2s}button:active,.button:active{transform:translateY(2px)}button:disabled{opacity:.5;cursor:not-allowed}img{display:block;width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:600;letter-spacing:-.035em;text-wrap:balance}h1{font-size:clamp(48px,6.5vw,100px);line-height:1.02;max-width:7ch}h2{font-size:clamp(32px,3.9vw,60px);line-height:1.08}h3{font-size:26px;line-height:1.2}p{max-width:65ch}svg{flex-shrink:0}.wrap{margin-inline:auto;padding-inline:var(--gutter);max-width:1920px}.skip{position:fixed;left:20px;top:8px;padding:10px;background:var(--signal);color:var(--night);z-index:10;transform:translateY(-180%)}.skip:focus{transform:none}.opening{background:var(--blue);color:white;padding-bottom:40px}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:28px;padding-bottom:26px}.wordmark{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--display);font-size:30px;font-weight:700;line-height:1}.wordmark svg{color:var(--signal)}.wordmark-sub{display:block;font-size:13px;line-height:1.7;font-weight:400;letter-spacing:0}.header nav{display:flex;gap:38px}.header nav a{text-decoration:none}.header nav a:hover{text-decoration:underline}.languages{display:flex;gap:4px}.languages button{padding:8px;border:0;background:transparent;color:inherit;font-size:15px;min-width:44px;min-height:44px}.languages [aria-pressed=true]{background:white;color:var(--blue)}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:center;padding-block:72px 76px}.hero-desc{font-size:19px;max-width:40ch;margin-block:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;text-decoration:none;padding:17px 24px;border:0;min-height:56px;font-weight:600}.button:hover{transform:translateY(-3px)}.yellow{background:var(--signal);color:var(--night)}.hero-note{margin-top:25px;font-size:15px}.switchboard{background:var(--ground);color:var(--night);padding:30px}.board-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.board-top h2{font-size:25px;letter-spacing:-.03em}.status-light{width:12px;height:12px;background:var(--blue);border-radius:50%;animation:pulse 3s ease-in-out infinite}.switchboard>p{font-size:14px;margin:12px 0 26px}.switches{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.switch{background:var(--panel);color:var(--night);border:0;padding:18px 4px 14px;font-size:12px;display:flex;flex-direction:column;align-items:center;gap:14px;min-width:0}.lever{display:block;position:relative;width:28px;height:58px;border-radius:18px;background:#bdcbdc}.lever i{position:absolute;bottom:5px;left:4px;width:20px;height:24px;background:var(--night);border-radius:12px;transition:transform .35s}.switch[aria-pressed=true]{background:var(--signal)}.switch[aria-pressed=true] .lever i{transform:translateY(-24px)}.board-output{margin-top:24px;min-height:180px}.board-output h3{font-size:22px}.board-output p{font-size:15px;margin:12px 0 18px}.board-output a{font-size:15px;font-weight:600}.hero-photo img{aspect-ratio:2.7;object-fit:cover;object-position:center 47%}.hero-photo figcaption,figcaption{font-size:12px;margin-top:9px}.section{padding-block:clamp(72px,8vw,140px)}.section-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:8vw;align-items:end;margin-bottom:52px}.section-intro h2{max-width:14ch}.section-intro>p{max-width:43ch}.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 56px}.service-list article{padding:30px;background:var(--panel);margin-bottom:20px}.service-list article:nth-child(2),.service-list article:nth-child(3){background:#eaf0f7}.service-list p{margin:16px 0 22px}.service-list a{font-weight:600}.work{background:var(--night);color:var(--ground)}.work-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:6vw;align-items:center}.work-layout img{aspect-ratio:.95;object-fit:cover}.job-list{display:flex;flex-direction:column;gap:40px}.job-list h3{font-size:30px;max-width:18ch}.job-list p{margin-top:14px;font-size:16px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw}.faq h2{max-width:13ch}.faq details{padding:22px 24px;background:var(--panel);margin-bottom:12px}.faq details:nth-child(even){background:#ebf0f6}.faq summary{font-size:19px;font-weight:600;cursor:pointer;line-height:1.4;min-height:44px;padding-block:9px}.faq details p{margin-top:20px;font-size:16px}.quote-section{background:var(--panel)}.quote-layout{display:grid;grid-template-columns:.9fr 1.2fr;gap:8vw}.quote-copy h2{max-width:12ch}.quote-copy>p{margin-top:25px}.demo-note{font-weight:600}.quote-copy>p:last-child{font-size:15px;max-width:35ch}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;margin-bottom:20px}label>span{display:block;margin-bottom:7px;font-size:15px;font-weight:600}input,select,textarea{display:block;width:100%;border:1px solid #6a7f95;background:var(--ground);padding:12px;color:var(--night);border-radius:0;caret-color:var(--blue)}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border:2px solid #a52623}textarea{resize:vertical;min-height:116px}small{font-size:13px}.file input{padding:12px;background:transparent}input::file-selector-button{background:var(--ground);border:0;padding:8px;margin-right:12px;font:inherit;color:inherit;cursor:pointer}#photo-preview{width:160px;height:120px;object-fit:cover;margin-bottom:15px}#photo-preview[hidden]{display:none}.form-message{font-size:15px;margin-block:15px;color:#92231b}.form-message:empty{display:none}.form-message.success{color:var(--night);font-weight:600;padding:20px;background:var(--ground)}.footer{padding-block:70px 130px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.footer-name{font:600 clamp(65px,10vw,160px)/1 var(--display);letter-spacing:-.04em;text-decoration:none}.footer>div{align-self:center}.footer p,.footer a:not(.footer-name){font-size:14px}.footer>div p{margin-bottom:10px}.attribution{grid-column:1/-1}.emergency{position:fixed;bottom:20px;right:var(--gutter);display:flex;gap:12px;align-items:center;background:var(--signal);color:var(--night);border:0;padding:14px 20px;font-size:14px;font-weight:600;z-index:3;min-height:50px}.emergency-dot{height:8px;width:8px;border-radius:50%;background:var(--night)}dialog{border:0;padding:40px;background:var(--ground);color:var(--night);max-width:540px;width:calc(100% - 40px)}dialog::backdrop{background:rgba(10,37,64,.7)}dialog h2{font-size:32px}dialog p{margin:24px 0}dialog .button{width:100%}@keyframes pulse{50%{transform:scale(.65);opacity:.6}}@media(min-width:1550px){.hero{gap:12vw}.switchboard{max-width:590px}.hero-photo img{aspect-ratio:3.3}}@media(max-width:1000px){.hero{gap:32px}.switchboard{padding:22px}.switches{gap:5px}.switch{font-size:10px}.header nav{gap:22px}}@media(max-width:760px){.header{padding-top:20px;gap:12px;flex-wrap:wrap}.header nav{order:3;width:100%;gap:24px;font-size:14px;margin-top:12px}.wordmark{font-size:25px}.hero{grid-template-columns:1fr;gap:40px;padding-top:34px;padding-bottom:36px}h1{font-size:clamp(53px,11vw,82px);max-width:none}.hero-desc{font-size:17px;max-width:36ch;margin-block:24px}.hero-note{font-size:13px}.switchboard{padding:24px}.switchboard>p{font-size:13px}.switch{font-size:11px}.board-output{min-height:158px}.board-top h2{font-size:23px}.hero-photo img{aspect-ratio:1.55}.opening{padding-bottom:25px}.section-intro{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.section-intro h2{max-width:17ch}.service-list{grid-template-columns:1fr;gap:0}.service-list article{padding:24px}.service-list p{font-size:16px}.work-layout{grid-template-columns:1fr;gap:36px}.work-layout img{aspect-ratio:1.2}.job-list{gap:32px}.job-list h3{font-size:26px}.faq{grid-template-columns:1fr;gap:32px}.faq h2{max-width:none}.faq details{padding:21px 20px}.quote-layout{grid-template-columns:1fr;gap:40px}.quote-copy h2{max-width:14ch}.form-grid{grid-template-columns:1fr;gap:0}.footer{grid-template-columns:1fr;gap:35px}.footer-name{font-size:90px}.emergency{bottom:12px;right:16px;left:16px;justify-content:center;padding:12px;font-size:12px}dialog{padding:28px}dialog h2{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.switch{font-size:13px}.hero-desc{font-size:18px}.entered{animation:enter .9s cubic-bezier(.16,1,.3,1) both}@keyframes enter{from{opacity:.5;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1000px){.switches{grid-template-columns:repeat(2,1fr)}.switch{flex-direction:row;gap:10px;padding:12px;font-size:13px}.lever{height:42px;width:24px}.lever i{width:16px;height:18px}.switch[aria-pressed=true] .lever i{transform:translateY(-14px)}}@media(prefers-reduced-motion:reduce){.entered{animation:none}}
.project-photos{padding-bottom:0}.project-photos h2{margin-bottom:36px}.project-photos>div{display:grid;grid-template-columns:1fr 1fr;gap:30px}.project-photos img{aspect-ratio:1.5;object-fit:cover}.project-photos figure p{font-size:18px;margin-top:16px}.project-photos>p{font-size:14px;margin-top:20px}.wordmark-sub{font-size:14px}.languages button,.hero-note,.hero-photo figcaption,figcaption,.switchboard>p,.board-output p,.board-output a,.service-list a,.job-list p,.faq details p,.quote-copy>p:last-child,label>span,small,.form-message,.footer p,.footer a:not(.footer-name),.emergency{font-size:16px}.board-top h2,.board-output h3{font-size:24px}.service-list article{background:transparent!important;padding-inline:0}.service-list{gap:0 64px}@media(max-width:760px){.project-photos>div{grid-template-columns:1fr}.emergency{font-size:13px}.board-top h2{font-size:24px}.header nav{font-size:16px}}
input,select,textarea,button,a{scroll-margin-bottom:96px}
