/* ==========================================================
   FIX AUTO
   style.css
   Version 1.0
========================================================== */

*,
*::before,
*::after{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Montserrat',sans-serif;

    background:#070b12;

    color:#ffffff;

    overflow-x:hidden;

    line-height:1.6;

}

img{

    max-width:100%;

    display:block;

}

a{

    text-decoration:none;

    color:inherit;

}

ul{

    list-style:none;

}

button{

    cursor:pointer;

    border:none;

    font-family:inherit;

}

:root{

    --bg:#070b12;

    --card:#111827;

    --card-hover:#182235;

    --blue:#0ea5ff;

    --yellow:#ffc400;

    --text:#ffffff;

    --gray:#cbd5e1;

    --radius:18px;

    --shadow:0 20px 50px rgba(0,0,0,.35);

    --transition:.35s;

}

.container{

    width:min(1280px,92%);

    margin:auto;

}

section{

    padding:90px 0;

}
.header{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    z-index:999;

    backdrop-filter:blur(18px);

    background:rgba(7,11,18,.82);

    border-bottom:1px solid rgba(255,255,255,.06);

}

.header .container{

    display:flex;

    justify-content:space-between;

    align-items:center;

    height:88px;

}

.logo img{
    height:42px;
    width:auto;
    display:block;
}


.menu{

    display:flex;

    gap:38px;

}

.menu a{

    color:white;

    font-weight:600;

    transition:.3s;

}

.menu a:hover{

    color:var(--blue);

}

.header-phone{

    display:flex;

    flex-direction:column;

    align-items:flex-end;

}

.header-phone a{

    font-size:20px;

    font-weight:700;

}

.header-phone span{

    color:#9ca3af;

    font-size:13px;

}

.callback-btn{

    background:var(--blue);

    color:#fff;

    padding:14px 28px;

    border-radius:999px;

    font-weight:700;

    transition:var(--transition);

}

.callback-btn:hover{

    transform:translateY(-3px);

    box-shadow:0 15px 35px rgba(14,165,255,.35);

}
.hero{

    padding-top:120px;

    padding-bottom:80px;

}

.hero-grid {

    display: grid;

    grid-template-columns: 45% 55%;

    gap: 30px;

    align-items: center;

}

.hero h1{

    font-size:58px;

    line-height:1.1;

    font-weight:800;

    margin-bottom:30px;

text-shadow:0 8px 35px rgba(14,165,255,.18);

}

.hero h1 span{

    color:var(--blue);

}

.hero p{

    color:var(--gray);

    font-size:20px;

    margin-bottom:40px;

max-width:620px;

}

.hero-buttons{

    display:flex;

    gap:18px;

}

.btn-yellow{

    background:var(--yellow);

    color:#000;

    padding:18px 36px;

    border-radius:999px;

    font-weight:700;

    transition:.35s;

}

.btn-yellow:hover{

transform:translateY(-5px);

box-shadow:0 18px 40px rgba(255,196,0,.45);

}

.btn-outline{

    border:2px solid var(--blue);

    color:white;

    padding:18px 36px;

    border-radius:999px;

    font-weight:700;

    transition:.35s;

}

.btn-outline:hover{

background:var(--blue);

box-shadow:0 18px 40px rgba(14,165,255,.35);

transform:translateY(-5px);

}
.hero-image img {
    width: 100%;
    max-width: 720px;
    height: auto;
    display: block;

    border-radius: 26px;
    box-shadow: var(--shadow);
}
/*=========================================================
ADVANTAGES
=========================================================*/

.advantages{

    background:#0b111b;

}

.advantages h2{

    text-align:center;

    font-size:44px;

    margin-bottom:60px;

}

.advantages h2 span{

    color:var(--blue);

}

.advantages-grid{

    display:grid;

    grid-template-columns:repeat(5,1fr);

    gap:25px;

}

.advantage-card{

    background:var(--card);

    border-radius:22px;

    padding:40px 30px;

    text-align:center;

    transition:.35s;

}

.advantage-card:hover{

    transform:translateY(-10px);

    background:var(--card-hover);

}

.advantage-card img{

    width:70px;

    margin:auto;

    margin-bottom:25px;

}

.advantage-card h3{

    margin-bottom:18px;

    font-size:22px;

}

