.hero{

    position:relative;
    overflow:hidden;

    min-height:100vh;

    background-color:#050A14;

}.hero-video{

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center top;

    z-index:0;

}.hero::after{

    content:"";

    position:absolute;

    left:0;
    right:0;
    bottom:0;

    height:220px;

    background:linear-gradient(
        to bottom,
        rgba(4,8,18,0) 0%,
        rgba(4,8,18,.2) 20%,
        rgba(4,8,18,.6) 55%,
        #050A14 100%
    );

    pointer-events:none;

    z-index:1;

}.hero-container{

    display:flex;
    align-items:flex-start;
    justify-content:space-between;

    gap:60px;

    padding-top:220px;

    margin-top:0;

    position:relative;
    z-index:2;

}.hero-content{
    flex:1;

    position:relative;
    top: 0;
}.hero-image{
    flex:1;

    display:flex;
    justify-content:center;
    align-items:flex-start;

    position:relative;

    overflow:visible;
}/* ==========================
   HERO ГЛАВНОЙ СТРАНИЦЫ
   (removed — homepage hero now uses a video background,
   the pump/equipment image is no longer part of the markup)
========================== */

.hero-image img{

    width:150%;
    max-width:780px;

    position:relative; 
    z-index:2;

    filter:
        drop-shadow(0 0 12px rgba(255,255,255,.10))
        drop-shadow(0 25px 45px rgba(0,0,0,.65));

    transition:transform .08s linear;

    filter:none;
    box-shadow:none;
}.hero-image::before{
    content:"";

    position:absolute;

    width:760px;
    height:600px;

    right:-20px;
    top:20px;

    z-index:1;
    pointer-events:none;
}.hero-image:hover img{

    filter:
        drop-shadow(0 35px 65px rgba(0,0,0,.5));

}

@keyframes geoLogoGlow {

    0%, 100% {
        filter:
            drop-shadow(0 0 5px rgba(22, 123, 255, .45))
            drop-shadow(0 0 16px rgba(22, 123, 255, .25))
            drop-shadow(0 0 30px rgba(22, 123, 255, .10));
    }

    50% {
        filter:
            drop-shadow(0 0 7px rgba(22, 123, 255, .75))
            drop-shadow(0 0 22px rgba(22, 123, 255, .40))
            drop-shadow(0 0 42px rgba(22, 123, 255, .18));
    }

}.hero h1{

    font-size:60px;

    line-height:1;

    font-weight:700;

    margin-bottom:24px;

}.hero-highlight{

    color:#167BFF;

}.hero-text{

    max-width:560px;

    font-size:20px;

    line-height:1.65;

    color:#C7D1DE;

    margin-bottom:26px;

}.hero-buttons{

    display:flex;

    gap:18px;

    margin-bottom:clamp(16px, 3vh, 40px);

}body.home .hero-buttons{

    transform:translateX(60px);

}.btn{

    padding:18px 36px;

    text-decoration:none;

    border-radius:14px;

    font-weight:600;

    transition:.35s;

}.btn-primary{

    background:#167BFF;

    color:#fff;

    box-shadow:
        0 0 0 1px rgba(22,123,255,.06) inset,
        0 0 16px rgba(22,123,255,.18);

    transition:
        box-shadow .35s ease,
        transform .2s ease;

}.btn-primary:hover{

    box-shadow:
        0 0 0 1px rgba(22,123,255,.12) inset,
        0 0 28px rgba(22,123,255,.55),
        0 15px 35px rgba(22,123,255,.35);

}.btn-secondary{

    border:1px solid #167BFF;

    color:#fff;

}.btn-secondary:hover{

    background:#167BFF;

}.stat{

    flex:none;

    text-align:left;

    display:flex;
    flex-direction:column;
    align-items:flex-start;

}.stat h2{

    font-size:50px;

    margin:0;

    width:150px;
    height:55px;

    display:flex;

    align-items:center;
    justify-content:center;

    line-height:1;

    white-space:nowrap;

    font-variant-numeric:tabular-nums;
    font-feature-settings:"tnum";

}.stat p{

    color:#9AA4B2;

    line-height:1.3;

    margin:4px 0 0;

    text-align:center;

    white-space:nowrap;

}.hero-glow{

    position:absolute;

    width:620px;
    height:250px;

    left:50%;
    bottom:70px;

    transform:translateX(-50%);

    background:radial-gradient(
        circle,
        rgba(22,123,255,.45) 0%,
        rgba(22,123,255,.15) 45%,
        transparent 80%
    );

    filter:blur(70px);

    border-radius:50%;

    z-index:1;

}.hero-grid{

    position:absolute;

    inset:0;

    background-image:
        linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);

    background-size:60px 60px;

    mask-image:radial-gradient(
        ellipse at center,
        rgba(0,0,0,1) 35%,
        rgba(0,0,0,.8) 60%,
        rgba(0,0,0,.25) 85%,
        transparent 100%
    );

    pointer-events:none;

    z-index:1;

    display:none;

}.hero:not(.hero-service)::before{

    content:"";

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            100deg,
            rgba(2,8,18,.90) 0%,
            rgba(2,8,18,.78) 26%,
            rgba(2,8,18,.42) 50%,
            rgba(2,8,18,.16) 70%,
            rgba(2,8,18,.10) 100%
        );

    z-index:1;

    pointer-events:none;
}.hero.hero-service::before{

    content:"";

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(2,8,18,.30) 0%,
            rgba(2,8,18,.22) 40%,
            rgba(2,8,18,.28) 70%,
            rgba(2,8,18,.38) 100%
        );

    z-index:0;

    pointer-events:none;
}/* =========================================================
   SERVICE HERO IMAGE — FINAL
   ========================================================= */

