/*** TYPOGRAPHY STYLES ***/
body {
    color: #4E4C62;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 300;
    color: #6c6b78;
}

.overflow-hidden {
    overflow: hidden;
}

h1 {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.2;
    color: #090625;
}

p, label {
    font-size: 14px;
}

label {
    font-weight: 500;
    margin: 4px 0;
    display: inline-block;
    color: #090625;
}

p, ol, ul {
    font-size: 18px;
    font-weight: 300;
    line-height: 1.5;
    color: #6c6b78;
}
ol, ul {
  padding-left: 20px;
}

strong {
    font-weight: 500;
}


.color--orange {
    color: #dba000;
}

.color--green {
    color: #00cfa5;
}

.color--red {
    color: #ff2e63;
}

.clear {
    clear: both;
}

.header {
    background: transparent;
    height: 90px;
    box-sizing: border-box;
    padding: 30px;
    position: relative;
    z-index: 1;
}

.header-standard {
    border-bottom: 1px solid #e8e8eb;
    background: white;
}

.header .logo {
    height: 30px;
}

@media screen and (max-width: 767px) {
    p {
        font-size: 15px;
    }

    .header {
        text-align: center;
        padding: 15px;
        height: auto;
        transform: translate3d(0, 0, 0);
    }

    .no-scroll-mobile .header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        height: 51px;
        z-index: 3;
        transform: translateZ(0);
        -moz-transform: translatez(0);
        -ms-transform: translatez(0);
        -o-transform: translatez(0);
        -webkit-transform: translateZ(0);
        -webkit-font-smoothing: antialiased;
    }

    .header .logo {
        height: 15px;
    }

    .no-padding-xs {
        padding: 0 !important;
    }
}

.header-partner-container {
    position: absolute;
    right: 26px;
    top: 29px;
    min-width: 515px;
    text-align: right;
}

.header-partner-container a {
    color: white;
    width: auto;
    margin: 0 6px;
    letter-spacing: 1px;
}


/*** END TYPOGRAPHY STYLES ***/


/*** FORM STYLES ***/

input[type="text"], input[type="search"], input[type="email"], input[type="password"], input[type="number"], input[type="date"], textarea, .partner-steps-content .chosen-container-multi .chosen-choices, select {
    height: 40px;
    border: 1px solid #b5b4bd;
    background-color: #FFFFFF;
    width: 100%;
    font-size: 14px;
    padding-left: 10px;
    box-sizing: border-box;
    color: #4e4c62;
    border-radius: 4px;
    background-image: none;
    font-family: 'Montserrat', sans-serif;
}

.map-filters .select2-container {
    z-index: 222222222;
}
.select1-results__option,
.select2-results__option {
  padding: 0;
}
.select1-results__option span,
.select2-results__option span {
  padding: 6px;
  display: inline-block;
}
.select1-results__option span.d-none,
.select2-results__option span.d-none {
  display: none;
}

.select2-results__options {
    font-size: 14px;
}

.select-level-1 {
    font-weight: bold;
}

.select-level-2 {
    padding-left: 10px;
}

.select2-container--default .select2-selection--single {
    border-radius: 4px;
    height: 40px;
    border-radius: 4px;
    background-color: #ffffff;
    border: solid 1px #b5b4bd;
    padding: 6px 3px;
    position: relative;
}

textarea:focus, input:focus, select:focus, span:focus, button:focus {
    outline: none;
}

input:focus, textarea:focus, .form-control:focus {
    border: 1px solid #00cfa5;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.col-search-locations .select2-container--default .select2-selection--single {
    padding-left: 27px;
}

.col-search-locations .select2-container--default .select2-selection--single::after,
.map-location-select .select2-container--default .select2-selection--single::after {
    position: absolute;
    top: 4px;
    left: 4px;
    background-image: url('/assets/map-marker.svg');
    height: 32px;
    width: 32px;
    content: "";
}

.map-location-select .select2-container--default .select2-selection--single::after {
    top: 9px;
    left: -22px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border: none;
    background-image: url(../assets/chevron-down.svg);
    width: 32px;
    height: 32px;
    margin-left: -6px;
    margin-top: -3px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    top: -5px;
    right: 19px;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    background-image: url(../assets/chevron-up.svg);
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #6c6b78;
    font-weight: 500;
}


.icheckbox_square {
    margin-right: 5px;
}

.icheckbox_square {
    border: 2px solid #c5c5c5;
    background-image: none;
    border-radius: 2px;
    margin-top: -2px;
}

.icheckbox_square.hover {
    border: none;
    border: 2px solid #888;
    background-image: none;
}

.icheckbox_square.checked {
    border: none;
    background-image: url(../plugins/icheck/skins/square/square.png);
}

::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #b5b4bd !important;
}

::-moz-placeholder {
    /* Firefox 19+ */
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #b5b4bd !important;
}

:-ms-input-placeholder {
    /* IE 10+ */
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #b5b4bd !important;
}

:-moz-placeholder {
    /* Firefox 18- */
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #b5b4bd !important;
}

/*** CHOSEN PLUGIN CUSTOM STYLING ***/

.partner-steps-content .chosen-container-multi .chosen-choices {
    line-height: 40px;
    min-height: 40px;
    height: auto;
}

.chosen-container-multi .chosen-choices li.search-choice {
    position: relative;
    margin: 8px 8px 3px 0;
    padding: 6px 30px 6px 8px;
    border: none;
    max-width: 100%;
    border-radius: 3px;
    background-color: #00cfa5;
    background-image: none;
    background-size: 100% 19px;
    background-repeat: repeat-x;
    background-clip: padding-box;
    box-shadow: none;
    color: white;
    line-height: 13px;
    cursor: default;
    font-size: 12px;
    overflow: hidden;
}

.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 23px;
    height: 100%;
    background: none;
    background-image: none !important;
    font-size: 1px;
    border-left: 1px solid rgba(255, 255, 255, 0.5);
    text-align: center;
    padding-top: 8px;
}

.search-choice-close::after {
    content: '×';
    position: relative;
    color: white;
    z-index: 1;
    display: block;
    font-size: 18px;
    font-family: 'arial';
}

.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
    text-decoration: none;
    background: #09a485;
}

.chosen-container-multi .chosen-choices li.search-field input[type=text] {
    font-size: 14px;
    font-weight: 500;
    color: #b5b4bd;
    font-family: 'Montserrat', sans-serif;

}

.chosen-container .chosen-results li {
    font-family: 'Montserrat';
    font-size: 14px;
}

::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #C4C3C9;
}

::-moz-placeholder {
    /* Firefox 19+ */
    color: #C4C3C9;
}

:-ms-input-placeholder {
    /* IE 10+ */
    color: #C4C3C9;
}

:-moz-placeholder {
    /* Firefox 18- */
    color: #C4C3C9;
}

textarea {
    height: auto;
    min-height: 131px;
    padding: 10px;
}


/*** END FORM STYLES ***/


/*** Helper styles ***/

.box-hover {
    -webkit-transition: all 120ms ease-in;
    -moz-transition: all 120ms ease-in;
    transition: all 120ms ease-in;
}

.box-hover:hover {
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.2);
    z-index: 2;
}

.max-width-100 {
    max-width: 100% !important;
}

.padding-none {
    padding: 0 !important;
}

.partner-forms-fields-radio-container input, .partner-forms-fields-checkbox-container-service input {
    display: none;
}

.partner-forms-fields-radio-container label, .partner-forms-fields-checkbox-container-service label {
    width: 49%;
    border-radius: 4px;
    background-color: transparent;
    display: block;
    font-weight: 300;
    padding: 13px;
    float: left;
    margin-right: 5px;
    font-size: 12px;
    box-sizing: border-box;
    border: solid 1px #b5b4bd;
}


.partner-forms-fields-checkbox-container-service label {
    width: 32%;
    min-height: 145px;
}

.partner-forms-fields-radio-container-type label {
    min-height: 136px;
}

.partner-forms-fields-radio-container input[type="radio"]:checked + label {
    border: solid 2px #00cfa5;
    padding: 12px;
    background-color: rgba(0, 207, 165, 0.04);
}

.partner-forms-fields-radio-container label {
    font-family: Montserrat;
    font-size: 12px;
    line-height: 1.3;
    color: #6c6b78;
}

.partner-forms-fields-radio-container label b {
    font-size: 14px;
    font-weight: 500;
    margin: 2px 0;
}

.partner-forms-fields-checkbox-container-service label {
    font-size: 14px;
    font-weight: 500;
    text-align: center;
}