.advantage-card p{

    color:var(--gray);


}
/*=========================================================
GALLERY
=========================================================*/

.gallery{

    background:#070b12;

}

.gallery h2{

    text-align:center;

    font-size:46px;

    margin-bottom:55px;

}

.gallery-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:25px;

}

.gallery-grid img{

    width:100%;

    height:320px;

    object-fit:cover;

    border-radius:22px;

    transition:.35s;

}

.gallery-grid img:hover{

    transform:scale(1.03);

}

.gallery-button{

    text-align:center;

    margin-top:50px;

}

.gallery-button a{

    display:inline-block;

    background:var(--blue);

    color:white;

    padding:18px 38px;

    border-radius:999px;

    font-weight:700;

    transition:.35s;

}

.gallery-button a:hover{

    transform:translateY(-4px);

}
section h2{

    font-weight:800;

    letter-spacing:.5px;

}
@keyframes fadeUp{

0%{

opacity:0;

transform:translateY(40px);

}

100%{

opacity:1;

transform:translateY(0);

}

}

.vehicle-card,

.advantage-card,

.gallery-grid img{

animation:fadeUp .8s ease both;

}

/*=========================================================
VEHICLE CARDS
=========================================================*/

.vehicle-card{
    background:#121b27;
    border-radius:18px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.05);
    transition:.35s;
    padding:0;
}

.vehicle-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 40px rgba(0,0,0,.35);
}

.vehicle-card img{
    width:100%;
    height:180px;
    object-fit:cover;
    display:block;
    border-radius:0;
}

.vehicle-card:hover img{
    transform:scale(1.03);
}

.vehicle-card h3{
    text-align:center;
    padding:18px;
    font-size:17px;
    color:#fff;
    margin:0;
}

/*=========================================================
PRICES
=========================================================*/

.prices{

    background:#0b111b;

}

.prices h2{

    text-align:center;

    font-size:46px;

    margin-bottom:60px;

}

.price-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:28px;

}

.price-card{

    background:linear-gradient(180deg,#131d2c,#0f1724);

    border:1px solid rgba(14,165,255,.15);

    border-radius:22px;

    padding:42px;

    text-align:center;

    transition:.35s;

    box-shadow:var(--shadow);

position:relative;

overflow:hidden;

}
.price-card::before{

    content:"";

    position:absolute;

    top:0;

    left:-120%;

    width:60%;

    height:100%;

    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.12),
        transparent
    );

    transform:skewX(-25deg);

    transition:.8s;

}

.price-card:hover::before{

    left:160%;

}

.price-card:hover{

    transform:translateY(-10px);

    border-color:var(--blue);

    box-shadow:0 20px 45px rgba(14,165,255,.18);

}

.price-card h3{

    font-size:24px;

    margin-bottom:20px;

}

.price-card span{

    display:block;

    font-size:38px;

    color:var(--yellow);

    font-weight:800;

}
/*=========================================================
REVIEWS
=========================================================*/

.reviews{

    background:#070b12;

}

.reviews h2{

    text-align:center;

    font-size:46px;

    margin-bottom:60px;

}

.reviews-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.review-card{
    background:var(--card);
    border-radius:22px;
    padding:35px 30px;
    transition:.35s;
    text-align:center;

}

.review-card:hover{

    transform:translateY(-10px);

    background:var(--card-hover);

}

.review-card img{
    display:none;

}

.review-card h3{

    margin-bottom:14px;

}

.review-card p{

    color:var(--gray);

    margin-bottom:18px;

    min-height:70px;

}

.review-card{

    font-size:20px;

    color:#ffd700;

}
/*=========================================================
CONTACTS
=========================================================*/

.contacts{

    background:#0b111b;

}

