

/* Start:/local/components/travelsoft/favorites.add/templates/.default/style.css?1745578713418*/
.bg-star {
    height: 30px;
    background: url(/local/components/travelsoft/favorites.add/templates/.default/img/star.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.bg-star_filled {
    height: 30px;
    background: url(/local/components/travelsoft/favorites.add/templates/.default/img/star-filled.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.favorites__button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding-left: 35px;
    padding-top: 5px;
}
/* End */


/* Start:/local/components/travelsoft/booking.search_form/templates/inner__placements.2calendars/style.css?17455787128560*/
.offers-search-form{
    display: flex;
    width: 100%;
}
.searchForm{
    width: 100%;
}
.drawer-fullscreen.active .col-search-form{
    position: relative;
}
#ui-datepicker-div{
    z-index: 99999999 !important;
}

.search_form__counter_container {
    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    overflow: hidden;
    padding: 0;
    margin-top: .25rem;
    max-width: 300px
}

.search_form__counter_content {
    padding: 0 1rem;
    font-size: 14px;
}

.search_form__counter_header {
    padding: .5rem 1rem;
    background: #eee;
    font-size: 14px;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    width: inherit;
    border-bottom: 1px solid #d8d8d8
}

.search_form__input.pessangers {
    flex-basis: calc(15% - 4px);
    max-width: calc(15% - 4px);
    margin-right: 0;
    box-sizing: border-box
}

.search_form__input.pessangers_inner {
    flex-basis: 100%;
    max-width: calc(12% - 2px);
    box-sizing: border-box;
    margin-right: 2px
}

.search_form__counter_action {
    margin: .5rem 0;
    bottom: 0;
    left: 0

}

.search_form__counter_action button {
    height: 50px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    border-radius: 4px;
    padding: 0 1.25rem;
    background: #fa8405;
    color: #fff;
    font-size: 1.25rem;
    border: 0;
    width: 100%;
    flex-basis: 100%;
    outline: 0 !important;
    text-align: center
}

.list_age_passangers {
    margin-left: 0;
    padding-left: 0
}

.list_age_pessangers-item {
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin: .25rem 0
}

.search_form__counter_item {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 1rem 0
}

.search_form__counter_item_label {
    flex-basis: 60%;
    max-width: 60%;
    line-height:1;
}

.search_form__counter_item_label > * {
    display: block
}

.search_form__counter_item_label small {
    color: #707070;
    font-size: 80%;
    line-height: 1.1;
    margin-top: 3px
}

.search_form__counter_item_control {
    display: flex;
    justify-content: space-between;
    flex-basis: 40%;
    max-width: 40%
}
.search_form__counter_item_control .btn{
    line-height: 1;
    font-size: 16px;
}

.search_form__counter_item_control .count {
    min-width: auto;
    height: 30px
}

.count, .dicrement, .search_form__counter_item_control > .increment {
    text-align: center;
    max-width: 33%;
    font-size: 16px
}

.dicrement, .search_form__counter_item_control > .increment {
    border-radius: 100%;
    height: 30px;
    width: 30px;
    color: #fff;
    background: #ff9828;
    font-size: 24px;
    cursor: pointer;
    -webkit-transition: -webkit-transform .2s;
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s, -webkit-transform .2s;
    display: flex;
    justify-content: center;
    align-items: center
}

.search_form__counter_item_control > .dicrement {
    background: var(--primary-color);
}

.dicrement:active, .search_form__counter_item_control > .increment:active {
    -webkit-transform: scale(.9);
    transform: scale(.9);
    -webkit-transition: font-size .2s;
    transition: font-size .2s
}

/*
    Created on : 17.02.2018, 18:58:08
    Author     : dimabresky
*/

.portal{
    z-index: 999999999999;
}
.pessangers_container{
    position: relative;
}
.search_form__counter_container{
    z-index: 999999;
    position: absolute;
}


.closer {
    font-size: 20px;
    text-align: right;
    cursor: pointer;
}

.children-age-box {
    position: absolute;
    background-color: #fff;
    width: 100%;
    padding: .5rem;
    border: 1px solid #cccccc;
    z-index: 10;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.13);
    /* min-width: 250px; */
    border-radius: 3px;
    margin-top: 5px;
}

.form-group-select-plus {
    position: relative;
}

.search-btn {
    height: 34px;
    width: 100%;
}

.search-btn-box {
    margin-top: 27px;
}

.loading {
    height: 20px;
    width: 20px;
    display: inline-block;
    background-image: url(data:image/gif;base64,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);
}

.hl-orange {
    background-color: #ffe09e;
}

.offers-search-form {
    /* background: #ffe09d; */
    /* padding: 1rem; */
}
.offers-search-form [class*="col-"]{
    padding: 0 0.5rem;
}
.offers-search-form .row{
    margin: 0 -.5rem;
}

.MuiSvgIcon-root {
    fill: currentColor;
    width: 1em;
    height: 1em;
    display: inline-block;
    font-size: 1.5rem;
    transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
    flex-shrink: 0;
    user-select: none;
}

.tsoperator__date_highlighted {
    background-color: #00800014;
    color: #fff;
    /* padding: 3px; */
}

#inner-offers-search-form .form-control {
    padding: .375rem .75rem!important;
}

.tsoperator__highlight {
    background: #ba7246!important;
    color: #fff!important;
}


/* End */


/* Start:/local/modules/travelsoft.travelbooking/plugins/daterangepicker/daterangepicker.css?17455787137659*/
.daterangepicker {
  position: absolute;
  color: inherit;
  background-color: #fff;
  border-radius: 4px;
  border: 1px solid #ddd;
  width: 278px;
  max-width: none;
  padding: 0;
  margin-top: 7px;
  top: 100px;
  left: 20px;
  z-index: 3001;
  display: none;
  font-family: arial;
  font-size: 15px;
  line-height: 1em;
}

.daterangepicker:before, .daterangepicker:after {
  position: absolute;
  display: inline-block;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  content: '';
}

.daterangepicker:before {
  top: -7px;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  border-bottom: 7px solid #ccc;
}

.daterangepicker:after {
  top: -6px;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #fff;
  border-left: 6px solid transparent;
}

.daterangepicker.opensleft:before {
  right: 9px;
}

.daterangepicker.opensleft:after {
  right: 10px;
}

.daterangepicker.openscenter:before {
  left: 0;
  right: 0;
  width: 0;
  margin-left: auto;
  margin-right: auto;
}

.daterangepicker.openscenter:after {
  left: 0;
  right: 0;
  width: 0;
  margin-left: auto;
  margin-right: auto;
}

.daterangepicker.opensright:before {
  left: 9px;
}

.daterangepicker.opensright:after {
  left: 10px;
}

.daterangepicker.drop-up {
  margin-top: -7px;
}

.daterangepicker.drop-up:before {
  top: initial;
  bottom: -7px;
  border-bottom: initial;
  border-top: 7px solid #ccc;
}

.daterangepicker.drop-up:after {
  top: initial;
  bottom: -6px;
  border-bottom: initial;
  border-top: 6px solid #fff;
}

.daterangepicker.single .daterangepicker .ranges, .daterangepicker.single .drp-calendar {
  float: none;
}

.daterangepicker.single .drp-selected {
  display: none;
}

.daterangepicker.show-calendar .drp-calendar {
  display: block;
}

.daterangepicker.show-calendar .drp-buttons {
  display: block;
}

.daterangepicker.auto-apply .drp-buttons {
  display: none;
}

.daterangepicker .drp-calendar {
  display: none;
  max-width: 270px;
}

.daterangepicker .drp-calendar.left {
  padding: 8px 0 8px 8px;
}

.daterangepicker .drp-calendar.right {
  padding: 8px;
}

.daterangepicker .drp-calendar.single .calendar-table {
  border: none;
}

.daterangepicker .calendar-table .next span, .daterangepicker .calendar-table .prev span {
  color: #fff;
  border: solid black;
  border-width: 0 2px 2px 0;
  border-radius: 0;
  display: inline-block;
  padding: 3px;
}

