@font-face{font-family:Forum;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/forum-latin-400.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-latin-var.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-latin-var.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-latin-var.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-latin-var.woff2)format("woff2")}:root{--blue:#2c3444;--blue-2:#1f2634;--grey:#787a81;--grey-2:#b9bbc1;--cream:#f2ede4;--paper:#f7f6f3;--ink:#1f2430;--white:#fff;--serif:"Forum",Georgia,serif;--sans:"Inter",system-ui,Arial,sans-serif;--max:1240px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 40px));margin:0 auto}.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--grey);font-size:12px;font-weight:600}.h1,.h2,.h3{font-family:var(--serif);color:var(--blue);letter-spacing:.01em;font-weight:400;line-height:1.05}.h2{font-size:clamp(34px,4.4vw,54px)}.h3{font-size:clamp(24px,2.4vw,30px)}.h2 em,.h1 em{color:var(--grey);font-style:normal}.phero .h1 em,.hero .h1 em{color:#dfe1e6}.lead{color:#4a4e5a;max-width:640px;font-size:17px}p+p{margin-top:14px}.btn{border:1px solid var(--blue);background:var(--blue);color:#fff;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;align-items:center;gap:10px;padding:15px 26px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.btn:hover{background:var(--blue-2)}.btn.ghost{color:var(--blue);background:0 0}.btn.ghost.light{color:#fff;border-color:#ffffffb3}.btn.light{color:var(--blue);background:#fff;border-color:#fff}.sec{padding:clamp(70px,8.5vw,112px) 0}.sec.cream{background:var(--cream)}.sec.paper{background:var(--paper)}.sec.blue{background:var(--blue);color:#fff}.sec.blue .h2,.sec.blue .h3{color:#fff}.sec.blue .h2 em,.sec.blue .eyebrow{color:var(--grey-2)}.sec.blue p{color:#ffffffdb}.nav{z-index:5;padding:22px 0;position:absolute;inset:0 0 auto}.nav.solid{background:var(--blue);position:relative}.nav .wrap{justify-content:space-between;align-items:center;gap:24px;display:flex}.logo{font-family:var(--serif);letter-spacing:.22em;color:#fff;font-size:30px;line-height:1}.links{letter-spacing:.07em;text-transform:uppercase;color:#fff;gap:24px;font-size:12.5px;font-weight:600;display:flex}.links a{opacity:.86;border-bottom:1px solid #0000;padding-bottom:3px}.links a:hover,.links a.on{opacity:1;border-bottom-color:#ffffffb3}.nav .btn{flex:none;padding:12px 20px}.burger{color:#fff;background:0 0;border:1px solid #fff9;width:44px;height:44px;font-size:22px;display:none}.phero{color:#fff;background:var(--blue);align-items:flex-end;min-height:62vh;display:flex;position:relative}.phero .bg{position:absolute;inset:0;overflow:hidden}.phero .bg img{object-fit:cover;object-position:50% 45%;width:100%;height:100%}.phero .bg:after{content:"";background:linear-gradient(#2c3444b8 0%,#2c34446b 45%,#2c3444eb 100%);position:absolute;inset:0}.phero .wrap{padding:150px 0 64px;position:relative}.phero .h1{color:#fff;max-width:900px;margin:14px 0 18px;font-size:clamp(42px,6vw,76px)}.phero p{color:#ffffffe6;max-width:640px;font-size:18px}.phero .eyebrow{color:var(--grey-2)}.crumbs{letter-spacing:.12em;text-transform:uppercase;color:#ffffffb3;margin-bottom:10px;font-size:12px}.crumbs a:hover{color:#fff}.hero{color:#fff;background:var(--blue);align-items:flex-end;min-height:92vh;display:flex;position:relative}.hero__bg{position:absolute;inset:0;overflow:hidden}.hero__bg img{object-fit:cover;object-position:50% 38%;width:100%;height:100%}.hero__bg:after{content:"";background:linear-gradient(#2c34449e 0%,#2c34444d 40%,#2c3444e6 100%);position:absolute;inset:0}.hero .wrap{grid-template-columns:1.15fr .85fr;align-items:end;gap:40px;padding:150px 0 72px;display:grid;position:relative}.hero .h1{color:#fff;margin:14px 0 22px;font-size:clamp(44px,6.4vw,84px)}.hero p{color:#ffffffe6;max-width:560px;font-size:18px}.hero .cta{flex-wrap:wrap;gap:14px;margin-top:30px;display:flex}.hero .proof{border-top:1px solid #ffffff40;flex-wrap:wrap;gap:28px;padding-top:22px;display:flex}.hero .proof div b{font-family:var(--serif);font-size:38px;font-weight:400;line-height:1;display:block}.hero .proof div span{letter-spacing:.14em;text-transform:uppercase;color:var(--grey-2);font-size:12px}.hero .eyebrow{color:var(--grey-2)}.strip{background:var(--blue);color:#fff;letter-spacing:.12em;text-transform:uppercase;padding:18px 0;font-size:12.5px}.strip .wrap{opacity:.85;flex-wrap:wrap;justify-content:center;gap:34px;display:flex}.cat-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px;display:grid}.cat{aspect-ratio:3/4;background:var(--blue);display:block;position:relative;overflow:hidden}.cat img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.cat:hover img{transform:scale(1.04)}.cat .t{color:#fff;background:linear-gradient(#2c344400,#2c3444eb);padding:24px;position:absolute;inset:auto 0 0}.cat .t h3{font-family:var(--serif);font-size:28px;font-weight:400;line-height:1.05}.cat .t span{letter-spacing:.16em;text-transform:uppercase;color:var(--grey-2);font-size:11.5px}.cat .t small{color:#ffffffd9;margin-top:8px;font-size:13px;display:block}.svcs{gap:22px;margin-top:48px;display:grid}.svc{background:#fff;border:1px solid #e6e4df;grid-template-columns:.9fr 1.1fr;gap:0;display:grid}.svc:nth-child(2n){grid-template-columns:1.1fr .9fr}.svc:nth-child(2n) .pic{order:2}.svc .pic{background:var(--blue);min-height:360px}.svc .pic img{object-fit:cover;width:100%;height:100%}.svc .txt{align-self:center;padding:44px 48px}.svc .txt .n{letter-spacing:.2em;color:var(--grey);font-size:12px;font-weight:600}.svc .txt .h3{margin:8px 0 14px}.svc .txt p{color:#4a4e5a;font-size:15.5px}.svc.noimg{grid-template-columns:1fr}.svc.noimg .txt{max-width:820px}.split{grid-template-columns:1fr 1fr;align-items:center;gap:64px;display:grid}.split .pic{position:relative}.split .pic img{aspect-ratio:4/5;object-fit:cover;width:100%}.split .pic.land img{aspect-ratio:4/3}.split .pic .tag{background:var(--blue);color:#fff;max-width:260px;padding:22px 26px;position:absolute;bottom:36px;left:-18px}.split .pic .tag b{font-family:var(--serif);font-size:40px;font-weight:400;line-height:1;display:block}.split .pic .tag span{letter-spacing:.14em;text-transform:uppercase;color:var(--grey-2);font-size:12px}.ticks{gap:12px;margin-top:26px;list-style:none;display:grid}.ticks li{padding-left:28px;font-size:15.5px;position:relative}.ticks li:before{content:"";background:currentColor;width:14px;height:1px;position:absolute;top:12px;left:0}.points{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px;display:grid}.point{border-top:1px solid #ffffff40;padding-top:18px}.point b{font-family:var(--serif);margin-bottom:8px;font-size:26px;font-weight:400;display:block}.point p{font-size:14.5px}.proj-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px;display:grid}.pcard{aspect-ratio:4/5;background:var(--blue);display:block;position:relative;overflow:hidden}.pcard img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.pcard:hover img{transform:scale(1.04)}.pcard .t{color:#fff;background:linear-gradient(#2c344400,#2c3444eb);padding:22px;position:absolute;inset:auto 0 0}.pcard .t h3{font-family:var(--serif);font-size:26px;font-weight:400;line-height:1.05}.pcard .t span{letter-spacing:.16em;text-transform:uppercase;color:var(--grey-2);font-size:11.5px}.project{border-top:1px solid #e6e4df;grid-template-columns:.8fr 1.2fr;gap:48px;padding:48px 0;display:grid}.project .h3{margin:6px 0 12px}.project p{color:#4a4e5a;font-size:15.5px}.project .gal{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.project .gal figure{aspect-ratio:1;background:var(--blue);overflow:hidden}.project .gal figure.w{aspect-ratio:2;grid-column:span 2}.project .gal figure.tall{aspect-ratio:auto;grid-row:span 2}.project .gal img{object-fit:cover;width:100%;height:100%}.gcard{background:#fff;border:1px solid #e6e4df;padding:34px}.gcard .stars{color:#f5b400;letter-spacing:4px;font-size:22px}.gcard h3{font-family:var(--serif);color:var(--blue);margin:8px 0 6px;font-size:32px;font-weight:400}.gcard p{color:#4a4e5a;font-size:14px}.gcard .btn{margin-top:22px}.chips{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.chips span{letter-spacing:.04em;background:#fff;border:1px solid #d9d7d1;padding:10px 16px;font-size:13px}.cta-band{background:var(--blue);color:#fff}.cta-band .wrap{grid-template-columns:1.2fr .8fr;align-items:center;gap:40px;display:grid}.cta-band .h2{color:#fff}.cta-band .h2 em{color:var(--grey-2)}.cta-band p{color:#ffffffd9;margin-top:14px;font-size:17px}.cta-band .btns{flex-wrap:wrap;justify-content:flex-end;gap:14px;display:flex}.contact .wrap{grid-template-columns:.9fr 1.1fr;gap:60px;display:grid}.form{background:var(--cream);gap:14px;padding:40px;display:grid}.form label{letter-spacing:.12em;text-transform:uppercase;color:#5b5f6b;gap:6px;font-size:12px;font-weight:600;display:grid}.form input,.form select,.form textarea{font:inherit;background:#fff;border:1px solid #d9d7d1;width:100%;padding:13px 14px;font-size:15px}.form textarea{min-height:120px}.form .row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form .up{text-align:center;color:#5b5f6b;background:#fff;border:1px dashed #b9b8b4;padding:18px;font-size:13px}.form small{color:#7a7d87;font-size:12px}.contact .call{border-top:1px solid #e6e4df;gap:8px;margin-top:26px;padding-top:22px;font-size:15px;display:grid}.contact .call b{font-family:var(--serif);color:var(--blue);font-size:30px;font-weight:400}footer{background:var(--blue-2);color:#fffc;padding:60px 0 28px;font-size:14px}footer .wrap{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;display:grid}footer h4{letter-spacing:.18em;text-transform:uppercase;color:var(--grey-2);margin-bottom:14px;font-size:12px;font-weight:600}footer a{margin-bottom:8px;display:block}footer .legal{color:#ffffff80;border-top:1px solid #ffffff26;flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;gap:10px;padding-top:18px;font-size:12px;display:flex}.mob{display:none}@media (width<=960px){.links{display:none}.burger{display:block}.hero .wrap{grid-template-columns:1fr;padding-top:120px}.cat-grid{grid-template-columns:1fr 1fr}.svc,.svc:nth-child(2n){grid-template-columns:1fr}.svc:nth-child(2n) .pic{order:0}.svc .pic{min-height:260px}.svc .txt{padding:30px 28px}.split,.contact .wrap,.cta-band .wrap,.project{grid-template-columns:1fr;gap:36px}.split .pic .tag{left:16px}.points{grid-template-columns:1fr}.proj-grid{grid-template-columns:1fr 1fr}.cta-band .btns{justify-content:flex-start}footer .wrap{grid-template-columns:1fr 1fr}}@media (width<=600px){.cat-grid,.proj-grid{grid-template-columns:1fr}.form{padding:24px}.form .row{grid-template-columns:1fr}.project .gal{grid-template-columns:1fr 1fr}.mob{z-index:9;gap:0;display:flex;position:fixed;bottom:0;left:0;right:0}.mob a{text-align:center;letter-spacing:.08em;text-transform:uppercase;flex:1;padding:16px;font-size:13px;font-weight:600}.mob a.q{background:var(--blue);color:#fff}.mob a.c{color:var(--blue);background:#fff;border-top:1px solid #d9d7d1}body{padding-bottom:56px}}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn.ghost.light{background:0 0}.btn.ghost.light:hover{background:#ffffff1f}.pcard.area .t{background:linear-gradient(#2c344400,#2c3444e6 60%);padding-top:70px}.split .pic img{height:auto}.mnav{display:none}@media (width<=1180px){.links{display:none}.burger{display:block}.mnav{background:var(--blue-2);border-top:1px solid #ffffff26;padding:8px 0 20px;position:absolute;top:100%;left:0;right:0}.mnav[hidden]{display:none}.mnav:not([hidden]){display:block}.mnav a{letter-spacing:.08em;text-transform:uppercase;color:#fff;border-bottom:1px solid #ffffff1a;padding:14px 20px;font-size:13px;font-weight:600;display:block}.mnav a.on{background:#ffffff0f}}@media (width>=1181px) and (width<=1300px){.links{letter-spacing:.05em;gap:16px;font-size:12px}.nav .wrap{gap:16px}.logo{font-size:26px}}@media (width<=600px){.nav>.wrap>.btn{display:none}}.form .hp{opacity:0;width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form label.up{text-transform:none;letter-spacing:0;cursor:pointer;font-size:13px;font-weight:400;display:block}.form label.up:hover,.form label.up:focus-within{border-color:var(--blue)}.form label.up input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.form .files{color:var(--blue);margin-top:6px;font-weight:600;display:block}.form .status{border-left:3px solid var(--blue);color:var(--blue);background:#fff;padding:14px 16px;font-size:14px}.form .status.err{color:#7a1a14;border-left-color:#b3261e}.form .btn[disabled]{opacity:.6;cursor:wait}.contact .call a.tel{color:var(--blue);font-size:19px;font-weight:600}.contact .call a.mail{color:var(--blue);text-underline-offset:3px;text-decoration:underline}.crumbs .sep{opacity:.9}.area-grid{grid-template-columns:repeat(2,1fr);gap:22px;margin-top:44px;display:grid}.area-svc{background:#fff;border:1px solid #e6e4df;padding:34px 36px}.area-svc .n{letter-spacing:.2em;color:var(--grey);font-size:12px;font-weight:600}.area-svc h3{margin:8px 0 12px}.area-svc p{color:#4a4e5a;font-size:15.5px}.area-svc .more{letter-spacing:.08em;text-transform:uppercase;color:var(--blue);border-bottom:1px solid var(--blue);margin-top:16px;padding-bottom:2px;font-size:12.5px;font-weight:600;display:inline-block}.area-svc .more+.more{margin-left:20px}.area-svc .more:hover{color:var(--grey)}.sec.cream .area-svc{background:#fff}.near{border-top:1px solid #e6e4df;margin-top:34px;padding-top:26px}.near .eyebrow{margin-bottom:6px}.other-areas{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.other-areas a{letter-spacing:.04em;background:#fff;border:1px solid #d9d7d1;padding:10px 16px;font-size:13px;transition:all .2s}.other-areas a:hover{border-color:var(--blue);color:var(--blue)}.area-text p{color:#4a4e5a;font-size:16px}.area-text .lead{font-size:17px}.sec.blue .area-text p{color:#ffffffdb}@media (width<=960px){.area-grid{grid-template-columns:1fr}.area-svc{padding:28px 26px}}
