:root{--navy:#0b2239;--navy-2:#12304d;--blue:#0a86d1;--blue-light:#1fa3e0;--ink:#1b2430;--muted:#5d6b7a;--line:#e3e8ee;--bg-soft:#f4f7fa;--radius:10px;--wrap:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-feature-settings:"locl" 0;color:var(--ink);background:#fff;margin:0;font-family:Manrope,system-ui,sans-serif;font-size:16px;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}.btn{border-radius:6px;align-items:center;gap:8px;padding:14px 26px;font-size:15px;font-weight:700;transition:background .2s,color .2s,transform .2s;display:inline-flex}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-light);transform:translateY(-1px)}.btn-ghost{color:#fff;border:2px solid #fff9}.btn-ghost:hover{color:var(--navy);background:#fff}.eyebrow{color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:13px;font-weight:700}h1,h2,h3{margin:0;line-height:1.2}h2{color:var(--navy);font-size:clamp(26px,3.2vw,38px);font-weight:800}section{padding:90px 0}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:40px;display:flex}.section-head p{color:var(--muted);max-width:560px;margin:10px 0 0}.link-more{color:var(--blue);white-space:nowrap;font-weight:700}.link-more:hover{text-decoration:underline}.topbar{background:var(--navy);color:#b9c6d3;font-size:13px}.topbar .wrap{flex-wrap:wrap;justify-content:flex-end;gap:28px;padding-top:8px;padding-bottom:8px;display:flex}.topbar a:hover{color:#fff}header.site{z-index:50;background:var(--navy-2);position:sticky;top:0;box-shadow:0 2px 16px #0000002e}header.site .wrap{justify-content:space-between;align-items:center;height:84px;display:flex}.logo img{width:auto;height:52px}header.site nav ul{gap:4px;margin:0;padding:0;list-style:none;display:flex}header.site nav a{color:#dbe5ee;border-radius:6px;padding:10px 14px;font-size:15px;font-weight:600;display:block}header.site nav a:hover,header.site nav a.active{color:#fff;background:#ffffff14}header.site nav .cta a{background:var(--blue);color:#fff;margin-left:10px}header.site nav .cta a:hover{background:var(--blue-light)}.menu-toggle{color:#fff;cursor:pointer;background:0 0;border:0;font-size:28px;display:none}header.site nav .has-sub{position:relative}header.site nav .has-sub>a:after{content:"";vertical-align:3px;border:4px solid #0000;border-top-color:currentColor;border-bottom:0;margin-left:7px;display:inline-block}header.site nav .sub{background:var(--navy-2);border-radius:0 0 8px 8px;flex-direction:column;gap:0;min-width:210px;padding:8px;display:none;position:absolute;top:100%;left:0;box-shadow:0 12px 24px #00000040}header.site nav .has-sub:hover .sub,header.site nav .has-sub:focus-within .sub{display:flex}header.site nav .sub a{white-space:nowrap;font-size:14px}.hero{color:#fff;background:var(--navy) var(--hero-img,none) center/cover no-repeat;align-items:center;min-height:640px;padding:0;display:flex;position:relative}.hero:before{content:"";background:linear-gradient(100deg,#0b2239f0 0%,#0b2239c7 45%,#0b223940 100%);position:absolute;inset:0}.hero .wrap{width:100%;position:relative}.hero-content{max-width:640px}.hero .eyebrow{color:var(--blue-light)}.hero h1{letter-spacing:-.01em;font-size:clamp(34px,5vw,58px);font-weight:800}.hero p{color:#d3dde7;margin:22px 0 34px;font-size:18px}.hero-actions{flex-wrap:wrap;gap:14px;display:flex}.services .grid{grid-template-columns:repeat(4,1fr);gap:22px;display:grid}.service{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:30px;transition:border-color .2s,box-shadow .2s,transform .2s}.service:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:0 14px 34px #0b22391a}.service .icon{width:52px;height:52px;color:var(--blue);background:#0a86d11a;border-radius:10px;place-items:center;margin-bottom:18px;display:grid}.service .icon svg{width:28px;height:28px}.service h3{color:var(--navy);margin-bottom:8px;font-size:19px}.service p{color:var(--muted);margin:0 0 14px;font-size:15px}.service .link-more{font-size:14px}.projects{background:var(--bg-soft)}.filters{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.filters button{font:inherit;border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600}.filters button.on,.filters button:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.projects .grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.project{border-radius:var(--radius);background:#fff;transition:box-shadow .2s,transform .2s;overflow:hidden;box-shadow:0 2px 10px #0b22390f}.project:hover{transform:translateY(-3px);box-shadow:0 16px 36px #0b223924}.project .thumb{aspect-ratio:4/3;overflow:hidden}.project .thumb img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.project:hover .thumb img{transform:scale(1.05)}.project .body{padding:20px 22px 24px}.tag{color:var(--blue);background:#0a86d11a;border-radius:999px;margin:0 6px 10px 0;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.project h3{color:var(--navy);font-size:17px;font-weight:700}.project .meta{color:var(--muted);margin-top:8px;font-size:13px}.project.hide{display:none}.about .grid{grid-template-columns:1fr 1fr;align-items:center;gap:60px;display:grid}.about .photo{border-radius:var(--radius);overflow:hidden;box-shadow:0 20px 50px #0b223929}.about p{color:var(--muted)}.checks{gap:10px;margin:24px 0 30px;padding:0;list-style:none;display:grid}.checks li{gap:10px;font-weight:600;display:flex}.checks li:before{content:"✓";color:#fff;background:var(--blue);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;margin-top:2px;font-size:13px;display:grid}.certs{flex-wrap:wrap;gap:10px;display:flex}.cert{border:1px solid var(--line);color:var(--navy);border-radius:8px;padding:10px 14px;font-size:13px;font-weight:700}.cert small{color:var(--muted);font-weight:500;display:block}.cta-band{background:linear-gradient(110deg, var(--blue) 0%, #075f97 100%);color:#fff;padding:64px 0}.cta-band .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:30px;display:flex}.cta-band h2{color:#fff}.cta-band p{color:#dcefff;margin:8px 0 0}.cta-band .btn{color:var(--navy);background:#fff}.cta-band .btn:hover{background:var(--navy);color:#fff}footer{background:var(--navy);color:#9fb0c1;padding:70px 0 0;font-size:15px}footer .grid{grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;display:grid}footer h4{color:#fff;margin:0 0 16px;font-size:15px}footer ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}footer a:hover{color:#fff}footer .logo img{height:46px;margin-bottom:16px}.copyright{border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:50px;padding:20px 0;font-size:13px;display:flex}.proto-note{z-index:100;color:#000;background:#ffcf33;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:700;position:fixed;bottom:16px;left:16px;box-shadow:0 4px 12px #0003}@media (width<=980px){.services .grid,.projects .grid{grid-template-columns:repeat(2,1fr)}.about .grid{grid-template-columns:1fr;gap:36px}footer .grid{grid-template-columns:1fr 1fr}.menu-toggle{display:block}header.site nav{background:var(--navy-2);padding:10px 20px 20px;display:none;position:absolute;top:84px;left:0;right:0}header.site nav.open{display:block}header.site nav ul{flex-direction:column}header.site nav .cta a{text-align:center;margin:10px 0 0}header.site nav .has-sub>a:after{display:none}header.site nav .sub{min-width:0;box-shadow:none;background:0 0;padding:0 0 0 16px;display:flex;position:static}}@media (width<=620px){section{padding:64px 0}.services .grid,.projects .grid,footer .grid{grid-template-columns:1fr}.hero{min-height:560px}.topbar .wrap{justify-content:center;gap:14px}.topbar .addr{display:none}}.page-hero{background:var(--navy) url(/uploads/2023/01/retail_park_parvomai_8.jpg) center/cover no-repeat;color:#fff;padding:70px 0 60px;position:relative}.page-hero:before{content:"";background:#0b2239db;position:absolute;inset:0}.page-hero .wrap{position:relative}.breadcrumbs{color:#9fb6cb;margin-bottom:14px;font-size:14px}.breadcrumbs a:hover{color:#fff}.page-hero h1{font-size:clamp(32px,4.5vw,48px);font-weight:800}.page-hero p{color:#d3dde7;max-width:640px;margin:14px 0 0;font-size:17px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.toolbar .filters{margin-bottom:0}.filters button .count{opacity:.55;margin-left:4px;font-weight:500}.search{position:relative}.search input{font:inherit;border:1px solid var(--line);background:#fff;border-radius:999px;width:260px;padding:10px 14px 10px 38px;font-size:14px}.search input:focus{outline:2px solid var(--blue);border-color:#0000}.search svg{width:16px;height:16px;color:var(--muted);position:absolute;top:50%;left:13px;transform:translateY(-50%)}.results-info{color:var(--muted);margin:-10px 0 22px;font-size:14px}.thumb.placeholder{background:linear-gradient(135deg, var(--navy-2), var(--blue));color:#ffffffb3;place-items:center;display:grid}.thumb.placeholder svg{width:54px;height:54px}.load-more{justify-content:center;margin-top:40px;display:flex}.load-more .btn{border:2px solid var(--navy);color:var(--navy);cursor:pointer;background:#fff;font-family:inherit}.load-more .btn:hover{background:var(--navy);color:#fff}.empty{text-align:center;color:var(--muted);padding:40px 0;display:none}.docs-teaser{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.doc-card{border:1px solid var(--line);border-radius:var(--radius);align-items:flex-start;gap:16px;padding:26px;transition:border-color .2s;display:flex}.doc-card:hover{border-color:var(--blue)}.doc-card b{color:var(--navy);font-size:17px;display:block}.doc-card span{color:var(--muted);font-size:14px}.doc-card .icon{width:44px;height:44px;color:var(--blue);background:#0a86d11a;border-radius:10px;flex:none;place-items:center;display:grid}@media (width<=980px){.docs-teaser{grid-template-columns:1fr}.search input,.search{width:100%}}.page-hero.compact{padding:50px 0 44px}.page-hero .tags{margin-top:16px}.page-hero .tag{color:#fff;background:#ffffff1f}.project-layout{grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:"cover facts""body facts";align-items:start;gap:34px 50px;display:grid}.project-layout>.project-cover{grid-area:cover}.project-layout>article{grid-area:body}.project-layout>.facts{grid-area:facts}.project-cover{border-radius:var(--radius);cursor:zoom-in;overflow:hidden}.project-cover img{aspect-ratio:4/3;object-fit:cover;width:100%}.prose p{color:#3b4856;margin:0 0 16px}.prose .lead{color:var(--navy);font-size:18px;font-weight:600;line-height:1.55}.facts{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:28px;position:sticky;top:108px;box-shadow:0 10px 30px #0b22390f}.facts h3{color:var(--navy);margin-bottom:18px;font-size:18px}.facts dl{gap:14px;margin:0;display:grid}.facts dt{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}.facts dd{color:var(--ink);margin:2px 0 0;font-weight:600}.facts .btn{justify-content:center;width:100%;margin-top:24px}.facts .phone{text-align:center;color:var(--navy);margin-top:12px;font-weight:700;display:block}.gallery{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.gallery button{cursor:zoom-in;aspect-ratio:1;background:var(--bg-soft);border:0;border-radius:8px;padding:0;overflow:hidden}.gallery img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.gallery button:hover img{transform:scale(1.06)}.lightbox{z-index:200;background:#050f1af0;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.lightbox.open{display:flex}.lightbox img{border-radius:6px;max-width:92vw;max-height:86vh;box-shadow:0 20px 60px #00000080}.lightbox button{color:#fff;cursor:pointer;background:#ffffff1a;border:0;border-radius:50%;width:52px;height:52px;font-size:26px;position:absolute}.lightbox button:hover{background:#ffffff38}.lightbox .lb-close{top:20px;right:20px}.lightbox .lb-prev{top:50%;left:20px;transform:translateY(-50%)}.lightbox .lb-next{top:50%;right:20px;transform:translateY(-50%)}.lightbox .lb-count{color:#b9c6d3;font-size:14px;position:absolute;bottom:20px}.project-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;margin-top:60px;padding:22px 0;display:flex}.project-nav a{max-width:45%}.project-nav small{color:var(--muted);font-size:13px;font-weight:600;display:block}.project-nav b{color:var(--navy);font-size:15px}.project-nav a:hover b{color:var(--blue)}.project-nav .next{text-align:right;margin-left:auto}@media (width<=980px){.project-layout{grid-template-columns:1fr;grid-template-areas:"cover""facts""body";row-gap:28px}.facts{position:static}.gallery{grid-template-columns:repeat(3,1fr)}}@media (width<=620px){.gallery{grid-template-columns:repeat(2,1fr)}.project-nav{flex-direction:column}.project-nav a{max-width:none}.project-nav .next{text-align:left;margin-left:0}}.hero{background-image:var(--hero-img)}.skip{position:absolute;left:-9999px}.skip:focus{z-index:300;background:#fff;border-radius:6px;padding:8px 14px;top:16px;left:16px}.prose{max-width:780px}.prose h2{margin:34px 0 14px;font-size:26px}.prose h3{color:var(--navy);margin:28px 0 12px;font-size:20px}.prose h2:first-child,.prose h3:first-child{margin-top:0}.prose ul{color:#3b4856;padding-left:22px}.prose a{color:var(--blue);text-decoration:underline}.prose img{border-radius:8px;height:auto}.prose figure{margin:24px 0}.prose .alignleft{float:left;max-width:40%;margin:4px 24px 12px 0}.prose .alignright{float:right;max-width:40%;margin:4px 0 12px 24px}.prose:after{content:"";clear:both;display:block}.prose iframe{aspect-ratio:16/9;border:0;border-radius:8px;width:100%;height:auto}.page-body{padding-top:60px}.news-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.news-card{border-radius:var(--radius);border:1px solid var(--line);background:#fff;flex-direction:column;transition:box-shadow .2s,transform .2s;display:flex;overflow:hidden}.news-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px #0b22391f}.news-card .thumb{aspect-ratio:4/3;background:var(--bg-soft);overflow:hidden}.news-card .thumb img{object-fit:cover;width:100%;height:100%}.news-card .body{padding:20px 22px 24px}.news-card time{color:var(--muted);font-size:13px;font-weight:600}.news-card h3{color:var(--navy);margin-top:6px;font-size:17px}.article-meta{color:#b9c6d3;margin-top:12px;font-size:14px}.services-list{gap:60px;display:grid}.service-row{grid-template-columns:1fr 1fr;align-items:center;gap:50px;display:grid}.service-row:nth-child(2n) .service-photo{order:2}.service-photo{border-radius:var(--radius);overflow:hidden;box-shadow:0 20px 50px #0b223924}.service-photo img{aspect-ratio:16/10;object-fit:cover;width:100%}.service-row h2{margin-bottom:14px}.contact-grid{grid-template-columns:1fr 1.3fr;align-items:start;gap:50px;display:grid}.contact-list{gap:18px;margin:0 0 30px;padding:0;list-style:none;display:grid}.contact-list li{align-items:flex-start;gap:14px;display:flex}.contact-list .icon{width:44px;height:44px;color:var(--blue);background:#0a86d11a;border-radius:10px;flex:none;place-items:center;display:grid}.contact-list b{color:var(--navy);display:block}.contact-list span,.contact-list a{color:var(--muted)}.contact-list a:hover{color:var(--blue)}.map{border-radius:var(--radius);border:1px solid var(--line);overflow:hidden}.map iframe{border:0;width:100%;height:320px;display:block}.form{border:1px solid var(--line);border-radius:var(--radius);background:#fff;gap:16px;padding:30px;display:grid;box-shadow:0 10px 30px #0b22390f}.form .row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form label{color:var(--navy);gap:6px;font-size:14px;font-weight:600;display:grid}.form input,.form textarea{font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;padding:12px 14px;font-size:15px}.form input:focus,.form textarea:focus{outline:2px solid var(--blue);border-color:#0000}.form textarea{resize:vertical;min-height:140px}.form .consent{color:var(--muted);align-items:flex-start;gap:10px;font-weight:500;display:flex}.form .consent input{margin-top:4px}.form .btn{cursor:pointer;border:0;justify-content:center;font-family:inherit}.form-status{margin:0;font-size:14px;font-weight:600}.form-status.ok{color:#1a7f45}.form-status.err{color:#b42318}.doc-grid{grid-template-columns:repeat(4,1fr);gap:22px;display:grid}.doc-tile{border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:box-shadow .2s;overflow:hidden}.doc-tile:hover{box-shadow:0 14px 30px #0b22391f}.doc-tile .thumb{aspect-ratio:3/4;background:var(--bg-soft);overflow:hidden}.doc-tile .thumb img{object-fit:cover;object-position:top;width:100%;height:100%}.doc-tile b{color:var(--navy);padding:14px 16px;font-size:14px;line-height:1.4;display:block}.doc-page img{border:1px solid var(--line);border-radius:6px;max-width:100%}.not-found{text-align:center;padding:120px 0}.not-found b{color:var(--blue);font-size:96px;line-height:1;display:block}@media (width<=980px){.news-grid{grid-template-columns:repeat(2,1fr)}.service-row,.contact-grid{grid-template-columns:1fr;gap:28px}.service-row:nth-child(2n) .service-photo{order:0}.doc-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=620px){.news-grid{grid-template-columns:1fr}.doc-grid{grid-template-columns:repeat(2,1fr)}.form .row{grid-template-columns:1fr}.prose .alignleft,.prose .alignright{float:none;max-width:100%;margin:0 0 16px}}.subnav{margin:28px 0 0}.subnav a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600}.subnav a.on,.subnav a:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.cookie-consent{z-index:100;max-width:760px;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);background:#fff;flex-wrap:wrap;align-items:center;gap:16px 24px;margin:0 auto;padding:18px 22px;font-size:14px;display:flex;position:fixed;bottom:16px;left:16px;right:16px;box-shadow:0 12px 40px #0b223938}.cookie-consent[hidden]{display:none}.cookie-consent p{flex:320px;margin:0}.cookie-consent a{color:var(--blue);font-weight:600;text-decoration:underline}.cookie-consent-actions{gap:10px;display:flex}.cookie-consent .btn{cursor:pointer;border:0;padding:10px 18px;font-family:inherit;font-size:14px}.btn-ghost-dark{background:var(--bg-soft);color:var(--navy);border:1px solid var(--line)!important}.btn-ghost-dark:hover{background:var(--line)}
