/*
 * Additional screen styles for American Holidays - softwaredesign - theme
 *
 * @since   1.1
 * @update  1.5.3
 *
 * v1.2:    Customisation for accordions on Search Results page.
 * v1.2.1:  Tweak accordion padding for when icons are not present.
 * v1.3:    Update background colour on mobile menu.
 * v1.3.1:  Add some transparency to the banner caption background on mobile.
 * v1.3.3:  Remove mobile header phone number styles (updated versions now in global.scss)
 *          Remove various mobile menu styles (updated versions now in global.scss)
 * v1.3.5:  Tweak to Offers badge.
 * v1.5.3:  remove large margin from bottom of Offers carousels
*/


/* SITE HEADER *******************************************************************************************************/
@media (min-width: 768px) {
    div#collapseCall {
        display: none !important;
    }
}
/* END: SITE HEADER **************************************************************************************************/

.navbar.navbar-default .navbar-toggle .icon-bar {
    width: 35px;
    background: black;
}

@media (max-width: 767px) {
    .navbar.navbar-default .navbar-brand-mobile img {
        max-width: 64vw;
        width: auto;
    }
    .navbar.navbar-default .navbar-brand-mobile {
        top: 14px;
        right: auto;
        left: 15px;
    }
    .navbar.navbar-default .navbar-toggle.collapsed ~ .contact {
        position: absolute;
        top: 56px;
        right: 0;
        left: 0;
    }
    .navbar-header.page-scroll {
        height: 56px;
    }
    .navbar.navbar-default .navbar-toggle {
        margin-top: 21px;
    }
    .navbar-call {
        position: absolute;
        top: 15px;
        right: 75px;
        height: 30px;
        padding: 0;
        border: none;
    }
    .navbar-call .inner {
        display: flex;
        width: 30px;
        height: 30px;
        color: #F9F9F9;
        border: solid 2px #369A37;
        border-radius: 5px;
        background: #369A37;
        align-items: center;
        justify-content: center;
    }
    .navbar-call .inner-arrow {
        position: absolute;
        top: 50%;
        left: 100%;
        margin-left: 4px;
        transform: translateY(-50%);
        color: #369A37;
    }
    /* .navbar-call:hover .inner, */
    .navbar-call:not(.collapsed) .inner {
        color: #369A37;
        background: #F9F9F9;
    }
    /* .navbar-call:hover .inner-arrow, */
    .navbar-call:not(.collapsed) .inner-arrow {
        color: #369A37;
    }
    .navbar-call:not(.collapsed) .inner-arrow {
        transform: rotate(180deg) translateY(50%);
    }
    .component_one:not(.rf_widget_bg_hide) .carousel .carousel-inner .item .carousel-caption {
        color: black !important;
        background: rgba( 255, 255, 255, 0.8 ) !important;
    }
    .component_one .carousel .carousel-inner .item .carousel-caption.no-content {
        background: transparent !important;
    }
    .component_1 .caption-bg,
    .component_one .caption-bg {
        color: black;
    }
    .component_1 .carousel .carousel-inner .item .carousel-caption p,
    .component_one .carousel .carousel-inner .item .carousel-caption p {
        color: black;
    }
    .component_1.mobile_style_under_banner .carousel-indicators li,
    .component_one.mobile_style_under_banner .carousel-indicators li,
    .component_1.mobile_style_under_banner .carousel-indicators li.active,
    .component_one.mobile_style_under_banner .carousel-indicators li.active {
        width: 12px;
        height: 12px;
        margin: 9px 2px;
    }
    .component_1.mobile_style_under_banner .carousel-indicators,
    .component_one.mobile_style_under_banner .carousel-indicators {
        right: 0;
        left: 0;
        width: 100%;
        height: 30px;
        margin: auto;
        background: rgba(0, 0, 0, 0.3);
    }
    .component_1 .carousel .carousel-control i,
    .component_one .carousel .carousel-control i {
        line-height: 30px;
        top: auto;
        bottom: 0;
    }
    .component_1 .carousel .carousel-control i:before,
    .component_one .carousel .carousel-control i:before {
        font-size: 26px;
        line-height: 30px;
        height: 30px;
    }
    .navbar-collapse .search-form {
        clear: both;
    }
    /*
    .component_1 .static-bg .table-display .table-cell,
    .component_one .static-bg .table-display .table-cell {
        background: rgba(0, 0, 0, 0.2);
    }
    */
    .component_1 .static-bg .table-display .table-cell p,
    .component_one .static-bg .table-display .table-cell p {
        font-weight: bold;
        color: white;
    }
    .term-multi-centre .component_one .static-bg {
        height: calc(100vh - 124px);
        margin-left: -15px;
        margin-right: -15px;
        overflow: hidden;
    }
    .term-multi-centre .component_one .static-bg .table-display .table-cell {
        vertical-align: bottom;
    }
}

