
body {
	font-family:'Open Sans', 'sans-serif';
	color:#898989;
	}


             .message.bad {
            color: red;
        }

.hidden {
    left:-100000px;
    position:absolute;
    top:0;
	}

.transition {
	-webkit-transition:all .25s ease-in-out;
	-moz-transition:all 0.25s ease-in-out;
	transition:all .25s ease-in-out;
	}

/* STYLES */

h1,
h2,
h3 {
	color:#474747;
	text-align:center;
	}

h1 {
	font-size:42px;
	font-weight:800;
	line-height:52px;
	margin:0;
	}

h2 {
	font-size:26px;
	font-weight:300;
	line-height:42px;
	margin:24px 0 34px 0;
	}


        .UserDefinedForm #main {
            text-align:center;
        }

h2.blog {
	margin:0;
	}

         p {
            text-align:center;
        }

        form, form p {
            text-align:center;
        }

h3, .BigTitle label {
	border-top:1px #efefef solid;
	font-size:20px;
	font-weight:600;
	margin:0 0 34px 0;
	padding:34px 0 0 0;
	}

       #main form .BigTitle label.left {
	border-top:1px #efefef solid;
	font-size:20px !important;
	font-weight:600 !important;
        text-align:center;
        color: #474747;
	margin:0 0 34px 0;
	padding:34px 0 0 0 !important;
	}

        #main form ul {
            border: 0;
            padding:0;
            margin: 0;
        }

        #main form .optionset label {
            border: 0;
            margin: 0;
            display: inline-block;
        }

        #main form .optionset ul {
            text-align:center;
        }

         #main form .optionset input {
            width: auto;
            margin: 0;
        }

        #main form .checkbox {
            text-align:center;
        }

         #main form .checkbox label {
            text-align:center;
        }

        #main form .checkbox input {
            width: auto;
            margin: 0;
        }

        #main form .optionset ul li{
            text-align:center;
            min-width: 75px;
            display:inline-block;
        }

h4 {
	font-size:16px;
	font-weight:300;
	margin:0 0 7px 0;
	}

h4 strong {
	font-weight:600;
	}

img {
	border:0;
	}

img.imageFeature,
img.imageContent {
	display:block;
	height:auto;
	width:100%;
	}

img.imageContent {
	margin:0 0 34px 0;
	}

img.imageNewsletter {
	display:block;
	float:right;
	height:auto;
	margin:0 0 34px 34px;
	width:520px;
	}

p,
ul,
ol {
	line-height:30px;
	margin:0 0 34px 0;
	}

#main a:link,
#main a:visited {
	color:#e60003;
	text-decoration:none;
	}

#main a:hover {
	text-decoration:underline;
	}

#main strong {
	color:#474747;
	font-weight:600;
	}

#main ul,
#main ol {
	border-left:8px #e60003 solid;
	list-style:none;
	margin:0 32px 32px 32px;
	padding:0 42px;
	}

#main ul.inline,
#main ol.inline {
	border:0;
	margin:0;
	padding:0 0 24px 0;
	text-align:center;
}

#main ul.inline li,
#main ol.inline li {
	display:inline-block;
	padding:0 14px 4px 14px;
}

#main ul li {
	padding:16px 0;
	}

#main ul#menuServices {
	border-left:0;
	list-style:none;
	margin:0;
	padding:0;
	width:100%;
	}

#main ul#menuServices:after {
	content:"";
	clear:both;
	display:block;
	}

#main ul#menuServices li {
	float:left;
	margin:0;
	padding:0;
	width:50%;
	}

#main ul#menuServices li .ourServicesImage {
	position:relative;
	}

#main ul#menuServices li:nth-child(odd) .ourServicesImage {
	margin:0 14px 26px 0;
	}

#main ul#menuServices li:nth-child(even) .ourServicesImage {
	margin:0 0 26px 14px;
	}

#main ul#menuServices li .ourServicesImage img {
	border:0;
	display:block;
	height:auto;
	width:100%;
	}