.partner-forms-fields-checkbox-container-service .partner-forms-checkbox-training-services::before, .partner-forms-fields-checkbox-container-service .partner-forms-checkbox-guiding-tours::before, .partner-forms-fields-checkbox-container-service .partner-forms-checkbox-accommodation::before {
    content: '';
    background-image: url(../assets/accommodation.svg);
    width: 83%;
    height: 79px;
    position: relative;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 63px;
}

.partner-forms-fields-checkbox-container-service .partner-forms-checkbox-training-services::before {
    background-image: url(../assets/trainings.svg);
}

.partner-forms-fields-checkbox-container-service .partner-forms-checkbox-guiding-tours::before {
    background-image: url(../assets/tours.svg);
}

.partner-forms-fields-checkbox-container-service input[type="checkbox"]:checked + label {
    color: black;
    border: solid 2px #00cfa5;
    padding: 12px;
    background-color: rgba(0, 207, 165, 0.04);
}

.partner-forms-fields-radio-container input[type="radio"]:checked + label b {
    color: black;
}

@media screen and (max-width: 767px) {
    .xs-content-padding {
        padding: 0 10px;
    }
}

.border-box {
    background-color: #ffffff;
    border: 1px solid #e8e8eb;
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 4px;
    overflow: hidden;
}


.border-box hr {
    margin-left: -17px;
    margin-right: -17px;
    margin-bottom: 0;
    margin-top: 0;
}

.border-box-above-title {
    font-size: 18px;
    font-weight: 500;
    color: #090625;
}

.gradient-line {
    width: 100%;
    height: 4px;
    background-image: linear-gradient(89deg, #5d39c8, #1de7b4);
    border-radius: 3px 3px 0 0;
}

.no-padding {
    padding: 0 !important;
}

.no-margin {
    margin: 0 !important;
}

.no-margin-bottom {
    margin-bottom: 0 !important;
}

.no-margin-top {
    margin-top: 0 !important;
}

.margin-hor-s {
    margin: 20px 0 !important;
}

.margin-top-s {
    margin-top: 20px !important;
}

.margin-top-xs {
    margin-top: 10px !important;
}

/*** END Helper styles ***/

.home-header-container {
    position: relative;
    min-height: 696px;
    overflow: hidden;
    margin-top: -110px;
}

.home-header-container-title {
    font-size: 60px;
    font-weight: 500;
    text-align: left;
    color: #ffffff;
}

.home-header-container-description {
    font-size: 24px;
    color: #ffffff;
    margin: 11px 0 23px;
    font-weight: 300;
}

.home-scroll-down, .home-scroll-down:hover, .home-scroll-down:active, .home-scroll-down:focus {
    position: absolute;
    bottom: 50px;
    left: 50%;
    margin-left: -97px;
    width: 195px;
    height: 40px;
    border-radius: 100px;
    border: solid 2px #ffffff;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.5px;
    text-align: center;
    color: #ffffff;
    line-height: 36px;
    text-decoration: none;
}

.home-scroll-down img {
    margin-left: -15px;
}

@media screen and (max-width: 767px) {
    .home-header-container-title {
        font-size: 25px;
    }

    .home-header-container-description {
        font-size: 14px;
    }

    .home-header-container #center {
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        margin-top: 135px;
    }

    .home-header-container {
        min-height: 0;
        padding-bottom: 30px;
    }
}

#center {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: left;
    max-width: 762px;
    width: 100%;
}

@media screen and (max-width: 991px) {
    #center {
        max-width: 730px;
    }
}

video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100;
    transform: translateX(-50%) translateY(-50%);
    /* background: url('//demosthenes.info/assets/images/polina.jpg') no-repeat; */
    background-size: cover;
    transition: 1s opacity;
}

#overlay, .gradient-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(93, 57, 200, 1);
    background: -moz-linear-gradient(45deg, rgba(93, 57, 200, 1) 0%, rgba(29, 231, 180, 1) 100%);
    background: -webkit-linear-gradient(45deg, rgba(93, 57, 200, 1) 0%, rgba(29, 231, 180, 1) 100%);
    background: -o-linear-gradient(45deg, rgba(93, 57, 200, 1) 0%, rgba(29, 231, 180, 1) 100%);
    background: -ms-linear-gradient(45deg, rgba(93, 57, 200, 1) 0%, rgba(29, 231, 180, 1) 100%);
    background: linear-gradient(45deg, rgba(93, 57, 200, 1) 0%, rgba(29, 231, 180, 1) 100%);
    opacity: 0.6;
}

.grey-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.35);
    z-index: 1;
}

.bg-image {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 0;
    transform: translateX(-50%) translateY(-50%);
    background-image: linear-gradient(54deg, #5d39c8, #00cfa5);
    background-size: cover;
    transition: 1s opacity;
}


/*** Standard styles ***/

.section-container {
    padding-top: 20px;
    padding-bottom: 30px;
}

.section-container h2 {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.2;
    text-align: center;
    color: #090625;
    margin: 70px 0 80px;
}

.section-container .small-section-title, #similar-offerings .small-section-title {
    font-size: 26px;
    font-weight: 500;
    text-align: left;
    color: #090625;
    margin: 80px 0 20px;
}

.columns-with-icons-container {
    text-align: center;
    margin-bottom: 40px;
    margin-top: 20px;
}

.columns-with-icons-container p {
    font-size: 14px;
    line-height: 1.5;
    color: #6c6b78;
    padding: 10px;
    margin-top: 6px;
}

.columns-with-icons-container h3 {
    font-size: 18px;
    color: black;
}

@media screen and (max-width: 767px) {
    .section-container {
        overflow: hidden;
    }

    .section-container h2 {
        font-size: 20px;
        margin: 28px 0;
    }

    .section-container .small-section-title {
        font-size: 18px;
    }

    .columns-with-icons-container h3 {
        font-size: 14px;
        margin: 5px 0 0;
        color: black;
    }

    .columns-with-icons-container p {
        padding-top: 0;
    }

    .columns-with-icons-container img {
        width: 64px;
        height: 65px;
    }

    .section-container .small-section-title {
        margin: 30px 0 10px;
    }

    #similar-offerings {
        margin-bottom: 40px;
    }


    #similar-offerings .small-section-title {
        margin-top: 15px;
        margin-bottom: 10px;
        font-size: 18px;
    }
}

.photo-carousel-item {
    width: 370px;
    height: 370px;
    border-radius: 4px;
    display: block;
    position: relative;
    float: left;
    margin-right: 10px;
    overflow: hidden;
}

.photo-carousel-item-content {
    position: absolute;
    bottom: 18px;
    left: 24px;
}

.photo-carousel-item-title {
    font-size: 32px;
    font-weight: 500;
    color: #ffffff;
    margin-bottom: 15px;
}

.photo-carousel-item-link {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1.5px;
    color: #ffffff;
    position: relative;
}

.photo-carousel-item-link-text {
    border-bottom: 1px solid #FFF;
    padding-bottom: 4px;
}

@media screen and (max-width: 993px) {
    .owl-nav {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .photo-carousel-container {
    }

    .owl-nav {
        display: none;
    }

    .photo-carousel-item {
        width: 272px;
        height: 272px;
    }
}

.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    padding: 30px 11px;
    margin: -30px -11px;
}

.owl-carousel .owl-item img {
    width: auto;
    display: inline;
}

.owl-next, .owl-prev {
    width: 48px;
    height: 48px;
    background-color: #090625;
    color: #090625;
    border: solid 2px #090625;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    margin-top: -25px;
    overflow: hidden;
}

.owl-next {
    right: -60px;
}

.owl-next:hover, .owl-prev:hover {
    box-shadow: 0 4px 13px 0 rgba(122, 121, 128, 0.63);
}

.owl-next::after, .owl-prev::after {
    content: '';
    position: absolute;
    top: 50%;
    color: white;
    width: 100%;
    text-align: center;
    left: 0;
    margin-top: -11px;
    font-size: 21px;
    font-weight: bold;
    line-height: 1;
    background: url(../assets/chev-right.svg);
    background-repeat: no-repeat;
    background-position: center center;
    width: 45px;
    height: 23px;
}

.owl-prev::after {
    background-image: url(../assets/chev-left.svg);
    width: 42px;
}

.owl-prev {
    left: -60px;
}

.owl-next.disabled, .owl-prev.disabled {
    display: none;
}

.blank .experience-carousel-container {
    padding: 20px 58px;
}

.blank .owl-next.disabled, .blank .owl-prev.disabled {
    display: block;
}

.blank .owl-nav {
    display: block;
}