.navbar-toggle .icon-bar {
    transition: all 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
}
/* Rotate first bar */
.navbar-toggle:not(.collapsed) .icon-bar {
    transform: rotate(-45deg) translate(-4px, 4px) ;
}

/* Fade out the second bar */
.navbar-toggle:not(.collapsed) .icon-bar + .icon-bar {
    opacity: 0;
}

/* Rotate last bar */
.navbar-toggle:not(.collapsed) .icon-bar:last-of-type {
    transform: rotate(45deg) translate(-7px, -7px) ;

    opacity: 1;
}
.fixed-btn-container {
    display: none;
}
.banner-mobile .ahol-main-banner {
    height: auto;
    min-height: 68px;

    background: #F9F9F9;
}

.banner-mobile .ahol-main-banner .ahol-banner-text {
    font-family: Roboto;
    font-size: 14px!important;
    font-weight: bold;
    font-style: italic;
    line-height: 140%;

    text-align: center;

    color: #000000;
}
.banner-mobile .ahol-main-banner .ahol-banner-btn {
    font-family: Roboto;
    font-size: 14px!important;
    font-weight: normal;
    font-style: normal;
    line-height: 140%;

    text-align: center;

    color: #666666;
}
.banner-mobile .ahol-main-banner a {
    font-family: Roboto;
    font-size: 13px;
    font-weight: normal;
    font-style: normal;

    color: #666666;
}
.close-mobile-navbar {
    display: none;
}
@media (min-width: 768px) {
    .banner-mobile {
        display: none;
    }
    .ahol-banner-text {
        color: white;
    }
    .ahol-banner-btn {
        font-family: Roboto;
        font-size: 13px!important;
        font-weight: normal;
        font-style: normal;
        line-height: 140%;
    }
    body .ahol-main-banner > div {
        width: auto;
    }
}


/* Footer */
.footer p.lead {
    font-weight: bold;
}
@media (min-width: 768px) {
    .collapse-mobile {
        display: block!important;
    }
}
@media (max-width: 767px) {
    .disclaimer-text {
        overflow: hidden;
    }
    .footer p.lead {
        font-weight: bold;

        display: flex;

        justify-content: space-between;
        align-items: center;
    }
    .mobile-collapse-btn:before {
        position: absolute;
        z-index: 1;
        right: 0;
        left: 0;

        width: 100%;
        height: 100%;

        content: "";
    }
    .mobile-collapse-btn:not(.collapsed) svg {
        transform: rotate(180deg);
    }
    .footer .col-connect #footer-connect {
        margin-bottom: 10px;
    }
    .footer .col-connect #footer-connect .menu-item {
        margin-right: 10px;
    }
    .footer .col-disclaimer img {
        max-width: 155px;
    }
}
.grecaptcha-badge {
    visibility: hidden;

    opacity: 0!important;
}
@media (max-width: 480px) {
    #footer-destinations,
    #footer-discover-america {
        padding-left: 40px;

        column-count: unset!important;
    }
}
/* END Footer */

