@import url("https://use.typekit.net/mvc8pvd.css");

/***************    GENERAL  **********/

html, body {
    padding: 0;
    margin: 0;
    height: 100%;
    min-height: 100%;
    font-family: freight-sans-pro, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-variant-numeric: lining-nums;
    -moz-font-feature-settings: "lnum";
    -webkit-font-feature-settings: "lnum";
    font-feature-settings: "lnum";
    scroll-behavior: smooth;
}

input, select, textarea, button {
	font-family: inherit;
	color: inherit;
	background: #fff;
    font-variant-numeric: lining-nums;
    -moz-font-feature-settings: "lnum";
    -webkit-font-feature-settings: "lnum";
    font-feature-settings: "lnum";
}

@-webkit-keyframes autofill {
    to {
        color: inherit;
        background: #fff;
    }
}

/* Scrollbars on Mac OS X Only Safari */
@media screen and (min-color-index:0) and (-webkit-min-device-pixel-ratio:0) {
	@media {
		::-webkit-scrollbar {
			-webkit-appearance: none;
			width: 7px;
			height: 7px;
			-webkit-overflow-scrolling: auto;
		}
		::-webkit-scrollbar-thumb {
			border-radius: 4px;
			background-color: #005693;
			box-shadow: 0 0 1px #005693;
		}
	}
}

/* autofill in Chrome/Webkit browsers */
input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill {
    -webkit-animation-name: autofill;
    -webkit-animation-fill-mode: both;
}

input[disabled="true"] {
    background-color: #eee !important;
    border-color: #ccc !important;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    color: inherit;
    opacity: 0.25;
    filter: alpha(opacity=25);
}

