@charset "utf-8";
/*======================================
	[ -Main Stylesheet- ]
	Fonts
	General

/* ---------- Fonts ---------- */
@import url('https://fonts.googleapis.com/css?family=Cabin:400,500,600,700|Roboto:100,300,500&display=swap');

/* ---------- General ---------- */
html,
body {
    max-width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
}

body {
    font-family: 'Cabin', sans-serif;
    font-weight: normal;
    font-size: 15px;
    line-height: 22px;
    color: #848484;
    background: #f5f6fa;
    position: relative;
    overflow-x: hidden;
}

body:before,
body:after {
    content: '';
    width: 486px;
    height: 486px;
    pointer-events: none;
    position: absolute;
    top: 112px;
}

body:before {
    background: url('../img/bg_left.png') no-repeat top right;
    width: 346px;
    left: 0;
}

body:after {
    background: url('../img/bg_right.png') no-repeat top left;
    width: 398px;
    right: 0;
}

body p {
    margin: 0 0 20px 0;
}

body a {
    text-decoration: none;
    transition: color 300ms;
}

.container {
    width: 1170px;
    margin: 0 auto;
}

main#main>.container {
    position: relative;
    z-index: 5;
}

.success {
    color: green;
}

.error {
    color: red;
}

.warning {
    color: orange;
}

.seo-len {
    margin-top: -25px;
    text-align: right;
}

/* ---------- Forms and Inputs ---------- */
input[type='button'],
input[type='reset'],
input[type='submit'],
input[type='radio'],
input[type='checkbox'] {
    cursor: pointer;
    outline: none;
}

input[type='text'],
input[type='number'],
input[type='password'],
input[type='email'],
input[type='tel'],
input[type='date'],
input[type='time'],
input[type='datetime'],
input[type='url'],
select,
textarea {
    outline: none;
    font-family: 'Cabin', sans-serif;
    box-sizing: border-box;
    border: 1px solid #dcdde5;
    border-radius: 4px;
    background: #fff;
    color: #848484;
    font-size: 16px;
    line-height: 26px;
    width: 100%;
    padding: 12px 16px 10px 16px;
    letter-spacing: 0.32px;
}

input[type='button'],
input[type='reset'],
input[type='submit'] {
    font-family: 'Cabin', sans-serif;
}

input::-moz-placeholder {
    opacity: 1;
}

textarea::-moz-placeholder {
    opacity: 1;
}

input::-webkit-input-placeholder {
    opacity: 1;
}

textarea::-webkit-input-placeholder {
    opacity: 1;
}

input::-ms-input-placeholder {
    opacity: 1;
}

textarea::-ms-input-placeholder {
    opacity: 1;
}

/* Custom Select */
.select-hidden {
    display: none;
    visibility: hidden;
}

.custom_select_wrapper {
    cursor: pointer;
    display: inline-block;
    position: relative;
    width: 100%;
    height: 26px;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

div.custom_select_wrapper div.custom_select {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 26px;
    margin: 0;
    padding: 0;
    transform: translateY(1px);
    white-space: nowrap;
    box-sizing: border-box;
    overflow: hidden;
    outline: none;
    color: #1b214a;
    font-size: 18px;
    line-height: 26px;
    transition: all 0.2s ease-in;
}

div.custom_select_wrapper div.custom_select span {
    display: inline-block;
    margin: 0 0 0 0;
}

div.custom_select_wrapper div.custom_select span:after {
    content: '';
    width: 5px;
    height: 1px;
    background: #585d64;
    display: inline-block;
    vertical-align: middle;
    margin: 0 12px 0 11px;
    transform: translateY(-1px);
}

div.custom_select_wrapper div.custom_select.active {
    z-index: 999;
}

.custom_select:before {
    content: '';
    display: inline-block;
    vertical-align: top;
    width: 10px;
    height: 6px;
    position: absolute;
    right: 0;
    top: 21px;
}

.custom_select_wrapper ul.select-options::-webkit-scrollbar {
    display: none;
}

.custom_select_wrapper ul.select-options {
    display: none;
    position: absolute;
    top: calc(100% + 45px);
    right: auto;
    left: 0;
    z-index: 888;
    margin: 0;
    padding: 21px 0 29px 0;
    list-style: none;
    overflow: hidden;
    text-align: left;
    border: none;
    background: #ffffff;
    white-space: nowrap;
    z-index: 5;
    width: 318px;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.07);
    max-height: 50vh;
    overflow-y: auto;
}

.search-block__item--location .custom_select_wrapper ul.select-options {
    left: -94px;
}

.search-block__item--language .custom_select_wrapper ul.select-options {
    padding-bottom: 25px;
    left: -138px;
}

.custom_content_wrapper .custom_select_wrapper ul.select-options:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.25);
}

.custom_select_wrapper ul.select-options.long_select {
    overflow-y: scroll;
}

.custom_select_wrapper ul.select-options li {
    margin: 0;
    font-weight: 500;
    font-size: 17px;
    line-height: 28px;
    letter-spacing: 0.085px;
    font-weight: 400;
    color: #a5a5a5;
    width: 100%;
    box-sizing: border-box;
    padding: 5px 55px 5px 55px;
    position: relative;
    transition: color 300ms, background 300ms;
    list-style: none;
}

.search-block__item--language .custom_select_wrapper ul.select-options li {
    padding-left: 21px;
    padding-right: 21px;
}

.search-block__item--language .custom_select_wrapper ul.select-options>li:before {
    display: none !important;
}

.custom_select_wrapper ul.select-options li img {
    display: inline-block;
    vertical-align: top;
    margin: 0 13px 0 0;
    transform: translateY(4px);
}

.custom_select_wrapper ul.select-options>li.is-selected,
.custom_select_wrapper ul.select-options>li:hover {
    color: #33b92d;
}

.custom_select_wrapper ul.select-options>li.is-selected:before {
    content: '';
    width: 21px;
    height: 16px;
    display: block;
    position: absolute;
    left: 21px;
    top: 11px;
    background: url('../img/icons/icon-checked.svg') no-repeat center;
}

.custom_select_wrapper ul.select-options>li {
    display: block;
    position: relative;
}

.ticket-select-time__input .custom_select_wrapper {
    z-index: 30;
    height: 34px;
    box-sizing: border-box;
    width: 150px;
}

.ticket-select-time__input div.custom_select_wrapper div.custom_select {
    font-size: 15px;
    line-height: 26px;
    letter-spacing: 0.15px;
    color: #a5a5a5;
    padding: 7px 32px 1px 16px;
}

.ticket-select-time__input .custom_select_wrapper ul.select-options {
    width: 151px;
    padding: 10px 0 8px 0;
    top: calc(100% + 15px);
}

.ticket-select-time__input .custom_select_wrapper ul.select-options>li {
    padding: 5px 26px 5px 17px;
    font-size: 15px;
    line-height: 22px;
}

.ticket-select-time__input .custom_select_wrapper ul.select-options>li.is-selected:before {
    display: none;
}

.ticket-select-time__input .custom_select_wrapper ul.select-options>li.is-selected,
.ticket-select-time__input .custom_select_wrapper ul.select-options>li:hover {
    color: #1b214a;
}

/* Datepicker */
.datepicker_wrapper {
    position: relative;
}

.ui-datepicker {
    width: 318px;
    border: none;
    padding: 26px 13px 9px 13px;
    display: none;
    background-color: #fff;
    border-radius: 6px;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.07);
    box-sizing: border-box;
    z-index: 99 !important;
    transform: translateX(-30px);
}

.search-datepicker.ui-datepicker {
    transform: translate(-98px, 44px);
}

.ui-datepicker .ui-datepicker-title {
    padding-left: 38px;
    padding-right: 38px;
}

.ui-datepicker-title select.ui-datepicker-month,
.ui-datepicker-title select.ui-datepicker-year {
    border: 1px solid #e2e2e2;
    border-radius: 4px;
    font-weight: normal;
    color: #848484;
    font-size: 14px;
    line-height: 26px;
    cursor: pointer;
}

.ui-datepicker .ui-datepicker-month,
.ui-datepicker .ui-datepicker-year {
    width: 48%;
    margin: 0px 1%;
    border: none;
    height: 36px;
    padding: 0px 8px;
    font-weight: 700;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}

.ui-datepicker select:focus {
    outline: none;
}

.ui-datepicker-title {
    position: relative;
}

.ui-datepicker-title:before,
.ui-datepicker-title:after {
    content: '';
    width: 12px;
    height: 7px;
    background: url(../img/icons/icon-dropdown.svg) no-repeat center;
    position: absolute;
    top: 14px;
    z-index: 5;
    pointer-events: none;
}

.ui-datepicker-title:before {
    left: 122px;
}

.ui-datepicker-title:after {
    left: 230px;
}

.ui-datepicker table {
    border-collapse: separate;
    border-spacing: 0px;
    margin-bottom: 10px;
    width: 100%;
    box-sizing: border-box;
    padding-top: 13px;
}

.ui-datepicker table tr {
    background: transparent;
}

.ui-datepicker table tr th {
    background: transparent;
    font-size: 14px;
    letter-spacing: 0.07px;
    font-weight: bold;
    padding: 16px 0px 10px;
    color: #5f5f5f;
    font-weight: 400;
}

.ui-datepicker table tr th span {
    color: #5f5f5f;
}

.ui-datepicker table tr td {
    padding: 0px 0px 5px;
    line-height: 1;
    text-align: center;
    color: #c0c0c0;
}

.ui-datepicker table tr td span,
.ui-datepicker table tr td a {
    width: 33px;
    font-size: 14px;
    line-height: 16px;
    letter-spacing: 0.07px;
    padding: 8px 0px 8px 0;
    text-align: center;
    display: inline-block;
    border-radius: 50%;
    transition: all 300ms;
}

.ui-datepicker-header {
    position: relative;
}

.ui-datepicker-prev,
.ui-datepicker-next {
    position: absolute;
    top: 0px;
    width: 36px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    cursor: pointer;
}

.ui-datepicker table tr td a,
.ui-datepicker-prev,
.ui-datepicker-next {
    background-color: #f5f6fa;
    color: #848484;
}

.ui-datepicker-prev {
    left: 0px;
    background: none;
}

.ui-datepicker-prev:after {
    content: '';
    width: 14px;
    height: 10px;
    background: url('../img/icons/icon-arrow-lt.svg') no-repeat 100% center;
    position: absolute;
    left: 6px;
    top: 12px;
}

.ui-datepicker-prev span {
    display: none;
}

.ui-datepicker-next {
    right: 0px;
    background: none;
}

.ui-datepicker-next:after {
    content: '';
    width: 14px;
    height: 10px;
    display: block;
    position: absolute;
    left: 14px;
    top: 12px;
    background: url('../img/icons/icon-arrow-rt.svg') no-repeat 100% center;
}

.ui-datepicker-next span {
    display: none;
}

.ui-datepicker-prev.ui-state-disabled,
.ui-datepicker-next.ui-state-disabled {
    background: transparent;
    color: #c0c0c0;
}

.ui-datepicker table tr td a.ui-state-disable {
    background: transparent;
    color: #c0c0c0;
}

.ui-datepicker table tr td a:hover,
.ui-datepicker table tr td a.ui-state-active,
.ui-datepicker table tr td.tourmaster-highlight a,
.ui-datepicker table tr td.tourmaster-highlight span {
    color: #ffffff;
}

.ui-datepicker .ui-datepicker-month,
.ui-datepicker .ui-datepicker-year {
    background: #fff;
}

.ui-datepicker table tr td a.ui-state-active,
.ui-datepicker table tr td a:hover,
.ui-datepicker table tr td.tourmaster-highlight a,
.ui-datepicker table tr td.tourmaster-highlight span {
    background: #f6921e;
}

.ui-datepicker select {
    color: #ea5318;
}

/* ---------- Typography ---------- */
h1,
h1 a,
h1,
span,
h2,
h2 a,
h2,
span,
h3,
h3 a,
h3,
span,
h4,
h4 a,
h4,
span,
h5,
h5 a,
h5,
span,
h6,
h6 a,
h6,
span {
    color: #1b214a;
    font-weight: 400;
    font-family: 'Cabin', sans-serif;
}

h1 {
    font-size: 38px;
    line-height: 38px;
    margin: 0 0 38px 0;
}

h2 {
    font-size: 31px;
    line-height: 31px;
    margin: 0 0 31px 0;
}

h3 {
    font-size: 26px;
    line-height: 26px;
    margin: 0 0 26px 0;
}

h4 {
    font-size: 22px;
    line-height: 22px;
    margin: 0 0 22px 0;
}

h5 {
    font-size: 20px;
    line-height: 20px;
    margin: 0 0 20px 0;
}

h6 {
    font-size: 18px;
    line-height: 18px;
    margin: 0 0 18px 0;
}

.content-table-wrap {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 70px 0 80px 0;
}

.table-wrapper table {
    width: 100%;
    border-collapse: collapse;
    padding: 0;
    margin: 0;
}

.table-wrapper table thead th,
.table-wrapper table tr>td {
    border: 1px solid #e9eaef;
    text-align: left;
    box-sizing: border-box;
}

.table-wrapper table thead th {
    border-top: none;
    border-bottom: none;
    background: #2b388f;
    color: #fff;
    font-size: 17px;
    line-height: 25px;
    letter-spacing: 0.34px;
    font-weight: 600;
    border-color: #5560a6;
    padding: 18px 29px 15px 29px;
}

.table-wrapper table thead tr th:first-child {
    border-radius: 6px 0 0 0;
    border-left: none;
}

.table-wrapper table thead tr th:last-child {
    border-radius: 0 6px 0 0;
    border-right: none;
}

.table-wrapper table tbody>tr:last-child>td {
    border-bottom: none;
}

.table-wrapper table tbody>tr>td {
    background: #ffffff;
    color: #1b214a;
    font-size: 15px;
    line-height: 25px;
    font-weight: 400;
    letter-spacing: 0.3px;
    padding: 12px 29px 12px 29px;
}

.table-wrapper table tbody>tr>td:first-child {
    border-left: none;
}

.table-wrapper table tbody>tr>td:last-child {
    border-right: none;
}

.table-wrapper table tbody>tr:last-child>td:first-child {
    border-radius: 0 0 0 6px;
}

.table-wrapper table tbody>tr:last-child>td:last-child {
    border-radius: 0 0 6px 0;
}

.table-wrapper table tbody>tr:nth-child(even)>td {
    background: #fafafc;
}

.table-wrapper table tbody>tr:first-child>td {
    border-top: none;
}

body .table-wrapper table tbody>tr>td.is-green {
    background: #e6f7e5;
}

.table-wrapper table tbody>tr:first-child>td {
    padding-top: 23px;
}

.table-wrapper table tbody>tr:last-child>td {
    padding-bottom: 22px;
}

.table-wrapper table tbody>tr>td:first-child {
    padding-left: 25px;
}

table.table--tickets th:nth-child(1) {
    width: 111px;
}

table.table--tickets th:nth-child(2) {
    width: 196px;
}

table.table--tickets th:nth-child(3) {
    width: 285px;
}

table.table--tickets th:nth-child(5) {
    width: 196px;
}

table.table--tickets th:nth-child(6) {
    width: 197px;
}

/* ---------- Header ---------- */
header#main-header {
    background: #ffffff;
    position: relative;
    z-index: 5;
    min-height: 137px;
}

.header-wrap {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.header-logo {
    width: 224px;
    padding: 39px 0 22px 0;
}

.header-wrap .main-logo {
    width: 224px;
    height: 75px;
    display: block;
}

.header-wrap .main-logo img {
    display: block;
    width: 100%;
    height: auto;
}

.header-contacts {
    padding: 63px 0 0 0;
    display: flex;
    flex-direction: row;
    width: calc(50% - 112px);
}

.header-contacts a {
    line-height: 26px;
    color: #1b214a;
}

.header-contacts a i {
    display: inline-block;
    vertical-align: baseline;
    margin-right: 9px;
    transform: translateY();
}

.header-contacts .header-contacts--email {
    padding-right: 25px;
}

.header-contacts .header-contacts--email a {
    font-size: 18px;
}

.header-contacts .header-contacts--email a i {
    width: 20px;
    height: 15px;
    transform: translateY(2px);
    background: url('../img/icons/icon-email.svg') no-repeat center;
}

.header-contacts .header-contacts--phone {
    transform: translateY(-2px);
}

.header-contacts .header-contacts--phone a {
    font-size: 20px;
}

.header-contacts .header-contacts--phone a i {
    width: 21px;
    height: 21px;
    transform: translateY(3px);
    background: url('../img/icons/icon-phone.svg') no-repeat center;
}

.header-contacts .header-contacts--phone a span {
    color: #a5a5a5;
}

.header-signin {
    width: calc(50% - 112px);
    text-align: right;
    padding: 62px 0 0 0;
}

.header-signin a {
    font-size: 18px;
    line-height: 26px;
    color: #1b214a;
}

.header-signin a i {
    width: 23px;
    height: 21px;
    background: url('../img/icons/icon-signin.svg') no-repeat center;
    display: inline-block;
    margin-right: 10px;
    transform: translateY(3px);
}

/* ---------- Top Search ---------- */
.search-block-wrap {
    position: relative;
    z-index: 7;
    margin: 0 0 0 0;
}

.search-block-wrap:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 41px;
    width: 100%;
    background: #ffffff;
}

.search-block {
    position: relative;
    z-index: 5;
    display: flex;
    flex-direction: row;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0px 4px 36px rgba(0, 0, 0, 0.06);
    padding: 18px 27px 15px 27px;
}

.search-block--submit {
    display: block;
    width: 84px;
    height: 49px;
    text-align: center;
    border-radius: 8px;
    background: #f6921e;
    box-shadow: 0px 3px 10px rgba(246, 146, 30, 0.22);
    box-sizing: border-box;
    padding: 14px 0 0 0;
    transition: background 300ms;
}

.search-block--submit:hover {
    background: #e28314;
}

.search-block__item .search-block--submit span {
    display: none;
}

.search-block--submit i.search-icon {
    width: 22px;
    height: 22px;
    background: url('../img/icons/icon-search.svg') no-repeat 0 0;
    display: inline-block;
}

.search-block__item {
    display: flex;
    flex-direction: row;
    min-height: 39px;
    box-sizing: border-box;
    margin-right: 30px;
}

.search-block__item:after {
    content: '';
    width: 1px;
    height: 39px;
    background: #e2e2e2;
    margin-left: 25px;
    transform: translateY(-7px);
}

.search-block__item:last-child {
    margin-right: 0;
}

.search-block__item:nth-child(3):after,
.search-block__item:last-child:after {
    display: none;
}

.search-block__item span {
    color: #a5a5a5;
    font-size: 18px;
    line-height: 26px;
    display: inline-block;
    margin-right: 6px;
    white-space: nowrap;
    cursor: default;
}

.search-block__item i {
    display: inline-block;
}

.search-block__item .input-wrap--select {
    position: relative;
}

.search-block__item .input-wrap--select:after {
    content: '';
    width: 12px;
    height: 7px;
    background: url('../img/icons/icon-dropdown.svg') no-repeat center;
    position: absolute;
    right: 0;
    top: 9px;
}

.search-block__item select {
    -webkit-box-shadow: none;
    -webkit-appearance: none;
    border: none;
    padding: 1px 0 0 0;
    color: #1b214a;
    font-size: 18px;
    line-height: 26px;
    outline: none;
    cursor: pointer;
}

.search-block__item--date,
.search-block__item--language,
.search-block__item--location {
    padding: 10px 0 0 0;
}

.search-block__item--location .custom_select_wrapper,
.search-block__item--location select {
    width: 232px;
}

i.search-icon--location {
    width: 16px;
    height: 20px;
    transform: translateY(2px);
    margin-right: 6px;
    background: url('../img/icons/icon-location.svg') no-repeat center;
}

.search-block__item--language .custom_select_wrapper,
.search-block__item--language select {
    width: 179px;
}

i.search-icon--language {
    width: 19px;
    height: 19px;
    transform: translateY(2px);
    margin-right: 5px;
    background: url('../img/icons/icon-lang.svg') no-repeat center;
}

.search-block__item .input-wrap--date {
    position: relative;
    margin-right: 22px;
}

.search-block__item--date input[type='text'] {
    width: 202px;
    border: none;
    color: #1b214a;
    font-size: 18px;
    line-height: 26px;
    cursor: pointer;
    padding: 0;
}

.search-block__item--date input::-moz-placeholder {
    color: #a5a5a5;
}

.search-block__item--date input::-webkit-input-placeholder {
    color: #a5a5a5;
}

.search-block__item--date input::-ms-input-placeholder {
    color: #a5a5a5;
}

.search-block__item .input-wrap--date:after {
    content: '';
    width: 12px;
    height: 7px;
    background: url('../img/icons/icon-dropdown2.svg') no-repeat center;
    position: absolute;
    right: 0;
    top: 9px;
}

i.search-icon--date {
    width: 18px;
    height: 18px;
    transform: translateY(2px);
    margin-right: 11px;
    background: url('../img/icons/icon-date.svg') no-repeat center;
}

/* ---------- Breadcrumbs ---------- */
.breadcrumb-wrap {
    margin: 70px 0 74px 0;
}

.breadcrumb-list {
    display: flex;
    margin: 0 auto;
    flex-direction: row;
    padding: 0;
    margin: 0 auto;
    min-height: 60px;
    max-width: 770px;
}

.breadcrumb-list li {
    margin: 0 8px 0 0;
    list-style: none;
    background: #ffffff;
    color: #1b214a;
    font-size: 18px;
    line-height: 24px;
    white-space: nowrap;
    position: relative;
    cursor: default;
}

.breadcrumb-list li:nth-child(1) {
    padding: 19px 57px 0 55px;
}

.breadcrumb-list li:nth-child(2) {
    padding: 19px 43px 0 44px;
}

.breadcrumb-list li:nth-child(3) {
    padding: 19px 41px 0 44px;
}

.breadcrumb-list li:nth-child(4) {
    padding: 19px 58px 0 52px;
}

.breadcrumb-list li:first-child {
    border-radius: 8px 0 0 8px;
}

.breadcrumb-list li:last-child {
    margin: 0;
    border-radius: 0 8px 8px 0;
}

.breadcrumb-list li:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 0 30px 14px;
    border-color: transparent transparent transparent #ffffff;
    position: absolute;
    right: -14px;
    top: 0;
    z-index: 3;
}

.breadcrumb-list li:before {
    content: '';
    position: absolute;
    left: 0px;
    top: 0;
    z-index: 2;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 0 30px 14px;
    border-color: transparent transparent transparent #f5f6fa;
}

.breadcrumb-list li:first-child:before {
    display: none;
}

.breadcrumb-list li:last-child:after {
    display: none;
}

.breadcrumb-list li.is-active {
    color: #ffffff;
    background: #2b388f;
}

.breadcrumb-list li.is-active:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 0 30px 14px;
    border-color: transparent transparent transparent #2b388f;
}