.blank .owl-prev {
    left: 0;
}

.blank .owl-next {
    right: 0;
}

@media screen and (max-width: 500px) {
    .blank .experience-carousel-container {
        padding: 20px 0;
    }

    .blank .owl-nav {
        display: none;
    }
}

.faq-container {
    padding: 10px 0 70px;
    background-color: #f6f6f7;
}

.faq-single-container {
    border-radius: 4px;
    margin: 12px 0;
    padding: 0 27px;
    position: relative;
    overflow: hidden;
    background-color: #ffffff;
    border: solid 1px #e8e8eb;
}

.faq-single-container h4 {
    font-weight: 500;
    letter-spacing: 0.2px;
    color: #090625;
    height: 72px;
    line-height: 72px;
    position: relative;
    margin: 0;
    margin: 0 -28px;
    padding: 0 48px 0 28px;
    -webkit-user-select: none; /* Chrome/Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE10+ */

    /* Rules below not implemented in browsers yet */
    -o-user-select: none;
    user-select: none;
}

.faq-open h4 {
    border-bottom: 1px solid #e8e8eb;

}

.faq-single-container h4:hover {
    cursor: pointer;
}


.faq-title-text {
    font-size: 14px;
    display: inline-block;
    vertical-align: middle;
    line-height: 14px;
    /* <-- adjust this */
}

.faq-chevron-down, .faq-chevron-up {
    position: absolute;
    top: 50%;
    right: 16px;
    margin-top: -18px;
}

.faq-chevron-up {
    display: none;
}

.faq-open .faq-chevron-up {
    display: block;
}

.faq-open .faq-chevron-down {
    display: none;
}

.faq-content {
    height: 0;
    margin: 0;
    padding: 0;
    font-size: 14px;
}

.faq-open .faq-content {
    height: auto;
    margin: 15px 35px 20px 0;
}

@media screen and (max-width: 767px) {
    .faq-container {
        padding: 0 0 26px;
    }

    .faq-single-container {
        margin: -1px 0;
        border-radius: 0;
        padding: 0 15px;
    }

    .faq-inner-container {
        border-radius: 4px;
    }

    .faq-inner-container .faq-first-col .faq-single-container {
        border-radius: 4px 4px 0 0;
    }

    .faq-inner-container .faq-last-col .faq-single-container {
        border-radius: 0 0 4px 4px;
    }

    .faq-chevron-down, .faq-chevron-up {
        right: 22px;
    }

    .faq-title-text {
        padding-right: 40px;
    }

    .keep-me-away-from-the-footer {
        padding-bottom: 10px;
    }

    .faq-open .faq-content {
        margin: 15px 0 15px;
    }
}

.title-with-button-container {
    text-align: center;
    position: relative;
    text-align: center;
    position: relative;
    min-height: 384px;
    padding-top: 45px;
    box-sizing: border-box;
}

@media screen and (max-width: 767px) {
    .title-with-button-container {
        padding-top: 86px;
    }
}

.title-with-button-container h2 {
    color: white;
    margin-bottom: 12px;
}

.title-with-button-container p {
    color: white;
    max-width: 480px;
    font-size: 16px;
    line-height: 1.25;
    margin: 0px auto 31px;
}

.title-with-button-container .big-outlined-button {
    max-width: 261px;
}

.big-dark-button, .big-outlined-button, .big-dark-green-button, .big-outlined-black-button, .big-inverted-button {
    height: 40px;
    width: 100%;
    /*max-width: 261px; */
    background-color: #ff2e63;
    border: 1px solid #ff2e63;
    font-size: 13px;
    font-weight: 300;
    letter-spacing: 1px;
    line-height: 37px;
    display: inline-block;
    color: white;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
    min-width: 180px;
    border-radius: 4px;
    padding: 0;
}


.big-dark-button:hover, .big-outlined-button:hover, .big-dark-green-button:hover, .big-outlined-black-button:hover {
    text-decoration: none;
    color: inherit;
    color: white;
}

.big-inverted-button {
    color: #ff2e63;
    background: white;
    border: 0;
    font-weight: 500;
    height: 18px;
    padding: 0;
    line-height: 1;
}

.big-dark-green-button {
    max-width: none;
    background-color: #00cfa5;
    border: solid 2px #00cfa5;
}

.big-outlined-button {
    border-radius: 4px;
    border: solid 2px #ffffff;
    background: transparent;
}

.big-outlined-black-button {
    border-radius: 4px;
    border: solid 2px #000;
    background: transparent;
    color: black;
}

.big-outlined-black-button:hover {
    color: black;
}

.label-green {
    height: 21px;
    border-radius: 3px;
    background-color: #00cfa5;
    font-size: 10px;
    font-weight: 300;
    letter-spacing: 1px;
    color: #ffffff;
    padding: 5px 8px;
    text-transform: uppercase;
    display: none;
}
.hidden-xs .label-green {
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .label-green.mobile-only {
    display: inline-block;
    height: 30px;
    font-size: 14px;
    position: absolute;
    bottom: 15px;
    left: 15px;
  }
}

.search-container {
    background: #ffffff;
    padding: 24px 24px 14px 24px;
    border-radius: 4px;
    box-shadow: 0 2px 60px 0 rgba(9, 6, 37, 0.41);
}

.search-container-checkboxes {
    margin-top: 15px;
}

.search-container-checkboxes-text {
    font-size: 12px;
    font-weight: 500;
    color: #848292;
    margin-top: 6px;
}

.experience-search-section-title {
    font-size: 14px;
    color: #090625;
}

.experience-search-row {
    margin: 10px 0;
}

.experience-search-checkbox {
    font-weight: 500;
    font-size: 12px;
    color: #6c6b78;
}

.experience-search-section {
    margin: 30px 0 15px;
}

@media screen and (max-width: 767px) {
    .search-container hr {
        margin: 10px -9px;
    }

    .col-search-sport {
        margin-bottom: 10px;
    }

    .col-search-button {
        margin-top: 15px;
    }

    .search-container-checkboxes {
        margin-top: 8px;
    }

    .experience-search-section {
        margin: 19px 0;
    }

    .experience-search-row {
        margin: 10px 0px;
    }
}

.keep-me-away-from-the-header {
    padding-top: 60px;
}

.keep-me-away-from-the-footer {
    padding-bottom: 60px;
}

@media screen and (max-width: 767px) {
    .keep-me-away-from-the-header {
        padding-top: 10px;
    }

    .keep-me-away-from-the-footer {
        padding-bottom: 10px;
    }
}

.background-grey {
    background-color: #f6f6f7;
    padding-top: 1px;
}

.experience-search-title {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.2;
    text-align: left;
    color: #090625;
    margin-bottom: 40px;
}

.experience-overview-horizontal {
    width: 100%;
    /* height: 482px; */
    position: relative;
    border-radius: 4px;
    background-color: #ffffff;
    overflow: hidden;
    display: block;
    float: left;
    margin-right: 25px;
}

@media screen and (min-width: 768px) {
    .experience-overview-horizontal {
        width: 272px;
    }
}

.experience-overview-horizontal:hover {
    text-decoration: none;
}

.experience-overview-horizontal-img {
    width: 100%;
    position: relative;
    overflow: hidden;
    height: 180px;
    border-radius: 4px 4px 0 0;
}

.experience-overview-vertical-fixed-price {
    text-align: right;
    margin-right: 12px;
    color: #090626;
    float: right;
    margin-top: -2px;
}

.experience-overview-vertical-fixed-price small {
    font-size: 12px;
    float: right;
    color: #6c6b78;
}

.experience-overview-vertical-fixed-price strong {
    font-size: 18px;
    float: right;
}

@media screen and (max-width: 767px) {
    .experience-search-title {
        font-size: 20px;
        margin-bottom: 20px;
        margin-top: 10px;
    }

    .experience-search-section-title {
        display: none;
    }

    .experience-search-results-container {
        /*width: 272px;*/
        margin: 0 auto;
    }

    .experience-search-results-container .experience-overview-horizontal {
        margin-bottom: 8px;
    }

    .experience-overview-horizontal {
        margin-right: 5px;
    }
}

.experience-overview-horizontal-content {
    border-left: solid 1px #e8e8eb;
    border-right: solid 1px #e8e8eb;
    border-bottom: solid 1px #e8e8eb;
    border-radius: 0 0 4px 4px;
    /* height: 302px; */
    box-sizing: border-box;
}

.experience-overview-horizontal-title {
    /*
      width: 420px;
      padding-right: 80px;
    */
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 0.2px;
    text-align: left;
    color: #090625;
    margin: 4px 0;
    max-height: 59px;
    overflow: hidden;
}

