html, body{
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
    font-family: 'Work Sans', sans-serif;
}

::-webkit-scrollbar {
    display:none;
}

a {
    display: contents;
}

/* Loading spinner */
#loadingCSS{
    position: fixed;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background: rgba(0,0,0,0.4);
    z-index: 9999999;
}
.lds-ring {
    display: inline-block;
    position: fixed;
    width: 80px;
    height: 80px;
    top: 50%;
    left: 50%;
    margin-left:-40px;
    margin-top:-40px;
}
.lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 64px;
    height: 64px;
    margin: 8px;
    border: 8px solid #fff;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #fff transparent transparent transparent;
}
.lds-ring div:nth-child(1) {
    animation-delay: -0.45s;
}
.lds-ring div:nth-child(2) {
    animation-delay: -0.3s;
}
.lds-ring div:nth-child(3) {
    animation-delay: -0.15s;
}
@keyframes lds-ring {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

textarea:focus, input:focus{
    outline: none;
}
header{
    height:120px;
    z-index:1050;
    top:0px;
    left:0px;
    position: fixed;
    transition: all 0.35s ease-in-out;
    background-color: #1c1c1c;
}
footer{
    padding-bottom: 110px;
}
header.unscrolled{
    height: 230px;
    background-color: transparent;
}

.centeredElement{
    position: absolute;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}
.pointer-events-none{
    pointer-events: none;
}
.headerLogo{
    position: absolute;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}
.swiperOverlay{
    position: absolute;
    width:100%;
    height: 100%;
    top:0px;
    left:0px;
    background: rgb(0,0,0);
    background: -moz-linear-gradient(0deg, rgba(0,0,0,0.14) 71%, rgba(0,0,0,0.74) 100%);
    background: -webkit-linear-gradient(0deg, rgba(0,0,0,0.14) 71%, rgba(0,0,0,0.74) 100%);
    background: linear-gradient(0deg, rgba(0,0,0,0.14) 71%, rgba(0,0,0,0.74) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#000000",GradientType=1);
    z-index: 2;
    color:white;
}
.menuIconHeader{
    position: absolute;
    top:50%;
    transform: translateY(-50%);
    right:0px;
    width:38px;
}
.swpHpTopPagination{
    position: absolute;
    z-index: 2;
    top:50%;
    transform: translateY(-50%);
    left:64px!important;
    width:8px!important;
    height: 24px;
}
.hp-top-title {
    font-size: 60px;
    font-weight: 600;
    color: #fff;
    margin-top: 15.625vw;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 1450px;
    line-height: 1.15;
    margin-bottom: 20px;
}
.learnMoreBtn{
    width:380px;
    height: 80px;
    background-color: rgba(241, 0, 0,0.68);
    color:white;
    border-radius: 37px;
    margin: 0 auto;
    margin-top: 6.25vw;
    position: relative;
    border:0px;
    font-size: 23px;
    font-weight: bold;
    transition: background-color .3s ease-in-out;
}
.learnMoreBtn a{
    color:white;
}
.learnMoreBtn a:hover{
    text-decoration: none;
}
.learnMoreBtn:hover {
    background-color: rgba(241, 0, 0,0.88);
}
.enginePreText{
    font-size: 17px;
    color: #f10000;
    margin-top: 160px;
    margin-bottom: 40px;
}
.enginePreName{
    font-size: 66px;
    color:white;
    font-weight: bold;
    line-height: .91;
}
.engineName{
    font-size: 200px;
    font-weight: bold;
    color:#dd0000;
}
.engineRow{
    background-color: #1c1c1c;
}
.enginePriceCol{
    background-color: #000;
    position: relative;
    padding-top: 120px;
    padding-bottom: 150px;
    top:-60px;
    z-index: 3;
}
.priceContainer{
    font-size: 153px;
    font-weight: bold;
    color:white;
    margin-left: 85px;
    position: relative;
}
.priceTagDetail{
    font-size: 12px;
    color:#f10000;
    position: absolute;
    right: 8px;
    top: 10px;
}
.engineDetailsName{
    font-size: 15px;
    font-weight: bold;
    color: #f10000;
    margin-bottom: 10px;
}
.engineDescription{
    font-size: 53px;
    font-weight: bold;
    color: white;
    line-height: 0.91;
    margin-bottom: 20px;
}
.enginePaymentDescription{
    font-size: 18px;
    color: #d4d4d4;
    line-height: 1.78;
}
.contactUsRow{
    position: relative;
    z-index: 2;
    top:-190px;
}
.contactUsCol{
    background-color: #000;
    color:white;
    position: relative;
    top:-170px;
    z-index: 2;
}
.contactUsTitleCol{
    font-size: 61px;
    font-weight: bold;
    margin-top: 65px;
    margin-bottom: 15px;
}
.contactUsInput{
    background-color: transparent;
    border: 0px;
    border-bottom: 1px solid white;
    border-radius: 0px;
    padding-top: 20px;
    padding-bottom: 20px;
    color: white;
}
.contactUsInput:-webkit-autofill,
.contactUsInput:-webkit-autofill:hover, 
.contactUsInput:-webkit-autofill:focus, 
.contactUsInput:-webkit-autofill:active  {
    -webkit-box-shadow: 0 0 0 40px #000 inset !important;
    box-shadow: 0 0 0 40px #000 inset !important;
}
.contactUsInput:-webkit-autofill {
    -webkit-text-fill-color: #fff !important;
}
.contactUsInput.form-error {
    border-bottom: 1px solid rgb(241, 0, 0,0.68);
}
#privacy.form-error + span {
    border: 1px solid rgb(241, 0, 0,0.68);
}
.contactUsInput::placeholder{
    color: white;
}
.swpAdventureDataCol{
    background-color: #000;
    color:  white;
}
.adventureTitle{
    margin-top: 8.85vw;
    font-weight: bold;
    color: white;
    font-size: 50px;
    line-height: 1.1;
}
.adventureDescription{
    font-size: 19px;
    line-height: 1.92;
    color: white;
}
.footerDividerLine{
    border-bottom: 1px solid #979797;
    margin-top: 30px;
    margin-bottom: 30px;
}
.footerData{
    font-size: 15px;
}
footer a, footer a:hover{
    color:#f10000;
    text-decoration: none;
}
.checkbox-container {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 22px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.checkbox-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.checkbox-checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: tranparent;
    border: 1px solid white;
}

.checkbox-container:hover input ~ .checkbox-checkmark {
    background-color: transparent;
}

.checkbox-container input:checked ~ .checkbox-checkmark {
    background-color: transparent;
}

.checkbox-checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

.checkbox-container input:checked ~ .checkbox-checkmark:after {
    display: block;
}                                       

.checkbox-container .checkbox-checkmark:after {
    left: 9px;
    top: 4px;
    width: 6px;
    height: 11px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.swpHpTopPagination .swiper-pagination-bullet, .swpAdventurePagination .swiper-pagination-bullet{
    width:10px;
    height: 10px;
    border: 2px solid white;
    background-color: transparent;
    transition: all 0.35s ease-in-out;
    opacity: 1;
    margin: 3px !important;
    outline: 0;
}
.swpHpTopPagination .swiper-pagination-bullet-active,.swpAdventurePagination .swiper-pagination-bullet-active{
    border-color: #f10000;
    background-color: #f10000;
    outline: 0;
}
.wrapper-container{
    display: inline-table;
    table-layout: fixed;
	width:100%;
}
.wrapper-box{
    position: relative;
    display: table-cell;
    width: auto;
}
.swpAdventurePagination{
    position: absolute;
    bottom:60px;
    left:calc(50% - 40px);
    transform: translateX(-50%);
    width:80px;
    height:30px;
}
.learnMoreBtnEngine{
    position: absolute;
    bottom: 150px;
    z-index: 4;
    left: 50%;
    transform: translateX(-50%);
}
.formPrivacyText{
    font-size: 14px;
}
.link-white a, .link-white a:hover{
    color:white;
    text-decoration: none;
}
.adventureColMargin{
    margin-top:-110px;
}
.cursor-pointer{
    cursor: pointer;
}
.contactUsPicOverlay{
    background: rgb(41,171,239);
    background: -moz-linear-gradient(180deg, rgba(41,171,239,0.61) 0%, rgba(237,49,45,0.1) 67%);
    background: -webkit-linear-gradient(180deg, rgba(41,171,239,0.61) 0%, rgba(237,49,45,0.1) 67%);
    background: linear-gradient(180deg, rgba(41,171,239,0.61) 0%, rgba(237,49,45,0.1) 67%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#29abef",endColorstr="#ed312d",GradientType=1);
    position: absolute;
    z-index: 1;
    top:0px;
    left:0px;
    height:100%;
    width:100%;
}
.redUnderlineGraphLengthReference{
    height: 7px;
    background-color: #f10000;
    position: absolute;
    top:-7px;
    z-index: 3;
}
.lengthReferenceGraph{
    position: absolute;
    top:-120px;
    z-index: 3;
}
.lengthBoatValue{
    position: absolute;
    z-index: 3;
    right: -46px;
    top: -210px;
}

/* Cookie choice */
#cookie-choice-info {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 30px 30px 15px;
    background: #fff;
    z-index: 3000;
    border-top: 1px solid rgba(235, 235, 235, 0.9);
}
  
#cookie-choice-info p {
    line-height: 1;
    font-size: 20px;
    color: #333;
}
  
#cookie-choice-info a {
    line-height: 1;
    font-size: 20px;
    color: #333;
    float: right;
    text-decoration: none;
}
  