#main ul#menuServices li .ourServicesImage .ourServicesContent {
	background:url(../images/introduction.png);
	background:rgba(0,0,0,0.46);
	bottom:0;
	color:#fff;
	display:block;
	font-weight:600;
	font-size:18px;
	left:0;
	margin:0;
	padding:24px;
	position:absolute;
	right:0;
	text-align:center;
	text-shadow:0 1px 2px rgba(0, 0, 0, 0.42);
	-moz-transition: all 0.24s ease-in;
	transition: all 0.24s ease-in;
	}

#main ul#menuServices li:hover .ourServicesImage .ourServicesContent {
	padding:24px 24px 34px 24px;
	}

#main ul.information,
#main ul.quoteOptions {
	border:0;
	font-size:0;
	margin:0 0 52px 0;
	padding:0;
	text-align:center;
	}

#main ul.information {
	margin:0 0 14px 0;
	}

#main ul.information li,
#main ul.quoteOptions li {
	display:inline-block;
	font-size:18px;
	padding:0;
	}

#main ul.information li {
	border-radius:50%;
	background:#e60003;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	color:#fff;
	display:inline-block;
	font-size:16px;
	height:164px;
	list-style:none;
	margin:0 14px 28px 14px;
	padding:0;
	width:164px;
	}

#main ul.information li a {
	color:#fff;
	display:block;
	height:164px;
	transform:translateY(0);
	-webkit-transition:all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
     -moz-transition:all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
      -ms-transition:all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
          transition:all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
}

#main ul.information li a:hover {
	transform:translateY(-4px);
}

#main ul.information li span {
	background-position:50% 41px;
	background-repeat:no-repeat;
	display:inline-block;
	padding:95px 0 0 0;
	width:100%;
	}

#main ul.information li span.date {
	background-image:url(../images/date.png);
	}

#main ul.information li span.time {
	background-image:url(../images/time.png);
	}

#main ul.information li span.people {
	background-image:url(../images/people.png);
	}

#main ul.information li span.details {
	background-image:url(../images/details.png);
	}

#main ul.information li span.special {
	background-image:url(../images/special.png);
	}

#main ul.information li span.school {
	background-image:url(../images/school.png);
	}

#main ul.information li span.wedding {
	background-image:url(../images/wedding.png);
	}

#main ul.information li span.conference {
	background-image:url(../images/conference.png);
	}

#main ul.information li span.other {
	background-image:url(../images/other.png);
	}

#main ul.quoteOptions li span,
#main ul.quoteOptions li a {
	border:1px #efefef solid;
	border-width:1px 1px 1px 0;
	color:#e60003;
	cursor:pointer;
	display:block;
	padding:20px 32px;
	}

#main ul.quoteOptions li a:hover {
	background:#e60003;
	color:#fff;
	text-decoration:none;
	}

#main ul.quoteOptions li span {
	color:#898989;
	cursor:auto;
	}

#main ul.quoteOptions li:first-child span,
#main ul.quoteOptions li:first-child a {
	border-left:1px #efefef solid;
	border-top-left-radius:0;
	border-top-right-radius:0;
	border-top-left-radius:6px;
	border-bottom-left-radius:6px;
	}

#main ul.quoteOptions li:last-child span,
#main ul.quoteOptions li:last-child a {
	border-bottom-right-radius:0;
	border-bottom-left-radius:0;
	border-top-right-radius:6px;
	border-bottom-right-radius:6px;
	}

#main ul.quoteOptions.timetable li {
	font-size:14px!important;
	text-align:left;
	}

#main ul.quoteOptions.timetable li strong {
	font-size:18px!important;
	}

#main ul.quoteOptions.timetable .width {
	display:inline-block;
	float:left;
	margin:0 16px 0 0;
	padding:0;
	width:123px;
	}

#main ul.quoteOptions.timetable .width:after {
	content:"";
	clear:both;
	display:block;
	}

