
/****************************************
	Homepage
****************************************/

.hero {
    height: 100vh;
    min-height: 100vh;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    overflow: hidden;
}

.img::before {
    content: "";
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    top: 0;
    bottom: 0;
    width: 101%;
    height: 100%;
    z-index: 2;
    background-color: var(--black);
    zoom: 1;
    filter: alpha(opacity=65);
    -webkit-opacity: 0.65;
    -moz-opacity: 0.65;
    opacity: 0.65;
    pointer-events: none;
}

.img::after {
    content: "";
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    top: 0;
    bottom: 0;
    width: 101%;
    height: 100%;
    z-index: 2;
    background-image: -webkit-linear-gradient(270deg, transparent 70%, var(--black) 100%);
    background-image: -moz-linear-gradient(270deg, transparent 70%, var(--black) 100%);
    background-image: -ms-linear-gradient(270deg, transparent 70%, var(--black) 100%);
    background-image: -o-linear-gradient(270deg, transparent 70%, var(--black) 100%);
    background-image: linear-gradient(-180deg, transparent 70%, var(--black) 100%);
    zoom: 1;
    filter: alpha(opacity=100);
    -webkit-opacity: 1;
    -moz-opacity: 1;
    opacity: 1;
    pointer-events: none;
}

.swiper-container {
    width: 100%;
    height: 100%;
}

.swiper-slide {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    background: #fff;
    position: relative;
    z-index: 0;
}
  
.img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-size: cover;
    background-position: center  center;
    background-repeat: no-repeat;
    transition: 3s all;
    transform: scale(1.2);
}

.slide-text-container {
    width: 100%;
}

.slide-text {
    text-align: left;
    transition: 3s all;
    opacity: 0;
    width: 50%;
    transform: translate3d(0, -75px, 0);
}

.slide-text span {
    font-style: italic;
}

.slide-text span,
.slide-text h1 {
    color: var(--background);
    line-height: 0.9;
    padding: 0;
    margin: 0;
    z-index: 3;
}

.slide-text h1 {
    font-size: 120px !important;
}

.swiper-slide-active .img {
    animation: scale 8s ease forwards;
}

.swiper-slide-active .slide-text {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.swiper-pagination-bullet {
    background-color: var(--accent);
    position: relative;
    margin: 0px 20px !important;
}

.swiper-pagination-bullet-active::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-color: var(--accent);
    border-radius: 50%;
    border: 1px solid var(--accent);
    width: calc(100% + 3px);
    height: calc(100% + 3px);
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: calc(4 * var(--page-padding));
    width: auto;
    left: 50%;
    transform: translateX(-50%);
}
  
@keyframes scale {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.2);
    }
}

.mini-services {
    background-color: var(--black);
    padding: 3em 0px 3.5em;
    color: var(--background);
}

.mini-services h3 {
    color: var(--primary);
    margin-bottom: 0px;
}

.mini-services a {
    color: var(--background);
}

.service-img {
    border-radius: 50%;
    margin-right: 10px;
    height: 110px;
    width: 110px;
}

.services {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    column-gap: 50px;
    row-gap: 50px;
}

.service-desc {
    color: #888888;
}

.service-desc p {
    margin-top: 0px;
}

.sky,
.parallax {
    background-repeat: no-repeat;
    background-size: cover;        
    position: relative;
    text-align: center;
}

.sky {
    background-position: bottom center;
    padding-top: 5em;
    padding-bottom: 0px;
    overflow: hidden;
}

.parallax {
    background-position: center;
    background-attachment: fixed;
    color: var(--background);
    padding: 20vh 0px;
}

.sky h1,
.parallax h1 {
    text-align: center;
    line-height: 0.8;    
    font-size: 100px;
}

.sky h1 {
    margin-bottom: 0px;
}

.parallax h1 {
    color: var(--background);
    margin-bottom: 0px;
}

.overlay-dark {
    background-color: #192026;
    background-color: var(--black);
    zoom: 1;
    filter: alpha(opacity=75);
    -webkit-opacity: 0.75;
    -moz-opacity: 0.75;
    opacity: 0.75;
}

.background-overlay {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    pointer-events: none;
    z-index: 0;
}

.half-half::before{
    content: '';
    height: 12vw;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(var(--black-rgb), 1) 75%);;
}

.car-img {
    z-index: 2;
    transform: translate3d(100%, 0, 0);
    transition: all 1s;
}

.car-img.active {
    transform: translate3d(0, 0, 0);
}

.properties {
    background-color: var(--black);
    padding: 2em 0px 5em;
    color: var(--background);
}

.properties h1 {
    font-size: 50px;
    color: var(--background);
    line-height: 0.9;
    margin-bottom: 1em;
}

.properties .grid-wrapper {
    column-gap: 5em;
}

.properties .items-grid {
    grid-template-columns: 1fr 1fr 1fr;
    row-gap: 5em;;
}

.properties .img-container {
    padding-top: 100%;
    position: relative;
}

.properties .img-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    top: 0;
    left: 0;
}

.items-grid .icon {
    font-size: 60px;
    color: var(--accent);
    font-style: normal;
}

.item-inner {
    text-align: center;
}

.icon-customer-service:before {
    content: '\e809';
}

.icon-fast-time:before {
    content: '\e800';
}

.icon-limousine:before {
    content: '\e802';
}

.icon-seat:before {
    content: '\e804';
    margin-bottom: 18px;
}

.icon-tag:before {
    content: '\e806';
    margin-bottom: 18px;
}

.icon-taxi-driver:before {
    content: '\e807';
    margin-bottom: 18px;
}

.partners {
    background-color: var(--grey);
    padding: 3em 0px 5em;
}

.partners a {
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.5;
    margin: 0 2em;
    height: 50px;
}

.partners a:hover {
    opacity: 1;
}

.partners a img {
    height: 100%;
    width: auto;
}

strong {
    color: var(--accent);
}

.articles {
    padding-top: 3em;
}

.properties h1 {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .partners a {
        opacity: 1;
    }

    .parallax {
        background-attachment: scroll;
    }

    .slide-text span {
        line-height: normal;
    }

    .slide-text h1 {
        font-size: 60px !important;
    }    

    .slide-text {
        width: 100%;
    }

    .hero {
        min-height: 70vh;
        height: 70vh;
    }

    .partners h1,
    .articles h1,
    .sky h1, 
    .parallax h1 {
        font-size: 50px;
    }

    .properties .grid-wrapper {
        grid-template-columns: 1fr;
        row-gap: 2em;
    }

    .articles-grid {
        grid-template-columns: 1fr !important;
    }
}