.daterangepicker .calendar-table .next span {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

.daterangepicker .calendar-table .prev span {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}

.daterangepicker .calendar-table th, .daterangepicker .calendar-table td {
  white-space: nowrap;
  text-align: center;
  vertical-align: middle;
  min-width: 32px;
  width: 32px;
  height: 24px;
  line-height: 24px;
  font-size: 12px;
  border-radius: 4px;
  border: 1px solid transparent;
  white-space: nowrap;
  cursor: pointer;
}

.daterangepicker .calendar-table {
  border: 1px solid #fff;
  border-radius: 4px;
  background-color: #fff;
}

.daterangepicker .calendar-table table {
  width: 100%;
  margin: 0;
  border-spacing: 0;
  border-collapse: collapse;
}

.daterangepicker td.available:hover, .daterangepicker th.available:hover {
  background-color: #eee;
  border-color: transparent;
  color: inherit;
}

.daterangepicker td.week, .daterangepicker th.week {
  font-size: 80%;
  color: #ccc;
}

.daterangepicker td.off, .daterangepicker td.off.in-range, .daterangepicker td.off.start-date, .daterangepicker td.off.end-date {
  background-color: #fff;
  border-color: transparent;
  color: #999;
}

.daterangepicker td.in-range {
  background-color: #ebf4f8;
  border-color: transparent;
  color: #000;
  border-radius: 0;
}

.daterangepicker td.start-date {
  border-radius: 4px 0 0 4px;
}

.daterangepicker td.end-date {
  border-radius: 0 4px 4px 0;
}

.daterangepicker td.start-date.end-date {
  border-radius: 4px;
}

.daterangepicker td.active, .daterangepicker td.active:hover {
  background-color: #357ebd;
  border-color: transparent;
  color: #fff;
}

.daterangepicker th.month {
  width: auto;
}

.daterangepicker td.disabled, .daterangepicker option.disabled {
  color: #999;
  cursor: not-allowed;
  text-decoration: line-through;
}

.daterangepicker select.monthselect, .daterangepicker select.yearselect {
  font-size: 12px;
  padding: 1px;
  height: auto;
  margin: 0;
  cursor: default;
}

.daterangepicker select.monthselect {
  margin-right: 2%;
  width: 56%;
}

.daterangepicker select.yearselect {
  width: 40%;
}

.daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect {
  width: 50px;
  margin: 0 auto;
  background: #eee;
  border: 1px solid #eee;
  padding: 2px;
  outline: 0;
  font-size: 12px;
}

.daterangepicker .calendar-time {
  text-align: center;
  margin: 4px auto 0 auto;
  line-height: 30px;
  position: relative;
}

.daterangepicker .calendar-time select.disabled {
  color: #ccc;
  cursor: not-allowed;
}

.daterangepicker .drp-buttons {
  clear: both;
  text-align: right;
  padding: 8px;
  border-top: 1px solid #ddd;
  display: none;
  line-height: 12px;
  vertical-align: middle;
}

.daterangepicker .drp-selected {
  display: inline-block;
  font-size: 12px;
  padding-right: 8px;
}

.daterangepicker .drp-buttons .btn {
  margin-left: 8px;
  font-size: 12px;
  font-weight: bold;
  padding: 4px 8px;
}

.daterangepicker.show-ranges.single.rtl .drp-calendar.left {
  border-right: 1px solid #ddd;
}

.daterangepicker.show-ranges.single.ltr .drp-calendar.left {
  border-left: 1px solid #ddd;
}

.daterangepicker.show-ranges.rtl .drp-calendar.right {
  border-right: 1px solid #ddd;
}

.daterangepicker.show-ranges.ltr .drp-calendar.left {
  border-left: 1px solid #ddd;
}

.daterangepicker .ranges {
  float: none;
  text-align: left;
  margin: 0;
}

.daterangepicker.show-calendar .ranges {
  margin-top: 8px;
}

.daterangepicker .ranges ul {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

.daterangepicker .ranges li {
  font-size: 12px;
  padding: 8px 12px;
  cursor: pointer;
}

.daterangepicker .ranges li:hover {
  background-color: #eee;
}

.daterangepicker .ranges li.active {
  background-color: #08c;
  color: #fff;
}

/*  Larger Screen Styling */
@media (min-width: 564px) {
  .daterangepicker {
    width: auto;
  }

  .daterangepicker .ranges ul {
    width: 140px;
  }

  .daterangepicker.single .ranges ul {
    width: 100%;
  }

  .daterangepicker.single .drp-calendar.left {
    clear: none;
  }

  .daterangepicker.single .ranges, .daterangepicker.single .drp-calendar {
    float: left;
  }

  .daterangepicker {
    direction: ltr;
    text-align: left;
  }

  .daterangepicker .drp-calendar.left {
    clear: left;
    margin-right: 0;
  }

  .daterangepicker .drp-calendar.left .calendar-table {
    border-right: none;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .daterangepicker .drp-calendar.right {
    margin-left: 0;
  }

  .daterangepicker .drp-calendar.right .calendar-table {
    border-left: none;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  .daterangepicker .drp-calendar.left .calendar-table {
    padding-right: 8px;
  }

  .daterangepicker .ranges, .daterangepicker .drp-calendar {
    float: left;
  }
}

@media (min-width: 730px) {
  .daterangepicker .ranges {
    width: auto;
  }

  .daterangepicker .ranges {
    float: left;
  }

  .daterangepicker.rtl .ranges {
    float: right;
  }

  .daterangepicker .drp-calendar.left {
    clear: none !important;
  }
}

/* End */


/* Start:/local/components/travelsoft/booking.offers/templates/tsoperator__placements/style.css?17455787139750*/
.tsoperator__offers{
    /* margin-top: 1rem; */
    border-radius: 3px;

}
.offers-list{
    display: flex;
    justify-content: space-between;
    /* overflow: hidden; */
}
/*.offers-list:last-child .offers-list-item{*/
/*    border-bottom: 0;*/
/*}*/
.offers-list-item{
    display: flex;
    justify-content: center;
    align-items: center;
    border-bottom: 1px solid var(--last-color);
    position: relative;
    overflow: hidden;
    padding: .25rem 0.5rem;
    text-align: left;
    border-bottom: 1px solid  #dbdfe4;
    flex-grow: 1;
    min-height: 65px;
}
.offers-list-item ul.ul{
    margin: 0;
}
.offers-list-item > *{
    text-shadow: 1px 1px 1px 1px rgba(0,0,0,.1);
    font-size: 16px;

}
.offers-list-item .ul li{
    list-style: none;
    line-height: 1.3;
    margin-left: .75rem;
}
.offers-list-item svg{
    position: absolute;
    top: 13px;
    left: -22px;
    /* width: 90px; */
    height: 100px;
    fill: #919191;
    opacity: 0.05;
}
.offers-list-item.price span{
    display: flex;
    justify-content: center;
    /* flex-direction: column; */
    align-items: center;
    font-size: 17px;
}
.offers-list-item.price b{
    color: var(--secondary-color);
    font-size: 105%;
}
/*.offers-list-item:nth-child(2){*/
/*    flex-grow: 3;*/
/*    justify-content: flex-start;*/
/*}*/
/*.offers-list-item:last-child{*/
/*    flex-grow: 2;*/
/*}*/
.booking_button {
    background: var(--primary-color);
    padding: .75rem .5rem;
    color: #fff;
    text-transform: uppercase;
    border: 0;
    outline: 0;
    font-size: 14px;
    width: 100%;
    /* margin-top: 0.75rem; */
    text-align: center;
    box-sizing: border-box;
    line-height: 1;
    cursor: pointer;
    transition: all .2s;
    max-width: 300px;
}
.booking_button:hover{
    transition: background .2s;
    background: var(--primary-color-dark);
    color: white;
}
.booking_button:active{
    transform: scale(0.98);
    background: var(--primary-color-dark);
    transition: transform .2s;

}
@media (min-width: 992px) {
    .offers-list:last-child .offers-list-item {
        border-bottom: 0;
    }
}


@media (max-width: 992px) {
    .tsoperator__offers{
        /* margin-top: 1rem; */
        border-radius: 3px;
        overflow: hidden;
        border: 0;
    }
    .offers-list{
        flex-wrap: wrap;
        border-radius: 5px;
        overflow: hidden;
        /* margin-bottom: .5rem; */
        padding: 0 !important;
        border: 1px solid #eee;
    }
    .offers-list-item{
        flex-basis: 100%;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 0;
        border-bottom: 1px solid #eee;
        padding: .25rem 0;
        min-height: 35px;
    }
    .offers-list-item:last-child{
        border-bottom: 0;
    }
    .offers-list-item > *{
        text-align: center;
    }
    .offers-list-item ul{
        text-align: center;
    }
}
.tsoperator-offers__offer{
    border: 1px solid #e1e1e1;
    /* padding: 1rem 0; */
}


.tsoperator-offers__offer [class^="col"]{
    position: relative;
    display: flex;
    justify-content: center;
    flex-direction: column;
    justify-content: center;
    align-items: center; 
}
.tsoperator-offers__offer [class^="col"]:nth-child(3) ul.ul{
    padding-left: 0;
    margin:  0 !important;
    list-style: none;
}
.tsoperator-offers__offer [class^="col"]:nth-child(3) ul.ul li{
    list-style: none;
}
.tsoperator-offers__offer [class^="col"]:nth-child(4) strong {
    display: flex;
    flex-direction: column;
    line-height: 14px;
}
.duration{
    position: absolute;
    height: 40px;
    width: 40px;
    border-radius: 50%;
    border: 1px solid #e1e1e1;
    right: -15px;
    display: flex;
    align-items: center;
    flex-direction: column;
    top: calc(50% - 20px);
    line-height: 12px;
    background: white;
    z-index: 1;
    justify-content: center;
}
.duration div{
    background: white;
    z-index: 1;
    height: 100%;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /* padding-top: 4px; */
    color: #575869;
}
.duration div b:last-child{
    font-size: 80%;
}
.duration:before{
    content: "";
    height: 150%;
    display: block;
    top: -25%;
    position: absolute;
    width: 1px;
    background: #e1e1e1;
    z-index: 0;
}
.tsoperator-offers__offer .col-auto{
    border-right: 1px solid #e1e1e1;
    display: flex;
    justify-content: center;
}
.tsoperator-offers__offer .col-auto div{
    display: flex;
    align-items: center;
}

.minus{
    position: absolute;
    height: 22px;
    width: 22px;
    border-radius: 50%;
    border: 1px solid #e1e1e1;
    right: -5px;
    display: flex;
    align-items: center;
    flex-direction: column;
    top: calc(50% - 11px);
    line-height: 12px;
    background: white;
    z-index: 1;
    justify-content: center;
}
.minus div{
    background: white;
    z-index: 1;
    height: 100%;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /* padding-top: 4px; */
    color: #575869;
}
.minus::before {
    content: "";
    height: 46px;
    display: block;
    top: -14px;
    position: absolute;
    width: 1px;
    background: #e1e1e1;
    z-index: 0;
    left: 10px;
}

/* Tooltip container */
.custom-tooltip {
    position: relative;
    display: inline-block;

}

/* Tooltip text */
.custom-tooltip .custom-tooltiptext {
    visibility: hidden;
    width: 120px;
    background-color: black;
    color: #fff;
    text-align: center;
    padding: 1rem;
    border-radius: 6px;
    bottom: 150%;
    left: -52px;
    position: absolute;
    z-index: 1;
    line-height: 1;
}
.custom-tooltip .custom-tooltiptext::after {
    content: " ";
    position: absolute;
    top: 100%; /* At the bottom of the tooltip */
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: black transparent transparent transparent;
}
/* Show the tooltip text when you mouse over the tooltip container */
.custom-tooltip:hover .custom-tooltiptext {
    visibility: visible;
}

@media (max-width: 1200px) {

    .tsoperator-offers__offer.row{
        border: 1px solid #e1e1e1 !important;
        margin: 0;
        margin-bottom: 1rem;
        padding: 0;
    }
    .tsoperator-offers__offer [class^="col"]{
        padding: 1rem 15px;
    }
    .tsoperator-offers__offer [class^="col"]:nth-child(1),.tsoperator-offers__offer [class^="col"]:nth-child(2) {
        padding-bottom: 1rem;
        position: relative;
        border-bottom: 1px solid #e1e1e1;
        /* border-top: 1px solid #e1e1e1; */
    }
    .tsoperator-offers__offer [class^="col"]:nth-child(2){
        border-right: 0;
    }
    .duration {
        position: absolute;
        height: 40px;
        width: 40px;
        border-radius: 50%;
        border: 1px solid #e1e1e1;
        right: -22px;
        display: flex;
        align-items: center;
        flex-direction: column;
        top: calc(50% - 20px);
        line-height: 12px;
        background: white;
        z-index: 1;
        justify-content: center;
    }
    .duration div {
        background: white;
        z-index: 1;
        height: 100%;
        border-radius: 50%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        /* padding-top: 4px; */
        color: #575869;
        width: 38px;
    }
    .duration:before {
        content: "";
        height: 1px;
        display: block;
        top: 50%;
        position: absolute;
        width: 200%;
        background: #e1e1e1;
        z-index: 0;
    }
}
@media (max-width: 767px) {
    .tsoperator-offers__offer{
        margin-bottom: 1rem;
        border-top: 1px  solid #e1e1e1;
    }
    .duration {
        position: absolute;
        height: 40px;
        width: 40px;
        border-radius: 50%;
        border: 1px solid #e1e1e1;
        right: calc(86% - 20px);
        display: flex;
        align-items: center;
        flex-direction: column;
        bottom: -20px;
        top: unset;
        line-height: 12px;
        background: white;
        z-index: 1;
        justify-content: center;
    }
    .tsoperator-offers__offer [class^="col"] {
        padding: .5rem 15px .5rem !IMPORTANT;
    }
    .tsoperator-offers__offer [class^="col"]:last-child{
        border-top: 1px solid #e1e1e1;
    }
    .tsoperator-offers__offer [class^="col"]:nth-child(3){
        position: relative;
        border-right:0;
    }
}
@media (max-width: 568px) {
    .minus{
        right: -15px;
    }

}

.offer-description-modal {
    max-width: 800px;
    min-width: 300px;
    width: 100%;
}

.offer-description-modal__desc {
    margin-top: 30px;
}

.rslides_nav {
    z-index: 3;
    position: absolute;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    top: 50%;
    left: 15px;
    opacity: 0.7;
    text-indent: -9999px;
    overflow: hidden;
    text-decoration: none;
    height: 61px;
    width: 38px;
    background: transparent url("/local/components/travelsoft/booking.offers/templates/tsoperator__placements/themes.gif") no-repeat left top;
    margin-top: -45px;
}

.rslides_nav:active {
    opacity: 1.0;
}

.rslides_nav.next {
    left: auto;
    background-position: right top;
    right: 15px;
}

.offer-description-link {
    text-decoration: underline;
}
.modal.in{
    opacity: 1 !important;
    display: flex !important;
}

.modal{
    height: 100vh;

    align-items: center;
    background: rgba(119, 119, 119, 0.3);
}
.modal [class*= 'col-']{
    border: 0 !important;
}
.tsoperator-offers__offer [class^="col"]:nth-child(3) ul.ul{
    text-align: center;
}
.text-price{
  color: #ff8b1a;
  font-size: 18px;
  line-height: 1.3;
}
/* End */


/* Start:/local/modules/travelsoft.travelbooking/plugins/ResponsiveSlides/responsiveslides.css?1745578713489*/
/*! http://responsiveslides.com v1.55 by @viljamis */

.rslides {
  position: relative;
  list-style: none;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0;
  }

.rslides li {
  -webkit-backface-visibility: hidden;
  position: absolute;
  display: none;
  width: 100%;
  left: 0;
  top: 0;
  }

.rslides li:first-child {
  position: relative;
  display: block;
  float: left;
  }

.rslides img {
  display: block;
  height: auto;
  float: left;
  width: 100%;
  border: 0;
  }
/* End */


/* Start:/bitrix/components/bitrix/map.yandex.system/templates/.default/style.css?1745578780666*/
div.bx-yandex-map {color: black; font-size: 11px;}
div.bx-yandex-map div.YMaps-b-balloon-content {color: black; font-size: 11px;}
div.bx-popup-form div.bx-yandex-map div.YMaps-b-balloon-point div.YMaps-b-balloon div.YMaps-b-balloon-wrap table.YMaps-b-balloon-frame td {
	padding: 0px !important;
}


div.bx-popup-form div.bx-yandex-map div.YMaps-b-balloon-point div.YMaps-b-balloon div.YMaps-b-balloon-wrap table.YMaps-b-balloon-frame td textarea{
	font-size: 11px;
}


div.bx-popup-form div.bx-yandex-map div.YMaps-b-balloon-point div.YMaps-b-balloon div.YMaps-b-balloon-wrap table.YMaps-b-balloon-frame td.YMaps-b-balloon-b {
	background-image: none !important;
}

/* End */


/* Start:/local/templates/travelsoft/components/bitrix/news/hotels/bitrix/news.detail/.default/style.css?177679243627791*/
.drawer-fullscreen--with-tabs .nav-pills {
  transform: translateY(-15px);
  margin-bottom: 0;
}

.drawer-fullscreen--with-tabs.active .nav-pills {
  transform: translateY(-32px);
}

.parent-zIndex:not(.active) .drawer-fullscreen .with-patern {
  background-image: none;
}

.scroll-nav-wrapper .scroll-nav>ul {
  display: flex;
  flex-flow: row;
  background: rgba(255, 255, 255, 1);
  /*width: fit-content;*/
  white-space: nowrap;
  overflow: auto;
}

.scroll-nav-wrapper .scroll-nav>ul>li.nav-item>a {
  padding: 0.5rem 1rem;
  display: block;
}

@media (max-width: 768px) {
  .scroll-nav-offset {
    top: 250px !important;
  }
}

.list-single-main-media {
  overflow: hidden;
  margin-bottom: 0px;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-flow: column;
  width: auto;
}

.list-single-carousel-wrap .sw-btn,
.single-slider-wrapper .sw-btn {
  top: 50%;
}

.single-slider-wrapper img,
.inline-carousel img {
  width: 100%;
  height: auto;
}

.single-slider-wrapper .slider-nav .slick-slide-item {
  cursor: pointer;
  opacity: 0.7;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.single-slider-wrapper .slider-nav .slick-current .slick-slide-item,
.single-slider-wrapper .slider-nav .slick-slide-item:hover {
  opacity: 1;
}

.single-slider-wrapper .slick-slide {
  padding-right: 1px;
  padding-left: 1px;
}

.single-slider-wrapper {
  position: relative;
  width: 100%;
}

.single-slider-wrapper .detail-page-dots-container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.single-slider-wrapper .detail-page-dots-container .sw-btn {
  color: white;
  height: 100%;
  display: flex;
  align-items: center;
}

.single-slider-wrapper .detail-page-dots-container .sw-btn i {
  padding: 0.5rem;
  margin: 0.5rem;
  border-radius: 50%;
  border: 1px solid #fff;
  background: rgba(0, 0, 0, 0.8);
  --hover: #0079bf;
  --color: #efefef;
  color: var(--color);
  transition: 0.25s;
}

.single-slider-wrapper .detail-page-dots-container .sw-btn:hover,
.single-slider-wrapper .detail-page-dots-container .sw-btn:focus {
  background: rgba(0, 0, 0, 0.4);
}

.single-slider-wrapper .detail-page-dots-container .sw-btn:hover i,
.single-slider-wrapper .detail-page-dots-container .sw-btn:focus i {
  border-color: var(--hover);
  color: #fff;
  animation: pulse 1s;
  box-shadow: 0 0 0 2em rgba(255, 255, 255, 0);
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 var(--hover);
  }
}

.hotel-sale-block {
  padding-bottom: 20px;
}

.hotel-sale-block .single-slider-wrapper .slick-slide-item {
  display: block;
}

.hotel-sale-block .single-slider-wrapper .slick-slide-item:nth-child(n + 2) {
  display: none;
}

.hotel-sale-block .hotel-detail-photo-and-short-description {
  display: flex;
  gap: 0rem;
  width: 100%;
  font-size: 16px;
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 3px 24px rgb(0 0 0 / 10%);
  flex-wrap: wrap;
}

.hotel-sale-block .hotel-detail-photo-and-short-description h3 {
  font-size: 26px;
}

.hotel-sale-block .hotel-detail-photo-and-short-description .hotel-detail-photo {}

.hotel-sale-block .hotel-detail-photo-and-short-description .hotel-detail-short-description {
  display: flex;
  flex-flow: column;
  gap: 1rem;
  color: #000;
}

.hotel-sale-block .hotel-detail-photo-and-short-description .hotel-detail-short-description .reviews-score-wrap ul {}

.hotel-sale-block .hotel-detail-photo-and-short-description .hotel-detail-short-description .reviews-score-wrap ul li {
  display: flex;
  gap: 1rem;
  flex-flow: row;
  margin: 0.25rem 0rem;
}

.hotel-sale-block .hotel-detail-photo-and-short-description .hotel-detail-photo .slider-for {
  width: 100%;
}

.scroll-to-room-search .btn {
  margin: 0 !important;
  height: 100%;
  border: none;
  border-radius: 0 !important;
  background: #ff8b1a;
  display: flex !important;
  width: 100%;
  gap: 0.5rem;
  color: #fff;
  align-items: center;
  justify-content: center;
}

.hotel-sale-block .hotel-detail-photo-and-short-description .list-single-hero-price {
  font-size: 16px;
  color: #0079bf;
  font-weight: 700;
}

.hotel-sale-block .hotel-detail-photo-and-short-description .list-single-hero-price span {
  font-size: 22px;
}

.btn-search-block_wrapper .info {
  margin-bottom: 15px;
}

.btn-search-block_wrapper .info {
  margin-bottom: 15px;
}

.btn-search-block_wrapper .info__price span {
  font-size: 24px;
}

.btn-search-block_wrapper .info__price-add {
  font-weight: bold;
  font-size: 13px;
}

.btn-search-block_wrapper .info__price {
  color: #0079bf;
  font-weight: bold;
  font-size: 16px;
  margin-top: 10px;
  margin-bottom: 15px;
}

.ready {
  background: linear-gradient(to bottom right, #0000004D, #0000004D), url('/local/templates/travelsoft/img/ready.jpg');
  background-size: cover;
  background-position: top;
  padding: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 30px;
}

.ready__content {
  display: flex;
  width: 100%;
  height: 100%;
  flex-direction: column;
  gap: 25px;
  justify-content: center;
  align-items: center;
}

.ready__title {
  font-weight: 700 !important;
  font-size: 40px !important;
  line-height: 100% !important;
  letter-spacing: 0% !important;
  text-align: center !important;
  color: #FFFFFF !important;
}

.ready__btn {
  font-weight: 600;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0%;
  text-align: center;
  color: #FFFFFF;

  padding: 20px 40px;
  text-align: center;
  background: transparent;
  border: 1px solid #ffffff;
  border-radius: 500px;

  transition: all .25s ease-in-out;
}

.ready__btn:hover {
  color: #ffffff !important;
  background: #4351dd !important;
}

/* RECOMMENDED START */

.recommended__item {
  border-radius: 30px 30px 0px 0px;
  width: 100%;
}

.picture {
  overflow: hidden;
  width: 100%;
  border-radius: 30px 30px 0px 0px;
}

.picture__aspect {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  height: 100%;
}

.picture__absolute {
  position: absolute;
  inset: calc(.25rem*0);
}

.picture__img {
  object-fit: cover;
  height: 100%;
  width: 100%;

}

.recommended__content {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border-radius: 0px 0px 30px 30px;
  overflow: hidden;
  padding: 10px 20px 20px 20px;
  gap: 10px;
  min-height: 190px;
}

.recommended__country {
  font-weight: 500;
  font-size: 12px;
  line-height: 100%;
  letter-spacing: 0%;
  color: rgba(168, 168, 168, 0.6);

  display: flex;
  gap: 5px;
  justify-content: flex-start;
  align-items: center;
}

.recommended__title {
  font-weight: 600;
  font-size: 20px;
  line-height: 100%;
  letter-spacing: 0%;
  color: #000000;
}

.price {
  background: #F0F5F9;
  padding: 10px 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  font-weight: 400;
  font-size: 12px;
  line-height: 100%;
  letter-spacing: 0%;
  color: #000000;
  border-radius: 15px;
}

.price__content {
  display: flex;
  gap: 5px;
  align-items: flex-end;
}

.price__total {
  font-weight: 700;
  font-size: 20px;
  line-height: 100%;
  letter-spacing: 0%;
  color: #00B6AA;

}

.price_for-what {
  font-weight: 700;
  font-size: 13px;
  line-height: 100%;
  letter-spacing: 0%;
  color: #00B6AA;
}

/* RECOMMENDED END */

/* HELP START */

.help {
  padding: 0;
  border-radius: 30px;
  background: #ffffff;
  margin-bottom: 20px;
}

.help__container,
.help__container_choice {
  display: flex;
  flex-direction: column;
  gap: 30px;
  padding: 20px;
  justify-content: center;
  align-items: center;
}

.help__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.help__title {
  font-weight: 600;
  font-size: 20px;
  line-height: 21.6px;
  letter-spacing: 0%;
  text-align: center;
  color: #000000;
}

.help__subtitle {
  font-weight: 400;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0%;
  color: #00000099;
}

.help__btn {
  font-weight: 700;
  font-size: 12px;
  line-height: 100%;
  letter-spacing: 0%;
  text-align: center;
  color: #ffffff;
  padding: 10px 40px;
  white-space: nowrap;
  background: #00B6AA;
  box-shadow: 0 3px 15px #00b6aa00;
  border: none !important;
  transition: all .25s ease-in-out;
}

.help__btn:hover {
  box-shadow: 0 3px 15px #00B6AA;
}

.help__input {
  position: relative;
  display: inline-block;
  padding: 10px 20px 10px 30px;
  border: 1px solid #00000099;

}

.help__svg {
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.help__phone {
  /* color: #00000099; */
  color: #000000;
  font-weight: 400;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0%;
  vertical-align: middle;
  border: none !important;
  width: 130px;
}

.help__input,
.help__btn {
  /* width: 185px; */
  width: 100%;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 500px;
}

.help__form {
  display: flex;
}

.form__container {

  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;

}


.help_expert {
  display: flex;
  justify-content: space-between;
  padding: 20px;
}

.help_expert .help__container {
  /* padding: 0 !important; */
  gap: 15px !important;
}

.form__container_expert {
  flex-direction: column;
}

.help__container_expert {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 15px;
  background: #F0F5F9;
  border-radius: 15px;

}

.expert__name {
  font-weight: 400;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0%;
  text-align: center;
  color: #00000099;
}

.help__header_expert {
  align-items: flex-start !important;
}

/* HELP END */

.swiper-number .swiper-slide {
  width: 100% !important;

}

.spoiler__basis {
  flex-basis: 50% !important;
}

/* 
.picture {
    border-radius: 15px;
    overflow: hidden;
    width: 100%;
}

.picture__aspect {
    width: 100%;
    height: 100%;
    aspect-ratio: 16/9;
    position: relative;
}

.picture__absolute {
    inset: 0;
    position: absolute;
}

.picture__img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    max-width: 100%;
    display: block;
} */


.swiper-nav__item {
  width: 30px !important;
  height: 30px !important;

  border-radius: 50% !important;
  /* background: #00B6AA !important; */
  background: #FFFFFF !important;

  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  margin-top: 0 !important;
}

.swiper-nav__item:after {
  font-size: 15px !important;
  /* color: #ffffff !important; */
  color: #000000 !important;
}























@media screen and (min-width: 768px) {
  .dhidden {
    display: none !important;
  }

  .recommended {
    padding: 20px 0px 0px 0px !important;
  }

  .section__ready {
    padding: 20px 0px 0px 0px !important;
  }

  h3 {
    margin-top: 0px !important;
  }
}


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

  .mhidden {
    display: none !important;
  }

  .slick-dots {
    display: none !important;
  }

  .preview-gallery {
    display: flex;
    flex-direction: column-reverse;
  }

  .page--new .sr-tags {
    position: relative !important;
    top: unset !important;
    padding: 0 !important;
    width: 100% !important;
    gap: 5px !important;
  }

  .preview-gallery__item img {
    height: 200px !important;
  }

  .preview-gallery__wrapper {
    min-height: 200px !important;
  }

  .preview-gallery__thumbs-wrapper {
    display: none !important;
  }

  .section--relative-beyond {
    display: none !important;
  }

  .page--new section.section-default {
    padding: 10px !important;
  }

  .add-info__tabs-list__wrapper {
    gap: 5px !important;
  }

  .add-info__tabs-list-item {
    padding: 10px 5px !important;
    font-size: 12px !important;
  }

  .hotel-char__text {
    font-size: 12px;
    color: #000000;
  }

  .page--new .section-default.map-distance {
    margin: 0 !important
  }

  h3 {
    margin: 20px 0px !important;
  }

  section {
    padding: 0px 0px !important;
  }

  .swiper-recomendation .swiper-wrapper {
    padding: 0 !important;
  }
}

@media screen and (max-width: 768px) {
  .hotel-page .row {
    flex-direction: column;
  }

  .main-content,
  .sidebar-content {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
  }

  .sidebar-content {
    margin-top: 30px;
  }

  .ready {
    padding: 60px 20px;
    margin: 20px 0;
  }

  .ready__title {
    font-size: 32px !important;
  }

  .recommended__container {
    padding: 0 10px;
  }
}

@media screen and (max-width: 768px) {
  .container {
    padding: 0 15px;
  }

  .preview-gallery__items,
  .hotel-gallery-slick {
    margin: 0 -5px;
  }

  .preview-gallery__item {
    margin: 0 5px;
  }

  .section-default {
    margin-bottom: 30px;
    padding: 0 10px;
  }

  .about__wrapper,
  .add-info__wrapper {
    padding: 15px;
  }

  .add-info__tabs-list-item {
    white-space: nowrap;
    flex-shrink: 0;
    padding: 10px 15px;
    font-size: 14px;
  }

  .tour-program__spoiler-header {
    padding: 15px;
    flex-wrap: wrap;
  }

  .spoiler-title {
    font-size: 14px;
    flex-basis: 70%;
  }

  .tour-program__spoiler-content {
    flex-direction: column;
  }

  .spoiler__basis {
    flex-basis: 100% !important;
    width: 100%;
  }

  .ready {
    padding: 40px 20px;
    border-radius: 20px;
  }

  .ready__title {
    font-size: 28px !important;
    text-align: center;
  }

  .ready__btn {
    padding: 15px 30px;
    font-size: 14px;
  }

  .btn-search-block_wrapper .info__price span {
    font-size: 20px;
  }

  .stars-wrapper {
    margin: 10px 0;
  }

  .main-title h1 {
    font-size: 24px;
    line-height: 1.3;
  }
}

@media screen and (max-width: 576px) {
  .container {
    padding: 0 10px;
  }

  .preview-gallery__wrapper {
    /* margin: 0 -10px; */
  }

  .sr-tags {
    position: relative !important;
    top: unset !important;
    left: unset !important;
    margin: 15px 0;
    flex-wrap: wrap;
    gap: 8px;
  }

  .sr-tag {
    margin-bottom: 5px;
  }

  .about__title h2,
  .add-info__title h2,
  .gallery-block__title h2 {
    font-size: 20px;
  }

  .hotel-chars {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .hotel-chars__item {
    padding: 12px;
  }

  .help_expert {
    flex-direction: column;
    padding: 15px;
  }

  .help__container_expert {
    margin-top: 20px;
    flex-direction: row;
    text-align: left;
    align-items: center;
  }

  .expert__name {
    text-align: left;
  }

  .form__container {
    flex-direction: column;
    width: 100%;
  }

  .help__input,
  .help__btn {
    width: 100%;
  }

  .help__phone {
    width: 100%;
  }

  .recommended__content {
    padding: 10px 15px 15px 15px;
    min-height: 160px;
  }

  .recommended__title {
    font-size: 18px;
  }

  .price {
    padding: 8px 15px;
  }

  .price__total {
    font-size: 18px;
  }

  .swiper-number {
    margin: 0 -10px;
  }

  .swiper__nav {
    position: absolute;
    margin-top: 15px;
    display: flex;
    justify-content: center;
    top: 25%;
    left: 0;
    justify-content: space-between;
    padding: 0px 5px;
    width: 100%;
  }

  .swiper-nav__item {
    position: relative !important;
    top: unset !important;
    left: unset !important;
    right: unset !important;
    margin: 0 !important;
  }
}

@media screen and (max-width: 480px) {
  .ready {
    padding: 30px 15px;
  }

  .ready__title {
    font-size: 24px !important;
  }

  .ready__btn {
    padding: 12px 25px;
    font-size: 14px;
  }

  .recommended h3 {
    font-size: 20px;
    padding: 0 15px;
  }

  .recommended__item {
    border-radius: 20px 20px 0 0;
  }

  .picture {
    border-radius: 20px 20px 0 0;
  }

  .recommended__content {
    border-radius: 0 0 20px 20px;
    min-height: 140px;
  }

  .help__container,
  .help__container_choice {
    padding: 15px;
    gap: 20px;
  }

  .help__title {
    font-size: 18px;
    line-height: 1.3;
  }

  .map-distance__map div {
    height: 250px;
  }

  .btn-search-block_wrapper .info-buttons--booking {
    padding: 12px 20px;
    font-size: 14px;
  }

  .universal-tab-list-content {
    font-size: 14px;
    line-height: 1.5;
  }

  .about__desc p {
    font-size: 14px;
    line-height: 1.5;
  }
}

/* Дополнительные улучшения для тач-устройств */
@media (hover: none) and (pointer: coarse) {
  .preview-gallery__item {
    cursor: default;
  }

  .add-info__tabs-list-item {
    padding: 12px 16px;
  }

  .tour-program__spoiler-header {
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }

  .help__btn,
  .ready__btn,
  .info-buttons--booking {
    -webkit-tap-highlight-color: transparent;
  }
}

/* Исправления для iOS Safari */
@supports (-webkit-touch-callout: none) {
  .preview-gallery__item img {
    -webkit-user-drag: none;
  }

  .help__input {
    -webkit-appearance: none;
  }
}

/* Улучшения для очень высоких экранов */
@media screen and (min-width: 1200px) and (min-height: 800px) {
  .sticky-block {
    position: sticky;
    top: 100px;
  }
}

.recommended__item .text-price {
  color: rgb(0, 0, 0);
  font-family: Manrope;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  text-align: left;
}

.text-price--substrate {
  background: #F0F5F9;
  border-radius: 15px;
  margin-left: -10px;
  margin-right: -10px;
  padding: 12px 10px;
  margin-top: 10px;
}

.recommended__item .text-price span {
  color: rgb(0, 182, 170);
  font-family: Manrope;
  font-size: 20px;
  font-weight: 700;
  line-height: 27px;
  letter-spacing: 0%;
  text-align: left;
}

span.small-measure {
  font-size: 14px !important;
}

.swiper-recomendation .swiper-wrapper {
  align-items: stretch;
}


.swiper-recomendation .swiper-slide {
  height: auto;
  display: flex;
  flex-direction: column;
}


.swiper-recomendation .swiper-slide>a {
  display: flex;
  /* flex-direction: column; */
  flex: 1 1 auto;
}


.swiper-recomendation .slider-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}


.swiper-recomendation .geodir-category-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1 1 auto;
}

.swiper-recomendation .geodir-category-img.card-post {
  height: 186px;
  overflow: hidden;
}

.navigation__recommendation {
  /* top: -85px; */
  top: 54px !important;
}

.swiper-recomendation .slider-card {
  width: 100%;
}

.number__description {

  padding: 15px !important;
  margin: 0 !important;
  border-radius: unset !important;
  list-style: unset !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  color: #000000 !important;
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: flex-start;
  align-items: flex-start;
  height: 260px;
  overflow-y: auto;
  overflow-x: hidden;
  width: 100% !important;
  padding-bottom: 0 !important;
}

.number__description * {
  padding: 0px !important;
  margin: 0 !important;
  border-radius: unset !important;
  list-style: unset !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  width: 100% !important;
  color: #000000 !important;
}

.number__description svg {
  width: unset !important;
}

.page--new .tour-program__spoiler .tour-program__spoiler-content_number {
  background-color: #ffffff !important;
  padding: 20px 20px 40px 20px !important;
  position: relative !important;
}

.numbers-background {
  background-color: rgb(231, 234, 255, 0.5) !important;
  padding: 20px 10px !important;
  margin: 10px 0px;
  border-radius: 25px;
}

.tour-program__spoiler-header_number {
  border-radius: 25px !important;
}

.tour-program__spoiler-header_number {
  transition: all .25s ease-in-out;
}

.tour-program__spoiler-open .tour-program__spoiler-header_number {
  border-radius: 25px 25px 0px 0px !important;
}

@media screen and (max-width: 1135px) {
  .form__container {
    flex-direction: column !important;
  }
}

@media screen and (max-width: 1036px) and (min-width: 768px) {
  .help_expert {
    flex-direction: column-reverse !important;
    gap: 10px !important;
  }
}

.swiper-number {
  border-radius: 15px !important;
}

.max-places {
  display: flex;
  gap: 5px;
  align-items: flex-start;
}


.number__description::-webkit-scrollbar {
  width: 4px;
}

.number__description::-webkit-scrollbar-track {
  -webkit-border-radius: 3px;
  border-radius: 3px;
  background-color: #D9D9D9;
}

.number__description::-webkit-scrollbar-thumb {
  -webkit-border-radius: 3px;
  border-radius: 3px;
  background: #00B6AA;
}

.number__description::-webkit-scrollbar-thumb:window-inactive {
  background: #00B6AA;
}

@media screen and (max-width: 1120px) {
  .tour-program__spoiler-content_number {
    flex-direction: column !important;
  }
}

.tour-program__spoiler-header_number i {
  font-weight: 100 !important;
}

.swiper-pagination_room {
  position: absolute;
  z-index: 10;
  bottom: -20px !important;
  display: flex;
  justify-content: center;
}

.swiper-pagination_room .swiper-pagination-bullet-active {
  background: #4351DD !important;
}

.swiper-pagination_room .swiper-pagination-bullet {
  /* background: rgba(67, 81, 221, 0.5) !important; */
  background: #a1a8ee !important;
}

@media screen and (min-width: 992px) {
  .swiper__nav_room {
    top: -15px;
  }
}


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

  .swiper__nav_room .swiper-button-prev:after,
  .swiper__nav_room .swiper-button-next:after {
    font-size: 11px !important;
  }
}



@media screen and (min-width: 992px) {
  .help_expert {
    flex-direction: row !important;
  }

}

.policy {
  display: flex;
  flex-wrap: wrap;
  color: #000000 !important;
  gap: 10px;
}

.policy__container {
  max-width: 300px;
}

.tour-program__spoiler-header b {
  white-space: unset !important;
}


.policy__title {
  color: #000000;
  display: flex;
  align-items: center;
  gap: 5px;
  margin-bottom: 10px;
}

.policy__container {
  padding: 12px;
}

.policy__text {
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}


ul.amenities__list {
  list-style-type: none;
  padding-left: 20px;
}

ul.amenities__list li {
  position: relative;
  padding-left: 15px;
}

ul.amenities__list li::before {
  content: "•";
  color: gray;
  font-size: 0.8em;
  position: absolute;
  left: 0;
}


.reviews__item {
  display: flex;
  align-items: center;
  border-radius: 16px;
  border: 1px solid #acacac;
  margin-bottom: 15px;
}

.reviews__tourist {
  border-radius: 16px 0px 0px 16px;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  padding: 10px;
}

.reviews__line {
  width: 1px;
  background: #acacac;
  align-self: stretch;
}

.reviews__info {
  border-radius: 0px 16px 16px 0px;
  display: flex;
  flex-direction: column;
  flex: 3 0 0;
  align-self: stretch;
  padding: 10px;
}

.reviews__good {
  color: #00B6AA;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
}

.reviews__bad {
  color: #ce2121;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  margin-top: 10px;
}

.section-reviews {
  color: #000000;
}

.reviews__author {
  font-size: 21px;
  margin-bottom: 20px;
  font-weight: 700;
}

.reviews__type {
  margin-bottom: 3px;
  font-weight: 700;
}

.reviews__tourist,
.sort__text {
  color: #000000;
}

.reviews__stars {
  display: flex;
  align-items: center;
}

#reviews-pagination .page-link {
  color: #000000;
  cursor: pointer;
  border-radius: 50%;
  width: 35px;
  height: 35px;
  display: flex;
  justify-content: center;
  border: none !important;
  background-color: #a6ddd9ff;
  transition: all 0.3s ease-in-out;
}

#reviews-pagination .page-item.active .page-link {
  background-color: #00B6AA;
  color: #ffffff;
}

#reviews-pagination .page-item:not(.active) .page-link:hover {
  background-color: rgba(0, 182, 170, 0.1);
}