#main ul.quoteOptions.timetable em {
	float:left;
	font-style:normal;
	}

#main ul.quoteOptions.timetable em.right {
	float:right;
	}

/* FORMS */

#main .required-message p,
#main form input.firstName_ {
    display:none;
	}

#main form {
    border:0;
    margin:0 auto;
	max-width:540px;
    padding:0;
	}

#main form fieldset {
    border:0;
    margin:0 0 30px;
    padding:0;
	}

#main form legend {
    display:none;
	}

#main form label {
    display:block;
    font-size:14px;
    padding:0 0 6px;
	}

#main form input,
#main form select,
#main form textarea {
    background:#fff;
    border:1px #c1c1c1 solid;
    border-radius:6px;
    -webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
    color:#0b0b0b;
    font-family:'Open Sans', sans-serif;
	font-size:16px;
    margin:0 0 30px;
    outline:0;
    padding:12px;
    width:100%;
	}

#main form input:focus,
#main form textarea:focus {
    background:#fff;
    box-shadow:0 0 8px rgba(0, 0, 0, .12);
	}

#main form select.date,
#main form select.time {
	width:auto;
	}

#main form .luggage table {
	text-align:center;
	margin:0 auto 15px auto;
	}

#main form .luggage table label {
	display:inline-block;
	padding:0 16px;
	}

#main form .luggage table input {
	border:0;
	margin:0;
	padding:0;
	}

#main form .luggage table input:focus,
#main form .acceptTerms input:focus {
	box-shadow:none;
	}

#main form .questionnaire table {
	border-spacing:0;
	margin:0 0 30px 0;
	padding:0;
	width:100%;
	}

#main form .questionnaire table table {
	border:1px #c1c1c1 solid;
	border-radius:6px;
	margin:0;
	padding:0;
	}

#main form .questionnaire table table td {
	border:1px #c1c1c1 solid;
	border-width:0 1px 0 0;
	margin:0;
	padding:0;
	vertical-align:top;
	}

#main form .questionnaire table table td:last-child {
	border:0;
	}

#main form .questionnaire table table label,
#main form .questionnaire table table input {
	border:0;
	cursor:pointer;
	text-align:center;
	}

#main form .questionnaire table table label {
	padding:16px 7px;
	}

#main form .questionnaire table table input {
	display:block;
	margin:0 auto;
	padding:0 0 6px 0;
	width:auto;
	}

#main form .questionnaire table table input:focus {
	box-shadow:none;
	}

#main form .acceptTerms {
	text-align:center;
	margin:0 0 30px 0;
	}

#main form .acceptTerms input {
	border:0;
	display:inline;
	margin:0 6px 0 0;
	padding:0;
	width:auto;
	vertical-align:middle;
	}

#main form .errorMessage {
    margin:0 0 32px;
	}

#main form .errorMessage ul {
    background:#ffebe8;
    border:1px #dd3c10 solid;
    border-radius:6px;
    -webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
    list-style:none;
    margin:0;
    padding:0;
    width:100%;
	}

#main form .errorMessage ul li {
    color:#0b0b0b;
    padding:20px;
	}

#main form .formFlag {
    color:#dd3c10;
	}

#main .thriveVideo_Video {
	height:0!important;
	padding-bottom:56.25%;
	position:relative;
	width:auto!important;
	}

#main .thriveVideo_Video iframe {
	height:100%;
	left:0;
	position:absolute;
	top:0;
	width:100%;
	}

#main .thriveVideo_Details {
	display:none;
	}

/* BUTTONS */

.button a,
#main a.button,
#book input,
#quote input,
#main form input.submitButton {
	background:#e60003;
	border:0;
	border-radius:6px;
	box-shadow:0 1px 2px rgba(0, 0, 0, 0.42);
	color:#fff;
	display:inline-block;
	font-size:18px;
	outline:none;
	line-height:normal;
	margin:0 6px 12px 6px;
	padding:20px 32px;
	text-decoration:none;
	width:auto;
	}

