:root{--navy:#101b2a;--navy2:#152538;--ink:#192534;--muted:#697583;--lime:#c4ef67;--cyan:#55c5d8;--paper:#f5f5f1;--line:#dfe3df;--white:#fff;--font:'Manrope','Arial',sans-serif;--body:'DM Sans','Arial',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.topline{background:#0b1420;color:#a6b1bc;font-size:11px;letter-spacing:.04em}.topline-inner{height:34px;display:flex;align-items:center;justify-content:space-between}.header{height:82px;background:rgba(16,27,42,.98);color:white;position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(255,255,255,.09)}.nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;gap:10px;align-items:center;min-width:198px}.brand-mark{font:800 26px var(--font);letter-spacing:-3px;color:white}.brand-mark span{color:var(--lime)}.brand-name{font:700 11px var(--font);letter-spacing:.15em;line-height:1.35}.brand-name small{display:block;font:400 9px var(--body);letter-spacing:.12em;color:#98a6b5;margin-top:2px}.main-nav{display:flex;gap:27px;font-size:12px;color:#d3dbe2}.main-nav a:hover,.phone:hover{color:var(--lime)}.header-contact{display:grid;text-align:right;gap:3px}.phone{font:700 14px var(--font)}.callback{font-size:11px;color:var(--lime)}.callback span{margin-left:7px}.menu-toggle{display:none}.hero{background:var(--navy);color:white;min-height:586px;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;min-height:530px}.hero-copy{padding:55px 0 62px;position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:700;color:#b4c2cf;display:flex;align-items:center;gap:11px}.eyebrow span:not(.pulse){opacity:.65;margin-left:18px}.pulse{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(196,239,103,.12)}h1,h2{font:600 clamp(34px,4.2vw,58px)/1.11 var(--font);letter-spacing:-.055em;margin:23px 0}h1{font-size:clamp(40px,5vw,66px)}h1 em,h2 em{font-style:normal;color:var(--lime)}.hero-lead{font-size:16px;line-height:1.8;color:#c0cad4;max-width:520px}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:31px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:15px 19px;font:700 12px var(--font);border:0;cursor:pointer}.button-lime{background:var(--lime);color:var(--navy);transition:transform .2s,background .2s}.button-lime:hover{background:#d4f78a;transform:translateY(-2px)}.button span{font-size:17px;line-height:1}.text-link{font-size:11px;color:#dce3e8;border-bottom:1px solid #687887;padding-bottom:4px}.text-link span{margin-left:8px;color:var(--lime)}.hero-note{display:flex;align-items:center;gap:11px;color:#9baab8;font-size:10px;margin-top:47px}.note-line{width:25px;height:1px;background:var(--lime)}.hero-visual{height:480px;position:relative;background:radial-gradient(ellipse at 50% 48%,#20364a 0,rgba(16,27,42,0) 68%);margin-left:-16px}.visual-top,.visual-caption{display:flex;justify-content:space-between;color:#9aabba;font-size:9px;letter-spacing:.14em;position:absolute;left:35px;right:35px;z-index:1}.visual-top{top:17px}.visual-top span:last-child{color:var(--lime)}.building{position:absolute;inset:0;width:100%;height:100%}.visual-caption{bottom:10px;letter-spacing:.04em;line-height:1.5}.visual-caption b{font:500 10px var(--body);color:#91a0ae}.hero-bottom{height:56px;border-top:1px solid rgba(255,255,255,.11);display:flex;justify-content:space-between;align-items:center;color:#9aabba;font-size:9px;letter-spacing:.08em}.proof{background:var(--lime);color:#182633}.proof-grid{height:92px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center}.proof-grid div{padding-left:28px;border-left:1px solid rgba(16,27,42,.19)}.proof-grid div:first-child{padding-left:0;border:0}.proof b{font:700 17px var(--font);display:block;letter-spacing:-.04em}.proof span{font-size:10px;color:#455343}.section{padding:105px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:46px}.section-head h2,.company h2{font-size:clamp(34px,4vw,48px);margin:17px 0 0}.section-head>p{max-width:380px;font-size:13px;color:var(--muted);margin:0 0 4px}.dark-eyebrow{color:#77828c}.services{background:var(--paper)}.service-list{border-top:1px solid #cdd3d1}.service-card{display:grid;grid-template-columns:55px 64px 1fr 32px;align-items:center;min-height:95px;border-bottom:1px solid #cdd3d1;transition:background .2s,padding .2s}.service-card:hover{background:white;padding:0 14px}.service-no{font:500 11px var(--body);color:#87928e}.service-icon{font:400 29px var(--font);color:#64a538}.service-text b{display:block;font:650 17px var(--font);letter-spacing:-.03em}.service-text small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.service-arrow{font-size:20px;color:#7e8a8a;text-align:right}.service-card:hover .service-arrow{color:#55912b}.section-foot{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);padding-top:22px}.section-foot a{color:#273745;font-weight:600}.section-foot b{color:#579435;margin-left:8px}.projects{background:#e9eeeb}.projects .section-head{margin-bottom:35px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project-card{display:block}.project-image{height:255px;position:relative;overflow:hidden;background:#ced9d4}.project-main .project-image{height:365px}.project-tag{position:absolute;left:17px;top:17px;z-index:1;background:var(--lime);padding:7px 10px;font-size:8px;font-weight:700;letter-spacing:.12em;color:#26352c}.image-1{background:linear-gradient(145deg,#b7c6c1,#e1e6de 45%,#738990)}.image-2{background:linear-gradient(145deg,#bac9cb,#e2e8e2 47%,#8c9ca0)}.image-3{background:linear-gradient(150deg,#c3c8b8,#e6dfc7 55%,#88978d)}.image-4{background:linear-gradient(140deg,#ded4c3,#f0e6d4 52%,#ab8e73)}.building-art{position:absolute;left:14%;right:10%;bottom:-4px;height:68%;display:flex;align-items:stretch;gap:5px;transform:perspective(500px) rotateY(-10deg)}.building-art i{display:block;flex:1;background:repeating-linear-gradient(0deg,transparent 0 24px,rgba(243,246,232,.8) 25px 28px),repeating-linear-gradient(90deg,#53676b 0 34px,#94a6a0 35px 39px);box-shadow:inset 0 0 30px #293d4340}.image-1 .building-art i:nth-child(2){height:83%;align-self:flex-end}.image-1 .building-art i:nth-child(3){height:92%;align-self:flex-end}.image-2 .building-art{left:24%;right:24%;height:85%}.image-2 .building-art i{background:repeating-linear-gradient(0deg,transparent 0 21px,rgba(244,246,238,.9) 22px 27px),repeating-linear-gradient(90deg,#899995 0 26px,#b2bfba 27px 31px)}.image-3 .building-art{height:44%;left:9%;right:9%;transform:none}.image-3 .building-art i{background:repeating-linear-gradient(0deg,transparent 0 28px,#f0eee1 29px 32px),linear-gradient(90deg,#a4a997,#838e7d);clip-path:polygon(0 12%,100% 0,100% 100%,0 100%)}.cafe-art{position:absolute;inset:19% 14% 0;background:linear-gradient(130deg,#b96f3f,#572f26);display:grid;place-items:center;box-shadow:0 12px 36px #5336273b}.cafe-art:before{content:'';position:absolute;inset:12% 0 55%;background:repeating-linear-gradient(90deg,#ead2ad 0 25%,#382c29 25% 50%)}.cafe-art span{position:relative;color:#f3e0bb;font:800 28px/1 var(--font);letter-spacing:.06em;text-align:center;text-shadow:0 2px 7px #33231e}.project-meta{display:flex;justify-content:space-between;align-items:center;padding:15px 2px}.project-meta small{display:block;font-size:9px;color:#78847f;margin-bottom:4px}.project-meta b{display:block;font:650 15px var(--font);letter-spacing:-.03em}.project-meta>span{font-size:20px;color:#6a7d73}.project-card:hover .project-meta>span{color:#579435;transform:translate(2px,-2px)}.all-projects{margin-top:25px;display:flex;align-items:center;gap:18px}.button-outline{border:1px solid #9aa7a0;color:#24332c;padding:12px 17px}.button-outline span{color:#579435}.all-projects>span{font-size:10px;color:#6e7b74}.dark-band{background:var(--navy);color:white;padding:94px 0 100px}.process-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:100px}.process-grid h2{font-size:clamp(38px,4vw,52px);margin:22px 0}.process-grid>div:first-child>p{max-width:340px;color:#a8b5c1;font-size:12px;line-height:1.8;margin:0 0 28px}.steps{border-top:1px solid #344353}.step{display:grid;grid-template-columns:42px 1fr 22px;gap:17px;padding:22px 0;border-bottom:1px solid #344353;align-items:start}.step>span{font:600 11px var(--body);color:var(--lime);padding-top:2px}.step b{font:600 15px var(--font)}.step p{margin:6px 0 0;color:#9caab7;font-size:11px}.step i{font-style:normal;color:#8fa0ad}.company{background:var(--paper)}.company-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px}.company-grid>div:last-child{padding-top:20px}.company-grid p{font-size:12px;color:var(--muted);line-height:1.8}.company-grid .company-lead{font-size:16px;color:#273644;line-height:1.65;margin:0 0 15px}.dark-link{display:inline-block;color:#283842;margin-top:18px;border-color:#b2bbb8}.dark-link span{color:#55912b}.request{background:#1a3040;color:white;padding:85px 0}.request-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.request h2{font-size:clamp(40px,4.5vw,58px);margin:21px 0}.request-grid>div:first-child>p{max-width:360px;color:#b1c0cb;font-size:12px;line-height:1.8}.request-phone{display:block;font:700 23px var(--font);margin-top:28px}.request-phone span{color:var(--lime);font-size:17px}.request-email{display:block;color:#b1c0cb;font-size:12px;margin-top:6px}.request-form{display:flex;flex-direction:column;gap:16px;padding-top:10px}.request-form label{font-size:10px;color:#b5c3cd;letter-spacing:.04em}.request-form input,.request-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #60717f;background:transparent;padding:12px 0;color:white;font:13px var(--body);outline:0;resize:vertical}.request-form input:focus,.request-form textarea:focus{border-color:var(--lime)}.request-form input::placeholder,.request-form textarea::placeholder{color:#8495a2}.request-form .button{align-self:flex-start;margin-top:5px}.request-form>small{font-size:9px;color:#9baab6;margin-top:-9px}.form-status{color:var(--lime);font-size:12px;margin:0}.footer{background:#0b1420;color:#aeb9c2}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:35px;padding:39px 0 33px;align-items:start}.footer-brand{align-self:center;color:white}.footer-main>div small{font-size:8px;letter-spacing:.15em;color:#7f8e9a}.footer-main p{font-size:11px;line-height:1.7;margin:8px 0}.footer-main p a:hover,.footer-bottom a:hover{color:var(--lime)}.footer-top{font-size:10px;color:var(--lime);align-self:center}.footer-bottom{border-top:1px solid #273340;padding:15px 0 19px;display:flex;justify-content:space-between;font-size:9px;color:#778592}.footer-bottom a{color:#9aa7b2}
@media(max-width:950px){.main-nav{gap:15px}.main-nav a{font-size:10px}.header-contact .phone{font-size:12px}.brand{min-width:170px}.process-grid{gap:50px}.request-grid{gap:55px}}
@media(max-width:720px){.wrap{width:min(100% - 38px,560px)}.topline-inner{height:30px;font-size:9px}.topline-inner span:last-child{display:none}.header{height:68px}.nav{gap:12px}.brand{min-width:auto}.brand-mark{font-size:24px}.brand-name{font-size:9px}.brand-name small{font-size:8px}.header-contact{margin-left:auto}.header-contact .phone{font-size:11px}.callback{font-size:9px}.menu-toggle{display:flex;flex-direction:column;gap:5px;order:3;border:0;background:transparent;padding:9px}.menu-toggle i{height:1px;width:20px;background:white;display:block}.main-nav{display:none;position:absolute;top:68px;left:0;right:0;background:#101b2a;padding:14px 20px 22px;flex-direction:column;gap:0;border-top:1px solid #35414e}.main-nav.open{display:flex}.main-nav a{font-size:13px;padding:11px 0;border-bottom:1px solid #2d3a47}.hero{min-height:0}.hero-grid{grid-template-columns:1fr;min-height:0}.hero-copy{padding:54px 0 15px}.hero h1{font-size:43px;margin:19px 0}.hero-lead{font-size:14px;max-width:460px}.hero-actions{gap:15px;align-items:flex-start;flex-direction:column;margin-top:24px}.hero-note{margin-top:27px}.hero-visual{height:310px;margin:0 -19px}.visual-top,.visual-caption{left:34px;right:34px}.hero-bottom{height:48px;font-size:8px}.hero-bottom span:nth-child(2){display:none}.proof-grid{height:auto;grid-template-columns:1fr 1fr;padding:18px 0;row-gap:17px}.proof-grid div{padding-left:15px}.proof b{font-size:14px}.proof span{font-size:9px}.section{padding:69px 0}.section-head{display:block;margin-bottom:30px}.section-head h2,.company h2{font-size:36px}.section-head>p{font-size:12px;margin-top:17px;max-width:480px}.service-card{grid-template-columns:29px 42px 1fr 20px;min-height:87px}.service-icon{font-size:25px}.service-text b{font-size:13px}.service-text small{font-size:9px;max-width:250px}.service-card:hover{padding:0 6px}.section-foot{gap:10px;align-items:flex-start;flex-direction:column;font-size:10px}.project-grid{gap:18px;grid-template-columns:1fr}.project-image,.project-main .project-image{height:250px}.project-meta b{font-size:13px}.all-projects{align-items:flex-start;flex-direction:column;gap:10px}.dark-band{padding:68px 0}.process-grid{grid-template-columns:1fr;gap:42px}.process-grid h2{font-size:42px}.step{grid-template-columns:32px 1fr 16px;gap:10px;padding:18px 0}.company-grid{grid-template-columns:1fr;gap:20px}.company-grid>div:last-child{padding-top:0}.company-grid p{font-size:11px}.company-grid .company-lead{font-size:14px}.request{padding:66px 0}.request-grid{grid-template-columns:1fr;gap:35px}.request h2{font-size:43px}.request-phone{font-size:21px}.footer-main{grid-template-columns:1fr 1fr;gap:18px;padding:32px 0}.footer-brand{grid-column:1/-1}.footer-top{justify-self:start}.footer-bottom{gap:8px;flex-wrap:wrap;font-size:8px}.footer-bottom span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}


@font-face{font-family:Bebas;src:url('/assets/fonts/BebasRegular.3616f33ca3.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Bebas;src:url('/assets/fonts/BebasBold.a6e7dcc1dd.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:OpenSans;src:url('/assets/fonts/OpenSans-Regular.5a3de56c6a.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:OpenSans;src:url('/assets/fonts/OpenSans-Semibold.3a000e1e02.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:OpenSans;src:url('/assets/fonts/OpenSans-Bold.cf02731f06.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
:root{--navy:#1d1d1b;--navy2:#1d1d1b;--ink:#1d1d1b;--muted:#626262;--lime:#FFD100;--cyan:#FFD100;--paper:#fff;--line:#e5e5e5;--white:#fff;--font:'Bebas','Arial Narrow',Impact,sans-serif;--body:'OpenSans',Arial,sans-serif}
body{background:#fff;color:#1d1d1b;font-family:var(--body)}
.topline{background:#1d1d1b;color:#fff}.topline-inner span:last-child{color:#FFD100}
.header{background:#fff;color:#1d1d1b;border-bottom:1px solid #e8e8e8;box-shadow:0 3px 16px #1d1d1b08}
.main-nav{color:#333}.main-nav a:hover,.phone:hover{color:#8a7000}.phone{color:#1d1d1b}.callback{color:#1d1d1b;border-bottom:2px solid #FFD100;padding-bottom:3px}
.brand{gap:9px;min-width:225px}.brand-emblem{width:42px;height:36px;object-fit:contain;flex:none}.brand-name{font:700 19px/1 Bebas,'Arial Narrow',sans-serif;letter-spacing:.045em;color:#1d1d1b}.brand-name small{font:600 7px/1.35 OpenSans,Arial,sans-serif;letter-spacing:.08em;color:#656565;margin-top:4px;text-transform:uppercase}
.hero{background:#fff;color:#1d1d1b}.hero h1,.hero h2{font-family:Bebas,'Arial Narrow',sans-serif;font-weight:700;letter-spacing:.005em;text-transform:uppercase}.hero h1{font-size:clamp(50px,6.5vw,82px);line-height:.98}.hero h1 em{color:#1d1d1b;background:linear-gradient(transparent 84%,#FFD100 84%)}.hero-lead{color:#4d4d4d}.hero .eyebrow{color:#555}.hero .pulse{background:#FFD100;box-shadow:0 0 0 5px #ffd10038}.hero-note{color:#595959}.note-line{background:#FFD100;height:3px}.hero-visual{background:radial-gradient(ellipse at 50% 48%,#f3f3f1 0,rgba(255,255,255,0) 68%)}.visual-top,.visual-caption{color:#555}.visual-top span:last-child{color:#1d1d1b}.visual-caption b{color:#1d1d1b}.hero-bottom{border-color:#d9d9d9;color:#666}.text-link{color:#333;border-color:#b8b8b8}.text-link span{color:#1d1d1b}.button-lime{background:#FFD100;color:#1d1d1b}.button-lime:hover{background:#e9c000}
.proof{background:#FFD100;color:#1d1d1b}.proof-grid div{border-color:#1d1d1b38}.proof span{color:#3c3c3c}
h1,h2{font-family:Bebas,'Arial Narrow',sans-serif;font-weight:700;letter-spacing:.005em;text-transform:uppercase}.section-head h2,.company h2{font-size:clamp(42px,4.8vw,60px);line-height:1}.dark-eyebrow{color:#5b5b5b}.service-card:hover{background:#fff9d6}.service-icon{color:#1d1d1b;text-shadow:2px 2px 0 #FFD100}.service-arrow,.service-card:hover .service-arrow{color:#1d1d1b}.section-foot a{color:#1d1d1b}.section-foot b{color:#1d1d1b}.projects{background:#f4f4f2}.project-tag{background:#FFD100;color:#1d1d1b}.project-image{filter:saturate(.22)}.project-card:hover .project-image{filter:saturate(.5)}.button-outline{border-color:#1d1d1b;color:#1d1d1b}.button-outline span{color:#1d1d1b}
.dark-band,.request{background:#1d1d1b;color:#fff}.dark-band h2,.request h2{font-family:Bebas,'Arial Narrow',sans-serif;font-weight:700;letter-spacing:.005em}.dark-band h2 em{color:#1d1d1b;background:#FFD100;padding:0 .08em}.eyebrow{color:#bcbcbc}.step{border-color:#474747}.step b{font-family:OpenSans,Arial,sans-serif}.step>span{color:#FFD100}.step p{color:#c4c4c4}.step i{color:#FFD100}.process-grid>div:first-child>p{color:#c4c4c4}.company{background:#fff}.company-grid .company-lead{color:#1d1d1b}.company-grid p{color:#5a5a5a}.dark-link span{color:#1d1d1b}.request-grid>div:first-child>p,.request-email{color:#c4c4c4}.request-phone span{color:#FFD100}.request-form label{color:#d0d0d0}.request-form input,.request-form textarea{border-color:#777}.request-form input:focus,.request-form textarea:focus{border-color:#FFD100}.request-form input::placeholder,.request-form textarea::placeholder{color:#aaa}.request-form>small{color:#c4c4c4}.form-status{color:#FFD100}
.footer{background:#fff;color:#4b4b47;border-top:4px solid #FFD100}.footer-brand .brand-name{color:#1d1d1b}.footer-brand .brand-name small{color:#666}.footer-brand .brand-emblem{background:#fff;padding:2px}.footer-main>div small{color:#6f5d00}.footer-top{color:#6f5d00}.footer-bottom{border-color:#deded9;color:#777}.footer-bottom a{color:#444}.footer-main p a:hover,.footer-bottom a:hover{color:#6f5d00}
@media(max-width:950px){.brand{min-width:190px}.brand-name{font-size:17px}}
@media(max-width:720px){.brand{min-width:0}.brand-emblem{width:36px;height:32px}.brand-name{font-size:16px}.brand-name small{font-size:6px}.hero h1{font-size:56px}.hero .hero-visual{background:radial-gradient(ellipse at 50% 48%,#f0f0ed 0,rgba(255,255,255,0) 68%)}.hero-bottom{border-color:#d9d9d9}.main-nav{background:#fff;border-color:#e5e5e5}.main-nav a{color:#1d1d1b;border-color:#e5e5e5}.menu-toggle i{background:#1d1d1b}}
.brand{min-width:132px}.brand-name{display:none}.brand-logo{display:block;width:125px;height:auto;max-height:76px;object-fit:contain}.footer-brand .brand-logo{width:158px;max-height:none;background:#fff;padding:5px}
@media(max-width:950px){.brand{min-width:132px}}
@media(max-width:720px){.brand{min-width:0}.brand-logo{width:112px;max-height:66px}.footer-brand .brand-logo{width:150px;max-height:none}}
.project-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 25px}.project-filter{appearance:none;border:1px solid #c8c8c4;background:transparent;color:#40403d;padding:9px 13px;font:600 11px OpenSans,Arial,sans-serif;cursor:pointer;transition:background .18s,color .18s,border-color .18s}.project-filter:hover,.project-filter.is-active{background:#1d1d1b;border-color:#1d1d1b;color:#fff}.project-filter.is-active span{color:#FFD100;margin-left:6px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}.project-card[hidden]{display:none}.project-image{height:auto!important;aspect-ratio:1.62;filter:none!important;background:#e4e4e0}.project-image img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.2);transition:filter .25s,transform .4s}.project-card:hover .project-image img{filter:saturate(.65);transform:scale(1.025)}.project-meta{align-items:flex-start;gap:10px;min-height:94px;padding:13px 2px 4px}.project-meta>div{min-width:0}.project-meta small{font-size:9px;line-height:1.5}.project-meta b{font:600 14px/1.45 OpenSans,Arial,sans-serif;letter-spacing:0}.project-meta>span{flex:none;color:#1d1d1b}.project-card:hover .project-meta>span{color:#1d1d1b}.project-tag{font:700 9px OpenSans,Arial,sans-serif;letter-spacing:.07em}.all-projects{justify-content:space-between}.all-projects>span{font-size:11px}
@media(max-width:950px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-filters{gap:7px}}
@media(max-width:720px){.project-grid{grid-template-columns:1fr;gap:13px}.project-image{aspect-ratio:1.7}.project-meta{min-height:0;padding:11px 2px 15px}.project-meta b{font-size:14px}.project-filters{flex-wrap:nowrap;overflow-x:auto;padding:0 0 8px;margin-right:-19px;scrollbar-width:thin}.project-filter{flex:none}.project-filters::-webkit-scrollbar{height:3px}.project-filters::-webkit-scrollbar-thumb{background:#b5b5b0}.all-projects{gap:12px}.all-projects>span{font-size:10px}}
.project-summary{font-size:11px;line-height:1.55;color:#575752;margin:8px 0 10px}.project-detail{border-top:1px solid #d7d7d2;padding-top:8px;margin-top:8px}.project-detail summary{font:700 10px OpenSans,Arial,sans-serif;cursor:pointer;list-style:none;color:#1d1d1b}.project-detail summary::-webkit-details-marker{display:none}.project-detail summary:after{content:'+';float:right;color:#1d1d1b;font-size:14px;line-height:10px}.project-detail[open] summary:after{content:'−'}.project-detail>p{font:400 10px/1.6 OpenSans,Arial,sans-serif;color:#444;margin:9px 0}.project-detail>small{font:400 9px/1.5 OpenSans,Arial,sans-serif;color:#676762;display:block;margin:0 0 4px}.project-meta{display:block}.project-card{cursor:default}


.portfolio-banner{padding:82px 0 50px;background:#f4f4f2}.portfolio-banner h1,.admin-heading h1{font-size:clamp(52px,7vw,86px);line-height:.92;margin:20px 0}.portfolio-banner h1 em,.admin-heading h1 em{background:#FFD100;color:#1d1d1b;padding:0 .08em}.portfolio-banner>div>p{font-size:15px;max-width:560px;color:#5a5a55}.portfolio-section{padding-top:42px}.portfolio-toolbar{display:grid;grid-template-columns:minmax(200px,.65fr) minmax(260px,1fr) auto;gap:18px;align-items:end;margin-bottom:29px}.portfolio-toolbar label,.admin-fields>label{display:grid;gap:7px;font-size:10px;font-weight:700;letter-spacing:.04em;color:#555}.portfolio-toolbar input,.portfolio-toolbar select,.admin-fields input,.admin-fields select,.admin-fields textarea,.coordinate-fields input,.worktype-box input{font:13px OpenSans,Arial,sans-serif;color:#1d1d1b;border:1px solid #c9c9c4;background:white;padding:12px;min-width:0}.portfolio-toolbar select,.portfolio-toolbar input{height:44px}.portfolio-toolbar #portfolio-count{font-size:11px;color:#555;padding-bottom:13px}.portfolio-empty{grid-column:1/-1;color:#555;padding:40px 0}.project-work-chips,.work-chip-list{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0 3px}.project-work-chips span,.work-chip-list span{border:1px solid #d5d5d0;padding:4px 7px;font-size:8px;line-height:1.2;color:#454541;background:#fff}.project-detail-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:45px;padding:65px max(calc((100% - 1180px)/2),32px) 58px;background:#f4f4f2;align-items:center}.project-detail-copy .back-link{display:block;font-size:11px;margin-bottom:25px;color:#555}.project-detail-copy>.project-tag{position:static;display:inline-block}.project-detail-copy h1{font-size:clamp(38px,5vw,63px);line-height:1.02;margin:20px 0}.project-detail-lead{font-size:16px;line-height:1.65;max-width:590px}.project-detail-image{width:100%;height:390px;object-fit:cover;filter:saturate(.3)}.project-detail-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px;padding-top:20px;border-top:1px solid #ccc}.project-detail-facts div{display:grid;gap:7px;align-content:start}.project-detail-facts small{font-size:8px;letter-spacing:.08em;color:#777}.project-detail-facts b{font-size:11px;line-height:1.5}.project-detail-content{width:min(1180px,calc(100% - 64px));margin:auto;padding:75px 0;display:grid;grid-template-columns:1fr 1fr;gap:70px}.project-detail-content h2{font-size:clamp(35px,4vw,48px);line-height:1;margin:16px 0 22px}.project-detail-content h2 em{font-style:normal;background:#FFD100;padding:0 .08em}.project-description{font-size:14px;line-height:1.8;color:#555}.work-chip-list span{font-size:10px;padding:7px 9px}.project-map-section iframe{display:block;border:0;width:100%;height:300px;margin-top:17px;filter:grayscale(.25)}.project-map-section>small{display:block;font-size:9px;color:#666;margin-top:8px}.project-map-section>small label{margin-left:8px}.project-map-section>small input{width:155px;border:0;background:transparent;color:#555;font:9px OpenSans,Arial,sans-serif}.project-detail-bottom{width:min(1180px,calc(100% - 64px));margin:0 auto 70px;display:flex;align-items:center;gap:25px}.project-not-found{width:min(1180px,calc(100% - 64px));margin:60px auto 110px}.project-loading{padding:100px;text-align:center;color:#666}
.admin-main{padding:52px 0 90px;background:#f5f5f2;min-height:80vh}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-heading h1{margin-bottom:14px}.admin-actions{display:flex;gap:9px}.admin-actions .button,.import-button{font-size:10px;padding:10px 12px}.import-button{position:relative;cursor:pointer}.import-button input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.admin-notice{font-size:11px;line-height:1.6;color:#62625d;background:#fff4bd;padding:14px 17px;margin:14px 0 27px}.admin-layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:24px;align-items:start}.admin-sidebar,.admin-form{background:#fff;border:1px solid #e0e0db;padding:20px}.admin-sidebar-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:14px}.admin-sidebar-heading .button{font-size:10px;padding:9px 11px}.admin-project-list{max-height:480px;overflow:auto;border-top:1px solid #deded9}.admin-project-item{display:grid;text-align:left;width:100%;border:0;border-bottom:1px solid #e4e4e0;background:#fff;padding:11px 7px;cursor:pointer}.admin-project-item.active,.admin-project-item:hover{background:#fff8d7}.admin-project-item b{font:600 11px/1.45 OpenSans,Arial,sans-serif}.admin-project-item small{font-size:9px;color:#777;margin-top:4px}.worktype-box{border-top:2px solid #1d1d1b;padding-top:16px;margin-top:22px}.worktype-box>b{font-size:13px}.worktype-box>p,.field-help{font-size:10px;line-height:1.5;color:#777}.worktype-box form{display:flex}.worktype-box input{width:100%;padding:9px;font-size:10px}.worktype-box form button{width:40px;border:0;background:#FFD100;font-size:20px;cursor:pointer}.worktype-box #worktype-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.worktype-box #worktype-list>span{font-size:9px;background:#f2f2ee;padding:5px}.worktype-box #worktype-list button{border:0;background:none;font-size:13px;cursor:pointer;color:#a33}.admin-form-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #deded9;padding-bottom:14px;margin-bottom:19px}.admin-form-top h2{font-size:30px;margin:9px 0 0}.admin-delete{color:#a33;border:0;background:none;text-decoration:underline;font-size:10px;cursor:pointer}.admin-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.admin-fields>label{font-size:9px}.admin-fields textarea{resize:vertical;line-height:1.5}.admin-fields .field-wide{grid-column:1/-1}.admin-fields fieldset{border:1px solid #d3d3ce;padding:12px}.admin-fields legend{font-size:10px;font-weight:700;padding:0 5px}.coordinate-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.coordinate-fields label{font-size:9px;display:grid;gap:6px}.admin-map-preview iframe{width:100%;height:200px;border:0;margin-top:12px}.admin-map-preview{font-size:10px;color:#777}.worktype-checklist{display:flex;flex-wrap:wrap;gap:8px 14px}.worktype-checklist label{display:flex;align-items:center;gap:6px;font-size:10px;cursor:pointer}.worktype-checklist input{accent-color:#1d1d1b}.admin-form-actions{display:flex;align-items:center;gap:14px;margin-top:20px}.admin-form-actions #save-status{font-size:10px;color:#4e7727}.admin-form-actions .button{padding:12px 15px}
@media(max-width:950px){.project-detail-hero{padding-left:32px;padding-right:32px;gap:25px}.project-detail-image{height:320px}.project-detail-content{gap:38px}.admin-layout{grid-template-columns:245px minmax(0,1fr)}.admin-sidebar,.admin-form{padding:15px}}
@media(max-width:720px){.portfolio-banner{padding:57px 0 35px}.portfolio-banner h1,.admin-heading h1{font-size:58px}.portfolio-toolbar{grid-template-columns:1fr;gap:11px}.portfolio-toolbar #portfolio-count{padding:0}.project-detail-hero{grid-template-columns:1fr;padding:32px 19px 35px;gap:23px}.project-detail-copy h1{font-size:43px}.project-detail-image{height:240px;grid-row:1}.project-detail-facts{grid-template-columns:1fr 1fr;gap:13px}.project-detail-content{width:calc(100% - 38px);grid-template-columns:1fr;gap:34px;padding:45px 0}.project-map-section iframe{height:260px}.project-detail-bottom{width:calc(100% - 38px);align-items:flex-start;flex-direction:column;margin-bottom:48px;gap:15px}.project-map-section>small label{display:block;margin:6px 0}.project-map-section>small input{width:190px}.admin-main{padding:35px 0 58px}.admin-heading{align-items:flex-start;flex-direction:column}.admin-actions{width:100%}.admin-layout{grid-template-columns:1fr}.admin-sidebar{order:2}.admin-project-list{max-height:260px}.admin-form{order:1}.admin-fields{grid-template-columns:1fr}.admin-fields .field-wide{grid-column:auto}.admin-form-top{align-items:flex-start;gap:8px}.admin-form-top h2{font-size:25px}.admin-notice{font-size:10px}.admin-form-actions{align-items:flex-start;flex-direction:column}.coordinate-fields{grid-template-columns:1fr 1fr}}
.project-year{display:inline-block;background:#FFD100;color:#1d1d1b;font:700 10px OpenSans,Arial,sans-serif;padding:4px 7px;margin:5px 0 7px}.portfolio-year-groups{display:block}.portfolio-year-group{margin:0 0 52px}.portfolio-year-heading{display:flex;align-items:baseline;gap:13px;border-bottom:2px solid #1d1d1b;margin-bottom:22px;padding:0 0 10px}.portfolio-year-heading h2{font-size:clamp(35px,4vw,48px);line-height:1;margin:0}.portfolio-year-heading>span{font-size:10px;color:#6c6c67}.portfolio-year-group>.project-grid{display:grid}
.project-image-placeholder{display:flex;align-items:center;justify-content:center;padding:28px;background:linear-gradient(135deg,#d8ddd6,#f0f0e9)}.project-placeholder-title{max-width:80%;font:600 clamp(18px,3vw,30px)/1.2 OpenSans,Arial,sans-serif;color:#344254;text-align:center}
.project-gallery{padding-top:48px;padding-bottom:12px}.project-gallery h2{font:600 clamp(25px,3vw,38px)/1.1 OpenSans,Arial,sans-serif;letter-spacing:-.035em;margin:12px 0 24px}.project-gallery h2 em{font-style:normal;color:#777}.project-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.gallery-photo{display:block;overflow:hidden;aspect-ratio:4/3;border:0;padding:0;background:#e6e6e0;cursor:zoom-in}.gallery-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery-photo:hover img{transform:scale(1.04)}.gallery-lightbox[hidden]{display:none}.gallery-lightbox{position:fixed;inset:0;z-index:50;background:rgba(7,13,20,.94);display:flex;align-items:center;justify-content:center;padding:60px 80px}.gallery-lightbox img{max-width:min(1100px,100%);max-height:100%;object-fit:contain}.gallery-lightbox button{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer}.gallery-close{top:18px;right:24px;font-size:38px;width:48px;height:48px}.gallery-prev,.gallery-next{top:50%;transform:translateY(-50%);font-size:44px;width:52px;height:70px}.gallery-prev{left:18px}.gallery-next{right:18px}.gallery-open{overflow:hidden}.gallery-source{display:block;margin-top:12px;color:#697583}.field-help{display:block;font-size:12px;color:#697583;line-height:1.5;margin-top:6px}@media(max-width:760px){.project-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gallery-lightbox{padding:52px 10px}.gallery-prev{left:2px}.gallery-next{right:2px}}
.project-detail-visual{min-width:0}.project-image-credit{display:block;margin-top:8px;text-align:right;color:#777;font-size:9px}.project-image-credit a{color:inherit;text-decoration:underline;text-underline-offset:2px}

.project-map-note{font-size:12px;line-height:1.6;color:#6c6c66}.company-service{border-left:3px solid #FFD100;padding-left:16px}

.portfolio-year-group{scroll-margin-top:110px}



.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.company-documents-hero{background:#f4f4f2;padding:30px 0 55px}
.company-documents-hero h1{font-size:clamp(48px,6vw,78px);line-height:1.02;margin:17px 0 0}
.company-documents-hero .section-head{margin-bottom:30px}
.company-documents-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.company-documents-actions>span{font-size:10px;color:#777}
.company-documents-actions .dark-link{margin:0 0 0 auto}
.company-details{padding-top:60px;padding-bottom:60px}
.company-details-card{border:1px solid #dcdcd6;background:#fff;margin-bottom:32px;scroll-margin-top:110px}
.company-details-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 28px;border-bottom:3px solid #FFD100}
.company-details-heading h2{font-size:clamp(28px,3.5vw,42px);margin:0;line-height:1.1}
.company-copy{background:#fff;border:1px solid #c9c9c3;color:#333;padding:11px 14px;font:600 10px OpenSans,Arial,sans-serif;cursor:pointer;min-height:40px}
.company-copy:hover{background:#fff4bd;border-color:#d0ae00}
.company-copy:focus-visible{outline:2px solid #1d1d1b;outline-offset:3px}
.company-details-table{border-collapse:collapse;width:100%;table-layout:fixed}
.company-details-table th,.company-details-table td{text-align:left;padding:17px 28px;vertical-align:top;border-bottom:1px solid #e4e4df;overflow-wrap:anywhere;font-size:13px;line-height:1.7}
.company-details-table th{width:31%;font-weight:400;color:#74746d}
.company-details-table td{font-weight:600;color:#292927}
.company-details-table tr:nth-child(even){background:#f6f6f3}
.company-details-table td.company-number{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:14px;letter-spacing:.03em}
.company-details-table a{border-bottom:1px solid #c4a300}
.company-data-note{font-size:11px;line-height:1.7;color:#777;padding:16px 28px;margin:0}
.company-copy-status{font-size:12px;color:#555;min-height:1em}
.company-credentials{background:#f4f4f2;scroll-margin-top:100px}
.company-credentials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.company-credential{display:flex;flex-direction:column;padding:28px;background:#fff;border:1px solid #deded8;min-width:0}
.company-credential-tag{font-size:9px;letter-spacing:.08em;font-weight:700;background:#FFD100;padding:7px 10px;align-self:flex-start}
.company-credential h3{font:600 19px/1.5 OpenSans,Arial,sans-serif;margin:20px 0 10px;letter-spacing:-.02em}
.company-credential>b{font-size:11px;font-weight:600;color:#777}
.company-credential p{font-size:12px;line-height:1.85;color:#555;margin:16px 0}
.company-credential dl{margin:3px 0 25px}
.company-credential dl>div{border-top:1px solid #e0e0db;padding:12px 0}
.company-credential dt{font-size:10px;color:#777;margin-bottom:5px}
.company-credential dd{font-size:11px;color:#444;margin:0;line-height:1.6}
.company-credential .dark-link{align-self:flex-start;margin-top:auto}
.company-links{display:flex;gap:25px;flex-wrap:wrap}
@media(max-width:900px){.company-credentials-grid{grid-template-columns:1fr}.company-documents-actions .dark-link{margin-left:0}}
@media(max-width:600px){.company-documents-hero{padding-top:22px;padding-bottom:38px}.company-documents-actions{align-items:flex-start;flex-direction:column;gap:14px}.company-details{padding:36px 0}.company-details-heading{padding:20px;align-items:flex-start;flex-direction:column;gap:15px}.company-details-table,.company-details-table tbody,.company-details-table tr,.company-details-table th,.company-details-table td{display:block;width:100%}.company-details-table tr{padding:14px 20px;border-bottom:1px solid #e4e4df}.company-details-table th,.company-details-table td{border:0;padding:0;font-size:12px}.company-details-table th{margin-bottom:5px;font-size:10px}.company-details-table td.company-number{font-size:14px}.company-data-note{padding:16px 20px;font-size:10px}.company-credential{padding:23px}.company-links{gap:10px 24px}}


.service-page-hero{background:#f4f4f2;padding:30px 0 60px}
.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:10px;line-height:1.6;color:#777;margin-bottom:35px}
.breadcrumbs a:hover{color:#1d1d1b;text-decoration:underline}
.service-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center}
.service-hero-grid>div{min-width:0}
.service-hero-grid h1{font-size:clamp(42px,5.6vw,70px);line-height:1.02;margin:22px 0}
.service-page-lead{font-size:16px;line-height:1.8;color:#555;max-width:590px}
.service-page-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}
.service-page-actions .dark-link{margin:0}
.service-page-photo{margin:0;min-width:0}
.service-page-photo img{display:block;width:100%;height:330px;object-fit:cover;filter:saturate(.6)}
.service-page-photo figcaption{font-size:10px;line-height:1.7;color:#777;margin-top:10px}
.service-description-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:85px}
.service-description-grid h2{font-size:clamp(38px,4vw,52px);margin:17px 0 22px}
.service-description-grid p{font-size:14px;line-height:1.9;color:#555}
.service-task-list{list-style:none;padding:0;margin:25px 0 0;border-top:1px solid #ddd}
.service-task-list li{position:relative;border-bottom:1px solid #ddd;padding:17px 10px 17px 25px;font-size:13px;line-height:1.7}
.service-task-list li::before{content:"";position:absolute;left:0;top:25px;width:7px;height:7px;background:#FFD100}
.service-page-aside{padding:28px 30px;background:#f5f5f2;align-self:start;border-top:4px solid #FFD100}
.service-page-aside h3{font:600 17px/1.5 OpenSans,Arial,sans-serif;margin:0 0 10px}
.service-page-aside h3:not(:first-child){margin-top:27px}
.service-page-aside p{font-size:12px;margin:0}
.service-call{display:flex;justify-content:space-between;font-size:17px;font-weight:600;margin-top:25px;border-top:1px solid #ccc;padding-top:20px}
.service-projects{scroll-margin-top:100px}
.service-projects-count{font-size:12px;color:#666;margin:0 0 24px}
.service-projects-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:35px}
.service-projects-actions .dark-link{margin:0}
#service-projects-more[hidden]{display:none}
.portfolio-toolbar{grid-template-columns:minmax(180px,1fr) minmax(170px,.8fr) minmax(200px,1fr) auto}
.portfolio-service-context{background:#fff3b8;color:#333;font-size:12px;line-height:1.8;padding:14px 18px;margin:0 0 24px}
.portfolio-service-context a{display:inline-block;margin-left:18px;border-bottom:1px solid #8e7400}
@media(max-width:1000px){.portfolio-toolbar{grid-template-columns:1fr 1fr}.portfolio-toolbar #portfolio-count{padding-bottom:0}.service-hero-grid{gap:30px}.service-description-grid{gap:35px}}
@media(max-width:720px){.service-page-hero{padding:22px 0 38px}.breadcrumbs{font-size:9px;margin-bottom:26px}.service-hero-grid,.service-description-grid{grid-template-columns:1fr;gap:28px}.service-hero-grid h1{font-size:clamp(40px,10.5vw,58px)}.service-page-lead{font-size:14px}.service-page-actions{gap:18px;align-items:flex-start;flex-direction:column}.service-page-photo img{height:245px}.service-page-photo figcaption{font-size:9px}.service-description-grid p{font-size:13px}.service-page-aside{padding:23px}.service-page-aside p{font-size:12px}.portfolio-toolbar{grid-template-columns:1fr}.service-projects-actions{align-items:flex-start;flex-direction:column;gap:20px}.portfolio-service-context a{display:block;width:fit-content;margin-left:0;margin-top:5px}}


.hero-grid{grid-template-columns:1fr 1fr;gap:44px;min-height:590px}
.hero h1{font-size:clamp(48px,5.7vw,73px);line-height:1.01}
.hero-copy{padding:55px 0 48px;min-width:0}
.hero .hero-project-visual{height:auto;background:none;margin:35px 0;min-width:0}
.hero-case{display:block;background:#f4f4f1;border-bottom:4px solid #FFD100}
.hero-case-photo{position:relative;height:300px;overflow:hidden;background:#e2e2de}
.hero-case-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.6);transition:transform .35s}
.hero-case:hover .hero-case-photo img{transform:scale(1.025)}
.hero-case-photo>span{position:absolute;left:18px;top:18px;background:#FFD100;color:#1d1d1b;padding:7px 10px;font:700 9px OpenSans,Arial,sans-serif;letter-spacing:.07em}
.hero-case-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:21px 24px 17px}
.hero-case-caption small{display:block;font:600 9px OpenSans,Arial,sans-serif;letter-spacing:.08em;color:#666}
.hero-case-caption h3{font:600 20px/1.35 OpenSans,Arial,sans-serif;letter-spacing:-.025em;margin:9px 0 0}
.hero-case-arrow{font-size:29px;align-self:flex-end}
.hero-case-facts{display:flex;align-items:center;gap:24px;border-top:1px solid #d9d9d3;margin:0 24px;padding:16px 0 19px;font-size:11px}
.hero-case-facts>span{white-space:nowrap}
.hero-case-facts b{font:700 33px/1 Bebas,'Arial Narrow',sans-serif;margin-right:4px}
.hero-case-facts small{margin-left:auto;font-size:9px;line-height:1.5;color:#666}
.proof-grid{min-height:96px;height:auto;padding-top:18px;padding-bottom:18px}
.proof b{font-size:25px;letter-spacing:.01em;line-height:1.2}
.service-icon{width:38px;height:38px;display:grid;place-items:center;background:#fff2b3;text-shadow:none}
.service-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.work-evidence{margin-top:54px}
.work-evidence>.eyebrow{line-height:1.7;margin-bottom:20px}
.work-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.work-evidence-card{background:#fff;border:1px solid #deded8;overflow:hidden;display:block}
.work-evidence-card>img{display:block;width:100%;height:255px;object-fit:cover;filter:saturate(.6);transition:filter .25s}
.work-evidence-card:hover>img{filter:saturate(1)}
.work-evidence-card>div{padding:23px 25px 25px}
.work-evidence-card>div>span{font-size:9px;font-weight:600;letter-spacing:.07em;color:#666}
.work-evidence-card h3{font:600 20px/1.4 OpenSans,Arial,sans-serif;letter-spacing:-.02em;margin:12px 0}
.work-evidence-card p{font-size:12px;line-height:1.8;color:#666;margin:0 0 19px;max-width:450px}
.work-evidence-card b{font-size:11px;font-weight:600;border-bottom:2px solid #FFD100;padding-bottom:4px}
.work-evidence-card b span{margin-left:14px}
.hero-case:focus-visible,.work-evidence-card:focus-visible{outline:3px solid #1d1d1b;outline-offset:4px}
@media(max-width:1000px) and (min-width:721px){.hero-grid{gap:25px}.hero-case-photo{height:270px}.hero-case-facts{gap:13px}.hero-case-facts small{font-size:8px}.hero-case-caption{padding:18px}.hero-case-facts{margin:0 18px}.hero-case-caption h3{font-size:18px}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}}
@media(max-width:720px){.hero-grid{grid-template-columns:1fr;gap:0;min-height:0}.hero h1{font-size:clamp(42px,10.7vw,60px)}.hero-copy{padding:40px 0 12px}.hero .hero-project-visual{height:auto;margin:24px 0 30px;background:none}.hero-case-photo{height:230px}.hero-case-caption{padding:18px}.hero-case-caption h3{font-size:18px}.hero-case-facts{margin:0 18px;gap:18px}.hero-case-facts b{font-size:28px}.hero-case-facts small{font-size:8px}.proof b{font-size:23px}.proof-grid>div{min-width:0}.proof-grid>div:nth-child(3){padding-left:0;border:0}.work-evidence{margin-top:36px}.work-evidence-grid{grid-template-columns:1fr;gap:20px}.work-evidence-card>img{height:220px}.work-evidence-card>div{padding:20px}.work-evidence-card h3{font-size:18px}.service-icon{width:30px;height:30px}.service-icon svg{width:22px;height:22px}}

.project-geography{background:#fff;scroll-margin-top:110px}
.project-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #d9d9d3;padding:18px 0}
.project-map-toolbar>p{margin:0;font-size:12px;font-weight:600}
.project-map-views{display:flex;gap:6px}
.project-map-views button{border:1px solid #d4d4ce;background:#fff;color:#1d1d1b;padding:11px 16px;font:600 11px OpenSans,Arial,sans-serif;cursor:pointer;min-height:42px}
.project-map-views button[aria-pressed="true"],.project-map-views button:hover{background:#FFD100;border-color:#FFD100}
.project-map-views button:focus-visible{outline:2px solid #1d1d1b;outline-offset:3px}
.home-project-map{height:540px;position:relative;z-index:0;isolation:isolate;background:#efefeb;border:1px solid #d8d8d1;font:12px OpenSans,Arial,sans-serif}
.project-map-loading{display:grid;place-items:center;height:100%;margin:0;padding:30px;text-align:center;color:#666}
.home-project-map .portfolio-map-basemap{filter:saturate(.25)}
.home-project-map .ol-zoom{border:1px solid #c4c4bc;background:#fff;padding:0;box-shadow:0 3px 12px #1d1d1b12;top:12px;left:12px}
.home-project-map .ol-zoom button{color:#1d1d1b;background:#fff;width:36px;height:36px;line-height:36px;margin:0;font-size:22px;border-radius:0}
.home-project-map .ol-zoom button:hover{background:#FFD100}
.home-project-map .ol-attribution{font-size:9px;background:#ffffffd9;right:0;bottom:0}
.home-project-map .ol-attribution ul{padding:2px 7px}
.home-project-map:focus-visible{outline:2px solid #1d1d1b;outline-offset:3px}
.project-map-marker{border:0;padding:0;background:none;cursor:pointer;position:relative}
.project-map-marker>span{width:100%;height:100%;display:grid;place-items:center;background:#FFD100;border:2px solid #1d1d1b;border-radius:50%;box-shadow:0 2px 9px #1d1d1b35;color:#1d1d1b;font:700 14px OpenSans,Arial,sans-serif;transition:background .15s}
.project-map-marker>span i{display:block;width:7px;height:7px;border-radius:50%;background:#1d1d1b}
.project-map-marker::before{content:"";position:absolute;inset:-8px}
.project-map-marker:hover>span,.project-map-marker:focus-visible>span{background:#fff}
.project-map-marker:focus-visible{outline:3px solid #1d1d1b;outline-offset:4px;border-radius:50%}
.project-map-tooltip{width:max-content;max-width:310px;white-space:normal;border:1px solid #ddd;border-radius:4px;background:#fff;padding:12px 15px;box-shadow:0 5px 20px #1d1d1b20;font:11px/1.5 OpenSans,Arial,sans-serif;color:#1d1d1b;pointer-events:none}
.project-map-tooltip strong{display:block;font-weight:700;font-size:12px}
.project-map-tooltip span{display:block;margin-top:5px;color:#666}
.project-map-popup{position:relative;width:330px;max-width:calc(100vw - 64px);background:#fff;border:1px solid #ddd;border-radius:5px;padding:20px;box-shadow:0 6px 25px #1d1d1b35;font:12px/1.5 OpenSans,Arial,sans-serif;color:#1d1d1b}
.project-map-popup>b{display:block;font-size:14px;margin:0 20px 12px 0}
.project-map-popup-close{position:absolute;right:7px;top:6px;border:0;background:transparent;color:#555;font-size:25px;cursor:pointer;width:30px;height:30px}
.project-map-popup-list{max-height:280px;overflow:auto;overscroll-behavior:contain}
.project-map-popup-list a{display:grid;grid-template-columns:auto 1fr;gap:3px 9px;color:#1d1d1b;text-decoration:none;padding:12px 3px;border-top:1px solid #e5e5df}
.project-map-popup-list a:hover,.project-map-popup-list a:focus-visible{background:#fff6c7}
.project-map-popup-list a>span{background:#FFD100;font-size:10px;padding:2px 4px;align-self:start}
.project-map-popup-list strong{font-size:12px;font-weight:600}
.project-map-popup-list small{grid-column:2;color:#666;font-size:10px}
.project-map-caption{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-top:16px;font-size:11px;line-height:1.7;color:#686861}
.project-map-caption p{margin:0;display:flex;align-items:center;gap:9px}
.project-map-key{width:10px;height:10px;flex-shrink:0;border-radius:50%;background:#FFD100;border:1px solid #1d1d1b}
.project-map-caption a{color:#1d1d1b;white-space:nowrap;border-bottom:1px solid #d2b000;padding-bottom:3px}
.project-map-caption a span{margin-left:10px}
.project-map-missing{font-size:11px;color:#777;line-height:1.6;margin:12px 0 0}
@media(max-width:760px){.home-project-map{height:390px}.project-map-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.project-map-views{width:100%}.project-map-views button{flex:1}.project-map-caption{flex-direction:column;gap:10px}.project-map-tooltip{max-width:230px}.project-map-popup-list{max-height:210px}}

.company-license-works { margin: 0 0 24px; font-size: 14px; line-height: 1.65; }
.company-license-works summary { cursor: pointer; font-weight: 700; }
.company-license-works ul { padding-left: 20px; margin-top: 14px; }
.company-credential dd { overflow-wrap: anywhere; }


.project-detail-copy,.project-detail-visual,.project-detail-content>section,.project-detail-facts>div,.project-meta>div{min-width:0}
.project-detail-copy h1,.project-detail-facts b,.project-meta b,.project-meta small,.project-map-section p,.project-image-credit,.project-work-chips span,.work-chip-list span{overflow-wrap:anywhere}
@media(max-width:720px){
  .project-detail-hero,.project-detail-content{grid-template-columns:minmax(0,1fr)}
  .project-detail-copy h1{font-size:clamp(34px,10vw,43px);line-height:1.08}
  .project-detail-image{display:block;max-width:100%}
  .project-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .project-detail-copy>.project-tag,.project-work-chips span,.work-chip-list span{max-width:100%;white-space:normal}
  .portfolio-toolbar>label{min-width:0}
  .portfolio-toolbar input,.portfolio-toolbar select{width:100%}
}

.footer{--footer-meta-font-size:9px}.footer-bottom,.footer-legal{font-size:var(--footer-meta-font-size)}.footer-legal{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 28px;padding-top:0;padding-bottom:18px;line-height:1.65;border-top:0;color:#777}.footer-legal a,.footer-legal button{text-decoration:underline;text-underline-offset:3px}.footer-legal button{border:0;background:none;color:inherit;font:inherit;padding:0;cursor:pointer}.request-form label.form-consent{display:flex;align-items:flex-start;gap:12px;font-size:12px;font-weight:400;line-height:1.7}.request-form .form-consent input{width:20px;height:20px;min-width:20px;margin:3px 0 0;accent-color:#ffd100}.form-consent a{color:inherit;text-decoration:underline;text-underline-offset:3px}.form-privacy-note{font-size:11px;line-height:1.6}.form-privacy-note a{text-decoration:underline}.legal-document{max-width:920px;padding-top:60px;padding-bottom:80px}.legal-document h1{font-size:clamp(32px,5vw,58px);line-height:1.12;overflow-wrap:anywhere;margin:16px 0 24px}.legal-document h2{font-size:clamp(23px,3vw,30px);line-height:1.3;margin:36px 0 14px}.legal-document p,.legal-document li{font-size:15px;line-height:1.85;overflow-wrap:anywhere}.legal-document ul{padding-left:22px}.legal-document a{text-decoration:underline;text-underline-offset:3px}.legal-version{font-size:12px;color:#666}.legal-summary{background:#f5f5ef;padding:20px 24px;border-top:4px solid #ffd100}.legal-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.legal-actions .button{white-space:normal;text-align:center}.map-consent-panel{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;min-height:100%;padding:28px;background:#f4f4f0;color:#1d1d1b}.map-consent-panel strong{font-size:23px;line-height:1.3}.map-consent-panel p{font-size:13px;line-height:1.7;margin:0;max-width:650px}.map-consent-panel small{font-size:11px;line-height:1.6;max-width:650px;color:#555}.map-consent-panel a{text-decoration:underline;text-underline-offset:3px}.map-consent-panel .eyebrow{margin:0}.map-consent-panel .button{font-size:14px;padding:14px 22px;min-height:48px;white-space:normal}.map-consent-status:empty{display:none}.map-consent-status{color:#8a2116}.home-project-map,.project-yandex-map,.project-map{overflow:auto}.project-yandex-map{height:380px;background:#f4f4f0;position:relative}.map-settings-dialog{width:min(620px,calc(100% - 32px));max-height:85vh;overflow:auto;border:0;padding:28px;background:#fff;color:#1d1d1b}.map-settings-dialog::backdrop{background:#1119}.map-settings-dialog h2{font-size:30px;line-height:1.2}.map-settings-dialog p{line-height:1.7}.map-settings-dialog a{text-decoration:underline}.map-settings-dialog button{cursor:pointer}.legal-document button[data-map-settings]{border:0;border-bottom:1px solid;background:none;font:inherit;cursor:pointer}.map-consent-panel a:focus-visible,.footer-legal a:focus-visible,.footer-legal button:focus-visible{outline:2px solid #9d7e00;outline-offset:4px}@media(max-width:600px){.map-consent-panel{padding:20px;gap:10px}.home-project-map{height:440px}.project-yandex-map,.project-map{height:420px}.map-consent-panel strong{font-size:21px}.map-consent-panel .button{width:100%;justify-content:center}.footer-legal{flex-direction:column;align-items:flex-start;gap:12px}.legal-document{padding-top:32px}.legal-summary{padding:16px}}

@media(max-width:720px){.footer{--footer-meta-font-size:8px}}
@media(max-width:600px){.footer-legal{flex-direction:row;align-items:baseline;gap:8px 16px}}


.footer-legal{justify-content:space-between;border-top:0;padding-top:0;padding-bottom:18px}.footer-bottom{border-top:1px solid #deded9}

.analytics-choice{position:fixed;z-index:10000;bottom:16px;left:16px;right:16px;max-width:1000px;margin:auto;background:#fff;color:#1d1d1b;border:1px solid #ccc;border-top:4px solid #ffd100;padding:20px 24px;box-shadow:0 6px 40px #0003;display:flex;gap:24px;align-items:center}.analytics-choice[hidden]{display:none}.analytics-choice strong{font-size:18px}.analytics-choice p{font-size:13px;line-height:1.65;margin:6px 0 0}.analytics-choice a{text-decoration:underline}.analytics-choice-actions{display:flex;gap:8px;flex-shrink:0;flex-direction:column}.analytics-choice button{padding:12px 16px;cursor:pointer;background:#ffd100;color:#1d1d1b;border:1px solid #ffd100;font:inherit;font-size:13px}.analytics-choice button[data-analytics-reject]{background:#fff;border-color:#999}.analytics-settings{padding-top:16px;padding-bottom:20px}.analytics-settings button{padding:0;border:0;background:none;color:inherit;text-decoration:underline;cursor:pointer;font:inherit;font-size:12px}@media(max-width:650px){.analytics-choice{left:8px;right:8px;bottom:8px;padding:16px;display:block}.analytics-choice-actions{margin-top:12px;flex-direction:row;flex-wrap:wrap}.analytics-choice-actions button{flex:1}.analytics-choice p{font-size:12px}}


.hero .hero-case-caption h2{font:600 20px/1.35 OpenSans,Arial,sans-serif;letter-spacing:-.025em;text-transform:none;margin:9px 0 0}
.service-text .service-title{display:block;font:650 17px var(--font);letter-spacing:-.03em;text-transform:none;margin:0}
.project-meta .project-title{display:block;font:600 14px/1.45 OpenSans,Arial,sans-serif;letter-spacing:0;text-transform:none;margin:0;overflow-wrap:anywhere}
.listing-page-label{display:block;font:600 17px/1.4 OpenSans,Arial,sans-serif;letter-spacing:0;text-transform:none;margin-top:14px}
.heading-accessible{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.admin-app #auth-title{font-size:clamp(40px,5vw,66px)}
.admin-app .admin-top .admin-view-heading{font-size:clamp(2rem,4vw,3.2rem);margin:0}
.admin-app .admin-top .admin-view-heading em{font-style:normal;color:#c4a000}
@media(max-width:1000px) and (min-width:721px){.hero .hero-case-caption h2{font-size:18px}}
@media(max-width:720px){.hero .hero-case-caption h2{font-size:18px}.service-text .service-title{font-size:13px}.listing-page-label{font-size:15px}}

.portfolio-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:32px 0 16px;scroll-margin-top:130px}.portfolio-pagination a,.portfolio-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:44px;padding:10px 13px;border:1px solid #ccc;color:#1d1d1b;text-decoration:none;font:600 13px OpenSans,Arial,sans-serif}.portfolio-pagination [aria-current=page]{background:#ffd100;border-color:#ffd100}.portfolio-pagination a:hover{background:#fff3b8;border-color:#b99b16}.portfolio-pagination a:focus-visible,.project-service-links a:focus-visible{outline:2px solid #1d1d1b;outline-offset:3px}.portfolio-pagination .pagination-direction{padding-inline:18px}.portfolio-result-count{font-size:12px;color:#555;margin:0 0 28px;line-height:1.7}.server-portfolio-toolbar{grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) minmax(100px,.55fr) minmax(180px,1.3fr) auto;align-items:end}.portfolio-search-submit{min-height:44px;padding:12px 20px;font-size:14px}.project-service-links{display:flex;flex-wrap:wrap;gap:10px 16px;margin:26px 0 0}.project-service-links h3{flex-basis:100%;font-size:20px;line-height:1.3;margin:0 0 6px}.project-service-links a{display:inline-flex;gap:12px;align-items:center;font-size:12px;line-height:1.6;padding:8px 0;border-bottom:2px solid #ffd100;overflow-wrap:anywhere}.project-service-links a:hover{border-color:#1d1d1b}#portfolio-results{scroll-margin-top:130px}@media(max-width:1100px){.server-portfolio-toolbar{grid-template-columns:1fr 1fr}.server-portfolio-toolbar .search-field{grid-column:auto}.portfolio-search-submit{width:fit-content}}@media(max-width:600px){.server-portfolio-toolbar{grid-template-columns:1fr}.server-portfolio-toolbar label,.server-portfolio-toolbar input,.server-portfolio-toolbar select{min-width:0;width:100%}.portfolio-search-submit{width:100%;justify-content:center}.portfolio-pagination{gap:6px}.portfolio-pagination a,.portfolio-pagination span{min-width:38px;padding:8px 10px}.project-service-links{flex-direction:column;align-items:flex-start}.project-service-links a{max-width:100%}}
