body, html {
    overflow-x: hidden;
}

.mb-50 {
    margin-bottom: 50px;
}

.mt-50 {
    margin-top: 50px;
}

.mb-40 {
    margin-bottom: 40px;
}

.mt-40 {
    margin-top: 40px;
}

.mt-20 {
    margin-top: 20px;
}

.ml-20 {
    margin-left: 20px;
}

.mr-20 {
    margin-right: 20px;
}

.p-50 {
    padding: 50px;
}

.pt-50 {
    padding-top: 50px;
}

.pb-50 {
    padding-bottom: 50px;
}

.pl-50 {
    padding-left: 50px;
}

.pr-50 {
    padding-right: 50px;
}

.pl-30 {
    padding-left: 30px;
}

.pr-30 {
    padding-right: 30px;
}

.w-100 {
    width: 100%;
}

.mb-20 {
    margin-bottom: 20px;
}

.mb-30 {
    margin-bottom: 30px;
}

.mt-30 {
    margin-top: 30px;
}

.mt-50 {
    margin-top: 50px;
}

.mb-50 {
    margin-bottom: 50px;
}
.pt-20 {
    padding-top: 20px;
}

.pb-20 {
    padding-bottom: 20px;
}

.pb-0 {
    padding-bottom: 0px;
}

.pt-0 {
    padding-top: 0px;
}

.p-10 {
    padding: 10px;
}

.py-5{
    padding-top:5px;
    padding-bottom: 5px;
}

.pt-10 {
    padding-top: 10px;
}

.pb-10 {
    padding-bottom: 10px;
}

.ml-30{
    margin-left: 30px;
}

.clearMargins {
    margin: 0px;
}

.textBlack {
    color: #000000;
}

body .noTextDecoration {
    text-decoration: none;
}

body {
    font-family: 'Roboto', sans-serif;
    color: #404040;
    padding-top: 50px;
}

#contactHolder .phoneNumber,
.headerContainer .phoneNumber {
    font: normal bold 25px/35px Roboto;
    letter-spacing: 0px;
    color: #004899;
}

.headerContainer .openingHours,
.stickyContactFooterHolder .phoneInfo {
    font: normal normal 17px/23px Roboto;
    letter-spacing: 0px;
    color: #004899;
}

.jumbotron,
.carousel {
    background-color: #404040;
}

.carousel-caption {
    z-index: 10;
    width: 100%;
    bottom: unset;
    left: 0px;
    right: 0px;
    padding: unset;
}

.carousel .item {
    background-color: #777;
    color: #fff;
    background-size: cover;
    background-position: right;
}

.hero .jumbotron {
    background-color: #777;
    color: #fff;
    border-radius: unset;
}

    .hero .jumbotron .h1,
    .carousel-inner .h1 {
        font: normal normal bold 90px/105px Roboto;
        letter-spacing: 0px;
        color: #fff;
        text-transform: uppercase;
    }

.carousel .item,
.carousel,
.hero .jumbotron {
    height: 450px;
}



.carousel-caption {
    top: 250px;
}

#carouselBogoho .carousel-caption {
    top: 180px;
}

.hero .jumbotron .h1 {
    margin: unset;
    margin-top: 250px;
}

.mainNavigation {
    background: var(---e1f7fc) 0% 0% no-repeat padding-box;
    background: #E1F7FC 0% 0% no-repeat padding-box;
}

    .mainNavigation .nav a {
        text-align: center;
        font: normal normal 400 28px/33px Roboto;
        letter-spacing: 0px;
        color: #000000;
        text-decoration: none;
    }

        .mainNavigation .nav .active a,
        .mainNavigation .nav a:hover,
        .mainNavigation .nav a:active,
        .mainNavigation .nav a:focus {
            color: #095A7C;
            background-color: unset;
        }

.blockShadowWbg {
    background: var(--unnamed-color-ffffff) 0% 0% no-repeat padding-box;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 0px 6px #83838366;
    border: 1px solid #CBCBCB;
}