/* Carousel Mobile */
body .slick-next:before, body .slick-prev:before {
    color: rgba(89,74,66,.8);
}
body .is-carousel{
    overflow: hidden;
    margin-bottom: 0;
}
@media (max-width: 767px) {
    .slick-slide .background-mask {
        width: 85vw;
        max-width: 500px;
    }
    body .mobile-carousel {
        overflow: hidden;
        margin-bottom: 0;
    }
    body .mobile-carousel .cp3-button {
        margin: 0;
    }
    body .mobile-carousel .slick-slider,
    body .is-carousel .slick-slider {
        padding-left: 10px;
    }
    body .mobile-carousel .background-mask .title-holder {
        position: static;
    }
    body .mobile-carousel .background-mask .title-holder .title {
        top: 0;
        bottom: auto!important;
    }
    /* body .mobile-carousel .background-mask,
    body .component_twenty_seven .background-mask {
        margin-bottom: 30px;
    } */
    body .mobile-carousel .description-holder {
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;

        min-height: 120px;
    }
    body .mobile-carousel .slick-slide .background-mask .list-inline {
        display: none;
    }
    body .mobile-carousel .slick-slide,
    body .is-carousel .slick-slide {
        padding: 0 5px;
    }
    body .mobile-carousel .background-mask .title-holder .top-bar {
        position: absolute;
        z-index: 1;
        top: auto!important;
        right: 0;
        bottom: 0;
        left: 0;

        width: 100%;
    }
    body .mobile-carousel .background-mask .title-holder .top-bar .price,
    body .mobile-carousel .background-mask .title-holder .top-bar .hot,
    body .mobile-carousel .background-mask .title-holder .top-bar .sale {
        /* width: 50%; */
        text-align: center;
    }
    body .mobile-carousel .background-mask .title-holder .top-bar .hot {
        display: flex;
        justify-content: center;
    }
    .component-8 {
        overflow: hidden;
    }
}
body .slick-dots li button {
    width: 15px;
    height: 15px;
}
body .slick-dots li button:before {
    display: none;
    width: 15px;
    height: 15px;
    line-height: 15px;
}
body .slick-dots li.slick-active {
    box-shadow: 0 0 10px #369A37 inset;
}
.holiday-carousel .cp3-title .text-center,
.holiday-carousel .cp3-excerpt  {
     text-align: left;
}
.holiday-carousel .top-bar {
    display: none;
}
.holiday-carousel .description-holder .list-inline {
    display: none;
}
.holiday-carousel .background-mask:before {
    content: "";
    display: block;
    padding-bottom: 285px;
}
.mobile-carousel.holiday-carousel .background-mask .description-holder .title-holder {
    height: auto;
    min-height: unset;
}
.mobile-carousel.holiday-carousel .background-mask .description-holder {
    height: 170px;
}
.mobile-carousel.holiday-carousel .background-mask .description-holder .title-holder .title {
    color: #6E665E;
    position: relative;
    background: transparent;
}
.mobile-carousel.holiday-carousel .background-mask .description-holder .title-holder .title h4 {
    padding: 10px 0 0;
    width: 100%;
}
.mobile-carousel.holiday-carousel .background-mask .description-holder .title-holder .title .icon {
    display: none;
}
/* END Carousel Mobile */

/* Pills Mobile */
@media (max-width: 767px) {
    .component_2 .slides li,
    .component_two .slides li,
    .mobile-carousel .slides li {
        height: 100px;
    }
}

.component_2 .slides li .destination-caption,
.mobile-carousel .slides li .destination-caption,
.component_two .slides li .destination-caption {
    position: relative;
    z-index: 1;
}

/* Component 8 collapse */
.collapsepanels {
    display: block;
    margin: 60px 0;
    overflow: hidden;
}

.collapsepanels .collapse-panel {
    margin-top: 5px;
    margin-bottom: 5px;
    border: solid 1px #69BFB9;
    border-radius: 4px;
}