input::-moz-placeholder, textarea::-moz-placeholder { /* Firefox 18- */
    color: inherit;
    opacity: 0.25;
    filter: alpha(opacity=25);
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder { /* IE 10+ */
    color: inherit;
    opacity: 0.25;
    filter: alpha(opacity=25);
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type=number] {
  -moz-appearance: textfield;
}

/* checkbox style */
input[type=checkbox] {
  visibility: hidden;
  position: absolute;
}
input[type=checkbox] + label:before {
  height:15px;
  width:15px;
  margin-right: 6px;
  content: ' ';
  display:inline-block;
  vertical-align: middle;
  border:1px solid #173557;
  border-radius:2px;
  margin-bottom: 2px;
  line-height: 14px;
  text-align: center;
}

input[type=checkbox]:checked + label:before {
  content: '\2714';/* checked */
}

/* radio style */
input[type="radio"] {
  display: none;
}

input[type="radio"] + label {
  padding: 0;
  font-size: 16px;
  vertical-align: middle;
}

input[type="radio"] + label:before {
  content: "";
  display: inline-block;
  margin-right: 12px;
  height: 14px;
  width: 14px;
  background: transparent;
  border: 1px solid #173557;
  box-shadow: inset 0px 0px 0px 3px rgba(255,255,255,0.7);
  -webkit-box-shadow: inset 0px 0px 0px 3px rgba(255,255,255,0.7);
  -moz-box-shadow: inset 0px 0px 0px 3px rgba(255,255,255,0.7);
  -o-box-shadow: inset 0px 0px 0px 3px rgba(255,255,255,0.7);
  border-radius: 8px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -o-border-radius: 8px;
  vertical-align: middle;
}

input[type="radio"]:checked + label:before {
  background-color: #173557;
}

/* select-option style */
select {
  height: 40px;
  border: 1px solid #ccc;
  border-radius: 5px;
  max-width: 100%;
  font-size: 16px;
}

h1{

}

h2{
    margin-bottom: 10px;
    margin-top: 0;
}

h3{
    margin-top: 0;
    margin-bottom: 5px;
}

h4{
   margin-bottom: 10px;
}

p{
    margin: 0;
    padding-bottom: 5px;
}


/* COMMON STYLES */
.shop-widget img, .shop-widget input, .shop-widget select, .shop-widget textarea {
    margin: 0;
    padding: 0;
    font-family: freight-sans-pro, sans-serif;
}

.s-w-uppercase{
    text-transform: uppercase;
}

.s-w-content-header-title{
    font-size: 21px;
    font-weight: 600;
}

.s-w-total-label{
    font-size: 21px;
    font-weight: 600;
}
.s-w-total-amount-with-discount {
    text-decoration: line-through;
}

.s-w-sb {
    font-family: freight-sans-pro, sans-serif;
    font-weight: 600;
}
.s-w-clr {
    clear: both;
    height: 0;
    line-height: 0
}

.s-w-margin-20{
    margin: 20px;
}

.s-w-padding-20{
    padding: 20px;
}

.s-w-mt-20 {
    margin-top: 20px;
}

.s-w-mb-20{
    margin-bottom: 20px;
}

.s-w-mr-20{
    margin-right: 20px;
}

.s-w-pt-20{
    padding-top: 20px;
}

.s-w-pb-20{
    padding-bottom: 20px;
}

.s-w-pl-10{
    padding-left: 10px;
}

.s-w-right{
    float: right;
}

.s-w-flex-row .s-w-flex-2{
    flex: 2;
}

.s-w-opened{
    display: block;
}

.s-w-closed{
    display: none;
}

.shop-widget a {
    color: #005693;
    outline: none;
    text-decoration: none;
    cursor: pointer;
    margin-left: 10px;
    margin-right: 5px;
}

.shop-widget a:hover {
    text-decoration: none
}

.s-w-widget-slider {
    display: inline-block;
    float: left;
    position: relative;
    min-height: 100%;
	width: 100%;
}

/** Menu styles **/
.menu {
    position: fixed;
	top: 0px;
    left: -400px !important;
    transition: 1s !important;
	z-index: 1;
}
.menu.show {
    transition: 1s !important;
    left: 0 !important;
}
.menu.hide {
	transition: 1s !important;
	left: -400px !important;
}

.s-w-with-info {
    padding-bottom: 30px;
}

.s-w-ctr-align {
    text-align: center;
}

.s-w-rgt-align {
    text-align: right;
}

/* global styles */
.shop-widget {
    background-color: #f9fafc;
    font-size: 15px;
    color: #173557;
    height: 100%;
    min-height: 100%;
    font-family: freight-sans-pro, sans-serif;
}

.s-w-cont {
    height: 100%;
    min-height: 100%;
    box-sizing: border-box;
    background-color: #fff;
	padding: 0px 20px;
	clear:both;
}

.s-w-flex-column{
    display: flex;
    flex-direction: column;
    width: 100%;
    box-sizing: border-box;
}

.s-w-flex-row{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}


.s-w-flex-row > div{
    flex: 1;
}

.s-w-border-grey{
    border: solid 1px #e6e8eb;
    border-radius: 3px;
}

.s-w-flex-row .s-w-flex-3{
    flex: 3;
}

.s-w-bottom-position{
    position: absolute;
    bottom: 0;
}

.s-w-bot {
    display: none;
}

.s-w-add-info {
    position: fixed;
    width: 100%;
    bottom: 60px;
}

.s-w-add-info .s-w-par {
    color: #fff;
    padding: 0 20px;
}

.s-w-add-info .s-w-par:first-child {
    padding-top: 20px;
}

.s-w-add-info .s-w-par:last-child {
    padding-bottom: 20px;
}

.s-w-head .s-w-menu-items{
    padding-top: 15px;
}

/* submit booking running button color */
.s-w-black {
    background-color: #333;
    bottom: 0;
    position: fixed;
    width: 100%;
    height: 60px;
}
.s-w-double {
    height: 120px;
}
.s-w-empty-bot {
    height: 45px
}

.s-widget-title {
    position: fixed;
    top: 0;
    color: #173557;
    width: 100%;
    font-size: 18px;
    padding: 15px 40px;
    text-align: center;
    box-sizing: border-box;
    border-bottom: 1px solid #dedede;
}

.s-w-widget-header {
    position: absolute;
    top: 20px;
    left: 20px;
    right: 20px;
    margin: 30px 0 0 10px;
    width: calc(100% - 100px);
}

.s-w-widget-header .s-widget-title {
    text-align: left;
    background-color: #ffc000;
    padding: 5px;
    font-weight: 600;
    font-size: 23px;
    display: inline;
    line-height: 41px;
    white-space: pre-wrap;
    position: static;
    word-break: break-word;
}

.s-w-content-header{
    padding: 20px 0;
}

.s-w-content-info{
    padding-bottom: 20px;
}

.s-w-small-title {
    font-size: 13px;
    font-family: freight-sans-pro, sans-serif;
    font-weight: 600;
    padding: 15px 0 15px 20px;
    text-transform: uppercase;
}

.s-w-small-title div, .s-w-big-title div {
    display: inline;
    opacity: 0.5;
    filter: alpha(opacity=50);
}
a.s-w-close, a.s-w-slide-view, a.s-w-back {
    float: left;
    text-decoration: none;
}

a.s-w-close {
    width: 40px;
    height: 40px;
    position: fixed;
    right: 0;
    top: 0;
}

.s-w-menu-items a.s-w-head-back {
    width: 24px;
    height: 45px;
	float: left;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: -8px;
}

.shop-widget input, .shop-widget textarea {
    outline: none;
}

.s-w-two-cols {
    padding: 0;
}

.s-w-min-hgt {
    min-height: 100px;
}

.s-w-controls {
    padding: 5px 5px 0px 275px;
}

.s-w-two-cols .s-w-lft-col {
    overflow: hidden;
}

.s-w-error-splash {
	margin: 50px;
	height: 60px;
}
.s-w-error-splash img {
	float: left;
}
.s-w-error-splash div {
	float: left;
	margin-left: 20px;
	margin-top: 20px;
	width: 80%;	
}

.s-w-home-page .s-w-lft-col {
    position: relative;
    top: 0;
    padding: 20px;
    min-height: 175px;
}

.s-w-controls .s-w-lft-col {
    overflow: hidden;
}
/*
.s-w-two-cols .s-w-lft-col img {
    min-width: 100%;
    max-width: 100%;
}*/

.s-w-two-cols .s-w-rgt-col {
    float: left;
    width: 100%
}

div.s-w-par {
    line-height: 22px;
    padding: 20px 20px 0;
    font-size: 15px;
    white-space: pre-line;
    word-break: break-word;
}

div.s-w-slidable {
    margin-bottom: 15px
}

a.s-w-big-blue-btn {
    background-repeat: no-repeat;
    background-position: 0 0;
    background-color: #005693;
    text-shadow: 0 2px 1px #004368;
    text-align: center;
    text-decoration: none;
    color: #fff;
    font-size: 19px;
    text-transform: uppercase;
    margin: 20px;
    border-radius: 3px;
	min-height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
}

/* date time page */
/* date widget  */
.s-w-calendar-table {
    padding: 0 15px;
    display: flex;
    flex-direction: column;
}
.s-w-date-select {
}

.s-w-with-right {
}

.s-w-with-right .s-w-rgt-col {
    text-align: center;
    padding: 5px 10px 0;
}

.s-w-with-right div.s-w-par {
    padding-top: 29px;
    font-size: 14px;
	opacity: 0.25;
	filter: alpha(opacity=25);
}

a.s-w-change-date-lnk {
	text-decoration: none;
	font-size: 15px;
	text-align: center;
	margin: 5px;
	display: block;
	margin-bottom: 25px;
}

.s-w-date-select .s-w-date-month {
    display: none;
}

.s-w-date-select .s-w-date-month.s-w-frst {
    display: block;
}

.s-w-date-select .s-w-small-title {
    padding: 20px 15px 10px 15px;
    text-transform: uppercase;
}

.s-w-date-month .s-w-month-cont {
    padding: 0 0 0 5px;
}

.s-w-date-select .s-w-last .s-w-month-cont {
    border: none;
}

.s-w-date-month table {
    width: 100%;
}

.s-w-date-month .datePickerMonth {
    text-align: center;
    font-weight: 600;
    text-transform: capitalize;
    font-size: 18px;
    line-height: 50px;
}

.s-w-date-month .datePickerDays td {
    text-align: center;
    padding: 15px;
    font-size: 16px;
}

.datePickerDays td.datePickerWeekendLabel, .datePickerDays td.datePickerWeekdayLabel {
    font-weight: 600;
	opacity: 0.50;
	filter: alpha(opacity=50);
}

/**.datePickerDays td*/
.datePickerDay {
    cursor: pointer;
    color: white;
    background-color: #005693;
}
.datePickerDays td.datePickerDay.datePickerDayIsToday:not(:has(> *)), .datePickerDays td.datePickerDay.datePickerDayIsToday .day {
	text-decoration-line: underline;
}

.datePickerDays td.datePickerDayIsDisabled {
    cursor: default;
    color: black;
}

.datePickerDays td.datePickerDayIsOut, .datePickerDays td.datePickerDayIsPast, .datePickerDays td.datePickerDayIsDisabled {
    opacity: 1;
	filter: alpha(opacity=100);
	background-color: #f9fafc;
}
.datePickerDays td.datePickerDayIsFiller {
    opacity: 0.5;
	filter: alpha(opacity=50);
}



.s-w-frst .datePickerPreviousButton, .s-w-frst .datePickerNextButton {
    width: 30px;
    height: 30px;
	display: flex;
    align-items: center;
    cursor: pointer;
}
.s-w-frst .datePickerPreviousButton .html-face, .s-w-frst .datePickerNextButton .html-face {
	display: none;
}

.s-w-frst .datePickerPreviousButton {
    padding-left: 15px;
}

.s-w-frst .datePickerNextButton {
    padding-right: 15px;
}

.s-w-frst .s-w-month-cont {
    padding-left: 0;
}

.s-w-last table.gwt-DatePicker > tbody > tr:last-child > td {
    border-right: none;
}

.s-w-sel-date {
    font-weight: 600;
    font-size: 18px;
    padding: 10px 0 10px;
    text-align: center;
    text-transform: uppercase;
}

.s-w-time-for-choose {
}

.s-w-time-option {
    position: relative;
    padding-top: 20px;
}

.s-w-time-option:before {
    content: " ";
    width: 10px;
    height: 10px;
    border-radius: 5px;
    border: 1px solid #ccc;
    position: absolute;
    left: 50%;
    top: 0;
    margin-left: -6px;
    background-color: #fff;
    box-shadow: 1px 1px 3px #ccc;
}

.s-w-time-select:before {
    content: "";
    position: absolute;
    left: 50%;
    top: -9px;
    height: 9px;
    background-color: #ccc;
    width: 1px;
}

.s-w-time-for-choose .s-w-time-select {
    width: 90px;
    text-align: center;
    line-height: 36px;
    margin: 0 auto 10px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 5px;
    background-color: #fff;
    box-shadow: 0 1px 2px 0 rgba(43, 59, 93, 0.3);
    border: solid 1px #e6e8eb;
    position: relative;
}

.s-w-time-select:last-child {
    margin-bottom: 50px;
}

.s-w-time-select.s-w-selected {
	background-color: #005693;
}

.s-w-time-for-choose div.s-w-time-select:hover {
    border-color: #00588f;
    background-color: #00588f;
    color: #fff;
}

div.s-w-time-for-choose .s-w-select-dis, .s-w-time-for-choose div.s-w-time-select.s-w-select-dis:hover {
    color: #cccccc;
    cursor: default;
    background-color: #fff;
    border-color: #ccc;
}

.s-w-time-for-choose .s-w-selected {
    background-position: 0 -31px;
    color: #fff
}

/* tickets page */
/* tickets widget  */

.s-w-time-tickets table {
    width: 100%
}

.s-w-time-tickets table tr {
}

.s-w-time-tickets table td {
    padding: 20px 20px 20px 15px;
    font-size: 15px;
    border-bottom: 1px solid #dedede;
    line-height: 26px;
}

.s-w-time-tickets table td .s-w-item-price {
    font-size: 13px;
	opacity: 0.75;
    filter: alpha(opacity=75);
}

.s-w-time-tickets table td.s-w-price-range {
    display: none;
}

.s-w-time-tickets .s-w-tbl-frst {
}

.s-w-time-tickets .s-w-tbl-qty {
    width: 125px;
}

.s-w-time-tickets .s-w-tbl-qty .s-w-int-control {
    float: right;
}

.s-w-time-tickets-long .s-w-tbl-qty {
    width: 400px;
}

.s-w-time-tickets .s-w-tbl-price {
    display: none;
}

.s-w-time-tickets-long .s-w-tbl-price {
    font-weight: 600;
}

.s-w-time-tickets .s-w-price-one {
    text-align: right;
    white-space: nowrap;
    width: 8%;
}

.s-w-any-qty input {
    background: none;
    border: none;
    text-align: center;
    width: 100%;
    padding-top: 2px;
}

.s-w-tbl-frst a {
    width: 17px;
    height: 16px;
    text-decoration: none;
    margin-left: 5px;
    display: none;
}

.s-w-tickets-overall {
    padding: 10px 20px;
    font-size: 16px;
    bottom: 60px;
    width: 100%;
    box-sizing: border-box;
    background-color: #fff;
}

.s-w-tickets-overall .s-w-info {
    float: left;
    margin-right: 5px;
}

.s-w-tickets-overall .s-w-info div {
    background: no-repeat 0 50%;
    padding-left: 20px;
    display: none;
}

.s-w-tickets-overall .s-w-ticket-total {
    text-align: right;
    font-family: freight-sans-pro, sans-serif;
    font-weight: 600;
}
.s-w-tickets-overall .s-w-ticket-total .s-w-total-label{
    float: left;
    text-align: left;
}
.s-w-tickets-overall .s-w-ticket-total .s-w-gray-note, .s-w-mobile-info-label {
    text-align: left;
    word-break: break-word;
    white-space: pre-line;
    overflow-x: hidden;
    float: inherit;
    display: inline-block;
	padding-bottom: 10px;
	width: 100%;
}
.s-w-mobile-info-label {
	padding-bottom: 0px;
	max-height: 0px;
    transition: max-height 1s ease 0.1s;
}
.s-w-mobile-info-label.show {
	max-height: 500px;
}

.s-w-ticket-total .s-w-rgt-small {
    font-size: 13px;
    text-align: right;
    opacity: 0.5;
    padding-top: 5px;
    font-family: freight-sans-pro, sans-serif;
}
.s-w-gray-note {
    float: left;
}

.s-w-gray-note div {
    font-weight: 600;
    display: inline;
}

.s-w-upsell-cont {
	flex-direction: column;
}
.s-w-upsell-cont > div {
	position: relative;
	width: 100%;
	flex-direction: row;
}
.s-w-container .s-w-upsell-cont .s-w-lft-col {
	height: auto;
    border-radius: 50px;
    padding: 10px;
}
.s-w-upsell-cont .s-w-tour-title {
	font-size: 15px;
	font-weight: 500;
}
.s-w-upsell-cont .s-w-par {
	white-space: inherit;
	max-width: 475px;
}

/* email */
.s-w-email {
}

.s-w-email div.s-w-email-fields {
}

div.s-w-email-fields div.s-w-dd:first-child {
    padding-top: 15px;
}

div.s-w-email-fields div.s-w-dd {
    line-height: 32px;
    padding: 0 15px;
    text-transform: uppercase;
    font-size: 13px;
}

div.s-w-email-fields div.s-w-dt {
    padding: 0 15px 5px;
}

div.s-w-textarea-cont div.s-w-dd {
}

div.s-w-dt .s-w-check-cont {
    padding-left: 20px;
}

.s-w-inp-wrap {
    padding-right: 20px;
}
.s-w-download-page .s-w-inp-wrap {
	padding-right: 0px;
	max-width: 50%;
}

.s-w-inp-wrap input {
    width: 100%;
    height: 40px;
    padding: 0 8px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 16px;
}
.s-w-download-page .s-w-inp-wrap input {
	width: calc(100% - 18px);
}

.s-w-inp-wrap input:focus {
    border-color: #005693;
}

.s-w-inp-wrap textarea {
    width: 100%;
    height: 92px;
    padding: 10px 8px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 16px;
    resize: none;
}

.s-w-inp-wrap textarea:focus {
    border-color: #005693;
}

.s-w-inp-wrap .s-w-spreedly {
	width: 100%;
	height: 30px;
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 10px 7px 0px 8px;
	background-color: #fff;
}
.s-w-inp-wrap .s-w-spreedly.focus {
    border-color: #005693;
}
.s-w-inp-wrap .s-w-spreedly.s-w-expiry {
	width: 62px;
	float: left;
}
.s-w-exp-cvv .s-w-ver-code.s-w-spreedly {
	height: 30px;
	padding: 10px 7px 0px 8px;
	margin-right: 0px;
}


.s-w-area-ltl {
    width: 267px;
    height: 61px;
}

.s-w-personal-data-lft .s-w-area-ltl {
    width: 204px;
    height: 51px;
}

.s-w-personal-data-lft .s-w-area-ltl textarea {
    width: 206px;
}

.s-w-area-ltl textarea {
    width: 261px;
    height: 61px
}

.s-w-radio-group {
    height: 27px;
    padding-top: 8px
}

.s-w-info-box {
}

.s-w-long-info-box {
    width: 380px
}

.s-w-info-box img {
    margin: 12px 0 10px
}

.s-w-info-box .s-w-info-box-cont {
    opacity: 0.75;
    padding: 10px 15px 10px;
    font-size: 15px;
    clear: both;
}

.s-w-info-box .s-w-info-mandatory {
    opacity: 0.75;
    margin-bottom: -10px;
}

.s-w-info-box .s-w-info-box-top, .s-w-info-box .s-w-info-box-bot {
    height: 5px;

}

.s-w-info-box .s-w-info-box-bot {
}

.s-w-checkboxes-cont {
	display: flex;
	flex-direction: column;
}
.s-w-check-cont {
    padding: 10px 20px 0 40px;
}

.s-w-error-field-bolder{
	border: 1px solid #E62B36;
    padding: 2px;
}

.s-w-check-cont .s-v-chb input {
    float: left;
    margin: 1px 5px 0 -20px;
}

.s-w-check-cont .s-v-chb label {
    float: left;
    margin: 1px 5px 0 0;
    font-size: 13px;
}

.s-w-error-field {
    border-color: #E62B36 !important;
}
.s-w-error-field input[type=checkbox] + label:before {
	border-color: #E62B36;
}

.s-w-error-field .term-text {
    color: #E62B36;
    padding: 2px;
} 

.s-w-error-field option {
    color: #000 !important;
}

.s-w-personal-data div.s-w-email-fields {
    width: 216px
}
.s-w-inp-wrap.s-w-language select {
	width: 100%;
}

.s-w-personal-data div.s-w-textarea-cont {
    padding-left: 105px;
    width: 277px
}

.s-w-personal-data div.s-w-personal-data-lft {
    padding-left: 95px;
    margin-right: 20px
}

.s-w-personal-data .s-w-inp-wrap {
    width: 200px;
}

.s-w-radio-label {
    display: inline;
    padding: 0 7px 0 3px
}

.s-w-textarea-cont .s-w-inp-wrap {
    width: 260px;
}

.s-w-personal-data div.s-w-personal-data-lft div.s-w-dd {
    width: 95px;
    margin-left: -95px
}

div.s-w-personal-data div.s-w-full {
    width: 318px
}

/* payment */
.s-w-payment-method-wrapper {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
.s-w-payment-method-wrapper > div {
	height: 25px;
}

.s-w-payment-fields .s-w-paypal {
    background: url(../img/bg-paypal.png) 0 0 no-repeat;
	width: 25px;
}

.s-w-input-header {
    padding: 15px 15px 0 35px;
    clear: both;
    margin: 0 -15px 0;
    border-top: 1px solid #dedede;
}

.s-w-input-header:first-child {
    margin: 0;
    border-top: none;
    padding: 0 0 10px 20px;
}

.s-w-input-header input {
    float: left;
    margin: 2px 0 0 -20px;
}

.s-w-input-header .s-w-small-title {
    padding: 0 0 15px;
    text-transform: none;
    font-weight: 500;
    font-size: 17px;
}

.s-w-payment {
    padding-bottom: 40px;
    width: 100%;
	flex-direction: column;
}
.s-w-payment-subcontainer {
    display: flex;
}

div.s-w-payment-fields {
    margin: 15px 20px;
    border: 1px solid #ccc;
    border-radius: 3px;
    padding: 15px 15px 0;
    background-color: #f9fafc;
}

.s-w-payment .s-w-payment-content {
    padding-bottom: 20px;
}
.s-w-payment-content:last-child {
    padding-bottom: 15px;
}
.s-w-paypal-button {
    display: block;
    width: 256px;
    margin: 10px auto 0;
}

.s-w-payment div.s-w-no-img {
    padding-top: 0
}

div.s-w-payment-fields div.s-w-dd {
    line-height: 32px;
    text-transform: uppercase;
    font-size: 13px;
}

div.s-w-payment-fields div.s-w-dt {
    padding-bottom: 5px
}

div.s-w-exp select {
    float: left;
    margin-top: 5px;
    font-size: 18px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #fff;
}

div.s-w-exp select.s-w-exp-y {
    width: 72px;
    height: 40px;
}

div.s-w-exp select.s-w-exp-m {
    width: 60px;
    height: 40px;
    margin-right: 5px;
}

div.s-w-exp .s-w-exp-rgt {
    float: right;
    text-align: right
}

.s-w-ver-code-label {
    display: inline
}
.s-w-exp-cvv {
	overflow: hidden;
}
.s-w-text-inline {
    display: inline
}

.s-w-exp-rgt .s-w-ver-code {
    width: 77px;
    height: 42px;
    text-align: center;
    border: 1px solid #ccc;
    border-radius: 5px;
    margin-right: 2px;
    line-height: 32px;
    font-size: 16px;
    background-color: #fff;
}
.s-w-exp-rgt .s-w-ver-code.s-w-spreedly {
    padding-left: 8px;
}

.s-w-payment .s-w-info-box {
    margin-right: 10px
}

.s-w-payment-total {
    margin: 0 10px 20px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 3px;
    padding: 10px 20px;
}

.s-w-total-line .s-w-item-info {
    clear: both;
    font-size: 13px;
    opacity: 0.5;
    padding: 5px 0 10px;
    word-break: break-word;
}
.s-w-payment-total .s-w-total-line {
    overflow: hidden;
    padding: 5px 0;
    font-size: 17px;
}
.s-w-total-line .s-w-ticket-info {
    padding-left: 90px;
}

.s-w-ticket-info .s-w-ticket-img {
    float: left;
    margin-left: -90px;
}
.s-w-ticket-img img {
    max-width: 80px;
}
.s-w-payment-total .s-w-total {
    border-width: 1px 0;
    border-style: solid;
    border-color: #e6e6e6;
    font-family: freight-sans-pro, sans-serif;
    font-weight: 600;
}

.s-w-order-summary {
    padding-bottom: 60px;
}
.s-w-basket-item .s-w-payment-total {
    padding: 0 10px;
    font-size: 15px;
}
.s-w-basket-item .s-w-payment-total .s-w-total-line{
    font-size: 15px;
}
.s-w-payment-total .s-w-ticket-name, .s-w-payment-total .s-w-price {
    font-family: freight-sans-pro, sans-serif;
    font-weight: 600;
}
.s-w-payment-total .s-w-price {
    padding: 5px 0;
}
.s-w-payment-total .s-w-text {
    font-size: 13px;
    padding-bottom: 5px;
}
.s-w-payment-total a {
    font-size: 13px;
}
.s-w-order-summary .s-w-big-right .s-w-total {
    border-bottom: none;
    margin: 5px -20px 0;
    padding: 10px 20px 10px;
}

.s-w-total-line .s-w-lft-item {
    float: left;
}

.s-w-total-line .s-w-lft-item div {
    font-family: freight-sans-pro, sans-serif;
    font-weight: 600;
    display: inline;
}

.s-w-total-line .s-w-rgt-prc {
    float: right;
    font-family: freight-sans-pro, sans-serif;
    font-weight: 600;
}

.s-w-order-summary .s-w-big-right .s-w-total-line .s-w-rgt-prc {
    font-family: freight-sans-pro, sans-serif;
    font-weight: 600;
}

.s-w-summary-item {
	display: flex;
	padding-top: 5px;
}
.s-w-summary-item div {
	flex-basis: 0;
    flex-grow: 1;
}

.s-w-summary-item div.s-w-lft-item {
    flex-grow: 2;
}

.s-w-summary-item div.s-w-rgt-prc {
    text-align: right;
    flex-grow: 1;
}

.s-w-summary-item div.s-w-rgt-prc + .s-w-rgt-prc {
    flex-grow: 3;
}

.s-w-summary-item.highlight {
    font-family: freight-sans-pro, sans-serif;
    font-weight: 600;
    background-color: #F0F0F0;
    border-radius: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
    padding-right: 5px;
    width: 100%;
    left: -5px;
    position: relative;
	justify-content: space-between;
}
.s-w-summary-item.highlight div {
    flex-grow: 1;
}

.s-w-summary-item.highlight .s-w-rgt-prc {
    flex-grow: 2;
}

.s-w-total-under .s-w-lft-item {
    font-weight: 600;
}

.s-w-total-under .s-w-rgt-prc {
    font-weight: 500;
}

.s-w-total-under .s-w-prc-time {
    display: inline;
    padding-left: 5px;
}

.s-w-order-summary .s-w-ltl-left .s-w-rgt-prc {
    float: left;
    font-weight: 500;
    margin-left: 5px;
}

.s-w-with-alert-msg {
    display: flex;
	justify-content: center;
	align-items: center;
}

div.s-w-alert-msg {
    color: #fff;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
div.s-w-alert-msg > * {
	padding: 0 10px;
}
div.s-w-alert-msg i {
	color: #f00;
}

.s-w-par.s-w-claim-success {
  color: #005693;
}
.s-w-claim-success:before {
  height:15px;
  width:15px;
  margin-right: 6px;
  content: '\2714';/* checked */
  display:inline-block;
  vertical-align: middle;
  margin-bottom: 2px;
  line-height: 14px;
  text-align: center;
}

.s-w-prom-code {
    margin: 0 20px;
}
.s-w-prom-code .s-w-enter-code {
    text-decoration: none;
}
.s-w-prom-field {
    position: relative;
    padding-right: 60px;
}

.s-w-prom-code .s-w-coupon-validation {
    padding: 10px 0;
}

.s-w-coupon-validation.s-w-coupon-valid {
    color: #005e35;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
.s-w-coupon-validation.s-w-coupon-valid i {
	padding-right: 20px;
	font-size: 16px;
}
.s-w-prom-field i {
    position: absolute;
    left: 10px;
	top: 31px;
}
.s-w-prom-field input {
    border-width: 1px 0 1px 1px;
    border-style: solid;
    border-color: #00588f;
    border-radius: 5px 0 0 5px;
    width: 100%;
    padding: 0 4px 0 40px;
    height: 46px;
    font-size: 15px;
    font-weight: 500;
}

.s-w-prom-field .s-w-blue-big-lnk {
    background-color: #00588f;
    line-height: 46px;
    padding: 0 10px;
    text-transform: uppercase;
    font-size: 12px;
    position: absolute;
    right: 0;
    top: 20px;
    border-width: 1px 1px 1px 0px;
    border-style: solid;
    border-color:#00588f;
    border-radius: 0 5px 5px 0;
}

.s-w-blue-big-lnk {
    background-repeat: no-repeat;
    background-position: 0 0;
    padding-left: 4px;
    text-decoration: none
}

.s-w-blue-big-lnk div {
    height: 100%;
    color: #fff;
}

/* download page  */
.s-w-download {
    padding: 10px 0 15px;
    font-size: 14px;
}

.s-w-download div.s-w-par {
}
.s-w-download div.s-w-gray-note {
    opacity: 0.5;
}

a.s-w-link-dnld {
    display: block;
    padding: 70px 30px 20px;
    margin: 15px;
    text-decoration: none;
    font-size: 15px;
    text-transform: uppercase;
    border: 1px solid #ccc;
    border-radius: 3px;
}

a.s-w-link-dnld .dnld-msg {
    background-position: 100% 0;
    background-repeat: no-repeat;
    height: 40px;
    padding: 0 7px;
}
.arrow-down-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    height: 71px;
}
.arrow-down-border {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	height: 58px;
	width: 46px;
	border: 2px solid #005693;
	position: relative;
}
.arrow-down-border:before {
    content: "";
    width: 13px;
    height: 13px;
    background-color: #f9fafc;
    display: block;
    position: absolute;
    top: -2px;
    right: -2px;
	border-bottom: 2px solid #005693;
	border-left: 2px solid #005693;
}
.arrow-down-border:after {
    content: "";
    width: 18px;
    height: 2px;
    background-color: #005693;
    display: block;
    position: absolute;
    top: 4px;
	right: -4px;
    transform: rotate(45deg);
}
.arrow-down {
    width: 2px !important;
    height: 30px !important;
    background-color: #005693;
}
.arrow-down:before {
    content: "";
    width: 16px;
    height: 2px;
    background-color: inherit;
    display: block;
    position: relative;
    top: 24px;
    left: -12px;
    transform: rotate(45deg);
}
.arrow-down:after {
    content: "";
    width: 16px;
    height: 2px;
    background-color: inherit;
    display: block;
    position: relative;
    top: 21px;
    left: -1px;
    transform: rotate(-45deg);
}
.s-w-passbooks {
	width: 100%;
	display: block;
    position: absolute;
    right: 85px;
    top: 330px;
    margin: 0;
    width: auto;
    text-align: center;
    padding-top: 10px;
}
.s-w-passbooks a {
	display: block;
	padding: 20px 20px 0;
}
.s-w-claim-action.s-w-big-blue-btn {
	margin: 10px 0;
	padding: 0 10px;
	min-height: 40px;
}

.s-w-spinner-cont {
    position: relative;
}

.s-w-duty-cont {
    overflow: hidden;
    padding: 0;
}

.s-w-duty {
    background: url(../img/bg_duty.png) 50% 0 no-repeat;
    padding-top: 65px;
    text-align: center;
    margin-top: 40px;
    font-weight: 600;
    color: #405263;
    font-size: 14px;
}

/* bottom navigation */
.s-w-black .s-w-btn-orange a, a.s-w-btn-orange{
    background-color: #ffc000;
}

.s-w-rgt-btn a {
    color: #fff;
    display: block;
    height: 60px;
    line-height: 60px;
    text-align: center;
    text-decoration: none;
    font-size: 18px;
    text-transform: uppercase;
}

div.s-w-dis-btn a, a.s-w-big-blue-btn.s-w-dis-btn, a.s-w-big-blue-btn.s-w-dis-btn.s-w-window-next {
    background-color: #c0c8d2 !important;
    color: #fff;
    cursor: default;
    text-shadow: none !important;
}

.shop-widget a.s-w-order {
    display: flex;
	align-items: center;
	justify-content: center;
	line-height: initial;
    padding-left: 5px;
    text-decoration: none;
    color: #fff;
    text-align: center;
    font-size: 1.25rem !important;
    font-weight: 600;
    background-color: #00588f;
    text-transform: uppercase;
    margin-left: 0px !important;
    margin-right: 0px !important;
}
.shop-widget a.s-w-order.s-w-dis-btn {
    background-color: #c0c8d2;
    color: #fff;
    cursor: default;
}
.shop-widget a.s-w-order div {
    background-position: 100% 0;
    background-repeat: no-repeat;
    padding: 0 25px 0 20px
}

.shop-widget a.s-w-dis-order {
    background-position: 0 100%;
    cursor: default
}

.s-w-passcat-label {
	float:left;
}
.s-w-passcat {
    position: relative;
}
.s-w-passcat-multi {
	display: inline;
}
.s-w-passcat-info {
    background-color: #fff;
    border: 1px solid #e3e5e8;
    border-radius: 15px;
	width: 20px !important;
	height: 20px !important;
    display: inline-block !important;
	margin-top: 3px;
}
.s-w-passcat-info:before {
    content: "i";
    font-family: monospace;
    width: 20px;
    text-align: center;
    line-height: 20px;
    float: left;
    font-weight: 600;
    font-size: 12px;
}

.s-w-int-control {
    position: relative;
}

.s-w-int-control .s-w-int-control-minus, .s-w-int-control .s-w-int-control-plus {
    background-color: #fff;
    border-radius: 30px;
    width: 40px;
    height: 40px;
    display: inline-block;
    cursor: pointer;
}

.s-w-int-control .s-w-int-control-minus:before, .s-w-int-control .s-w-int-control-plus:after {
    content: "\2212";
    font-family: monospace;
    width: 40px;
    text-align: center;
    line-height: 40px;
    float: left;
    font-weight: 600;
    font-size: 24px;
}

.s-w-int-control .s-w-int-control-plus:after {
    content: "+";
}

.s-w-int-control .s-w-int-control-value {
    width: 30px;
    position: relative;
    top: -15px;
    text-align: center;
    font-size: 22px;
    border: none;
    background: none;
	color: inherit;
}
.disabled .s-w-int-control-plus::after, .disabled .s-w-int-control-minus::before {
    opacity: 0.5;
    cursor:default !important;
}

.s-w-time-tickets .disabled{
	opacity: 0.5;
	cursor:default !important;
}

.s-w-myorders-input {
	width: 33%;
}
.s-w-pickup {
    padding: 15px;
    border-top: 1px solid #dedede;
    margin-top: 15px;
    position: relative;
	max-width: 650px;
}
.s-w-pickup:first-child {
    border-top: none;
}
.s-w-pickup .s-w-small-title {
    padding: 0 0 10px;
}
.s-w-pickup .s-w-dt {
    padding: 10px 0;
}

.s-w-pickup-list {
    padding: 15px 0;
}

.s-w-pickup-item {
    padding: 0 30px 20px 30px;
    position: relative;
}

.s-w-pickup-item .s-w-pickup-time {
    position: absolute;
    right: 0;
    top: 2px;
    min-width: 30px;
}
.s-w-pickup-item .s-w-pickup-select-time {
    position: absolute;
    right: 0;
    min-width: 30px;
    top: -8px;
}

.s-w-pickup-item .s-w-pickup-info {
    font-size: 13px;
    margin-top: 5px;
	opacity: 0.75;
    filter: alpha(opacity=75);
}

.s-w-search-icon {
    width: 20px;
    height: 20px;
}

.s-w-pickup .s-w-search-icon {
    position: absolute;
    right: 10px;
    top: 10px;
}


/* new styles */

.s-w-head a.s-w-logo.s-w-logo-centered {
    text-align: center;
    width: 100%;
}
.s-w-head a.s-w-logo img {
	width: 100%;
	height: 45px;
}
.s-w-head a.s-w-logo.s-w-logo-width-100 img {
	width: 100%;
}

.s-w-head a.s-w-basket {
    float: right;
    text-decoration: none;
    position: relative;
}
.s-w-head a.s-w-basket span {
    background-color: #ffc000;
    border-radius: 10px;
    padding: 2px 5px;
    position: absolute;
    top: 3px;
    right: auto;
    left: 18px;
    line-height: 14px;
}
.s-w-head a.s-w-basket p {
	opacity: 0.60;
	display: inline;
}
.s-w-head .s-w-title {
    text-align: center;
    margin-top:30px;
}
.s-w-tour-title {
    font-size: 21px;
    padding: 0 20px;
    font-weight: 600;
    word-break: break-word;
}
.s-w-tour-title:first-child {
    padding-top: 20px;
}

.s-w-departure-block {
    overflow-x: auto;
    padding-bottom: 10px;
}
.s-w-departure-block .s-w-block-container {
    display: flex;
    justify-content: space-between;
}
.s-w-departure-block .s-w-block-item {
    font-size: 15px;
    text-align: center;
    margin-right: 3px;
    width: calc(33% - 5px);
}
.s-w-departure-block .s-w-block-item:last-child {
    margin-right: 0;
}
.s-w-departure-block .s-w-block-item .item-container {
    padding: 13px;
    border-radius: 1px;
    background-color: #fff;
    box-shadow: 0 1px 2px 0 #2b3b5d4d;
    border: solid 1px #e6e8eb;
    cursor: pointer;
}
.s-w-departure-block .s-w-block-item .s-w-when {
    opacity: 0.5;
    font-size: 12px;
    line-height: 1.45;
    text-transform: uppercase;
    padding-top: 5px;
}
.s-w-departure-block .s-w-block-item.s-w-selected .item-container {
	border: solid 1px #10619a;
}
.s-w-left-menu {
    width: 305px;
    min-height: 100%;
    position: relative;
    background-color: #f9fafc;
    box-shadow: 0 16px 24px 0 #0026521a;
	z-index: 1;
}
.s-w-left-menu .s-w-menu-toggle{
    height: 60px;
    padding: 10px 45px;
    border-bottom: 1px solid #e3e5e8;
    position: relative;
    background-color: #fff;
}
.s-w-menu-toggle a {
    float: left;
    width: 45px;
    height: 45px;
    display: flex;
    margin: 5px 0 0 -45px;
    justify-content: center;
    align-items: center;
}
.s-w-menu-toggle .s-w-menu-name{
    text-align: center;
    margin-top: 20px;
}
.s-w-left-menu .s-w-menu-items a {
    height: 60px;
    padding-left: 8px;
	display: flex;
    align-items: center;
}
.s-w-left-menu .s-w-menu-items a.s-w-menu {
    display: none;
}
.s-w-left-menu .s-w-menu-item {
    padding-left: 50px;
    border-bottom:1px solid #e6e8eb;
    background-position: 15px 50%;
    background-repeat: no-repeat;
}
.s-w-left-menu .s-w-menu-item.s-w-link-back > span {
	padding-left: 3px;
}
.s-w-left-menu .s-w-menu-item.s-w-orders > span {
	padding-left: 6px;
}
.s-w-left-menu .s-w-menu-item.s-w-language {
	justify-content: space-between;
	padding: 0 10px;
}
.s-w-left-menu .s-w-menu-item.s-w-language > span {
	padding-left: 3px;
}
.s-w-left-menu .s-w-menu-footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    border-top: solid 1px #e6e8eb;
}
.s-w-menu-footer .s-w-footer-container {
    padding: 25px;
}
.s-w-menu-footer .s-w-footer-container > div {
	overflow: hidden;
	text-overflow: ellipsis;
}
.s-w-menu-footer .s-w-footer-title {
    font-family: freight-sans-pro, sans-serif;
    font-weight: 600;
    padding-bottom: 5px;
}
.shop-widget.menu.show .s-w-footer-container {
	display: block;
}
.shop-widget.menu.show .s-w-privacy-settings {
	display: block;
}
.s-w-white-blocks {
    display: flex;
    padding: 10px 0;
	overflow-y: auto;
}
.s-w-white-blocks .s-w-block {
    border-radius: 1px;
    background-color: #fff;
    box-shadow: 0 1px 2px 0 #2b3b5d4d;
    border: solid 1px #e6e8eb;
    margin-right: 5px;
}
.s-w-white-blocks .s-w-selected {
    border: solid 1px #10619a;
}
.s-w-ticket-plans .s-w-block {
	text-align: center;
    padding-left: 5px;
    padding-right: 5px;
    display: flex;
    overflow-y: hidden;
    min-height: 60px;
    max-height: 60px;
    min-width: calc(25% - 16px);
    max-width: 115px;
	cursor: pointer;
}
/* Not to use horizontal scroll-bars on IOS and MacOS for the price-plans */
@supports (-webkit-touch-callout: none) {
	.s-w-white-blocks {
		overflow-y: unset;
		flex-wrap: wrap;
	}
	.s-w-ticket-plans .s-w-block {
		min-width: 80px;
		max-width: unset;
		margin-bottom: 5px;
	}
}
/* Scrollbars on Firefox Mac are not allowing to force visibility */
@supports (-moz-osx-font-smoothing: auto) {
	.s-w-white-blocks {
		overflow-y: unset;
		flex-wrap: wrap;
	}
	.s-w-ticket-plans .s-w-block {
		width: calc(25% - 17px);
		min-width: unset;
		max-width: unset;
		margin-bottom: 5px;
	}
}

.s-w-ticket-plans .s-w-block.disabled {
    opacity: 0.5;
}
.s-w-priceplan-name {
    line-height: 30px;
	margin: auto;
}
.s-w-payment {
    padding-bottom: 0;
}
.s-w-payment .s-w-payment-left {
	flex: 1;
	flex-grow: 3;
}
.s-w-payment .s-w-payment-right {
	flex: 1;
	flex-grow: 2;
    display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
    justify-content: space-between;
    padding-bottom: 60px;
}
.s-w-payment .s-w-payment-left .s-w-content {
    padding: 10px 30px;
}
.s-w-payment .s-w-payment-left .s-w-black {
    position: fixed;
}
.s-w-payment .s-w-payment-right {
    background-color: #fff;
}
.s-w-payment .s-w-payment-right .s-w-content {
    padding: 10px 20px;
}
.s-w-payment-right .s-w-prom-code {
    margin: 0;
}
.s-w-payment-right .s-w-prom-code a{
    margin-left: 2px;
}
.s-w-payment-left .s-w-tour-title, .s-w-payment-left .s-w-small-title, .s-w-payment-right .s-w-tour-title {
    padding-left: 0;
    font-size: 17px;
    text-transform: none;
}
.s-w-payment-left .s-w-tour-title {
    padding-bottom: 7px;
}
.s-w-payment-left .s-w-email-fields .s-w-dt {
    padding: 0 0 10px;
}
.s-w-payment-left .s-w-info-box-cont {
    padding: 10px 0;
}
.s-w-payment-left .s-w-check-cont {
    padding-left: 0px;
}
.s-w-payment-right .s-w-payment-total .s-w-total-line{
    padding: 5px 15px 10px;
    font-size: 15px;
}

.s-w-payment-right .s-w-total-line.s-w-total .s-w-lft-item {
    float: left;
}
.s-w-payment-right .s-w-total-line.s-w-total .s-w-rgt-prc {
    float: right;
}
.s-w-payment-right .s-w-total-line .s-w-lft-item div {
    font-family: freight-sans-pro, sans-serif;
}
.s-w-order-info {
    padding-top: 32px;
}
.s-w-order-info .s-w-title {
    display: inline-block;
    font-size: 13px;
}
.s-w-order-info .s-w-rgt-link {
    float: right;
    font-size: 13px;
    text-transform: uppercase;
}
.s-w-payment-chooser {
    display: flex;
    padding-bottom: 10px;
}

.s-w-payment-chooser .s-w-input-header input{
    margin-top: 8px;
}
.s-w-payment-chooser .s-w-payment-radio {
	float: left;
}
.s-w-payment-chooser .s-w-input-header .s-w-small-title {
    padding: 0;
    line-height: 30px;
    font-size: 15px;
    white-space: nowrap;
    margin-top: -1.13%;
}
.s-w-payment-chooser .s-w-input-header .s-w-small-title.s-w-cards-bg {
    padding-right: 135px;
}
.s-w-payment-chooser .s-w-input-header .s-w-small-title.s-w-paypal {
    padding-right: 25px;
}
.s-w-payment-left .s-w-payment-content .s-w-dt {
    padding-bottom: 10px;
    margin-right: -2px;
}
.s-w-nav-dropdown {
    position: absolute;
    top: 20px;
    background-color: #fff;
    box-shadow: 0 0 3px #ccc;
    width: 200px;
    display: none;
    z-index: 1;
}
.menu .s-w-nav-dropdown {
	width: 100%;
}
.s-w-nav-dropdown.s-w-opened {
    display: block;
}
.s-w-nav-dropdown .s-w-dropdown-container {
    padding: 10px;
    font-family: freight-sans-pro, sans-serif;
}
.s-w-nav-dropdown .s-w-line input {
    border: 1px solid #005693;
    border-radius: 5px;
    font-size: 13px;
    height: 36px;
    padding: 0 10px;
    box-sizing: border-box;
    width: 100%;
    font-family: freight-sans-pro, sans-serif;
}
.s-w-nav-dropdown .s-w-scrollable {
    max-height: 250px;
    overflow-y: auto;
}
.s-w-nav-dropdown .s-w-scrollable .s-w-line{
    line-height: 36px;
    padding: 0 0 0 10px;
    cursor: pointer;
}
.s-w-nav-dropdown .s-w-scrollable .s-w-line.s-w-selected{
	display: flex;
    align-items: center;
    justify-content: space-between;
}
.s-w-nav-dropdown .s-w-scrollable > ul {
	padding: 0px;
	margin: 0px;
}
.s-w-nav-dropdown .s-w-scrollable > ul > li {
	list-style: none;
}
.s-w-global-error {
    min-height: 40px;
    background-color: #a42523cc;
    border: solid 1px #a42523;
    text-align: center;
    line-height: 40px;
    color: #fff;
}
.s-w-global-error .s-w-par {
	padding-bottom: 20px;
}
.s-w-cookies {
	max-width: 900px;
    padding: 10px 0;
    box-sizing: border-box;
    margin: 0 auto;
    font-size: 13px;
    display: flex;
    align-items: center;
}
.s-w-cookies:before {
	content: 'i';
    border: 1px solid;
    border-radius: 50%;
    width: 20px;
    min-width: 20px;
    height: 20px;
    min-height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: serif;
    font-size: 16px;
}
.s-w-cookies > div {
	display: flex;
	flex-direction: column;
	width: 100%;
}
.s-w-cookies > div span {
	margin-left: 10px;
}
.s-w-cookies > div > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}
.s-w-cookie-title {
	font-weight: 600;
	font-size: 16px;
}
.s-w-cookies .s-w-big-blue-btn {
	font-size: 13px;
	margin: 0px;
	padding: 3px;
	min-height: 25px;
}

.s-w-widget-left .s-w-big-blue-btn, .s-w-widget-left .s-w-btn-orange {
    margin: 0;
    font-size: 15px;
    position: absolute;
    bottom: 0;
    width: 100%;
    z-index: 1;
}
.s-w-with-add-to-basket .s-w-widget-left .s-w-big-blue-btn {
    bottom: 60px;
}
.s-w-with-add-to-basket .s-w-widget-left .s-w-btn-orange {
    bottom: 0;
    min-height: 60px;
    border-radius: 3px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.s-w-img-description img {
    object-fit: cover;
	width: 100%;
	height: 100%;
}

/*************  Basket  ****************/
.s-w-myorders-view a.s-w-big-blue-btn, .s-w-basket-view a.s-w-big-blue-btn{
    margin: 0;
    border-radius: 0;
}

.s-w-basket-container{
    padding: 20px 70px;
    background-color: #fff;
}

.s-w-flex-row .s-w-basket-img-tour,.s-w-flex-row .s-w-myorders-img-tour {
    flex: 0 0 100px;
    width: 100px;
    height: 100px;
}
.s-w-flex-row .s-w-basket-img-tour img,.s-w-flex-row .s-w-myorders-img-tour img {
	max-width: 100px;
	max-height: 100px;
}

.s-w-basket-item{
    border-bottom: 1px solid #e6e8eb;
    position: relative;
    padding: 10px 0;
}

.s-w-basket-view .s-w-tickets-overall{
    padding-right: 0;
}

.s-w-basket-total{
    font-size: 21px;
    padding: 20px 0;
}

.s-w-basket-items{
    align-items: flex-end;
}

.s-w-basket-info{
    position: relative;
    word-break: break-word;
}

.s-w-flex-row .s-w-basket-total-item{
    flex: 0 0 100px;
}


/*************  My Orders  ****************/

.s-w-flex-row .s-w-myorders-img-tour{
    height: 60px;
}

.s-w-item-header{
    align-items: baseline;
}

.s-w-myorders-view .s-w-rgt-btn a{
    line-height: 40px;
    height: 40px;
}

.s-w-basket-info .s-w-basket-total{
    border-top: 1px solid #e6e8eb;
}

.s-w-myorders-view .s-w-basket-item:last-child{
    border: 0;
}

.s-w-dsbl {
	pointer-events: none;
}
/* serialization error popup */
.s-w-popup-warning {
	background-color: transparent;
}
.s-w-popup-root-panel {
	background-color: white;
}
.s-w-popup-root-panel .actions-cont {
	display: flex;
	justify-content: center;
	align-items: center;
}
.s-w-popup-root-panel .actions-cont a {
	flex: 1;
}
/* end of common styles*/

/* media styles for mobiles*/
@media only screen and (max-width: 767px)  {
    .s-w-head {
        padding-top: 0;
		padding-left: 20px;
		padding-right: 20px;
        height: 60px;
        border-bottom: 1px solid #e3e5e8;
        position: relative;
        background-color: #fff;
		width: calc(100% - 40px);
    }
	.s-w-head.s-w-head-sticky {
		position: fixed;
		top: 0px;
		z-index: 1;
	}
	.s-w-cont {
		padding: 0px;
	}
	.s-w-cont.s-w-with-head-sticky {
		margin-top: 60px;
	}

    .s-w-head .s-w-lng, .s-w-head .s-w-myorders, .s-w-head .s-w-head-back-desktop {
        display: none;
    }
    .s-w-head a {
        height: 45px;
        display: block;
    }
    .s-w-head a.s-w-logo {
        width: 110px;
        height: 35px;
        margin: 0 auto;
		top: -55px;
		position: relative;
    }
	.s-w-head a.s-w-basket {
		display: flex;
		align-items: center;
		top: -55px;
	}
   .s-w-prev-back{
        padding-top: 15px;
        width: 90px;
        height: 30px;
    }
    a.s-w-close {
        position: absolute;
    }
    .s-w-head .s-w-basket {
        font-size: 0;
    }
    .s-w-head .s-w-basket span {
        font-size: 13px;
    }
    .shop-widget {
        max-width: 800px;
        margin: 0 auto;
    }
    .s-w-home-page .s-w-lft-col, .s-w-add-info, .s-widget-title {
        max-width: 800px;
		margin: 20px;
		padding: unset;
    }
    .s-w-home-page.s-w-allowdecidelater {
    	display: block;
    	padding: 20px 30px;
    }
	.s-w-black {
        max-width: 800px;
	}
    .s-w-top {
        background: none;
    }
    .s-w-widget-left .s-w-lft-col, .s-w-widget-left .s-w-booking-progress {
        display: none;
    }
	.s-w-lft-col.s-w-img-description {
		height: 50vw;
	}
    .s-w-black .s-w-controls {
        position: relative;
        padding: 0;
    }
    .s-w-widget-slider-container {
        height: 100%;
    }
    .s-w-widget-slider {
        width: 100%;
        height: 100%;
    }
    .s-w-bot {
        background: none;
    }
    .s-w-controls {
        padding-bottom: 5px;
    }
    .s-w-home-direct {
        width: 395px;
    }
    .s-w-lft-cont {
        display: table;
        width: 100%;
    }
    .s-w-top-items, .s-w-bot-items {
        display: table-row;
    }
    .s-w-email {
        position: relative;
    }
    .s-w-email div.s-w-email-fields {
        float: none;
        width: auto;
    }
    .s-w-head a.s-w-basket span {
        top: 2px;
        left: 24px;
    }
    .s-w-prom-code {
        margin: 0 10px;
    }
    .s-w-container {
        display: flex;
        flex-direction: column-reverse;
		overflow: hidden;/* this makes the rounded corner visible */
    }
    .s-w-container .s-w-big-blue-btn {
        margin: 20px 0 0;
        position: fixed;
        bottom: 0;
		left: 0;
        width: 100%;
		min-height: 60px;
    }
    .s-w-container .s-w-btn-orange {
        position: fixed;
        bottom: 60px;
        width: 100%;
    }
    .s-w-container.s-w-with-add-to-basket .s-w-tickets-overall {
		bottom: 120px;
	}
    .s-w-widget-right .s-w-tour-title, .s-w-payment .s-w-tour-title, .s-w-payment .s-w-small-title {
        font-size: 13px;
        text-transform: uppercase;
    }
    .s-w-cont-bg {
        padding: 0;
        padding-bottom: 60px;
        box-sizing: border-box;
        min-height: calc(100% - 60px);
        position: relative;
    }
    .widget-error .s-w-cont-bg {
        padding-bottom: 120px;
    }
    .s-w-cont-bg.s-w-with-add-to-basket {
        padding-bottom: 120px;
    }

	.s-w-calendar-table {
		padding: 0px;
	}
	.s-w-month-cont table.gwt-DatePicker, .s-w-month-cont table.datePickerMonthSelector, .s-w-month-cont table.datePickerDays {
		border-spacing: 1px;
	}
    .s-w-ticket-plans {
        margin: 10px 20px;
		overflow-y: auto;
		padding: unset;
    }
	.s-w-ticket-plans.s-w-white-blocks.s-w-ticket-plans-at-once {
		margin-left: 0;
	}
	.s-w-payment-subcontainer {
		flex-direction: column-reverse;
	}
    .s-w-payment .s-w-payment-right {
        width: auto;
        background: none;
		padding-bottom: 10px;
    }
    .s-w-payment-right .s-w-prom-code a {
        margin-left: 0;
    }
    .s-w-payment-right {
        border-bottom: 1px solid #dedede;
    }
    .s-w-payment .s-w-payment-left .s-w-content {
        padding: 10px 20px;
    }
    .s-w-order-info {
        padding-top: 0;
    }
    div.s-w-payment-fields {
        margin: 0;
		margin-bottom: 10px;
    }
    .s-w-payment-chooser {
        justify-content: flex-start;
        flex-direction: column;
    }
	.s-w-payment-fields .s-w-payment-chooser .s-w-input-header {
		padding: 0px 0px 10px 0px;
		margin: 0;
	}
    .s-w-payment-total {
        margin: 10px 0;
        padding: 0;
    }
    .s-w-email {
        padding: 0px 20px 15px;
        border-bottom: 1px solid #dedede;
        margin: 0 -20px;
    }
    .s-w-payment-chooser .s-w-input-header {
        background: none;
        border: none;
        box-shadow: none;
    }
    .s-w-payment .s-w-payment-left .s-w-black {
        bottom: 0;
    }
    .s-w-global-error {
        position: fixed;
        bottom: 60px;
		left: 0;
        padding: 5px 10px;
        box-sizing: border-box;
        height: auto;
        line-height: 20px;
        width: 100%;
        z-index: 1;
    }
    .s-w-paypal-info {
        padding: 10px 0 0;
        text-align: center;
    }
    .s-w-download-page .s-w-container {
        flex-direction: column;
    }
    .s-w-passbooks {
		display: flex;
		flex-direction: column;
		position: static;
    }
    .s-w-time-tickets .s-w-tbl-frst {
        padding-left: 20px;
    }
    .s-w-pickup {
        padding-left: 20px;
        padding-right: 20px;
    }

	/** Basket & My Orders **/

    .s-w-hidden-mobile{
        display: none;
    }

    .s-w-left-mobile{
        float: left;
        text-align: left;
    }

    .s-w-mobile-relative{
        position: relative;
    }

    .s-w-basket-container{
        padding: 20px;
    }

    .s-w-flex-row:first-of-type{
        padding-top: 0;
    }

    .s-w-big-text-mobile{
        color: inherit;
        font-size: inherit;
        word-break: break-word;
    }

    .s-w-text-inline{
        display: inline-block;
    }

    .s-w-content-info{
        padding-bottom: 0;
    }

    .s-w-flex-column-reverse-mobile{
        flex-direction: column-reverse;
    }

    .s-w-basket-view .s-w-cont-bg,
    .s-w-myorders-view .s-w-cont-bg{
        padding: 0 15px;
        padding-bottom: 60px;
    }

    .s-w-basket-item{
        padding-top: 0;
    }

    .s-w-basket-item ~ .s-w-basket-item{
        padding: 20px 0;
    }

	.s-w-desc-hidden {
		display: none !important;
	}
	.s-w-container .s-w-upsell-cont .s-w-big-blue-btn {
		position: relative;
	}
	.s-w-container .s-w-upsell-cont {
		margin-bottom: 80px;
	}
	.s-w-widget-right.s-w-with-global-error {
		padding-bottom: 70px;
	}
    .s-w-myorders-input {
		width: 50%;
	}
	.s-w-head.s-w-head-with-logo-width-100 a.s-w-logo.s-w-logo-width-100 img {
		width: 99px;/* for mobile we are not going to show the 100% of the logo */
	}
	.s-w-payment-chooser .s-w-input-header .s-w-small-title{
	    margin-top: -2px;
	}
}

.s-w-content-head {
        padding-bottom: 20px;
        display: flex;
        justify-content: space-between;
}
@media only screen and (max-width: 370px)  {
	.s-w-date-month .datePickerDays td {
		text-align: center;
		padding-top: 15px;
		padding-bottom: 15px;
		padding-left: unset;
		padding-right: unset;
		font-size: 16px;
	}
}

/* media styles for tablets and higher*/
@media only screen and (min-width: 768px)  {
    .s-w-head {
        padding-top: 30px;
		display: flex;
		flex-direction: row-reverse;
		flex-wrap: nowrap;
		align-items: flex-end;
    }
	.s-w-head.s-w-head-with-logo-centered, .s-w-head.s-w-head-with-logo-width-100 {
		flex-direction: column-reverse;
	}
	.s-w-head.s-w-head-with-logo-centered > *, .s-w-head.s-w-head-with-logo-width-100 > * {
		width: 100%;
	}
	.s-w-head > * {
		flex-grow: 1;
		flex-basis: 0;
	}
    .s-w-head a.s-w-head-back {
    	display: none;
    }
    .s-w-head .s-w-menu {
        display: none;
    }

	.s-w-head a.s-w-logo img {
		max-width: 250px;
		width: auto;
        height: auto;
	}
	.s-w-head a.s-w-logo.s-w-logo-width-100 img {
		max-width: 100%;
		width: 80%;
	}
    .s-w-head .s-w-menu-items {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: flex-end;
		width: 100%;
    	float: none;
    }
    .s-w-head .s-w-menu-items a {
        padding: 5px 5px 5px 35px;
        line-height: 48px;
        margin-left: 20px;
    }
	.s-w-head .s-w-menu-items a.s-w-menu {
		display: none;
	}
    .s-w-head .s-w-menu-items a.s-w-basket, .s-w-head .s-w-menu-items a.s-w-myorders, .s-w-head .s-w-menu-items a.s-w-lng, .s-w-head .s-w-menu-items a.s-w-head-back-desktop {
        padding: unset;
		position: relative;
		display: flex;
		align-items: center;
	    white-space: nowrap;
    }
	.s-w-head .s-w-menu-items a.s-w-head-back-desktop {
		margin-right: auto;
		margin-left: 0;
	}
    .s-w-head .s-w-menu-items a.s-w-basket > *, .s-w-head .s-w-menu-items a.s-w-myorders > *, .s-w-head .s-w-menu-items a.s-w-lng > *{
		padding: 0 5px;
    }
    .s-w-min-hgt {
        min-height: 100%;
    }
    .s-w-cont-bg {
        background-color: #fff;
    }
    .s-w-home-page {
        display: flex;
        flex-direction: row-reverse;
        border: 1px solid #ccc;
        border-radius: 5px;
        margin: 20px 0px;
        position: relative;
        background-color: #f9fafc;
        box-shadow: 0 1px 2px 0 #2b3b5d4d;
		overflow: hidden;
    }
    .s-w-reduced-layout .s-w-home-page {
        display: flex;
        flex-direction: row;
        border: 0px solid;
        border-radius: 12px;
        margin: 20px 12px;
        position: relative;
    	overflow: hidden;
    }
    .s-w-home-page.s-w-allowdecidelater {
    	display: block;
    	padding: 20px 30px;
    }
    .s-w-waypoints-info {
        display: block;
        padding: 20px;
        position: relative;
    }
    .s-w-waypoints-info a.s-w-close {
        position: absolute;
        top: 20px;
        right: 15px;
    }
    .s-w-waypoints-info .s-w-tour-title {
        padding-bottom: 15px;
    }
    .s-w-home-page .s-w-lft-col {
        padding: 0;
        height: auto;
        width: 50%;
    }
    .s-w-home-page .s-w-rgt-col {
        padding: 20px 30px 30px;
		width: calc(50% - 60px);
    }

    .s-w-home-page .s-w-big-blue-btn {
        position: absolute;
        bottom: 0px;
        left: calc(50% - 30px);
        margin-left: 0;
        min-height: 40px;
        font-size: 15px;
        padding: 0 15px;
    }
    .s-w-reduced-layout .s-w-home-page .s-w-big-blue-btn {
        position: absolute;
        bottom: -12px;
        left: calc(100% - 112px);
        margin-left: 0;
        min-height: 40px;
        font-size: 15px;
        padding: 0 15px;
    }
    .s-w-container {
        display: flex;
        background-color: #f9fafc;
        border: solid 1px #e6e8eb;
        border-radius: 3px;
        width: 100%;
        box-sizing: border-box;
        overflow: hidden;
        margin: 20px 0px;
    }
    .s-w-basket-container {
        background-color: #fff;
    }
    .s-w-widget-header {
        top: 0;
        width: auto;
        margin: 25px 0 0;
    }
    .s-w-widget-header .s-widget-title {
        font-size: 21px;
    }
    .s-w-container .s-w-lft-col {
        position: relative;
        height: 375px;
        overflow: hidden;
    }
    .s-w-small-content.s-w-container .s-w-lft-col {
        height: 180px;
    }
    .s-w-small-content.s-w-container .s-w-lft-col img{
        margin-left: 0 !important;
        height: auto;
        width: 100%;
    }
    .s-w-container .s-w-lft-col img {
        height: 100%;
        max-width: none;
    }
    .s-w-widget-left {
        flex-grow: 0;
        flex-shrink: 0;
        width: 34%;
        padding-bottom: 60px;
        position: relative;
    }
    .s-w-with-add-to-basket .s-w-widget-left {
        padding-bottom: 120px;
    }

    .s-w-widget-left img{
        max-width: 100%;
    }
    .s-w-widget-right {
        flex: 1;
		min-width: 0;
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
    }
    .s-w-widget-right .s-w-tour-title, .s-w-widget-right .s-w-small-title {
        padding-left: 0;
    }
    .s-w-widget-right .s-w-search-icon {
        top: 0;
    }
    .s-w-widget-right .s-w-departure-block {
        width: 100%;
        box-sizing: border-box;
        margin-left: 0;
    }
    .s-w-widget-right .s-w-departure-block .s-w-block-container {
        justify-content: space-between;
    }
    .s-w-widget-right .s-w-content {
        padding: 20px 50px;
    }
    .s-w-widget-right .s-w-time-tickets td {
        padding: 10px 20px 10px 15px;
    }
    .s-w-widget-right .s-w-time-tickets td:first-child {
        padding-left: 0;
    }
    .s-w-widget-right .s-w-time-tickets {
        padding-bottom: 10px;
    }
    .s-w-widget-right .s-w-pickup {
        border-top: none;
        padding: 0;
    }
    .s-w-widget-right .s-w-pickup-item .s-w-pickup-time, .s-w-pickup-item .s-w-pickup-select-time {
        position: static;
        display: inline;
        padding-left: 5px;
        vertical-align: middle;
    }
	.s-w-widget-right .s-w-pickup-item .s-w-pickup-select-time {
		margin-left: 5px;
	}
	.s-w-booking-progress .s-w-process-step-title {
		padding-left: 20px;
		padding-top: 20px;
        font-family: freight-sans-pro, sans-serif;
        font-weight: 600;
	}
    .s-w-booking-progress .s-w-process-step {
        padding: 0px 20px;
        box-shadow: inset 0 -1px 0 0 #e6e8eb;
		display: flex;
		justify-content: space-between;
		align-items: center;
		height: 64px;
    }
    .s-w-booking-progress .s-w-process-step.s-w-active {
        background-color: #fff;
    }
    .s-w-booking-progress .s-w-process-step .s-w-step-title {
        font-size: 11px;
        text-transform: uppercase;
    }
    .s-w-booking-progress .s-w-process-step .s-w-step-value {
        font-family: freight-sans-pro, sans-serif;
        font-weight: 600;
        padding-top: 5px;
    }

    .s-w-content-head .s-w-prev-back {
        display: flex;
        margin-top: 10px;
    }
    .s-w-content-head .s-w-prev-back a {
        width: 40px;
        height: 40px;
        background: #fff no-repeat 50% 50%;
        box-shadow: 0 1px 2px 0 #2b3b5d4d;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .s-w-content-head .s-w-prev-back a:last-child {
        margin-left: 5px;
    }
    .s-w-content-head .s-w-prev-back a.s-w-dsbl {
        background-color: transparent;
        box-shadow: none;
    }
    .s-w-container .s-w-time-tickets .s-w-tbl-qty {
        padding-right: 0;
        padding-left: 5px;
    }
	.s-w-mobile-info-label {
		display: none;
	}
    .s-w-container .s-w-tickets-overall {
        position: static;
        background: none;
        border: none;
        font-size: 21px;
        padding-left: 0;
        padding-right: 5px;
    }
    .s-w-paypal-content {
        display: flex;
    }
	.s-w-submit-link-container {
		margin-top: -20px;
		width: 100%;
	}
	.s-w-submit-link-container .s-w-black {
		position: unset;
	}
    .s-w-payment-content .s-w-paypal-info {
        padding: 10px 20px 0 10px;
        font-size: 13px;
        display: flex;
        flex: 1;
        flex-direction: column;
        text-align: left;
        justify-content: center;
    }
    .s-w-download-page .s-w-container {
        display: block;
        padding-right: 320px;
        position: relative;
        padding-bottom: 40px;
        min-height: 370px;
    }
    .s-w-download-page .s-w-link-dnld {
        width: 210px;
        position: absolute;right: 40px;
        top: 45px;
        margin: 0;padding-top: 150px;
        padding-bottom: 30px;
        background-position: 50% 60px;
        box-sizing: border-box;
    }
    .s-w-download-page .s-w-link-dnld div {
        font-size: 15px;
    }
    .s-w-download-page div.s-w-gray-note {
        opacity: 1;
        color: #8b9099;
    }
    .s-w-download-page div.s-w-gray-note div {
        font-weight: 500;
    }
    .s-w-your-order {
        display: block;
        margin: 60px 15px;
        width: auto;
    }
    .s-w-your-order .s-w-big-title {
        font-size: 21px;
        font-family: freight-sans-pro, sans-serif;
        font-weight: 600;
    }
    .s-w-your-order .s-w-payment-total {
        margin: 0;
    }
    .s-w-your-order .s-w-black {
        position: absolute;
    }
    .s-w-your-order .s-w-order-summary {
        position: relative;
    }
    .s-w-your-order .s-w-payment-total {
        padding: 30px 40px;
    }
    .s-w-your-order .s-w-order-summary .s-w-big-right .s-w-total {
        margin: 5px 0;
        font-size: 21px;
        padding: 10px 0;
    }
    .s-w-your-order .s-w-payment-total .s-w-text {
        font-size: 15px;
        padding: 5px 0;
    }
    .s-w-your-order .s-w-payment-total a {
        font-size: 15px;
    }
    .s-w-your-order .s-w-ticket-info .s-w-ticket-name {
        font-size: 17px;
    }
    .s-w-your-order .s-w-ticket-info .s-w-price {
        float: right;
        font-family: freight-sans-pro, sans-serif;
    }
    .s-w-your-order .s-w-order-summary .s-w-big-right .s-w-rgt-prc {
        opacity: 0.5;
    }
    .s-w-payment-content.s-w-paypal-content .s-w-paypal-button {
        margin-left: 0;
    }
    .s-w-payment-content.s-w-paypal-content p {
        margin-left: 20px;
    }
    .s-w-payment-left .s-w-payment-fields {
        margin: 0;
        background: none;
        border: none;
        padding: 0;
    }
    .s-w-payment-right .s-w-payment-total {
        margin: 10px 0;
        padding: 0;
    }
    .s-w-payment-right .s-w-total-line .s-w-lft-item, .s-w-payment-right .s-w-total-line .s-w-rgt-prc {
        float: none;
    }
    .s-w-payment-chooser .s-w-input-header {
        margin: 0;
        padding: 10px 10px 10px 30px;
        border-radius: 2px;
        background-color: #fff;
        box-shadow: 0 1px 2px 0 #2b3b5d4d;
        border: solid 1px #005693;
        font-family: freight-sans-pro, sans-serif;
        font-weight: 600;
		flex-grow: 1;
    }
    .s-w-payment-chooser .s-w-input-header:first-child {
        margin-right: 5px;
    }
    .s-w-payment-chooser .s-w-input-header.s-w-disabled {
        background-color: #f9fafc;
        box-shadow: 0 1px 2px 0 #2b3b5d4d;
        border: solid 1px #e6e8eb;
    }

    .s-w-payment .s-w-payment-left {
        position: relative;
        padding-bottom: 60px;
    }

    .s-w-hidden-desktop{
        display: none;
    }
	.shop-widget .s-w-footer-container {
		display: block;
	}
	.shop-widget .s-w-privacy-settings {
	    display: block;
    }
	.s-w-payment .s-w-footer-container {
		margin-left: 20px;
	}
	.shop-widget .s-w-privacy-settings {
	    margin-left: 20px;
    }
	.s-w-widget-slider.s-w-with-info {
		padding-bottom: 0;
	}
	.s-w-popup-root-panel {
		border-radius: 5px;
	}
}
/* media styles for desktops */
@media only screen and (min-width: 940px)  {
    .shop-widget, .shop-widget .s-w-black {
        max-width: 1200px;
        margin: 0 auto;
    }
    .s-w-widget-right .s-w-content {
        padding:20px 70px;
    }
    .s-w-departure-block .s-w-block-item .item-container {
        padding: 13px 20px;
    }
    .s-w-payment .s-w-payment-left .s-w-content {
        padding: 10px 70px;
    }
    .s-w-download-page .s-w-container  {
        padding: 30px 400px 40px 70px;
    }
    .s-w-download-page .s-w-link-dnld  {
        width: 290px;
    }
    .s-w-payment-chooser .s-w-input-header {
        width: 50%;
    }
    .s-w-departure-block .s-w-block-item {
        width: 24%;
    }
}

.s-w-gray {
    opacity: 0.5;
	filter: alpha(opacity=50);
}

.datePickerDays td.datePickerDayIsValue, .datePickerDays td.datePickerDay.datePickerDayIsToday.datePickerDayIsValue {
    background-color: #FFC000;
}

.s-w-rgt-btn a {
    background-color: #005693;
}

/* CHECKOUT SCREEN STYLES */
.s-w-email-fields {
	padding: 20px 0px 10px 0px;
}
.s-w-email-fields.s-w-frst-pax {
	padding-top: 0;
}
.s-w-email-fields.s-w-error-pax-group {
	border: 1px solid #E62B36;
	border-radius: 3px;
}
.spreedly-fakeplaceholder {
    opacity: 0.25;
    filter: alpha(opacity=25);
    font-size: 16px !important;
    line-height: 32px;
    position: absolute;
    left: 9px;
}
.spreedly-fakeplaceholder.cvv {
	top: 4px;
}
.spreedly-fakeplaceholder.number {
	top: 4px;
}

.s-w-black.s-w-waiting {
    display: flex;
    justify-content: center;
    align-items: center;
}
.s-w-waiting {
    font-size: 0;
}
.icon-triangle {
    width: 16px;
    height: 16px;
    border-radius: 10px;
    border: 1px solid #005693;
    display: inline-block;
    box-shadow: 0 0 1px rgba(101,100,81, 0.7);
}
.icon-triangle:after {
    width: 0;
    height: 0;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 5px solid #005693;
    content: "";
    display: block;
    margin: 4px 0 0 6px;
}

span.s-w-error-icon:before {
	content: '!';
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: red;
}

/* SPINNER PURE CSS3 WITH ALMOST ALL BROWSERS SUPPORT */
#spinnerG {
	position:relative;
	width:29px;
	height:29px;
	margin: auto;
}

.spinnerG {
	position:absolute;
	background-color: #FFFFFF;
	width:7px;
	height:7px;
	border-radius:5px;
		-o-border-radius:5px;
		-ms-border-radius:5px;
		-webkit-border-radius:5px;
		-moz-border-radius:5px;
	animation-name:bounce_spinnerG;
		-o-animation-name:bounce_spinnerG;
		-ms-animation-name:bounce_spinnerG;
		-webkit-animation-name:bounce_spinnerG;
		-moz-animation-name:bounce_spinnerG;
	animation-duration:1.1s;
		-o-animation-duration:1.1s;
		-ms-animation-duration:1.1s;
		-webkit-animation-duration:1.1s;
		-moz-animation-duration:1.1s;
	animation-iteration-count:infinite;
		-o-animation-iteration-count:infinite;
		-ms-animation-iteration-count:infinite;
		-webkit-animation-iteration-count:infinite;
		-moz-animation-iteration-count:infinite;
	animation-direction:normal;
		-o-animation-direction:normal;
		-ms-animation-direction:normal;
		-webkit-animation-direction:normal;
		-moz-animation-direction:normal;
}

#spinnerG_1{
	left:0;
	top:11px;
	animation-delay:0.41s;
		-o-animation-delay:0.41s;
		-ms-animation-delay:0.41s;
		-webkit-animation-delay:0.41s;
		-moz-animation-delay:0.41s;
}