.redCapsHeader,
.blackBoldCapsHeader {
    font: normal normal bold 16px/19px Roboto;
    letter-spacing: 0px;
    color: #3C3D3C;
    text-transform: uppercase;
}

.blackThinCapsHeader {
    font: normal normal normal 30px/35px Roboto;
    letter-spacing: 0px;
    color: #000000;
    text-transform: uppercase;
}

.yellowBoldCapsHeader {
    font: normal normal bold 30px/35px Roboto;
    letter-spacing: 0px;
    color: #FFC53C;
    text-transform: uppercase;
}

.labelPosition {
    height: 100%;
    display: table;
}

.redCapsHeader {
    color: #EA4243;
}

.leadInText {
    font: normal normal 300 25px/40px Roboto;
    letter-spacing: 0px;
    color: #000000;
}

.yellowButtonCaps {    
    text-align: center;
    font: normal normal normal 14px/16px Roboto;
    letter-spacing: 0px;
    color: #fff;
    background: #002E5D;
    border-radius: 15px;
}
.yellowButtonCaps:hover,
.yellowButtonCaps:active,
.yellowButtonCaps:focus{
    color:#fff;
}
.removeShadow {
    box-shadow: none;
}

.optionsBlock {
    border: 2px solid #095A7C;
}

.termsContainer {
    background: #F2F2F2  0% 0% no-repeat padding-box;
}
#btnShowAllDeals {
    background:none;
    border:none;
    font: normal normal normal 20px/24px Roboto;
    color: #002E5D;
}

.footerNavigation a {
    font: normal normal bold 10px/15px Roboto;
    letter-spacing: 0px;
    color: #4E4E4E;
    padding-left: 20px;
    padding-right: 20px;
}
.termsText{
    font: normal normal 300 10px/15px Roboto;
    color: #4E4E4E;
}
body {
    padding-bottom: 98px;
}

    body.displayFloatingContactBarFloatingThenAboveFooter {
        padding-bottom: unset;
    }

.stickyContactFooterHolder {
    position: fixed;
    bottom: 0;
    width: 100%;
    background: #DDF6FC 0% 0% no-repeat padding-box;
    box-shadow: 3px 3px 6px #00000040;
    z-index: 90;
}

.hideFloatingFooter .stickyContactFooterHolder {
    display: none;
    visibility: hidden;
}

.displayFloatingContactBarInline .stickyContactFooterHolder {
    position: relative;
}

.displayFloatingContactBarInline {
    padding-bottom: 0px;
}

.stickyContactFooterHolder .phoneInfo {
    font: normal normal normal 25px/30px Roboto;
}

.stickyContactFooterHolder .phoneInfoSmall {
    font: normal normal bold 18px/22px Roboto;
}

.stickyContactFooterHolder .blueCapsButton,
.stickyContactFooterHolder .redCapsHeader,
.stickyContactFooterHolder .blackBoldCapsHeader {
    font: normal normal bold 25px/30px Roboto;
}


.stickyContactFooterHolder .phoneInfo img {
    margin-top: -10px;
    margin-right: 10px;
    width: 20px;
}

.blueCapsButton {
    background: #095A7C 0% 0% no-repeat padding-box;
    border: 3px solid #FFC53C00;
    border-radius: 10px;
    color: var(--unnamed-color-ffffff);
    text-align: center;
    font: normal normal bold 35px/41px Roboto;
    letter-spacing: 0px;
    color: rgba(255,255,255,1);
    text-transform: uppercase;
}

    .blueCapsButton:hover,
    .blueCapsButton:active,
    .blueCapsButton:focus {
        color: rgba(255,255,255,1);
    }

body.modal-open,
#contactModal {
    padding-right: 0px !important;
}

.modal {
    background: rgba(255,255,255,0.95);
}