.contacts .container{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:50px;

    align-items:start;


}
.contact-info{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.contact-info a{
    color:#fff;
    text-decoration:none;
    transition:.3s;
}

.contact-info a:hover{
    color:var(--blue);
}

.contact-info h2{

    font-size:46px;

    margin-bottom:35px;

}

.contact-info p{
    font-size:20px;
    margin:8px 0;
    color:var(--gray);
    line-height:1.5;

}
.contact-form{

    background:var(--card);

    padding:45px;

    border-radius:22px;

}

.contact-form input,

.contact-form textarea{

    width:100%;

    background:#182235;

    border:none;

    color:white;

    padding:18px;

    margin-bottom:20px;

    border-radius:14px;

    font-size:17px;

}

.contact-form textarea{

    resize:none;

    height:170px;

}

.contact-form button{

    width:100%;

    background:var(--blue);

    color:white;

    padding:18px;

    border-radius:999px;

    font-size:18px;

    font-weight:700;

    transition:.35s;

}

.contact-form button:hover{

    transform:translateY(-3px);

}
/*=========================================================
MAP
=========================================================*/

.map iframe{

    width:100%;

    height:500px;

    border:0;

}
/*=========================================================
FOOTER
=========================================================*/

footer{

    background:#05080d;

    text-align:center;

    padding:50px 0;

}

footer img{

    width:90px;

    margin:auto;

    margin-bottom:20px;

}

footer p{

    color:#9ca3af;

    margin-top:10px;

}
/*=========================================================
FLOAT BUTTONS
=========================================================*/

.floating-buttons{

    position:fixed;

    right:25px;

    bottom:25px;

    display:flex;

    flex-direction:column;

    gap:16px;

    z-index:9999;

}

.floating-buttons a{

    width:62px;

    height:62px;

    background:var(--blue);

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    box-shadow:0 15px 35px rgba(14,165,255,.35);

    transition:.35s;

}

.floating-buttons a:hover{

    transform:scale(1.08);

}

.floating-buttons img{

    width:30px;

}
/*=========================================================
ANIMATIONS
=========================================================*/

.fade-up{

    opacity:0;

    transform:translateY(40px);

    transition:.8s;

}

.fade-up.show{

    opacity:1;

    transform:translateY(0);

}

.scale{

    transition:.35s;

}

.scale:hover{

    transform:scale(1.04);

}

.shadow:hover{

    box-shadow:0 20px 60px rgba(14,165,255,.25);

}

.border-blue{

    border:1px solid rgba(14,165,255,.18);

}

.round{

    border-radius:24px;

}
/*=========================================================
SCROLLBAR
=========================================================*/

::-webkit-scrollbar{

    width:12px;

}

::-webkit-scrollbar-track{

    background:#070b12;

}

::-webkit-scrollbar-thumb{

    background:var(--blue);

    border-radius:100px;

}

::-webkit-scrollbar-thumb:hover{

    background:#0b8add;

}
::selection{

    background:var(--blue);

    color:white;

}
@media(max-width:1200px){

.hero-grid{

grid-template-columns:1fr;

}

.vehicle-grid{

grid-template-columns:repeat(3,1fr);

}

.advantages-grid{

grid-template-columns:repeat(3,1fr);

}

.price-grid{

grid-template-columns:repeat(2,1fr);

}

.reviews-grid{

grid-template-columns:repeat(2,1fr);

}


.hero-grid{

grid-template-columns:1fr;

}

.vehicle-grid{

grid-template-columns:repeat(3,1fr);

}

.advantages-grid{

grid-template-columns:repeat(3,1fr);

}

.price-grid{

grid-template-columns:repeat(2,1fr);

}

.reviews-grid{

grid-template-columns:repeat(2,1fr);

}

}
@media(max-width:992px){

.menu{

display:none;

}

.header-phone{

display:none;

}

.callback-btn{

display:none;

}

.contacts .container{

grid-template-columns:1fr;

}

.gallery-grid{

grid-template-columns:1fr;

}

.vehicle-grid{

grid-template-columns:repeat(2,1fr);

}

.advantages-grid{

grid-template-columns:repeat(2,1fr);

}

}
@media(max-width:768px){

.hero{

padding-top:120px;

}

.hero h1{

font-size:38px;

}

.hero p{

font-size:17px;

}

.hero-buttons{

flex-direction:column;

}

.price-grid{

grid-template-columns:1fr;

}

.reviews-grid{

grid-template-columns:1fr;

}

.vehicle-grid{

grid-template-columns:1fr;

}

.advantages-grid{

grid-template-columns:1fr;

}

.contact-form{

padding:30px;

}

section{

padding:70px 0;

}

.gallery-grid img{

height:240px;

}

}
@media(max-width:480px){

.hero h1{

font-size:30px;

}

.hero-buttons a{

width:100%;

text-align:center;

}

.header .container{

height:75px;

}

.logo img{

height:42px;

}

.floating-buttons{

right:15px;

bottom:15px;

}

.floating-buttons a{

width:55px;

height:55px;

}

}
/*=========================================================
END OF STYLE.CSS
=========================================================*/
/*=========================================================
SCROLL TOP
=========================================================*/

.scroll-top{

position:fixed;

left:25px;

bottom:25px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:var(--yellow);

color:#000;

font-size:24px;

font-weight:700;

cursor:pointer;

opacity:0;

visibility:hidden;

transition:.35s;

z-index:9999;

}

.scroll-top.active{

opacity:1;

visibility:visible;

}

.scroll-top:hover{

transform:translateY(-4px);

}
/*=========================================================
BURGER MENU
=========================================================*/

.burger{
    display:none;
    flex-direction:column;
    gap:6px;
    background:none;
    border:none;
    padding:0;
    z-index:1001;
}

.burger span{
    width:30px;
    height:3px;
    background:#fff;
    border-radius:10px;
    transition:.3s;
}

@media(max-width:992px){

    .burger{
        display:flex;
    }

    nav{
        position:fixed;
        top:88px;
        left:-100%;
        width:100%;
        background:#070b12;
        transition:.35s;
        padding:35px;
    }

    nav.active{
        left:0;
    }

    .menu{
        display:flex;
        flex-direction:column;
        gap:25px;
    }

}
/*=========================================================
HERO EFFECTS
=========================================================*/

.hero{
    position:relative;
    overflow:hidden;
}

.hero::before{
    content:"";
    position:absolute;
    width:650px;
    height:650px;
    background:radial-gradient(circle,
    rgba(14,165,255,.22) 0%,
    transparent 70%);
    right:-180px;
    top:-120px;
    z-index:0;
}

.hero::after{
    content:"";
    position:absolute;
    width:500px;
    height:500px;
    background:radial-gradient(circle,
    rgba(255,196,0,.12) 0%,
    transparent 70%);
    left:-150px;
    bottom:-180px;
    z-index:0;
}

.hero .container{
    position:relative;
    z-index:2;
}
.hero-image {
    display: flex;
    justify-content: center;
    align-items: center;
}
.hero-image img{
    transition:.45s;
}

.hero-image img:hover{
    transform:scale(1.03);
    box-shadow:0 25px 70px rgba(14,165,255,.30);
}
/*=========================================================
LIGHTBOX
=========================================================*/

.lightbox{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.92);

    display:flex;

    justify-content:center;

    align-items:center;

    opacity:0;

    visibility:hidden;

    transition:.35s;

    z-index:99999;

}