#spinnerG_2{
	left:3px;
	top:3px;
	animation-delay:0.55s;
		-o-animation-delay:0.55s;
		-ms-animation-delay:0.55s;
		-webkit-animation-delay:0.55s;
		-moz-animation-delay:0.55s;
}

#spinnerG_3{
	top:0;
	left:11px;
	animation-delay:0.69s;
		-o-animation-delay:0.69s;
		-ms-animation-delay:0.69s;
		-webkit-animation-delay:0.69s;
		-moz-animation-delay:0.69s;
}

#spinnerG_4{
	right:3px;
	top:3px;
	animation-delay:0.83s;
		-o-animation-delay:0.83s;
		-ms-animation-delay:0.83s;
		-webkit-animation-delay:0.83s;
		-moz-animation-delay:0.83s;
}

#spinnerG_5{
	right:0;
	top:11px;
	animation-delay:0.97s;
		-o-animation-delay:0.97s;
		-ms-animation-delay:0.97s;
		-webkit-animation-delay:0.97s;
		-moz-animation-delay:0.97s;
}

#spinnerG_6{
	right:3px;
	bottom:3px;
	animation-delay:1.1s;
		-o-animation-delay:1.1s;
		-ms-animation-delay:1.1s;
		-webkit-animation-delay:1.1s;
		-moz-animation-delay:1.1s;
}

