/* GROMKO v1: restrained detailing, no change to photographs, content or site structure. */
.gromko-preview{--gd-pad:clamp(24px,5vw,80px);--gd-display-size:clamp(42px,5.25vw,76px)}
.gromko-preview :is(.engineering,.projects,.services-overview,.team-section,.contacts-section){padding:60px var(--gd-pad);border-top:1px solid #ffffff20;background-color:#080808}
.gromko-preview :is(.engineering,.projects,.services-overview,.team-section){background-image:radial-gradient(ellipse at 95% 0%,#ffffff05,transparent 65%)}
.gromko-preview .section-header{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0;margin:0 0 76px;width:100%}
.gromko-preview .section-header .brand{margin:0;flex-shrink:0;width:160px;max-width:160px}
.gromko-preview .section-header .brand img{width:100%;height:auto;display:block}
.gromko-preview nav{display:flex;align-items:center;justify-content:flex-end;gap:30px;font:400 11px/1.5 Manrope,Arial,sans-serif;letter-spacing:.065em}
.gromko-preview nav a{position:relative;color:#d5d5d5;text-decoration:none;white-space:nowrap;padding:8px 0}
.gromko-preview nav a:after{content:'';position:absolute;bottom:2px;left:0;right:0;height:1px;background:#ddd;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.gromko-preview nav a:hover:after,.gromko-preview nav a:focus-visible:after{transform:scaleX(1)}
.gromko-preview .about{height:auto;min-height:940px;padding-bottom:90px;isolation:isolate}
.gromko-preview .about .section-header{padding:36px var(--gd-pad) 0;margin-bottom:0}
.gromko-preview .about-body{width:calc((100% - 2 * var(--gd-pad)) * .58);max-width:none;margin:76px var(--gd-pad) 80px auto;padding:0}
.gromko-preview .about h2{margin:0 0 36px;max-width:none;line-height:1.035}
.gromko-preview .main-slogan{display:block;font-size:inherit;font-weight:800;line-height:inherit;letter-spacing:-.055em}
.gromko-preview .main-slogan.is-muted{color:#ddd}
.gromko-preview .about .intro{font-size:clamp(20px,2vw,29px);line-height:1.65;max-width:none;margin:0 0 38px}
.gromko-preview .about .stats{border-top:1px solid #ffffff30;padding-top:26px;gap:24px;margin-bottom:54px;display:flex;justify-content:space-between}
.gromko-preview .stat{min-width:0;flex:1}.gromko-preview .stat b{font-size:44px}.gromko-preview .stat small{font-size:10px;line-height:1.6}
.gromko-preview .outline{min-height:54px;padding:17px 23px;gap:46px;border:1px solid #ffffff65;border-radius:3px;background:linear-gradient(125deg,#ffffff09,#ffffff02);transition:background .2s,border-color .2s;text-decoration:none}
.gromko-preview .outline:hover{background:#ffffff12;border-color:#ddd}
.gromko-preview .about-foot.service-marquee{min-height:78px;background:linear-gradient(180deg,#080808,#121212);border-top:1px solid #ffffff17;border-bottom:0}
.gromko-preview :is(.engineering-top,.projects-heading,.services-heading,.team-section .closing-heading){display:block;width:58%;margin:0 0 55px auto;max-width:none}
.gromko-preview :is(.engineering-top,.projects-heading,.services-heading,.team-section .closing-heading)>div{margin:0}
.gromko-preview :is(.engineering h2.engineering-title,.projects h2,.services h2,.closing-heading h2){font-size:var(--gd-display-size);line-height:1.035;letter-spacing:-.055em;margin:0 0 24px;max-width:none}
.gromko-preview .engineering .engineering-subtitle{font-size:clamp(22px,2.1vw,30px);line-height:1.35;margin-top:22px}
.gromko-preview :is(.projects-heading p,.engineering-top .summary){max-width:650px;font-size:17px;line-height:1.65}
.gromko-preview .project,.gromko-preview .service-card{border:1px solid #ffffff25;box-shadow:inset 0 1px 0 #ffffff07;transition:transform .25s,border-color .25s,box-shadow .25s}
.gromko-preview .project:hover,.gromko-preview .service-card:hover{border-color:#ffffff75;box-shadow:0 16px 40px #0005;transform:translateY(-3px)}
.gromko-preview .projects-more button{justify-content:space-between;border-radius:3px;border-color:#ffffff3d;min-height:76px;background:linear-gradient(120deg,#202020,#111);box-shadow:inset 0 1px 0 #ffffff08}
.gromko-preview .projects-more button:after{margin-left:auto}
.gromko-preview .contacts-content{width:58%;max-width:none;margin-left:auto}
.gromko-preview .contacts-section .closing-heading{margin:0 0 44px}
.gromko-preview .contacts-section .closing-heading>div{margin:0}
.gromko-preview .contacts-section .closing-heading h2{font-size:var(--gd-display-size);margin:0}
.gromko-preview .contacts-body{margin:0;padding:0 0 58px}
.gromko-preview .contacts-details{max-width:none}
.gromko-preview .contacts-phone strong{font-size:clamp(30px,3vw,44px);font-weight:400;line-height:1.3}
.gromko-preview .contacts-phone>span:first-child,.gromko-preview .contacts-address>span{font-size:11px;letter-spacing:.1em;margin-bottom:15px}
.gromko-preview .contacts-address{margin-top:33px;padding:0;border:0}
.gromko-preview .contacts-address p{font-size:27px;line-height:1.35}
.gromko-preview .contacts-call{padding:30px 0 23px;border-color:#ffffff3f;max-width:none}
.gromko-preview .contacts-backdrop{opacity:.4;filter:grayscale(.8);object-position:32% center}
.gromko-preview .contacts-scrim{background:linear-gradient(90deg,#07070766,#070707ce 40%,#070707ef 80%)}
.gromko-preview .contact-messengers{display:flex;align-items:center;gap:14px;margin-top:28px}
.gromko-preview .messenger-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;border:1px solid #ffffff50;background:#08080866;color:#e1e1e1;transition:background .2s,border-color .2s,transform .2s;padding:12px;cursor:pointer}
.gromko-preview .messenger-icon svg{width:22px;height:22px;display:block}
.gromko-preview .messenger-icon:hover:not(:disabled){background:#ffffff13;border-color:#ddd;transform:translateY(-2px)}
.gromko-preview .messenger-icon:disabled{opacity:.55;cursor:default}
.gromko-preview .home-footer{border-color:#ffffff25;gap:32px;padding-top:28px;font-size:11px}
.gromko-preview .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.gromko-preview a:focus-visible,.gromko-preview button:focus-visible{outline:2px solid #fff;outline-offset:5px}
@media(max-width:1050px){
.gromko-preview nav{gap:22px;font-size:10px}.gromko-preview .section-header .brand{width:135px}
.gromko-preview .about-body{width:calc((100% - 2 * var(--gd-pad)) * .64)}
.gromko-preview :is(.engineering-top,.projects-heading,.services-heading,.team-section .closing-heading,.contacts-content){width:64%}
.gromko-preview .stat b{font-size:36px}.gromko-preview .contacts-phone strong{font-size:32px}
}
@media(max-width:760px){
.gromko-preview{--gd-pad:24px;--gd-display-size:clamp(32px,8.7vw,54px)}
.gromko-preview :is(.engineering,.projects,.services-overview,.team-section,.contacts-section){padding:38px var(--gd-pad) 48px}
.gromko-preview .section-header{margin-bottom:45px;gap:18px;align-items:center}
.gromko-preview .section-header .brand{width:118px;max-width:118px}
.gromko-preview nav{gap:8px 14px;font-size:9px;letter-spacing:.025em;max-width:205px;flex-wrap:wrap}
.gromko-preview .about{min-height:0;padding-bottom:78px}
.gromko-preview .about .section-header{padding-top:30px}
.gromko-preview .about-body{width:auto;margin:48px var(--gd-pad) 58px}
.gromko-preview .about .intro{font-size:19px;line-height:1.65;margin-bottom:28px}
.gromko-preview .about .stats{gap:14px;margin-bottom:36px;padding-top:20px}
.gromko-preview .stat b{font-size:30px}.gromko-preview .stat small{font-size:8px;letter-spacing:0}
.gromko-preview :is(.engineering-top,.projects-heading,.services-heading,.team-section .closing-heading,.contacts-content){width:100%;margin-left:0}
.gromko-preview :is(.engineering-top,.projects-heading,.services-heading,.team-section .closing-heading){margin-bottom:32px}
.gromko-preview .contacts-section .closing-heading{margin-bottom:34px}
.gromko-preview .contacts-phone strong{font-size:clamp(25px,7.5vw,40px)}
.gromko-preview .contacts-address p{font-size:25px}
.gromko-preview .contacts-body{padding-bottom:42px}.gromko-preview .home-footer{gap:20px}
}
@media(prefers-reduced-motion:reduce){.gromko-preview *, .gromko-preview *:before,.gromko-preview *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
