@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;font-stretch:75% 100%;src:url(/_astro/bricolage-grotesque-vietnamese-standard-normal.Br4FGdAc.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;font-stretch:75% 100%;src:url(/_astro/bricolage-grotesque-latin-ext-standard-normal.qp-RdZgh.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;font-stretch:75% 100%;src:url(/_astro/bricolage-grotesque-latin-standard-normal.C5Lc8Qmc.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/dm-sans-latin-ext-opsz-normal.oos9povj.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/dm-sans-latin-opsz-normal.Bf69Tn_J.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--navy: #0b2545;--navy-2: #071a33;--sky: #7cc4f2;--sky-2: #a9dbff;--ink: #0f1724;--ink-2: #4b5768;--on-navy: #c3d0e0;--ground: #e9ebee;--white: #ffffff;--line: #c9ced6;--display: "Bricolage Grotesque Variable", "Bricolage Grotesque", "Helvetica Neue", Arial, sans-serif;--text: "DM Sans Variable", "DM Sans", "Helvetica Neue", Arial, sans-serif;--gap: clamp(.625rem, .4rem + 1vw, 1rem);--gutter: clamp(.625rem, .2rem + 1.6vw, 1.5rem);--radius: clamp(1rem, .85rem + .5vw, 1.25rem);--radius-s: .875rem;--pad: clamp(1.25rem, .8rem + 2vw, 3rem);--max: 86rem;--measure: 62ch}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--text);font-size:1.0625rem;line-height:1.55;overflow-wrap:break-word}img{display:block;max-width:100%;height:auto}h1,h2,h3{margin:0;font-family:var(--display);font-weight:780;font-stretch:85%;letter-spacing:-.03em;line-height:.95;text-wrap:balance}h1{font-size:clamp(2.75rem,1.6rem + 4.6vw,5.5rem)}h2{font-size:clamp(2rem,1.4rem + 2.6vw,3.75rem)}h3{font-size:clamp(1.25rem,1.1rem + .6vw,1.75rem);font-weight:720;font-stretch:100%;letter-spacing:-.02em;line-height:1.08}p{margin:0 0 1em;max-width:var(--measure)}p:last-child{margin-bottom:0}a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{color:var(--navy);text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--navy);outline-offset:3px;border-radius:4px}.on-navy :focus-visible{outline-color:var(--sky)}.skip{position:absolute;left:var(--gutter);top:-100px;z-index:10;background:var(--navy);color:var(--white);padding:.75rem 1rem;min-height:44px;border-radius:var(--radius-s)}.skip:focus{top:.5rem}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.page{display:grid;gap:var(--gap);padding-block:var(--gap) clamp(1.5rem,1rem + 2vw,3rem)}.page>*{min-width:0}.band{padding-top:clamp(2rem,1rem + 4vw,4rem)}.stack{display:grid;gap:var(--gap)}.stack>*{min-width:0}.tiles{display:flex;flex-wrap:wrap;gap:var(--gap)}.tiles>*{min-width:0}.tiles>.head-row{flex:1 1 100%}figure.tile{margin:0}.tile{background:var(--white);border-radius:var(--radius);padding:var(--pad)}.tile--navy{background:var(--navy);color:var(--white)}.tile--navy a:not(.btn){color:var(--white)}.tile--sky{background:var(--sky);color:var(--ink)}.tile--photo{position:relative;padding:0;overflow:hidden;min-height:16rem;background:var(--navy)}.tile--photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.tile--flex{display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem}.caption-card{position:absolute;left:.875rem;right:.875rem;bottom:.875rem;margin:0;background:var(--white);color:var(--ink);border-radius:var(--radius-s);padding:.7rem 1rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem;line-height:1.3}.caption-card strong{display:block}.caption-card span{font-size:.875rem;color:var(--ink-2)}.caption-pill{position:absolute;left:.875rem;bottom:.875rem;margin:0;background:var(--white);color:var(--ink);border-radius:999px;padding:.35rem .9rem;font-size:.875rem;font-weight:700}.tag{flex:none;font-size:.8125rem;font-weight:700;padding:.25rem .65rem;border-radius:999px;background:var(--ground);color:var(--ink);white-space:nowrap}.tag--sky{background:var(--sky)}.caption-card .tag{color:var(--ink);font-size:.8125rem}.pill{align-self:flex-start;display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .9rem;border-radius:999px;background:#ffffff1a;font-size:.875rem;font-weight:600;margin:0}.pill:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--sky)}.hl{color:var(--sky)}.soft{color:var(--on-navy)}.muted{color:var(--ink-2)}.lede{font-size:clamp(1.0625rem,1rem + .35vw,1.1875rem)}.head-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 2.5rem;padding-inline:.5rem}.head-row p{color:var(--ink-2);max-width:46ch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.7rem 1.35rem;border:1.5px solid transparent;border-radius:var(--radius-s);font:inherit;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer}.btn svg{flex:none}.btn--navy{background:var(--navy);color:var(--white)}.btn--navy:hover{background:var(--navy-2);color:var(--white)}.btn--sky{background:var(--sky);color:var(--ink)}.btn--sky:hover{background:var(--sky-2);color:var(--ink)}.btn--ink{background:var(--ink);color:var(--white)}.btn--ink:hover{background:var(--navy);color:var(--white)}.btn--line{border-color:#ffffff73;color:var(--white);font-weight:600}.btn--line:hover{border-color:var(--white);color:var(--white)}.btn--soft{background:var(--ground);color:var(--ink);font-weight:650}.btn--soft:hover{background:var(--line);color:var(--ink)}.btn--big{min-height:56px;font-size:1.1875rem}.btn-row{display:flex;flex-wrap:wrap;gap:.625rem}.btn--primary{background:var(--navy);color:var(--white)}.btn--primary:hover{background:var(--navy-2);color:var(--white)}.btn--ghost{border-color:var(--ink);color:var(--ink)}.btn--ghost:hover{background:var(--ink);color:var(--white)}.tile--navy .btn--ghost,.section--ink .btn--ghost{border-color:#ffffff73;color:var(--white)}.site-header{padding-top:var(--gap);position:relative;z-index:5}.site-header .bar{background:var(--white);border-radius:var(--radius);padding:.625rem .625rem .625rem 1.1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem 2rem;position:relative}.brand{display:inline-flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--ink);min-height:48px}.brand img{width:40px;height:40px;object-fit:contain}.brand span{font-family:var(--display);font-weight:750;font-size:1.1875rem;letter-spacing:-.02em;line-height:1.1}.brand:hover{color:var(--ink)}.nav-desktop{display:none}.nav-desktop ul{display:flex;align-items:center;gap:.25rem;list-style:none;margin:0;padding:0}.nav-link{display:inline-flex;align-items:center;min-height:48px;padding:0 1rem;border-radius:999px;color:var(--ink);text-decoration:none;font-weight:600}.nav-link:hover{background:var(--ground);color:var(--ink)}.nav-link[aria-current=page]{background:var(--ground);font-weight:700}.nav-mobile summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;min-width:48px;padding:0 .9rem;border-radius:.75rem;background:var(--ground);font-weight:650}.nav-mobile summary::-webkit-details-marker{display:none}.nav-mobile summary .bars{width:18px;height:10px;border-block:2px solid currentColor}.nav-mobile[open] summary{background:var(--navy);color:var(--white)}.nav-mobile .panel{position:absolute;left:0;right:0;top:calc(100% + .5rem);background:var(--white);border-radius:var(--radius);padding:.5rem 1rem 1rem;box-shadow:0 12px 32px #0f17242e}.nav-mobile ul{list-style:none;margin:0;padding:0}.nav-mobile li+li{border-top:1px solid var(--ground)}.nav-mobile .nav-link{display:flex;padding:0 .5rem;border-radius:.75rem;font-size:1.1875rem;min-height:52px}.nav-mobile .btn{width:100%;margin-top:.75rem}@media(min-width:62rem){.nav-desktop{display:flex;align-items:center;gap:.5rem}.nav-mobile{display:none}}.hero__text{flex:1.7 1 36rem;min-height:clamp(24rem,18rem + 16vw,35rem);display:flex;flex-direction:column;justify-content:space-between;gap:2rem}.hero__text h1{font-size:clamp(3rem,1.5rem + 5.4vw,6rem);line-height:.92}.hero__foot{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem}.hero__foot p{max-width:44ch}.hero__photo{flex:1 1 24rem;min-height:clamp(18rem,12rem + 18vw,35rem)}.call-tile{flex:1 1 18rem;min-height:15rem;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem}.call-tile:hover{background:var(--sky-2);color:var(--ink)}.call-tile .top{display:flex;justify-content:space-between;align-items:center;font-weight:700}.call-tile .num{font-family:var(--display);font-size:clamp(2rem,1.5rem + 1.8vw,2.875rem);font-weight:780;letter-spacing:-.03em;line-height:1;display:block}.call-tile .when{font-size:.9375rem}.road-tile{flex:1.25 1 20rem;min-height:15rem}.stat-tile{flex:1.25 1 20rem;display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem}.stat-tile .big{display:flex;align-items:baseline;gap:.75rem;margin:0}.stat-tile .big strong{font-family:var(--display);font-size:4rem;line-height:.9;font-weight:780;letter-spacing:-.04em}.stat-tile .big span{font-weight:600;line-height:1.3}.bars{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.bars li{display:grid;gap:.25rem}.bars .row{display:flex;justify-content:space-between;font-size:.9375rem}.bars .row span:first-child{font-weight:600}.bars .row span:last-child{color:var(--ink-2)}.bars .track{height:10px;border-radius:999px;background:var(--ground);display:flex}.bars .fill{border-radius:999px;background:var(--navy)}.fill[data-n="1"]{width:10%}.fill[data-n="2"]{width:20%}.fill[data-n="3"]{width:30%}.fill[data-n="4"]{width:40%}.fill[data-n="5"]{width:50%}.fill[data-n="6"]{width:60%}.fill[data-n="7"]{width:70%}.fill[data-n="8"]{width:80%}.fill[data-n="9"]{width:90%}.fill[data-n="10"]{width:100%}.service{flex:1 1 16rem;min-height:18rem;display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem;padding:clamp(1.25rem,1rem + 1vw,1.75rem)}.service .top{display:flex;justify-content:space-between;align-items:flex-start}.service .icon{width:56px;height:56px;border-radius:1rem;background:var(--ground);color:var(--ink);display:grid;place-items:center}.service.tile--navy .icon{background:var(--sky)}.service .no{font-family:var(--display);font-size:1.375rem;font-weight:700;opacity:.55}.service p{color:var(--ink-2);font-size:1rem;margin-top:.5rem}.service.tile--navy p{color:var(--on-navy)}.filter{border:0;margin:0;padding:0;min-width:0;position:relative}.filter .chips{display:flex;flex-wrap:wrap;gap:.5rem}.filter input{position:absolute;opacity:0;width:1px;height:1px}.filter label{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;padding:0 1.1rem;border-radius:999px;border:1.5px solid var(--line);background:var(--white);font-size:.9375rem;font-weight:650;cursor:pointer}.filter label span{opacity:.6}.filter label:hover{border-color:var(--ink)}.filter input:checked+label{background:var(--ink);border-color:var(--ink);color:var(--white)}.filter input:focus-visible+label{outline:3px solid var(--navy);outline-offset:3px}.filterable:has(input[value=buildings]:checked) [data-cat]:not([data-cat=buildings]),.filterable:has(input[value=roads]:checked) [data-cat]:not([data-cat=roads]),.filterable:has(input[value=erosion]:checked) [data-cat]:not([data-cat=erosion]),.filterable:has(input[value=industrial]:checked) [data-cat]:not([data-cat=industrial]){display:none}.board{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--gap)}.board>li{flex:1 1 18rem;min-width:0;height:clamp(15rem,12rem + 8vw,21rem);border-radius:var(--radius)}.board>li.wide{flex-grow:1.6}.board--short>li{height:8.5rem;min-height:0}.board--short .to-come{top:1rem}.board a{display:block;height:100%;color:inherit;text-decoration:none;position:relative}.board a:hover .caption-card strong{text-decoration:underline;text-decoration-thickness:2px}.blueprint{background-color:var(--navy);background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:28px 28px}.to-come{position:absolute;top:1.25rem;left:1.25rem;font-size:.875rem;color:var(--on-navy)}.lead-tile{flex:1.3 1 32rem;padding:1rem;display:flex;flex-wrap:wrap;gap:1.5rem}.lead-tile img{flex:1 1 13rem;min-width:0;height:25rem;object-fit:cover;object-position:center 15%;border-radius:var(--radius-s)}.lead-tile .copy{flex:1 1 15rem;padding:1rem .5rem;display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem}.lead-tile h2{font-size:clamp(2rem,1.5rem + 1.8vw,3rem)}.lead-tile .who strong{display:block;font-size:1.1875rem}.lead-tile .who span{display:block}.people-tiles{flex:1 1 28rem;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:var(--gap)}.people-tiles li{background:var(--white);border-radius:var(--radius);padding:.625rem .625rem .875rem;display:grid;gap:.625rem;align-content:start}.people-tiles img{width:100%;aspect-ratio:1 / 1;object-fit:cover;object-position:center 15%;border-radius:.75rem}.people-tiles .who{padding-inline:.25rem;line-height:1.3}.people-tiles strong{display:block;font-size:.9375rem}.people-tiles span{font-size:.8125rem;color:var(--ink-2)}.contact-main{flex:1.4 1 32rem;display:flex;flex-direction:column;justify-content:space-between;gap:2.5rem}.contact-main h2{font-size:clamp(2.5rem,1.6rem + 3.2vw,4.5rem);line-height:.92}.contact-side{flex:1 1 21rem;display:flex;flex-direction:column;gap:var(--gap)}.info-tile{padding:1.5rem 1.75rem;display:grid;gap:.25rem}.info-tile .label{font-size:.875rem;font-weight:700;color:var(--ink-2)}.info-tile address{font-style:normal;font-weight:600}.info-tile a{font-weight:600;display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}.site-footer{padding-bottom:var(--gap)}.footer-tile{display:grid;gap:1.5rem 2rem}.footer-tile .brand-line{font-family:var(--display);font-weight:750;font-size:1.375rem;letter-spacing:-.02em;margin:0}.footer-tile dl{margin:0;display:grid;gap:1.25rem 2rem}.footer-tile dt{font-size:.875rem;font-weight:700;color:var(--sky);margin-bottom:.25rem}.footer-tile dd{margin:0;color:var(--on-navy)}.footer-tile address{font-style:normal}.footer-tile address+address{margin-top:.75rem}.footer-tile ul{list-style:none;margin:0;padding:0}.footer-tile li a{display:inline-flex;align-items:center;min-height:44px;color:var(--white);overflow-wrap:anywhere}.footer-tile li a:hover{color:var(--sky)}.footer-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding:1.25rem .5rem 0;font-size:.875rem;color:var(--ink-2)}.footer-base p{margin:0;max-width:none}@media(min-width:48rem){.footer-tile dl{grid-template-columns:1.2fr 1.3fr .8fr}}@media(min-width:72rem){.footer-tile{grid-template-columns:1fr 2.6fr}}.page-title{flex:2 1 36rem;min-height:18rem;display:flex;flex-direction:column;justify-content:space-between;gap:1.75rem}.page-title p{max-width:52ch}.page-title h1{margin-bottom:1rem}.chart-tile{flex:1 1 21rem;display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem}.chart-tile h2{font-family:var(--text);font-size:1.0625rem;font-weight:700;letter-spacing:0;line-height:1.3}.explorer{display:grid;gap:var(--gap);align-items:start}.explorer>*{min-width:0}.index{list-style:none;margin:0;padding:.5rem;background:var(--white);border-radius:var(--radius);display:grid;gap:.25rem}.index a{display:flex;align-items:center;gap:.875rem;min-height:72px;padding:.375rem .875rem .375rem .375rem;border-radius:var(--radius-s);color:var(--ink);text-decoration:none}.index a:hover{background:var(--ground);color:var(--ink)}.index img,.index .empty{flex:none;width:60px;height:60px;border-radius:.625rem;object-fit:cover}.index .empty{background:var(--ground);display:grid;place-items:center;color:var(--ink-2)}.index .name{flex:1;min-width:0;display:grid;line-height:1.3}.index .name strong{font-size:1.0625rem}.index .name span,.index .count{font-size:.875rem;color:var(--ink-2)}.index .count{font-weight:700;white-space:nowrap}.cards{display:grid;gap:var(--gap)}.cards>*,.card>*{min-width:0}@media(min-width:64rem){.explorer{grid-template-columns:minmax(20rem,1fr) minmax(0,1.8fr)}.index{position:sticky;top:var(--gap);max-height:calc(100vh - 2 * var(--gap));overflow-y:auto}}.card{background:var(--white);border-radius:var(--radius);padding:1rem;display:grid;gap:1rem;scroll-margin-top:var(--gap)}.card .body{padding:.5rem .5rem .25rem;display:grid;gap:1rem}.card .title-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 2rem}.card .no{font-size:.875rem;font-weight:700;color:var(--ink-2);display:block;margin-bottom:.4rem}.card h2{font-size:clamp(2rem,1.5rem + 1.8vw,3.25rem)}.card .work{font-size:clamp(1.0625rem,1rem + .3vw,1.1875rem);margin:0}.facts{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.5rem}.facts div{background:var(--ground);border-radius:var(--radius-s);padding:.875rem 1rem}.facts dt{font-size:.8125rem;font-weight:700;color:var(--ink-2)}.facts dd{margin:.1rem 0 0;font-weight:600;line-height:1.35}.carousel{list-style:none;margin:0;padding:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:var(--radius-s);scrollbar-width:thin;overscroll-behavior-x:contain}.carousel li{flex:0 0 100%;scroll-snap-align:start;position:relative}.carousel figure{margin:0;position:relative;height:clamp(16rem,10rem + 24vw,33rem);background:var(--ground)}.carousel img{width:100%;height:100%;object-fit:cover}.carousel figcaption{position:absolute;left:.875rem;right:.875rem;bottom:.875rem;background:var(--white);border-radius:.75rem;padding:.6rem .875rem;font-size:.9375rem;line-height:1.35}.carousel .counter{position:absolute;top:.875rem;right:.875rem;background:var(--ink);color:var(--white);border-radius:999px;padding:.2rem .75rem;font-size:.875rem;font-weight:700}.thumbs{list-style:none;margin:0;padding:2px;display:flex;gap:.5rem;overflow-x:auto}.thumbs a{position:relative;display:block;width:6.5rem;height:4.5rem;border-radius:.75rem;overflow:hidden;border:3px solid transparent;flex:none}.thumbs a:hover{border-color:var(--ink)}.thumbs img{width:100%;height:100%;object-fit:cover}.no-photos{height:clamp(16rem,10rem + 18vw,28rem);border-radius:var(--radius-s);color:var(--white);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;text-align:center;padding:1.5rem}.no-photos strong{font-family:var(--display);font-size:1.75rem;font-weight:720}.no-photos svg{color:var(--sky)}.no-photos a{color:var(--white);display:inline-block;padding-block:.7rem}.office-tile h2.label,.info-tile h2.label{font-family:var(--text);font-stretch:100%;letter-spacing:0;line-height:1.4}.hours-tile p{margin:0}.cta-tile{flex:2 1 34rem;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem 2.5rem}.cta-tile h2{font-size:clamp(2rem,1.6rem + 1.6vw,3rem)}.link-tile{flex:1 1 18rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;text-decoration:none}.link-tile:hover{color:var(--ink);background:var(--white);outline:2px solid var(--ink);outline-offset:-2px}.link-tile strong{display:block;font-size:1.1875rem}.link-tile span{font-size:.9375rem;color:var(--ink-2)}.contact-hero{flex:1.7 1 36rem;min-height:20rem;display:flex;flex-direction:column;justify-content:space-between;gap:2rem}.hours-tile{flex:1 1 21rem;display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem}.week{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.375rem}.week li{height:4.5rem;border-radius:.75rem;display:grid;place-content:center;text-align:center;line-height:1.2;background:#0f172414}.week li.open{background:var(--navy);color:var(--white)}.week abbr{text-decoration:none;font-weight:700}.week small{display:block;font-size:.6875rem;font-weight:600}.hours-tile .time{font-family:var(--display);font-size:2.25rem;font-weight:780;letter-spacing:-.02em;line-height:1;display:block}.form-tile{flex:1.5 1 34rem;display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;align-content:start}.form-off a{overflow-wrap:anywhere}.form-tile h2{font-size:clamp(2rem,1.6rem + 1.6vw,3rem)}.form-off{margin:0;max-width:none;background:var(--ground);border-radius:var(--radius-s);padding:1rem 1.25rem;border-left:4px solid var(--navy)}.form{display:grid;gap:1.25rem}.form>fieldset{border:0;margin:0;padding:0;display:grid;gap:1.25rem;min-width:0}.form .filter legend{padding:0;margin-bottom:.625rem;font-size:.9375rem;font-weight:700}.form .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem}.field{display:grid;gap:.375rem}.field label{font-size:.9375rem;font-weight:700}.field label span{font-weight:400;color:var(--ink-2)}.field input,.field select,.field textarea{font:inherit;color:var(--ink);background:var(--ground);min-height:52px;padding:.6rem 1rem;border:1.5px solid transparent;border-radius:.75rem;width:100%}.field input:focus,.field textarea:focus{border-color:var(--navy)}.field textarea{min-height:8rem;resize:vertical;padding-block:.875rem}.form .actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}.form .actions p{margin:0;font-size:.9375rem;color:var(--ink-2)}.form fieldset:disabled .btn{background:var(--ink-2);cursor:not-allowed}.form fieldset:disabled input,.form fieldset:disabled textarea,.form fieldset:disabled label{cursor:not-allowed}.office-tile{padding:1.5rem 1.75rem;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem}.office-tile .label{display:block;font-size:.875rem;font-weight:700;color:var(--ink-2)}.office-tile address{font-style:normal;font-weight:650;line-height:1.4}.office-tile .btn{min-height:44px;font-size:.9375rem}.side-photo{flex:1 1 22rem;min-height:clamp(18rem,12rem + 14vw,26rem)}.text-tile{flex:1 1 24rem;display:grid;gap:1rem;align-content:start}.text-tile h2{font-size:clamp(1.75rem,1.4rem + 1.4vw,2.5rem)}.text-tile .small-h{font-size:clamp(1.375rem,1.2rem + .8vw,1.75rem)}.text-tile p{margin:0}.stage-tiles{flex:1 1 100%;list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--gap)}.stage-tiles .service{min-height:12rem}.sectors .where{font-size:.9375rem}.page-head,.section--concrete,.section--ink{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.page-head{padding-top:var(--gap)}.page-head>.wrap{max-width:none;background:var(--navy);color:var(--white);border-radius:var(--radius);padding:var(--pad);display:grid;gap:1.25rem}.page-head .lede{color:var(--on-navy);max-width:46rem}.page-head a,.page-head .contact-list a{color:var(--white)}.section{padding-block:clamp(2rem,1rem + 3vw,4rem)}.section--concrete>.wrap,.section--ink>.wrap{max-width:none;border-radius:var(--radius);padding:var(--pad)}.section--concrete>.wrap{background:var(--white)}.section--ink>.wrap{background:var(--navy);color:var(--white)}.section--ink a:not(.btn){color:var(--sky)}.section-head{display:grid;gap:.75rem;margin-bottom:clamp(1.5rem,1rem + 2vw,2.5rem);max-width:52rem}.section-head p{color:var(--ink-2);font-size:1.125rem}.section--ink .section-head p{color:var(--on-navy)}.section-head.flush{margin-bottom:0}.split{display:grid;gap:clamp(1.5rem,1rem + 3vw,4rem)}@media(min-width:52rem){.split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}}.stages{list-style:none;margin:0;padding:0;display:grid;gap:var(--gap);counter-reset:stage}.stages li{counter-increment:stage;background:var(--white);border-radius:var(--radius);padding:1.25rem 1.5rem;display:flex;gap:1rem;align-items:baseline;font-family:var(--display);font-weight:720;font-size:1.5rem;letter-spacing:-.02em;line-height:1.15}.stages li:before{content:"0" counter(stage);font-size:1.125rem;color:var(--ink-2)}.section--concrete .stages li{background:var(--ground)}.feature{margin:0;display:grid;gap:.75rem}.feature img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-s)}.feature .where,.where{color:var(--ink-2);font-size:.9375rem}.sectors{list-style:none;margin:0;padding:0;display:grid;gap:var(--gap)}.sectors>li{background:var(--white);border-radius:var(--radius);padding:1.25rem 1.5rem;display:grid;gap:.5rem}.sectors h3{font-size:1.5rem}.sectors ul{list-style:none;margin:0;padding:0;display:grid;gap:.125rem}.sectors ul a{display:inline-flex;align-items:center;min-height:44px;font-weight:600}.sectors .none{color:var(--ink-2)}@media(min-width:52rem){.sectors>li{grid-template-columns:18rem 1fr;gap:2rem}.sectors h3{padding-top:.6rem}}.people{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap)}@media(min-width:40rem){.people{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}}.people li{background:var(--white);border-radius:var(--radius);padding:.625rem .625rem 1rem}.people img{width:100%;aspect-ratio:4 / 5;object-fit:cover;object-position:center 20%;border-radius:.75rem}.people h3{font-size:1.125rem;margin:.75rem .25rem 0}.people p{color:var(--ink-2);font-size:.875rem;margin:.25rem .25rem 0}.callband{display:grid;gap:2rem}@media(min-width:56rem){.callband{grid-template-columns:1fr 1fr;align-items:end}}.section--ink .btn--primary{background:var(--sky);color:var(--ink)}.contact-list{list-style:none;margin:0;padding:0;display:grid;gap:.25rem}.contact-list a{display:inline-flex;align-items:center;min-height:44px;font-weight:600}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