#spinnerG_7{
	left:11px;
	bottom:0;
	animation-delay:1.24s;
		-o-animation-delay:1.24s;
		-ms-animation-delay:1.24s;
		-webkit-animation-delay:1.24s;
		-moz-animation-delay:1.24s;
}

#spinnerG_8{
	left:3px;
	bottom:3px;
	animation-delay:1.38s;
		-o-animation-delay:1.38s;
		-ms-animation-delay:1.38s;
		-webkit-animation-delay:1.38s;
		-moz-animation-delay:1.38s;
}



@keyframes bounce_spinnerG{
	0%{
		transform:scale(1);
	}

	100%{
		transform:scale(.3);
	}
}

@-o-keyframes bounce_spinnerG{
	0%{
		-o-transform:scale(1);
	}

	100%{
		-o-transform:scale(.3);
	}
}

@-ms-keyframes bounce_spinnerG{
	0%{
		-ms-transform:scale(1);
	}

	100%{
		-ms-transform:scale(.3);
	}
}

@-webkit-keyframes bounce_spinnerG{
	0%{
		-webkit-transform:scale(1);
	}

	100%{
		-webkit-transform:scale(.3);
	}
}

@-moz-keyframes bounce_spinnerG{
	0%{
		-moz-transform:scale(1);
	}

	100%{
		-moz-transform:scale(.3);
	}
}