.breadcrumb-list li i {
    display: inline-block;
    vertical-align: top;
}

i.breadcrumb-icon--tours {
    width: 21px;
    height: 21px;
    margin-right: 9px;
    background: url('../img/icons/icon-tours.svg') no-repeat center;
}

.breadcrumb-list li.is-active i.breadcrumb-icon--tours {
    width: 21px;
    height: 21px;
    background: url('../img/icons/icon-tours-active.svg') no-repeat center;
}

i.breadcrumb-icon--tickets {
    width: 23px;
    height: 23px;
    margin-right: 3px;
    transform: translateY(-1px);
    background: url('../img/icons/icon-ticket.svg') no-repeat center;
}

.breadcrumb-list li.is-active i.breadcrumb-icon--tickets {
    width: 23px;
    height: 23px;
    background: url('../img/icons/icon-ticket-active.svg') no-repeat center;
}

i.breadcrumb-icon--checkout {
    width: 24px;
    height: 18px;
    margin-right: 4px;
    transform: translateY(2px);
    background: url('../img/icons/icon-checkout.svg') no-repeat center;
}

.breadcrumb-list li.is-active i.breadcrumb-icon--checkout {
    width: 24px;
    height: 18px;
    background: url('../img/icons/icon-checkout-active.svg') no-repeat center;
}

i.breadcrumb-icon--confirm {
    width: 20px;
    height: 19px;
    margin-right: 6px;
    transform: translateY(2px);
    background: url('../img/icons/icon-confirm.svg') no-repeat center;
}

.breadcrumb-list li.is-active i.breadcrumb-icon--confirm {
    width: 20px;
    height: 19px;
    background: url('../img/icons/icon-confirm-active.svg') no-repeat center;
}

/* ---------- Tickets Grid ---------- */
.content-tours-wrap {
    padding: 0 0 70px 0;
}

.tickets-grid-wrap {
    display: flex;
    flex-wrap: wrap;
    margin: -15px;
    padding-bottom: 51px;
}

.tickets-grid-wrap .tickets-grid-item {
    margin: 15px;
}

.tickets-grid-wrap.tickets-grid-1cols .tickets-grid-item {
    width: calc(100% - 30px);
}

.tickets-grid-wrap.tickets-grid-2cols .tickets-grid-item {
    width: calc(50% - 30px);
}

.tickets-grid-wrap.tickets-grid-3cols .tickets-grid-item {
    width: calc(33.33% - 30px);
}

.tickets-grid-wrap.tickets-grid-4cols .tickets-grid-item {
    width: calc(25% - 30px);
}

.tickets-grid-item--image {
    border-radius: 6px 6px 0 0;
    overflow: hidden;
}

.tickets-grid-item--image img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform 300ms;
}

.tickets-grid-item--image a:hover img {
    transform: scale(1.05);
}

.tickets-grid-item--content {
    background: #ffffff;
    border-radius: 0 0 6px 6px;
    padding: 26px 20px 22px 20px;
}

.tickets-grid-item--content h4 {
    margin: 0 0 11px 0;
    font-weight: normal;
    font-size: 22px;
    line-height: 26px;
    text-align: left;
    color: #1b214a;
}

.tickets-grid-item--content h4 a {
    color: #1b214a;
}

.tickets-grid-item--info {
    font-size: 21px;
    line-height: 26px;
    color: #f6921e;
    padding-right: 20px;
    position: relative;
}

.tickets-grid-item--info span {
    color: #5f5f5f;
    font-size: 15px;
    line-height: 26px;
    display: inline-block;
    margin-right: 8px;
}

.tickets-grid-item--info a {
    position: absolute;
    bottom: 11px;
    right: -1px;
    width: 14px;
    height: 10px;
    display: block;
    background: url('../img/icons/icon-arrow-right.svg') no-repeat center;
}

a.tickets-load-more {
    width: 184px;
    height: 54px;
    border-radius: 6px;
    background: #2b388f;
    color: #ffffff;
    font-size: 16px;
    line-height: 26px;
    box-sizing: border-box;
    display: block;
    margin: 0 auto;
    padding: 15px 30px 0 36px;
    text-align: center;
    position: relative;
    transition: background 300ms;
}

a.tickets-load-more:hover {
    background: #1b214a;
}

a.tickets-load-more:before {
    content: '';
    position: absolute;
    width: calc(100% - 20px);
    left: 10px;
    top: 0;
    height: 100%;
    pointer-events: none;
    width: 164px;
    box-shadow: 0px 3px 15px rgba(43, 56, 143, 0.31);
}

a.tickets-load-more:after {
    content: '';
    display: inline-block;
    vertical-align: top;
    width: 14px;
    height: 15px;
    background: url('../img/icons/icon-refresh.svg') no-repeat center;
    transform: translateY(4px);
    margin-left: 7px;
}

/* ---------- Select Ticket List ---------- */
.ticket-title span {
    display: block;
    color: #33b92d;
    font-size: 20px;
    line-height: 31px;
    margin: 0 0 15px 0;
}

.ticket-title span:before {
    content: '';
    width: 21px;
    height: 16px;
    background: url('../img/icons/icon-checked.svg') no-repeat 100% center;
    display: inline-block;
    vertical-align: top;
    transform: translateY(7px);
    margin: 0 10px 0 0;
}

.ticket-select-label {
    color: #1b214a;
    font-size: 26px;
    line-height: 31px;
    padding-bottom: 30px;
}

.ticket-select-label:after {
    content: '';
    width: 15px;
    height: 9px;
    background: url('../img/icons/dropdown-large.svg') no-repeat 100% center;
    display: inline-block;
    vertical-align: top;
    transform: translateY(12px);
    margin-left: 15px;
}

.select-ticket-wrap {
    padding-bottom: 69px;
    margin-top: -30px;
}

.select-ticket-item {
    margin-top: 30px;
}

.select-ticket-item--preview {
    display: flex;
    flex-direction: row;
    background: #ffffff;
    border-radius: 8px;
    overflow: hidden;
}

.select-ticket-item--preview>div {
    box-sizing: border-box;
}

.ticket-item__image {
    width: 240px;
}

.ticket-item__image img {
    display: block;
    width: 100%;
    height: auto;
}

.ticket-item__title {
    width: 364px;
    border-right: 1px solid #e9eaef;
    color: #a5a5a5;
    font-size: 19px;
    line-height: 26px;
    padding: 44px 30px 24px 36px;
}

.ticket-item__title h3 {
    margin: 10px 0 10px 0;
}

.ticket-item__title span {
    font-size: 17px;
    line-height: 26px;
    color: #848484;
    display: block;
    letter-spacing: 0.17px;
}

.ticket-item__title span i {
    width: 17px;
    height: 17px;
    display: inline-block;
    background: url('../img/icons/icon-clock.svg') no-repeat 100% center;
    transform: translateY(2px);
    margin: 0 5px 0 1px;
}

.ticket-item__price {
    width: 310px;
    border-right: 1px solid #e9eaef;
    color: #a5a5a5;
    font-size: 19px;
    line-height: 26px;
    padding: 44px 30px 24px 37px;
}

.ticket-item__price-wrap {
    display: flex;
    flex-direction: row;
}

.ticket-item__price-wrap>div.ticket-item__price-item {
    width: 105px;
}

.ticket-item__price-wrap>div.ticket-item__price-item:first-child {
    margin-right: 30px;
}

.ticket-item__price-item {
    color: #2b388f;
    font-size: 25px;
    line-height: 26px;
    padding: 10px 0 0 0;
}

.ticket-item__price-item span {
    font-size: 17px;
    line-height: 20px;
    color: #848484;
    display: block;
    margin-top: 14px;
}

.ticket-item__button {
    width: 255px;
    padding: 71px 35px 44px 46px;
}

.ticket-item__button a {
    display: block;
    height: 54px;
    box-sizing: border-box;
    border-radius: 27px;
    text-align: center;
    padding: 14px 10px 0 14px;
    color: #ffffff;
    background: #f6921e;
    font-size: 17px;
    line-height: 26px;
    position: relative;
    transition: background 300ms;
}

.ticket-item__button a:before {
    content: '';
    position: absolute;
    width: calc(100% - 10px);
    left: 5px;
    top: 0;
    height: 100%;
    pointer-events: none;
    border-radius: 27px;
    box-shadow: 0px 3px 15px rgba(246, 146, 30, 0.28);
    transition: box-shadow 300ms;
}

.ticket-item__button a:hover {
    background: #e28314;
}

.is-active .ticket-item__button a {
    background: #33b92d;
}

.is-active .ticket-item__button a:hover {
    background: #139d0d;
}

.is-active .ticket-item__button a:before {
    box-shadow: 0px 3px 15px rgba(63, 195, 57, 0.23);
}

.ticket-item__button a i {
    width: 18px;
    height: 18px;
    font-weight: 500;
    display: inline-block;
    vertical-align: top;
    display: inline-block;
    background: url('../img/icons/icon-ticket-button.svg') no-repeat center;
    margin: 0 5px 0 0;
    transform: translateY(3px);
}

.select-ticket-item--detail-wrap {
    display: block;
    padding: 0 0 0 210px;
}

.select-ticket-item--detail {
    display: flex;
    flex-direction: row;
    padding: 30px 0 0 0;
}

.select-ticket-item--detail>div {
    margin-left: 30px;
    width: calc(50% - 30px);
    background: #ffffff;
    border-radius: 8px;
    box-sizing: border-box;
    padding: 33px 35px 43px 34px;
}

.number-of-tickets {
    display: flex;
    flex-direction: row;
    margin: 0 0 30px 0;
}

.select-ticket-item--detail h4 {
    margin-bottom: 36px;
}

.number-of-tickets>div {
    box-sizing: border-box;
}

.not-label {
    width: 154px;
    font-size: 12px;
    line-height: 12px;
    color: #1b214a;
}

.not-label del {
    color: #a5a5a5;
    display: inline-block;
    margin-left: 16px;
}

.not-label h6 {
    margin: 0 0 10px 0;
}

.not-label span {
    width: 17px;
    height: 17px;
    display: inline-block;
    vertical-align: top;
    background: #efefef;
    color: #1b214a;
    font-size: 11px;
    line-height: 17px;
    text-align: center;
    border-radius: 50%;
    margin: 0 0 0 5px;
    transform: translateY(-8px);
}

.not-price {
    width: 107px;
    text-align: right;
    color: #1b214a;
    font-size: 19px;
    line-height: 26px;
    padding: 10px 0 0 0;
}

.not-qty {
    font-size: 0;
    line-height: 0;
    white-space: nowrap;
}

.not-qty a {
    display: inline-block;
    vertical-align: top;
    font-size: 22px;
    line-height: 26px;
    color: #a5a5a5;
    box-sizing: border-box;
    width: 42px;
    height: 42px;
    text-align: center;
    border: 1px solid #d9d9d9;
    padding: 7px 0 0 0;
}

.not-qty a.not-qty-minus {
    border-radius: 6px 0 0 6px;
}

.not-qty a.not-qty-plus {
    border-radius: 0 6px 6px 0;
}

.not-qty input {
    border: none;
    border-top: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
    height: 42px;
    text-align: center;
    font-size: 16px;
    line-height: 26px;
    color: #2b388f;
    width: 40px;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
    border-radius: 0;
    padding: 12px 10px 10px 10px;
}

.not-qty input[type='number']::-webkit-outer-spin-button,
.not-qty input[type='number']::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.not-qty input[type='number'] {
    -moz-appearance: textfield;
}

.not-summary {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #e5e5e5;
    font-size: 19px;
    line-height: 26px;
    color: #1b214a;
    padding: 19px 0 3px 0;
}

.not-summary span {
    color: #a5a5a5;
}

.select-ticket-item--detail--right h4 {
    margin-bottom: 23px;
}

.ticket-select-time,
.ticket-select-date {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.ticket-select-time__label {
    color: #1b214a;
    font-size: 18px;
    line-height: 26px;
}

.ticket-select-time {
    margin-bottom: 39px;
}

.ticket-select-date {
    margin-bottom: 33px;
}

.ticket-select-time .ticket-select-time__label {
    padding-top: 9px;
}

.ticket-select-time__input .input-wrap--select {
    position: relative;
    border: 1px solid #d9d9d9;
    border-radius: 6px;
}

.ticket-select-time__input .input-wrap--select:after {
    content: '';
    width: 12px;
    height: 7px;
    background: url('../img/icons/icon-dropdown.svg') no-repeat center;
    position: absolute;
    right: 15px;
    top: 17px;
}

.ticket-select-time__input .input-wrap--select select {
    -webkit-box-shadow: none;
    -webkit-appearance: none;
    border: none;
    padding: 8px 35px 6px 17px;
    color: #a5a5a5;
    font-size: 15px;
    line-height: 26px;
    outline: none;
    cursor: pointer;
    width: 149px;
    letter-spacing: 0.15px;
    background: transparent;
}

.ticket-select-date__input .input-wrap--date {
    position: relative;
    width: 103px;
}

.ticket-select-date__input .input-wrap--date input {
    border: none;
    background: transparent;
    text-align: right;
    font-size: 15px;
    line-height: 26px;
    color: #848484;
    letter-spacing: 0.15px;
    max-width: 74px;
    cursor: pointer;
    padding: 0;
}

.ticket-select-date__input .input-wrap--date .datepicker_wrapper {
    max-width: 74px;
    display: inline-block;
}

.ticket-select-date .input-wrap--date:before {
    content: '';
    display: inline-block;
    vertical-align: top;
    width: 18px;
    height: 18px;
    margin: 0 7px 0 0;
    transform: translateY(4px);
    background: url('../img/icons/icon-date.svg') no-repeat center;
}

.select-date-carousel-wrap {
    display: flex;
    flex-direction: row;
}

.select-date-carousel-wrap a.sdc-prev,
.select-date-carousel-wrap a.sdc-next {
    width: 33px;
    height: 63px;
    background: #ffffff;
    border-radius: 6px;
    width: 33px;
    box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.1);
    display: block;
    position: relative;
    z-index: 7;
}

.select-date-carousel-wrap a.sdc-prev {
    margin-right: 7px;
}

.select-date-carousel-wrap a.sdc-next {
    margin-left: 7px;
}

.select-date-carousel-wrap a.sdc-prev:before,
.select-date-carousel-wrap a.sdc-next:before {
    content: '';
    width: 15px;
    height: 9px;
    display: block;
    position: absolute;
    background: url('../img/icons/dropdown-large.svg') no-repeat center;
}

.select-date-carousel-wrap a.sdc-prev:before {
    transform: rotate(90deg);
    top: 27px;
    left: 9px;
}

.select-date-carousel-wrap a.sdc-next:before {
    transform: rotate(-90deg);
    top: 27px;
    left: 10px;
}

.select-date-carousel-wrap .select-date-carousel {
    width: calc(100% - 81px);
    height: 63px;
}

.select-date-carousel {
    display: flex;
}

.sdc-item {
    background: #ffffff;
    box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.1);
    border-radius: 6px;
    box-sizing: border-box;
    padding: 11px 15px;
    position: relative;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: 0.15px;
    color: #1b214a;
    cursor: pointer;
    transition: color 300ms;
}

.sdc-item span {
    display: block;
    transition: color 300ms;
    color: #848484;
    font-size: 12px;
    line-height: 20px;
    letter-spacing: 0.12px;
    text-transform: uppercase;
}

.sdc-item:hover,
.sdc-item:hover span,
.sdc-item.is-active,
.sdc-item.is-active span {
    color: #33b92d;
}

.sdc-item:before {
    content: '';
    position: absolute;
    right: 6px;
    top: 9px;
    width: 21px;
    height: 16px;
    opacity: 0;
    transition: opacity 300ms;
    background: url('../img/icons/icon-checked.svg') no-repeat center;
}

.sdc-item.is-active:before {
    opacity: 1;
}

.select-date-carousel.owl-carousel {
    z-index: 5;
}

.select-date-carousel.owl-carousel .owl-stage-outer {
    margin: -10px -7px -10px -8px;
    padding: 10px 7px 10px 8px;
}

.select-ticket-checkout {
    width: calc(100% - 30px);
    box-sizing: border-box;
    text-align: center;
    display: block;
    background: #2b388f;
    position: relative;
    border-radius: 32px;
    font-size: 21px;
    line-height: 26px;
    font-weight: 500;
    color: #ffffff;
    margin: 30px 0 0 30px;
    padding: 19px 20px 19px 20px;
    transition: background 300ms;
}

.select-ticket-checkout:hover {
    background: #1b214a;
}

.select-ticket-checkout:before {
    content: '';
    width: calc(100% - 23px);
    height: 100%;
    position: absolute;
    top: 0;
    left: 10px;
    pointer-events: none;
    border-radius: 32px;
    box-shadow: 0px 3px 15px rgba(43, 56, 143, 0.31);
}

/* ---------- Checkout ---------- */
.checkout-title {
    width: 770px;
    margin: 58px auto 30px auto;
}

.content-checkout-wrap .checkout-title:first-child {
    margin-top: -14px;
}

.checkout-box-wrap {
    width: 770px;
    margin: 0 auto;
    border-radius: 6px;
    background: #fcfcfd;
    opacity: 1;
    box-shadow: 0px 3px 20px rgba(0, 0, 0, 0.03);
    box-sizing: border-box;
    padding: 29px 30px 23px 30px;
    margin-bottom: 20px;
    overflow: hidden;
}

.checkout-summary-list {
    padding: 0 0 5px 3px;
    margin: -27px 0 0 0;
}

.checkout-summary-list li {
    padding: 0;
    margin: 25px 0 0 0;
    display: flex;
    font-size: 17px;
    line-height: 25px;
    color: #848484;
    letter-spacing: 0.34px;
    list-style: none;
}

.checkout-summary-list li .checkout-summary-label {
    width: 190px;
    color: #1b214a;
}

.checkout-box-cancellation {
    padding-top: 33px;
    padding-bottom: 30px;
}

.checkout-cancellation-wrap {
    display: flex;
    margin: 0 -25px;
}

.checkout-cancellation-wrap>div {
    width: calc(50% - 50px);
    margin: 0 25px;
    display: flex;
    flex-direction: row;
}

.checkout-cancellation-divider {
    flex-grow: 10;
    position: relative;
}

.checkout-cancellation-divider:before {
    content: '';
    position: absolute;
    left: 18px;
    top: 10px;
    display: block;
    width: calc(100% - 33px);
    height: 3px;
    background: url('../img/bg-divider.svg') repeat-x;
}

.checkout-cancellation-value,
.checkout-cancellation-time {
    color: #1b214a;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.32px;
}

.checkout-cancellation-time span {
    display: inline-block;
    margin-right: 7px;
}

.checkout-box-details {
    padding: 29px 27px 16px 29px;
}

.checkout-box-details label {
    display: block;
    color: #1b214a;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.32px;
    margin: 0 0 14px 0;
}

.checkout-box-details input {
    margin-bottom: 19px;
}

.form-row {
    margin: 0 -11px;
    display: flex;
    flex-direction: row;
}

.form-card {
    padding: 29px 27px 16px 29px;
    border-radius: 6px;
    background: #fbfbfb;
    opacity: 1;
    box-shadow: 0 3px 20px rgb(0 0 0 / 3%);
    box-sizing: border-box;
    margin: 0 auto 20px !important;
}

.form-card input,
.form-card div.custom_select,
.form-card textarea {
    background-color: white !important;
}

.form-row .form-col {
    width: calc(50% - 22px);
    margin: 0 11px;
}

.checkout-box-payment {
    padding: 0;
}

.checkout-box-payment .payment-select-item {
    display: block;
    border-top: 1px solid #e9eaef;
    background: #ffffff;
    box-sizing: border-box;
    display: flex;
    cursor: pointer;
    transition: background 300ms;
}

.checkout-box-payment .payment-select-item.is-active {
    background: #fdfdfe;
}

.checkout-box-payment .payment-select-item:first-child {
    border: none;
}

.checkout-box-payment .payment-select-item .payment-radio-flag {
    min-width: 19px;
    max-width: 19px;
    height: 19px;
    position: relative;
    margin-right: 23px;
}

.checkout-box-payment .payment-select-item .payment-radio-flag:before {
    content: '';
    display: block;
    width: 19px;
    height: 19px;
    border: 2px solid #dcdde5;
    border-radius: 50%;
    box-sizing: border-box;
}

.checkout-box-payment .payment-select-item .payment-radio-flag:after {
    content: '';
    display: block;
    position: absolute;
    left: 5px;
    top: 5px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #f6921e;
    opacity: 0;
    transition: opacity 300ms;
}

.checkout-box-payment .payment-select-item.is-active .payment-radio-flag:after {
    opacity: 1;
}

.payment-image {
    min-width: 63px;
    max-width: 63px;
    position: relative;
}

.payment-image:before {
    content: '';
    display: block;
}

.payment-image.payment-image--mastercard:before {
    width: 46px;
    height: 29px;
    background: url('../img/icons/icon-mastercard.svg') no-repeat center;
}

.payment-image.payment-image--paypal:before {
    width: 26px;
    height: 31px;
    background: url('../img/icons/icon-paypal.svg') no-repeat center;
    margin: 0 0 0 10px;
}

.payment-image.payment-image--cash:before {
    width: 41px;
    height: 24px;
    background: url('../img/icons/icon-cash.svg') no-repeat center;
    margin: 0 0 0 2px;
}

.payment-description {
    color: #848484;
    letter-spacing: 0.15px;
}

.payment-description h5 {
    margin: 0 0 9px 0;
    letter-spacing: 0.4px;
}

.payment-select-item--mastercard {
    padding: 30px 27px 20px 27px;
}

.payment-select-item--mastercard .payment-radio-flag {
    transform: translateY(4px);
}

.payment-select-item--mastercard .payment-description {
    padding-top: 5px;
}

.payment-select-item--paypal {
    padding: 20px 27px 22px 27px;
}

.payment-select-item--paypal .payment-radio-flag {
    transform: translateY(5px);
}

.payment-select-item--paypal .payment-description {
    padding-top: 5px;
}

.payment-select-item--cash {
    padding: 22px 27px 22px 27px;
}

.payment-select-item--cash .payment-radio-flag {
    transform: translateY(3px);
}

.payment-select-item--cash .payment-description {
    padding-top: 2px;
}

.checkout-submit-button {
    width: 770px;
    height: 64px;
    background: #33b92d;
    color: #fff;
    font-size: 21px;
    line-height: 26px;
    font-weight: 500;
    display: block;
    margin: 30px auto 70px auto;
    padding: 19px 20px 0 20px;
    text-align: center;
    border-radius: 32px;
    box-sizing: border-box;
    position: relative;
    transition: background 300ms;
}

.checkout-submit-button.is-disabled {
    background: #d4d9de;
    pointer-events: none;
}

.checkout-submit-button:hover {
    background: #139d0d;
}

