/* ------------------------------

Swiper (Carousel) Styles

------------------------------  */
	#home-swiper {
        width: 100%;
        height: auto !important;
        display: block !important;
        background-size: auto;
        position: relative;
    }
    #vehicles-swiper {
		height: auto !important;
		display: block !important;
		background-size: auto;
        position: relative;
	}
    #home-swiper > :first-child {
        min-width: 100%;
    }
    #homeSwiper {
        width: 100%;
        height: 100vh;
        background: #000;
    }
    #vehicleSwiper {
        width: 100%;
        height: 74vh;
        max-height: 810px;
		background-color: #EEEDEC;
    }
	#vehicleSwiperDuplicate {
		position: absolute;
	    z-index: 2;
	    bottom: 20px;
	    text-align: center;
	    width: 100%;
	    display: flex;
	    justify-content: center;
	}
    #vehicles-swiper #vehicleSwiper.vehicleSwiper--duplicate {
        position: absolute;
        bottom: 0;
        z-index: 10;
        background: transparent;
    }
    #homeSwiper .swiper-wrapper {
        height: 100vh;
    }
    #vehicleSwiper .swiper-wrapper {
        height: 74vh;
        max-height: 810px;
    }
    #homeSwiper .swiper-slide, #vehicleSwiper #vehicleSwiper-slide {
        width: 100% !important;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    #homeSwiper .swiper-slide-text {
        position: absolute;
        width: 50%;
        bottom: 8em;
        left: 3em;
        margin: 0 auto;
        z-index: 2;
        color: #fff;
    }
	#vehicleSwiperDuplicate a {
	    text-decoration: none;
	}
	#vehicleSwiperDuplicate .brow {
		color: #000;
		text-decoration: underline;
		margin-bottom: 6px;
	}
    #vehicleSwiperDuplicate .description {
		color: #000;
		font-size: 1.25rem;
		text-decoration: none;
	}
	#vehicleSwiperDuplicate a:hover .description {
		color: #000;
	}
    #homeSwiper .backdrop {
        background: rgb(0,0,0);
        background: linear-gradient(0deg, rgba(0,0,0,.35) 50%, rgba(0,0,0,0) 100%);
        content: "";
        height: 100%;
        left: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 1;
    }
    #vehicleSwiper .backdrop {
		background-color: #EEEDEC;
		content: "";
		height: 100%;
		left: 0;
		pointer-events: none;
		position: absolute;
		top:0;
		width: 100%;
		z-index: -1;
	}
    .bgimg {
        width: 100%;
        height: 100%;
        z-index: 0;
        background-size: cover;
        background-position: center;
    }
    .bgvid {
        min-width: 100%;
        min-height: 100%;
        position: absolute;
        top: 0;
        left:  0;
        object-fit: cover;
        z-index: 0;
        margin: 0 auto;
    }
    #vehicleSwiper .swiper-images {
		display: flex;
		justify-content: center;
	}
	#vehicleSwiper .swiper-images img.vehicle {
		z-index: 1;
		bottom: 90px;
		position: absolute;
		width: auto;
    	height: 58.5vh;
    	max-height: 690px;
	}
	#vehicleSwiper .swiper-images .whitebar {
		position: absolute;
		z-index: 0;
		bottom: 33%;
    	width: auto;
    	height: 11vh;
		max-height: 108px;
	}
    @supports (-webkit-touch-callout: none) {
        .swiper, .swiper-wrapper {
            max-height: -webkit-fill-available !important;
        }
    }
    /* Pagination, Arrow Controls */
    .home-swiper-controls {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        display: flex;
        justify-content: center;
        flex-direction: row-reverse;
    }
    .home-swiper-button-next, .home-swiper-button-prev, .home-swiper-pagination {
        position: relative;
        left: auto;
        right: auto;
    }
    .home-swiper-button-next, .home-swiper-button-prev {
        color: #000;
        bottom: -5px;
    }
    .home-wiper-pagination {
        width: auto;
    }
    .home-swiper-pagination span.swiper-pagination-bullet {
        width: 7px;
        height: 7px;
        border-radius: 2px;
        bottom: -6px;
        background: #000;
    }
    .home-swiper-pagination span.swiper-pagination-bullet {
        padding: 5px;
        margin-bottom: -.07em !important;
    }
    .home-swiper-button-next:after, .home-swiper-button-prev:after {
        font-size: 16px;
        font-weight: 600;
    }
	.carousel-arrow-container {
		max-width: 1440px;
	    width: calc(100% - 72px);
	    position: absolute;
	    top: 50%;
	    left: 50%;
	    transform: translate(-50%, -50%);
	    z-index: 1;
	}
	.timeline-arrow-container {
		right: 0;
		bottom: 0;
		position: absolute;
		z-index: 1;
	}
	.arrow-box-left, .arrow-box-right {
		border-radius: 3px;
		padding: 0 6px;
		height: 2rem !important;
		width: 2rem !important;
		border: solid 2px #000;
	}
	.dark-section .arrow-box-left, .dark-section .arrow-box-right, .blue-section .arrow-box-left, .blue-section .arrow-box-right {
		border-color: #fff;
	}
	.arrow-box-left:after {
		content: '\f060' !important;
		color: #000;
		padding: 0;
		font-size: 1.4rem !important;
		line-height: 0 !important;
		font-family: "Font Awesome 6 Sharp" !important;
	    transition: 0.15s padding ease-out;
	}
	.dark-section .arrow-box-left:after, .blue-section .arrow-box-left:after {
		color: #fff;
	}
	.arrow-box-left:hover:after {
		padding-right: 4px;
	    transition: 0.15s padding ease-out;
	}
	.arrow-box-right:after {
		content: '\f061' !important;
		color: #000;
		padding: 0;
		font-size: 1.4rem !important;
		line-height: 0 !important;
		font-family: "Font Awesome 6 Sharp" !important;
	    transition: 0.15s padding ease-out;
	}
	.dark-section .arrow-box-right:after, .blue-section .arrow-box-right:after {
		color: #fff;
	}
	.arrow-box-right:hover:after {
		padding-left: 4px;
	    transition: 0.15s padding ease-out;
	}
	.swiper-button-disabled {
		opacity: .25;
	}
    /* Play/Pause Button */
    .dsb-button-control {
        color: #000 !important;
        border: none;
		width: calc(100% - 5.75rem);
		max-width: 1418px;
		left: 50%;
		transform: translate(-50%);
    	text-align: right;
        font-size: 1.4rem;
        text-decoration: none;
        position: absolute;
        bottom: .5rem;
        z-index: 15;
        cursor: pointer;
    }
	.dark-section .dsb-button-control, .blue-section .dsb-button-control {
		color: #fff !important;
	}
    .dsb-button-control:hover {
        color: #000 !important;
    }
	.dark-section .dsb-button-control:hover, .blue-section .dsb-button-control:hover {
		color: #fff;
	}
	@media screen and (max-width: 63.9375em) {
		.dsb-button-control {
			width: calc(100% - 3rem);
		}
		#vehicleSwiper, #vehicleSwiper .swiper-wrapper {
			height: 85vw;
		}
		.carousel-arrow-container {
			width: calc(100% - 1.5rem);
		}
		#vehicleSwiper .swiper-images img.vehicle {
		    width: calc(100% - 9rem);
			bottom: 10vw;
			height: auto;
			max-height: none;
		}
		#vehicleSwiper .swiper-images .whitebar {
		    width: calc(100% - 10rem);
		    bottom: 20vw;
			height: auto;
			max-height: none;
		}
		#vehicleSwiperDuplicate {
		    bottom: 0;
	        width: calc(100% - 6rem);
	        margin: 0 3rem;
		}
		#vehicleSwiperDuplicate .description {
		    font-size: 1.156rem;
		}
	}
	/* max 570px */
	@media screen and (max-width: 35.625em) {
		#vehicleSwiper .swiper-images img.vehicle {
			bottom: 17vw;
		}
		#vehicleSwiper .swiper-images .whitebar {
		    bottom: 26vw;
		}
	}
	/* max 450px */
	@media screen and (max-width: 28.125em) {
		#vehicleSwiper .swiper-images img.vehicle {
			bottom: 23vw;
		}
		#vehicleSwiper .swiper-images .whitebar {
		    bottom: 33vw;
		}
		#vehicleSwiperDuplicate .description {
		    font-size: 1rem;
		}
	}
	/* max 375px */
	@media screen and (max-width: 23.4375em) {
		#vehicleSwiperDuplicate .brow {
			font-size: 0.8rem;
		}
	    #vehicleSwiperDuplicate .description {
	        font-size: 0.875rem;
	    }
	}