/* SPINNER FOR THE DESKTOP VIEW */
.loader {
  color: #005693;
  font-size: 20px;
  margin: 100px auto;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: load4 1.3s infinite linear;
  animation: load4 1.3s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}
@-webkit-keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
@keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}

.social-links {
	float: right;
}
.social-links a {
	background: url(../img/bg-social_links.png) 5px 0 /72px no-repeat;
	float: left;
	width: 45px;
	height: 45px;
	margin: 0 5px;
}
.social-links a:hover {
	background-position: -36px 0px;
	background-color: #547bbc;
}
.social-links a:last-child {
	margin-right: 0;
}
.social-links a.gplus {
	background-position: 5px -47px;
}
.social-links a.gplus:hover {
	background-position: -36px -47px;
	background-color: #e95655;
}
.social-links a.twtr {
	background-position: 5px -95px;
}
.social-links a.twtr:hover {
	background-position: -36px -95px;
	background-color: #000000;
}
.social-links a.pint {
	background-position: 5px -151px;
}
.social-links a.pint:hover {
	background-position: -36px -151px;
	background-color: #ca2027;
}
.social-links a.tadvisor {
	background-position: 6px -199px;
}
.social-links a.tadvisor:hover {
	background-position: -33px -199px;
	background-color: #75b937;
}

.s-w-popup-paypal.shop-widget, .s-w-popup-warning.shop-widget  {
	min-height: unset;
	height: unset;
	position: fixed;
	top: 250px;/*fallback value*/
	left: 50%;
	z-index: 1;
    transform: translate(-50%, -50%);
	transition: all 0.3s ease;
	background-color: transparent;
}
.s-w-popup-paypal a {
    color: #005693;
    outline: none;
    text-decoration: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    height: 100px;
    align-items: center;
    justify-content: space-around;
    background-color: white;
    border: 1px solid #525252;
    box-shadow: 0px 0px 15px 2px rgba(0, 0, 0, 0.5);
    padding: 10px 20px;
}
.s-w-popup-paypal a:hover {
	text-decoration: none;
}

.s-w-popup-paypal-glass , .s-w-popup-warning-glass {
	background-color: rgba(0, 0, 0, 0.3);
	z-index: 1;
}

/* SMOOTH SLIDER PANEL STYLES */
.container {
  --n: 1;
  display: flex;
  align-items: center;
  overflow-y: hidden;
  width: 100%;
  width: calc(var(--n) * 100%);
  height: 100%;
  max-height: 100vh;
  min-height: 210px;
  transform: translate(calc(var(--tx, 0px) + var(--i, 0) / var(--n) * -100%));
}

.container div {
  width: 100%;
  width: calc(100% / var(--n));
  user-select: none;
  pointer-events: none;
  height: auto;
}

.container div > img {
    object-fit: cover;
	width: 100%;
	height: 100%;
}

.smooth {
  transition: transform calc(var(--f, 1) * .5s) ease-out;
}

.navigation {
    position: absolute;
    color: white;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: space-around;
	padding-right: 8px;
}
.navigation a {
	margin: 5px;
	display: flex;
	align-items: center;
}
.navigation a:before {
	content: ' ';
	display: block;
	width: 35px;
	height: 3px;
	background-color: white;
	opacity: 0.5;
}
.navigation a.active:before {
	opacity: 1;
}

/* New Adyen payment method using Adyen Components */
input[type=text] {
    /* Remove iPad/iPhone styles */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.adyen-checkout__card-input{
    padding-bottom: 20px !important;
}

.adyen-checkout__input {
	padding: 0 0 0 8px !important;
	font-size: 16px !important;
	font-family: Helvetica, sans-serif !important;
	color: #000 !important;
    font-weight: 200 !important;
    opacity: 1;
    filter: alpha(opacity=100);
    border: 1px solid #b9c4c9;
    box-shadow: none;
}
/* .shop-widget input {
	color: #000 !important;
} */
.adyen-checkout__label__text {
    display: none !important;
}
.adyen-checkout__fieldset.adyen-checkout__fieldset--billingAddress .adyen-checkout__label__text {
	display: unset !important;
}
.adyen-checkout__input-wrapper {
    width: 100% !important;
}
.adyen-checkout__input.adyen-checkout__input--large {
	width: 100% !important;
	/* color: #000 !important; */
}
.adyen-checkout__card__cardNumber__input {
	padding: 0 0 0 8px !important;
}
.adyen-checkout__input-wrapper > img, .BN_1SqR6X8UcFX1kOZVSU {
	left: 8px !important;
	margin-left: 0 !important;
}

.adyen-checkout__input--small {
	width: 100% !important;
}

.adyen-checkout__card__exp-cvc .adyen-checkout__field {
	margin-right: 4% !important;
	width: 50% !important;
	max-width: 150px;
}

.adyen-checkout__card__exp-cvc .adyen-checkout__field:last-child {
	margin-right: 0 !important;
}

.adyen-checkout__error-text {
	font-size: .8em !important;
}

input.adyen-checkout__input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	/* color: #d8d8d8; */
	opacity: 0.6;
	filter: alpha(opacity=60);
	font-size: 16px;
	font-family: Helvetica;
}

input.adyen-checkout__input::-moz-placeholder { /* Firefox 18- */
	/* color: #d8d8d8; */
	opacity: 0.6;
	filter: alpha(opacity=60);
	font-size: 16px;
	font-family: Helvetica;
}

input.adyen-checkout__input:-ms-input-placeholder { /* IE 10+ */
	/* color: #d8d8d8; */
	opacity: 0.6;
	filter: alpha(opacity=60);
	font-size: 16px;
	font-family: Helvetica;
}

.adyen-checkout__iframe body, .adyen-checkout__iframe html{
    background: transparent !important;
}

.adyen-checkout__input.adyen-checkout__input--valid {
    color: green !important;
}

.adyen-warning {
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 5px;
	color: #A91237;
}

@media (max-width: 600px) {
	.adyen-checkout__card__exp-cvc .adyen-checkout__field {
			max-width: inherit;
			width: 50% !important;
	}
}

/** tmt-3ds **/
.challenge {
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 5px;
}

/** adyen challenge **/
.gwt-HTML .adyen-checkout__threeds2__challenge, .gwt-HTML .adyen-checkout__threeds2__challenge .adyen-checkout__iframe {
	width: 100%;
}
.gwt-HTML .adyen-checkout__iframe.adyen-checkout__iframe--threeDSIframe {
	width: 100%;
}


/** redirect-form **/
.redirect-form {
	background-color: transparent;
}
.redirect-form > div {
	border: 1px solid #005693;
	background-color: white;
	border-radius: 10px;
	padding: 5px;
	display: flex;
	flex-flow: column nowrap;
}
.redirect-form .gwt-HTML{
	background-color: transparent;
	margin: 10px;
}
.redirect-form .gwt-SubmitButton, .warning-panel .gwt-SubmitButton, .timeout-panel .gwt-SubmitButton{
	margin: 10px;
	border: 1px solid;
	border-radius: 3px;
	cursor: pointer;
	background-color: #173557;
	color: white;
	font-size: 15px;
}

/*                         */
/* New Payments Containers */
/*                         */
.s-w-singlepayment-container {
	border: 1px solid #a9a9a9a9;
	border-radius: 3px;
	padding: 10px;
	margin-bottom: 10px;
}
.s-w-singlepayment-container .gwt-RadioButton label {
	display: flex;
	align-items: center;
	padding-left: 5px;
}
.s-w-singlepayment-container .gwt-RadioButton label span {
	position: relative;
	margin-right: 8px;
	height: 26px;
	width: 40px;
	box-sizing: border-box;
	border: 1px solid rgba(0, 27, 43, .17);
	border-radius: 3px;
}
.s-w-singlepayment-container .gwt-RadioButton label img {
	height: 26px;
	width: 40px;
	display: block;
	box-sizing: border-box;
	border-radius: 3px;
}
.s-w-singlepayment-container > div {
	margin-top: 10px;
	height: unset;
    -webkit-transition: 0.5s ease !important;
    -moz-transition: 0.5s ease !important;
    -o-transition: 0.5s ease !important;
    transition: 0.5s ease !important;
}
.s-w-singlepayment-container  div.hide {
	height: 0px;
	/* max-height: 0px; */
	margin: 0;
	padding: 0;
	border: 0;
	overflow: hidden;
    -webkit-transition: 0.5s ease !important;
    -moz-transition: 0.5s ease !important;
    -o-transition: 0.5s ease !important;
    transition: 0.5s ease !important;
}

.s-w-multipayment-container.single-payment .s-w-singlepayment-container {
	border: 0px solid;
	padding: 0;
}

/* Twint style */
.twintContainer {
	margin: 20px 0;
	padding: 20px 10px;
	border: 1px solid #00588f;
	border-radius: 3px;
	color: white;
	background-color: #005693;
}
/* iDeal style */
.idealContainer {
	margin: 20px 0;
	display: flex;
	flex-direction: row;
	align-items: center;
}
.idealContainer .gwt-Label {
	margin-right: 10px;
}

/* CreditCard Form Postal Code */
input.adyen-postalcode {
	width: calc(100% - 12px);
    border: 1px solid #b9c4c9;
    border-radius: 5px;
    padding: 0px 0px 0px 8px;
    height: 40px;
    font-size: 16px;
    font-family: Helvetica;
	border-bottom-color:#0abf53;
	color: green;
}
input.adyen-postalcode.invalid {
    border-color: #d10244;
    color: #d10244;
}

/*             */
/* MODAL POPUP */
/*             */
.modal {
	display: block;

	width: 400px;
	max-width: 100%;

	height: 200px;
	max-height: 100%;

	position: fixed;

	z-index: 100;

	left: 50%;
	top: 0%;
	transform: translate(-50%, -50%);

	/* Use this for centering if unknown width/height */
	transition: 0.5s ease !important;

	background: white;
	box-shadow: 0 0 60px 10px rgba(0, 0, 0, 0.9);
	border-radius: 5px;
}
.modal.show {
	top: 50%;
	border-radius: 25px;
}

.modal-glass-panel {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 50;

	background: rgba(0, 0, 0, 0.6);
}
.modal-widget {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    padding: 20px 50px 20px 20px;
    box-sizing: border-box;
}
.modal .modal-widget {
    display: flex;
    flex-direction: column;
}
.modal-widget .title {
    font-weight: 600;
	margin-bottom: 10px;
	text-align: center;
}

button.gwt-SubmitButton:first-child {
    order: 2;
    font-size: 22px;
    opacity: 0.8;
    line-height: 1;
}

.modal .modal-widget {
    display: flex;
    flex-direction: column;
}
.modal-widget .title {
    font-weight: 600;
	margin-bottom: 10px;
	text-align: center;
}

button.gwt-SubmitButton:first-child {
    order: 2;
}
.modal .modal-widget {
	display: flex;
	flex-direction: column;
}

.modal-widget .title {
    font-weight: 600;
	margin-bottom: 10px;
}

.datePickerDays td.datePickerDay.datePickerDayIsToday.datePickerDayIsHighlighted{
	background-color: #00588f;
	color:white;
}
.datePickerDayIsHighlighted{
	background-color: #00588f;
	color:white;
}

/**			 	 **/
/** low contrast **/
/**			 	 **/
.s-w-month-cont-low  .datePickerDays td {
    text-align: center;
    padding: 15px;
    font-size: 16px;
}
.s-w-month-cont-low td.datePickerDay {
    cursor: pointer;
   	background-color: #f9fafc;
    color: black;
}

.s-w-month-cont-low td.datePickerDay.datePickerDayIsToday {
    border: 1px solid #173557;
    border-radius: 30px;
}
.s-w-month-cont-low .datePickerDays td.datePickerDayIsDisabled {
    cursor: default;
}

.s-w-month-cont-low .datePickerDays td.datePickerDayIsOut,.s-w-month-cont-low .datePickerDays td.datePickerDayIsPast,.s-w-month-cont-low .datePickerDays td.datePickerDayIsDisabled,.s-w-month-cont-low .datePickerDays td.datePickerDayIsFiller {
    opacity: 0.5;
	filter: alpha(opacity=50);
}

.s-w-month-cont-low .datePickerDays td.datePickerDayIsValue {
    font-weight: 600;
    border-radius: 30px;
    background-color: #005693;
}

.s-w-month-cont-low td.datePickerDay.datePickerDayIsHighlighted{
	background-color: #00588f;
	border-radius: 30px;
	color:white;
}
.s-w-month-cont table {
	border-spacing: 10px;
}
.s-w-month-cont-low table {
    border-spacing: 0px;
}

div.checkout-disabled .adyen-checkout__input-wrapper, div.checkout-disabled .s-w-input-header, div.checkout-disabled .s-w-inp-wrap, div.checkout-disabled .s-w-summary-item.highlight, div.checkout-disabled .s-w-prom-code {
	opacity: 0.2;
}
div.checkout-disabled .threeDS2 {
	box-shadow: 0 0 0 9999999px rgba(0, 0, 0, .2);
}

.tacPopup{
	display: none;
	width: 500px;
	max-width: 100%;
	height: 500px;
	max-height: 100%;
	position: fixed;
	z-index: 100;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);

	background: white;
	box-shadow: 0 0 60px 10px rgba(0, 0, 0, 0.9);
	border-radius: 3px;
}

.timeout-panel .gwt-SubmitButton{
	width: auto;
    height: auto;
    padding: 6px 25px 8px 25px;
    border-radius: 50px;
    border: 0;
    box-shadow:0px 2px 0px 0px rgb(0 0 0);
    font-size: 18px;
}
.timeout-panel .title{
   font-size: 28px;
   opacity: 0.8;
}

.timeout-panel .message{
   font-size: 18px;
   opacity: 0.8;
   font-family: sans-serif;
   font-weight: 600;
   margin-bottom: 8px
}

/*                   */
/* SELFSERVICE POPUP */
/*                   */
.modal.selfservice-credit-card-payment-running {
	text-align: center;
	height: 250px;
	border-radius: 15px;
}
.modal.selfservice-credit-card-payment-running > div.warning-panel.modal-widget {
	padding: 20px 40px;
	overflow: unset;
}
.modal.selfservice-credit-card-payment-running i.selfservice-credit-card-icon {
	font-size: 90px;
	color: #00588f;
}
.modal.selfservice-credit-card-payment-running div.gwt-HTML {
	font-weight: 600;
	font-size: 24px;
}
.modal .modal-widget.timeout-panel {
	padding: 20px;
    border-radius:30px;
    overflow: hidden;
}

div.warning-panel .warning-button {
	font-size: 20px;
	border-radius: 5px;
	padding: 5px 15px;
	margin-top: 10px;
}

.s-w-dob.s-w-error-field select {
	border-color: red;
}

a {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.s-w-passcat-label .s-w-seatcat-dropdown {
	margin-left: 10px;
}

@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: local('Material Icons'),
    local('MaterialIcons-Regular'),
    url(/pit/font/material-icons.woff2) format('woff2'),
    url(/pit/font/material-icons.woff) format('woff'),
    url(/pit/font/MaterialIcons-Regular.ttf) format('truetype');
}

.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;

  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: 'liga';
}

.s-w-basket-warning {
	font-style: italic;
	font-size: 17px;
}


/*                             *
 *  CAPACITY ICONS ON CALENDAR *
 *                             */

.datePickerDay div {
	display: block;
}
.content {
	display: flex;
	flex-direction: column;
}
.content .status-container {
	width: 100%;
	display: flex;
	text-align: right;
	flex-direction: column;
	margin-top: 5px;
}
.content .status-container .status {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	align-self: end;
}
.content .day {
	line-height: 18px;
}
.content .amount {
	font-size: 9px;
	line-height: 182x;
}
.datePickerDay.green .status {
	background-color: #2ECC40;
	border-color: #2ECC40;
}
.datePickerDay.yellow .status {
	background-color: #FFDC00;
	border-color: #FFDC00;
}
.datePickerDay.red .status {
	background-color: #FF4136;
	border-color: #FF4136;
}
.s-w-reduced-layout .datePickerDay.grey .status {
	background-color: #8b8b8b;
	border-color: #8b8b8b;
}

.s-w-legend {
	display: flex;
}
.s-w-legend .icon {
	margin: auto 10px auto 20px;
	height: 8px;
	width: 8px;
	border-radius: 50%
}
.s-w-legend .icon:first-child {
	margin-left: 10px;
}
.s-w-legend .icon.green {
	background-color: #2ECC40;
}
.s-w-legend .icon.yellow {
	background-color: #FFDC00;
}
.s-w-legend .icon.red {
	background-color: #FF4136;
}

/* time panel icons and prices */

.s-w-time-for-choose .s-w-time-option .s-w-time-select {
	display: flex;
	flex-direction: column;
}
.s-w-time-for-choose .s-w-time-option .s-w-time-select .status-container {
	width: 80%;
	display: flex;
	text-align: right;
	flex-direction: column;
	margin-top: 10px;
}

.s-w-time-for-choose .s-w-time-option .s-w-time-select .status-container .status {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	align-self: end;
}
.s-w-time-for-choose .s-w-time-option .s-w-time-select .status-container.green .status {
	background-color: #2ECC40;
	border-color: #2ECC40;
}
.s-w-time-for-choose .s-w-time-option .s-w-time-select .status-container.yellow .status {
	background-color: #FFDC00;
	border-color: #FFDC00;
}
.s-w-time-for-choose .s-w-time-option .s-w-time-select .status-container.red .status {
	background-color: #FF4136;
	border-color: #FF4136;
}

.s-w-time-for-choose .s-w-time-option .s-w-time-select .time {
	line-height: 18px;
	font-size: larger;
	margin-bottom: 5px;
}
.s-w-time-for-choose .s-w-time-option .s-w-time-select .amount {
	font-size: 16px;
	line-height: 16px;
}

.datePickerDays.departures .datePickerDay {
	padding: 5px 15px;
}

/* upcomings departure capacity icons styles */
.s-w-departure-block .s-w-block-container .s-w-block-item .item-container .amount {
	font-size: 13px;
}
.s-w-departure-block .s-w-block-container .s-w-block-item .item-container .status-container {
	display: flex;
	text-align: right;
	flex-direction: column;
}
.s-w-departure-block .s-w-block-container .s-w-block-item .item-container .status-container .status {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	align-self: end;
}
.s-w-departure-block .s-w-block-container .s-w-block-item .item-container .status-container.green .status {
	background-color: #2ECC40;
	border-color: #2ECC40;
}
.s-w-departure-block .s-w-block-container .s-w-block-item .item-container .status-container.yellow .status {
	background-color: #FFDC00;
	border-color: #FFDC00;
}
.s-w-departure-block .s-w-block-container .s-w-block-item .item-container .status-container.red .status {
	background-color: #FF4136;
	border-color: #FF4136;
}

.adyen-checkout__input::placeholder {
	color: rgb(0,0,0) !important;
	opacity: 1 !important;
}

.shop-widget input::placeholder, .shop-widget textarea::placeholder {
	opacity: 1 !important;
}

input, select {
	opacity: 1 !important;
}

@media only screen and (max-width: 767px){
    .s-w-logo-hidden{
      display: none;
    }

    .s-w-home-page {
      border: 1px solid #ccc;
      border-radius: 5px;
      margin: 20px 3px;
      position: relative;
      background-color: #f9fafc;
      box-shadow: 0 1px 2px 0 #2b3b5d4d;
      overflow: hidden;
    }
}