.checkout-submit-button:before {
    content: '';
    position: absolute;
    left: 10px;
    top: 0;
    height: 100%;
    width: calc(100% - 22px);
    box-shadow: 0px 3px 15px rgba(63, 195, 57, 0.32);
    transition: opacity 300ms;
    border-radius: 32px;
}

.checkout-submit-button.is-disabled:before {
    opacity: 0;
}

/* ---------- Confirm ---------- */
.confirm-box-summary.checkout-box-wrap {
    padding: 0;
    overflow: hidden;
}

.confirm-table .confirm-table-row {
    display: flex;
    flex-direction: row;
    width: 100%;
    background: #ffffff;
    color: #1b214a;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.32px;
    border-top: 1px solid #e9eaef;
}

.confirm-table .confirm-table-row:first-child {
    border-top: none;
}

.confirm-table .confirm-table-row:nth-child(even) {
    background: #fdfdfe;
}

.confirm-table .confirm-table-row .confirm-table-cell {
    width: calc(100% - 222px);
    box-sizing: border-box;
    padding: 12px 30px 11px 30px;
}

.confirm-table .confirm-table-row .confirm-table-cell:first-child {
    width: 222px;
    border-right: 1px solid #e9eaef;
}

.confirm-table .confirm-table-row:first-child .confirm-table-cell {
    padding-top: 23px;
}

.confirm-table .confirm-table-row:last-child .confirm-table-cell {
    padding-bottom: 22px;
}

.confirm-table .confirm-table-row.confirm-table-row--total .confirm-table-cell {
    font-size: 18px;
    padding-top: 15px;
    padding-bottom: 20px;
}

.get-ticket-wrap {
    width: 770px;
    margin: 0 auto;
    padding: 13px 0 14px 0;
}

.get-ticket-info {
    font-size: 15px;
    letter-spacing: 0.15px;
    line-height: 22px;
    color: #848484;
}

.get-ticket-info i {
    display: inline-block;
    vertical-align: top;
    width: 23px;
    height: 23px;
    background: url('../img/icons/icon-info.svg') no-repeat center;
    margin: 0 9px 0 0;
    transform: translateY(-3px);
}

.get-ticket-buttons {
    display: block;
    margin: 0 -5px 33px -5px;
    font-size: 0;
    line-height: 0;
    padding: 37px 0 0 0;
}

.get-ticket-buttons a {
    display: inline-block;
    vertical-align: top;
    width: calc(33.33% - 10px);
    margin: 0 5px;
    font-size: 19px;
    line-height: 26px;
    font-weight: 500;
    color: #ffffff;
    min-height: 64px;
    border-radius: 32px;
    box-sizing: border-box;
    padding: 19px 19px 19px 19px;
    position: relative;
    text-align: center;
    transition: background 300ms;
}

.get-ticket-buttons a:before {
    content: '';
    display: block;
    width: calc(100% - 22px);
    pointer-events: none;
    position: absolute;
    left: 10px;
    top: 0;
    border-radius: 32px;
    height: 100%;
    z-index: -1;
}

.get-ticket-buttons a i {
    display: inline-block;
    vertical-align: top;
}

.get-ticket-buttons a.btn-voucher {
    background: #33b92d;
}

.get-ticket-buttons a.btn-voucher:hover {
    background: #139d0d;
}

.get-ticket-buttons a.btn-voucher i {
    width: 23px;
    height: 23px;
    background: url('../img/icons/icon-download.svg') no-repeat 100% center;
    margin: 0 16px 0 0;
    transform: translateY(0);
}

.get-ticket-buttons a.btn-voucher:before {
    box-shadow: 0px 3px 15px rgba(33, 33, 33, 0.1);
}

.get-ticket-buttons a.btn-tickets {
    background: #2b388f;
}

.get-ticket-buttons a.btn-tickets:hover {
    background: #1b214a;
}

.get-ticket-buttons a.btn-tickets:before {
    box-shadow: 0px 3px 15px rgba(33, 33, 33, 0.1);
}

.get-ticket-buttons a.btn-tickets i {
    width: 23px;
    height: 23px;
    background: url('../img/icons/icon-ticket-active.svg') no-repeat 100% center;
    margin: 0 14px 0 0;
    transform: translateY(0);
}

.get-ticket-buttons a.btn-invoice {
    background: #22274f;
}

.get-ticket-buttons a.btn-invoice:hover {
    background: #111329;
}

.get-ticket-buttons a.btn-invoice:before {
    box-shadow: 0px 3px 15px rgba(33, 33, 33, 0.1);
}

.get-ticket-buttons a.btn-invoice i {
    width: 22px;
    height: 23px;
    background: url('../img/icons/icon-accept.svg') no-repeat 100% center;
    margin: 0 10px 0 0;
    transform: translateY(2px);
}

.get-ticket-wrap p {
    color: #848484;
    font-size: 18px;
    line-height: 29px;
    letter-spacing: 0.36px;
}

.confirm-box-contacts.checkout-box-wrap {
    padding: 32px 40px 29px 40px;
    margin: 0 auto 69px auto;
}

.confirm-box-contacts h3 {
    letter-spacing: 0.52px;
    margin: 0 0 8px 0;
}

.confirm-box-contacts p {
    font-size: 15px;
    line-height: 26px;
    letter-spacing: 0.15px;
    display: block;
    padding-left: 2px;
    margin: 0 0 26px 0;
}

.confirm-contact-info {
    display: flex;
    flex-direction: row;
}

.confirm-contact-info--image {
    max-width: 46px;
    min-width: 46px;
    margin-right: 34px;
}

.confirm-contact-info--image img {
    display: block;
    width: 100%;
    height: auto;
}

.confirm-contact-info--content {
    padding: 10px 0 0 0;
}

.confirm-contact-info--content h5 {
    letter-spacing: 0.4px;
    margin: 0 0 17px 0;
}

.confirm-contact-info--content ul {
    padding: 0 0 0 2px;
    margin: 0;
}

.confirm-contact-info--content ul li {
    list-style: none;
    margin: 0;
    padding: 0;
    color: #1b214a;
    line-height: 26px;
}

.confirm-contact-info--content ul li i {
    display: inline-block;
    vertical-align: top;
}

.confirm-contact-info--content ul li a {
    color: #1b214a;
}

.confirm-contact-info--content ul li a span,
.confirm-contact-info--content ul li span {
    color: #a5a5a5;
}

.confirm-contact-info--content ul li.confirm-contact-info--tel {
    font-size: 19px;
    letter-spacing: -0.38px;
    margin: 0 0 9px 0;
}

.confirm-contact-info--tel i {
    width: 21px;
    height: 21px;
    margin: 0 8px 0 0;
    transform: translateY(1px);
    background: url('../img/icons/icon-phone.svg') no-repeat center;
}

.confirm-contact-info--email {
    font-size: 18px;
    letter-spacing: 0;
}

.confirm-contact-info--email i {
    width: 20px;
    height: 15px;
    margin: 0 9px 0 0;
    transform: translateY(5px);
    background: url('../img/icons/icon-email.svg') no-repeat center;
}

/* ---------- Confirm Contact Details ---------- */
.checkout-box-wrap.confirm-contact-details {
    margin-bottom: 30px;
    padding: 38px 31px 34px 42px;
}

.confirm-contact-details hr {
    border: none;
    border-top: 1px solid #e9eaef;
    height: 10px;
    display: block;
    background: none;
    margin: 0 -11px 29px -11px;
}

.contact-confirm-wrap {
    display: flex;
    flex-direction: row;
}

.contact-confirm__image {
    width: 61px;
    margin-right: 20px;
}

.contact-confirm__image img {
    display: block;
    max-width: 100%;
    height: auto;
    transform: translateY(-3px);
}

.contact-confirm__contact {
    width: 400px;
}

.contact-confirm__status {
    width: calc(100% - 481px);
    text-align: right;
}

.contact-confirm__contact h4 {
    letter-spacing: 0.44px;
    margin-bottom: 14px;
}

.contact-confirm__contact p {
    color: #848484;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 0.15px;
    display: block;
    padding-left: 3px;
    margin: 0 0 18px 0;
}

.phone-to-confirm {
    font-size: 25px;
    line-height: 31px;
    letter-spacing: 0.5px;
    color: #1b214a;
    margin-bottom: 20px;
}

.phone-to-confirm span {
    color: #848484;
}

.contact-confirm__contact input.phone-confirm-input {
    margin: 0 2px 30px 2px;
    width: 144px;
    height: 53px;
    text-align: center;
    font-size: 32px;
    line-height: 31px;
    letter-spacing: 4.48px;
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    color: #1b214a;
}

.contact-confirm__contact input.phone-confirm-input::-moz-placeholder {
    font-weight: 100;
    color: #a5a5a5;
}

.contact-confirm__contact input.phone-confirm-input::-webkit-input-placeholder {
    font-weight: 100;
    color: #a5a5a5;
}

.contact-confirm__contact input.phone-confirm-input::-ms-input-placeholder {
    font-weight: 100;
    color: #a5a5a5;
}

.contact-confirm__status span {
    color: #a5a5a5;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 0.15px;
    display: inline-block;
    vertical-align: top;
    margin: 0 15px 0 0;
    transition: opacity 300ms;
    opacity: 0;
    transform: translateY(-2px);
}

.contact-confirm__status.is-unconfirmed span {
    opacity: 1;
}

.contact-confirm__status i {
    display: inline-block;
    vertical-align: top;
    width: 25px;
    height: 25px;
    transform: translateY(-5px);
    background: url('../img/icons/icon-checked-ca.svg') no-repeat center;
}

.contact-confirm__status.is-unconfirmed i {
    background: url('../img/icons/icon-checked-c.svg') no-repeat center;
}

.email-confirm-wrap .contact-confirm__image img {
    transform: translate(-11px, 3px);
}

.email-to-confirm {
    font-size: 23px;
    line-height: 31px;
    letter-spacing: 0.46px;
    color: #1b214a;
    display: block;
    padding-left: 3px;
    margin: 0 0 16px 0;
}

.email-confirm-wrap .contact-confirm__contact p {
    margin-bottom: 15px;
}

.confirm-checkbox-wrapper input {
    opacity: 0;
    pointer-events: none;
}

.confirm-checkbox-wrapper label {
    cursor: pointer;
    position: relative;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 0.15px;
    color: #848484;
    padding: 0 0 0 35px;
}

.confirm-checkbox-wrapper label:before,
.confirm-checkbox-wrapper label:after {
    content: '';
    position: absolute;
    box-sizing: border-box;
}

.confirm-checkbox-wrapper label:before {
    left: 2px;
    top: -3px;
    width: 22px;
    height: 22px;
    border: 1px solid #d9d9d9;
    border-radius: 6px;
}

.confirm-checkbox-wrapper label:after {
    transition: opacity 300ms;
    width: 12px;
    height: 12px;
    border-radius: 4px;
    background: #2b388f;
    left: 7px;
    top: 2px;
    opacity: 0;
}

.confirm-checkbox-wrapper label.is-checked:after {
    opacity: 1;
}

.complete-booking {
    max-width: 770px;
    margin: 0 auto 71px auto;
    box-sizing: border-box;
    text-align: center;
    display: block;
    background: #33b92d;
    position: relative;
    min-height: 64px;
    border-radius: 32px;
    font-size: 21px;
    line-height: 26px;
    font-weight: 500;
    color: #ffffff;
    transition: background 300ms;
    padding: 19px 20px 19px 20px;
}

.complete-booking:hover {
    background: #139d0d;
}

.complete-booking:before {
    content: '';
    width: calc(100% - 23px);
    height: 100%;
    position: absolute;
    top: 0;
    left: 10px;
    pointer-events: none;
    transition: opacity 300ms;
    border-radius: 32px;
    box-shadow: 0px 3px 15px rgba(63, 195, 57, 0.32);
}

.complete-booking.is-disabled {
    background: #d4d9de;
    pointer-events: none;
}

.complete-booking.is-disabled:before {
    opacity: 0;
}

/* ---------- Footer ---------- */
footer#main-footer {
    background: #ffffff;
}

footer#main-footer .container {
    display: flex;
    justify-content: space-between;
    padding: 52px 0 50px 0;
}

.footer-left {
    transform: translateY(-1px);
}

.footer-left a {
    line-height: 26px;
    color: #1b214a;
}

.footer-left a i {
    display: inline-block;
    vertical-align: baseline;
    margin-right: 9px;
}

.footer-left a.footer-contact--email {
    padding-right: 21px;
}

.footer-left a.footer-contact--email {
    font-size: 18px;
}

.footer-left a.footer-contact--email i {
    width: 20px;
    height: 15px;
    transform: translateY(1px);
    background: url('../img/icons/icon-email.svg') no-repeat center;
}

.footer-left a.footer-contact--phone {
    transform: translateY(-1px);
    font-size: 19px;
}

.footer-left a.footer-contact--phone i {
    width: 21px;
    height: 21px;
    transform: translateY(3px);
    margin-right: 8px;
    background: url('../img/icons/icon-phone.svg') no-repeat center;
}

.footer-left a.footer-contact--phone span {
    color: #f6921e;
}

.footer-copyright {
    color: #727272;
    font-size: 16px;
    line-height: 26px;
}

/* Back to Top */
a.back-to-top {
    width: 50px;
    height: 50px;
    background: #f6921e;
    border-radius: 50%;
    box-shadow: 0px 3px 16px rgba(246, 146, 30, 0.31);
    position: fixed;
    right: 56px;
    bottom: 56px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 300ms, background 300ms;
    z-index: 9999;
}

a.back-to-top.is-shown {
    opacity: 1;
    pointer-events: auto;
}

a.back-to-top:hover {
    background: #e28314;
}

a.back-to-top:before {
    content: '';
    width: 15px;
    height: 9px;
    background: url('../img/icons/icon-b2t.svg') no-repeat 100% center;
    position: absolute;
    left: 18px;
    top: 20px;
}

/* ---------- Invoice Page ---------- */
body.invoice-page:before,
body.invoice-page:after {
    top: 0;
}

body.invoice-page .content-invoice-wrap {
    padding: 20px 0 240px 0;
}

/* ==================
   --  TRAVELDESK  --
   ================== */
main#main {
    transition: transform 0.5s;
    position: relative;
    background: #f5f6fa;
    z-index: 1;
}

main#main:before,
main#main:after {
    content: '';
    width: 486px;
    height: 486px;
    pointer-events: none;
    position: absolute;
    top: 112px;
}

main#main:before {
    background: url('../img/bg_left.png') no-repeat top right;
    width: 346px;
    left: 0;
}

main#main:after {
    background: url('../img/bg_right.png') no-repeat top left;
    width: 398px;
    right: 0;
}

/* HEADER 
   ------ */
.traveldesk-main-header {
    background: #ffffff;
    position: relative;
    z-index: 99;
}

.traveldesk-main-header * {
    box-sizing: border-box;
}

.header-inner {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 28px 0 24px 0;
    position: relative;
}

.header-with-menu .header-inner {
    padding-bottom: 27px;
}

.header-mobile-toggler {
    display: none;
}

/* --- Left Part --- */
.traveldesk-main-header .header-inner--left {
    display: flex;
    flex-direction: row;
    width: 100%;
}

.traveldesk-main-header .header-main-logo {
    width: 261px;
    max-width: 261px;
    padding: 2px 0 0 0;
}

.traveldesk-main-header .header-main-logo img {
    display: block;
    max-width: 100%;
    height: auto;
}

.traveldesk-main-header .header-select-city-wrap {
    width: 100%;
    max-width: 532px;
    margin-right: 0;
}

.traveldesk-main-header .header-select-city-wrap .search-block__item--location {
    border: 1px solid #e7e9ed;
    border-radius: 8px;
    padding: 9px 0 3px 14px;
}

.traveldesk-main-header .header-select-city-wrap .search-block__item--location .input-wrap--select {
    width: calc(100% - 79px);
    max-width: calc(100% - 79px);
}

.traveldesk-main-header .search-block__item span,
.traveldesk-main-header div.custom_select_wrapper div.custom_select {
    font-size: 16px;
}

.traveldesk-main-header .search-block__item span {
    margin-right: 9px;
    transform: translateY(-1px);
}

.traveldesk-main-header .search-block__item--location .custom_select_wrapper,
.traveldesk-main-header .search-block__item--location select {
    width: 100%;
}

.traveldesk-main-header .header-select-city-wrap .search-block__item--location i.search-icon--location {
    transform: translateY(4px);
    margin-right: 5px;
}

.traveldesk-main-header .header-select-city-wrap .custom_select_wrapper ul.select-options {
    left: -75px;
    top: calc(100% + 25px);
}

/* --- Header Search --- */
.header-search-wrap {
    padding-top: 7px;
    margin-right: 31px;
}

.header-search-button {
    width: 23px;
    height: 23px;
    display: block;
    position: relative;
}

.header-search-button:before,
.header-search-button:after {
    content: '';
    width: 23px;
    height: 23px;
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    transition: opacity 0.3s;
}

.header-search-button:before {
    background: url('../img/ui/icon-header--search.svg') no-repeat center;
}

.header-search-button:after {
    opacity: 0;
    background: url('../img/ui/icon-header--search-close.png') no-repeat center;
}

.search-shown .header-search-button:before {
    opacity: 0;
}

.search-shown .header-search-button:after {
    opacity: 1;
}

.header-search-form {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    box-sizing: border-box;
    padding: 13px 0 0 35px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s;
}

.header-search-form input {
    border: none;
    background: #ffffff;
    width: 100%;
    padding: 0 0 0 0;
    box-sizing: border-box;
    font-size: 18px;
    line-height: 26px;
    color: #848484;
    font-weight: 400;
    font-family: 'Cabin', sans-serif;
}

.search-shown .header-search-form {
    opacity: 1;
    pointer-events: auto;
}

.search-shown .main-navigation>ul {
    opacity: 0;
    pointer-events: none;
}

/* --- Header Navigation --- */
.mobile-navigation-toggler {
    display: none;
    transition: opacity 0.3s;
}

.search-shown .mobile-navigation-toggler {
    opacity: 0;
    pointer-events: none;
}

.main-navigation {
    padding: 15px 0 0 54px;
    position: relative;
    width: 100%;
}

.main-navigation * {
    box-sizing: border-box;
}

.main-navigation ul {
    padding: 0;
    margin: 0;
}

.main-navigation ul li {
    padding: 0;
    margin: 0;
    list-style: none;
}

.main-navigation>ul.main-menu {
    display: flex;
    transition: opacity 0.3s;
}

.main-navigation>ul.main-menu li {
    position: relative;
}

.main-navigation>ul.main-menu>li {
    margin-left: 40px;
}

.main-navigation>ul.main-menu>li:before {
    content: '';
    width: 100%;
    height: 2px;
    background: #1b214a;
    display: block;
    position: absolute;
    left: 0;
    bottom: -33px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s;
}

.main-navigation>ul.main-menu>li:hover:before {
    opacity: 1;
}

.main-navigation>ul.main-menu>li:first-child {
    margin: 0;
}

.main-navigation>ul.main-menu>li>a {
    color: #1b214a;
    font-size: 18px;
    line-height: 20px;
    font-weight: 700;
}

.main-navigation>ul.main-menu>li.has-children>a:after {
    content: '';
    width: 12px;
    height: 7px;
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px;
    transform: translateY(0px);
    background: url('../img/ui/icon-menu-dropdown.svg') no-repeat center;
}

.main-navigation ul.sub-menu {
    position: absolute;
    pointer-events: none;
    opacity: 0;
    padding: 14px 0 14px 0;
    background: #ffffff;
    border-radius: 4px;
    box-shadow: 0 3px 26px rgba(208, 208, 208, 0.16);
    width: 249px;
    transition: opacity 0.2s;
}

.main-navigation ul.sub-menu>li>a {
    color: #1b214a;
    font-size: 17px;
    line-height: 20px;
    font-weight: 500;
    padding: 13px 25px 13px 25px;
    display: block;
    position: relative;
}

.main-navigation ul.sub-menu>li:hover>a,
.main-navigation ul.sub-menu>li.is-active>a {
    color: #2b388f;
}

.main-navigation ul.sub-menu>li.has-children>a:after {
    content: '';
    position: absolute;
    right: 24px;
    top: 18px;
    width: 7px;
    height: 12px;
    background: url('../img/ui/icon-menu-dropside.svg') no-repeat center;
}

.main-navigation>ul.main-menu>li>ul.sub-menu {
    top: 61px;
}

.main-navigation>ul.main-menu>li>ul.sub-menu:before {
    content: '';
    width: 100%;
    height: 39px;
    top: -39px;
    background: transparent;
    display: block;
    position: absolute;
}

.main-navigation>ul.main-menu>li>ul.sub-menu>li>ul.sub-menu {
    top: -13px;
    left: 255px;
}

.main-navigation>ul.main-menu>li>ul.sub-menu>li>ul.sub-menu:before {
    content: '';
    display: block;
    position: absolute;
    width: 6px;
    height: 100%;
    left: -6px;
    top: 0;
    background: transparent;
}

.main-navigation>ul.main-menu li.has-children:hover>ul.sub-menu {
    opacity: 1;
    pointer-events: auto;
}

/* --- Right Part --- */
.traveldesk-main-header .header-inner--right {
    padding: 3px 0 0 35px;
    display: flex;
    justify-content: flex-end;
}

.header-select-lang-wrap {
    padding: 6px 0 0 0;
}

.header-select-currency-wrap {
    padding: 8px 0 0 0;
}

.traveldesk-main-header .header-select-lang,
.traveldesk-main-header .header-select-currency {
    position: relative;
    cursor: pointer;
    white-space: nowrap;
}

.traveldesk-main-header .header-select-lang:after,
.traveldesk-main-header .header-select-currency:after {
    content: '';
    width: 12px;
    height: 7px;
    display: inline-block;
    vertical-align: middle;
    background: url(../img/travel-icons/header-icon--ddown.svg) no-repeat center;
    transform: translateY(-1px);
    margin: 0 0 0 8px;
}

.traveldesk-main-header .header-select-currency:after {
    margin-left: 12px;
}

.traveldesk-main-header .header-select-lang>i,
.traveldesk-main-header .header-select-currency>i,
.traveldesk-main-header .header-select-lang>span,
.traveldesk-main-header .header-select-currency>span {
    display: inline-block;
}

.traveldesk-main-header .header-select-lang .header-lang-label,
.traveldesk-main-header .header-select-currency .header-currency-label {
    color: #1b214a;
    font-size: 16px;
    line-height: 26px;
    font-weight: 700;
}

.traveldesk-main-header .header-select-lang i,
.traveldesk-main-header .header-select-currency i {
    width: 20px;
    height: 20px;
    transform: translateY(5px);
    margin: 0 0 0 9px;
}

.traveldesk-main-header .header-select-lang li i {
    margin: 0 9px 0 0;
}

.traveldesk-main-header .header-select-lang i.header-lang--en {
    background: url('../img/flag/lang-en.svg') no-repeat center;
}

.traveldesk-main-header .header-select-lang i.header-lang--ru {
    background: url('../img/flag/lang-ru.svg') no-repeat center;
}