.lightbox.active{

    opacity:1;

    visibility:visible;

}

.lightbox img{

    max-width:90%;

    max-height:90%;

    border-radius:20px;

    box-shadow:0 30px 80px rgba(0,0,0,.6);

}

.close-lightbox{

    position:absolute;

    top:30px;

    right:40px;

    font-size:50px;

    color:#fff;

    cursor:pointer;

}
/*=========================================================
FLOATING BUTTONS
=========================================================*/

.floating-buttons{

position:fixed;

right:22px;

bottom:25px;

display:flex;

flex-direction:column;

gap:15px;

z-index:9999;

}

.float{

width:62px;

height:62px;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:28px;

text-decoration:none;

color:#fff;

box-shadow:0 12px 30px rgba(0,0,0,.25);

transition:.3s;

}

.float:hover{

transform:translateY(-6px) scale(1.08);

}

.phone{

background:#f4b400;

}

.telegram{

background:#229ED9;

}

.viber{

background:#7360F2;

}

.whatsapp{

background:#25D366;

}

@media(max-width:768px){

.float{

width:56px;

height:56px;

font-size:24px;

}

}
/*=========================================================
CONTACTS
=========================================================*/

.contacts{

padding:100px 0;

}

.contacts-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:40px;

align-items:center;

}

.contact-info{

background:var(--card);

padding:40px;

border-radius:20px;

box-shadow:var(--shadow);

}

.contact-info h3{

margin-bottom:20px;

}