.collapsepanels [data-toggle="collapse"] {
    display: block;
    width: 100%;
    padding: 12px 25px;
    font-size: 16px;
    font-style: normal;
    color: black;
    /* border: solid 1px #69BFB9; */
    border: none;
    border-radius: 4px;
    background: white;
}
@media (min-width: 992px) {
    .collapsepanels [data-toggle="collapse"] {
        padding: 18px 25px;
        font-size: 24px;
        line-height: 140%;
    }
}

.collapsepanels .well {
    padding-top: 0;
    padding-left: 65px;
    padding-right: 40px;
    /* border: solid 1px #69BFB9; */
    border: none;
    background: white;
    box-shadow: none;
}
.search-results .collapsepanels .well, .collapsepanels .well.no_icon {
    padding-left: 25px;
}

.collapsepanels .well p, .collapsepanels .well ul li, .collapsepanels .well ol li {
    font-size: 16px;
    line-height: 1.5;
    color: #000;
}
.collapsepanels .well ul, .collapsepanels .well ol {
    padding-left: 20px;
}
.collapsepanels .well ul {
    list-style-type: square;
}
.collapsepanels .well ul li, .collapsepanels .well ol li {
    margin-bottom: 10px;
}
.collapsepanels .well h2 {
    margin: 1em 0 0.25em 0;
    font-size: 22px;
    font-weight: 500;
}
.collapsepanels .well h3 {
    margin: 1em 0 0.25em 0;
    font-size: 20px;
    font-weight: 400;
}
@media (max-width: 991px) {
    .collapsepanels .well {
        padding-top: 10px;
        padding-left: 54px;
        padding-right: 30px;
    }
    .collapsepanels .well p, .collapsepanels .well ul li, .collapsepanels .well ol li {
        font-size: 14px;
        line-height: 1.5;
    }
    .collapsepanels .well ul li, .collapsepanels .well ol li {
        margin-bottom: 8px;
    }
    .collapsepanels .well h2 {
        font-size: 20px;
    }
    .collapsepanels .well h3 {
        font-size: 18px;
    }
}
@media (max-width: 749px) {
    .collapsepanels .well {
        padding-top: 15px;
        padding-left: 19px;
        padding-right: 19px;
    }
    .search-results .collapsepanels .well {
        padding-left: 19px;
    }
}
@media (max-width: 419px) {
    .collapsepanels .well {
        padding-top: 10px;
        padding-left: 13px;
        padding-right: 13px;
    }
    .search-results .collapsepanels .well {
        padding-left: 13px;
    }
}

.collapsepanels [data-toggle="collapse"] b {
    float: right;
    transition: cubic-bezier(0.075, 0.82, 0.165, 1);
}

.collapsepanels [data-toggle="collapse"] b svg path {
    fill: #69BFB9;
}

.collapsepanels [data-toggle="collapse"]:not(.collapsed) b {
    transform: rotate(180deg);
}

.collapsepanels .wide-btn {
    display: block;
    margin-top: 35px;
}

.collapsepanels .wide-btn a {
    display: block;
    width: 100%;
    margin-top: 5px;
    padding: 12px 25px;
    font-family: Roboto;
    font-size: 20px;
    font-weight: 900;
    font-style: normal;
    text-align: center;
    text-transform: uppercase;
    color: white;
    background: #EE9522;
}

@media (min-width: 992px) {
    .collapsepanels .wide-btn a {
        padding: 25px;
        font-size: 24px;
        line-height: 140%;
    }
}