.traveldesk-main-header .header-select-lang i.header-lang--de {
    background: url('../img/flag/lang-de.svg') no-repeat center;
}

.traveldesk-main-header .header-select-lang>ul,
.traveldesk-main-header .header-select-currency>ul {
    position: absolute;
    top: calc(100% + 9px);
    right: auto;
    left: 0;
    z-index: 888;
    margin: 0;
    padding: 18px 0 18px 0;
    text-align: left;
    border: none;
    white-space: nowrap;
    z-index: 5;
    width: auto;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.07);
    max-height: 50vh;
    overflow-y: auto;
    transition: opacity 0.3s;
    pointer-events: none;
    opacity: 0;
}

.traveldesk-main-header .header-select-lang.list-active>ul,
.traveldesk-main-header .header-select-currency.list-active>ul {
    opacity: 1;
    pointer-events: auto;
}

.traveldesk-main-header .header-select-lang>ul li,
.traveldesk-main-header .header-select-currency>ul li {
    margin: 0;
    font-weight: 500;
    font-size: 17px;
    line-height: 28px;
    letter-spacing: 0.085px;
    font-weight: 400;
    color: #a5a5a5;
    width: 100%;
    box-sizing: border-box;
    padding: 5px 55px 5px 55px;
    position: relative;
    transition: color 300ms, background 300ms;
    list-style: none;
    padding-left: 21px;
    padding-right: 21px;
    cursor: pointer;
    display: block;
    position: relative;
}

.traveldesk-main-header .header-select-lang>ul li.is-selected,
.traveldesk-main-header .header-select-currency>ul li.is-selected,
.traveldesk-main-header .header-select-lang>ul li:hover,
.traveldesk-main-header .header-select-currency>ul li:hover {
    color: #33b92d;
}

.traveldesk-main-header .header-select-lang>ul li i {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: top;
}

.traveldesk-main-header .header-select-currency {
    margin: 0 0 0 26px;
}

.header-account-wrap {
    position: relative;
    margin-left: 29px;
}

.header-account-wrap>a {
    padding: 10px 19px 10px 12px;
    background: #33b92d;
    color: #fff;
    font-size: 13px;
    line-height: 20px;
    font-weight: 500;
    height: 40px;
    border-radius: 20px;
    white-space: nowrap;
    display: block;
    box-shadow: 0 3px 10px rgba(51, 185, 45, 0.2);
    transition: background 0.3s;
}

.header-account-wrap>a i {
    width: 17px;
    height: 16px;
    background: url('../img/travel-icons/header-icon--login-w.svg') no-repeat center;
    display: inline-block;
    vertical-align: middle;
    margin: 0 9px 0 0;
    transform: translateY(-2px);
}

.header-account-wrap>a:hover {
    background: #139d0d;
}

.header-account-menu-wrap {
    position: absolute;
    right: 34px;
    top: 100%;
    padding-top: 13px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s;
}

.header-account-wrap:hover .header-account-menu-wrap {
    pointer-events: auto;
    opacity: 1;
}

.header-account-menu-wrap ul {
    background: #fff;
    box-shadow: 0 3px 26px rgba(0, 0, 0, 0.06);
    border-radius: 4px;
    padding: 26px 36px 30px 36px;
    margin: 0;
    width: 241px;
}

.header-account-menu-wrap ul li {
    list-style: none;
    padding: 5px 0;
    margin: 0;
}

.header-account-menu-wrap ul li a {
    color: #1b214a;
    font-size: 16px;
    line-height: 26px;
}

.header-account-menu-wrap ul li i {
    display: inline-block;
    width: 22px;
    height: 17px;
    margin: 0;
}

.header-account-menu-wrap ul li i.header-account-item--profile {
    background: url('../img/travel-icons/icon-header--profile.svg') no-repeat left center;
    transform: translateY(2px);
}

.header-account-menu-wrap ul li i.header-account-item--bookings {
    background: url('../img/travel-icons/icon-header--ticket.svg') no-repeat left center;
    transform: translate(-2px, 3px);
}

.header-account-menu-wrap ul li i.header-account-item--help {
    height: 17px;
    background: url('../img/travel-icons/icon-header--info.svg') no-repeat left center;
    transform: translateY(4px);
}

/* IMAGE SLIDER
   ------------ */
.one-image-slider-wrap {
    position: relative;
    margin: 30px 0;
}

.one-image-slider-wrap>a {
    width: 50px;
    height: 50px;
    position: absolute;
    top: 50%;
    margin-top: -25px;
    background: #ffffff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 15;
}

.one-image-slider-wrap>a:before {
    content: '';
    width: 14px;
    height: 10px;
    display: block;
    margin: auto;
    background: url('../img/travel-icons/slider-arrow--left.svg') no-repeat center;
}

.one-image-slider-wrap>a.ois-button-prev {
    left: 31px;
}

.one-image-slider-wrap>a.ois-button-prev:before {
    transform: translate(1px, 1px);
}

.one-image-slider-wrap>a.ois-button-next {
    right: 31px;
}

.one-image-slider-wrap>a.ois-button-next:before {
    transform: rotate(180deg) translate(1px, 1px);
}

.one-image-slider-wrap .owl-theme .owl-nav.disabled+.owl-dots {
    margin: 0;
    position: absolute;
    z-index: 12;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    padding-bottom: 33px;
}

.one-image-slider-wrap .owl-theme .owl-dots .owl-dot {
    width: 25px;
}

.one-image-slider-wrap .owl-theme .owl-dots .owl-dot span {
    width: 10px;
    height: 10px;
    box-sizing: border-box;
    border: 2px solid #ffffff;
    background: rgba(255, 255, 255, 0);
    transition: background 0.3s;
}

.one-image-slider-wrap .owl-theme .owl-dots .owl-dot.active:hover span,
.one-image-slider-wrap .owl-theme .owl-dots .owl-dot.active span {
    background: rgba(255, 255, 255, 1);
}

.one-image-slider-wrap .owl-theme .owl-dots .owl-dot:hover span {
    background: rgba(255, 255, 255, 0.5);
}

.one-image-slider {
    overflow: hidden;
    border-radius: 4px;
}

/* TRAVEL TICKET CONTENT
   --------------------- */
.content-with-sidebar {
    display: flex;
    flex-direction: row;
}

.content-with-sidebar .content-part {
    width: calc(100% - 400px);
}

.content-with-sidebar .sidebar-part {
    width: 370px;
    margin-left: 30px;
}

.content-block-wrap {
    background: #ffffff;
    border-radius: 4px;
    box-sizing: border-box;
    padding: 20px 30px 20px 30px;
    margin: 0 0 30px 0;
}

.content-block-wrap>h3 {
    font-size: 27px;
    line-height: 1;
    color: #1b214a;
    font-weight: 600;
    margin: 21px 0 0 0;
}

/* --- Description Block --- */
.content-description-block {
    padding: 20px 0 18px 0;
}

.content-description-block p:last-child {
    margin-bottom: 0;
}

.content-description-block .category-label {
    font-size: 16px;
    line-height: 20px;
    color: #f6921e;
    font-weight: 500;
    display: block;
    margin: 0 0 20px 0;
}

.content-description-block h2 {
    letter-spacing: 0;
    color: #1b214a;
    font-size: 31px;
    line-height: 1;
    margin: 0 0 16px 0;
    font-weight: 500;
}

.content-description-block .travel-lang-label {
    font-size: 17px;
    line-height: 1.5;
    color: #a5a5a5;
    margin: 0 0 17px 0;
}

.content-description-block .travel-lang-label span {
    color: #1b214a;
}

.content-description-block .travel-lang-label i {
    width: 22px;
    height: 15px;
    display: inline-block;
    vertical-align: top;
    margin-left: 6px;
    transform: translateY(4px);
}

i.travel-lang-flag--gb {
    background: url('../img/flag-lang/flag-gb.png') no-repeat 0 0;
    background-size: contain;
}

.content-description-block p {
    font-weight: 400;
    color: #848484;
    font-size: 16px;
    line-height: 24px;
    margin: 0 0 24px 0;
}

/* --- Itinerary Block --- */
.content-itinerary-wrap {
    padding-top: 41px;
}

.content-itinerary-wrap h3 {
    margin: 0 0 15px 0;
}

ul.tour-itinerary-list {
    padding: 0;
    margin: 0 0 13px 0;
}

ul.tour-itinerary-list li {
    padding: 5px 0;
    margin: 0;
    list-style: none;
    font-size: 16px;
    line-height: 25px;
}

ul.tour-itinerary-list li ul {
    padding: 8px 0 0 34px;
    margin: 0 0 -3px 0;
}

ul.tour-itinerary-list li ul li {
    padding: 5px 0 5px 19px;
    margin: 0;
    font-size: 15px;
    line-height: 20px;
    position: relative;
}

ul.tour-itinerary-list li ul li:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 12px;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    background: #f6921e;
}

.tour-itinerary-list i {
    display: inline-block;
    vertical-align: top;
}

.tour-itinerary-list i.tour-itinerary--transfer {
    width: 16px;
    height: 12px;
    margin: 0 13px 0 1px;
    transform: translateY(6px);
    background: url('../img/travel-icons/icon--transfer.svg') no-repeat center;
}

.tour-itinerary-list i.tour-itinerary--shipping {
    width: 19px;
    height: 19px;
    margin: 0 11px 0 0;
    transform: translate(-1px, 3px);
    background: url('../img/travel-icons/icon--ship.svg') no-repeat center;
}

/* --- Tickets Block --- */
.content-tickets-list {
    padding: 26px 0 4px 0;
}

.content-tickets-item {
    border-top: 1px solid #e6e8ed;
    padding: 25px 0 25px 0;
}

/* Item Head */
.content-tickets-item .cti__head {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.cti__head .cti__image {
    width: 118px;
    margin-right: 22px;
}

.cti__head .cti__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 50%;
}

.cti__head .cti__title {
    width: 385px;
    margin-right: 31px;
}

.cti__head .cti__title h4 {
    font-size: 23px;
    line-height: 31px;
    color: #1b214a;
    font-weight: 400;
    margin: 0 0 10px 0;
}

.cti__head .cti__title h4 a {
    text-decoration: none;
    color: #1b214a;
}

.cti__head .cti__title-meta {
    color: #848484;
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
}

.cti__head .cti__title-meta span {
    display: inline-block;
    font-size: 21px;
    line-height: 26px;
    letter-spacing: -0.42px;
    font-weight: 500;
    color: #2b388f;
    margin-right: 6px;
    margin-left: 14px;
}

.cti__head .cti__title-meta span:first-child {
    margin-left: 0;
}

.cti__head .cti__button {
    width: calc(100% - 556px);
}

.cti__head .cti__button a {
    display: block;
    width: 100%;
    height: 50px;
    box-sizing: border-box;
    border-radius: 25px;
    text-align: center;
    padding: 13px 10px 0 14px;
    color: #ffffff;
    background: #33b92d;
    font-size: 15px;
    line-height: 26px;
    font-weight: 500;
    position: relative;
    transition: background 300ms;
}

.cti__head .cti__button a:before {
    content: '';
    border-radius: 25px;
    position: absolute;
    width: calc(100% - 10px);
    left: 5px;
    top: 0;
    height: 100%;
    pointer-events: none;
    box-shadow: 0px 3px 15px rgba(63, 195, 57, 0.23);
    transition: box-shadow 300ms;
}

.cti__head .cti__button a:hover {
    background: #139d0d;
}

.ticket-table-button {
    width: 190px;
}

.cti__head .cti__button a i,
.i__ticket__button {
    width: 18px;
    height: 18px;
    font-weight: 500;
    display: inline-block;
    vertical-align: top;
    display: inline-block;
    background: url(../img/icons/icon-ticket-button.svg) no-repeat center;
    margin: 0 5px 0 0;
    transform: translateY(3px);
}

.cti__head .cti__button a.is-active {
    background: #f6921e;
}

.cti__head .cti__button a.is-active:before {
    box-shadow: 0 3px 15px rgba(246, 146, 30, 0.23);
}

.cti__head .cti__button a.is-active:hover {
    background: #e28314;
}

/* Item Body */
.cti__body {
    display: none;
}

.cti__body-inner {
    display: flex;
    margin: 0 -12px;
    padding: 25px 0 0 0;
}

.cti__body-inner>div {
    width: calc(50% - 24px);
    margin: 0 12px;
    border: 1px solid #e9ebef;
    background: #fcfdfe;
    box-sizing: border-box;
    padding: 32px 25px 14px 29px;
    border-radius: 8px;
}

.cti__body-inner>div>h4 {
    font-weight: 600;
    margin: 0 0 36px 0;
}

.cti__body-inner>div.cti__body--right>h4 {
    margin-bottom: 23px;
}

.cti__body span[data-tipsy] {
    position: relative;
    cursor: default;
}

.cti__body span[data-tipsy]:before {
    content: attr(data-tipsy);
    position: absolute;
    left: calc(100% + 8px);
    top: -11px;
    color: #a5a5a5;
    font-size: 12px;
    line-height: 26px;
    font-weight: 400;
    padding: 0 0 0 0;
    background: #ffffff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.08);
    border-radius: 4px;
    white-space: nowrap;
    padding: 3px 10px 2px 10px;
    min-width: 111px;
    text-align: left;
    pointer-events: none;
    transition: opacity 0.3s;
    opacity: 0;
}

.cti__body span[data-tipsy]:hover:before {
    opacity: 1;
}

.cti__body .not-qty a {
    width: 33px;
}

.cti__body .not-qty input {
    width: 32px;
}

.cti__body .not-label del {
    margin-left: 6px;
}

.cti__body .not-label {
    min-width: 106px;
    max-width: 106px;
}

.cti__body .not-label span {
    margin-left: 0;
    line-height: 18px;
}

.cti__body .select-ticket-checkout {
    height: 54px;
    width: 100%;
    display: block;
    padding: 14px 15px 14px 15px;
    font-size: 17px;
    line-height: 26px;
    font-weight: 500;
    margin: 0;
    border-radius: 27px;
}

.cti__body .select-ticket-checkout:before {
    border-radius: 27px;
}

.cti__body .select-ticket-checkout i {
    display: inline-block;
    vertical-align: top;
    width: 18px;
    height: 18px;
    background: url('../img/travel-icons/icon--calendar.svg') no-repeat center;
    margin: 0 17px 0 0;
    transform: translateY(4px);
}

.cti__body .ticket-select-time {
    margin-bottom: 34px;
}

.cti__body .ticket-select-date {
    margin-bottom: 36px;
}

.cti__body .not-summary {
    padding-bottom: 13px;
}

/* Load More */
.cti-load-more {
    border-top: 1px solid #e6e8ed;
    padding: 25px 0 0 0;
    text-align: center;
}

.cti-load-more a {
    display: block;
    margin: 0 auto;
    width: 39px;
    height: 39px;
    border-radius: 50%;
    background: #f5f6fa;
    position: relative;
}

.cti-load-more a:before,
.cti-load-more a:after {
    content: '';
    width: 14px;
    height: 2px;
    background: #1b214a;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -1px 0 0 -6px;
    transform-origin: 50% 50%;
}

.cti-load-more a:after {
    transform: rotate(90deg);
}

/* --- FAQ Block --- */
.content-faq-block {
    padding: 0 0 2px 0;
}

.content-faq-item {
    position: relative;
    padding: 20px 0 11px 0;
    cursor: pointer;
}

.content-faq-item:before {
    content: '';
    width: calc(100% - 27px);
    height: 1px;
    position: absolute;
    display: block;
    left: 27px;
    top: 0;
    background: #e5e7eb;
}

.content-faq-item:first-child:before {
    display: none;
}

.content-faq-item .content-faq-label {
    position: absolute;
    left: 0;
    top: 0;
    font-size: 14px;
    line-height: 24px;
    font-weight: 600;
    letter-spacing: 0.55px;
    color: #1b214a;
    transition: color 0.3s;
    transform: translateY(-1px);
}

.content-faq-item.is-active .content-faq-label {
    color: #f6921e;
}

.content-faq-item--q,
.content-faq-item--a {
    padding: 0 0 0 27px;
    position: relative;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
}

.content-faq-item--q {
    color: #1b214a;
    margin: 0 0 6px 0;
}

.content-faq-item--q .content-faq-label {}

.content-faq-item--a {
    color: #848484;
    margin-bottom: 2px;
}

/* --- Terms Block --- */
.content-terms-block {
    padding: 12px 0 9px 0;
}

ul.content-terms-list {
    padding: 0;
    margin: 0;
}

ul.content-terms-list li {
    padding: 8px 0 9px 21px;
    margin: 0;
    list-style: none;
    position: relative;
    font-size: 16px;
    line-height: 24px;
    color: #848484;
    font-weight: 400;
}

ul.content-terms-list li:before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #dcdcdc;
    position: absolute;
    left: 0;
    top: 17px;
}

/* --- Recent Tours --- */
.recent-tours-wrap {
    padding: 36px 0 19px 0;
}

.recent-tours-wrap h2 {
    font-weight: 500;
    margin: 0 0 32px 0;
}

/* --- Sidebar --- */
aside.sidebar-part {
    position: relative;
    margin-top: -30px;
    padding-bottom: 30px;
}

.widget-ticket-wrap {
    position: -webkit-sticky;
    /* Safari */
    position: sticky;
    top: 0;
    padding-top: 30px;
}

.widget-ticket {
    color: #ffffff;
    overflow: hidden;
    border-radius: 4px;
    background: #2637aa url('../img/travel-ticket/bg-ticket-widget.png') no-repeat top right;
    padding: 25px 36px 21px 30px;
}

.widget-ticket>span {
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.32px;
    font-weight: 500;
    display: block;
    color: #ffffff;
    margin: 0 0 12px 0;
}

.widget-ticket .widget-ticket__prices {
    display: flex;
    margin: 0 0 24px 0;
}

.widget-ticket .widget-ticket__prices>div {
    font-size: 30px;
    line-height: 1;
    font-weight: 500;
}

.widget-ticket .widget-ticket__prices>div>span {
    color: #b7bcdd;
    font-size: 16px;
    line-height: 19px;
    font-weight: 400;
    display: block;
    margin: 5px 0 0 0;
}

.widget-ticket .widget-ticket__prices .widget-ticket__prices-adult {}

.widget-ticket .widget-ticket__prices .widget-ticket__prices-child {
    margin-left: 26px;
}

.widget-ticket__seperator {
    margin: 0 -36px 14px -30px;
    position: relative;
    height: 15px;
    display: block;
    background: url('../img/travel-icons/seperator.svg') no-repeat center;
}

.widget-ticket__seperator:before,
.widget-ticket__seperator:after {
    content: '';
    position: absolute;
    top: -1px;
    width: 15px;
    height: 15px;
    background: #f5f6fa;
    border-radius: 50%;
}

.widget-ticket__seperator:before {
    left: -7px;
}

.widget-ticket__seperator:after {
    right: -7px;
}

a.widget-ticket__button {
    display: block;
    height: 54px;
    box-sizing: border-box;
    border-radius: 27px;
    text-align: center;
    padding: 15px 20px 0 10px;
    color: #ffffff;
    background: #33b92d;
    font-size: 19px;
    line-height: 26px;
    font-weight: 400;
    position: relative;
    transition: background 300ms;
}

a.widget-ticket__button:before {
    content: '';
    position: absolute;
    width: calc(100% - 10px);
    left: 5px;
    top: 0;
    height: 100%;
    pointer-events: none;
    border-radius: 27px;
    box-shadow: 0px 3px 15px rgba(63, 195, 57, 0.23);
    transition: box-shadow 300ms;
}

a.widget-ticket__button:hover {
    background: #139d0d;
}

a.widget-ticket__button i {
    width: 21px;
    height: 21px;
    display: inline-block;
    vertical-align: top;
    display: inline-block;
    background: url('../img/travel-icons/button-icon--ticket2.svg') no-repeat center;
    margin: 0 6px 0 0;
    transform: translateY(0px);
}

.widget-ticket-fixed {
    display: none;
}

/* TRAVELDESK CATALOG 
   ------------------ */

/* --- Search Bar --- */
.tour-search-bar {
    display: flex;
    padding: 18px 27px 15px 27px;
    background: #ffffff;
    box-shadow: 0 4px 36px rgba(0, 0, 0, 0.06);
    border-radius: 12px;
    margin: 39px 0;
    position: relative;
    z-index: 88;
}

.search-block__item .input-wrap--select:after {
    pointer-events: none;
}

.tour-search-bar .search-block__item.search-block__item--location {
    width: calc(51% - 71px);
    margin: 0;
    border: none;
    transform: translateY(1px);
}

.tour-search-bar .search-block__item.search-block__item--location .input-wrap--select {
    width: calc(100% - 66px);
}

.tour-search-bar .search-block__item.search-block__item--location .custom_select_wrapper,
.tour-search-bar .search-block__item.search-block__item--location .input-wrap--select select {
    width: 100%;
}

.tour-search-bar .search-block__item.search-block__item--language {
    width: calc(49% - 71px);
    margin: 0;
    border: none;
    transform: translateY(1px);
}

.tour-search-bar .search-block__item.search-block__item--language .input-wrap--select {
    width: calc(100% - 111px);
}

.tour-search-bar .search-block__item.search-block__item--language .custom_select_wrapper,
.tour-search-bar .search-block__item.search-block__item--language .input-wrap--select select {
    width: 100%;
}

.tour-search-bar .search-block__item-divider {
    width: 1px;
    height: 39px;
    background: #e2e2e2;
    display: block;
    margin: 0 27px 0 33px;
    transform: translate(-1px, 4px);
}

.tour-search-bar .search-block__item:after {
    display: none;
}

.tour-search-bar .search-block__button-wrap {
    width: 49px;
    margin-left: 33px;
}

.tour-search-bar .search-block__button-wrap a.search-block--submit {
    width: 49px;
    height: 49px;
    padding: 14px 13px 13px 14px;
    border-radius: 50%;
}

.content-catalog-wrap {
    padding-bottom: 97px;
}

.traveldesk-body a.tickets-load-more {
    background: #3849bb;
    border-radius: 27px;
    height: 54px;
    box-shadow: 0 5px 10px 3849bb;
}

.traveldesk-body a.tickets-load-more:before {
    display: none;
}

.traveldesk-body a.tickets-load-more:hover {
    background: #1b214a;
}

/* --- Hero Block --- */
.hero-section {
    position: relative;
    z-index: 10;
}

.hero-section .hero-image {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100vh;
    max-height: 717px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.hero-section .hero-image:before {
    content: '';
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
    background: rgba(4, 8, 32, 0.37);
}

.hero-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100vh;
    max-height: 717px;
}

.hero-section .container {
    position: relative;
    z-index: 5;
    transform: translateY(-11px);
}

.hero-content>h1,
.hero-content>span {
    text-align: center;
    display: block;
    color: #ffffff;
}