#main a.button {
	box-shadow:none;
	}

.button a:hover {
	color:#ffde00;
	}

.button.facebook a {
	background-color:#3b579d;
	}

	.button.chinese a {
	background-color:#ffb62b;
	}

.button.facebook a span {
	background:url(../images/facebook.png) 0 50% no-repeat;
	padding:0 0 0 20px;
	}

	.button.chinese a span {
	background:url(../images/chinese.png) 0 50% no-repeat;
	padding:0 0 0 85px;
	}

.button.tripAdvisor a {
	background-color:#60a348;
	}

.button.tripAdvisor a span {
	background:url(../images/tripAdvisor.png) 0 50% no-repeat;
	padding:0 0 0 48px;
	}

.button.facebook a:hover,
.button.tripAdvisor a:hover {
	color:#fff;
	}

#book,
#quote,
#main form .submit {
	text-align:center;
	}

#book p.button a,
#quote p.button a,
#main form input.submitButton {
	background:#efefef;
	box-shadow:none;
	color:#888;
	font-family:'Open Sans', 'sans-serif';
	cursor:default;
	outline:none;
	pointer-events:none;
	text-decoration:none;
	-webkit-appearance:none;
	}

#book p.button a,
body.school #main #quote p.button a,
body.wedding #main #quote p.button a,
body.conference #main #quote p.button a,
body.other #main #quote p.button a,
#main form input.submitButton {
	background:#e60003;
	color:#fff;
	cursor:pointer;
	pointer-events:auto;
	}

/* HEADER */

#header #logo p {
	margin:0 0 0 20px;
	}

#header #logo p a {
	background:url(../images/redBus.png) 0 0 no-repeat #e60003;
	display:block;
	height:105px;
	text-indent:-9999px;
	width:235px;
	}

#header #menu p {
	color:#fff;
	cursor:pointer;
	font-size:14px;
	margin:20px 20px 0 0;
	text-align:center;
	text-shadow:0 0 2px rgba(0, 0, 0, 0.52);
	text-transform:uppercase;
	}

body.menu #header #menu p {
	text-shadow:none;
	}

#header #menu p .toggle {
	display:block;
	}

body.menu #header #menu p .toggle {
	-webkit-transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	-ms-transform:rotate(-45deg);
	-o-transform:rotate(-45deg);
	transform:rotate(-45deg);
	}

#header #menu p .menuRow1,
#header #menu p .menuRow2,
#header #menu p .menuRow3 {
	background:#fff;
	box-shadow:0 0 2px rgba(0, 0, 0, 0.32);
	display:block;
	height:8px;
	opacity:1;
	margin:0 auto 8px auto;
	width:40px;
	}

body.menu #header #menu p .menuRow1,
body.menu #header #menu p .menuRow2,
body.menu #header #menu p .menuRow3 {
	background:#ffde00;
	box-shadow:none;
	}

body.menu #header #menu p .menuRow1 {
	-webkit-transform:translateY(16px);
	-moz-transform:translateY(16px);
	-ms-transform:translateY(16px);
	-o-transform:translateY(16px);
	transform:translateY(16px);
	}

body.menu #header #menu p .menuRow2 {
	opacity:0;
	}

body.menu #header #menu p .menuRow3 {
	-webkit-transform:rotate(90deg) translateX(-16px);
	-moz-transform:rotate(90deg) translateX(-16px);
	-ms-transform:rotate(90deg) translateX(-16px);
	-o-transform:rotate(90deg) translateX(-16px);
	transform:rotate(90deg) translateX(-16px);
	}

#header #menu p .menuTitle {
	display:block;
	margin:-3px 0 0 0;
	}

#menuAside ul {
	font-size:0;
	list-style:none;
	margin:105px 0 0 0;
	padding:0;
	width:100%;
	}