#reviews-pagination .page-item.disabled .page-link {
  background: none;
  border: none;
  color: #666;
  cursor: default;
}

.review-item {
  transition: opacity 0.3s ease-in-out;
}

.review-content {
  position: relative;
  overflow: hidden;
  transition: max-height 0.5s ease-in-out;
}

.review-content:not(.expanded) {
  max-height: 90px;
}

.review-content.expanded {
  max-height: 1000px;
}

.review-toggle-wrapper {
  margin-top: 15px;
  text-align: left;
}

.review-toggle-btn {
  background: none;
  border: 1px solid #00B6AA;
  color: #00B6AA;
  padding: 8px 8px;

  border-radius: 20px;
  cursor: pointer;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.3s ease-in-out;
}

.review-toggle-btn:hover {
  background-color: #00B6AA;
  color: white;
}

.toggle-icon {
  transition: transform 0.3s ease-in-out;
}

.review-plus,
.review-minus {
  margin-bottom: 10px;
  line-height: 1.5;
}

.sort-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 15px 0px;
  background: white;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  user-select: none;
}

.sort-toggle:hover {
  border-color: #00B6AA;
  color: #00B6AA;
}

.sort-icon {
  transition: transform 0.3s ease-in-out;
}

.mobile-read-reviews-btn-wrapper {
  margin-top: 20px;
  text-align: center;
}