/* Timeline Swipper */
	.timelineSwiper {
		width: 100%;
		padding-bottom: 40px;
	}
	.timelineSwiper .swiper-wrapper {
		margin-bottom: 6em;
	}
	.timelineSwiper .swiper-wrapper:before {
		content: '';
		width: 100%;
		height: 6px;
		background: #fff;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		z-index: 1;
	}
	.timelineSwiper .swiper-slide {
		height: auto;
		padding: 0px 36px;
	}
	.timelineSwiper .swiper-grid-container {
		max-width: 1440px;
		margin: 0 auto;
		display: grid;
	}
	.timelineSwiper .grid-2 .row__1, .timelineSwiper .grid-3 .row__1 {
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: row;
	}
	.timelineSwiper .grid-2 .row__2, .timelineSwiper .grid-3 .row__2 {
		width: 100%;
		display: flex;
	}
	.timelineSwiper .grid-2 .row__1, .timelineSwiper .grid-3 .row__1, .timelineSwiper .grid-2 .row__2, .timelineSwiper .grid-3 .row__2 {
		height: 255px;
	}
	.timelineSwiper .tcard {
		padding: 0 0 20px 20px;
		display: flex;
		align-items: center;
		text-align: left;
		border-left: 1px solid #373534;
	}
	.timelineSwiper .grid-2 .tcard, .timelineSwiper .grid-3 .tcard {
		height: 255px;
	}
	.timelineSwiper .row__1 .tcard {
		padding-bottom: 40px;
	}
	.timelineSwiper .grid-2 .row__1 .tcard {
		margin-right: auto;
	}
	.timelineSwiper .row__2 .tcard {
		padding-top: 40px;
		padding-bottom: 0;
		margin-left: auto;
	}
	.timelineSwiper .tcard .tcard__text {
		width: 400px;
		margin-right: 30px;
	}

	.timelineSwiper .tcard h4 {
		margin-bottom: 14px;
	}
	.tcard img {
		width: calc(100% - 290px);
		max-width: 380px;
	}
	.timelineSwiper .tcard .history-date {
		color: #9B9997;
	}
	.timeline-arrow-container {
		right: 0;
		top: 0;
		bottom: auto;
		padding: 0px 36px;
		position: relative;
		z-index: 1;
		width: 100%;
		text-align: right;
		left: 50%;
		transform: translate(-50%);
		display: flex;
		justify-content: flex-end;
		max-width: 1512px;
	}
	.timeline-arrow-container .swiper-button-next, .timeline-arrow-container .swiper-button-prev {
		right: auto;
		left: auto;
		bottom: auto;
		top: auto;
		position: relative;
	}
	.timeline-arrow-container .swiper-button-prev {
		float: left;
	}
	.timeline-arrow-container .swiper-button-next {
		float: right;
		margin-left: 18px;
	}

	/* Mobile Timeline */
	.timelineSwiper .swiper-slide.mobile-only .tcard {
		align-items: flex-start;
		flex-wrap: wrap;
		flex-direction: column;
		padding-bottom: 4em;
		/*height: 60vh !important;*/
	}
	.timelineSwiper .swiper-slide.mobile-only .tcard img {
		width: 100%;
		margin-top: 30px;
	}
	/* max-width 929px */
	@media screen and (max-width: 58.0625em) {
		.timelineSwiper, .timeline-arrow-container, .timelineSwiper .swiper-wrapper {
			height: auto !important;
			max-height: none !important;
		}
		.timelineSwiper .swiper-wrapper {
			margin-bottom: 4em;
		}
		.timelineSwiper .swiper-wrapper:before {
			content: none;
		}
		.timelineSwiper .swiper-slide {
			padding: 0 24px;
		}
		.timelineSwiper .swiper-slide.mobile-only:after {
			content: '';
			height: 6px;
			width: calc(100% + 24px);
			background: #fff;
			position: absolute;
			left: -24px;
		}
		.timelineSwiper .swiper-slide.mobile-only .tcard {
			height: 100% !important;
		}
		.timelineSwiper .swiper-slide.mobile-only .tcard h4, .timelineSwiper .swiper-slide.mobile-only .tcard p, .timelineSwiper .swiper-slide.mobile-only .tcard img {
			margin-top: 0;
		}
	}