.contact-info p{

margin:14px 0;

font-size:18px;

}

.contact-info a{

color:#fff;

text-decoration:none;

}

.map{

height:450px;

border-radius:20px;

overflow:hidden;

background:#111;

}

@media(max-width:900px){

.contacts-grid{

grid-template-columns:1fr;

}

}
/*=========================================================
REQUEST FORM
=========================================================*/

.request{

padding:100px 0;

background:#0b111b;

}

.request h2{

text-align:center;

margin-bottom:15px;

}

.request-subtitle{

text-align:center;

color:var(--gray);

margin-bottom:40px;

}

.request-form{

max-width:700px;

margin:auto;

display:flex;

flex-direction:column;

gap:20px;

}

.request-form input,
.request-form textarea{

padding:18px 20px;

background:#131d2c;

border:1px solid rgba(255,255,255,.08);

border-radius:14px;

color:#fff;

font-size:16px;

outline:none;

transition:.3s;

}

.request-form input:focus,
.request-form textarea:focus{

border-color:var(--blue);

box-shadow:0 0 20px rgba(14,165,255,.2);

}

.request-form textarea{

min-height:140px;

resize:vertical;

}

.request-form button{

align-self:center;

min-width:240px;

}
/* ==========================================
   HOW WE WORK
========================================== */

.work-process{
    padding:90px 0;
    background:#0b111b;
}

.work-process h2{
    text-align:center;
    font-size:42px;
    margin-bottom:15px;
    color:#fff;
}

.section-subtitle{
    text-align:center;
    color:#aeb7c4;
    max-width:700px;
    margin:0 auto 50px;
    line-height:1.7;
}

.process-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

.process-card{
    background:#121b27;
    border-radius:18px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.08);
    transition:.3s;
}

.process-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 40px rgba(0,0,0,.35);
}

.process-card img{
    width:100%;
    height:180px;
    object-fit:cover;
    display:block;
}

.process-card h3{
    text-align:center;
    padding:18px;
    font-size:17px;
    color:#fff;
}
@media (max-width:992px){

    .process-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media (max-width:768px){

    .process-grid{
        grid-template-columns:1fr;
    }

    .work-process h2{
        font-size:32px;
    }

}
/* ==========================================
   MOBILE
========================================== */

@media (max-width: 992px){

    .vehicle-grid{
        grid-template-columns:repeat(2,1fr);
        gap:18px;
    }

    .process-grid{
        grid-template-columns:repeat(2,1fr);
        gap:18px;
    }

}

@media (max-width:768px){

    .vehicle-grid{
        grid-template-columns:1fr;
    }

    .process-grid{
        grid-template-columns:1fr;
    }

    .vehicle-card img,
    .process-card img{
        height:220px;
    }

    .vehicle-card h3,
    .process-card h3{
        font-size:18px;
    }

    .vehicle-types h2,
    .work-process h2{
        font-size:32px;
    }

    .section-subtitle{
        font-size:16px;
        padding:0 20px;
    }

}
@media (max-width:768px){

    .contacts .container{
        grid-template-columns:1fr;
        gap:35px;
    }

    .contact-info h2{
        font-size:34px;
    }

    .contact-form{
        padding:25px;
    }

}
.contact-map iframe{
    width:100%;
    height:420px;
    border:0;
    border-radius:20px;
}

.social-buttons{
    display:flex;
    gap:18px;
    margin-top:25px;
}
.contact-info .btn-yellow{
    margin-top:12px;
    margin-bottom:12px;
    width:fit-content;
}

.social-buttons a{
    display:flex;
    align-items:center;
    justify-content:center;
}

.social-buttons img{
    width:42px;
    height:42px;
    transition:.3s;
}

.social-buttons img:hover{
    transform:scale(1.1);
}

/* ===== Контакти ===== */

.contact-info p{
    display:flex;
    align-items:center;
    gap:12px;
}

.contact-info p img{
    width:22px;
    height:22px;
    flex-shrink:0;
}

.social-buttons{
    display:flex;
    gap:16px;
    margin-top:20px;
}

.social-buttons img{
    width:42px;
    height:42px;
    transition:.3s;
}

.social-buttons img:hover{
    transform:scale(1.1);
}