.experience-overview-horizontal-title-container {
    padding: 8px 16px 0 16px;
    margin-bottom: 8px;
    box-sizing: border-box;
    overflow: hidden;
}

.experience-overview-horizontal-corner {
    position: absolute;
    bottom: 15px;
    left: 15px;
    right: 15px;
}

.experience-overview-horizontal-location {
    font-size: 12px;
    color: #6c6b78;
}

.experience-overview-horizontal-location img {
    margin-right: 3px;
    vertical-align: middle;
    display: inline-block;
}


.experience-overview-horizontal-list {
    min-height: 117px;
}

.experience-overview-horizontal-list-item-container {
    min-height: 39px;
    position: relative;
}

.experience-overview-horizontal-list-item:first-child {
    border-top: 1px solid #e8e8eb;
}

.experience-overview-horizontal-list-item {
    border-bottom: 1px solid #e8e8eb;
    font-size: 11px;
    text-align: left;
    color: #6c6b78;
    padding: 10px 16px;
    position: relative;;
}

.experience-overview-horizontal-list-price {
    font-size: 18px;
    text-align: right;
}

.experience-overview-horizontal-list-price small {
    font-size: 12px;
    color: #6c6b78;
}

.horizontal-list-item-from {
    text-align: right;
    position: absolute;
    right: 17px;
    top: 3px;
}

.horizontal-list-item-duration {
    text-transform: uppercase;
    font-size: 9px;
    color: #6c6b78;
    margin-top: -2px;
    display: block;
}

.horizontal-list-item-price {
    font-size: 15px;
    font-weight: 600;
    color: #090625;
}


.experience-overview-horizontal-price {
    font-size: 24px;
    font-weight: 600;
    color: #090625;
    display: block;
    line-height: 21px
}

.experience-overview-horizontal-button-container {
    padding: 10px 17px;
}


.experience-location-container {
    font-size: 12px;
    color: #6c6b78;
}

.experience-location-container img, experience-location-container span {
    vertical-align: middle;
    display: inline-block;
}

.experience-location-container img {
    margin-right: 3px;
}

/*** VERTICAL ITEM **/

.sixteen-nine {
    position: relative;
}

.experience-overview-vertical-row {
    height: 100%;
    position: relative;
}

.experience-overview-vertical-image-col {
    padding-right: 0;
    padding-left: 15px;
}

@media screen and (max-width: 767px) {
  .experience-overview-vertical-image-col {
      padding-left: 0;
      margin-bottom: 15px;
  }
}


.experience-overview-vertical-img {
    min-height: 180px;
    height: 100%;
    width: 100%;
    position: relative;
    border-radius: 4px 4px 0 0;
    overflow: hidden;
    background-size: cover;
}

@media screen and (min-width: 767px) {
  .experience-overview-vertical-img {
      min-height: 255px;
      border-radius: 4px;
  }
}

.experience-overview-vertical-content-col {
    position: relative;
    min-height: 255px;
    padding-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .experience-overview-vertical-content-col {
    min-height: 0;
    padding-bottom: 0;
  }
}

.experience-overview-vertical {
    width: 100%;
    min-height: 255px;
    padding: 15px;
    border-radius: 4px;
    background-color: #ffffff;
    border: solid 1px #e8e8eb;
    overflow: hidden;
    margin-bottom: 9px;
    display: block;
    position: relative;
}

@media screen and (max-width: 767px) {
  .experience-overview-vertical {
    padding-top: 0;
  }
}

.experience-overview-vertical-title {
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 0.2px;
    text-align: left;
    color: #090625;
    padding-right: 115px;
    margin: 4px 0;
    min-height: 3.5rem;
    margin-bottom: 1rem;
}


@media screen and (max-width: 768px) {
  .experience-overview-vertical-title {
    padding-right: 0px;
    margin-bottom: 0;
  }
}

.experience-overview-vertical-location {
    padding-right: 75px;
}

.experience-overview-vertical-corner .label-green {
    margin-top: 3px;
}
.experience-overview-vertical-corner .tripadvisor-small {
  margin-top: 3px;
  float: right;
}
.experience-overview-vertical-corner .tripadvisor-small .tripadvisor-dots{
  margin-right: 0;
  padding-left: 0;
}
.experience-overview-vertical-corner .tripadvisor-small .tripadvisor-logo{
  margin-right: 0;
}

.experience-overview-vertical-corner {
    position: absolute;
    top: 0;
    right: 0;
    right: 15px;
    text-align: right;
}

.experience-overview-vertical-location {
    font-size: 12px;
    color: #6c6b78;
}

.experience-overview-vertical-location > img {
    height: 15px;
    margin-right: 5px;
}

.experience-overview-vertical-list {
    margin-bottom: 24px;
    float: left;
    width: 100%;
}

.experience-overview-vertical-list-item-container {
    min-height: 39px;
}

/* .experience-overview-vertical-list-item:first-child {
    border-top: 1px solid #e8e8eb;
} */

.experience-overview-vertical-list-item {
    border-bottom: 1px solid #e8e8eb;
    font-size: 12px;
    text-align: left;
    color: #6c6b78;
    padding: 10px 0;
    padding: 10px 15px;
    float: left;
    width: 100%;
}

@media screen and (min-width: 768px) {
  .experience-overview-vertical-cta {
    position: absolute;
    bottom: 0;
    width: 100%;
  }
}

.experience-overview-vertical .big-dark-button {
    max-width: 100%;
    font-size: 13px;
    line-height: 38px;
}

.bordered-box {
    border: 1px solid #4E4C62;
    padding: 10px;
}

@media screen and (max-width: 768px) {
    .experience-overview-vertical .big-dark-button {
        margin-top: 1.5rem;
    }
}

.cart-table {
    width: 100%;
}

.booking-box {
    max-width: 600px;
    margin: 49px auto;
}

.booking-box-header {
    position: relative;
    margin: -17px;
    margin-top: -38px;
    margin-bottom: 24px;
}

.booking-box .horizontal-seperator {
    width: 1px;
    height: 49px;
    float: left;
    margin-left: -1px;
    background-color: #e8e8eb;
}

.booking-info-header {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.6;
    text-align: left;
    color: #6c6b78;
}

.booking-info-row {
    margin-top: 24px;
    margin-bottom: 24px;
}

.booking-box-title {
    text-align: center;
    padding: 59px 0;
    font-size: 32px;
    font-weight: 500;
    line-height: 1.5;
    color: #ffffff;
    z-index: 1;
    position: relative;
}

.booking-info-title {
    font-size: 16px;
    font-weight: 500;
    color: #090625;
    margin: 10px 0 5px;
}

.booking-info-price-container {
    width: 100%;
    float: right;
    text-align: right;
    margin: 20px 0 0;
    clear: both;
}

.booking-info-price-container .row {
    margin: 10px -15px;
}

.booking-info-total-price-row .col-xs-6 {
    height: 30px;
    position: relative;
    line-height: 30px;
    color: #090625;
}

.booking-info-total-price, .booking-info-total-price-label {
    position: absolute;
    bottom: 0;
    right: 15px;
    line-height: 30px;
    margin: 0;
    color: #090625;
}

.booking-magazine-button {
    max-width: 233px;
    margin: 0 auto;
    display: block;
}

@media screen and (max-width: 767px) {
    .booking-info-price-container {
        width: 100%;
    }

    .booking-info-row .col-xs-6:last-child {
        margin-top: 5px;
    }

    .booking-info-price-container .booking-info-price-label {
        text-align: left;
        display: block;
    }

    .booking-info-price-container .booking-info-total-price-label {
        right: auto;
        left: 15px;
    }
}


.booking-steps-container {
    margin: 50px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.booking-steps-menu-container a {
    padding: 10px;
    color: #4E4C62;
}

.booking-step-count {
    width: 24px;
    height: 24px;
    background-color: #848292;
    display: inline-block;
    line-height: 24px;
    color: white;
    border-radius: 50%;
    font-size: 11px;
    margin: -3px 4px;
    text-align: center;
    vertical-align: bottom;
}

.booking-step-active .booking-step-count {
    background-color: #00cfa5;
}

.booking-step-passed .booking-step-count {
    background: transparent;
    border: 2px solid #00cfa5;
    position: relative;
}

.booking-step-passed .booking-step-count {
    background: #00cfa5;
}

.booking-step-passed .booking-step-count img {
    position: absolute;
    top: -6px;
    left: -6px;
}

.booking-step-menu-item {
    font-size: 12px;
    font-weight: 500;
}

.booking-step-active {
    color: #090625;
}

.booking-step-divider {
    display: inline-block;
    height: 1px;
    width: 70px;
    margin: 3px 19px;
    background-color: #b5b4bd;
}

@media screen and (max-width: 767px) {
    .booking-step-divider {
        width: 30px;
        margin: 3px 9px;
    }
}


.map-container {
    position: relative;
}

#map {
    width: 100%;
    min-height: 600px;
}