.mobile-read-reviews-btn {
  background-color: #00B6AA;
  color: white;
  border: none;
  padding: 12px 24px;
  border-radius: 25px;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  display: inline-block;
}

.mobile-read-reviews-btn:hover {
  background-color: #009688;
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 182, 170, 0.3);
}

.mobile-reviews-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s ease-in-out;
}

.mobile-reviews-modal.open {
  visibility: visible;
  opacity: 1;
}

.mobile-reviews-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}

.mobile-reviews-modal.open .mobile-reviews-modal__overlay {
  opacity: 1;
}

.mobile-reviews-modal__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: white;
  border-radius: 20px 20px 0 0;
  padding: 20px;
  transform: translateY(100%);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  max-height: 85vh;
  overflow-y: auto;
}

.mobile-reviews-modal.open .mobile-reviews-modal__content {
  transform: translateY(0);
}

.mobile-reviews-modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.mobile-reviews-modal__title {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
}

.mobile-reviews-modal__close {
  background: none;
  border: none;
  padding: 5px;
  cursor: pointer;
  color: #666;
  transition: color 0.3s ease-in-out;
}

.mobile-reviews-modal__close:hover {
  color: #00B6AA;
}

.mobile-reviews-modal__container {
  padding-bottom: 20px;
}

.mobile-reviews-modal__container .review-item {
  display: flex !important;
  margin-bottom: 20px;
}