#cookie-choise-dismiss {
    margin-left: 24px;
}
  
.arrow {
    position: absolute;
    top: 0;
    right: 30px;
    cursor: pointer;
}
  
.arrow:hover .arrow-big {
    -webkit-transform: translateX(10px);
            transform: translateX(10px);
}
  
.arrow-big {
    width: 39px;
    height: 7px;
    display: inline-block;
    -webkit-transition: -webkit-transform .5s ease;
    transition: -webkit-transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .5s ease;
}
.swiper-wrapper{
	height: fit-content!important;
}

/* Responsive */
@media only screen and (max-width: 1299px) {
    header.unscrolled {
        height: 180px;
    }

    .priceContainer {
        font-size: 114px;
    }

    .engineDescription {
        font-size: 44px;
    }

    .adventureTitle {
        margin-top: 6.85vw;
        font-size: 48px;
    }

    .adventureDescription {
        font-size: 17px;
    }

    .hp-top-title {
        font-size: 58px;
    }

    .engineName {
        font-size: 170px;
    }
}

@media only screen and (max-width: 1199px) {
    #cookie-choice-info a {
        float: left;
    }
    #cookie-choice-info a span {
        position: relative;
        display: block;
        font-size: 16px;
        top: 0;
        left: 0;
        margin-top: 10px;
        margin-bottom: 5px;
    }
    #cookie-choise-dismiss {
        margin-left: 0;
    }
    #cookie-choice-info p {
        font-size: 16px;
    }

}