.map-filters {
    height: 50px;
    border: 1px solid #e8e8eb;
    border-radius: 0 0 4px 4px;
}

.map-filters select, .map-filters .select2-container--default .select2-selection--single {
    border-radius: 0;
    height: 48px;
    display: inline-block;
    border: none;
    padding: 12px 3px;
    width: 100%;
}

.map-filters .select2-container--default {
    border-right: 1px solid #e8e8eb;
}

.map-filters .select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 0;
}

.map-filters label {
    font-size: 11px;
    display: inline-block;
    padding: 16px 1px 16px 14px;
    border-left: 1px solid #e8e8eb;
    margin: 0px 0 0px;
    height: 49px;
    color: #6c6b78;
}

@media only screen and (max-width: 991px) {
    #map {
        min-height: 510px
    }
}


@media only screen and (min-width: 768px) and (max-width: 991px) {
    .map-filters .padding-none {
        padding-right: 15px !important;
        padding-left: 15px !important;
    }

    .map-filters label {
        font-size: 10px;
        padding: 16px 0px 16px 6px;
    }

    .map-filters label {
        border-left: 0;
    }
}


.map-filters .search-container-checkboxes-text {
    text-align: right;
    margin-top: 17px;
    margin-right: 18px;
}

.map-filters .row > div {
}

.map-close-info-item {
    position: absolute;
    top: 19px;
    right: 11px;
    width: 26px;
    height: 26px;
    background: black;
    color: white;
    border-radius: 50%;
    border: 0;
    z-index: 1000;
    padding: 0;

}

.map-close-info-item img {
    width: 24px;
}

.map-info-container {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 100000;
}

.map-info-container .experience-overview-horizontal {
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.23);
}

.overlay-map {
    border: solid 1px #e8e8eb;
    display: block;
    border-radius: 3px;
    margin-bottom: 20px;
}

.overlay-map.open {
    margin-bottom: 0;
}

.overlay-map #map {
    min-height: 151px;
}

.overlay-map--closed {
    border: none;
    /* border-radius: 3px; */
    margin-bottom: 0;
}

.overlay-map--closed #map {
    min-height: 0;
    height: 0;
}

.description-text--green, .description-text--green:hover {
    font-size: 12px;
    line-height: 1.5;
    font-weight: 500;
    text-align: center;
    color: #00cfa5;
    margin: 10px 0;
    text-decoration: none;
}

.description-text--green img {
    margin-right: 5px;
}

.overlay-map .map-filters {
    display: none;
}

.overlay-map.open .map-filters {
    display: none;
}

.overlay-map .map-info-container {
    display: none;
}

.overlay-map.open .map-info-container {
    display: block;
    top: 57px;
    left: 17px;
}

.overlay-map.open {
    position: fixed;
    right: 27px;
    left: 27px;
    top: 27px;
    bottom: 27px;
    width: auto;
    height: auto;
    z-index: 10000;
}

.close-overlay-map, .close-overlay-map:hover, .close-overlay-map:active {
    display: none;
    position: absolute;
    top: 27px;
    right: 27px;
    width: 40px;
    height: 40px;
    box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.29);
    font-size: 26px;
    z-index: 1000;
    border: 0;
    background: white;
    border-radius: 4px;
    font-family: arial;
    font-weight: 300;
    line-height: 40px;
    text-align: center;
    color: #6c6b78;
    text-decoration: none;
}

.overlay-map.open .close-overlay-map {
    display: block;
}

.overlay-map.open #map, .overlay-map.open .map-container {
    height: 100%;
    min-height: 100%;
    z-index: 1000;
}

.overlay-map.open #map {
    border-radius: 4px;
    border: 8px solid white;
}

.overlay-map.open .overlay-bg {
    background-color: rgba(9, 6, 37, 0.6);
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 100;
    top: 0;
    left: 0;
    z-index: 100;
}

.overlay-map.open .description-text--green {
    display: none;
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    /* 16:9 */
    padding-top: 25px;
    height: 0;
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/*** fotorama ***/

.fotorama-wrapper {
    overflow: hidden;
    position: relative;
    width: 100%;
    max-height: 450px;
    background-image: linear-gradient(54deg, #5d39c8, #00cfa5);
}

.fotorama-wrapper img {
    opacity: 0;
}

.fotorama__nav-wrap {
    position: absolute;
    bottom: 15px;
    left: 0;
    height: 31px;
}

.fotorama__arr {
    width: 48px;
    height: 48px;
    border-radius: 4px;
    background-color: rgba(9, 6, 37, 0.5);
    margin-top: -23px;
}


.fotorama__nav--dots .fotorama__nav__frame {
    width: 25px;
    height: 30px;
}

.fotorama-wrapper .fotorama__arr--next {
    background-image: url(../assets/chev-right.svg);
    background-repeat: no-repeat;
    background-position: 12px 17px;
    background-size: 30px 15px;
}

.fotorama-wrapper .fotorama__arr--prev {
    background-repeat: no-repeat;
    background-position: 8px 17px;
    background-size: 30px 15px;
    background-image: url(../assets/chev-left.svg);
}

.fotorama__arr--prev {
    background-position: 9px 8px;
}

.fotorama__arr--next {
    background-position: -23px 9px;
}

.fotorama__nav__frame .fotorama__dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.5);
    border: none;
}

.fotorama__nav__frame.fotorama__active .fotorama__dot {
    background-color: rgba(255, 255, 255, 1);
    width: 10px;
    height: 10px;
}

.fotorama--fullscreen .fotorama__nav, .fotorama--fullscreen .fotorama__stage {
    background: none;
}

@media screen and (max-width: 767px) {
    .fotorama__nav-wrap {
        display: none;
    }

    .fotorama__arr--prev {
        left: -2px;
    }

    .fotorama__arr--next {
        right: -2px;
    }
}


/*** DETAIL PAGE ***/

.experience-detail-page {
    padding-top: 25px;
}

.experience-detail-title {
    font-size: 30px;
    font-weight: 500;
    line-height: 1.2;
    color: #090625;
}

.experience-detail-location {
    font-size: 12px;
    color: #6c6b78;
    margin: 10px 0;
}

/* .experience-detail-intro {
    font-size: 15px;
    font-weight: 300;
    line-height: 1.4;
    color: #090626;
    margin: 15px 0 30px;
} */

.experience-detail-intro {
  margin-bottom: 15px;
}

.experience-detail-spoken-languages {
    font-size: 16px;
    font-weight: 300;
    line-height: 1.5;
    margin: 27px 0;
    letter-spacing: 0.2px;
    text-align: left;
    color: #6c6b78;
}

.experience-product-title {
    font-size: 26px;
    font-weight: 500;
    line-height: 1.2;
    color: #090625;
    margin: 10px 0 0;
}

.experience-section-type-title {
    font-size: 18px;
    font-weight: 500;
    color: #090625;
    margin-top: 50px;
}

.experience-product-pricing-label {
    font-size: 12px;
    color: #6c6b78;
    font-weight: 300;
}

.experience-product-box .outlined-label {
    margin: 0 10px;
}


.experience-product-box .border-bottom {
  border-bottom: 1px solid #e8e8eb;
  margin: 0px -17px 20px;
  padding: 0 17px 2px 17px;
}

.experience-product-pricing-value {
    font-size: 20px;
    text-align: left;
    color: #6c6b78;
    margin-top: 5px;
    font-weight: 500;

}

.experience-product-pricing-info .select2-selection__rendered {
    font-size: 14px;
}

.experience-product-room-info {
    border-bottom: 1px solid #e8e8eb;
    border-top: 1px solid #e8e8eb;
    margin: -21px -15px -16px -15px;
    padding: 15px;
    cursor: pointer;
}

.experience-product-room-info h4,
.experience-product-room-info h4:hover {
    line-height: 1.43;
    color: #090625;
    font-size: 14px;
    font-weight: 500;
}

.experience-product-room-info img {
    margin-top: -5px;
}

.experience-product-items-container .items-with-title {
    margin: 22px 0;
}