.hero-content>h1 {
    font-weight: 700;
    font-size: 43px;
    line-height: 43px;
    letter-spacing: -1.29px;
    margin: 0 0 15px 0;
}

.hero-content>span {
    font-size: 23px;
    line-height: 36px;
    letter-spacing: -0.23px;
    font-weight: 500;
    opacity: 0.8;
}

.hero-section .tour-search-bar-wrap {
    padding-top: 28px;
}

.hero-section .tour-search-bar {
    margin: 0;
    border-radius: 0;
    background: none;
    justify-content: center;
}

.hero-section .search-block__item {
    height: 64px;
    border-radius: 32px;
    background: #ffffff;
    padding: 0 0 0 0;
}

.hero-section .tour-search-bar .search-block__item.search-block__item--location,
.hero-section .tour-search-bar .search-block__item.search-block__item--language {
    width: 50%;
    padding: 20px 25px 0 29px;
    margin-right: 10px;
}

.hero-section .tour-search-bar .search-block__item.search-block__item--location {
    max-width: 410px;
}

.hero-section .tour-search-bar .search-block__item.search-block__item--language {
    max-width: 306px;
    padding-right: 33px;
    padding-left: 31px;
}

.hero-section .tour-search-bar .search-block__button-wrap {
    width: 64px;
    height: 64px;
    margin: 0;
    transform: translateY(1px);
}

.hero-section .tour-search-bar .search-block__button-wrap .search-block--submit i.search-icon {
    transform: translateY(-1px);
}

.hero-section .tour-search-bar .search-block__button-wrap a.search-block--submit {
    width: 64px;
    height: 64px;
    padding: 22px 21px 21px 22px;
}

/* --- Categories List --- */
.travel-categories-grid {
    position: relative;
    z-index: 33;
    margin-top: -81px;
    display: flex;
    margin: -70px -15px 82px -15px;
}

.travel-categories-grid>div {
    margin: 0 15px;
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    transition: transform 0.3s;
}

.travel-categories-grid>div:hover {
    transform: translateY(-10px);
}

.travel-categories-grid>div:before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 3;
    display: block;
    background: linear-gradient(180deg, rgba(1, 9, 23, 0), rgba(1, 9, 23, 1));
    opacity: 0.3;
}

.travel-categories-grid>div>img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 12px;
}

.travel-categories-grid>div>a {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: block;
    z-index: 7;
}

.travel-categories-grid>div>h4 {
    position: absolute;
    width: 100%;
    top: 50%;
    transform: translateY(-50%);
    text-align: center;
    color: #ffffff;
    font-size: 33px;
    line-height: 33px;
    font-weight: 600;
    z-index: 5;
}

.travel-categories-grid>div>span {
    position: absolute;
    bottom: 32px;
    width: 100%;
    text-align: center;
    display: block;
    font-size: 19px;
    line-height: 20px;
    font-weight: 600;
    color: #ffffff;
    z-index: 5;
}

.travel-categories-grid.travel-categories-2cols>div {
    width: calc(50% - 30px);
}

.travel-categories-grid.travel-categories-3cols>div {
    width: calc(33.33% - 30px);
}

.travel-categories-grid.travel-categories-4cols>div {
    width: calc(25% - 30px);
}

/* --- Home Tickets Listing --- */
.content-catalog-wrap .page-title-wrap {
    margin: 0 0 45px 0;
}

.page-title-wrap h2 {
    font-size: 38px;
    line-height: 38px;
    color: #1b214a;
    font-weight: 500;
    margin: 0 0 17px 0;
}

.content-catalog-wrap .page-title-wrap>span {
    display: block;
    font-size: 20px;
    line-height: 24px;
    margin: 0 0 0 0;
    color: #1b214a;
    font-weight: 400;
    padding: 0;
}

/* --- Foter with Widgets --- */
footer#widgets-footer {
    background: #12152e;
    padding: 76px 0 42px 0;
    color: rgba(255, 255, 255, 0.57);
    margin: -10px 0 0 0;
    overflow: hidden;
}

.footer-widgets-wrap {
    display: flex;
    margin: 0 0 38px 0;
}

.footer-widgets-wrap .footer-widget-item {
    margin: 0 0 0 0;
    width: 33.33%;
}

.footer-widget-item h5 {
    font-size: 22px;
    line-height: 26px;
    color: #ffffff;
    font-weight: 400;
    margin: 0;
}

.footer-widget-item ul {
    padding: 0;
    margin: 0;
}

.footer-widget-item ul li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.footer-widget-item a {
    color: #ffffff;
}

.footer-widget-item a span {
    color: #f6921e;
}

/* Widget About */
.footer-widgets-wrap .footer-widget-item.footer-widget-item--about {
    max-width: 375px;
    min-width: 375px;
    margin-right: 120px;
}

.footer-widget-item.footer-widget-item--about h5 {
    margin-bottom: 28px;
}

.footer-widget-item--about p {
    font-size: 16px;
    line-height: 24px;
    color: rgba(255, 255, 255, 0.57);
    margin-bottom: 20px;
}

/* Widget Contacts */
.footer-widgets-wrap .footer-widget-item.footer-widget-item--contacts {
    max-width: 333px;
    min-width: 333px;
    margin-right: 60px;
}

.footer-widget-item.footer-widget-item--contacts h5 {
    margin: 0 0 28px 0;
}

.footer-widget-item.footer-widget-item--contacts a {
    font-size: 18px;
    line-height: 26px;
    color: #ffffff;
    display: inline-block;
}

.footer-widget-item.footer-widget-item--contacts a:before {
    content: '';
    display: inline-block;
    vertical-align: top;
}

.footer-widget-item.footer-widget-item--contacts li.footer-contacts--email {
    margin-bottom: 17px;
}

.footer-widget-item.footer-widget-item--contacts li.footer-contacts--email a:before {
    width: 20px;
    height: 15px;
    background: url('../img/footer/footer-email.svg') no-repeat center;
    margin: 0 10px 0 0;
    transform: translateY(4px);
}

.footer-widget-item.footer-widget-item--contacts li.footer-contacts--phone a {
    font-size: 19px;
    line-height: 26px;
}

.footer-widget-item.footer-widget-item--contacts li.footer-contacts--phone a:before {
    width: 21px;
    height: 21px;
    background: url('../img/footer/footer-phone.svg') no-repeat center;
    margin: 0 9px 0 0;
    transform: translateY(1px);
}

/* Widget Socials */
.footer-widget-item.footer-widget-item--socials h5 {
    margin: 0 0 32px 0;
}

.footer-widget-item.footer-widget-item--socials li {
    display: inline-block;
    margin: 0 1px 0 0;
}

.footer-widget-item.footer-widget-item--socials a {
    width: 47px;
    height: 47px;
    box-sizing: border-box;
    border: 2px solid #252846;
    border-radius: 50%;
    display: block;
    position: relative;
}

.footer-widget-item.footer-widget-item--socials a:before {
    content: '';
    display: block;
    position: absolute;
}

.footer-widget-item.footer-widget-item--socials a.footer-socials--facebook:before {
    background: url('../img/footer/footer-facebook.svg') no-repeat center;
    width: 9px;
    height: 17px;
    left: 18px;
    top: 13px;
}

.footer-widget-item.footer-widget-item--socials a.footer-socials--twitter:before {
    background: url('../img/footer/footer-twitter.svg') no-repeat center;
    width: 16px;
    height: 13px;
    left: 14px;
    top: 15px;
}

.footer-widget-item.footer-widget-item--socials a.footer-socials--youtube:before {
    background: url('../img/footer/footer-youtube.svg') no-repeat center;
    width: 17px;
    height: 12px;
    left: 13px;
    top: 16px;
}

.footer-widget-item.footer-widget-item--socials a.footer-socials--instagram:before {
    background: url('../img/footer/footer-instagram.svg') no-repeat center;
    width: 17px;
    height: 17px;
    left: 13px;
    top: 13px;
}

/* --- Copyright --- */
footer#widgets-footer .footer-copyright {
    font-size: 16px;
    line-height: 26px;
    color: rgba(255, 255, 255, 0.57);
}

/* MY BOOKINGS 
   ----------- */
.content-wrap-padding {
    padding: 70px 0 80px 0;
}

.page-title-wrap {
    margin: 0 0 36px 0;
    padding: 22px 0 0 0;
}

.page-title-wrap h1 {
    margin: 0 0 12px 0;
    font-size: 31px;
    line-height: 31px;
    font-weight: 500;
}

.page-title-wrap>span {
    color: #808080;
    font-size: 16px;
    line-height: 28px;
    display: block;
    padding-top: 3px;
}

.page-title-breadcrumb {
    padding: 0;
    margin: 0;
}

.page-title-breadcrumb li {
    list-style: none;
    margin: 0;
    padding: 0;
    color: #a8aaaf;
    display: inline-block;
}

.page-title-breadcrumb li:after {
    content: '';
    width: 4px;
    height: 4px;
    border-radius: 2px;
    background: #b9bcc9;
    display: inline-block;
    vertical-align: middle;
    margin: 0 3px 0 6px;
}

.page-title-breadcrumb li:last-child:after {
    display: none;
}

.page-title-breadcrumb li a {
    color: #a8aaaf;
    font-size: 15px;
    line-height: 20px;
}

.page-title-breadcrumb li a:hover {
    color: #1b214a;
}

/* --- My Bookings Table --- */
table.my-booking-table {
    margin: 0 0 40px 0;
}

.table-wrapper table.my-booking-table thead th {
    background: #1b214a;
    border-color: #494d6e;
    font-size: 18px;
    letter-spacing: 0.36px;
    box-sizing: border-box;
}

.table-wrapper table.my-booking-table thead th:nth-child(1),
.table-wrapper table.my-booking-table tbody>tr>td:nth-child(1) {
    width: 124px;
    padding-right: 25px;
}

.table-wrapper table.my-booking-table thead th:nth-child(2),
.table-wrapper table.my-booking-table thead th:nth-child(3),
.table-wrapper table.my-booking-table tbody>tr>td:nth-child(2),
.table-wrapper table.my-booking-table tbody>tr>td:nth-child(3) {
    padding-left: 23px;
}

.table-wrapper table.my-booking-table thead th:nth-child(3),
.table-wrapper table.my-booking-table tbody>tr>td:nth-child(3) {
    max-width: 143px;
}

.table-wrapper table.my-booking-table thead th:nth-child(4),
.table-wrapper table.my-booking-table tbody>tr>td:nth-child(4) {
    padding-left: 25px;
    width: 272px;
}

.table-wrapper table.my-booking-table thead th:nth-child(5) {
    padding-left: 30px;
}

.table-wrapper table.my-booking-table tbody>tr:first-child>td:nth-child(5) {
    padding: 15px 29px 3px 18px;
}

.table-wrapper table.my-booking-table tbody>tr:last-child>td:nth-child(5) {
    padding: 5px 29px 5px 18px;
}

.table-wrapper table.my-booking-table tbody>tr>td:nth-child(5) {
    padding: 5px 29px 5px 18px;
}

.table-wrapper table.my-booking-table thead th:nth-child(5),
.table-wrapper table.my-booking-table tbody>tr>td:nth-child(5) {
    width: 165px;
}

.table-wrapper table.my-booking-table tbody>tr:nth-child(even).is-selected>td {
    background: #f2f3f7;
}

.table-wrapper table.my-booking-table tbody>tr:nth-child(even)>td {
    background: #fafafc;
}

.table-wrapper table.my-booking-table tbody>tr>td {
    color: #9496a3;
    font-size: 16px;
    letter-spacing: 0;
    box-sizing: border-box;
    vertical-align: top;
}

.table-wrapper table.my-booking-table tbody>tr>td a {
    color: #1b214a;
}

.table-wrapper table.my-booking-table tbody>tr>td span {
    color: #9496a3;
}

.table-wrapper table.my-booking-table tbody>tr>td span.is-complated {
    color: #33b92d;
}

.table-wrapper table.my-booking-table tbody>tr>td span.is-dark {
    color: #1b214a;
}

.table-wrapper table.my-booking-table tbody>tr>td a.table-booking-button {
    border-radius: 20px;
    height: 39px;
    width: 100%;
    text-align: center;
    padding: 8px 11px 0 11px;
    color: #76777d;
    font-size: 13px;
    line-height: 20px;
    font-weight: 600;
    letter-spacing: 0.39px;
    border: 1px solid #e9eaef;
    display: block;
    box-sizing: border-box;
    background: #ffffff;
    transition: color 0.3s, border 0.3s, background-color 0.3s;
    max-width: 119px;
    white-space: nowrap;
}

.table-wrapper table.my-booking-table tbody>tr>td a.table-booking-button.is-active {
    background-color: #f6921f;
    color: #ffffff;
    border-color: #f6921f;
}

.table-wrapper table.my-booking-table i {
    width: 13px;
    height: 13px;
    background: url('../img/icons/icon-calendar.svg') no-repeat center;
    display: inline-block;
    margin-right: 6px;
}

.table-wrapper table.my-booking-table tbody>tr>td:nth-child(4) span:first-child:after {
    content: '';
    width: 4px;
    height: 4px;
    background: #b9bcc9;
    border-radius: 2px;
    display: inline-block;
    vertical-align: middle;
    margin: 0 5px 0 9px;
    transform: translateY(-1px);
}

.table-wrapper table.my-booking-table tbody>tr:first-child>td {
    padding-top: 24px;
    padding-bottom: 11px;
}

.table-wrapper table.my-booking-table tbody>tr>td:first-child {
    white-space: nowrap;
}

.table-wrapper table.my-booking-table tbody>tr>td:nth-child(2) {
    min-width: 160px;
}

/* --- Select Slot --- */
span.select-slot-item-label {
    display: none;
    color: #848484;
    font-size: 13px;
    line-height: 20px;
}

.select-slot-wrap {
    background: #ffffff;
    border-radius: 6px;
    padding: 36px 30px 29px 30px;
    margin: -6px 0 18px 0;
    box-sizing: border-box;
}

.select-slot-wrap * {
    box-sizing: border-box;
}

.select-slot-wrap h4 {
    margin: 0 0 22px -2px;
    font-weight: 500;
}

.select-slot-wrap h4 span {
    display: block;
    color: #808080;
    font-size: 15px;
    line-height: 28px;
    margin: 5px 0 0 0;
}

.select-slot-table-head,
.select-slot-table-item {
    display: flex;
}

.select-slot-table-head {
    border-top: 1px solid #e9eaef;
    padding: 18px 0 15px 0;
}

.select-slot-table-head>div {
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.32px;
}

.select-slot-table-head div:nth-child(1) {
    width: 275px;
}

.select-slot-table-head div:nth-child(2) {
    width: 330px;
}

.select-slot-table-head div:nth-child(3) {
    width: 318px;
}

.select-slot-table-item {
    border: 1px solid #ececee;
    background: #ffffff;
    border-radius: 4px;
    padding: 0 0 0 22px;
    margin: 0 0 10px 0;
    transition: background-color 0.3s, border-color 0.3s;
}

.select-slot-table-item>div {
    padding: 16px 0 12px 0;
}

/* Date */
.select-slot-item--date {
    width: 250px;
    color: #9496a3;
    font-size: 16px;
    line-height: 20px;
    transition: color 0.3s;
}

.select-slot-item--date svg {
    display: inline-block;
    margin-right: 6px;
    transform: translateY(1px);
}

.select-slot-item--date svg path {
    transition: fill 0.3s;
    fill: #a8aaaf;
}

.select-slot-table-item.is-selected {
    background-color: rgba(51, 185, 45, 0.06);
    border-color: #bde2bc;
}

.select-slot-table-item.is-selected svg path {
    fill: #1b214a;
}

.select-slot-table-item.is-selected .select-slot-item--date {
    color: #1b214a;
}

/* Time */
.select-slot-table-item>div.select-slot-item--time {
    width: 330px;
    padding-left: 3px;
}

.select-slot-table-item>div.select-slot-item--time span:not(.select-slot-item-label) {
    display: inline-block;
    vertical-align: top;
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
}

span.select-slot-item--time-start:after {
    content: '……….';
    font-size: 15px;
    letter-spacing: 0;
    color: #e0e0e0;
    font-weight: 500;
    display: inline-block;
    vertical-align: top;
    margin: 0 11px 0 15px;
    transform: translateY(-5px);
}

/* Price */
.select-slot-table-item>div.select-slot-item--price {
    width: 298px;
    font-size: 16px;
    line-height: 20px;
    font-weight: 600;
    color: #1b214a;
}

/* Action */
.select-slot-table-item>div.select-slot-item--action {
    border-left: 1px solid #ececee;
    padding-left: 25px;
    padding-top: 14px;
    transition: border-color 0.2s;
    cursor: pointer;
}

.select-slot-table-item.is-selected>div.select-slot-item--action {
    border-color: #b8e0bd;
}

.select-slot-table-item>div.select-slot-item--action span.select-slot-item--action-select,
.select-slot-table-item>div.select-slot-item--action span.select-slot-item--action-selected {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
}

.select-slot-table-item>div.select-slot-item--action .select-slot-item--action-select,
.select-slot-table-item.is-selected>div.select-slot-item--action .select-slot-item--action-selected {
    display: inline-block;
}

.select-slot-table-item>div.select-slot-item--action .select-slot-item--action-selected,
.select-slot-table-item.is-selected>div.select-slot-item--action .select-slot-item--action-select {
    display: none;
}

.select-slot-table-item>div.select-slot-item--action i {
    width: 13px;
    height: 13px;
    display: inline-block;
    border-radius: 50%;
    position: relative;
    background: rgba(51, 185, 45, 0);
    margin-right: 13px;
    transform: translateY(1px);
    transition: background-color 0.2s;
}

.select-slot-table-item>div.select-slot-item--action i:after {
    content: '';
    position: absolute;
    left: -3px;
    top: -3px;
    right: -3px;
    bottom: -3px;
    border-radius: 50%;
    border: 2px solid #1b214a;
    transition: border-color 0.2s;
}

.select-slot-table-item.is-selected>div.select-slot-item--action i {
    background: rgba(51, 185, 45, 1);
}

.select-slot-table-item.is-selected>div.select-slot-item--action i:after {
    border: 2px solid #33b92d;
}

.select-slot-table-item.is-selected>div.select-slot-item--action span {
    color: #1b214a;
}

.select-slot-table-item.is-selected>div.select-slot-item--action span {
    color: #33b92d;
}

/* Block Footer */
.select-slot-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0 0 0;
}

.select-slot-footer div:first-child a {
    color: #2e2e2e;
    font-size: 15px;
    line-height: 26px;
    font-weight: 500;
}

.select-slot-footer div:first-child {
    transform: translateY(2px);
}

.select-slot-footer div:first-child a i {
    width: 14px;
    height: 10px;
    display: inline-block;
    vertical-align: top;
    margin: 0 11px 0 1px;
    transform: translateY(8px);
    background: url('../img/icons/icon-arrow-right--return.svg') no-repeat center;
}

.button {
    padding: 14px 59px 0 63px;
    font-size: 16px;
    line-height: 26px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0;
    color: #ffffff;
    font-weight: 400;
    background: #2b388f;
    min-height: 54px;
    border-radius: 27px;
    display: block;
    transition: background 0.3s;
    text-align: center;
}

.button:hover {
    background: #1b214a;
}

/* EDIT BOOKING
   ------------ */
.edit-booking-page * {
    box-sizing: border-box;
}

.edit-booking-page .page-title-wrap {
    margin-bottom: 32px;
}

.edit-booking-page h1 {
    margin-left: -3px;
    margin-bottom: 9px;
}

.edit-booking-page ul.page-title-breadcrumb {
    margin-left: -1px;
}

.edit-booking-page .page-title-breadcrumb li,
.edit-booking-page .page-title-breadcrumb li a {
    font-size: 13px;
    font-weight: 400;
}

.edit-booking-page .page-title-breadcrumb li:after {
    margin: 0 3px 0 4px;
    transform: translateY(-1px);
}

.edit-booking-page h2 {
    font-weight: 500;
}

.edit-booking-page>h2 {
    margin-bottom: 35px;
}

.edit-booking-page h2 span {
    display: block;
    font-size: 15px;
    line-height: 20px;
    color: #808080;
    margin: 17px 0 0 0;
}

/* --- Booking Summary --- */
.booking-summary-wrap {
    display: flex;
    vertical-align: middle;
    margin-bottom: 47px;
}

.booking-summary-wrap h4 {
    font-weight: 700;
    letter-spacing: -0.44px;
}

.booking-summary-wrap h4 span {
    font-weight: 400;
}

/* Edit Booking Table */
.booking-summary-wrap .table-wrapper table {
    box-shadow: 0 3px 20px rgba(0, 0, 0, 0.03);
}

.booking-summary-wrap .table-wrapper table thead th {
    background: #ffffff;
    border-color: #dddfe6;
    border-bottom: 1px solid #e9eaef;
    padding: 29px 25px 23px 25px;
}

.booking-summary-wrap .table-wrapper table thead th:first-child {
    width: 313px;
}

.booking-summary-wrap .table-wrapper table thead th h4 {
    margin: 0;
}

.booking-summary-wrap .table-wrapper table tbody tr td {
    background: #ffffff;
    border-color: #e9eaef;
    font-size: 16px;
    letter-spacing: 0.32px;
    padding: 13px 25px 11px 25px;
}

.booking-summary-wrap .table-wrapper table tbody tr td:first-child {
    color: rgba(27, 33, 74, 0.7);
}

.booking-summary-wrap .table-wrapper table tbody tr:first-child td:last-child,
.booking-summary-wrap .table-wrapper table tbody tr td:last-child {
    padding-left: 27px;
    padding-right: 27px;
}

.booking-summary-wrap .table-wrapper table tbody tr:first-child td {
    padding: 13px 25px 11px 25px;
}

.booking-summary-wrap .table-wrapper table tbody tr:last-child td {
    padding-bottom: 20px;
}

.booking-summary-wrap .table-wrapper table tbody tr td:last-child {
    background: #fafafd;
}

.booking-summary-wrap .table-wrapper table tbody tr:last-child td:last-child {
    background: #ffffff;
}

.booking-summary-wrap .table-wrapper table ul {
    padding: 0;
    margin: 0;
}

.booking-summary-wrap .table-wrapper table ul li {
    padding: 0;
    margin: 0 0 0 19px;
    list-style: none;
    display: inline-block;
    position: relative;
}

.booking-summary-wrap .table-wrapper table ul li:before {
    content: '';
    width: 3px;
    height: 3px;
    background: #1b214a;
    position: absolute;
    left: -14px;
    top: 10px;
    border-radius: 50%;
}

.booking-summary-wrap .table-wrapper table ul li:first-child {
    margin-left: 0;
}

.booking-summary-wrap .table-wrapper table ul li:first-child:before {
    display: none;
}

/* Summary Cost */
.booking-summary-wrap .booking-summary-table-wrap {
    width: 769px;
    margin-right: 36px;
}

.booking-summary-wrap .booking-summary-cost-wrap {
    width: 364px;
    padding-bottom: 9px;
    position: relative;
}

