@charset "utf-8";
/* CSS Document */

.dates-prices-calendar-wrap { background: #fff; box-shadow: 0 2px 6px 0 rgba(37, 36, 35, 0.12); margin-top: 25px; padding: 20px 15px 60px; margin-bottom: 30px; margin-left: -15px; margin-right: -15px; position: relative; }
.dates-prices-wrap .ui-datepicker.ui-widget.ui-widget-content { width: 100% !important; border: none; padding: 0; }
.ui-widget-header { border: none; background: none; }
.ui-datepicker .ui-datepicker-header { padding: 0; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { display: none; }
.ui-datepicker-multi .ui-datepicker-group { padding: 0 10px; }
.ui-datepicker-multi .ui-datepicker-group table { width: 100%; margin: 0; position: relative; margin-bottom: 30px; }
.ui-datepicker-multi .ui-datepicker-group table:after { content: ''; background: #a2a4a6; height: 100%; width: 1px; position: absolute; right: -10px; top: 0; }
.ui-datepicker-multi .ui-datepicker-group.ui-datepicker-group-last table:after { display: none; }
.ui-datepicker .ui-datepicker-title { font-family: ProzaLibre; font-size: 20px; font-weight: 500; line-height: 1.4; color: #252423; margin-bottom: 10px; }
.ui-datepicker th { font-family: WorkSans; font-size: 14px; font-weight: 600; line-height: 1.63; color: #616264; padding: 15px; }
.ui-datepicker td { padding: 1px; position: relative; }
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active { border: none; background: none; border-radius: 0; font-family: WorkSans; font-size: 14px; line-height: 1.6; color: #252423; text-align: center; padding: 12px 2px 25px; position: relative; }
.ui-state-default:hover { background: #e7f1e7; }
.ui-datepicker-current-day .ui-state-default { background: #006460; color: #fff; }

.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: 1; }
.ui-state-disabled .ui-state-default, .ui-state-disabled.ui-red-end .ui-state-default { background: none; color: #a2a4a6; position: relative; }
.ui-state-disabled .ui-state-default:after { content: ''; background: url("../images/past-day-icon.svg") no-repeat center; width: 20px; height: 20px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); margin-top: -7px; }
.ui-state-disabled.ui-soldout .ui-state-default { color: #616264; font-weight: 600; }
.ui-state-disabled.ui-soldout .ui-state-default:after { content: 'SOLD OUT'; font-family: WorkSans; font-size: 10px; font-weight: 400; line-height: 1; color: #616264; background: none; width: auto; height: auto; left: 0; right: 0; top: 50%; transform: none; margin-top: 4px; }
.ui-datepicker td a.on-sale, .ui-datepicker td a.org-price, .ui-datepicker td a.offer-price { font-weight: 600; }
.ui-datepicker td.g-departure:before { content: ''; background: url("../images/check-plain.svg") no-repeat center; background-size: 100%; width: 9px; height: 9px; position: absolute; top: 5px; left: 50%; transform: translateX(-50%); z-index: 1; }
.ui-datepicker td.l-seats:after { content: ''; background: url("../images/dot-icon.svg") no-repeat center; background-size: 100%; width: 6px; height: 6px; position: absolute; top: 9px; left: 50%; transform: translateX(-50%); z-index: 1; }
.ui-datepicker td.g-departure.l-seats:before { transform: translateX(-100%); margin-left: 0; }
.ui-datepicker td.g-departure.l-seats:after { transform: translateX(100%); margin-left: -4px; }

.ui-datepicker td a.on-sale:before { background: #ff8e00; border-radius: 100px; font-family: WorkSans; font-size: 11px; font-weight: 600; line-height: 1.29; text-align: center; color: #ffffff; padding: 0 2px; position: absolute; bottom: -1px; left: 50%; transform: translate(-50%, -100%); z-index: 1; max-width: 99%; }
.ui-datepicker td a.org-price:after { font-family: WorkSans; font-size: 11px; line-height: 1; text-decoration: line-through; color: #616264; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); z-index: 1; font-weight: 400; }

.ui-datepicker td a.offer-price:before { font-family: WorkSans; font-size: 11px; font-weight: 600; line-height: 1.29; text-align: center; color: #006460; padding: 0 6px; position: absolute; bottom: 0; left: 50%; transform: translate(-50%, -100%); z-index: 1; }
.ui-datepicker td a.offer-price:after { display: none; }

.ui-datepicker td.ui-datepicker-current-day.g-departure:before { background-image: url("../images/check-plain-white.png"); }
.ui-datepicker td.ui-datepicker-current-day.l-seats:after { background-image: url("../images/dot-white.png"); }
.ui-datepicker td.ui-datepicker-current-day a.on-sale:before { background: #fff; color: #ff8e00; }
.ui-datepicker td.ui-datepicker-current-day a.org-price:after, .ui-datepicker td.ui-datepicker-current-day a.offer-price:before { color: #fff; }

.ui-state-selected-range .ui-state-default, .ui-red-end .ui-state-default, .ui-state-disabled.ui-state-selected-range .ui-state-default, .ui-state-disabled.ui-red-end .ui-state-default { background: #e7f1e7; }
.ui-state-disabled .ui-state-default { background: none; }

.datepicker-PN-btns { position: absolute; left: 15px; right: 15px; bottom: 0; transform: translateY(50%); }
.datepicker-PN-btns button { background: #ffd361; border: none; width: 50%; height: 65px; float: left; }
.datepicker-PN-btns button img { transition: all 0.3s ease-in-out; width: 50px; }

.ui-datepicker td.dates-sg:after { content: ''; background: url("../images/sg-icon.png") no-repeat center; background-size: 100%; width: 15px; height: 12px; position: absolute; top: 8px; left: 50%; transform: translateX(-50%); z-index: 1; }

.ui-datepicker td.g-departure.dates-sg:before { margin-left: -10px; }
.ui-datepicker td.g-departure.dates-sg:after { margin-left: 10px; }

.ui-datepicker td.ui-lm-seats-start-pr a.offer-price:before { color: #CC0D0D; }
.ui-lm-seats-start.ui-datepicker-current-day .ui-state-default { background: #CC0D0D; }
.ui-lm-seats-start ~ .ui-state-selected-range .ui-state-default, .ui-lm-seats-start ~ .ui-red-end .ui-state-default { background: #E5B0B0; }

@media (min-width:576px) {
  .dates-prices-calendar-wrap { margin-top: 30px; margin-left: 0; margin-right: 0; }
  .ui-datepicker td a.on-sale:before { font-weight: 600; padding: 0 6px; max-width: 92%; }
  .datepicker-PN-btns { left: 50%; right: inherit; transform: translate(-50%, 50%); }
  .datepicker-PN-btns button { width: 115px; }
  .datepicker-PN-btns button img { width: auto; }
  .datepicker-PN-btns button:hover img { transform: scale(1.2); }
}

@media (min-width:768px) {
  .ui-datepicker th { font-size: 14px; }
  .ui-datepicker td { padding: 2px; }
  .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active { font-size: 16px; line-height: 1.13; padding: 14px 5px 36px; }
  .ui-datepicker td a.on-sale:before, .ui-datepicker td a.offer-price:before { font-size: 14px; bottom: 0; }
  .ui-datepicker td.g-departure:before { top: 8px; }
  .ui-datepicker td.l-seats:after { top: 9px; }
  .ui-datepicker td.g-departure.l-seats:before { margin-left: -1px; }
  .ui-datepicker td.g-departure.l-seats:after { margin-left: -3px; }
  .ui-datepicker td a.org-price:after { bottom: 3px; font-size: 12px; }
  .ui-state-disabled.ui-soldout .ui-state-default:after { margin-top: 0; }
  .ui-state-disabled .ui-state-default:after { width: 32px; height: 32px; margin-top: -12px; }
}

@media (min-width:992px) {
  #datepicker { margin-left: -15px; margin-right: -15px; }
  .ui-datepicker .ui-datepicker-title { font-size: 24px; line-height: 1.17; }
  .dates-prices-calendar-wrap { padding: 30px 20px; }
}

@media (min-width:1200px) {
  .dates-prices-calendar-wrap { padding: 30px; }
  .ui-datepicker td { padding: 5px; }
  .ui-state-disabled.ui-soldout .ui-state-default:after { font-size: 11px; font-weight: 600; }
}