#contactModal .modal-content {
    border: 3px solid var(---e1f7fc);
    background: #F5F5FF 0% 0% no-repeat padding-box;
    box-shadow: 0px 5px 35px #00000083;
    border: 3px solid #E1F7FC;
    border-radius: unset;
}

#contactModal .close {
    position: absolute;
    top: 6px;
    right: 26px;
    z-index: 2;
}




select.form-control {
    padding: 8px 35px 8px 8px;
    color: #057B9D;
    font: normal normal bold 16px/26px Roboto;
    border: 1px solid #057B9D;
    border-radius: unset;
    height: 42px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url(https://assets.cruisemail.com.au/rci/cruiseuk/images/select-chevron.png) 96% / 15% no-repeat #F0FBFD;
}

.bgLightBlue {
    background-color: #e1f7fc;
}

.launchChat:hover,
.launchChat:active,
.launchChat:focus {
    cursor: pointer;
}
/*DMS overwrites*/
#dmsSearch {
    margin-bottom: 50px;
}

.dmsDealInner {
    border: 1px solid #BCBCBC;
    border-top:0px;
}

.dmsDeal .dealImage {
    height: 180px;
    width: 100%;
    display: block;
    background-color: #262626;
    background-position: center;
    background-size: cover;
}

.dmsDealLogo {
    height: 50px;
    width: auto;
}



.redText {
    color: #ED4B4C !important;
}

.duration {
    font: normal normal bold 28px/33px Roboto;
}

.name {
    font: normal normal 900 25px/30px Roboto;
}

.priceLabel {
    font: normal normal medium 16px/19px Roboto;
}

#breadCrumb a,
#breadCrumb {
    font: normal normal medium 16px/19px Roboto;
    color: #838383;
}

.priceHolder {
    background: #E6E6E6;
}

.lightBlueCapsButton {
    background: #002E5D;
    text-align: center;
    font: normal normal bold 24px/28px Roboto;
    color: #FFFFFF;
    text-transform: uppercase;
    border-radius: 0px;
}
.lightBlueCapsButton:hover,
.lightBlueCapsButton:active,
.lightBlueCapsButton:focus{
    color:#fff;
}
.dealTitle{
    font: normal normal normal 30px/35px Roboto;
    color: #002E5D;
    text-transform: uppercase;
}
#dealBulletPoints {
    font: normal normal normal 16px/35px Roboto;
    letter-spacing: 0px;
}

#terms,
#overview {
    text-align: left;
    font: normal normal normal 16px/35px Roboto;
    letter-spacing: 0px;
    color: #3C3D3C;
}

    #overview table {
        width: 100% !important;
        margin-top: 40px;
        margin-bottom: 40px;
    }

    #overview img {
        margin-top: 40px;
    }


.contactFormHolder {
    background: #FAFAFE 0% 0% no-repeat padding-box;
    border: 1px solid #C6C6C6;
}

.contactFormImage {
    background-image: url(https://assets.cruisemail.com.au/rci/cruiseuk/images/bg-contact.png);
    background-repeat: repeat-x;
}
/*end*/
#contactHolder {
    background-image: url(https://assets.cruisemail.com.au/rci/cruiseuk/images/yellow-semi2.png);
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
}

.navbar-toggle {
    border: 1px solid #404040 !important;
    margin: unset;
    position: absolute;
    top: 0px;
    right: 10px;
}

    .navbar-toggle .icon-bar {
        background-color: #262626;
    }

.hide {
    display: none;
    visibility: hidden;
}

#contactModal .modal-dialog {
    width: 1000px;
}

.stickyFooterImg {
    max-width: 60px
}

.hideDeal {
    display: none;
    visibility: hidden;
}

.contactFormHolder .leadInText {
    font: normal normal normal 25px/36px Roboto;
    color: #171717;
}

.contactFormHolder .blackBoldCapsHeader {
    font: normal normal bold 44px/36px Roboto;
}