@media (min-width: 769px) {
  .mobile-only {
    display: none !important;
  }

  .review-toggle-wrapper_mobile {
    display: none !important;
  }
}


@media (max-width: 768px) {
  .desktop-only {
    display: none !important;
  }

  .reviews__info {
    border-left: 1px solid #acacac;
  }

  .reviews__line {
    display: none !important;
  }

  .reviews__tourist {
    flex: 2 0 0 !important;
  }
}

@media (min-width: 446px) {
  .review-toggle-wrapper_mobile {
    display: none !important;
  }
}

.main-title_mobile {
  font-size: 20px;
  line-height: 1.3;
  color: #000;
  font-weight: 700;
}
/* End */


/* Start:/local/templates/travelsoft/components/travelsoft/callback/travelsoft_ticket_intourdv25/style.css?17756695834429*/
.subscribe-wrap25 .col-md-7 {
    background: url(/local/templates/travelsoft/components/travelsoft/callback/travelsoft_ticket_intourdv25/./union.svg);
    background-size: contain;
    background-size: cover;
    background-position: 0% 50%;
    background-repeat: no-repeat;
    border-radius: 30px;
}

.subscribe-wrap25 .subscribe-25-l {
    padding: 131px 60px;
}

.subscribe-wrap25 .subscription-ttl {
    color: rgb(255, 255, 255);
    font-family: Manrope;
    font-size: 50px;
    font-weight: 800;
    line-height: 120%;
    text-align: left;
    margin-bottom: 30px;
}