@media screen and (max-width: 767px) {
    .experience-detail-title {
        font-size: 22px;
    }

    .experience-detail-intro {
        font-size: 16px;
        margin: 15px 0;
    }

    .experience-detail-spoken-languages {
        font-size: 14px;
    }

    .experience-product-title {
        font-size: 18px;
    }

    .experience-product-description {
        font-size: 15px !important;
    }
}

.accommodation-info-row {
    font-size: 16px;
}

#sticky-booking-container {
    top: 10px;
    z-index: 10;
}

.booking-form-container {
    position: relative;
}

.booking-form-disclaimer {
    font-size: 12px;
    line-height: 1.5;
    text-align: right;
    color: #848292;
}

.booking-form-container .big-dark-button {
    max-width: none;
}

.booking-form-disclaimer {
    font-size: 12px;
    line-height: 1.5;
    text-align: center;
    color: #848292;
    margin: 10px 0 0;
}

.booking-form-title {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.33;
    color: #090625;
    margin: 7px 0 18px;
}


.booking-cart-row {
    padding: 17px;
    margin: 0 -17px;
    border-bottom: 1px solid #e8e8eb;
    color: #6c6b78;
    font-size: 12px;
}

.booking-cart-row:first-child {
    border-top: 1px solid #e8e8eb;
}

.booking-cart-remove {
    width: 20px;
    height: 20px;
    border: 2px solid #848292;
    line-height: 17px;
    font-size: 8px;
    text-align: center;
    border-radius: 50%;
    font-weight: 800;
    color: #848292;
}

.booking-cart-price-container {
    margin: 5px 0 4px;
}

.booking-form-date-container {
    margin-top: 12px;
    margin-bottom: 24px;
}

.booking-cart-info {
    font-size: 14px;
    color: #6c6b78;
    margin-top: 5px;
}

.booking-cart-price {
    font-size: 18px;
    font-weight: 500;
    color: #6c6b78;
}

.booking-create-form label {
    margin-top: 20px;
}

.booking-create-form .first-col label, .booking-create-form .second-col label {
    margin-top: 0;
}

.booking-create-form input, .booking-create-form select, .booking-create-form textarea {
    width: 100%;
    max-width: none;
}

.booking-create-form-disclaimer {
    font-size: 12px;
    line-height: 1.5;
    text-align: right;
    color: #848292;
}

.booking-create-form-submit-row {
    margin-top: 20px;
}

@media screen and (max-width: 767px) {
    .booking-create-form .second-col label {
        margin-top: 20px;
    }

    #sticky-booking-container, .booking-confirm-fixed {
        bottom: -20px;
        top: auto;
        left: 15px;
        right: 15px;
        position: fixed;
        height: 74px;
        -webkit-transition: all 120ms ease-in;
        -moz-transition: all 120ms ease-in;
        -ms-transition: all 120ms ease-in;
        -o-transition: all 120ms ease-in;
        transition: all 120ms ease-in;
        z-index: 1;
        transition: all 120ms ease-in;
    }

    .booking-confirm-fixed {
        box-shadow: 0 -2px 4px 0 rgba(0, 0, 0, 0.2);
        bottom: 0;
        padding: 17px;
        height: 48px;
        border-radius: 4px 4px 0 0;
        overflow: hidden;
        bottom: 62px;
        /* height: auto; */
        z-index: 111;
    }

    .booking-cart-price {
        margin-right: 10px;
    }

    #sticky-booking-container.open {
        height: auto;
    }

    .booking-form-title {
        font-size: 18px;
        margin: 0px 0 12px;
    }

    .booking-form-header .booking-cart-price {
        font-size: 18px;
        color: #090625;
    }

    .down-icon {
        display: none;
    }

    .up-icon {
        transition: all 120ms ease-in;
    }

    .open .up-icon {
        transform: rotate(180deg);
    }

    .booking-create-form-disclaimer {
        margin: 10px 0;
        text-align: center;
    }
}

.experience-product-pricing-info {
    border-bottom: 1px solid #e8e8eb;
    margin: 15px -17px 20px;
    padding: 0 17px 17px 17px;
}
.experience-product-pricing-info.border-top {
  border-top: 1px solid #e8e8eb;
  padding-top: 17px;
}

.experience-detail-intro,
.experience-detail-intro p,
.experience-product-description p,
.experience-product-description {
    font-size: 15px;
    font-weight: 300;
    line-height: 1.5;
    color: #6c6b78;
}

.experience-product-description ul li p {
  margin: 0;
}

.add-to-cart-form {
    float: right;
}

.add-to-cart-select {
    width: 60px;
    display: inline-block;
}

.add-to-cart-button {
    font-size: 14px;
    width: auto;
    display: inline-block;
}

.booking-form-container .gradient-line {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.footer-inner {
    padding-top: 40px;
    padding-bottom: 40px;
}

.footer-inner a {
    text-decoration: none;
}

.footer .row img {
    max-width: 100%;
}

.footer-address {
    font-size: 12px;
    margin: 20px 0 0;
    color: #848292;
}

.footer .footer-logo {
    max-width: 180px;
}

.footer-header {
    font-weight: 500;
    color: #090625;
    margin-top: 0;
    font-size: 14px;
    margin-bottom: 15px;

}

.footer-link, .footer-link:active, .footer-link:hover {
    color: #848292;
    text-decoration: none;
    margin-bottom: 10px;
    font-size: 15px;
    display: block;

}

.footer-link:hover {
    text-decoration: underline;
}

.footer a:hover {
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .footer-header {
        margin: 30px 0 13px;
    }

    .footer-inner {
        padding-bottom: 10px;
    }
}

.items-with-title h5 {
    margin-bottom: 2px;
    font-size: 16px;
    font-weight: 500;
    color: #6c6b78;
}

.items-with-title p {
    font-size: 15px;
    color: #6c6b78;
}

.payment-policy p {
    font-size: 15px;
}

.experience-product-upper-title {
    font-weight: 500;
    text-align: left;
    color: #6c6b78;
    font-size: 12px;
}

.outlined-label {
    border-radius: 3px;
    border: solid 1px #090625;
    font-size: 10px;
    font-weight: 500;
    color: #090625;
    padding: 3px 6px;
    text-transform: uppercase;
}

.starrr {
    display: inline-block;
    vertical-align: middle;
}

.experience-info-container .starrr {
    margin: 0 5px;
}

.glyphicon-star {
    color: #ffcb3d;
    margin: 0 -1px;
}

.glyphicon-star-empty {
    display: none;
}

.date-period-row > div:first-child {
    padding-right: 0;
}

.date-period-row > div:last-child {
    padding-left: 0;
}

.date-period-row > div:first-child input {
    border-right: 0;
    border-radius: 4px 0 0 4px;
}

.date-period-row > div:last-child input {
    border-radius: 0 4px 4px 0;
}

.date-period-row .col-xs-6 {
    position: relative;
}

.date-period-row--arrival-only .date-period-row__input {
    padding-right: 0 !important;
}

.date-period-row--arrival-only {
    padding-right: 15px !important;
}

.date-period-row--arrival-only input {
    border-radius: 4px !important;
    border: 1px solid #b5b4bd !important;
}

.date-period-row .date-period-row__input::after,
.date-period-row .col-xs-6::after {
    position: absolute;
    content: ' ';
    height: 32px;
    width: 32px;
    top: 32px;
    right: 6px;
    background-image: url('../assets/cal.svg');
    pointer-events: none;
}

.date-period-row--no-labels .col-xs-6::after {
    top: 4px;
}


.date-period-row .col-xs-6:last-child::after {
    right: 21px;
}

@media screen and (max-width: 1200px) {
    .date-period-row .col-xs-6::after {
        right: 0;
    }

    .date-period-row .col-xs-6:last-child::after {
        right: 15px;
    }
}

.collapse-small .collapse-inner {
    height: 51px;
}

.collapse-inner,
.collapse-inner-complete {
    position: relative;
    top: 15px;
}

.collapse-inner {
    height: 160px;
    overflow: hidden;
    display: block;
    margin-bottom: 10px;
}

.collapse-inner-complete {
    height: 0;
    overflow: hidden;
}

.collapse-container .icon {
    float: right;
    transition: transform .2s ease-out;
}

.collapse-open .icon {
    transform: rotate(180deg);
}

.collapse-open .collapse-inner,
.collapse-open .collapse-inner-complete {
    height: auto;
    padding-top: 15px;
}

.morecontent span {
    display: none;
}

.morelink {
    display: block;
}

.affix {
    position: fixed !important;
    z-index: 10000;
}

.affix .border-box {
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.2);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.collapse-link-pink, .collapse-link-pink:hover {
    font-size: 12px;
    font-weight: 500;
    color: #ff2e63;
}

.static-page > .container {
    max-width: 765px;
    margin: 0 auto;
}

.static-page-title {
    margin-bottom: 20px;
}

.static-page p {
    margin: 25px 0 15px;
}

.common-shares {
    border-top: solid 1px #b5b4bd;
    border-bottom: solid 1px #b5b4bd;
    padding: 14px;
    text-align: center;
}

.common-shares-link-container {
    text-align: right;
}

.common-shares-link-container img {
    margin: -10px 0;
}

.common-shares-link-container a, .common-shares-link-container a:hover {
    text-decoration: none;
}


@media screen and (max-width: 767px) {
    .common-shares {
        padding: 14px 2px;
        text-align: left;
    }
}

.why-book-at-rushkult {
    margin: 15px 0;
    padding: 0px 13px;
}

.why-book-at-rushkult h4 {
    color: #090625;
    margin: 10px 0 15px;
}

.why-book-row {
    font-size: 14px;
    color: #848292;
    position: relative;
    margin: 13px 0;
    padding-left: 33px;
}

.why-book-row img {
    position: absolute;
    top: 1px;
    left: 0;
    width: 20px;
}

@media screen and (max-width: 767px) {

}

.similar-experiences {
    border-top: solid 1px #b5b4bd;
    border-bottom: solid 1px #b5b4bd;
    padding: 14px;
    text-align: center;
    font-size: 14px;
    color: #848292;
    font-weight: 500;
}

.similar-experiences-button {
    width: 238px;
    height: 40px;
    border-radius: 4px;
    background-color: #6c6b78;
    line-height: 40px;
    font-size: 14px;
    color: white;
    display: block;
    margin: 15px auto 5px;
    font-weight: 300;
    text-align: left;
    padding-left: 10px;
}

.similar-experiences-button:hover,
.similar-experiences-button:active,
.similar-experiences-button:focus {
    color: white;
    text-decoration: none;
}

label.error {
    color: red;
}

.layout-centered-container #center {
    max-width: 372px;
}