#menuAside ul li {
	border-top:1px #ee4d4f solid;
	display:inline-block;
	font-size:18px;
	text-align:center;
	width:33.33%;
	}

#menuAside ul li a {
	border-right:1px #ee4d4f solid;
	color:#fff;
	display:block;
	padding:20px 0;
	text-decoration:none;
	}

#menuAside ul li:last-child a {
	border-right:0;
	}

#menuAside ul li a:hover {
	color:#ffde00;
	}

/* INTRODUCTION */

#introduction h1,
#introduction h2 {
	color:#fff;
	text-shadow:0 1px 2px rgba(0, 0, 0, 0.42);
	}

#introduction.inner h1 {
	padding:0 0 19px 0;
	}

#introduction ul {
	font-size:0;
	margin:0;
	padding:0;
	text-align:center;
	}

#introduction ul li {
	display:inline-block;
	}

/* SCROLL TO TOP */

a#scrollUp {
	background:url(../images/scrollTop.png) 50% 50% no-repeat #e60003;
	bottom:32px;
	border-radius:50%;
	height:48px;
	opacity:0.7;
	right:32px;
	text-indent:-9999px;
	width:48px;
	}

a:hover#scrollUp {
	opacity:1;
	}

/* FOOTER */

a.trip-advisor, a.eeca {
	display:block;
	margin:32px auto;
	width:148px;
}

a.trip-advisor img,  a.eeca img {
	border:0;
	display:block;
	height:auto;
	margin:0;
	width:148px;
	}

ul#affiliates,
ul#menuFooter {
	font-size:0;
	list-style:none;
	margin:16px;
	padding:0;
	text-align:center;
	}

ul#affiliates li,
ul#menuFooter li {
	display:inline-block;
	font-size:14px;
	font-weight:300;
	line-height:normal;
	margin:0 16px;
        vertical-align: middle;
	}

ul#affiliates li a,
ul#menuFooter li a {
	background:none;
	display:block;
	color:#000;
	line-height:normal;
	text-decoration:none;
	width:auto;
	}

ul#menuFooter li a:hover {
	color:#e60003;
	text-decoration:underline;
	}

ul#affiliates img {
	display:block;
	max-height:60px;
        max-width: 180px;
	width:auto;
        margin: 10px 0;
	}

#footer p {
	font-size:14px;
	font-weight:300;
	margin:16px 32px;
	padding:0;
	text-align:center;
	}

#footer p a {
	color:#000;
	text-decoration:none;
	}

#footer p a:hover {
	color:#e60003;
	text-decoration:underline;
	}
#footer p.credits {
  font-size: 12px;
  color: #ccc;
}