.hero-service .hero-image{

    position: relative;

    top: 0px;

    width: 100%;
    height: 430px;

    overflow: hidden;

    border-radius: 24px;

    background: #0D1626;

    border: 1px solid rgba(120,185,255,.25);

    box-shadow:
        0 0 0 1px rgba(255,255,255,.04),
        0 0 30px rgba(22,123,255,.12),
        0 20px 50px rgba(0,0,0,.28);

    transition:
        box-shadow .45s ease,
        border-color .45s ease;

}.hero-service .hero-image:hover{

    border-color: rgba(120,185,255,.25);

    box-shadow:
        0 0 0 1px rgba(255,255,255,.04),
        0 0 45px rgba(22,123,255,.28),
        0 20px 50px rgba(0,0,0,.28);

}/* КАРТИНКА */

.hero-service .hero-image img{

    position: relative;

    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    max-width: none;

    margin: 0;
    padding: 0;

    object-fit: cover;
    object-position: center;

    transform: scale(1);

    filter: none;

    box-shadow: none;

    transition: transform .8s ease !important;

    will-change: transform;

}/* УВЕЛИЧЕНИЕ ПРИ НАВЕДЕНИИ */

.hero-service .hero-image:hover img{

    transform: scale(1.05);

}/* ЗАТЕМНЕНИЕ */

.hero-service .hero-image::after{

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background: linear-gradient(
        to top,
        rgba(5,10,20,.35),
        rgba(5,10,20,0)
    );

}/* ОТКЛЮЧАЕМ СТАРЫЙ ДЕКОР */

.hero-service .hero-image::before{

    display: none;

}/* ЕДИНОЕ ПОЛОЖЕНИЕ КАРТИНОК НА ВСЕХ СТРАНИЦАХ НАПРАВЛЕНИЙ */
.hero-electric-motors .hero-image,
.hero-pumping .hero-image,
.hero-compressor .hero-image,
.hero-integrated .hero-image,
.hero-reengineering .hero-image{
    top: 0;
}/* =========================================================
   HERO НА СТРАНИЦАХ НАПРАВЛЕНИЙ
   ========================================================= */

.hero-service .hero-content{
    top: 0;
}/* =========================================================
   HERO — SCROLL HINT
   Mouse-shaped scroll indicator with double chevron, centred
   at the bottom of the hero. Homepage only.
========================================================= */

body.home .hero-scroll-hint{

    position:absolute;

    left:50%;
    bottom:40px;

    transform:translateX(-50%);

    display:flex;
    flex-direction:column;
    align-items:center;

    gap:8px;

    padding-top:1px;

    color:#fff;

    filter:
        drop-shadow(0 0 6px rgba(255,255,255,.5))
        drop-shadow(0 0 16px rgba(255,255,255,.25));

    z-index:4;

    pointer-events:none;

    user-select:none;

}.hero-scroll-label{

    font-size:11px;
    font-weight:600;

    letter-spacing:.22em;

    text-transform:uppercase;

    color:#fff;

}.hero-scroll-mouse{

    width:22px;
    height:36px;

}.hero-scroll-mouse rect:last-child{

    transform-origin:center;

    will-change:transform;

    animation:heroScrollDot 2.2s ease-in-out infinite;
}.hero-scroll-chevrons{

    width:16px;
    height:17px;

    margin-top:-2px;

}.hero-scroll-chevrons .chevron{

    opacity:.7;

    animation:heroScrollChevronMove 1.6s ease-in-out infinite;

}.hero-scroll-chevrons .chevron-2{

    animation-delay:.2s;

}

@keyframes heroScrollDot{

    0%, 100%{ transform:translateY(0); }
    50%{ transform:translateY(8px); }

}

@keyframes heroScrollChevronMove{

    0%, 100%{ transform:translateY(0); }
    50%{ transform:translateY(4px); }

}

@media (max-width:900px){

    body.home .hero-scroll-hint{
        display:none;
    }

}