@media only screen and (max-width: 991px){
    .headerLogo{
        position: absolute;
        top:50%;
        left:0px;
        transform: translateX(0) translateY(-50%);
    }
    .hp-top-title{
        width: 90vw;
        margin: 258px auto 25px;
        font-size: 40px;
    }
    .priceContainer{
        font-size: 83px;
        margin-left: 0px;
    }
    .priceTagDetail{
        top:0px;
    }
    .engineName{
        font-size: 129px;
    }
    .engine{
        width: 100%;
    }
    .enginePriceCol, .contactUsRow, .contactUsCol{
        position: unset;
    }
    .swpAdventureDataCol{
        min-height: 120px;
    }
    .swpAdventurePaginationContainer{
        position: relative;
        height: 54px;
        margin-bottom: 60px;
        margin-top: 30px;
    }
    .swpAdventurePagination{
        bottom:0px;
    }
    footer{
        padding-top: 60px;
    }
    .marshallLogoCol{
        margin-bottom: 60px;
        margin-top: 60px;
    }
    .learnMoreBtnEngine{
        bottom: 50px;
    }
    .adventureColMargin{
        margin-top:unset;
    }
    .lengthReferenceGraph{
        position: absolute;
        top:-75px;
        z-index: 3;
    }
}
@media only screen and (max-width: 575px){
    header{
        height:70px;
    }
    header.unscrolled {
        height: 95px;
    }
    .menuIconHeader{
        right:16px;
    }
    header.unscrolled{
        height: 125px;
    }
    .headerLogo{
        height: 75px;
        left:11px;
        width:142px;
    }
    .hp-top-title{
        width: 94vw;
        margin: 158px auto 25px;
        font-size: 20px;
        line-height: 1.2;
    }
    .hp-top-description{
        font-size: 15px;
        max-width: 90%;
        margin: 0 auto;
    }
    .contactUsInput {
        padding-top: 25px;
        padding-bottom: 15px;
    }
    .learnMoreBtn{
        width: 100%;
        max-width: calc(100vw - 60px);
        height: 60px;
        margin-top: 55px;
    }
    .headerLogo{
        left:16px;
    }
    .arrow-shaft{
        width:1px;
        height:100%;
        background-color: #f10000;
        position: absolute;
        top:50%;
        left:50%;
        transform: translate(-50%,-50%);
    }
    .arrow-point{
        width: 0;
        height: 0;
        border-left: 8px solid transparent;
        border-right: 8px solid transparent;
        border-top: 20px solid #f10000;
        position: absolute;
        bottom: 0px;
        left: 50%;
        transform: translateX(-50%);
    }
    .enginePriceCol{
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .priceContainer{
        font-size: 17.4vw;
        text-align: center;
        line-height: 1.05;
        margin-bottom: 10px;
    }
    .priceContainer span {
        display: block;
    }
    .priceTagDetail {
        top: -15px;
        right: unset;
        left: calc(16.666666vw - 15px);
        text-align: left;
    }
    .engineDetailsName{
        font-size: 12px;
    }
    .engineDescription{
        font-size: 35px;
        line-height: 35px;
    }
    .enginePaymentDescription{
        font-size: 15px;
        line-height: 22px;
    }
    .enginePaymentDescription span br {
        display: none;
    }
    .engineName{
        font-size: 16vw;
    }
    .enginePreName{
        font-size: 8vw;
    }
    .enginePreText{
        font-size: 14px;
        margin-top: 70px;
    }
    .adventureTitle{
        font-size: 35px;
        line-height: 0.91;
    }
    .adventureDescription{
        font-size: 13px;
        line-height: 1.38;
    }
    .swpHpTopPagination{
        left:4px!important;
    }
    .lengthReferenceGraph{
        position: absolute;
        top:-55px;
        z-index: 3;
    }
    .lengthBoatValue{
        right: 0px;
        width: 81px;
        top: -100px;
    }
    .learnMoreBtn{
        font-size: 20px;
    }
    .contactUsCol{
        width: calc(100% - 32px);
        margin: 0 auto;
        margin-top: 16px;
        margin-bottom: 16px;
    }
    .contactUsTitleCol{
        font-size: 36px;
        margin-top: 25px;
    }
    
}
@media only screen and (max-width: 360px){
    .learnMoreBtn{
        margin-top: 20px;
    }
}