/* Rectable Cards Swipper */
	.cardRectangleSwiper {
		height: 65vh;
		max-height: 570px;
		overflow: visible;
		position: relative;
		margin: 0 auto 75px;
		padding-left: 15px;
	}
	.cardRectangleSwiper .swiper-wrapper {
		height: 65vh;
		max-height: 570px;
	}
	.cardRectangleSwiper .swiper-slide {
		background-color: #aaa;
		border-radius: 12px;
		height: 100%;
		display: flex;
		position: relative;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		transition: transform 0.3s;
		overflow: hidden;
		background-size: cover;
		background-repeat: none;
		background-position: center;
	}
	.cardRectangleSwiper .swiper-slide:last-child {
		margin-right: 0 !important;
	}
	.cardRectangleSwiper .swiper-slide .card-link {
		position: absolute;
		width: 100%;
		height: 100%;
		left: 0;
		top: 0;
	}
	.cardRectangleSwiper .swiper-slide a.card-link:after {
		content: '\f061';
		font-family: 'Font Awesome 6 Sharp';
		background: #fff;
		color: #000;
		width: 28px;
		height: 28px;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: 3px;
		opacity: 0;
		position: absolute;
		bottom: 18px;
		right: 18px;
		transition: 300ms;
	}
	.cardRectangleSwiper .swiper-slide a.card-link:hover::after {
		opacity: 1;
	}
	.cardRectangleSwiper .slide-content {
		padding: 18px;
		position: relative;
		width: 100%;
		height: 100%;
	}
	.cardRectangleSwiper .slide-content:before {
		content: '';
		width: 100%;
		height: 100%;
		position: absolute;
		z-index: 0;
		top: 0;
		left: 0;
	}
	.cardRectangleSwiper .slide-content h3, .cardRectangleSwiper .slide-content h4 {
		margin: 0;
		padding: 18px;
		z-index: 5;
		color: #fff;
		position: absolute;
		top: 0;
		left: 0;
	}
	.cardRectangleSwiper .slide-content p {
		padding: 18px;
		margin: 0;
		color: #fff;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 5;
	}
	.cardRectangle-arrow-container {
		right: 0;
		top: 4em;
		bottom: auto;
		position: relative;
		z-index: 1;
		width: 100%;
		text-align: right;
		display: flex;
		justify-content: flex-end;
	}
	.cardRectangle-arrow-container .swiper-button-next, .cardRectangle-arrow-container .swiper-button-prev {
		right: auto;
		left: auto;
		bottom: auto;
		top: auto;
		position: relative;
		border-color: #0956FF;
	}
	.cardRectangle-arrow-container .swiper-button-prev {
		float: left;
	}
	.cardRectangle-arrow-container .swiper-button-next {
		float: right;
		margin-left: 18px;
	}
	.cardRectangle-arrow-container .swiper-button-prev:after, .cardRectangle-arrow-container .swiper-button-next:after {
		color: #0956FF;
	}
	@media (max-width: 39.9375em) {
		.cardRectangleSwiper.row {
			width: 100%;
			margin-left: 0;
			margin-right: 0;
			padding-left: 20px;
			padding-right: 20px;
		}
		.swiper-slide-first {
			margin-left: 0;
		}
		.cardRectangle-arrow-container {
			right: 25px;
		}
		.cardRectangleSwiper .swiper-slide a.card-link::after{
			opacity: 1;
		}
	}

	/* Three-Photo Cards Swipper */
	.cardThreePhotoSwiper {
		height: 100vh;
		max-height: 380px;
		overflow: visible;
		position: relative;
		margin: 3em auto 10em;
		padding-left: 15px;
	}
	.cardThreePhotoSwiper .swiper-wrapper {
		height: 100vh;
		max-height: 380px;
	}
	.cardThreePhotoSwiper .swiper-slide {
		background-color: #aaa;
		border-radius: 12px;
		height: 100%;
		display: flex;
		position: relative;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		transition: transform 0.3s;
		overflow: hidden;
		background-size: cover;
		background-repeat: none;
		background-position: center;
	}
	.cardThreePhotoSwiper .swiper-slide:last-child {
		margin-right: 0 !important;
	}
	.cardThreePhotoSwiper .swiper-slide .card-link {
		position: absolute;
		width: 100%;
		height: 100%;
		left: 0;
		top: 0;
    	display: flex;
    	flex-wrap: wrap;
    	flex-direction: column;
	}
	.cardThreePhotoSwiper .slide-content {
		padding: 18px;
		position: relative;
		width: calc(100% - 40%);
		height: 100%;
		border-right: 6px solid #fff;
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
	}
  .cardThreePhotoSwiper .image-tr, .cardThreePhotoSwiper .image-br {
    width: 40%;
    height: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
  }
  .cardThreePhotoSwiper .image-tr {
    border-bottom: 3px solid #fff;
  }
  .cardThreePhotoSwiper .image-br {
    border-top: 3px solid #fff;
  }
	.cardThreePhotoSwiper .slide-content:before {
		content: '';
		width: 100%;
		height: 100%;
		position: absolute;
		z-index: 0;
		top: 0;
		left: 0;
	}
	.cardThreePhotoSwiper .slide-content h3, .cardThreePhotoSwiper .slide-content h4 {
		margin: 0;
		padding: 18px;
		text-decoration: none;
		z-index: 5;
		color: #fff;
		position: absolute;
		top: 0;
		left: 0;
	}
	.cardThreePhotoSwiper .slide-content p {
		padding: 18px;
		margin: 0;
		color: #fff;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 5;
	}
	.cardThreePhoto-arrow-container {
		right: 0;
		top: 4em;
		bottom: auto;
		position: relative;
		z-index: 1;
		width: 100%;
		text-align: right;
		display: flex;
		justify-content: flex-end;
	}
	.cardThreePhoto-arrow-container .swiper-button-next, .cardThreePhoto-arrow-container .swiper-button-prev {
		right: auto;
		left: auto;
		bottom: auto;
		top: auto;
		position: relative;
		border-color: #0956FF;
	}
	.cardThreePhoto-arrow-container .swiper-button-prev {
		float: left;
	}
	.cardThreePhoto-arrow-container .swiper-button-next {
		float: right;
		margin-left: 18px;
	}
	.cardThreePhoto-arrow-container .swiper-button-prev:after, .cardThreePhoto-arrow-container .swiper-button-next:after {
		color: #0956FF;
	}

	.cardThreePhotoSwiper .button{
		background: #fff;
		color: #000;
		width: 28px;
		height: 28px;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: 3px;
		opacity: 0;
		position: absolute;
		bottom: 18px; right: 18px;
		transition: 300ms;
	}

	.cardThreePhotoSwiper .card-link:hover .button {
		opacity: 1;
	}
	@media (max-width: 39.9375em) {
		.cardThreePhotoSwiper.row {
			width: 100%;
			margin-left: 0;
			margin-right: 0;
			padding-left: 20px;
			padding-right: 20px;
		}
		.swiper-slide-first {
			margin-left: 0;
		}
        .cardThreePhotoSwiper .slide-content {
            width: 100%;
            border: none;
        }
        .cardThreePhotoSwiper .image-tr, .cardThreePhotoSwiper .image-br {
            display: none;
        }
		.cardThreePhoto-arrow-container {
			right: 25px;
		}
	}
	
	/* News Cards Swipper */
	.newsCardsSwiper {
		/*height: 100vh;
		max-height: 420px;*/
		height: auto;
		overflow: visible;
		position: relative;
		margin: 0 auto 4em;
		padding-left: 15px;
	}
	.newsCardsSwiper .swiper-wrapper {
		/*height: 100vh;
		max-height: 420px;*/
		height: auto;
		margin-bottom: 4em;
	}
	.newsCardsSwiper .swiper-slide:last-child {
		margin-right: 0 !important;
	}
	.newsCards-arrow-container {
		width: 100%;
		display: flex;
		justify-content: flex-end;
		position: relative;
		margin: -10px auto 0;
		text-align: right;
	}
	.newsCardsSwiper .swiper-slide {
		height: auto;
	}
	.newsCardsSwiper .image-ratio {
		height: 100%;
	}
	.newsCards-arrow-container .swiper-button-next, .newsCards-arrow-container .swiper-button-prev {
		right: auto;
		left: auto;
		bottom: auto;
		top: auto;
		position: relative;
		border-color: #0956FF;
	}
	.newsCards-arrow-container .swiper-button-prev {
		float: left;
	}
	.newsCards-arrow-container .swiper-button-next {
		float: right;
		margin-left: 18px;
	}
	.newsCards-arrow-container .swiper-button-prev:after, .newsCards-arrow-container .swiper-button-next:after {
		color: #0956FF;
	}
	/* 767px and below */
	@media (max-width: 47.9375em) {
		.newsCardsSwiper.row {
			height: auto;
			max-height: none;
		}
		.newsCardsSwiper .swiper-wrapper {
			height: auto;
			max-height: none;
		}
	}
	/* 640px and below */
	@media (max-width: 39.9375em) {
		.newsCardsSwiper.row {
			width: 100%;
			margin-left: 0;
			margin-right: 0;
			padding-left: 20px;
			padding-right: 20px;
		}
	}