/*===================================================
    Main Slider
====================================================*/
.main-slider {
    background-color: var(--white-color);
    position: relative;
    overflow: hidden;
}

.main-slider .swiper-slide {
    background-color: #fff;
    z-index: 1;
}

.slider-progress {
    background-color: var(--bg-dark);
    width: 100%;
    height: 4px;
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    z-index: 3;
}

.slider-progress-bar {
    background-color: var(--primary-color);
    display: block;
    width: 0%;
    height: 100%;
    transform-origin: left center;
}

.slider-progress-bar.is-running {
    animation: slider-progress-fill 6000ms linear forwards;
}

.slider-progress-bar.is-paused {
    animation-play-state: paused;
}

@keyframes slider-progress-fill {
    from {
        width: 0%;
    }

    to {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .slider-progress-bar.is-running {
        animation: none;
        width: 100%;
    }
}

.slider-img-wrap {
    width: 100%;
    height: calc(100% + -50px);
    position: absolute;
    right: 0;
    top: 0;
}

.slider-img {
    background-repeat: no-repeat;
    background-position: center center;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    z-index: -1;
}

.slider-img img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    animation-duration: 8s;
}

.slider-road {
    background-color: #2e2c2d;
    background-image: url(../img/texture.png);
    background-repeat: repeat;
    background-size: cover;
    width: 55%;
    height: 200px;
    position: absolute;
    right: 0;
    bottom: 0;
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}

.corner-shape {
    background-image: url(../img/corner-shape-red.png);
    background-repeat: no-repeat;
    background-position: top left;
    background-size: 50px;
    width: 150px;
    height: 427px;
    position: absolute;
    left: 0;
    right: auto;
    top: 0;
}

.slider-content-wrap {
    height: 550px;
    position: relative;
    z-index: 2;
}

.slider-content-wrap .container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
}

.slider-content {
    width: 100%;
    max-width: 700px;
    min-width: 0;
    padding-right: 48px;
}

.slider-caption.medium {
    font-family: var(--primary-font);
    color: var(--primary-color);
    font-size: 16px;
    font-weight: 600;
    text-transform: capitalize;
    margin-bottom: 20px;
}

.slider-caption.medium .inner-layer div {
    position: relative;
    padding-left: 50px;
}