.layout-centered-container .logo-container {
    text-align: center;
    width: 100%;
    display: block;
    margin: 50px 0;
}

.auth-box {
    border-radius: 4px;
    background-color: #ffffff;
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.12);
    border: solid 1px #e8e8eb;
}

.auth-box .checkbox label {
    padding-left: 0;
}

.link-pink {
    font-size: 12px;
    text-align: left;
    color: #ff2e63;
}

.forgot-password-link {
    float: right;
    margin-top: 10px;
}

.auth-box .big-outlined-black-button {
    min-width: 0;
}

.auth-box-footer {
    padding-top: 25px;
}

.auth-box-footer-description {
    font-size: 14px;
    padding-top: 8px;
}

.flash-message {
    position: fixed;
    bottom: 10px;
    width: 100%;
    max-width: 400px;
    right: 10px;
    left: 10px;
    z-index: 100000;
    margin: 0;
}

.flash-message .alert {
    margin: 0;
    font-size: 14px;
}

@media screen and (max-width: 767px) {

    .flash-message {
        bottom: auto;
        top: 10px;
    }

    .flash-message .alert {
        font-size: 12px;
        width: 95%;
        box-sizing: border-box;
        padding: 10px;
        margin: 0;
    }

}

.about-us-page {
    text-align: center;
}

.about-us-page p {
    margin: 25px 0 15px;
}

.about-us-page .section-title {
    margin: 50px 0 40px;
    font-size: 40px;
    font-weight: 500;
    color: #090625;
}

.about-us-page .text-wrapper {
    max-width: 765px;
    margin: 0 auto;
}

.about-us-page .row img {
    max-width: 100%;
    border-radius: 4px;
}

.about-us-images-section {
    max-width: 1000px;
    margin: 0 auto;
}

.about-us-images-section h4 {
    margin: 12px 0 3px;
}


.top_menu {
    background-color: #fff;
    width: 100%;
    padding: 20px 0 15px;
    box-shadow: 0 1px 30px rgba(0, 0, 0, 0.1);
}

.top_menu .buttons {
    margin: 3px 0 0 20px;
    position: absolute;
}

.top_menu .buttons .button {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    display: inline-block;
    margin-right: 10px;
    position: relative;
}

.top_menu .buttons .button.close {
    background-color: #f5886e;
}

.top_menu .buttons .button.minimize {
    background-color: #fdbf68;
}

.top_menu .buttons .button.maximize {
    background-color: #a3d063;
}

.top_menu .title {
    text-align: center;
    color: #bcbdc0;
    font-size: 20px;
}

.messages {
    position: relative;
    list-style: none;
    padding: 20px 10px 0 10px;
    margin: 0;
    height: 100%;
    padding-bottom: 69px;
    overflow-y: scroll;
    overflow-x: hidden;
    background-color: white;
    box-sizing: border-box;
}

.messages .message {
    clear: both;
    overflow: hidden;
    margin-bottom: 20px;
    transition: all 0.5s linear;
    position: relative;
}

.messages .message.left .text_wrapper {
    background-color: #f6f6f7;
    margin-left: 20px;

}

.messages .message.left .text_wrapper::after, .messages .message.left .text_wrapper::before {
    left: -21px;
    border-right-color: #f6f6f7;
}

.messages .message.rushkult .text_wrapper {
    margin-left: 55px;
    width: calc(80% - 35px);
}

.messages .message.rushkult::before {
    position: absolute;
    bottom: 0px;
    left: 0px;
    content: '';
    background-image: url('../assets/svg/rushkult_logo.svg');
    width: 40px;
    height: 40px;
    background-size: 100%;
}


.messages .message.right .text_wrapper {
    background-color: #f4f4fb;
    margin-right: 20px;
    float: right;
}

.messages .message.right .text_wrapper::after, .messages .message.right .text_wrapper::before {
    right: -21px;
    border-left-color: #f4f4fb;
}

.messages .message.appeared {
    opacity: 1;
}

.messages .message .text_wrapper {
    display: inline-block;
    padding: 5px 20px;
    border-radius: 6px;
    width: 80%;
    min-width: 100px;
    position: relative;
    max-width: 440px;
    width: 80%;
}

.messages .message .text_wrapper::after, .messages .message .text_wrapper:before {
    bottom: 12px;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}

.messages .message .text_wrapper::after {
    border-width: 13px;
    margin-top: 0px;
}

.messages .message .text_wrapper::before {
    border-width: 15px;
    margin-top: -2px;
}

.messages .message .text_wrapper .text {
    font-size: 12px;
    line-height: 1.33;
    color: #090625;
}

.messages .message .text_wrapper .text * {
    font-size: inherit;
}

.chat_window {
    max-width: 100%;
    height: 700px;
    border-radius: 3px;
    background-color: #fff;
    /* box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15); */
    background-color: #FFF;
    overflow: hidden;
    position: relative;
}

.chat-message-cancel {
    width: 357px;
    margin: 20px auto;
    height: 123px;
    border-radius: 3px;
    border: solid 1px #b5b4bd;
    padding: 28px 25px;
}

.chat-message-confirmed {
    width: 357px;
    margin: 20px auto;
    height: 160px;
    border-radius: 3px;
    border: solid 1px #b5b4bd;
    padding: 16px 19px;
}

.chat-message-confirmed-title, .chat-message-cancel-title {
    font-size: 24px;
    font-weight: 500;
    color: #090625;
}

.chat-message-confirmed-message, .chat-message-cancel-message {
    font-size: 12px;
    color: #6c6b78;
}

.chat-message-confirmed-icon, .chat-message-cancel-icon {
    text-align: center;
}

.chat-author, .chat-time {
    height: 18px;
    opacity: 0.9;
    font-family: Montserrat;
    font-size: 12px;
    line-height: 1.5;
    text-align: left;
    color: #6c6b78;
    margin: 7px 0;
}

.chat-time {
    text-align: right;
}

.bottom_wrapper {
    position: relative;
    width: 100%;
    background-color: #b5b4bd;;
    padding: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    border: 8px solid #b5b4bd;
    height: 64px;
}

.bottom_wrapper .message_input_wrapper {
    height: 100%;
    box-sizing: border-box;
    position: absolute;
    outline-width: 0;
    top: 0;
    left: 0;
    right: 0;
    border-radius: 4px;
    overflow: hidden;
}