.component-8 .itinerary h3 {
    font-size: 24px;
    line-height: 130%;
    margin-bottom: 0;
    font-weight: bold;
    color: black;    
}
.component-8 .itinerary hr {
    border-color: black;
    margin-top: 10px;
    margin-bottom: 10px;
}
.component-8 .itinerary .intro p {
    display: flex;
    font-size: 16px;
    line-height: 140%;
    color: black;
}
.component-8 .itinerary .intro p span {
    display: inline-block;
    width: 100px;
    min-width: 100px;
    flex: 0 0 100px;
    font-weight: 700;
}
.component-8 .itinerary .itinerary-content {
    display: flex;
    flex-wrap: wrap;
}
.component-8 .itinerary .itinerary-content p {
    display: flex;
    font-size: 16px;
    line-height: 140%;
    color: black;
    margin-left: 20px;
}
.component-8 .itinerary .itinerary-content p.heading {
    margin-left: 0;
    font-weight: 700;
    margin-bottom: 0;
}
.component-8 .itinerary .itinerary-content p.heading span {
    width: 20px;
}
.component-8 .quote p {
    font-size: 18px;
    line-height: 140%;
    color: black;
}
.component-8 .quote p span {
    font-size: 24px;
    font-weight: bold;
}
.component-8 .quote p small {
    font-size: 12px;
}
.component-8 .wide-btn {
    text-align: center;
    display: block;
    margin: 10px 0;
}
.wide-btn a {
    display: block;
    width: 100%;
    max-width: 376px;
    margin: 0px auto;
    text-align: center;
    font-style: normal;
    background: #EE9522;
    font-weight: bold;
    font-size: 24px;
    line-height: 140%;
    color: white;
    width: 100%;
    padding: 8px 20px;
}
/*  END Component 8  */



/*   Component 11 */
/*
@media (max-width: 767px) {
    .component_11 .slides .slide a,
    .component_eleven .slides .slide a {
        overflow: hidden;

        margin-bottom: 5px;
        padding: 5px;

        text-align: left;
        text-decoration: none;

        border: solid 1px #BFBFBF;
    }
    .component_11 .slides .slide a img,
    .component_eleven .slides .slide a img {
        float: left;

        margin-bottom: 10px!important;
    }
    .component_11 .slides .slide a p,
    .component_eleven .slides .slide a p {
        font-size: 16px;
        font-style: normal;
        line-height: 1;

        clear: both;

        width: 100%;

        color: black;
    }
}
*/

/*  END Component 11 */

/*  Component 25 */

@media (max-width: 974px) {
    .component-twentyfive .itinerary.desktop_only {
        display: none !important;
    }
}

@media (min-width: 975px) {
    .component-twentyfive .itinerary2.mobile_only {
        display: none !important;
    }
}

#collapsible-itinerary:after{ display: none; content: "custom-scrollbar"; }
@media screen and (max-width: 974px){
    #collapsible-itinerary:after{ content: ""; }
}

/*  END Component 25 */

/* Componenet Locations */
@media (min-width: 480px) {
    .container-small {
        width: 475px;
    }
}
@media (min-width: 750px) {
    .container-small {
        width: 700px;
    }
}
@media (min-width: 992px) {
    .container-small {
        width: 1010px;
        max-width: 100%;
    }
}
.component-title {
    font-family: Roboto;
    font-style: normal;
    font-weight: bold;
    font-size: 36px;
    line-height: 140%;
    text-align: center;
    color: #000000;
    margin-bottom: 60px;
}
@media (max-width: 768px) {
    .component-title {
        margin-bottom: 24px;
        text-align: left;
    }
}
.component-locations {
    margin-left: -15px;
    margin-right: -15px;
    margin-bottom: 60px;
}
@media (max-width: 768px) {
    .component-locations {
        margin-bottom: 30px;
    }
}
.component-locations .box {
    position: relative;
    display: block;
    width: 100%;
    margin-bottom: 30px;
}
.component-locations .box-img {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
}
.component-locations .box-img:after {
    content: "";
    display: block;
    padding-bottom: 52%;
}
.component-locations .box img {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -50%;
    right: -50%;
    margin: auto;
    max-width: 100%;
}
.component-locations .box-content {
    display: block;
    width: 100%;
    padding: 15px;
    font-size: 20px;
    color: black;
    background: #f3f3f3;
    font-weight: bold;
    text-align: center;
    font-style: normal;
}
.component-locations .box:hover {
    text-decoration: none;
}