.slider-caption.medium .inner-layer div:before {
    background-color: var(--primary-color);
    width: 40px;
    height: 2px;
    border-radius: 2px;
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.slider-caption.big {
    font-family: var(--primary-font);
    color: var(--heading-color);
    font-size: clamp(42px, 3.2vw, 56px);
    line-height: 1.08;
    font-weight: 700;
    margin-bottom: 20px;
}

.slider-caption.big span {
    color: var(--primary-color);
}

.slider-caption.small {
    font-family: var(--primary-font);
    font-size: 18px;
    line-height: 28px;
    font-weight: 500;
    color: #555;
    margin-bottom: 20px;
    max-width: 620px;
}

.slider-btn {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}


/* Slider Pagination */
.main-slider .swiper-nav {
    background-color: var(--primary-color);
    width: 55px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    color: var(--heading-color);
    position: absolute;
    left: 0;
    bottom: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease-in-out;
    z-index: 1;
}


.main-slider .swiper-nav.slider-button-prev {
    clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
}

.main-slider .swiper-nav.slider-button-next {
    clip-path: polygon(0 0, 100% 0%, 100% 100%, 25% 100%);
    left: auto;
    right: 0;
}

.main-slider .swiper-nav:hover {
    background-color: var(--bg-dark);
    color: #fff;
    transition: all 0.3s ease-in-out;
}

/*Slider Pagination*/
.main-slider .slider-pagination {
    width: 15px;
    height: auto;
    position: absolute;
    left: 30px;
    bottom: 50%;
    transform: translateY(50%);
    z-index: 1;
}

.main-slider .slider-pagination .swiper-pagination-bullet {
    background-color: var(--bg-dark);
    border-radius: 0;
    opacity: 1;
}

.main-slider .slider-pagination .swiper-pagination-bullet-active {
    background-color: var(--primary-color);
    box-shadow: 0px 0px 0px 3px #DF111950;
    position: relative;
    transition: all 0.2s ease-in-out;
}

/* Truck Animation */
.truck-animation-right {
    -webkit-animation-name: truck-animation-right;
    animation-name: truck-animation-right;
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-fill-mode: both;
}
@-webkit-keyframes truck-animation-right {
    0% {
        -webkit-transform: translateX(60%);
        transform: translateX(60%);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes truck-animation-right {
    0% {
        -webkit-transform: translateX(60%);
        transform: translateX(60%);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

/* Responsive */
@media (min-width: 1200px) {
    .slider-content-wrap {
        height: 650px;
    }
}

@media (max-width: 1170px) {
    .main-slider .swiper-nav {
        left: 20px;
        bottom: 20px;
        width: 45px;
        height: 45px;
    }

    .main-slider .swiper-nav.slider-button-prev {
        bottom: 75px;
    }
}

@media (min-width: 993px) and (max-width: 1100px) {

    .main-slider .swiper-slide::before {
        background:
            linear-gradient(90deg,
                rgba(255, 255, 255, 0.92) 0%,
                rgba(255, 255, 255, 0.82) 58%,
                rgba(255, 255, 255, 0.38) 100%),
            linear-gradient(180deg,
                rgba(255, 255, 255, 0.76) 0%,
                rgba(255, 255, 255, 0.58) 62%,
                rgba(255, 255, 255, 0.28) 100%);
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        z-index: 1;
    }

    .slider-img-wrap {
        height: 100%;
    }

    .slider-content-wrap {
        height: auto;
        min-height: 720px;
        padding: 82px 0 126px;
        position: relative;
        z-index: 2;
    }

    .slider-content-wrap .container {
        display: grid;
        grid-template-columns: minmax(0, 62%) minmax(0, 38%);
        min-height: inherit;
        align-items: center;
    }

    .slider-content {
        max-width: 100%;
        padding-right: 24px;
        position: relative;
        z-index: 2;
    }

    .slider-caption.big {
        font-size: clamp(42px, 4.8vw, 52px);
        line-height: 1.12;
    }

    .slider-btn {
        margin-bottom: 48px;
    }

    .slider-img-wrap .corner-shape {
        display: none;
    }

    .main-slider .slider-pagination {
        width: auto;
        left: 50%;
        bottom: 42px;
        transform: translate(-50%, 0px);
        z-index: 4;
    }

    .main-slider div.slider-pagination > span {
        margin: 0 7px !important;
    }

}

@media (max-width: 992px) {

    .main-slider .swiper-slide::before {
        background:
            linear-gradient(90deg,
                rgba(255, 255, 255, 0.92) 0%,
                rgba(255, 255, 255, 0.82) 58%,
                rgba(255, 255, 255, 0.38) 100%),
            linear-gradient(180deg,
                rgba(255, 255, 255, 0.78) 0%,
                rgba(255, 255, 255, 0.62) 62%,
                rgba(255, 255, 255, 0.30) 100%);
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        z-index: 1;
    }

    .slider-img-wrap {
        height: 100%;
    }

    .slider-content-wrap {
        height: auto;
        min-height: 560px;
        position: relative;
        z-index: 2;
    }

    .slider-content-wrap .container {
        display: grid;
        grid-template-columns: minmax(0, 60%) minmax(0, 40%);
        min-height: inherit;
    }

    .slider-content {
        max-width: 100%;
        padding-right: 0;
        position: relative;
        z-index: 2;
    }

    .slider-caption.big {
        font-size: clamp(40px, 6vw, 48px);
        line-height: 1.12;
    }

    .slider-img-wrap .corner-shape {
        display: none;
    }

    .main-slider .slider-pagination {
        width: auto;
        bottom: 20px;
        left: 50%;
        transform: translate(-50%, 0px);
        z-index: 3;
    }

    .main-slider div.slider-pagination > span {
        margin: 0 7px !important;
    }

}

@media (min-width: 768px) and (max-width: 992px) {

    .slider-content-wrap {
        min-height: 690px;
        padding: 78px 0 112px;
    }

    .slider-btn {
        margin-bottom: 42px;
    }

    .main-slider .slider-pagination {
        bottom: 36px;
        z-index: 4;
    }

}

@media (max-width: 767px) {

    .main-slider .swiper-slide::before {
        background:
            linear-gradient(90deg,
                rgba(255, 255, 255, 0.98) 0%,
                rgba(255, 255, 255, 0.92) 62%,
                rgba(255, 255, 255, 0.55) 100%),
            linear-gradient(180deg,
                rgba(255, 255, 255, 0.96) 0%,
                rgba(255, 255, 255, 0.90) 55%,
                rgba(255, 255, 255, 0.60) 78%,
                rgba(255, 255, 255, 0.25) 100%);
    }

    .slider-content-wrap {
        min-height: 620px;
        padding: 72px 0 86px;
    }

    .slider-content-wrap .container {
        display: block;
        min-height: 0;
        padding-left: 20px;
        padding-right: 20px;
    }

    .slider-content {
        width: 100%;
        max-width: 100%;
        padding-right: 0;
    }

    .slider-img img {
        object-position: 68% center;
    }

    .main-slider .swiper-slide:nth-child(2) .slider-img img {
        object-position: 72% center;
    }

    .main-slider .swiper-slide:nth-child(3) .slider-img img {
        object-position: right center;
    }

    .slider-caption.medium {
        font-size: 15px;
        line-height: 1.45;
        margin-bottom: 16px;
    }

    .slider-caption.medium .inner-layer div {
        padding-left: 42px;
    }

    .slider-caption.medium .inner-layer div:before {
        width: 32px;
    }

    div br {
        display: none;
    }

    .slider-caption.big {
        font-size: clamp(34px, 9vw, 48px);
        line-height: 1.12;
        margin-bottom: 18px;
    }

    .slider-caption.small {
        color: #3f4650;
        font-size: 17px;
        line-height: 1.6;
        max-width: 100%;
        margin-bottom: 22px;
    }

    .slider-btn {
        gap: 12px;
    }

}

@media (max-width: 390px) {

    .slider-content-wrap {
        min-height: 660px;
        padding-bottom: 94px;
    }

    .slider-btn {
        align-items: stretch;
        flex-direction: column;
    }

    .slider-btn .default-btn {
        width: 100%;
        text-align: center;
    }

}