.subscribe-wrap25 .subscription-desc {
    color: rgb(255, 255, 255);
    font-family: Manrope;
    font-size: 20px;
    font-weight: 800;
    line-height: 27px;
    text-align: left;
}

.subscribe-wrap25 .success-container {
    display: none !important;
}

.subscribe-wrap25 form#ts_leave_ticket {
    border-radius: 30px;
    background: rgb(255, 255, 255);
    display: flex;
    justify-content: center;
    padding: 30px 40px;
}

.subscribe-wrap25 .subscribe-25-r {
    padding-left: 0;
    padding-right: 0;
}

.subscribe-wrap25 form#ts_leave_ticket {
    border-left: 1px dashed gray;
}

.subscribe-wrap25 .subscribe-25-l {
    margin-right: -10px;
}

.subscribe-wrap25 .subscription-button {
    border-radius: 500px;
    background: rgb(0, 182, 170);
    width: 100%;
    height: 62px;
}

.subscribe-wrap25 h4 {
    text-align: center;
    margin-bottom: 30px;
}

.subscribe-wrap25 h3 {
    margin-bottom: 15px;
}

.communication-methods .radio-buttons-group {
    display: flex;
    gap: 10px;
}

.communication-methods .radio-buttons-group input[type="radio"] {
    display: none;
}