.booking-summary-cost h4 {
    margin-bottom: 22px;
}

.booking-summary-wrap .booking-summary-cost-wrap .booking-summary-cost {
    background: #ffffff;
    box-shadow: 0 3px 20px rgba(0, 0, 0, 0.03);
    position: relative;
    border-radius: 6px 6px 0 0;
    padding: 29px 33px 3px 31px;
}

.booking-summary-wrap .booking-summary-cost-wrap .booking-summary-cost:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -8px;
    display: block;
    width: 100%;
    height: 9px;
    background: url('../img/bg-triangle.svg') repeat-x 11px 0;
}

.booking-summary-cost--item {
    border-top: 1px solid #e9eaef;
    display: flex;
    padding: 16px 0 13px 0;
}

.booking-summary-cost--item.has-black-border {
    border-color: #000000;
}

.booking-summary-cost--item span {
    display: block;
}

.booking-summary-cost--item span:first-child {
    color: #878787;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.32px;
    width: 203px;
}

.booking-summary-cost--item.is-total span:first-child {
    color: #22274f;
}

.booking-summary-cost--item span:last-child {
    color: #1b214a;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.32px;
}

.booking-summary-cost--item.is-total span:last-child {
    font-weight: 700;
    transform: translateY(2px);
}

/* Edit Bookings Tools */
.booking-summary-tools {
    display: flex;
    justify-content: space-between;
    margin: 0 0 66px 0;
}

.booking-summary-tools .button {
    font-size: 16px;
    line-height: 26px;
    font-weight: 500;
}

.booking-summary-tools--download {
    display: flex;
}

.booking-summary-tools--download a {
    margin-left: 9px;
}

.booking-summary-tools--download a i {
    display: inline-block;
    vertical-align: top;
}

.booking-summary-tools .button.button--voucher {
    background: #33b92d;
    padding-left: 27px;
    padding-right: 33px;
}

.booking-summary-tools .button.button--voucher i {
    width: 23px;
    height: 23px;
    background: url(../img/icons/icon-download.svg) no-repeat 100% center;
    margin: 0 10px 0 0;
    transform: translateY(1px);
}

.booking-summary-tools .button.button--voucher:hover {
    background: #139d0d;
}

.booking-summary-tools .button.button--ticket {
    padding-left: 26px;
    padding-right: 32px;
}

.booking-summary-tools .button.button--ticket i {
    width: 23px;
    height: 23px;
    background: url(../img/icons/icon-ticket-active.svg) no-repeat 100% center;
    margin: 0 10px 0 0;
    transform: translateY(1px);
}

.booking-summary-tools .button.button--invoice {
    background: #22274f;
    padding-left: 33px;
    padding-right: 37px;
}

.booking-summary-tools .button.button--invoice i {
    width: 22px;
    height: 23px;
    background: url(../img/icons/icon-accept.svg) no-repeat 100% center;
    margin: 0 5px 0 0;
    transform: translateY(2px);
}

.booking-summary-tools .button.button--invoice:hover {
    background: #111329;
}

/* --- Client Support --- */
.client-support-block-wrap {
    background: #ffffff;
    border-radius: 6px;
    box-shadow: 0 3px 20px rgba(0, 0, 0, 0.03);
    display: flex;
    align-items: stretch;
    margin: 0 0 77px 0;
}

.client-support-chat {
    width: 805px;
}

.client-support-chat-list {
    width: calc(100% - 805px);
    border-left: 1px solid #e9eaef;
}

.client-support-message-wrap {
    border-top: 1px solid #e9eaef;
    padding: 32px 30px 33px 30px;
}

.client-support-block-wrap ol,
.client-support-block-wrap ul {
    padding: 0;
}

.client-support-block-wrap ol li,
.client-support-block-wrap ul li {
    list-style: none;
}

/* Chat */
.client-support-chat ol {
    padding: 31px 26px 35px 38px;
    margin: 0;
}

.client-support-chat ol li {
    margin: 25px 0 0 0;
    display: flex;
    align-items: stretch;
}

.client-support-chat ol li:first-child {
    margin: 0;
}

.support-chat-item span.message-item--avatar {
    min-width: 43px;
    max-width: 43px;
    height: 43px;
    margin: 0 20px 0 0;
    display: flex;
    align-items: flex-start;
}

.support-chat-item span.message-item--avatar img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 50%;
}

.support-chat-item .message-item--text {
    flex-grow: 3;
    font-size: 15px;
    line-height: 25px;
    border-radius: 18px;
    padding: 14px 20px 11px 20px;
}

.support-chat-item.is-support .message-item--text {
    background: #f5f6fa;
    color: #848484;
}

.support-chat-item.is-client {
    padding: 0 2px 0 66px;
    flex-direction: row-reverse;
}

.support-chat-item.is-client .message-item--text {
    background: #2b388f;
    color: #ffffff;
}

.support-chat-item span.message-item--date {
    display: block;
    white-space: nowrap;
    color: #969696;
    font-size: 13px;
    letter-spacing: 0.26px;
    line-height: 20px;
    display: flex;
    align-items: center;
    flex-grow: 1;
    margin-left: 18px;
    transform: translateY(1px);
}

.support-chat-item.is-client span.message-item--date {
    margin-left: 0;
    margin-right: 13px;
}

.support-chat-item.is-info {
    padding-left: 63px;
}

.support-chat-item.is-info .message-item--text {
    background: #dcf2db;
    color: #2d3359;
    border-radius: 25px;
    display: inline-block;
    width: auto;
    flex-grow: 1;
}

.support-chat-item.is-info .message-item--text i {
    width: 19px;
    height: 19px;
    background: url('../img/icons/icon-info2.svg') no-repeat center;
    display: inline-block;
    vertical-align: middle;
    margin: 0 11px 0 -3px;
    transform: translateY(-2px);
}

.support-chat-item.is-info .message-item--date {
    flex-grow: 10;
}

/* Chat List */
.client-support-chat-list ul {
    padding: 31px 31px 31px 34px;
    margin: 0;
}

.client-support-chat-list ul li {
    position: relative;
    padding-right: 46px;
    border-bottom: 1px solid #ebecf1;
    margin: 0 0 16px 0;
}

.client-support-chat-list ul li span {
    position: absolute;
    width: 26px;
    height: 26px;
    background: #2b388f;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #ffffff;
    font-size: 12px;
    line-height: 20px;
    border-radius: 50%;
    font-weight: 500;
    right: 3px;
    top: -1px;
}

.client-support-chat-list ul li:first-child span {
    top: 1px;
}

.client-support-chat-list ul li .chat-list-item {
    display: flex;
}

.client-support-chat-list ul li .chat-list-item img {
    display: block;
    width: 43px;
    height: 43px;
    border-radius: 50%;
    margin-right: 11px;
}

.client-support-chat-list ul li .chat-list-item .chat-list-item-text {
    font-size: 13px;
    line-height: 20px;
    color: #969696;
    letter-spacing: 0.26px;
    padding-top: 4px;
    padding-bottom: 17px;
}

.client-support-chat-list ul li .chat-list-item h6 {
    font-size: 16px;
    line-height: 20px;
    font-weight: 600;
    letter-spacing: 0.32px;
    color: #2d3359;
    margin: 0 0 1px 0;
}

/* Send Message Box */
form.client-support-write-message {
    position: relative;
}

form.client-support-write-message input {
    border-color: #dadbde;
    background: rgba(245, 246, 250, 0.32);
    border-radius: 27px;
    min-height: 54px;
    color: #969696;
    padding: 16px 75px 16px 27px;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: 0.3px;
}

form.client-support-write-message a {
    width: 44px;
    height: 44px;
    background: #33b92d;
    border-radius: 50%;
    position: absolute;
    right: 4px;
    top: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background 0.3s;
}

form.client-support-write-message a i {
    width: 24px;
    height: 24px;
    background: url('../img/icons/icon-paper-plane.svg') no-repeat center;
    transform: rotate(45deg) translate(-1px, 1px);
}

form.client-support-write-message a:hover {
    background: #139d0d;
}

/* Add Review Block */
.add-review-wrap {
    background: #ffffff;
    box-shadow: 0 3px 20px rgba(0, 0, 0, 0.03);
    border-radius: 6px;
    padding: 45px 31px 44px 31px;
    margin: -7px 0 25px 0;
}

.add-review-wrap span {
    display: inline-block;
    vertical-align: top;
}

.add-review-item {
    margin: 0 0 19px 0;
}

.add-review-item span.add-review-item--label {
    width: 192px;
    color: #1b214a;
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
}

.add-review-wrap span.add-review-item--stars {
    width: 110px;
    height: 18px;
    overflow: hidden;
    display: inline-flex;
    flex-direction: row;
    background: url('../img/icons/icon-star--grey.svg') repeat-x top;
    transform: translateY(1px);
}

.add-review-item--stars>span {
    width: 22px;
    height: 18px;
    background: url('../img/icons/icon-star--yellow.svg') no-repeat top;
    opacity: 0;
    cursor: pointer;
    transition: opacity 0.2s;
}

.add-review-item--stars[data-rating='1']>span[data-star='1'] {
    opacity: 1;
}

.add-review-item--stars[data-rating='2']>span[data-star='1'],
.add-review-item--stars[data-rating='2']>span[data-star='2'] {
    opacity: 1;
}

.add-review-item--stars[data-rating='3']>span[data-star='1'],
.add-review-item--stars[data-rating='3']>span[data-star='2'],
.add-review-item--stars[data-rating='3']>span[data-star='3'] {
    opacity: 1;
}

.add-review-item--stars[data-rating='4']>span:not([data-star='5']) {
    opacity: 1;
}

.add-review-item--stars[data-rating='5']>span {
    opacity: 1;
}

.add-review-wrap h4 {
    padding-top: 16px;
    font-size: 22px;
    line-height: 28px;
    font-weight: 500;
    margin: 0 0 17px 0;
}

.add-review-wrap textarea {
    border: 1px solid #edeef2;
    background: #fcfcfe;
    color: #a5a5a5;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0;
    border-radius: 10px;
    padding: 19px 22px 19px 22px;
    height: 131px;
    margin: 0 0 21px 0;
    resize: none;
}

.add-review-wrap .button.review-form-submit {
    display: inline-block;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0;
    padding: 14px 39px 0 42px;
}

/* ELEMENTS 
   -------- */
section.element-section {
    border-bottom: 1px solid #d3d3d3;
    padding: 0 0 25px 0;
    margin: 0 0 81px 0;
}

section.element-section>h2.section-title {
    font-size: 40px;
    line-height: 40px;
    font-weight: 700;
    color: #000000;
    padding: 0 0 26px 0;
    display: block;
    border-bottom: 2px solid #000000;
    margin: 0 0 69px 0;
}

h6.with-overhead {
    color: #000000;
    font-size: 19px;
    line-height: 24px;
    font-weight: 500;
    margin: 0 0 48px 0;
}

h6.with-overhead span {
    display: block;
    color: #aeaeae;
    font-size: 19px;
    line-height: 24px;
    margin: 0 0 10px 0;
}

/* --- GRID --- */
div.row-wrap {
    display: flex;
    flex-wrap: nowrap;
    margin: 0 -15px;
}

div.row-wrap.small-gap {
    margin: 0 -7px;
}

div.row-wrap>.col-25,
div.row-wrap>.col-33,
div.row-wrap>.col-50,
div.row-wrap>.col-66,
div.row-wrap>.col-100 {
    margin: 0 15px;
    box-sizing: border-box;
}

div.row-wrap.small-gap>.col-25,
div.row-wrap.small-gap>.col-33,
div.row-wrap.small-gap>.col-50,
div.row-wrap.small-gap>.col-66,
div.row-wrap.small-gap>.col-100 {
    margin: 0 7px;
}

div.row-wrap>.col-25 {
    width: calc(25% - 30px);
}

div.row-wrap>.col-33 {
    width: calc(33.33% - 30px);
}

div.row-wrap>.col-50 {
    width: calc(50% - 30px);
}

div.row-wrap>.col-66 {
    width: calc(66.66% - 30px);
}

div.row-wrap>.col-100 {
    width: calc(100% - 30px);
}

div.row-wrap.small-gap>.col-25 {
    width: calc(25% - 14px);
}

div.row-wrap.small-gap>.col-33 {
    width: calc(33.33% - 14px);
}

div.row-wrap.small-gap>.col-50 {
    width: calc(50% - 14px);
}

div.row-wrap.small-gap>.col-66 {
    width: calc(66.66% - 14px);
}

div.row-wrap.small-gap>.col-100 {
    width: calc(100% - 14px);
}

section.grid-section .row-wrap {
    margin-bottom: 30px;
}

section.grid-section .row-wrap>div {
    padding: 20px;
    text-align: center;
    background: #ebebeb;
}

/* --- TYPOGRAPHY --- */
h1,
h2,
h3,
h4,
h5 {
    font-weight: 500;
    color: #1b214a;
}

h1 {
    margin: 0 0 39px 0;
}

h2 {
    margin: 0 0 41px 0;
}

h3 {
    margin: 0 0 43px 0;
}

h4 {
    margin: 0 0 43px 0;
}

h5 {
    margin: 0 0 43px 0;
}

body p {
    color: #848484;
    font-size: 16px;
    line-height: 24px;
    margin: 0 0 24px 0;
}

/* Old pages support */
h2.checkout-title {
    font-weight: 400;
}

.checkout-box-wrap.checkout-box-cancellation h4 {
    margin-bottom: 22px;
    font-weight: 400;
}

.select-ticket-item--detail h4,
.ticket-item__title h3,
h1.ticket-title,
.contact-confirm__contact h4,
.confirm-box-contacts h3,
.confirm-contact-info--content h5,
.payment-description h5 {
    font-weight: 400;
}

.get-ticket-wrap p {
    margin-bottom: 20px;
}

.content-catalog-wrap>.page-title-wrap {
    padding-top: 0;
}

h1.ticket-title {
    margin-bottom: 38px;
}

/* --- COLORS --- */
.colors-list {
    padding: 4px 0 41px 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
}

.colors-list li {
    padding: 0;
    margin: 0 30px 0 0;
    text-align: center;
    list-style: none;
    width: 93px;
}

.colors-list li>div {
    width: 93px;
    height: 93px;
    border-radius: 6px;
    display: block;
    margin: 0 0 15px 0;
}

.colors-list li>span {
    display: block;
    font-size: 17px;
}

.bg-green {
    background-color: #33b92d;
}

.bg-blue {
    background-color: #2b388f;
}

.bg-orange {
    background-color: #f6921e;
}

.bg-navy {
    background-color: #1b214a;
}

.bg-grey {
    background-color: #848484;
}

.bg-lgrey {
    background-color: #a5a5a5;
}

.bg-lgrey2 {
    background-color: #e6e6e6;
}

.color-green {
    color: #33b92d;
}

.color-blue {
    color: #2b388f;
}

.color-orange {
    color: #f6921e;
}

.color-navy {
    color: #1b214a;
}

.color-grey {
    color: #848484;
}

.color-lgrey {
    color: #a5a5a5;
}

/* --- BUTTONS --- */
.buttons-list {
    margin: -50px 0 0 -20px;
    display: flex;
    flex-wrap: wrap;
}

.buttons-list a {
    margin: 50px 0 0 20px;
}

.button {
    display: inline-block;
    box-sizing: border-box;
    font-weight: 500;
    font-size: 16px;
    vertical-align: top;
    max-width: 100%;
    position: relative;
    text-align: center;
    white-space: nowrap;
}

.button i {
    display: inline-block;
    vertical-align: top;
}

/* Styles and Colors */
.button.has-glow:before {
    content: '';
    width: calc(100% - 10px);
    height: 100%;
    z-index: -1;
    left: 5px;
    top: 0;
    border-radius: 27px;
    pointer-events: none;
    display: block;
    position: absolute;
}

.button.has-glow:before {
    box-shadow: 0 3px 15px rgba(43, 56, 143, 0.23);
}

.button.is-large {
    font-size: 19px;
    height: 64px;
    border-radius: 32px;
}

.button.is-large.has-glow:before {
    border-radius: 32px;
}

.button.is-small {
    font-size: 13px;
    height: 40px;
    border-radius: 20px;
    min-height: 40px;
    padding-top: 6px;
}

.button.is-green {
    background: #33b92d;
}

.button.has-glow.is-green:before {
    box-shadow: 0 3px 15px rgba(51, 185, 45, 0.23);
}

.button.is-green:hover {
    background: #139d0d;
}

.button.is-orange {
    background: #f6921e;
}

.button.has-glow.is-orange:before {
    box-shadow: 0 3px 15px rgba(246, 146, 30, 0.28);
}

.button.is-orange:hover {
    background: #e28314;
}

.button.is-white {
    background: #ffffff;
    border: 1px solid #e9eaef;
    color: #76777d;
}

.button.is-white:hover {}

.button.is-navy {
    background: #22274f;
}

.button.is-navy:hover {
    background: #111329;
}

/* Book Now */
.button.button--book-now {
    padding: 14px 32px 0 20px;
    font-size: 19px;
    width: 310px;
}

.button.button--book-now i {
    width: 23px;
    height: 23px;
    margin-right: 5px;
    transform: translateY(1px);
    background: url('../img/ui/icon-button--ticket01.svg') no-repeat center;
}

/* Load More */
.button.button--load-more {
    background: #3849bb;
    padding: 15px 43px 0 47px;
}

.button.button--load-more.has-glow:before {
    box-shadow: 0 5px 10px rgba(43, 56, 143, 0.14);
}

.button.button--load-more:hover {
    background: #1b214a;
}

.button.button--load-more i {
    width: 14px;
    height: 15px;
    margin-left: 4px;
    transform: translateY(4px);
    background: url('../img/ui/icon-button--refresh.svg') no-repeat center;
}

/* Select Ticket */
.button.button--select-ticket {
    padding: 14px 28px 0 29px;
    font-size: 17px;
}

.button.button--select-ticket i {
    width: 18px;
    height: 18px;
    margin: 0 4px 0 0;
    transform: translateY(3px);
    background: url('../img/ui/icon-button--ticket02.svg') no-repeat center;
}

/* Cancel */
.button.button--cancel {
    background: #ffffff;
    box-shadow: 0 5px 20px rgba(43, 56, 143, 0.06);
    color: #22274f;
    padding: 14px 41px 0 38px;
    transition: background 0.3s, color 0.3s;
}

.button.button--cancel i {
    width: 18px;
    height: 22px;
    margin: 0 8px 0 0;
    position: relative;
}

.button.button--cancel i:before,
.button.button--cancel i:after {
    content: '';
    width: 18px;
    height: 22px;
    transform: translateY(1px);
    position: absolute;
    left: 0;
    top: 0;
    transition: opacity 0.3s;
}

.button.button--cancel i:before {
    background: url('../img/ui/icon-button--trash.svg') no-repeat center;
}

.button.button--cancel i:after {
    background: url('../img/ui/icon-button--trash-white.svg') no-repeat center;
    opacity: 0;
}

.button.button--cancel:hover i:before {
    opacity: 0;
}

.button.button--cancel:hover i:after {
    opacity: 1;
}

.button.button--cancel:hover {
    background: #1b214a;
    color: #ffffff;
}

/* Download Voucher */
.button.button--voucher {
    padding: 14px 34px 0 29px;
}

.button.button--voucher i {
    width: 22px;
    height: 22px;
    margin: 0 8px 0 0;
    transform: translateY(1px);
    background: url('../img/ui/icon-button--download.svg') no-repeat center;
}

.button.button--voucher.is-large {
    padding: 19px 33px 0 25px;
}

.button.button--voucher.is-large i {
    margin-right: 11px;
}

/* Download Ticket */
.button.button--ticket {
    padding: 14px 32px 0 26px;
}

.button.button--ticket i {
    width: 23px;
    height: 23px;
    margin: 0 10px 0 0;
    background: url('../img/ui/icon-button--ticket03.svg') no-repeat center;
}

.button.button--ticket.is-large {
    padding: 19px 38px 0 32px;
}

.button.button--ticket.is-large i {
    margin-right: 9px;
}

/* Download Invoice */
.button.button--invoice {
    padding: 14px 38px 0 34px;
}

.button.button--invoice i {
    width: 22px;
    height: 23px;
    margin: 0 4px 0 0;
    transform: translateY(2px);
    background: url('../img/ui/icon-button--invoice.svg') no-repeat center;
}

.button.button--invoice.is-large {
    padding: 19px 36px 0 38px;
}

/* Checkout */
.button.button--checkout {
    width: 770px;
    padding: 19px 42px 0 40px;
    font-size: 21px;
    line-height: 26px;
}

/* Account */
.button.button--account {
    padding: 7px 19px 0 13px;
}

.button.button--account i {
    width: 17px;
    height: 16px;
    transform: translateY(5px);
    margin-right: 5px;
    background: url('../img/ui/icon-button--login.svg') no-repeat center;
}

/* View Tour */
.button.button--view-tour {
    letter-spacing: 0.39px;
    font-weight: 600;
    padding: 6px 30px 0 31px;
}

.button.button--view-tour.is-white {
    padding: 5px 29px 0 30px;
    transition: color 0.3s, background-color 0.3s, border-color 0.3s;
}

.button.button--view-tour.is-white:hover {
    background-color: #1b214a;
    border-color: #1b214a;
    color: #ffffff;
}

/* --- CONTACT FORM FIELDS --- */
hr {
    height: 21px;
    border: none;
    border-bottom: 1px solid #e6e6e6;
    margin: 0 0 46px 0;
}

.is-hidden {
    display: none;
}

.field-wrap {
    margin: 0 0 26px 0;
}

.field-wrap label {
    display: block;
    color: #1b214a;
    font-size: 16px;
    line-height: 19px;
    font-weight: 600;
    margin: 0 0 12px 0;
    overflow: hidden;
}

.field-wrap label.is-inline {
    display: inline-block;
    vertical-align: top;
    margin-right: 35px;
}

.field-wrap label i {
    padding: 3px;
}

.field-wrap label i.clickable:hover {
    color: #ec4210;
}

.field-wrap label span {
    color: #ec4210;
    font-weight: 600;
}

.field-wrap input[type='text'],
.field-wrap input[type='number'],
.field-wrap input[type='password'],
.field-wrap input[type='email'],
.field-wrap input[type='tel'],
.field-wrap input[type='date'],
.field-wrap input[type='time'],
.field-wrap input[type='datetime'],
.field-wrap input[type='url'],
.field-wrap-date input,
.field-wrap select,
.field-wrap textarea {
    box-sizing: border-box;
    border: 1px solid #e6e6e6;
    background: #fbfbfb;
    color: #1b214a;
    font-size: 15px;
    line-height: 20px;
    height: 50px;
    padding: 15px 15px 15px 15px;
    border-radius: 4px;
    font-family: 'Cabin', sans-serif;
    letter-spacing: 0;
    transition: border-color 0.3s, color 0.3s;
}