/******** reduced layout ********/

.s-w-reduced-layout .shop-widget {
  max-width:100%;
}
.s-w-reduced-layout .s-w-cont{
      padding:0
}



.s-w-reduced-layout .s-w-container {
  border: none;
  display : block;

}
.s-w-reduced-layout .s-w-widget-right .s-w-content{
  padding:0;
}
.s-w-reduced-layout .s-w-widget-left,
.s-w-reduced-layout .s-w-head,
.s-w-reduced-layout .s-w-footer-container, .s-w-reduced-layout .s-w-privacy-settings{
  display: none;
}

.s-w-reduced-layout .s-w-content-head{
  padding: 0;
}

.s-w-head-ss{
    display: none;
    padding-bottom: 80px;
    position: fixed;
    top: 0;
    width: 100%;
    height: 50px;
    background: #212121;
    z-index: 2000;
}
.s-w-head-ss-container{
    position:absolute;
    width:100vw;
    height:100%;
}


.s-w-head-ss-container .s-w-header-ss-image img{
    width:100%;
}
.s-w-head-ss-container .s-w-header-ss-logo {
    position: absolute;
    top: 0;
    left: 0;
}

.s-w-head-ss-container .s-w-header-ss-logo img{

     transform: translate(20%, 60%);
     max-width: 250px;
     max-height: 150px;
}

.s-w-head-ss-container .s-w-header-ss-wave{
    width: 100%;
    position: relative;
    left: 50%;
    transform: translate(-50%, -50%);
}
.s-w-footer-ss-container{
    display: none;
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 50px;
    padding-bottom: 16px;
    background: #212121;
    border-top: 2px solid grey;
    z-index:2000;
}

.s-w-footer-ss-container .s-w-footer-ss-home-container{
    float:left;
}

.s-w-footer-ss-container .s-w-footer-ss-home-icon {
    margin:10px;
    float:left;
}

.s-w-footer-ss-container .s-w-footer-ss-home-icon img{
    width:40px;
}

.s-w-footer-ss-container .s-w-footer-ss-languages div{
    float:left;
}

.s-w-footer-ss-container .s-w-footer-ss-languages a img:first-child{
    margin-left:25px;
}

.s-w-footer-ss-container .s-w-footer-ss-languages a img{
    margin-top:13px;
    width:36px;
}

.s-w-reduced-layout .s-w-tour-title{
  font-weight: 700 !important;
  font-size: 32px;
  line-height: 32px;
  letter-spacing: 0.32px;
  display: flex;
  justify-content: center;
  flex: 1 100%;
}

.s-w-reduced-layout .s-w-departure-block {
	display: flex;
	justify-content: center;
	overflow: hidden;
	padding: 0px 15px;
}
.s-w-reduced-layout .s-w-departure-block .s-w-block-item:last-child {
  font-size:1.25rem !important;
}

.s-w-reduced-layout .s-w-departure-block .s-w-block-container {
    border: none !important;
    display: flex;
	flex-direction: column;
}
.s-w-reduced-layout .s-w-departure-block .s-w-block-container.s-w-block-min-height {
	min-height: 500px !important;
	justify-content: flex-start;
	margin-top: 50px;
}
.s-w-reduced-layout .s-w-small-title {
    font-weight:700 !important;
    font-size:2rem !important;
    margin: 0 -20px;
    padding-left: 20px;
    text-transform: uppercase;
}

.s-w-reduced-layout .s-w-departure-block .s-w-block-item {
    width: 56.5vw;
    font-size:1.25rem !important;
    margin-bottom: 16px;
    font-weight: 600 !important;
}
.s-w-reduced-layout .s-w-departure-block .s-w-block-container .s-w-block-item .item-container .amount {
	font-size: 1rem;
}

.s-w-reduced-layout .s-w-departure-block .s-w-block-item .item-container {
    background-color: #FFFFFF !important;
    width: 53vw;
    border-radius: 10px;
    min-height:25px;
    padding: 5px;
}

.s-w-reduced-layout .s-w-container{
  margin:0px;
}

.s-w-reduced-layout .s-w-prev-back-minimal{
  display: flex !important;
  justify-content: space-between;
  align-items:center;
  margin-top: 18px;
}

.s-w-reduced-layout .s-w-white-blocks .s-w-block{
  background-color: #FFFFFF;
  border-radius: 10px;
  min-width: inherit;
  height: 26px !important;
  max-width: none;
}

.s-w-reduced-layout .s-w-time-tickets .s-w-tbl-frst{
  font-size : 2rem !important;
  font-weight: 600;
  margin-top:3rem !important;
}
.s-w-reduced-layout .s-w-widget-right .s-w-time-tickets td {
    padding: 0px 25px!important;
}

.s-w-reduced-layout .s-w-time-for-choose .s-w-time-select {
	border-radius: 50px !important;
	margin-right: 20px;
	margin-bottom: 12px !important;
	position: inherit !important;
	width: 155px !important;
	height: 55px !important;
	font-size: 1.25rem;
	font-weight: 600 !important;
	margin: 20px 10px !important;
    border: none;
    box-shadow:0 2px 0px #080808;
}

.s-w-reduced-layout .s-w-time-for-choose .s-w-time-option .s-w-time-select .amount{
    font-size:20px;
    line-height: 70px;
}

.s-w-reduced-layout .s-w-time-option:before{
    display:none;

}
.s-w-reduced-layout .s-w-time-option{
    position:inherit;
  float: left;
  min-height: 200px;
  display: flex;
  padding-top:0;
  flex-wrap: wrap;
  align-content: start;
}

.s-w-reduced-layout .s-w-time-option {
	position: inherit;
	float: left;
	min-height: 600px;
	padding-top: 0;
}


.s-w-reduced-layout a.s-w-big-blue-btn.s-w-dis-btn, .s-w-reduced-layout a.s-w-big-blue-btn.s-w-dis-btn.s-w-window-next{
    border-color: #fff;
    width: 14vw;
    color: #000;
    border-radius: 10px;
    min-height: 0;
    padding: 5px 7px !important;
    text-transform: none;
    font-size: 2rem !important;
    font-weight: 600 !important;
}
.s-w-reduced-layout a.s-w-big-blue-btn{
        border-color: #000;
        width: 14vw;
        color: #FFF;
        border-radius: 10px;
        min-height: 0;
        padding: 5px 7px;
        text-transform: none;
        font-size:2rem !important;
        text-shadow: none;
        font-weight: 600 !important;
        border: 1px solid #fff;
        height: 5vh;
    }

.s-w-reduced-layout .s-w-sel-date {
	font-weight: 700 !important;
	font-size: 2rem !important;
	color: black !important;
	padding: 0 0 3rem 0;
	text-transform: none;
	opacity: 0.5;
	float: left;
	opacity: 1;
}

.back-button-left {
	position: fixed;
	bottom: 7vh;
	left: 7.6vw;
}


.s-w-reduced-layout a.s-w-big-blue-btn.s-w-dis-btn{
    width:288px;
    padding: 0.85rem 0rem !important;
    height: auto;
}

.s-w-reduced-layout a.s-w-big-blue-btn,  .s-w-reduced-layout a.s-w-big-blue-btn .s-w-window-next{
  width:288px;
}

.s-w-reduced-layout .next-button-right .s-w-big-blue-btn .s-w-window-next{
  width:288px;
}

.next-button-right{
  position: fixed;
  bottom: 7vh;
  right:7.8vw;
}

.s-w-reduced-layout .s-w-passcat-label{
  width: 100% !important;
}

.s-w-reduced-layout .s-w-passcat-label .s-w-seatcat-dropdown{
  display:none !important;
  padding-left:10px;
}

.s-w-reduced-layout .s-w-passcat-description{
  font-size: 0.6em !important;
  padding-left: 10px;
  width: 30%;
  float: left;

}
.s-w-reduced-layout .s-w-passcat-name{
  float:left
}

.s-w-reduced-layout .s-w-item-price{
  font-size: 1.6rem !important;
  font-weight: 600 !important;
  float:right !important;
}
.s-w-reduced-layout .s-w-time-tickets .s-w-tbl-qty{
  width: 240px !important;
}
.s-w-reduced-layout .s-w-int-control .s-w-int-control-value{
	width: 140px !important;
	font-weight: 600 !important;
	line-height: 80px;
	font-size: 45px;
	height: 70px;
	top: 0;
}
.s-w-reduced-layout .s-w-time-tickets .s-w-tbl-qty .s-w-int-control {
	display: flex;
	align-items:center;
}

.s-w-reduced-layout .s-w-ticket-plans .s-w-block{
  min-height: 0;
  font-size: 1.25rem !important;
  padding: 10px 20px;
  border: 1px solid #fff;
  margin-right:15px;
  font-weight: 600 !important;
}

.s-w-reduced-layout .s-w-ticket-total{
  font-size: 2rem !important;
  font-weight: 600 !important;
}
.s-w-reduced-layout .s-w-ticket-total .s-w-total-label{
  font-size: 2rem !important;
  font-weight: 600 !important;
}
.s-w-reduced-layout .s-w-time-tickets table td{
  border-bottom: none;
}

.s-w-reduced-layout .s-w-time-tickets{
  min-height: 650px;
}

.s-w-reduced-layout .s-w-month-cont{
  min-height: 650px;
}


.s-w-reduced-layout .s-w-priceplan-name{
  line-height: 0px;
  margin: auto;
  font-size: 24px;
}

.s-w-reduced-layout .s-w-gray{
  opacity: 1;
}

.s-w-reduced-layout .s-w-time-tickets table td .s-w-item-price{
  opacity: 1;
  margin-top: 3px
}
.s-w-reduced-layout .close{
  display: none;
  position: fixed;
  top: 5vh;
  right: 10.5vw;
  color: #fff;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 38px;
  float: left;
  font-weight: 600;
  font-size: 24px;
}
.s-w-reduced-layout .close a{
  color:#fff !important;
}

.s-w-reduced-layout .s-w-submit-link-container{
  margin-top:0;
  width: fit-content;
}

.s-w-reduced-layout .s-w-check-cont .s-v-chb label{
  font-size: 24px;
}

.s-w-reduced-layout .s-w-order-info .s-w-title{
  font-size: 25px;
  font-weight:600;
}
.s-w-reduced-layout .s-w-item-info{
  font-size: 25px;
}
.s-w-reduced-layout .s-w-payment-right .s-w-payment-total .s-w-total-line{
  font-size: 25px;
  padding: 5px 0px;
}
.s-w-cont.s-w-reduced-layout{
  padding: 0 !important;
  padding-bottom: 70px !important;
}
.s-w-reduced-layout .s-w-time-for-choose{
  margin-left: 10px;
  clear:both;
}
.modal.selfservice-credit-card-payment-running > div.warning-panel.modal-widget {
	display: flex;
	flex-direction: column;
}
.modal .modal-widget .modal-widget-buttons {
	display: flex;
	justify-content: center;
}
.modal-widget-buttons .gwt-SubmitButton:nth-child(2) {
    padding: 6px 25px 8px 25px;
    font-size: 22px;
    opacity: 0.8;
}

.s-w-reduced-layout div.warning-panel .warning-button {
	width: 15vw;
	position: fixed;
	font-weight: 500;
	line-height: 1.2;
	bottom: 1rem;
	height: 48px;
	align-self: center;
}

.modal.s-w-reduced-layout {
	width: 511px !important;
	height:311px;
	text-align:center;
	padding:0 !important;
	padding-top:20px !important;
	padding-left:20px !important;
	font-size:1.5rem;
}


.s-w-reduced-layout .modal-widget{
	padding:20px;
}

.s-w-reduced-layout  .selfservice-credit-card-icon{
	color:#000000 !important;
}

/* Reduced Layout for SelfService terminals CALENDAR START */
.s-w-reduced-layout .datePickerDays td.datePickerDay {
	background-color: transparent;
}
.s-w-reduced-layout .datePickerDays td.datePickerDay .status-container {
	display: none;
}
.s-w-reduced-layout .datePickerDays td.datePickerDay.datePickerDayIsDisabled {
	color: gray;
	text-decoration-line: line-through;
}
.s-w-reduced-layout .datePickerDays td {
	font-weight: 600;
	font-size: 2.0em;
    width: 1.4em;
    height: 1.2em;
}
.s-w-reduced-layout .datePickerMonthSelector td {
	font-weight: 600;
	font-size: 2.0em;
}
.s-w-reduced-layout .datePickerMonthSelector i {
	font-weight: 400;
	font-size: 1.4em;
}
.s-w-reduced-layout .datePickerDays td.datePickerDay .content {
	display: flex;
	flex-direction: column;
}
.s-w-reduced-layout .datePickerDays td.datePickerDay .content .day {
    margin: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 1.4em;
    height: 1.2em;
}
.s-w-reduced-layout .datePickerDays td.datePickerDay.datePickerDayIsDisabled .content .day {
	opacity: 50%;
}
.s-w-reduced-layout .datePickerDays td.datePickerDay .content .amount {
	margin: auto;
    height: 0.2em;
	padding-top: 5px;
	font-weight: 500;
	font-size: 20px;
}

.s-w-reduced-layout .s-w-legend .yellow {
	color: #FFDC00;
}

.s-w-reduced-layout .s-w-legend .icon {
	margin: auto 10px auto 20px;
	height: 6px;
	width: 6px;
	border-radius: 50%;
}

/* Grayout style for no-available date (red) */
.s-w-reduced-layout .datePickerDay.red {
	color: gray;
	text-decoration-line: line-through;
}
.s-w-reduced-layout .datePickerDay.red .amount {
	display: none;
}
.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .datePickerDays{
    border-spacing: 54px 50px !important;
    opacity: 1;
    filter: alpha(opacity = 100) !important;
}
/* Reduced Layout for SelfService terminals CALENDAR END */
/* Reduced Layout for SelfService terminals TICKET START */
.s-w-reduced-layout .s-w-int-control div {
	width: 50px;
	height: 50px;
}
.s-w-reduced-layout .s-w-int-control .s-w-int-control-minus:before, .s-w-reduced-layout .s-w-int-control .s-w-int-control-plus:after {
	width: 50px;
    height: 50px;
    line-height: 43px;
    font-size: 45px;
}
.s-w-reduced-layout .s-w-int-control .s-w-int-control-minus, .s-w-reduced-layout .s-w-int-control .s-w-int-control-plus {
	border-radius: 40px;
    box-shadow: 0 2px 5px #050505!important;
}
.s-w-reduced-layout .s-w-tickets-overall {
	display: none;
}
/* Reduced Layout for SelfService terminals TICKET END   */
/* Back and Book button Start */
.s-w-reduced-layout .back-button-left{
    position:unset;
}
.s-w-reduced-layout .next-button-right{
    position: relative;
    right: 0px;
    top: 0;
    bottom: 90vh;
}

.s-w-reduced-layout .back-button-left a.s-w-big-blue-btn {
    width: 100px;
    background-color: #212121!important;
    opacity:0.9;
    height:24px;
    justify-content:start;
    margin:12px;
    border:0px!important;
    margin-left: 0px;
    border-radius:0;
}
.s-w-reduced-layout .cart-icon{
    padding: 5px;
    display: flex;
    border-radius: 50%;
    border: 1px solid;
    margin-right: 10px;
    justify-content: center;
    align-items: center;
    height: 50px;
    width: 50px;
    color: #f9f9f9;
    border: none;
    background-color: #af0909!important;
}
.s-w-reduced-layout .cart-icon svg{
   color:white;
   height: 40px;
   width: 40px;

}
.s-w-reduced-layout .cs-main-cta-home .cart-icon {
    height: 50px;
    width: 50px;
}
.s-w-reduced-layout .cs-main-cta-home .cart-icon svg {
    height: 35px;
    width: 35px;
}
.s-w-reduced-layout .back-icon svg{
    height: 42px;
    width: 42px;
    margin-right: 20px;
    margin-top: 2px;
 }
 .s-w-reduced-layout .back-icon {
    display: flex;
 }
.s-w-reduced-layout .next-button-right a.s-w-big-blue-btn {
     width: fit-content!important;
     height: auto !important;
     justify-content: start;
     margin:12px;
     border:0px;
     line-height: 20px;
     align-items: center;
     padding-right:10px;
     margin-right:0px;
     border-radius: 50px 0px 0px 50px!important;
}
.s-w-reduced-layout .back-button-left a.s-w-big-blue-btn.s-w-window-next {
    font-size: 2rem !important;
}
.s-w-reduced-layout .top-div-box .s-w-submit-link-container {
    margin: 12px;
    margin-right: 0px;
    position: absolute;
    margin-right: 0px;
    right: 0;
}


.s-w-reduced-layout .top-div-box{
    display: flex;
    justify-content: space-between;
    padding: 0px 0px;
    margin-bottom: 20px;
}
.s-w-reduced-layout .top-div-box a.s-w-order.s-w-dis-btn {
    width: fit-content;
    display: flex;
    align-items: center;
    height: auto;
    padding: 5px;
    border-radius: 50px 0px 0px 50px!important;
}

.s-w-reduced-layout .top-div-box .shop-widget a div{
    display: flex!important;
    align-items: center!important;
    padding: 0!important;
}

.s-w-reduced-layout .s-w-rgt-btn {
    background-color: transparent;
}
.s-w-reduced-layout .top-div-box .s-w-black{
    background-color: transparent;
}

.s-w-reduced-layout .top-div-box .s-w-rgt-link-reduced{
    color: white!important;
    border: 0px!important;
    border-radius: 0;
    display: flex;
    align-items: center;
    font-size: 2rem;
    font-weight: 600 !important;
    width: 100px;
    opacity:0.9;
    height:24px;
    justify-content:start;
    margin:25px;
    margin-left: 0px;
    padding: 10px 5px;
}
.s-w-reduced-layout .top-div-box a.s-w-order.s-w-dis-btn div {
    display: flex;
    align-items: center;
    padding-right: 10px;
}

.s-w-reduced-layout .shop-widget a.s-w-order div{
    display: flex;
    align-items: center;
    padding: 0 25px 0 0px;
}

.s-w-reduced-layout .top-div-box .s-w-submit-link-container a.s-w-order div {
    padding: 0 10px 0 0px !important;
}
@media only screen and (max-width: 767px) {
    .s-w-reduced-layout .s-w-container .s-w-big-blue-btn {
        position: relative !important;
    }
}
.s-w-reduced-layout .cs-main-cta-home {
    padding: 11px 0px !important;
}
.s-w-reduced-layout .top-div-box .s-w-submit-link-container a.s-w-order {
    border-radius: 50px 0px 0px 50px!important;
    height: auto;
    padding: 5px 7px;
    padding-right: 10px;
    cursor: pointer;
    font-size: 2rem!important;
}
.s-w-reduced-layout .top-div-box .s-w-submit-link-container a.s-w-order > div {
    display:flex;
    align-items:center;
    padding-right:0px !important;
}

.top-div-box .s-w-order .material-icons{
    height: 35px;
    width: 35px;
    display: flex;
    align-items: center;
    background: #af0909;
    border-radius: 50%;
    margin-left: 5px;
    margin-right: 10px;
    justify-content: center;
    font-size: 24px;
    color: white;
    border-width: 3px !important;

}
/* Reduced Layout for SelfService terminals TICKET END   */
.s-w-reduced-layout .s-w-time-select:before {
     content: none;
     position: absolute;
     left: 50%;
     top: -9px;
     height: 9px;
     background-color: #ccc;
     width: 1px;
 }