@media (min-width: 480px) {
    .component-locations .box:hover .box-content {
        background: black;
        color: white;
        text-decoration: none;
    }
}
@media (max-width: 479px) {
    .component-locations .box {
        display: flex;
        margin-bottom: 20px;
        border: 1px solid #E0E0E0;
    }
    .component-locations .box-img {
        width: 40%;
    }
    .component-locations .box-img img {
        height: 100%;
        max-width: none;
    }
    .component-locations .box-img:after {
        padding-bottom: 75%;
    }
    .component-locations .box-content {
        width: 60%;
        display: flex;
        background: none;
        align-items: center;
        font-family: Roboto;
        font-weight: normal;
        font-size: 20px;
        line-height: 140%;
    }
}

/* END Componenet Locations */

/* Component Cruise */
@media (min-width: 480px) {
    .container-xs {
        width: 475px;
    }
}
@media (min-width: 750px) {
    .container-xs {
        width: 700px;
    }
}
@media (min-width: 992px) {
    .container-xs {
        width: 840px;
        max-width: 100%;
    }
}
/* END Componenet Cruise */

/* Component Whats included */
@media (min-width: 992px) {
    .container-lg {
    
        max-width: 100%;
    }
}
 @media (min-width: 1460px) {
    .container-lg {
        /* width: 1436px; */
        max-width: 100%;
    }
    /* .component-included {
        margin-left: -30px;
        margin-right: -30px;
    } */
}
/* END Component Whats included */



/* Component 5 */
.component_5 .post-boxes .post-holder .post-holder-overlay, .component_five .post-boxes .post-holder .post-holder-overlay {
    background: none;
}
.component_5 .post-boxes .post-holder h2, .component_five .post-boxes .post-holder h2 {
    font-size: 32px;
    line-height: 140%;
    order: -1;
}
.component_5 .post-boxes .post-holder a, .component_five .post-boxes .post-holder a {
    color: black;
    font-family: Roboto;
    font-style: normal;
    font-weight: normal;
    font-size: 32px;
    line-height: 140%;
}
.component_5 .post-boxes .post-holder .post-body, .component_five .post-boxes .post-holder .post-body {
    display: flex;
    flex-wrap: wrap;
}
.component_5 .post-boxes .post-holder .post-body .user .author, .component_five .post-boxes .post-holder .post-body .user .author {
    font-family: Roboto;
    font-style: normal;
    font-weight: normal;
    font-size: 18px;
    line-height: 140%;
    text-align: center;
    color: #000000;
}
.component_5 .post-boxes .post-holder .post-body .post-tags, .component_five .post-boxes .post-holder .post-body .post-tags {
    display: none;
}
.component_5 .post-boxes .post-holder .post-body .user, .component_five .post-boxes .post-holder .post-body .user {
    display: flex;
    align-items: center;
    height: 55px;
}
.component_5 .post-boxes .post-holder:hover .post-holder-overlay.post-holder-bg-image, .component_five .post-boxes .post-holder:hover .post-holder-overlay.post-holder-bg-image {
    display: none;
}
.component_5 .post-boxes .post-holder:hover .post-body .user .author, .component_five .post-boxes .post-holder:hover .post-body .user .author,
.component_5 .post-boxes .post-holder:hover .post-body h2 a, .component_five .post-boxes .post-holder:hover .post-body h2 a {
    text-shadow: none;
    color: #E74025;
}
.component_5 .post-boxes .post-holder .post-meta, .component_five .post-boxes .post-holder .post-meta {
    color: black;
}
.component_5 .post-boxes .post-holder .post-meta>ul>li, .component_five .post-boxes .post-holder .post-meta>ul>li {
    font-size: 14px;
    line-height: 140%;
    font-family: Roboto;
    font-style: normal;
    font-weight: normal;
}