.field-wrap input[type='text']:focus,
.field-wrap input[type='number']:focus,
.field-wrap input[type='password']:focus,
.field-wrap input[type='email']:focus,
.field-wrap input[type='tel']:focus,
.field-wrap input[type='date']:focus,
.field-wrap input[type='time']:focus,
.field-wrap input[type='datetime']:focus,
.field-wrap input[type='url']:focus,
.field-wrap select:focus,
.field-wrap textarea:focus {
    border-color: #aeaeae;
}

.field-wrap.is-error input[type='text'],
.field-wrap.is-error input[type='number'],
.field-wrap.is-error input[type='password'],
.field-wrap.is-error input[type='email'],
.field-wrap.is-error input[type='tel'],
.field-wrap.is-error input[type='date'],
.field-wrap.is-error input[type='time'],
.field-wrap.is-error input[type='datetime'],
.field-wrap.is-error input[type='url'],
.field-wrap.is-error select,
.field-wrap.is-error textarea {
    border-color: #ec4210;
    color: #ee6138;
}

.field-wrap textarea {
    height: 111px;
    resize: none;
}

.field-wrap * {
    box-sizing: border-box;
}

.field-footer {
    display: flex;
    justify-content: space-between;
    padding: 11px 0 0 0;
}

.field-footer:empty {
    display: none;
}

.field-footer span {
    display: block;
}

span.field-description {
    color: #a5a5a5;
    font-size: 14px;
    line-height: 18px;
}

span.field-description i {
    display: inline-block;
    vertical-align: top;
    width: 11px;
    height: 14px;
    transform: translateY(2px);
    background: url('../img/ui/icon-lock.svg') no-repeat center;
    margin-right: 7px;
}

.field-state {
    font-size: 14px;
    line-height: 18px;
    color: #ec4210;
    opacity: 0;
    transition: opacity 0.3s;
}

.field-wrap.is-error .field-state {
    opacity: 1;
}

/* Email Field */
.email-field-wrap {
    position: relative;
}

.field-wrap .email-field-wrap>input {
    padding-left: 62px;
}

.email-field-wrap i {
    width: 47px;
    height: 100%;
    border-right: 1px solid #e6e6e6;
    position: absolute;
    left: 0;
    top: 0;
}

.email-field-wrap i:before {
    content: '';
    width: 17px;
    height: 13px;
    background: url('../img/ui/icon-field--email.svg') no-repeat center;
    position: absolute;
    left: 16px;
    top: 19px;
}

/* Password Field */
.password-field-wrap {
    position: relative;
}

.field-wrap label .show-password {
    float: right;
    color: #a5a5a5;
    font-size: 13px;
    line-height: 16px;
    position: relative;
    padding-left: 29px;
    font-weight: 400;
    margin-right: 1px;
    transform: translateY(1px);
}

.field-wrap label .show-password:before,
.field-wrap label .show-password:after {
    content: '';
    position: absolute;
}

.field-wrap label .show-password:before {
    width: 19px;
    height: 19px;
    box-sizing: border-box;
    border: 1px solid #e6e6e6;
    background: #fbfbfb;
    border-radius: 3px;
    left: 0;
    top: -1px;
    transition: background-color 0.3s, border-color 0.3s;
}

.field-wrap label .show-password:after {
    width: 10px;
    height: 8px;
    left: 5px;
    top: 5px;
    background: url('../img/ui/icon-check-white.svg') no-repeat center;
    opacity: 0;
    transition: opacity 0.3s;
}

.field-wrap label .show-password.is-active:before {
    background: #33b92d;
    border-color: #33b92d;
    border-radius: 4px;
}

.field-wrap label .show-password.is-active:after {
    opacity: 1;
}

.caps-state {
    position: absolute;
    right: 15px;
    top: 17px;
    text-transform: uppercase;
    font-size: 13px;
    line-height: 16px;
    letter-spacing: 0.26px;
    font-weight: 500;
    z-index: 5;
    color: #a5a5a5;
    transition: opacity 0.3s;
    opacity: 0;
}

.caps-is-on .caps-state {
    opacity: 1;
}

/* Tel Number Field */
.tel-field-wrap {
    position: relative;
}

.field-wrap .tel-field-wrap>input {
    padding-left: 82px;
    font-size: 17px;
}

.tel-code {
    position: absolute;
    left: 1px;
    top: 1px;
    height: calc(100% - 2px);
    width: 67px;
    background: #fbfbfb;
    border-right: 1px solid #e6e6e6;
    color: #1b214a;
    font-size: 17px;
    line-height: 20px;
    box-sizing: border-box;
    border-radius: 4px 0 0 4px;
    font-weight: 400;
    padding: 14px 0 0 14px;
    cursor: pointer;
}

.tel-code:before {
    content: '';
    width: 11px;
    height: 7px;
    background: url('../img/ui/icon-drop-down--black.svg') no-repeat center;
    display: block;
    position: absolute;
    right: 11px;
    top: 21px;
}

.tel-code-list {
    position: absolute;
    top: calc(100% + 7px);
    left: 0;
    width: 67px;
    z-index: 5;
    background: #ffffff;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    padding: 4px 16px 4px 16px;
    margin: 0;
    box-shadow: 0 3px 16px rgba(0, 0, 0, 0.04);
    box-sizing: border-box;
}

.tel-code-list li {
    padding: 15px 0 14px 0;
    border-bottom: 1px solid #dcdcdc;
    margin: 0;
    list-style: none;
    color: #1b214a;
    font-size: 15px;
    line-height: 20px;
    cursor: pointer;
}

.tel-code-list li:last-child {
    border: none;
}

/* Select Field */
.field-wrap .custom_select_wrapper {
    width: 100%;
    min-height: 50px;
    height: auto;
}

.field-wrap div.custom_select_wrapper div.custom_select {
    background: #fbfbfb;
    border: 1px solid #e6e6e6;
    width: 100%;
    height: 50px;
    border-radius: 4px;
    font-size: 15px;
    letter-spacing: 0;
    padding: 11px 15px 0 15px;
}

.field-wrap div.custom_select_wrapper.has-empty-value div.custom_select {
    color: #a5a5a5;
}

.field-wrap .custom_select_wrapper ul.select-options {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    width: 100%;
    background: #ffffff;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    padding: 4px 15px 4px 15px;
    margin: 0;
    box-shadow: 0 3px 16px rgba(0, 0, 0, 0.04);
    box-sizing: border-box;
}

.field-wrap .custom_select_wrapper ul.select-options li {
    padding: 15px 0 14px 0;
    border-bottom: 1px solid #dcdcdc;
    margin: 0;
    list-style: none;
    color: #1b214a;
    font-size: 15px;
    line-height: 20px;
    cursor: pointer;
}

.field-wrap .custom_select_wrapper ul.select-options li.is-inactive {
    display: none;
}

.field-wrap .custom_select_wrapper ul.select-options li[rel=''] {
    color: #a5a5a5;
}

.field-wrap .custom_select_wrapper ul.select-options li:last-child {
    border: none;
}

.field-wrap .custom_select_wrapper ul.select-options li:before {
    display: none;
}

.field-wrap .custom_select_wrapper .custom_select:before {
    content: '';
    width: 12px;
    height: 7px;
    background: url('../img/ui/icon-drop-down--black.svg') no-repeat center;
    display: block;
    position: absolute;
    right: 15px;
    top: 21px;
}

/* Multiple Select */
.field-wrap .custom_select_wrapper.is-multiple {
    cursor: default;
}

.field-wrap .custom_select_wrapper.is-multiple ul.select-options li.is-selected {
    color: #33b92d;
}

.field-wrap .custom_select_wrapper.is-multiple ul.select-options li.is-selected:after {
    content: '';
    width: 10px;
    height: 8px;
    background: url('../img/ui/icon-selected.svg') no-repeat center;
    display: block;
    position: absolute;
    right: 0px;
    top: 21px;
}

div.custom_select_result {
    display: flex;
    padding: 10px 0 0 0;
    flex-wrap: wrap;
}

div.custom_select_result span.multiple-value-placeholder {
    color: #a5a5a5;
    padding: 3px 0 0 8px;
}

div.custom_select_result span.multiple-value-item {
    height: 32px;
    background: #f1f1f1;
    margin-right: 10px;
    color: #1b214a;
    font-size: 15px;
    line-height: 18px;
    padding: 7px 12px 0 10px;
    box-sizing: border-box;
    display: flex;
    border-radius: 4px;
}

div.custom_select_result span.multiple-value-placeholder:after,
div.custom_select_result span.multiple-value-item:after {
    display: none;
}

div.custom_select_result span.multiple-value-item i {
    width: 12px;
    height: 12px;
    margin: 4px -2px 0 9px;
    background: url('../img/ui/icon-select2-cross.svg') no-repeat center;
    cursor: pointer;
}

/* File Upload Field */
.file-field-wrap {
    position: relative;
}

.custom-file-input {
    position: relative;
    display: flex;
    width: 100%;
}

.file-field-wrap>input {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    pointer-events: none;
}

.file-field-wrap span {
    display: block;
    box-sizing: border-box;
}

.custom-file-input--value {
    width: 100%;
    height: 50px;
    border: 1px solid #e6e6e6;
    background: #ffffff;
    border-radius: 4px;
    color: #1b214a;
    font-size: 15px;
    line-height: 20px;
    padding: 15px 15px 15px 15px;
}