.communication-methods .radio-buttons-group label {
    padding: 5px 15px;
    cursor: pointer;
    background-color: white;
    transition: 0.3s;
    box-sizing: border-box;
    border: 0.5px solid rgb(100, 120, 255);
    border-radius: 500px;
    color: rgb(0, 0, 0);
    font-family: Manrope;
    font-size: 10px;
    font-weight: 400;
    line-height: 14px;
    text-align: left;
}

.form-leave-ticket label {
    color: rgb(0, 0, 0);
    font-family: Manrope;
    font-size: 15px;
    font-weight: 500;
    line-height: 20px;
    text-align: left;
    margin-bottom: 10px;
}

.communication-methods {
    margin-top: 15px;
    margin-bottom: 30px;
}

.communication-methods .radio-buttons-group input[type="radio"]:checked+label {
    background: rgb(100, 120, 255);
    color: white;
}

.form-leave-ticket .form-group input.form-input {
    border-radius: 500px;
    border: 1px solid rgba(0, 0, 0, 0.2);
}

.subscribe-wrap25 input[type="text"] {
    border-radius: 500px;
    background: rgb(248, 248, 250);
    padding: 20px 30px !important;
    color: rgb(0, 0, 0);
    font-family: Manrope;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0%;
    text-align: left;
    border: none;
    width: 100%;
}

.subscribe-wrap25 input[type="tel"] {
    border-radius: 500px;
    background: rgb(248, 248, 250);
    padding: 20px 30px !important;
    color: rgb(0, 0, 0);
    font-family: Manrope;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0%;
    text-align: left;
    border: none;
    width: 100%;
}

.subscribe-wrap25 .btn {
    border-radius: 500px !important;
    background: rgb(0, 182, 170) !important;
    text-align: center;
    border: none;
}

.subscribe-wrap25 .btn:hover {
    background: rgb(68, 81, 221) !important;
}

@media (max-width: 768px) {
    .subscribe-wrap25 form#ts_leave_ticket {
        border-top: 1px dashed gray;
        border-left: none;
    }

    .subscribe-wrap25 .col-md-7 {
        background: url(/local/templates/travelsoft/components/travelsoft/callback/travelsoft_ticket_intourdv25/./unionm.svg);
        background-size: 100vw;
        background-position: 50% 0%;
        background-repeat: no-repeat;
    }

    .subscribe-wrap25 h4 {
        text-align: left;
        margin-bottom: 30px;
    }

    .subscribe-wrap25 .subscription-ttl {
        font-size: 26px;
        font-weight: 800;
        line-height: 120%;
        letter-spacing: 0%;
        text-align: left;
        margin-bottom: 15px;
    }

    .subscribe-wrap25 .subscription-desc {
        font-size: 14px;
        font-weight: 800;
        line-height: 120%;
        letter-spacing: 0%;
        text-align: left;
    }

    .subscribe-wrap25 .subscribe-25-l {}

    .subscribe-wrap25 .subscribe-25-r {}

}

@media screen and (max-width: 400px) {
    .subscribe-wrap25 .col-md-7 {
        background-size: 97vw !important;
        background-position: 43% 0% !important;
    }
}
/* End */


/* Start:/local/templates/travelsoft/vendor/fancybox/jquery.fancybox.css?174557871617412*/
body.compensate-for-scrollbar {
    overflow: hidden;
}

.fancybox-active {
    height: auto;
}

.fancybox-is-hidden {
    left: -9999px;
    margin: 0;
    position: absolute !important;
    top: -9999px;
    visibility: hidden;
}

.fancybox-container {
    -webkit-backface-visibility: hidden;
    height: 100%;
    left: 0;
    outline: none;
    position: fixed;
    -webkit-tap-highlight-color: transparent;
    top: 0;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    transform: translateZ(0);
    width: 100%;
    z-index: 99992;
}