#footer p.credits a {
  color: #ccc;
  text-decoration: underline;
}
@media all and (max-width:640px) {

	h1 {
		font-size:26px;
		line-height:42px;
		}

	h2 {
		font-size:20px;
		font-weight:300;
		line-height:36px;
		margin:18px 0 28px 0;
		}

	#main img.imageNewsletter {
		margin:0 0 34px 0;
		width:100%;
		}

	#main ul,
	#main ol {
		list-style:none;
		margin:0 0 32px 0;
		padding:0 0 0 20px;
		}

	#header #logo p {
		margin:0;
		}

	#header #logo p a {
		background-size:contain;
		height:55px;
		width:122px;
		}

	#header #menu p {
		margin:15px 15px 0 0;
		}

	#header #menu p .menuRow1,
	#header #menu p .menuRow2,
	#header #menu p .menuRow3 {
		box-shadow:none;
		height:5px;
		margin:0 auto 5px auto;
		width:25px;
		}

	body.menu #header #menu p .menuRow1 {
		-webkit-transform:translateY(10px);
		-moz-transform:translateY(10px);
		-ms-transform:translateY(10px);
		-o-transform:translateY(10px);
		transform:translateY(10px);
		}

	body.menu #header #menu p .menuRow3 {
		-webkit-transform:rotate(90deg) translateX(-10px);
		-moz-transform:rotate(90deg) translateX(-10px);
		-ms-transform:rotate(90deg) translateX(-10px);
		-o-transform:rotate(90deg) translateX(-10px);
		transform:rotate(90deg) translateX(-10px);
		}

	#header #menu p .menuTitle {
		display:none;
		}

	#menuAside ul {
		margin:55px 0 0 0;
		}

	#menuAside ul li {
		width:100%;
		}

	#introduction.home #content h1,
	#introduction.home #content h2 {
		color:#474747;
		text-shadow:none;
		}

	#introduction.home #content .button a {
		padding:20px 0;
		width:260px;
		}

	#introduction img.hidden {
		border-radius:50%;
		display:block;
		height:200px;
		margin:26px auto 0 auto;
		position:static;
		width:200px;
		}

	#introduction ul li {
		display:block;
		}

	#main ul#menuServices li {
		width:100%;
		}

	#main ul#menuServices li:nth-child(odd) .ourServicesImage,
	#main ul#menuServices li:nth-child(even) .ourServicesImage {
		margin:0 0 20px 0;
		}

	#main ul.information li {
		font-size:14px;
		height:124px;
		margin:0 10px 20px 10px;
		width:124px;
		}

	#main ul.information li a {
		height:124px;
	}

	#main ul.information li span {
		background-size:24px 24px;
		padding:62px 0 0 0;
		}

	#main form {
		max-width:100%;
		}

	#main ul.quoteOptions.timetable .width {
		display:block;
		margin:0;
		width:100%;
		}

}

@media all and (max-width:800px) {

	#main ul.quoteOptions li {
		display:block;
		}

	#main ul.quoteOptions li span,
	#main ul.quoteOptions li a {
		border-width:1px 1px 0 1px;
		}

	#main ul.quoteOptions li:first-child span,
	#main ul.quoteOptions li:first-child a {
		border-bottom-right-radius:0;
		border-bottom-left-radius:0;
		border-top-left-radius:6px;
		border-top-right-radius:6px;
		}

	#main ul.quoteOptions li:last-child span,
	#main ul.quoteOptions li:last-child a {
		border-bottom:1px #efefef solid;
		border-bottom-right-radius:6px;
		border-bottom-left-radius:6px;
		border-top-left-radius:0;
		border-top-right-radius:0;
		}

}

@media all and (max-width:1024px) {

	img.imageNewsletter {
		width:320px;
		}

	.button a {
		box-shadow:none;
		padding:20px 0;
		text-align:center;
		width:260px;
		}

	#introduction h1,
	#introduction h2 {
		color:#474747;
		text-shadow:none;
		}

	#introduction.home h1,
	#introduction.home h2 {
		color:#fff;
		text-shadow:0 1px 2px rgba(0, 0, 0, 0.42);
		}

	#introduction.home .button a {
		padding:20px 32px;
		width:auto;
		}

}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {

	.button.facebook a span {
		background:url(../images/facebookRetina.png) 0 50% no-repeat;
		background-size:13px 24px;
		}

	.button.tripAdvisor a span {
		background:url(../images/tripAdvisorRetina.png) 0 50% no-repeat;
		background-size:41px 24px;
		}

		.button.chinese a span {
		background:url(../images/chineseRetina.png) 50% 0 no-repeat;
		background-size:75px 24px;
		}

	a#scrollUp {
		background:url(../images/scrollTopRetina.png) 50% 50% no-repeat #474747;
		background-size:32px 32px;
		}

}

#main form .Actions input.action {
    background: #e60003;
    color: #fff;
    cursor: pointer;
    pointer-events: auto;
}

.requiredField label:after {
    content: ' *';
    display:inline;
    color: #dd3c10;

}

.requiredField.BigTitle label:after {


}

#menuAside ul {
    display:flex;
}

.Newsletter p, .NewsletterHolder p {
    text-align: left;
}

#qualmark-logo {
        width: 160px;
    margin: 32px 15px;
}