.pt-30 {
    padding-top: 30px;
}

.pb-30 {
    padding-bottom: 30px;
}

.mt-80 {
    margin-top: 80px;
}

.pl-30 {
    padding-left: 30px;
}

.contactBlockPhoneNumberHolder {
    position: relative;
    margin: auto;
    display: inline-block;
    margin-left: -148px;
}

.contactFormHolder .phoneNumberHolder {
    padding-top: 20px;
    padding-left: 20px;
}

.w-99 {
    width: 99%
}
.lgBtPadding{
    padding-bottom: 50px;
}
.titleContainer{
    padding-top:160px;
}
.heroTitle{   
    text-align: left;
    font: normal bold 4.5em Roboto;
    letter-spacing: 0px;
    color: #FFFFFF;
    text-shadow: 3px 3px 6px #0000004E;
}
.heroSubTitle{   
    text-align: left;
    font: normal normal 1.5em Roboto;
    letter-spacing: 0px;
    color: #FFFFFF;
    text-shadow: 0px 3px 6px #00000029;
}




@media (max-width: 1488px) {
    .heroTitle{   
        font: normal bold 3.5em Roboto;
    }
    .heroSubTitle{
        font: normal bold 1.3em Roboto;
    }
    
}




/*MD*/
@media (max-width: 992px) {
    .titleContainer *{
        text-align: center;
    }
    
    body {
        padding-top: 10px !important;
    }

    .headerContainer .phoneNumber {
        font: normal normal bold 30px/35px Roboto;
    }

    .headerContainer .openingHours {
        font: normal normal normal 20px/25px Roboto;
    }
}


/*SM*/
@media (max-width: 768px) {
   
    .contactFormImage {
        background-image: none;
        background-color: #f9dbc8;
        margin-bottom: 10px;
    }

    .contactFormHolder .phoneNumberHolder {
        padding-top: 10px;
        padding-left: 0px;
    }

    .w-99 {
        width: 100%;
    }

    .mt-80 {
        margin-top: 10px;
    }

    .pl-30 {
        padding-left: 0px;
    }

    .contactBlockPhoneNumberHolder {
        margin-left: auto;
    }

    #contactModal .modal-dialog {
        width: 100%;
    }

    body div.widget-visible {
        display: none !important;
        visibility: hidden !important;
    }

    .hiddenMdDown {
        display: none;
        visibility: hidden;
    }

    .hide.showMdDown,
    .showMdDown {
        display: initial !important;
        visibility: visible;
    }

    .carousel .item,
    .carousel,
    .hero .jumbotron {
        height: 270px;
        background-position: right;
    }

        .carousel-caption .h1,
        .hero .jumbotron .h1 {
            font: normal normal bold 50px/55px Roboto;
            margin-top: 10px !important;
        }

            .jumbotron .h1 small,
            .carousel-caption .h1 small {
                display: none;
                visibility: hidden;
            }

    #carouselBogoho .carousel-caption,
    .carousel-caption {
        top: 10px;
    }

    .pt-50 {
        padding-top: 10px;
    }

    .pb-50 {
        padding-bottom: 10px;
    }

    .pl-50 {
        padding-left: 10px;
    }

    .pr-50 {
        padding-right: 10px;
    }

    .p-50 {
        padding: 20px;
    }

    .mt-50 {
        margin-top: 10px;
    }

    .mb-50 {
        margin-bottom: 25px;
    }

    .mb-40 {
        margin-bottom: 10px;
    }

    .mt-40 {
        margin-top: 10px;
    }
    .lgBtPadding{
        padding-bottom: 0px;
    }
.smBtMargin{
    margin-bottom: 20px;;
}


    body {
        padding-bottom: 100px;
    }

    .headerContainer img {
        width: 110px;
    }
    .titleContainer{
        padding-top:60px;        
    }
}

@media (max-width: 576px) {
    .titleContainer{
        padding-top:20px;        
    }
}