.fancybox-container * {
    box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.fancybox-outer {
    -webkit-overflow-scrolling: touch;
    overflow-y: auto;
}

.fancybox-bg {
    background: rgb(30, 30, 30);
    opacity: 0;
    transition-duration: inherit;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(.47, 0, .74, .71);
}

.fancybox-is-open .fancybox-bg {
    opacity: .9;
    transition-timing-function: cubic-bezier(.22, .61, .36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
    direction: ltr;
    opacity: 0;
    position: absolute;
    transition: opacity .25s ease, visibility 0s ease .25s;
    visibility: hidden;
    z-index: 99997;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
    opacity: 1;
    transition: opacity .25s ease 0s, visibility 0s ease 0s;
    visibility: visible;
}

.fancybox-infobar {
    color: #ccc;
    font-size: 13px;
    -webkit-font-smoothing: subpixel-antialiased;
    height: 44px;
    left: 0;
    line-height: 44px;
    min-width: 44px;
    mix-blend-mode: difference;
    padding: 0 10px;
    pointer-events: none;
    top: 0;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.fancybox-toolbar {
    right: 0;
    top: 0;
}

.fancybox-stage {
    direction: ltr;
    overflow: visible;
    transform: translateZ(0);
    z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
    overflow: hidden;
}

.fancybox-slide {
    -webkit-backface-visibility: hidden;
    /* Using without prefix would break IE11 */
    display: none;
    height: 100%;
    left: 0;
    outline: none;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 44px;
    position: absolute;
    text-align: center;
    top: 0;
    transition-property: transform, opacity;
    white-space: normal;
    width: 100%;
    z-index: 99994;
}

.fancybox-slide::before {
    content: '';
    display: inline-block;
    font-size: 0;
    height: 100%;
    vertical-align: middle;
    width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
    display: block;
}

.fancybox-slide--image {
    overflow: hidden;
    padding: 44px 0;
}

.fancybox-slide--image::before {
    display: none;
}

.fancybox-slide--html {
    padding: 6px;
}

.fancybox-content {
    background: #fff;
    display: inline-block;
    margin: 0;
    max-width: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 44px;
    position: relative;
    text-align: left;
    vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
    animation-timing-function: cubic-bezier(.5, 0, .14, 1);
    -webkit-backface-visibility: hidden;
    background: transparent;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    left: 0;
    max-width: none;
    overflow: visible;
    padding: 0;
    position: absolute;
    top: 0;
    -ms-transform-origin: top left;
    transform-origin: top left;
    transition-property: transform, opacity;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
    cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
    cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
    cursor: -webkit-grab;
    cursor: grab;
}

.fancybox-is-grabbing .fancybox-content {
    cursor: -webkit-grabbing;
    cursor: grabbing;
}

.fancybox-container [data-selectable='true'] {
    cursor: text;
}

.fancybox-image,
.fancybox-spaceball {
    background: transparent;
    border: 0;
    height: 100%;
    left: 0;
    margin: 0;
    max-height: none;
    max-width: none;
    padding: 0;
    position: absolute;
    top: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 100%;
}

.fancybox-spaceball {
    z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
    height: 100%;
    overflow: visible;
    padding: 0;
    width: 100%;
}

.fancybox-slide--video .fancybox-content {
    background: #000;
}

.fancybox-slide--map .fancybox-content {
    background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
    background: #fff;
}

.fancybox-video,
.fancybox-iframe {
    background: transparent;
    border: 0;
    display: block;
    height: 100%;
    margin: 0;
    overflow: hidden;
    padding: 0;
    width: 100%;
}

/* Fix iOS */
.fancybox-iframe {
    left: 0;
    position: absolute;
    top: 0;
}

.fancybox-error {
    background: #fff;
    cursor: default;
    max-width: 400px;
    padding: 40px;
    width: 100%;
}

.fancybox-error p {
    color: #444;
    font-size: 16px;
    line-height: 20px;
    margin: 0;
    padding: 0;
}

/* Buttons */

.fancybox-button {
    background: rgba(30, 30, 30, .6);
    border: 0;
    border-radius: 0;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    height: 44px;
    margin: 0;
    padding: 10px;
    position: relative;
    transition: color .2s;
    vertical-align: top;
    visibility: inherit;
    width: 44px;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
    color: #ccc;
}

.fancybox-button:hover {
    color: #fff;
}

.fancybox-button:focus {
    outline: none;
}

.fancybox-button.fancybox-focus {
    outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
    color: #888;
    cursor: default;
    outline: none;
}

/* Fix IE11 */
.fancybox-button div {
    height: 100%;
}

.fancybox-button svg {
    display: block;
    height: 100%;
    overflow: visible;
    position: relative;
    width: 100%;
}

.fancybox-button svg path {
    fill: currentColor;
    stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
    display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
    display: none;
}

.fancybox-progress {
    background: #ff5268;
    height: 2px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -ms-transform-origin: 0;
    transform-origin: 0;
    transition-property: transform;
    transition-timing-function: linear;
    z-index: 99998;
}

/* Close button on the top right corner of html content */

.fancybox-close-small {
    background: transparent;
    border: 0;
    border-radius: 0;
    color: #ccc;
    cursor: pointer;
    opacity: .8;
    padding: 8px;
    position: absolute;
    right: -12px;
    top: -44px;
    z-index: 401;
}

.fancybox-close-small:hover {
    color: #fff;
    opacity: 1;
}

.fancybox-slide--html .fancybox-close-small {
    color: currentColor;
    padding: 10px;
    right: 0;
    top: 0;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
    overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
    display: none;
}

/* Navigation arrows */

.fancybox-navigation .fancybox-button {
    background-clip: content-box;
    height: 100px;
    opacity: 0;
    position: absolute;
    top: calc(50% - 50px);
    width: 70px;
}

.fancybox-navigation .fancybox-button div {
    padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left {
    left: 0;
    left: env(safe-area-inset-left);
    padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
    padding: 31px 6px 31px 26px;
    right: 0;
    right: env(safe-area-inset-right);
}

/* Caption */

.fancybox-caption {
    background: linear-gradient(to top,
        rgba(0, 0, 0, .85) 0%,
        rgba(0, 0, 0, .3) 50%,
        rgba(0, 0, 0, .15) 65%,
        rgba(0, 0, 0, .075) 75.5%,
        rgba(0, 0, 0, .037) 82.85%,
        rgba(0, 0, 0, .019) 88%,
        rgba(0, 0, 0, 0) 100%);
    bottom: 0;
    color: #eee;
    font-size: 14px;
    font-weight: 400;
    left: 0;
    line-height: 1.5;
    padding: 75px 44px 25px 44px;
    pointer-events: none;
    right: 0;
    text-align: center;
    z-index: 99996;
}

@supports (padding: max(0px)) {
    .fancybox-caption {
        padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left));
    }
}

.fancybox-caption--separate {
    margin-top: -50px;
}

.fancybox-caption__body {
    max-height: 50vh;
    overflow: auto;
    pointer-events: all;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
    color: #ccc;
    text-decoration: none;
}

.fancybox-caption a:hover {
    color: #fff;
    text-decoration: underline;
}

/* Loading indicator */

.fancybox-loading {
    animation: fancybox-rotate 1s linear infinite;
    background: transparent;
    border: 4px solid #888;
    border-bottom-color: #fff;
    border-radius: 50%;
    height: 50px;
    left: 50%;
    margin: -25px 0 0 -25px;
    opacity: .7;
    padding: 0;
    position: absolute;
    top: 50%;
    width: 50px;
    z-index: 99999;
}

@keyframes fancybox-rotate {
    100% {
        transform: rotate(360deg);
    }
}

/* Transition effects */

.fancybox-animated {
    transition-timing-function: cubic-bezier(0, 0, .25, 1);
}

/* transitionEffect: slide */

.fancybox-fx-slide.fancybox-slide--previous {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

/* transitionEffect: fade */

.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
    opacity: 0;
    transition-timing-function: cubic-bezier(.19, 1, .22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
    opacity: 1;
}

/* transitionEffect: zoom-in-out */

.fancybox-fx-zoom-in-out.fancybox-slide--previous {
    opacity: 0;
    transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
    opacity: 0;
    transform: scale3d(.5, .5, .5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
    opacity: 1;
    transform: scale3d(1, 1, 1);
}

/* transitionEffect: rotate */

.fancybox-fx-rotate.fancybox-slide--previous {
    opacity: 0;
    -ms-transform: rotate(-360deg);
    transform: rotate(-360deg);
}

.fancybox-fx-rotate.fancybox-slide--next {
    opacity: 0;
    -ms-transform: rotate(360deg);
    transform: rotate(360deg);
}

.fancybox-fx-rotate.fancybox-slide--current {
    opacity: 1;
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
}

/* transitionEffect: circular */

.fancybox-fx-circular.fancybox-slide--previous {
    opacity: 0;
    transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
    opacity: 0;
    transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
    opacity: 1;
    transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}

/* transitionEffect: tube */

.fancybox-fx-tube.fancybox-slide--previous {
    transform: translate3d(-100%, 0, 0) scale(.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
    transform: translate3d(100%, 0, 0) scale(.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
    transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
    .fancybox-slide {
        padding-left: 6px;
        padding-right: 6px;
    }

    .fancybox-slide--image {
        padding: 6px 0;
    }

    .fancybox-close-small {
        right: -6px;
    }

    .fancybox-slide--image .fancybox-close-small {
        background: #4e4e4e;
        color: #f2f4f6;
        height: 36px;
        opacity: 1;
        padding: 6px;
        right: 0;
        top: 0;
        width: 36px;
    }

    .fancybox-caption {
        padding-left: 12px;
        padding-right: 12px;
    }

    @supports (padding: max(0px)) {
        .fancybox-caption {
            padding-left: max(12px, env(safe-area-inset-left));
            padding-right: max(12px, env(safe-area-inset-right));
        }
    }
}
/* Share */

.fancybox-share {
    background: #f4f4f4;
    border-radius: 3px;
    max-width: 90%;
    padding: 30px;
    text-align: center;
}

.fancybox-share h1 {
    color: #222;
    font-size: 35px;
    font-weight: 700;
    margin: 0 0 20px 0;
}

.fancybox-share p {
    margin: 0;
    padding: 0;
}

.fancybox-share__button {
    border: 0;
    border-radius: 3px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 40px;
    margin: 0 5px 10px 5px;
    min-width: 130px;
    padding: 0 15px;
    text-decoration: none;
    transition: all .2s;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap;
}

.fancybox-share__button:visited,
.fancybox-share__button:link {
    color: #fff;
}

.fancybox-share__button:hover {
    text-decoration: none;
}

.fancybox-share__button--fb {
    background: #3b5998;
}

.fancybox-share__button--fb:hover {
    background: #344e86;
}

.fancybox-share__button--pt {
    background: #bd081d;
}

.fancybox-share__button--pt:hover {
    background: #aa0719;
}

.fancybox-share__button--tw {
    background: #1da1f2;
}

.fancybox-share__button--tw:hover {
    background: #0d95e8;
}

.fancybox-share__button svg {
    height: 25px;
    margin-right: 7px;
    position: relative;
    top: -1px;
    vertical-align: middle;
    width: 25px;
}

.fancybox-share__button svg path {
    fill: #fff;
}

.fancybox-share__input {
    background: transparent;
    border: 0;
    border-bottom: 1px solid #d7d7d7;
    border-radius: 0;
    color: #5d5b5b;
    font-size: 14px;
    margin: 10px 0 0 0;
    outline: none;
    padding: 10px 15px;
    width: 100%;
}
/* Thumbs */

.fancybox-thumbs {
    background: #ddd;
    bottom: 0;
    display: none;
    margin: 0;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    padding: 2px 2px 4px 2px;
    position: absolute;
    right: 0;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    top: 0;
    width: 212px;
    z-index: 99995;
}

.fancybox-thumbs-x {
    overflow-x: auto;
    overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs {
    display: block;
}

.fancybox-show-thumbs .fancybox-inner {
    right: 212px;
}

.fancybox-thumbs__list {
    font-size: 0;
    height: 100%;
    list-style: none;
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0;
    position: absolute;
    position: relative;
    white-space: nowrap;
    width: 100%;
}

.fancybox-thumbs-x .fancybox-thumbs__list {
    overflow: hidden;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
    width: 7px;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 10px;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
    background: #2a2a2a;
    border-radius: 10px;
}

.fancybox-thumbs__list a {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-color: rgba(0, 0, 0, .1);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    cursor: pointer;
    float: left;
    height: 75px;
    margin: 2px;
    max-height: calc(100% - 8px);
    max-width: calc(50% - 4px);
    outline: none;
    overflow: hidden;
    padding: 0;
    position: relative;
    -webkit-tap-highlight-color: transparent;
    width: 100px;
}

.fancybox-thumbs__list a::before {
    border: 6px solid #ff5268;
    bottom: 0;
    content: '';
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: all .2s cubic-bezier(.25, .46, .45, .94);
    z-index: 99991;
}

.fancybox-thumbs__list a:focus::before {
    opacity: .5;
}

.fancybox-thumbs__list a.fancybox-thumbs-active::before {
    opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 576px) {
    .fancybox-thumbs {
        width: 110px;
    }

    .fancybox-show-thumbs .fancybox-inner {
        right: 110px;
    }

    .fancybox-thumbs__list a {
        max-width: calc(100% - 10px);
    }
}
/* End */
/* /local/components/travelsoft/favorites.add/templates/.default/style.css?1745578713418 */
/* /local/components/travelsoft/booking.search_form/templates/inner__placements.2calendars/style.css?17455787128560 */
/* /local/modules/travelsoft.travelbooking/plugins/daterangepicker/daterangepicker.css?17455787137659 */
/* /local/components/travelsoft/booking.offers/templates/tsoperator__placements/style.css?17455787139750 */
/* /local/modules/travelsoft.travelbooking/plugins/ResponsiveSlides/responsiveslides.css?1745578713489 */
/* /bitrix/components/bitrix/map.yandex.system/templates/.default/style.css?1745578780666 */
/* /local/templates/travelsoft/components/bitrix/news/hotels/bitrix/news.detail/.default/style.css?177679243627791 */
/* /local/templates/travelsoft/components/travelsoft/callback/travelsoft_ticket_intourdv25/style.css?17756695834429 */
/* /local/templates/travelsoft/vendor/fancybox/jquery.fancybox.css?174557871617412 */