.s-w-reduced-layout .time-choose-box .s-w-legend {
    padding-top:30px;
    width: 100%;
    font-size: 20px;
    padding-left: 15px;
}
.s-w-reduced-layout .s-w-time-for-choose .s-w-time-option .s-w-time-select .status-container {
    width: 80%;
    display: flex;
    text-align: right;
    flex-direction: column;
    margin-top: 25px;
    margin-bottom: -7px;
    margin-left: 6px;
}
.s-w-reduced-layout .s-w-time-for-choose .s-w-time-option .s-w-time-select .status-container.green .status {
    background-color: #2ECC40;
    border-color: #2ECC40;
}
.s-w-reduced-layout .s-w-time-for-choose .s-w-time-option .s-w-time-select .time {
    line-height: 5px;
    font-size: 30px;
    margin-bottom: 5px;
}
.s-w-reduced-layout .fade-out-time-slot{
    color: gray;
    opacity: 0.6;
    pointer-events: none;
}
/*custom-css for datepicker start*/
.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .datePickerDay div {
	display: block;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-direction: row !important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .content {
	display: flex !important;
	flex-direction: column !important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .s-w-date-month .datePickerDays td {
	text-align: center !important;
	width: 60px !important;
	padding: 5px !important;
	border-radius: 20px !important;
	font-size: 16px;
	vertical-align: middle;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .content .status-container {
    order: 2 !important;
    margin-left: 5px !important;
    display: flex !important;
    text-align: right !important;
    flex-direction: row !important;
    margin-top: 1px !important;
    width: 20px;
    justify-content: start!important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .datePickerDay div {
	display: block;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-direction: row !important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .s-w-date-month .datePickerDays td {
	text-align: center !important;
	width: 60px !important;
	padding: 5px !important;
	border-radius: 20px !important;
	font-size: 16px !important;
	vertical-align: middle !important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .content .day {
	line-height: 18px;
	text-decoration-line: none !important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .datePickerDay div {
	display: block;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-direction: row !important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .s-w-date-month .datePickerMonth {
	text-align: center !important;
	font-weight: 600;
	text-transform: capitalize;
	font-size: 18px;
	line-height: 50px !important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .datePickerDays td.datePickerDayIsDisabled {
	border-radius: 50px;
    text-decoration-line: none;
    cursor: pointer;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .datePickerDays td.datePickerWeekdayLabel {
	font-weight: 600 !important;
	filter: alpha(opacity = 50) !important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .datePickerDays td.datePickerDayIsFiller.datePickerDayIsDisabled {
	height: 1px;
    opacity: 0;
    filter: alpha(opacity = 100) !important;
    padding: 0!important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .datePickerDays td.datePickerDayIsFiller div.content {
	opacity: 0;
	height: 1px;
    padding: 0!important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .s-w-date-month table {
	width: 85% !important;
	margin: 0 auto !important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .datePickerDays {
	opacity: 1;
	filter: alpha(opacity = 100) !important;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker td.datePickerDay {
    opacity: 1;
    filter: alpha(opacity = 100) !important;
    padding: 15px 9px !important;
    border-radius: 50px;
    text-align: center;
    cursor: pointer;
    box-shadow: 0 2px 0px #080808 ;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .content .amount {
	font-size: 9px;
    margin-bottom: -99px !important;
    position: absolute;
}

.s-w-reduced-layout .custom-datepicker .avail-box {
	display: flex;
	padding: 0px 45px 30px 55px;
}

.s-w-reduced-layout .custom-datepicker .avail-box .high-dot {
	height: 5px;
	display: block;
	width: 5px;
	margin-right: 10px;
	border-radius: 50%;
	background-color: green;
}

.s-w-reduced-layout .custom-datepicker .avail-box .low-dot {
	height: 5px;
	display: block;
	width: 5px;
	margin-right: 10px;
	border-radius: 50%;
	background-color: #ffa500;
}

.s-w-reduced-layout .custom-datepicker .avail-box .sold-dot {
	height: 5px;
	display: block;
	width: 5px;
	margin-right: 10px;
	border-radius: 50%;
	background-color: red;
}

.s-w-reduced-layout .custom-datepicker .avail-box .label-box {
	display: flex;
	align-items: center;
	margin: 0px 15px;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .s-w-legend {
	align-items: center;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker  .gwt-Label {
	display: block !important;
}

.s-w-reduced-layout .custom-datepicker .last-label {
	display: flex;
	align-items: center;
	font-size: 20px;
	padding: 70px 20px 20px 70px;
}
.s-w-reduced-layout .custom-datepicker-box .custom-datepicker .datePickerMonthSelector {
    width:50%;
    margin:0 auto;
}

.s-w-reduced-layout .custom-datepicker-box .custom-datepicker  .s-w-reduced-layout .s-w-legend .icon {
	height: 6px;
	width: 6px;
	border-radius: 50%;
	display: block !important;
}

.s-w-reduced-layout .s-w-reduced-layout .custom-datepicker-box .s-w-legend .icon {
	height: 8px;
	width: 8px;
	border-radius: 50%;
}

.s-w-reduced-layout .s-w-reduced-layout .custom-datepicker-box .s-w-legend .icon {
	display: block !important;
}

.s-w-reduced-layout .custom-datepicker-box .datePickerDays td.datePickerWeekendLabel, .datePickerDays td.datePickerWeekdayLabel {
	opacity: 0.8;
	box-shadow: none;
	padding-top: 0;
    padding-bottom: 0;
}

.s-w-reduced-layout .custom-datepicker .datePickerMonthSelector {
	border-spacing: 23px 0px !important;
}
/*custom-css for datepicker end*/

.s-w-reduced-layout .tickets-custom-box.s-w-time-tickets .s-w-tbl-frst{
    border-radius: 50px 0px 0px 50px;
}

.s-w-reduced-layout .tickets-custom-box.s-w-time-tickets .s-w-tbl-frst .s-w-passcat-name .gwt-HTML{
    display: flex;
    align-items: center;
}

.s-w-reduced-layout .tickets-custom-box.s-w-time-tickets .s-w-tbl-frst .s-w-passcat-name .gwt-HTML .user-svg{
    display: block;
    margin-top:3px;
    margin-right:25px;
}

.s-w-reduced-layout .tickets-custom-box.s-w-time-tickets .s-w-tbl-qty{
    padding-right: 20px;
    border-radius: 0px 50px 50px 0px;
}

.s-w-reduced-layout .tickets-custom-box.s-w-time-tickets .s-w-int-control .s-w-int-control-minus::before{
    border-radius:50%;
}

.s-w-reduced-layout .s-w-int-control .s-w-int-control-minus.disabled {
    box-shadow: none !important;
}
.s-w-reduced-layout .tickets-custom-box.s-w-time-tickets .s-w-int-control .s-w-int-control-plus::after{
    border-radius:50%;
}

.s-w-reduced-layout .tickets-custom-box table{
    border-spacing:0px 20px!important;
    padding:0px 25px;
}

.s-w-reduced-layout .buttons {
    padding: 1px;
    display: flex;
}

.s-w-reduced-layout .buttons .s-w-big-blue-btn s-w-window-next s-w-dis-btn{
    border-radius: 40px;
    border: none;
    color: #ebe4e4;
    width: 200px;
    height: 40px;
}

.s-w-reduced-layout .top-btn-table{
    flex-wrap:wrap;
    padding: 20px 0px 15px 25px;
}

.s-w-reduced-layout .s-w-white-blocks.s-w-ticket-plans.top-btn-table .s-w-block{
    border: 0px!important;
    border-radius: 40px!important;
    margin-bottom:10px;
    min-width:145px;
    box-shadow:0 2px 0px #080808;
}


.s-w-reduced-layout .tickets-custom-box.s-w-time-tickets .s-w-int-control .s-w-int-control-minus:before{
   font-weight: 400;
   font-family: Georgia !important;
   -webkit-font-smoothing: antialiased;
   font-size: 53px!important;
   line-height: 42px;
}

.s-w-reduced-layout .s-w-int-control .reduced-plus-control:after{
   content: "+";
   font-weight: 400;
   font-family: Georgia !important;
   -webkit-font-smoothing: antialiased;
   font-size: 50px !important;
}

.s-w-reduced-layout .s-w-sel-date{
     float:none;
     text-align:left;
     padding: 0 0 1rem 0;
}

.s-w-reduced-layout .calendar-btns{
    padding-top: 30px;
    display: flex;
    padding-left:10px;
    margin-bottom:10px;
    align-items:center;
}

.s-w-reduced-layout .s-w-today-date-lnk, .s-w-reduced-layout .s-w-change-date-lnk{
    padding: 6px 20px;
    border-radius: 40px;
    box-shadow: 0px 2px 0px 0px rgb(0 0 0);
    margin-bottom: 10px;
    margin-right:10px;
    min-width: 115px;
    min-height: 15px;
    text-align: center;
    font-size: 32px;
}

.s-w-reduced-layout .calendar-btns a.s-w-change-date-lnk {
    margin-top:0px !important;
}

.s-w-reduced-layout .calendar-btns .s-w-change-date-lnk div {
    display:flex;
    align-items:center;
    padding: 0px 25px;
}

.s-w-reduced-layout .calendar-btns .s-w-change-date-lnk div .calendar-icon{
    margin-right: 15px;
    font-size: 48px;
    line-height:13px;
}
/* Reduced Layout for SelfService CHECKOUT Start*/
.s-w-reduced-layout .check-out-box {
	display: block;
	border-radius: 25px;
	padding-bottom: 15px;
	margin: 40px 50px !important;
}
.s-w-reduced-layout .check-out-box  .s-w-payment-left .s-w-content {
	padding: 0px;
}
.s-w-reduced-layout .s-w-payment .check-out-box  .s-w-payment-left {
	padding-bottom: 0px;
	background-color: transparent !important;
	padding: 0px 20px;
}
.s-w-reduced-layout .check-out-box .s-w-payment-right .s-w-content {
	padding: 0px;
}
.s-w-reduced-layout .s-w-payment .check-out-box .s-w-payment-right {
	background-color: transparent !important;
	padding: 20px 20px;
	padding-top: 0px;
	margin-top: 20px;
	border-top: 1px solid #afafaf;
}
.s-w-reduced-layout .s-w-payment .check-out-box .s-w-payment-right .s-w-payment-total
	{
	background-color: transparent !important;
}
.s-w-reduced-layout .s-w-payment .check-out-box .s-w-summary-item.highlight
	{
	background-color: transparent !important;
}
.s-w-reduced-layout .check-out-box .s-w-check-cont .s-v-chb label {
	font-size: 24px;
}
.s-w-reduced-layout .check-out-box input[type=checkbox]+label:before {
	border: 1px solid #dbdbdb;
}
.s-w-reduced-layout .check-out-box .s-w-order-info .s-w-title {
	opacity: 0.8;
	display: flex;
	align-items: center;
	padding-bottom: 5px
}
.s-w-reduced-layout .check-out-box .s-w-order-info .s-w-item-info {
	font-size: 25px;
	color: #8a8a8a;
}
.s-w-reduced-layout .check-out-box .s-w-summary-item {
	border: 0;
	padding-top: 0px;
	margin-bottom: 10px;
}
.s-w-reduced-layout .check-out-box .s-w-payment-total.s-w-big-right {
	padding: 0;
	margin: 0;
	border: 0;
}
.s-w-reduced-layout .check-out-box .s-w-payment-total.s-w-big-right .s-w-lft-item {
	font-size: 28px;
}
.s-w-reduced-layout .check-out-box .s-w-payment-total.s-w-big-right .s-w-summary-item .s-w-rgt-prc
	{
	font-size: 25px;
	opacity: 0.8;
	flex-grow: inherit;
	margin-left: 10px;
	width: fit-content;
}

.s-w-reduced-layout .check-out-box .s-w-payment-total.s-w-big-right .s-w-summary-item .s-w-event-value
	{
	flex-grow: 1;
}

.s-w-reduced-layout .s-w-payment-right .s-w-payment-total .s-w-total-line .s-w-summary-item.highlight .s-w-lft-item
	{
	font-size: 20px;
	display: flex;
	align-items: center;
}
.s-w-reduced-layout .s-w-payment-right .s-w-payment-total .s-w-total-line .s-w-summary-item .s-w-lft-item
	{
	font-size: 22px;
}
.s-w-reduced-layout .s-w-payment-right .s-w-total-line .s-w-rgt-prc {
	font-size: 22px !important;
}
.s-w-reduced-layout .check-out-box .s-w-payment-total.s-w-big-right .s-w-summary-item .s-w-summary-item
	{
	width: fit-content;
	display: flex;
	align-items: center;
}
.s-w-reduced-layout .check-out-box .s-w-payment-total.s-w-big-right .s-w-summary-item .s-w-summary-item .s-w-rgt-prc {
	word-break: keep-all;
	white-space: nowrap;
}
.s-w-reduced-layout .check-out-box .s-w-order-info {
	padding-top: 10px;
}
.s-w-reduced-layout .check-out-box .s-w-total-line .material-icons {
	margin-right: 10px;
}
.s-w-reduced-layout .check-out-box .lable-box {
	display: flex;
	justify-content: space-between;
}
.s-w-reduced-layout .s-w-summary-item .s-w-lft-item .material-icons {
	opacity: 0.8;
	font-size:28px;
}
.s-w-reduced-layout .s-w-summary-item .s-w-lft-item .s-w-lft-item {
	opacity: 0.8;
}
.s-w-reduced-layout .event-date {
	display: flex !important;
	align-items: center;
}
.s-w-reduced-layout .event-date .material-icons {
	margin-right: 10px;
}
.s-w-reduced-layout .lable-box .material-icons {
	height: 25px;
	width: 25px;
	background: #fefefe;
	border-radius: 50%;
	padding: 5px;
	color: #ee0505;
	margin-right: 8px;
}
.s-w-reduced-layout .check-out-box .s-w-total .s-w-lft-item.total-text {
    font-size: 30px!important;
}
.s-w-reduced-layout .check-out-box .s-w-total .s-w-rgt-prc.total-text {
    font-size: 30px!important;
}
.s-w-reduced-layout .s-w-total-line .s-w-summary-item .s-w-lft-item.sub-text {
    font-size: 28px!important;
}
.s-w-reduced-layout .s-w-total-line .s-w-summary-item .s-w-rgt-prc.sub-text {
    font-size: 28px!important;
}
.s-w-reduced-layout .s-w-payment-right .s-w-rgt-link {
    display:none;
}
.s-w-reduced-layout .s-w-payment-right .s-w-prom-code {
    margin:20px 0px 10px 0px;
}
.s-w-reduced-layout .s-w-payment-right .s-w-check-cont {
    padding-left: 0px;
}
.s-w-reduced-layout .event-date svg {
    width: 25px;
    height:25px;
    margin-right:20px;
}
.s-w-reduced-layout .s-w-summary-item svg {
    width: 25px;
    height:25px;
    margin-right:20px;
}
.s-w-reduced-layout .check-out-box .s-w-check-cont .icon-triangle {
	border:1px solid;
}
.s-w-reduced-layout .check-out-box .s-w-check-cont .icon-triangle:after {
	border-left: 5px solid;
}
/* Reduced Layout for SelfService CHECKOUT End*/
.s-w-reduced-layout .icon-msg{
    font-size: 35px;
    text-align: center;
    display: block;
    padding: 55px 0px 15px 0px;
}

.s-w-cont.s-w-reduced-layout.s-w-download-page.hide-pdfDownload .s-w-container{
    padding: 0px 206px;
    text-align:center;
}

.s-w-reduced-layout .exit-btn {
    height: auto;
    padding: 6px 25px;
    border-radius: 50px;
    border: 0;
    box-shadow: 0px 2px 0px 0px rgb(0 0 0);
    font-size: 20px;
    margin: 0 auto;
    margin-top: 25px;
    display: block;
    width: fit-content;
}

/* Reduced SSR Layout Payment process message Start */
.modal.s-w-reduced-layout.reduced-selfservice-credit-card-payment-running.show {
    background-color: transparent;
    padding: 0;
    box-shadow:none;
}
.modal.s-w-reduced-layout.reduced-selfservice-credit-card-payment-running .modal-widget{
    overflow: hidden;
}
.modal.s-w-reduced-layout.reduced-selfservice-credit-card-payment-running .gwt-HTML {
    color:#ffff;
}
.modal.s-w-reduced-layout.reduced-selfservice-credit-card-payment-running .gwt-HTML .cc-text {
    display:block;
    font-family: sans-serif;
    font-size: 25px;
    margin-top: 15px;
    opacity: 0.8;
}
/* Reduced SSR Layout Payment process message Start */
.s-w-reduced-layout .s-w-home-page .s-w-lft-col{
    padding: 0;
    height: auto;
    width: 25%;
}

.s-w-reduced-layout .s-w-home-page .s-w-rgt-col {
    padding: 0px 0px 10px 0px;
    width: 75%;
    height: 85px;
}
.s-w-reduced-layout .s-w-offer-container .s-w-home-page .s-w-lft-col{
    padding: 0;
    width: 100%;
    height: 262px;
    background: #e5e9eb;
}
.s-w-reduced-layout .s-w-home-page div.s-w-par {
     line-height: 22px;
     padding: 10px 20px;
     font-size: 20px;
     white-space: normal;
     word-break: break-word;
     font-family: sans-serif
}
.s-w-reduced-layout .s-w-home-page .cs-main-cta-home {
	position: absolute;
    right: 0;
    left: auto;
    padding: 10px 15px 10px 15px !important;
    bottom: -12px;
    width: fit-content!important;
    height: auto !important;
    justify-content: start;
    margin: 12px;
    border: 0px;
    margin-right: 0px;
    border-radius: 50px 0px 10px 50px!important;
}
.s-w-reduced-layout .s-w-home-page .cs-main-cta-home .cart-icon {
	margin-right:0px !important;
}
.s-w-reduced-layout .s-w-home-page .cs-main-cta-home .cart-text {
	margin-left:5px !important;
	font-size:2rem;
}
.s-w-reduced-layout .offer-amount{
    padding: 10px 20px;
    display: flex;
    position: absolute;
    bottom: 15px
}
.s-w-reduced-layout .offer-price{
    font-size: 28px;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0.32px;
}

.s-w-reduced-layout .offer-price-label {
    font-size: 16px;
    line-height: 20px;
    margin-right: 5px;
    margin-top:4px;
    font-family: sans-serif;
}
.s-w-reduced-layout .s-w-bestseller {
    position: absolute;
    top: 30px;
    font-size:1.5rem;
    font-weight:700;
    line-height:24px;
    letter-spacing:0.32px;
    border-radius:0px 5px 5px 0px;
    padding:5px 10px
}
/* Reduced Layout for SSR Failed Popup End*/
.cs-modal-glasspanel {
	position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 50;
    background: rgba(0, 0, 0, 0.6);
}
.cs-modal.show {
	top: 50%;
    border-radius: 25px;
}
.cs-modal {
	display: block;
    width: 100%;
    max-width: 100%;
    position: fixed;
    z-index: 100;
    left: 50%;
    top: 0%;
    transform: translate(-50%, -50%);
    transition: 0.5s ease !important;
    background: transparent;
    border-radius: 25px;
}
.cs-modal-widget {
	position: absolute;
    top: 50%;
    left: 50%;
    text-align:center;
}
.cs-modal-widget-buttons {
	display: flex;
    justify-content: center;
}
.cs-modal .gwt-SubmitButton{
    width: auto;
    height: auto;
    padding: 8px 30px;
    border-radius: 50px;
    border: 0;
    box-shadow:0px 1px 0px 0px rgb(0 0 0);
    font-size: 22px;
    margin:0rem 1rem;
    font-family: sans-serif;
    font-weight: 500;
    color: white;
 }
.cs-modal-widget-buttons .gwt-SubmitButton:nth-child(2) {
    padding: 6px 25px;
}
.cs-modal-widget .failed-icon {
    font-size: 27px;
    text-align: center;
    display: block;
    color:#fff;
    margin:1rem 0rem;
    padding: 5px 10px 5px 10px;
}
.cs-modal-widget .failed-msg {
    font-size: 27px;
    text-align: center;
    display: block;
    color:#fff;
    margin:1rem 0rem;
    padding: 10px 10px 10px 10px;
    line-height: 2rem;
}
/* Reduced Layout for SSR Failed Popup End*/
.s-w-reduced-layout .s-w-offer-container{
    display: flex;
    flex-wrap: wrap;
}
.s-w-reduced-layout .s-w-offer-container.s-w-container-last-1 .s-w-two-cols.s-w-home-page
{
	width: 96% !important;
}
.s-w-reduced-layout .s-w-offer-container.s-w-container-last-2 .s-w-two-cols.s-w-home-page
{
	width: 46.8888% !important;
}
.s-w-reduced-layout .s-w-offer-container.s-w-container-last-3 .s-w-two-cols.s-w-home-page
{
	width: 30% !important;
}

.s-w-reduced-layout .s-w-offer-container .s-w-two-cols.s-w-home-page:nth-child(1):nth-last-child(1){
    width: 96.9%;
}

.s-w-reduced-layout .s-w-offer-container .s-w-two-cols.s-w-home-page:nth-child(1):nth-last-child(2),
.s-w-reduced-layout .s-w-offer-container .s-w-two-cols.s-w-home-page:nth-child(2):nth-last-child(1) {
    width: 46.9555%;
}

.s-w-reduced-layout .s-w-offer-container .s-w-two-cols.s-w-home-page:nth-child(1):nth-last-child(3),
.s-w-reduced-layout .s-w-offer-container .s-w-two-cols.s-w-home-page:nth-child(2):nth-last-child(2),
.s-w-reduced-layout .s-w-offer-container .s-w-two-cols.s-w-home-page:nth-child(3):nth-last-child(1){
    width: 30.4%;
}

.s-w-reduced-layout .s-w-offer-container .s-w-image:last-child{
    margin-right:0px!important;
}

.s-w-reduced-layout .s-w-offer-container .s-w-image{
    display: flex;
    flex-direction: column;
    border: 0px solid;
    border-radius: 12px;
    margin: 14px 16px;
    position: relative;
    overflow: hidden;
}
.s-w-reduced-layout .s-w-offer-container .s-w-home-page div.s-w-par {
     display: none;
}
.s-w-reduced-layout .s-w-offer-container .s-w-lft-col img {
    height: auto;
    max-width: none;
    object-fit: fill;
}
.s-w-reduced-layout img[src="img/dummy_route.png"]{
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 450px;
}
.s-w-reduced-layout .s-w-offer-container .s-w-tour-title:first-child {
    padding-top: 0px;
    position: relative;
    top: 17px;
    min-width: 209px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
span.best-seller-title-three {
    width: 49% !important;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    text-overflow: ellipsis;
}

span.best-seller-title-two {
    width: 75% !important;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    text-overflow: ellipsis;
}
.s-w-reduced-layout .s-w-offer-container .s-w-tour-title {
    font-size: 1.55rem;
    font-weight: 700 !important;
    line-height: 29px;
    letter-spacing: 0.32px;
    opacity: 1;
    margin-top: 0.25rem;
}
.s-w-reduced-layout .s-w-offer-container .offer-price {
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 0;
    letter-spacing: 0.32px;
    margin-bottom: 7px;
}
.s-w-reduced-layout .s-w-offer-container .offer-amount{
    bottom: -25px;
    padding: 0px 20px 5px;
    margin-bottom: 0.5rem;
    align-items: center;
    display: flex;
    font-size: 12px;
    left: auto;
    position: relative;
}
.s-w-reduced-layout .s-w-offer-container .offer-price-label{
    padding-left: 5px;
    font-size: 15px;
    line-height: 14px;
    position: relative;
    right: 5px;
    top: -3px;
}
.s-w-reduced-layout .s-w-offer-container .s-w-home-page .cs-main-cta-home {
    position: absolute;
    right: 0;
    left: auto;
    padding: 10px 15px 10px 15px !important;
    bottom: -7px;
    width: fit-content!important;
    height: auto !important;
    justify-content: start;
    margin: 13px;
    border: 0px;
    margin-right: 0px;
    border-radius: 50px 0px 0px 50px!important;
}
.s-w-reduced-layout .s-w-offer-container .cart-icon {
    padding: 5px;
    display: flex;
    border-radius: 50%;
    border: 1px solid;
    margin-right: 5px;
    justify-content: center;
    align-items: center;
    height: 50px;
    width: 50px;
    color: #f9f9f9;
    border: none;
}

.s-w-reduced-layout .tickets-custom-box.s-w-time-tickets .s-w-tbl-frst .s-w-passcat {
    position: relative;
    display: flex;
    align-items: center;
}
.modal .modal-widget.info-panel {
    padding: 20px;
    border-radius:30px;
}
.info-panel .title{
   font-size: 28px;
   opacity: 0.8;
}
.info-panel .message{
   font-size: 18px;
   opacity: 0.8;
   font-family: sans-serif;
   margin: 15px 0px;
}
.info-panel .gwt-SubmitButton{
   width: auto;
   height: auto;
   padding: 6px 25px 8px 25px;
   border-radius: 50px;
   border: 0;
   box-shadow:0px 2px 0px 0px rgb(0 0 0);
   font-size: 18px;
   cursor: pointer;
   font-weight: 300;
}
.s-w-reduced-passcat .s-w-info-icon{
    display: block !important;
    width: 0;
    text-align: center;
    line-height: 20px;
    float: left;
    font-weight: 600;
    text-align: start;
    color: #f2f2f2;
}
.s-w-reduced-passcat .info-icon svg{
    height: 35px;
    width: 25px;
}
.info-panel .info-message{
    display: block;
    margin: 0 10px;
}
.s-w-upsell-cont .s-w-home-page .s-w-rgt-col {
    padding: 0;
}
.s-w-upsell-cont .s-w-par.s-w-desc-hidden{
    margin-bottom: 70px;
    margin-right: 15px;
    margin-left: 10px;
}
.s-w-upsell-cont .s-w-home-page .s-w-big-blue-btn{
    bottom: 2px;
    padding: 4px 15px;
    width: 36%;
    left: 52%;
    margin: 8px 10px;
    border-radius: 5px;
}
.s-w-upsell-cont div.s-w-par{
    padding:0px;
}
.s-w-reduced-layout .s-w-upsell-cont{
    display: none;
}
.s-w-container .s-w-upsell-cont .s-w-lft-col {
    height: auto;
    border-radius: 50px;
    padding: 10px;
    margin-top: 25px;
    margin-left: 0px;
}
.s-w-upsell-cont .upsell-teaser {
    position: relative;
    margin-left: 0px;
    margin-top: 5px;
    width: 100%;
}

.s-w-container .s-w-upsell-cont .s-w-par.s-w-desc-hidden {
    margin-top: 10px;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
}
.s-w-upsell-cont .plus {
   margin-right: 5px;
}

.s-w-upsell-cont .upCrossMessage {
    text-transform: none;
    font-size: 18px;
}
.s-w-upsell-cont .cross-up-btn svg path {
    stroke:#fff;
}
.s-w-payment-right #upsell {
    width: calc(60% - 60px);
}
#upsell .s-w-up-cross {
    display: flex;
    width: 100%;
    align-items: center;
    position: absolute;
    bottom: 5%;
    margin-left: 10px;
}
#upsell .s-w-upsell-action-add {
    width: auto;
    margin: 0;
    position: relative;
    left: auto;
    text-transform: capitalize;
    margin-left: 5px;
    min-height: 32px;
    padding: 0px 12px 2px 12px;
    right: -10px;
    bottom: 0px;
    font-size: 18px;
}
#upsell .s-w-int-control {
    display: flex;
    align-items: center;
}
#upsell .s-w-int-control .s-w-int-control-minus,
#upsell .s-w-int-control .s-w-int-control-plus {
    width:34px;
    height:34px;
}
#upsell .s-w-int-control .s-w-int-control-minus:before,
#upsell .s-w-int-control .s-w-int-control-plus:after {
    width:34px;
    line-height:34px;
}
#upsell .s-w-int-control .s-w-int-control-value {
    top:0px;
    font-size:20px;
    font-weight: 600;
}
#upsell .s-w-int-control #quantity-label {
    position: absolute;
    top: -25px;
    left: 9px;
}
@media only screen and (min-width: 768px) and (max-width: 1099px) {
    #upsell .s-w-up-cross {
        display: block;
        width: 100%;
        align-items: center;
        position: relative;
        right: 8%;
    }
    #upsell .s-w-upsell-action-add {
        right: 0px;
        bottom: 0px;
        top: 6px;
    }
    #upsell .s-w-int-control {
        display: flex;
        align-items: center;
        justify-content: space-around;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-lft-col{
        min-height: 125px;
        max-height: 125px;
        border-radius: 5px !important;
        padding: 0px !important;
        margin-top: 30px !important;
        margin-bottom: 10px !important;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-lft-col .container {
        min-height:125px;
    }
    #upsell .s-w-int-control #quantity-label {
        position: absolute;
        top: -25px;
        left: 35px;
    }
}
.s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-lft-col {
    margin-left: 10px;
    border-radius: 8px;
    margin-right: 10px;
    max-height: 100%;
    padding: 0px !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

.s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-lft-col .container {
    min-height:170px;
}
@media only screen and (max-width: 767px)  {
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .upsell-teaser {
        margin-top: -22px;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-lft-col {
        margin-top: 45px;
        margin-left: 0px !important;
        margin-right: 0px !important;
        margin-bottom: 5px;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-big-blue-btn {
        bottom: 0;
        padding: 0;
        width: 100%;
        left: 0;
        margin: 0px 0px;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont #upsell {
        width: calc(100% - 0px) !important;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-rgt-col .s-w-up-cross {
        position: relative !important;
        bottom: 0px !important;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-rgt-col .s-w-tour-title:first-child {
        padding-top: 0px;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-rgt-col .s-w-up-cross .upsell-plus-minus {
        width: 50%;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-rgt-col .s-w-up-cross .upsell-plus-minus .s-w-int-control {
        justify-content: space-around;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-rgt-col .s-w-up-cross .s-w-upsell-action-add {
        min-height: 60px !important;
        width: 50% !important;
        right: 10px !important;
    }
    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-lft-col {
        margin-left: 10px;
        border-radius: 8px;
        padding-left: 0px;
        padding-right: 0px;
        margin-right: 10px;
        padding-bottom:5px;
        min-height: 165px;
        max-height: 100%;
        border-radius: 0px !important;
        padding: 0px !important;
    }
    #upsell .s-w-int-control #quantity-label {
        position: absolute;
        top: -25px;
        left: 45px;
    }
}

.sr-only {
     position: absolute !important;
     width: 1px !important;
     height: 1px !important;
     margin: -1px !important;
     border: 0 !important;
     padding: 0 !important;
     overflow: hidden !important;
     clip: rect(0, 0, 0, 0) !important;
     clip-path: inset(50%) !important;
     white-space: nowrap !important;
}


#quantity-label{
    text-align: center;
    opacity: 0.75;
    font-size: 13px;
}
.s-w-error-message {
    color: red;
    font-size: 12px;
    margin-top: 4px;
    display: block;
}

.s-w-reduced-layout #quantity-label {
    display: none;
}

@media screen and (min-width: 1024px) and (max-width: 1920px) and (pointer: coarse) {
    .s-w-reduced-layout .s-w-int-control .s-w-int-control-plus:after {
        line-height: 54px;
    }

    .s-w-reduced-layout .s-w-int-control .s-w-int-control-minus:before {
        line-height: 52px !important;
    }
}

.s-w-reduced-layout .s-w-info-mandatory {
    font-size: 17px;
    font-weight: 600;
}

.s-w-reduced-layout .s-w-info-box-cont {
    font-size: 17px;
    font-weight: 600;
}

.s-w-reduced-layout input, .s-w-reduced-layout select, .s-w-reduced-layout textarea {
    border-radius: 10px;
}

.s-w-reduced-layout .gwt-Label {
    font-size: 22px;
    font-weight: 600;
}

.s-w-reduced-layout .s-w-payment-left .s-w-small-title {
    border-top: 1px solid #afafaf;
    margin: 0 -20px;
    padding-left: 20px;
}

.s-w-reduced-layout .s-w-prom-field i {
    top: 40px;
}

.s-w-reduced-layout .s-w-prom-field .s-w-blue-big-lnk {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    line-height: 45.5px;
    right: -4px;
    top: 29px;
}

.s-w-reduced-layout .s-w-two-cols.s-w-home-page .s-w-tour-title {
    justify-content: normal;
}

.s-w-reduced-layout .s-w-payment-right .s-w-tour-title {
    justify-content: normal;
}

/* Reduced Layout for SelfService terminals TICKET END   */

 /* General focus styles START */
:focus ,a:focus, button:focus, input:focus, textarea:focus {
     outline: 2px solid #4D90FE;
     outline-offset: 2px;
}

:focus ,li:focus {
     outline: 2px solid #4D90FE;
     outline-offset: -4px;
}
 /* General focus styles END */
.s-w-payment-right .s-w-content {
    position: relative;
}

.s-w-payment-right .s-w-content .s-w-prev-back {
    display:flex;
    position: absolute;
    align-items: center;
    justify-content: center;
    top: 0px;
    right: 10px;
}

.s-w-payment-right .s-w-content .s-w-prev-back a {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media only screen and (min-width: 768px) {
    .s-w-payment-right .s-w-content .s-w-prev-back {
        display:flex;
        position: absolute;
        align-items: center;
        justify-content: center;
        top: 25px;
        right: 4%;
    }
    .s-w-payment-right .s-w-content .s-w-prev-back a {
        width: 40px;
        height: 40px;
        background: #fff no-repeat 50% 50%;
        box-shadow: 0 1px 2px 0 #2b3b5d4d;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}
.upsell-teaser .teaser-name {
    font-weight: 700;
    font-size: 20px;
    text-align: center;
    margin-top: 15px;
    line-height: 1.2;
}

.s-w-payment-left .s-w-content h2 {
    font-weight: 600;
    padding-top: 20px;
    font-size: 17px;
}

.s-w-payment-right .s-w-tour-title {
    padding-top: 20px;
}

.pp-name {
    position: absolute;
    top: 10%;
    right: 50%;
    z-index: 10;
    background-color: #ffffff;
    border-radius: 2px;
    text-align: center;
    white-space: nowrap;
    width: fit-content;
    font-weight: 600;
    font-size: 16px;
    padding: 3px 12px;
}

.s-w-upsell-cont .s-w-two-cols.s-w-home-page {
    background-color: #fff !important;
    border: 1px solid #00588f;
}

.s-w-upsell-cont .s-w-tour-title {
    display: none;
}

.s-w-upsell-cont .container div {
    height: 100%;
}

.s-w-upsell-cont .s-w-img-description img {
    border-radius: 5px;
}

.s-w-upsell-cont .s-w-img-description img {
    line-height: 18px;
}

@media only screen and (max-width: 767px) {
    .s-w-upsell-cont .s-w-two-cols.s-w-home-page {
        margin-top: 20px;
        border-radius: 5px;
    }

    .s-w-container .s-w-payment-subcontainer .s-w-upsell-cont .s-w-lft-col {
        margin-top: 0px !important;
    }

    .s-w-upsell-cont .container div {
        height: auto;
        max-height: 100% !important;
    }

    .pp-name {
        top: 3%;
        right: 3%;
    }
}

.s-w-upsell-cont #quantity-label {
    display: none;
}

/* Google Consent Mode V2 CSS Start */
.cookie-popup {
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.3);
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    z-index: 9999 !important;
    overflow: auto !important;
    background: white;
    padding: 20px;
    border-radius: 5px;
    z-index: 10000;
    width: 490px;
    max-width: 90%;
    transform: translate(-50%, -50%);
}

.cookie-modal h2 {
    font-size: 18px;
    font-weight: bold;
}

.cookie-options {
    margin-top: 15px;
}

.cookie-options label {
    font-weight: 600;
}

.cookie-options p {
    margin: 0px 0 10px 31px;
    font-size: 15px;
    color: #666;
    line-height: 1;
}

.popup-buttons {
    margin-top: 20px;
    text-align: right;
}

.customize {
    border: none;
    font-size: 16px;
    color: #005693;
    cursor: pointer;
}

.accept-all {
    background-color: #005693;
    color: white;
    cursor: pointer;
}

.reject-all {
    background-color: white;
    color: #005693;
    font-size: 16px;
    cursor: pointer;
}

.save-preferences {
    background-color: white;
    color: #005693;
    font-size: 19px;
    cursor: pointer;
    border: none;
    border-radius: 5px;
}

.customize, .reject-all, .accept-all {
    padding: 10px 15px;
    border: none;
    cursor: pointer;
    border-radius: 5px;
    font-size: 19px;
    margin: 0px 5px;
}

.cookie-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 999;
    background: rgba(255, 255, 255, 0.5);
}

.cookie-overlay-active {
    overflow: hidden;
}

.cookie-overlay-active .cookie-overlay {
    display: block !important;
}

.popup-buttons {
    display: flex;
    justify-content: space-between;
}

.cookie-banner {
    position: fixed;
    bottom: 0;
    left: 50%;
    width: 100%;
    background: white;
    z-index: 9999;
    transform: translateX(-50%);
    padding-bottom: 10px;
    padding-left: 50px;
    display: flex;
    align-items: end;
}

.banner-container {
    width: 70%;
}

.banner-container h1{
    margin: 10px 0px;
}

.button-container {
    width: 30%;
    padding-right: 30px;
    display: flex;
    justify-content: flex-end;
}

@media only screen and (max-width: 767px) {
    .cookie-banner {
        display: block;
        padding: 10px;
        padding-left: 25px;
    }

    .banner-container {
        width: 95%;
        padding-left: 10px;
    }

    .button-container {
        width: 95%;
        justify-content: space-between;
        margin-top: 15px;
    }

    .cookie-popup {
        bottom: 0;
        top: auto !important;
        left: 0 !important;
        transform: translate(0%, 0%);
        width: 100vw !important;
        max-width: 100%;
        padding: 5px 11px;
    }

    .customize, .reject-all, .accept-all {
        font-size: 16px;
    }

    .save-preferences {
        font-size: 16px;
    }

    .cookie-options p {
        line-height: 1;
    }

    .popup-container {
        padding: 12px;
        padding-right: 20px;
    }

    .popup-buttons {
        margin-right: 10px;
    }
}

.popup-container input[type=checkbox] + label:before {
    margin-right: 15px;
    margin-top: 8px;
    color: black;
    position: relative;
    top: 8px;
    line-height: 1;
}

.no-scroll {
    overflow: hidden;
    height: 100vh;
}

.cookie-banner, .cookie-modal {
    opacity: 1 !important;
    pointer-events: auto;
}

.s-w-privacy-settings {
    white-space: nowrap;
    margin-left: 0px !important;
    padding-bottom: 20px;
    margin-top: 5px;
}

.s-w-payment-right .s-w-privacy-settings {
    margin-left: 20px !important;
}

.s-w-footer-link a,
.s-w-check-cont a {
    margin-left: 0;
    margin-right: 0;
}
.wallet-passbook-entry {
    margin-bottom: 16px;
}

.wallet-passbook-entry img {
    cursor: pointer;
    display: block;
}

.wallet-passbook-label {
    font-size: 0.9em;
    color: #333;
    margin-top: 6px;
}

.s-w-download-page .s-w-container {
    height: calc(100vh -13rem);
    overflow: auto;
}

.s-w-fee-note {
    font-size: 16px;
    font-weight: 500;
    padding-bottom: 6px;
}

.s-w-tickets-overall .s-w-total-with-fee-label {
    float: left;
    text-align: left;
}

.s-w-order-info .fee-note {
    padding: 10px;
}

.s-w-tickets-overall .s-w-total-with-fee {
    font-size: 1em;
    font-weight: 700;
}

.s-w-basket-container .total-with-fee {
    display: flex;
    justify-content: space-between;
    font-size: 1.5em;
    font-weight: 600;
}