.custom-file-input--button {
    background: #fbfbfb;
    border-left: 1px solid #e6e6e6;
    position: absolute;
    top: 1px;
    right: 1px;
    border-radius: 0 4px 4px 0;
    color: #1b214a;
    font-size: 16px;
    font-weight: 500;
    height: 48px;
    padding: 14px 38px 0 41px;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* File Drag and Drop Field */
.drop-field-wrap.half {
    width: 50%;
    display: inline-flex;
}

.drop-field-wrap {
    /* min-height: 163px; */
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-sizing: border-box;
    background: #ffffff;
    background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='4' ry='4' stroke='%23dadada' stroke-width='1' stroke-dasharray='9' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e");
    border-radius: 4px;
}

.drop-field-wrap.preview {
    background-image: none;
}

.drop-field-wrap.is-hover {
    background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='4' ry='4' stroke='%23aeaeae' stroke-width='1' stroke-dasharray='9' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e");
}

.drop-field-wrap * {
    box-sizing: border-box;
}

.field-wrap>.drop-field-wrap>input {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    pointer-events: none;
}

.drop-field-wrap svg {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    pointer-events: none;
}

.drop-field-wrap svg rect {
    stroke: #dadada;
    transition: stroke 0.3s;
}

.drop-field-wrap.is-hover svg rect {
    stroke: #aeaeae;
}

.drop-field-wrap .drop-field-caption,
.drop-field-wrap .drop-field-or,
.drop-field-wrap .drop-field-button {
    position: relative;
    z-index: 3;
}

.drop-field-wrap .drop-field-caption {
    font-size: 22px;
    line-height: 27px;
    color: #1b214a;
    font-weight: 500;
    margin: 0 0 2px 0;
    padding: 35px 0 0 0;
}

.drop-field-wrap .drop-field-or {
    display: block;
    color: #919191;
    font-size: 13px;
    line-height: 16px;
    margin: 0 0 8px 0;
}

.drop-field-button {
    display: block;
    height: 41px;
    box-sizing: border-box;
    border-radius: 20px;
    background: #ffffff;
    border: 1px solid #d3d3d3;
    color: #1b214a;
    font-size: 14px;
    line-height: 18px;
    font-weight: 600;
    padding: 11px 35px 0 35px;
    margin: 0 0 30px 0;
}

.drop-field-uploaded-wrap {
    position: relative;
    width: calc(100% - 36px);
}

.drop-field-uploaded-wrap:before {
    content: '';
    position: absolute;
    display: block;
    left: 0;
    top: 0;
    width: 100%;
    height: 1px;
    overflow: hidden;
    background-image: url("data:image/svg+xml,%3csvg width='100%25' height='200%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='200%25' fill='none' stroke='%23DADADAFF' stroke-width='1' stroke-dasharray='10' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e");
}

.drop-field-uploaded-wrap ul {
    padding: 19px 0 20px 0;
    margin: -5px;
    padding-top: 50px;
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
}

.drop-field-uploaded-wrap ul li {
    margin: 5px;
    padding: 0;
    list-style: none;
    position: relative;
    width: calc(33.33% - 10px);
}

.uploaded-item-add-wrap {
    min-height: 80px;
}

.uploaded-item {
    list-style: none;
}

.media-manager-preview {
    padding-left: 40px;
    padding-right: 40px;
}

/* .media-manager-preview .uploaded-item {
    width: calc(33.33% - 10px);
} */
.drop-field-uploaded-wrap ul li>a,
.drop-field-uploaded-wrap ul li>img {
    display: block;
    width: 100%;
    height: auto;
}

.drop-field-uploaded-wrap ul li a.uploaded-item-add {
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    background: #f9f9f9;
}

.drop-field-uploaded-wrap ul li a.uploaded-item-add i {
    display: block;
    width: 38px;
    height: 38px;
    background: #ffffff;
    border-radius: 50%;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -19px 0 0 -19px;
}

.drop-field-uploaded-wrap ul li a.uploaded-item-add i:before,
.drop-field-uploaded-wrap ul li a.uploaded-item-add i:after {
    content: '';
    display: block;
    width: 13px;
    height: 1px;
    background: #000000;
    top: 13px;
    left: 19px;
    position: absolute;
}

.drop-field-uploaded-wrap ul li a.uploaded-item-add i:after {
    transform: rotate(90deg);
    left: 13px;
    top: 19px;
}

.drop-field-uploaded-wrap ul li a.uploaded-item-add i:before {
    left: 13px;
    top: 19px;
}

.uploaded-item-tools {
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    justify-content: flex-end;
    width: 100%;
    padding: 3px;
}

.uploaded-item-tools a {
    width: 30px;
    height: 30px;
    display: block;
    background: rgba(255, 255, 255, 0.75);
    border-radius: 3px;
    position: relative;
    margin: 0 0 0 3px;
    transition: background 0.3s;
}

.uploaded-item-tools a:hover {
    background: #ffffff;
}

.uploaded-item-tools a:before {
    content: '';
    position: absolute;
    display: block;
}

.uploaded-item-tools a.uploaded-item-tools--main:before {
    width: 15px;
    height: 15px;
    left: 8px;
    top: 8px;
    background: url('../img/ui/icon-star--black.svg') no-repeat center;
    transition: opacity 0.3s;
}

.uploaded-item-tools a.uploaded-item-tools--main:after {
    content: '';
    position: absolute;
    display: block;
    width: 15px;
    height: 15px;
    left: 8px;
    top: 8px;
    background: url('../img/ui/icon-star--white.svg') no-repeat center;
    transition: opacity 0.3s;
    opacity: 0;
}

.uploaded-item-tools a.uploaded-item-tools--main.is-active {
    background: #33b92d;
}

.uploaded-item-tools a.uploaded-item-tools--main.is-active:before {
    opacity: 0;
}

.uploaded-item-tools a.uploaded-item-tools--main.is-active:after {
    opacity: 1;
}

.uploaded-item-tools a.uploaded-item-tools--edit:before {
    width: 15px;
    height: 15px;
    left: 8px;
    top: 8px;
    background: url('../img/ui/icon-pencil.svg') no-repeat center;
}

.uploaded-item-tools a.uploaded-item-tools--remove:before {
    width: 12px;
    height: 15px;
    left: 9px;
    top: 8px;
    background: url('../img/ui/icon-trash.svg') no-repeat center;
}

.edit-uploaded-item-popup {
    background: #ffffff;
    box-shadow: 0 3px 36px rgba(0, 0, 0, 0.06);
    width: 407px;
    left: 50%;
    margin-left: -203px;
    position: absolute;
    z-index: 5;
    padding: 38px 27px 40px 27px;
    top: 60px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s;
}

.edit-uploaded-item-popup.is-shown {
    opacity: 1;
    pointer-events: all;
}

.edit-uploaded-item-popup h4 {
    padding: 0 0 19px 0;
    margin: 0 0 25px 0;
    border-bottom: 1px solid #dbdbdb;
}

.edit-popup-close {
    width: 18px;
    height: 18px;
    position: absolute;
    right: 26px;
    top: 23px;
    background: url('../img/ui/icon-close-cross.svg') no-repeat center;
}

.edit-popup-footer {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-top: 14px;
}

.edit-popup--cancel {
    color: #848484;
    font-size: 16px;
    line-height: 19px;
    font-weight: 600;
    margin-right: 28px;
}

.edit-uploaded-item-popup .edit-popup-footer .button {
    min-height: 44px;
    width: 139px;
    border-radius: 22px;
    padding: 10px 20px 0 20px;
    box-sizing: border-box;
}

.edit-uploaded-item-popup .field-wrap {
    margin-bottom: 16px;
}

.edit-uploaded-item-popup .field-wrap input {
    height: 44px;
}

/* Date Field */
.field-wrap>.calendar-field-wrap>input {
    padding-right: 70px;
    cursor: pointer;
}

.field-wrap>.calendar-field-wrap>input::-webkit-calendar-picker-indicator {
    display: none;
}

.field-wrap>.calendar-field-wrap>input::-webkit-clear-button {
    -webkit-appearance: none;
    margin: 0;
}

.calendar-field-wrap {
    position: relative;
}

.calendar-field-wrap i {
    width: 54px;
    height: 100%;
    border-left: 1px solid #e6e6e6;
    position: absolute;
    right: 0;
    top: 0;
    pointer-events: none;
}

.calendar-field-wrap i:before {
    content: '';
    width: 18px;
    height: 18px;
    background: url('../img/ui/icon-field--date.svg') no-repeat center;
    position: absolute;
    left: 16px;
    top: 16px;
}

.ui-datepicker.calendar-field-datepicker.is-above {
    transform: translateY(-6px);
}

.ui-datepicker.calendar-field-datepicker.is-below {
    transform: translateY(6px);
}

/* DropDown with Text */
.custom-select-with-text {
    width: 100%;
    display: flex;
    position: relative;
}

.custom-select-with-text .custom_select_wrapper {
    width: 140px;
    position: absolute;
    left: 1px;
    top: 0px;
}

.field-wrap .custom-select-with-text .custom_select_wrapper .custom_select {
    border: none;
    height: 48px;
    border-right: 1px solid #e6e6e6;
    border-radius: 4px 0 0 4px;
}

.field-wrap .custom-select-with-text input {
    width: 100%;
    padding-left: 155px;
}

/* Radio */
.custom-radio-wrap {
    position: relative;
    display: inline-block;
    margin-right: 24px;
}

.custom-radio-wrap span {
    display: block;
    vertical-align: top;
    padding-left: 29px;
    cursor: pointer;
    position: relative;
}

.custom-radio-wrap span:before,
.custom-radio-wrap span:after {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.custom-radio-wrap span:before {
    width: 19px;
    height: 19px;
    box-sizing: border-box;
    background: #ffffff;
    border: 1px solid #e6e6e6;
    display: block;
    position: absolute;
    left: 0;
    top: 1px;
}

.custom-radio-wrap span:after {
    content: '';
    width: 9px;
    height: 9px;
    display: block;
    background: #3849bb;
    left: 5px;
    top: 6px;
    transition: opacity 0.3s;
    opacity: 0;
}

.custom-radio-wrap.is-checked span:after {
    opacity: 1;
}

.custom-radio-wrap input {
    pointer-events: none;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
}

/* Radio Switch Style */
.is-switch-container {
    display: flex;
}

.custom-radio-wrap {
    margin-top: 3px;
}

.custom-radio-wrap.is-switch-style span:before,
.custom-radio-wrap.is-switch-style span:after {
    display: none;
}

.custom-radio-wrap.is-switch-style {
    margin: 0 0 0 -1px;
}

.custom-radio-wrap.is-switch-style:first-child {
    margin-left: 0;
}

.custom-radio-wrap.is-switch-style:first-child span {
    border-radius: 4px 0 0 4px;
}

.custom-radio-wrap.is-switch-style:last-child span {
    border-radius: 0 4px 4px 0;
}

.custom-radio-wrap.is-switch-style span {
    transition: color 0.3s, border-color 0.3s, background-color 0.3s;
    background: #ffffff;
    border: 1px solid #e6e6e6;
    color: #848484;
    padding: 12px 20px 14px 17px;
}

.custom-radio-wrap.is-switch-style.is-checked span {
    border-color: #33b92d;
    background: #33b92d;
    color: #ffffff;
}

/* Custom Checkbox */
.custom-checkbox-wrap {
    display: inline-block;
    position: relative;
}

.custom-checkbox-wrap input {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    pointer-events: none;
}

.custom-checkbox-wrap.is-default-style {
    margin: 3px 27px 0 0;
}

.custom-checkbox-wrap span {
    color: #848484;
    font-size: 15px;
    line-height: 18px;
    font-weight: 400;
    cursor: pointer;
}

.custom-checkbox-wrap.is-default-style span {
    padding-left: 28px;
}

.custom-checkbox-wrap.is-default-style span:before,
.custom-checkbox-wrap.is-default-style span:after {
    content: '';
    position: absolute;
    box-sizing: border-box;
    pointer-events: none;
}

.custom-checkbox-wrap.is-default-style span:before {
    transition: background-color 0.3s, background-color 0.3s;
    border: 1px solid #d7d7d7;
    background: #ffffff;
    width: 19px;
    height: 19px;
    border-radius: 4px;
    left: 0;
    top: 1px;
}

.custom-checkbox-wrap.is-default-style span:after {
    transition: opacity 0.3s;
    opacity: 0;
    width: 10px;
    height: 8px;
    display: block;
    position: absolute;
    left: 5px;
    top: 7px;
    background: url('../img/ui/icon-check-white.svg') no-repeat center;
}

.custom-checkbox-wrap.is-default-style.is-checked span:before {
    background: #33b92d;
    border-color: #33b92d;
}

.custom-checkbox-wrap.is-default-style.is-checked span:after {
    opacity: 1;
}

/* Toggler Style */
.custom-checkbox-wrap.is-toggler-style {
    margin-top: 8px;
    margin-right: 51px;
    margin-bottom: 8px;
}

.custom-checkbox-wrap.is-toggler-style span {
    padding-left: 64px;
}

.custom-checkbox-wrap.is-toggler-style span:before,
.custom-checkbox-wrap.is-toggler-style span:after {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
}

.custom-checkbox-wrap.is-toggler-style span:before {
    width: 56px;
    height: 30px;
    border-radius: 15px;
    border: 1px solid #d7d7d7;
    position: absolute;
    left: 0;
    top: -4px;
}

.custom-checkbox-wrap.is-toggler-style span:after {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #d8d8d8;
    left: 3px;
    top: -1px;
    transform: translateX(26px);
    transition: transform 0.3s, background-color 0.3s;
}

.custom-checkbox-wrap.is-toggler-style.is-checked span:after {
    transform: translateX(0);
    background: #33b92d;
}

/* Widget Range Slider */
.widget-range-slider-wrap .widget-range-inputs {
    display: flex;
    align-items: center;
    margin: 0 0 28px 0;
    padding: 10px 0 0 0;
}

.widget-range-slider-wrap .widget-range-inputs>span {
    color: #848484;
    font-size: 15px;
    line-height: 18px;
}

.widget-range-slider-wrap .widget-range-inputs span.widget-range-label--from {
    margin-right: 10px;
}

.widget-range-slider-wrap .widget-range-inputs span.widget-range-label--to {
    margin-right: 16px;
    margin-left: 28px;
}

.widget-range-slider-wrap .widget-range-inputs input {
    height: 41px;
    color: #848484;
    transform: translateY(1px);
    padding: 0 11px 0 11px;
}

.widget-range-slider-wrap .widget-range-inputs a {
    width: 71px;
    height: 41px;
    background: #f6921e;
    color: #ffffff;
    font-size: 15px;
    font-weight: 500;
    line-height: 20px;
    padding: 11px 25px 0 25px;
    box-sizing: border-box;
    border-radius: 4px;
    margin-left: 12px;
    transform: translateY(1px);
    transition: background-color 0.3s;
}

.widget-range-slider-wrap .widget-range-inputs a:hover {
    background: #e28314;
}

.widget-range-info {
    display: flex;
    justify-content: space-between;
}

.widget-range-info span {
    color: #848484;
    font-size: 15px;
    line-height: 18px;
}

.widget-range-slider {
    position: relative;
    height: 4px;
    background: #e6e6e6;
    border-radius: 4px;
    width: 100%;
    margin: 0 0 12px 0;
}

.widget-range-slider .ui-slider-range {
    height: 4px;
    background: #33b92d;
    border-radius: 0;
    width: 100%;
    position: absolute;
    top: 0;
}

.widget-range-slider>span {
    width: 12px;
    height: 12px;
    border-radius: 6px;
    background-color: #33b92d;
    position: absolute;
    top: -4px;
    outline: none;
    cursor: pointer;
}

.widget-range-slider>span:before {
    content: '';
    width: 6px;
    height: 6px;
    background: #ffffff;
    border-radius: 50%;
    left: 3px;
    top: 3px;
    display: block;
    position: absolute;
}

/* --- TABS --- */
.tabs-wrapper {
    display: flex;
    box-sizing: border-box;
    margin: 0 0 30px 0;
}

.tabs-wrapper * {
    box-sizing: border-box;
}

.tab-head-item {
    color: #848484;
    font-size: 17px;
    line-height: 20px;
    font-weight: 600;
    white-space: nowrap;
    background: #fbfbfb;
    text-align: center;
    border: 1px solid #efefef;
    cursor: pointer;
    position: relative;
    transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}

.tab-head-item.is-active {
    color: #1b214a;
    background: #ffffff;
    border: 1px solid #dadada;
    position: relative;
}

.tab-head-item:before,
.tab-head-item:after {
    content: '';
    position: absolute;
    opacity: 0;
}

.tab-head-item:before {
    background: #ffffff;
}

.tab-head-item:after {
    background: #3849bb;
    transition: opacity 0.3s;
}

.tabs-wrapper .tab-head .tab-head-item.is-active:before,
.tabs-wrapper .tab-head .tab-head-item.is-active:after {
    opacity: 1;
}

.tab-content-wrap {
    border: 1px solid #dadada;
}

.tab-content-block {
    background: #ffffff;
    display: none;
}

.tab-content-block.is-active {
    display: block;
}

/* Horizontal */
.tabs-wrapper.is-horizontal {
    flex-direction: column;
}

.tabs-wrapper.is-horizontal .tab-head {
    display: flex;
    position: relative;
    border-bottom: 1px solid #dadada;
}

.tabs-wrapper.is-horizontal .tab-head>div {
    margin-right: 4px;
    align-items: stretch;
    padding: 18px 39px 15px 37px;
    border-bottom: 0;
}

.tabs-wrapper.is-horizontal .tab-head .tab-head-item:before {
    width: 100%;
    height: 1px;
    left: 0;
    bottom: -1px;
}

.tabs-wrapper.is-horizontal .tab-head .tab-head-item:after {
    height: 3px;
    width: calc(100% + 2px);
    top: -1px;
    left: -1px;
}

.tabs-wrapper.is-horizontal .tab-content-wrap {
    border-top: 0;
}

.tabs-wrapper.is-horizontal .tab-content-block {
    padding: 27px 29px 28px 29px;
}

.tabs-wrapper .tab-content-block p:last-child {
    margin-bottom: 0;
}

/* Vertical */
.tabs-wrapper.is-vertical {
    flex-direction: row;
    align-items: stretch;
}

.tabs-wrapper.is-vertical .tab-head {
    border-right: 1px solid #dadada;
}

.tabs-wrapper.is-vertical .tab-content-wrap {
    width: 100%;
    display: flex;
    align-items: stretch;
    position: relative;
    z-index: 3;
    border-left: none;
}

.tabs-wrapper.is-vertical .tab-head div {
    margin-bottom: 4px;
    padding: 17px 33px 16px 35px;
    border-right: 0;
}

.tabs-wrapper.is-vertical .tab-head .tab-head-item:before {
    width: 1px;
    height: 100%;
    top: 0;
    right: -1px;
}

.tabs-wrapper.is-vertical .tab-head .tab-head-item:after {
    width: 3px;
    height: calc(100% + 2px);
    top: -1px;
    left: -1px;
}

.tabs-wrapper.is-vertical .tab-content-block {
    padding: 31px 20px 28px 20px;
}

/* --- Accordeon and Toggle --- */
.accordeon-wrapper,
.toggle-wrapper {
    background: #ffffff;
    border: 1px solid #e1e1e1;
    box-shadow: 0 3px 16px rgba(0, 0, 0, 0.04);
    border-radius: 6px;
    margin-bottom: 30px;
}

.accordeon-wrapper .accordeon-item-wrap,
.toggle-wrapper .toggle-item-wrap {
    border-bottom: 1px solid #e1e1e1;
}

.accordeon-wrapper .accordeon-item-wrap:last-child,
.toggle-wrapper .toggle-item-wrap:last-child {
    border: none;
}

.accordeon-item-title,
.toggle-item-title {
    color: #1b214a;
    font-size: 17px;
    line-height: 20px;
    font-weight: 700;
    transition: color 0.3s;
    position: relative;
    padding: 21px 38px 21px 44px;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.accordeon-item-title svg,
.toggle-item-title svg {
    position: absolute;
    left: 22px;
    top: 26px;
    transition: transform 0.3s;
}

.accordeon-item-title svg path,
.toggle-item-title svg path {
    transition: fill 0.3s;
    fill: #000000;
}

.accordeon-item-wrap.is-active .accordeon-item-title,
.toggle-item-wrap.is-active .toggle-item-title {
    color: #2b388f;
}

.accordeon-item-wrap.is-active .accordeon-item-title svg,
.toggle-item-wrap.is-active .toggle-item-title svg {
    color: #2b388f;
    transform: rotate(90deg);
}

.accordeon-item-wrap.is-active .accordeon-item-title svg path,
.toggle-item-wrap.is-active .toggle-item-title svg path {
    fill: #2b388f;
}

.accordeon-item-content,
.toggle-item-content {
    padding: 0 38px 0 47px;
}

.toggle-item-title:before,
.toggle-item-title:after {
    content: '';
    position: absolute;
    transition: opacity 0.3s;
    left: 15px;
}

.toggle-item-title:before {
    width: 14px;
    height: 14px;
    background: url('../img/ui/icon-plus.svg') no-repeat center;
    top: 24px;
}

.toggle-item-title:after {
    width: 14px;
    height: 2px;
    background: url('../img/ui/icon-minus.svg') no-repeat center;
    opacity: 0;
    top: 31px;
}

.toggle-item-wrap.is-active .toggle-item-title:before {
    opacity: 0;
}

.toggle-item-wrap.is-active .toggle-item-title:after {
    opacity: 1;
}

/* ToolTip */
.tooltip-wrap {
    position: absolute;
    background: #ffffff;
    box-shadow: 0 3px 16px rgba(0, 0, 0, 0.06);
    border-radius: 2px;
    z-index: 9999;
    pointer-events: none;
    transform: translate(-50%, 9px);
    font-size: 12px;
    line-height: 15px;
    font-weight: 600;
    color: #1b214a;
    padding: 6px 20px 8px 20px;
}

.tooltip-wrap:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 5px 5px 5px;
    position: absolute;
    left: 50%;
    margin-left: -5px;
    top: -4px;
}

.tooltip-wrap:after {
    border-color: transparent transparent #ffffff transparent;
}

/* Datepicker Calendar */
body.no_bg:before,
body.no_bg:after {
    display: none;
}

div.DayPicker {
    background: #ffffff;
    border: 1px solid #e5e5e5;
    border-radius: 4px;
    box-shadow: 0 3px 16px rgba(0, 0, 0, 0.07);
    padding: 14px;
}

div.DayPicker * {
    box-sizing: border-box;
}

div.DayPicker .DayPicker-wrapper {
    width: 380px;
    border: 1px solid #e5e5e5;
    padding-bottom: 14px;
    position: relative;
}

.DayPicker-NavBar {
    pointer-events: none;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 28px 16px 0 16px;
}

.DayPicker-NavBar>span.DayPicker-NavButton {
    display: block;
    position: relative;
    left: auto;
    top: auto;
    right: auto;
    bottom: auto;
    margin: 0;
    width: 20px;
    height: 20px;
    background: none;
    padding: 0;
    pointer-events: all;
    cursor: pointer;
}

.DayPicker-NavBar>span.DayPicker-NavButton:before {
    content: '';
    width: 14px;
    height: 10px;
    position: absolute;
    top: 5px;
    left: 3px;
    display: block;
}

.DayPicker-NavBar>span.DayPicker-NavButton.DayPicker-NavButton--prev:before {
    background: url('../img/ui/icon-calendar--prev.svg') no-repeat center;
}

.DayPicker-NavBar>span.DayPicker-NavButton.DayPicker-NavButton--next:before {
    background: url('../img/ui/icon-calendar--next.svg') no-repeat center;
}

div.DayPicker .DayPicker-Month {
    width: 100%;
    display: block;
}

div.DayPicker .DayPicker-Caption {
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #e5e5e5;
    padding: 12px 0 13px 0;
    display: block;
    margin: 0;
}

div.DayPicker .DayPicker-Caption>div {
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
    color: #000000;
}

div.DayPicker .DayPicker-Weekdays {
    border-bottom: 1px solid #e5e5e5;
    display: block;
    margin: 0;
    padding: 8px 0 0 0;
}

div.DayPicker .DayPicker-Weekdays .DayPicker-WeekdaysRow {
    display: flex;
    margin-left: -13px;
    margin-right: -13px;
}

div.DayPicker .DayPicker-WeekdaysRow .DayPicker-Weekday {
    color: #5f5f5f;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 1.12;
    width: 14.28%;
}

div.DayPicker .DayPicker-WeekdaysRow .DayPicker-Weekday {
    padding: 5px 10px 11px 10px;
}

div.DayPicker .DayPicker-Body {
    display: block;
    padding-top: 9px;
}

div.DayPicker .DayPicker-Body .DayPicker-Week {
    display: flex;
    margin-left: -13px;
    margin-right: -13px;
    align-items: stretch;
}

div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day {
    width: 14.28%;
    padding: 12px 8px 13px 8px;
    position: relative;
    z-index: 3;
    transition: color 0.3s;
    outline: none;
    color: #1b214a;
    font-size: 15px;
    letter-spacing: 0.075px;
    font-weight: normal;
}

div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day.DayPicker-Day--disabled {
    color: #a5a5a5;
}

div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day:not(.DayPicker-Day--today):not(.DayPicker-Day--selected):not(.DayPicker-Day--disabled):hover {
    background: transparent;
    color: #1b214a;
}

.DayPicker:not(.DayPicker--interactionDisabled) .DayPicker-Day:not(.DayPicker-Day--disabled):not(.DayPicker-Day--selected):not(.DayPicker-Day--outside):hover {
    background: transparent;
}

div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day:before {
    content: '';
    width: 44px;
    height: 44px;
    position: absolute;
    display: block;
    left: 50%;
    top: 50%;
    margin: -22px 0 0 -22px;
    border-radius: 50%;
    background: transparent;
    z-index: -1;
    transform: translateY(-1px);
    transition: background-color 0.3s;
}

div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day.DayPicker-Day--selected,
div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day.DayPicker-Day--today {
    color: #ffffff;
    background: transparent;
}

div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day.DayPicker-Day--today:before {
    background: #1b214a;
}

div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day.DayPicker-Day--selected:before {
    background: #f6921e;
}

div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day:not(.DayPicker-Day--outside):not(.DayPicker-Day--today):not(.DayPicker-Day--selected):not(.DayPicker-Day--disabled):hover:before {
    background: #f3f3f3;
}

/* With Price */
div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day span {
    display: block;
    color: #848484;
    font-size: 12px;
    letter-spacing: 0.06px;
    font-weight: 400;
    line-height: 14px;
    margin-top: 1px;
    margin-bottom: -15px;
}

div.DayPicker.with-price .DayPicker-Body .DayPicker-Week .DayPicker-Day {
    padding: 12px 8px 13px 8px;
}

div.DayPicker.with-price .DayPicker-Body .DayPicker-Week .DayPicker-Day:before {
    width: 46px;
    height: 48px;
    border-radius: 5px;
    transform: translate(-1px, 5px);
}

div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day.DayPicker-Day--today span,
div.DayPicker .DayPicker-Body .DayPicker-Week .DayPicker-Day.DayPicker-Day--selected span {
    color: rgba(255, 255, 255, 0.75);
}

div.DayPicker.with-price .DayPicker-wrapper {
    padding-bottom: 31px;
}

/* Multi */
.DayPicker.is-multi {
    width: 800;
    box-sizing: border-box;
    padding: 0;
}

.DayPicker-footer,
.DayPicker-multi-wrap {
    display: flex;
    box-sizing: border-box;
}

.DayPicker-multi-wrap {
    padding: 14px;
}

.DayPicker-footer>div,
.DayPicker.is-multi .DayPicker-multi-wrap>div {
    margin-right: 10px;
}

.DayPicker.is-multi .DayPicker-multi-wrap>div {
    border-radius: 4px;
}

.DayPicker-footer>div:last-child,
.DayPicker.is-multi .DayPicker-multi-wrap>div:last-child {
    margin-right: 0;
}

.DayPicker-footer {
    padding: 18px 15px 17px 15px;
    border: 1px solid #e6e6e6;
    border-radius: 0 0 4px 4px;
    margin: -1px;
    background: #fbfbfb;
    margin-top: 4px;
}

.DayPicker-footer>div {
    width: 380px;
}

.DayPicker-footer input {
    font-size: 15px;
    line-height: 20px;
    padding: 14px 15px 14px 15px;
    letter-spacing: 0;
}

/* --- Dynamic Table --- */
.dynamic-table-wrap {
    background: #ffffff;
    border-radius: 6px;
    box-shadow: 0 3px 26px rgba(0, 0, 0, 0.05);
    position: relative;
    transition: all 0.3s;
    margin: 0 0 0 0;
}

.dynamic-table-wrap.is-expanded {
    border-radius: 0;
}

.dynamic-table-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    transform: translateY(1px);
    padding-left: 18px;
}

.dynamic-table-header h4 {
    font-size: 21px;
    margin: 0 0 0 0;
    font-weight: 500;
}

.dynamic-table-header-tools {
    display: flex;
    padding: 5px 6px 5px 0;
}

.dynamic-table-header-tools a {
    display: block;
    position: relative;
    width: 39px;
    height: 39px;
    margin-left: 3px;
}

.dynamic-table-header-tools i {
    position: absolute;
}

.dynamic-table-header-tools a.dynamic-table--excell i {
    width: 22px;
    height: 20px;
    top: 10px;
    left: 9px;
    background: url('../img/ui/icon-excel.svg') no-repeat center;
}

.dynamic-table-header-tools a.dynamic-table--expand i {
    width: 17px;
    height: 17px;
    top: 12px;
    left: 11px;
}

.dynamic-table-header-tools a.dynamic-table--expand i:before,
.dynamic-table-header-tools a.dynamic-table--expand i:after {
    content: '';
    width: 17px;
    height: 17px;
    left: 0;
    top: 0;
    display: block;
    position: absolute;
    transition: opacity 0.2s;
}

.dynamic-table-header-tools a.dynamic-table--expand i:before {
    background: url('../img/ui/icon-expand.svg') no-repeat center;
}

.dynamic-table-header-tools a.dynamic-table--expand i:after {
    background: url('../img/ui/icon-shrink.svg') no-repeat center;
    opacity: 0;
}

.dynamic-table-wrap.is-expanded .dynamic-table-header-tools a.dynamic-table--expand i:before {
    opacity: 0;
}

.dynamic-table-wrap.is-expanded .dynamic-table-header-tools a.dynamic-table--expand i:after {
    opacity: 1;
}

table.dynamic-table {
    width: 100%;
    min-width: 600px;
    border-collapse: collapse;
}

table.dynamic-table thead {
    background: #2b388f;
}

table.dynamic-table th {
    color: #ffffff;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.28px;
    font-weight: 600;
    text-align: left;
    position: relative;
    border: 1px solid #5560a6;
    border-bottom: none;
    padding: 10px 15px 11px 15px;
}

table.dynamic-table th:first-child {
    border-left: none;
    padding-left: 20px;
}

table.dynamic-table th:last-child {
    border-right: none;
}

table.dynamic-table th:after {
    content: '';
    width: 6px;
    height: 10px;
    display: block;
    position: absolute;
    right: 14px;
    top: 16px;
    background: url('../img/ui/icon-table--up-down.svg') no-repeat center;
}

table.dynamic-table th:last-child:after {
    right: 45px;
}

table.dynamic-table th a.show-table-popup {
    width: 15px;
    height: 15px;
    background: url('../img/ui/icon-settings.svg') no-repeat center;
    display: block;
    position: absolute;
    right: 16px;
    top: 14px;
}

table.dynamic-table tbody tr:nth-child(even) {
    background: #fafafc;
}

table.dynamic-table tbody tr td {
    border: 1px solid #eaebf0;
    border-top: none;
    color: #848484;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.07px;
    padding: 11px 15px 11px 15px;
}

table.dynamic-table tbody tr td:first-child {
    padding-left: 18px;
}

table.dynamic-table tbody tr td:first-child {
    border-left: none;
}

table.dynamic-table tbody tr td:last-child {
    border-right: none;
}

.dynamic-table-wrap:not(.is-expanded) table.dynamic-table tbody tr:last-child td {
    border-bottom: none;
}

/* Popup */
.table-popup-wrap {
    display: block;
    position: absolute;
    right: 0;
    top: 91px;
    background: #ffffff;
    border: 1px solid #e6e6e6;
    border-radius: 0 0 4px 4px;
    box-sizing: border-box;
    padding: 24px 18px 15px 15px;
    width: 358px;
    pointer-events: none;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.3s, transform 0.3s;
}

.table-popup-wrap.is-shown {
    opacity: 1;
    transform: translate(0);
    pointer-events: all;
}

.table-popup-wrap a.table-popup--close {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1px solid #e6e6e6;
    background: #ffffff;
    position: absolute;
    right: -19px;
    top: -17px;
    transition: right 0.3s, top 0.3s;
}

.table-popup-wrap a.table-popup--close:before {
    content: '';
    width: 15px;
    height: 15px;
    background: url('../img/ui/icon-close-cross--table.svg') no-repeat center;
    display: block;
    position: absolute;
    left: 11px;
    top: 11px;
}

.table-popup-wrap * {
    box-sizing: border-box;
}

.table-popup-wrap input {
    height: 42px;
    padding: 0 13px;
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0;
    margin: 0 0 4px 0;
}

.table-popup-wrap ul {
    padding: 0 16px 0 0;
    margin: 0;
    max-height: 204px;
    overflow-y: auto;
}

.table-popup-wrap ul li {
    padding: 11px 0 11px 0;
    margin: 0;
    list-style: none;
    border-bottom: 1px solid #dcdcdc;
    color: #1b214a;
    font-size: 14px;
    line-height: 18px;
    transition: color 0.3s, padding 0.3s;
    cursor: pointer;
    position: relative;
    z-index: 3;
}

.table-popup-wrap ul li:last-child {
    border: none;
}

.table-popup-wrap ul li:before {
    content: '';
    width: 100%;
    height: calc(100% - 10px);
    top: 5px;
    left: 0;
    background: #2b388f;
    display: block;
    position: absolute;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.3s;
}

.table-popup-wrap ul li:hover,
.table-popup-wrap ul li.is-selected {
    color: #ffffff;
    padding-left: 13px;
}

.table-popup-wrap ul li.is-inactive {
    display: none;
}

.table-popup-wrap ul li:hover:before,
.table-popup-wrap ul li.is-selected:before {
    opacity: 1;
}

.dynamic-table-wrap.is-expanded .table-popup-wrap a.table-popup--close {
    right: 0;
    top: -19px;
}

/* Two Columns Select */
.select-multi-column-wrap {
    display: flex;
    align-items: stretch;
    padding: 56px 0 0 0;
}

.select-multi-column-wrap>div {
    margin: 0;
    width: calc(50% - 15px);
    position: relative;
    background: #ffffff;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    box-sizing: border-box;
}

.select-multi-column-wrap>span {
    width: 30px;
    position: relative;
}

.select-multi-column-wrap>span:before {
    content: '';
    position: absolute;
    left: 7px;
    top: 50%;
    width: 17px;
    height: 16px;
    margin: -42px 0 0 0;
    background: url('../img/ui/icon-tab-arrows.svg') no-repeat center;
}

.select-multi-column-wrap>div>input {
    position: absolute;
    left: -1px;
    top: -57px;
    width: calc(100% + 2px);
}

.select-multi-column-wrap ul {
    padding: 8px 0 14px 0;
    margin: 0;
    overflow-y: auto;
}

.select-multi-column-wrap ul li {
    padding: 0;
    margin: 0;
    list-style: none;
    transition: color 0.3s, background 0.3s;
    cursor: pointer;
    color: #1b214a;
    font-size: 15px;
    line-height: 20px;
    padding: 8px 15px 9px 15px;
}

.select-multi-column-wrap ul li.is-active,
.select-multi-column-wrap ul li:hover {
    background: #2b388f;
    color: #ffffff;
}

.select-multi-column-wrap ul li.is-selected,
.select-multi-column-wrap ul li.is-inactive,
.select-multi-column-wrap ul li.is-selected.is-inactive {
    display: none;
}

.ticket-item-summary {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #d9d9d9;
    font-size: 19px;
    line-height: 26px;
    color: #1b214a;
    padding: 19px 0 3px;
}

.ticket-item-summary span {
    color: #a5a5a5;
}

.carousel__back-button:disabled {
    background-color: white;
    color: #a8aaaf;
}