.bottom_wrapper .message_input_wrapper .message_input {
    border: none;
    min-height: 48px;
    line-height: 1.2;
    font-size: 14px;
    color: #090625;
    font-weight: 300;
    padding-left: 20px;
    padding-top: 16px;
    padding-right: 76px;
}

.bottom_wrapper .send_message {
    background: none;
    border: none;
    color: #fff;
    cursor: pointer;
    transition: all 0.2s linear;
    text-align: center;
    float: right;
    width: 62px;
    height: 27px;
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 500;
    text-align: left;
    color: #00cfa5;
    position: absolute;
    top: 6px;
    right: 10px;
    text-transform: uppercase;
    text-align: right;
}

.bottom_wrapper .send_message:hover {
    color: #00cfa5;
}

.message_template {
    display: none;
}

.question-mark {
    background: #4e4c62;
    border-radius: 50%;
    height: 15px;
    width: 15px;
    text-align: center;
    color: white;
    display: inline-block;
    font-size: 10px;
    line-height: 15px;
}


@media screen and (max-width: 767px) {
    .chat_window {
        position: relative;
        z-index: 1;
        padding: 17px;
        padding-top: 38px;
        left: 0;
        right: 0;
        bottom: 0px;
        height: auto;
        width: 100%;
    }

    .messages {
        padding: 20px 0 115px 0;
    }

    .chat-message-confirmed, .chat-message-cancel {
        width: auto;
        margin: 19px;
        height: auto;
        padding: 19px;

    }

    .chat-message-confirmed-title, .chat-message-cancel-title {
        font-size: 17px;
    }

    .chat-message-confirmed-message, .chat-message-cancel-message {
        font-size: 10px;
    }

    .chat-message-confirmed-icon img, .chat-message-cancel-icon img {
        width: 47px;
    }

    .bottom_wrapper {
        position: fixed;
    }
}

/**
 * This theme is an example to show how you can create your own.
 */
.is-00cfa5 .pika-button {
    color: #33aaff;
}

.is-selected .pika-button {
    color: #fff;
    background: #33aaff;
    box-shadow: inset 0 1px 3px #00cfa5;
}


.dark-theme .pika-button:hover {
    color: #fff !important;
    background: #ff2e63 !important;
}

/* different techniques for iPad screening */
@media only screen and (min-width: 768px) and (max-width: 993px) {
    .container {
        width: auto;
    }

    .date-period-row .col-xs-6::after {
        display: none;
    }
}

.chat-booking-form-container {
    font-size: 12px;
}

.chat-booking-form-container hr {
    margin-top: 17px;
    margin-bottom: 17px;
}

.page-booking-confirm {
    position: relative;
    z-index: 2;
}

.page-booking-confirm .privacy-policy {
    color: #ffffff;
    margin: 0 0 20px;
    display: inline-block;
    text-decoration: underline;
}

.page-booking-confirm .chat-booking-form-container {
    position: relative;
    margin: 11px;
    box-shadow: 0 -2px 4px 0 rgba(0, 0, 0, 0.2);
    z-index: 2;
}

.page-booking-confirm .border-box {
    border: 0;
}

@media screen and (max-width: 767px) {
    form .booking-offer-header, .booking-confirm-fixed .booking-offer-header {
        height: 46px;
        background-image: linear-gradient(81deg, #5d39c8, #1de7b4);
        color: white;
        margin: -17px -18px 18px -19px;
        padding: 13px 17px;
    }

    #sticky-booking-container .booking-offer-header {
        height: 53px;
        padding: 17px 15px;
    }

    form .booking-offer-header .booking-form-title,
    .booking-confirm-fixed .booking-form-title,
    .booking-offer-header .booking-cart-price {
        color: white;
    }
}

.small-section-header {
    font-size: 11px;
    font-weight: 500;
    margin: 15px 0;
}

.booking-detail-box {
    float: left;
}

.edit-booking-form-select {
    width: 50px;
}

.booking-edit-row {
    position: relative;
    margin: 8px -15px;
}

.edit-booking-total-price-container {
    text-align: right;;
}

.edit-booking-total-price {
    font-size: 26px;
    font-weight: 500;
}

.edit-booking-total-price-amount {
    width: 179px;
    height: 40px;
    border-radius: 3px;
    border: solid 1px #979797;
    text-align: right;
    display: inline-block;
    font-size: 26px;
    font-weight: 500;
    color: #090625;
    padding-right: 6px;
}

.small-section-header {

}

.currency-selector {
    width: 114px;
}

@media screen and (max-width: 767px) {
    .header .currency-selector-form {
        position: absolute;
        top: 8px;
        right: 15px;
    }

    .header .currency-selector {
        width: 66px;
    }

    .header .currency-selector-form .select2-container--default .select2-selection--single .select2-selection__rendered {
        font-size: 12px;
        padding-left: 0;
        line-height: 24px;
    }

    .header .currency-selector-form .select2-container--default .select2-selection--single .select2-selection__arrow b {
        margin-left: 2px;
        margin-top: -4px;
        background-size: 80%;
    }

    .header .currency-selector-form .select2-container--default .select2-selection--single {
        height: 35px;
    }

}

.chat-booking-form-container {

}

.partner-chat-detail-box {
    float: left;
    position: relative;
    padding: 4px 15px;
}

.partner-chat-detail-box:first-child {
    padding-left: 0;
}

.partner-chat-detail-box::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 1px;
    background: #d8d8d8;
}

.partner-period-col {
    position: relative;
    padding: 0 !important;
}

.partner-period-col .partner-period-remove {
    position: absolute;
    top: 5px;
    right: 0;
}

.discount-input-amount {
    max-width: 155px;
    margin: 0 4px 0 0;
}

.discount-row .select2-container .select2-selection--single .select2-selection__rendered {
    font-size: 32px;
    margin-left: -2px;
}

.center {
    text-align: center;
}

.link--black {
    color: black;
    text-decoration: underline;
}
.tripadvisor-box {
  padding-left: 12px;
}
.tripadvisor-review {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tripadvisor-logo {
    display: inline-block;
    margin-right: 2px;
    margin-top: -2px;
    width: 27px !important;
}

.tripadvisor-dots, .tripadvisor-label {
    display: inline-block;
    margin-right: 5px;
}

.tripadvisor-dots {
    margin-right: 2px;
    padding: 0px 5px 2px 4px;
}

.tripadvisor-label {
    background: #00a67f;
    color: white;
    padding: 2px 10px;
    height: 24px;
    display: inline-block;
    border-radius: 5px;
    font-weight: bold;
}

.tripadvisor-heading {
    font-weight: bold;
    color: #00a67f;
}

.tripadvisor-full-star, .tripadvisor-half-star {
    width: 16px;
    display: inline-block;
    margin: 0px -4px 0 -1px;
}

.tripadvisor-full-star img, .tripadvisor-half-star img {
    margin-top: -2px;
}

.tripadvisor-half-star img {

}

.tripadvisor img {
    max-width: none;
}

.page-booking-confirm {

}

.staging-warning {
    margin-top: 10px;
    padding: 10px;
    position: fixed;
    z-index: 9999;
    bottom: 0;
    left: 0;
    font-size: 20px;
    background-color: red;
    color: white;
    text-transform: uppercase;
}

.accommodation-info {
    position: relative;
    margin: 0 -15px;
    padding: 0 15px 15px;
    border-bottom: 1px solid #e8e8eb;
}

.accommodation-info__image {
    width: 100%;
    height: 200px;
    position: relative;
    /* background-image: linear-gradient(54deg, #5d39c8, #00cfa5); */
}

.accommodation-info__image img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
}

.accommodation-info__content {
    padding-top: 15px;
}

.accommodation-info__prop {
    margin-bottom: 6px;
    display: flex;
}

.accommodation-info__prop span:first-child {
    width: 160px;
    flex-shrink: 0;
}

@media screen and (min-width: 768px) {

    .accommodation-info {
        display: flex;
    }

    .accommodation-info__image {
        width: 40%;
        height: auto;
    }

    .accommodation-info__content {
        width: 60%;
        padding-top: 0;
        padding-left: 15px;
        min-height: 214px;
    }
}

.more {
    /* max-height: 125px; */
    overflow: hidden;
}

.more.more--expanded {
    max-height: none;
    overflow: initial;
}
.more.more--expanded .intro,
.more .content {
  display: none;
}
.more .intro,
.more.more--expanded .content {
  display: block;
}

.more-button {
    margin: 0px 0 5px 0;
    padding: 0;
    border: none;
    background-color: transparent;
    color: #ff2e63;
    font-size: 12px;
    font-weight: 500;
}
.more-button img {
  margin-top: -4px;
}
