@charset "UTF-8";

html { height: 100%; margin-bottom: 1px; }

body  {
	font: 12px Arial, Helvetica, sans-serif;
	margin: 0;
	padding: 0;
	text-align: center; /* this centers the container in IE 5* browsers. The text is then set to the left aligned default in the #container selector */
	color: #000;
	background: #FFF url(../images/design_elements/body_bg.gif) top repeat-x;
}

.error_message {
	border: 3px solid #299fb5;
	padding: 20px;
	width: 560px;
	float: right;
	margin-top: 40px;
}

a {	
	color: #0b606a;
}
a:hover { 
	color: #2c6364; 
}
a:visited { 
	color: #2c6364; 
}

span.em {
	font-style: italic;
}

#container { 
	background: #FFF;
	width: 926px; 
	margin: 0 auto; /* the auto margins (in conjunction with a width) center the page */
	text-align: left; /* this overrides the text-align: center on the body element. */
	padding: 0px;
} 

/************************************************

MAIN BODY CONTAINER STYLES

*************************************************/
#header { 	
	clear: both;
	width: 906px !important;
	display: inline-block;
	position: relative;
	padding: 35px 10px 0 10px; 
}

#right_col {	
	float: right !important; 
	clear: none !important;
	width: 275px; 
	padding-right: 10px;
	padding-left: 7px;
}
.search_page #right_col {	/* On index/main search pages a vertical separator exists between main and right cols in order to visually separate the search form in the main column. Would ideally be on search form rather than on the side column but that would necessitate adding an extra div around the search form since it already has a background. */
	background: url("../images/design_elements/right-col-vertical-separator.jpg") top left no-repeat;
}

.main_col { /* margins create col on right side only */ 
	margin: 0; 
	width: 595px;
	padding: 20px 0 0 25px; 
	float: left;	
	clear: none !important;
} 
.search_page .main_col { /* Search (search form and search results) pages have a tighter margin than the average page with content */
	margin: 0; 
	width: 610px !important;
	padding: 0 0 0 10px !important; 
	float: left;
}

#footer { 
	display: block;
	clear: both;	
	text-align: center;
	font-size: 95%;
	color: #666;
	padding: 10px 0 30px 0;
}
#footer a {
	color: #1e4344 !Important;
}

#sitemap-footer {
	margin-top: 40px;
	clear: both;
	display: block;
	background: #ecf1f4 ;
	padding: 20px;
}



/*******************************************

HEADINGS AND TEXT ELEMENT BASICS

*******************************************/

.big-phone-number {
	color: #0b606a;
	font-size: 15px;
	font-weight: bold;
}

h1, h2, h3 {
	margin-bottom: 0;
	margin-top: 0;
	color: #094c54;
}
p { /* Margin bottom used to dictate space between paragraphs and what follows, so that headings and paragraphs have no visual separation between them unless deliberately set. */
	margin-bottom: 1.3em;
	margin-top: 0;
}
.main_col p {
	line-height: 140%
}
ul, dl, ol { /* As above, margin bottom used to dictate space between lists and what follows, so that headings and lists have no visual separation between them unless deliberately set. */
	margin: 0 0 1em 0;
	padding: 0;
}
li, dd, dt {
	margin: 0;
	padding: 0;
}

h1 {
	font-size: 22px;
	margin-bottom: 13px !important;
}
h2 { 
	font-size: 17px; 
}
h3 { 
	font-size: 14px;
}

.bar_hdr, .top_destinations h2 {
	background: #709097 url("../images/design_elements/bar-header-bg.gif") top left repeat-x;
	color: #FFF;
	font-size: 16px;
	font-weight: normal;
	min-height: 22px;
	line-height: 22px;
	text-indent: 8px;
}
#search label span {
	font-size: 80%;
}
#search h1 {
	min-width: 595px;
	min-height: 31px;
	display: inline-block;
	margin-bottom: 0 !important;
}
#search h1#flight-search-heading {
	font-size: 20px;
	background: url("../images/design_elements/airline-logos-in-a-row.jpg") top right no-repeat;
}
#search h1#insurance-search-heading {
	/* background: url("../images/design_elements/search-insurance-h1.gif") top left no-repeat; */
}
#search h1#accommodation-search-heading {
	/* background: url("../images/design_elements/search-accommodation-h1.gif") top left no-repeat; */
}

.main_col ul, .main_col ol, .main_col dl {
	margin-left: 2em;
}


/************************************************

OTHER GLOBAL STUFF

*************************************************/

.required-marker { /* Use on asterisks marking required fields in forms. */
	color: #b8220b;
	font-size: 110%;
	vertical-align: middle;
	clear: none;
}


/************************************************

RIGHT COLUMN DIVS

*************************************************/

#right_col div { /* all divs in the right column are to be separated by a horizontal space, created by this 7px margin-bottom */
	margin: 0 0 7px 0;
}
#right_col h2 {
	font-size: 15px;
}

#right_col div#mailing-list {
	padding: 8px;
	background: #d7dfe2 url("../images/design_elements/subscribe-div-background.jpg") left bottom repeat-y;
}
div#mailing-list p, div#footer-mailing-list p {
	margin-bottom: 0.5em; /*override usual 1em margin-bottom on paragraphs to bring text field higher (for visual coherency) */
}
div#testimonials, .form1 {
	border: 1px solid #b6babd;
	padding: 2px 2px;	
	position: relative;
}

div#testimonials div {
	margin-bottom: 0 !important; /* overrides declaration made to all divs in this column in order to put margin-bottoms on each main div. There are a number of nested divs in this col; without this override there'd be a lot of vertical white space. */
}
div#testimonials h2, .form1 h2 { /* form1 is one option when styling forms. It borrows the styles used in the testimonials box. */
	background: url("../images/design_elements/testimonial-box-hdr-bg2.jpg") right top no-repeat;
	display: block;
	color: #0b606a;
	border-bottom: 1px solid #b6babd;
	margin: 0;
}
div#testimonials h2 span, .form1 h2 span {	
	background: url("../images/design_elements/testimonial-box-hdr-bg1.jpg") left top no-repeat;
	display: block;
	padding: 4px;
}
div#testimonials p {
	display: block;
	margin: 8px;
	padding-left: 12px;
	text-indent: -12px;
}
div#testimonials p span.start-quote {
	background: url("../images/design_elements/start-quote.gif") left bottom no-repeat;
	width: 27px;
	height: 20px;
	display: inline-block;
	vertical-align: bottom;
}
div#testimonials p span.end-quote {
	background: url("../images/design_elements/end-quote.gif") left top no-repeat;
	width: 27px;
	height: 20px;
	display: inline-block;
	text-indent: -999px;
	vertical-align: top;
}
#testimonials_window {
	width: 267px;
	overflow: hidden;
	position: relative;
}
#items_container {
	width: 900px;
	height: 80px;
	overflow: hidden;
	position: relative;
	left: 0px;
	top: 0px;
}
div.slide_item {
	width: 265px;
	height: 80px;
	background: #FFF;
	float: left;
	margin-right: 10px;
}
#controls {
	width: 99%;
	display: inline-block;
	position: relative;
	/* display: none; */
}
#controls div {
	cursor: pointer;
	text-align: center;
}
#controls a {
	font-weight: bold !important;
}
#controls a:hover {
	text-decoration: underline !important;
}
#prevbtn { /* Decided a back button was unnecessary and to leave out, but am setting to display:none and leaving it in here for easy changing should we decide later to include it. */
	float: left;
	clear: none;
	margin: 0 0 8px 10px !Important;
	display: none;
}
#nextbtn { /* Will replace this plain link with a corner image when there's time */
	float: right;	
	clear: none;	
	margin: 0 5px 8px 0 !Important;
}




div.what-differentiates-us {
	background: url("../images/design_elements/differentiators-background.jpg") bottom;
	/*min-height: 242px;*/
	padding-bottom: 15px;
}
div.what-differentiates-us h2 {
	display: block;
	color: #FFF;
	padding: 10px 5px 5px 5px;
	font-size: 140%;	
	text-align: center;
}
div.what-differentiates-us ul {
	padding: 0;
}
div.what-differentiates-us li {
	font-size: 90%;
	line-height: 110%;
	padding: 5px 10px;
	list-style: none;
	background-image: url("../images/design_elements/end-quote.gif") left top no-repeat;
}

div.what-differentiates-us li strong {
	font-size: 105% !important;
}


/************************************************

SITEMAP FOOTER STYLES

*************************************************/
#sitemap-footer {
	vertical-align: top;	
	font-size: 95%;
	display: inline-block;
}
#sitemap-footer h3 {
	font-size: 15px;
}
#sitemap-footer div {
	width: 145px;
	clear: none;
	vertical-align: top;
	float: left;
	margin-right: 10px;
}
#sitemap-footer li, dt, dd {
	/*white-space: nowrap;*/
	display: inline;
	margin-right: 5px !important;
}
#sitemap-footer div.travel-guides {
	float: left;
	clear: both;
	width: 635px;
}
#sitemap-footer div.travel-guides dt {
	font-weight: bold;
}
#sitemap-footer div.travel-guides dl span {
	display: block;
	margin-bottom: 2px;
	clear: both;
}
#sitemap-footer div.travel-guides dl ul {
	display: inline;
}
#sitemap-footer div#footer-mailing-list {
	float: right !important;
	width: 230px;
	padding-left: 13px;
	background: url("../images/design_elements/sitemap-footer-divider-shim.gif") top left repeat-y;
}
#sitemap-footer a {
	color: #000;
}
#sitemap-footer div#footer-mailing-list input {
	margin-top: 3px;
	
}

/************************************************

FOOTER STYLES

*************************************************/

#footer p {
	margin-left: auto;
	margin-right: auto;
}
#footer a {
	margin: 0 3px;
	color: #666;
}


/************************************************

HEADER STYLES

*************************************************/


.best-flight-guarantee {
	width: 113px;
	height: 113px;
	position: absolute;
	right: 170px;
	top: 53px;
}

.top_links {
	float: right;
	text-align: right;
	width: 50%;
	position: relative;
	top: -128px;
	height: 16px;
	margin-bottom: -15px;	/* Fixes margin problem throwing menu down 15 px */
}
.top_links a {
	color: #000;
	font-size: 90%;
	margin-left: 15px;
}
.top_links a:hover { 
	color: #287684; 
}
.top_links img {
	vertical-align: middle;
}

#logo {
	float: left;
	/* background: url(../images/speedytravel-logo2.gif); 
	background-repeat: no-repeat; */
	width: 224px;
	height: 125px;
	/*clear: none; */
	/* new stuff from here */
	overflow: visible;
	position: relative;
	margin-bottom: -25px;
	margin-left: 5px;
}
#logo a {
	display: block;
	background: url(../images/speedytravel-logo2.gif);
	background-repeat: no-repeat;
	width: 224px;
	height: 125px !important;
	overflow: visible;
}
#logo span {
	visibility: hidden;
	display: block;
	width: 205px;
	height: 125px;
	clear: none;
	overflow: visible;
}
#header_banner {
	float: right;
	background: url(../images/design_elements/header_banner2.jpg) top right no-repeat;
	width: 677px;
	height: 105px;
	text-indent: -9999px;
	clear: right !important;
	overflow: visible;
}
ul#header_nav {
	margin: 0;
	clear: none;
	float: right;
	padding: 0 0 11px 0; /* to show background */
	width: 697px; 
	color: #1e4344;
	background: url(../images/design_elements/nav_menu_border_bottom.gif) repeat-x bottom;
	z-index: 2;
}
#header_nav li.left_end {
	background: url(../images/design_elements/nav_menu_left_end.gif) no-repeat bottom left;
	width: 20px;
	display: inline-block;	
	padding: 0;
	height: 35px;
	margin-bottom: -10px;
	margin-top: 3px;
}
#header_nav li {
	float: left;
	list-style: none;
	padding: 9px 13px 10px 0;
	font-weight: bold;
	z-index: 5;
	font-size: 98%;
	position: relative;
}
#header_nav li a {
	text-decoration: none;
	color: #094c54;
}
#header_nav li a:hover {
	text-decoration: underline;
	/* color: #287684;*/
}
#header_nav li.selected a {
	color: #287684 !important;
	text-decoration: underline;
}
#header_nav .coming_soon {
	font-weight: normal;
}
.coming_soon span.tag {
	/* display: block !important; /* think this is being ignored by IE */
	clear: both;
	height: 62px;
	width: 52px;
	z-index: 100;
	position: absolute;
	left: 1.5em;
	top: 2em;
	margin-left: -5px;
	margin-top: -2px;
}


/********************************************

SEARCH FORM - GENERAL STYLES 
May be adjusted for each specific type of form
(insurance search, accommodation search, etc)
in product-specific specifications that follow this.

**********************************************/
#search {
	padding: 13px;
	margin: 0;
	clear: none !important;
	display: inline-block;
	background: #FFF url("../images/search-bg-reverse.jpg") bottom left no-repeat;	
}
body.search_page .main_col #search { /* Just for main page. */
	margin-bottom: 20px;
}
form { 
	margin: 0; 
	padding: 0; 
}
/*.sidebar1 div#search {
	padding: 0 0 0 0; 
	background: url("../images/search-bg-reverse.jpg") bottom left no-repeat;
}*/
.formRow { /* A container div used to stack form contents into horizontal rows */
	width: 100%;
	clear: none !important;
	margin-left: 0px;
}
#search .formRow {
	float: left;
	padding: 5px 0; /* creates the spaces between rows */
}
.formRow#search_button_row {
	clear: none !Important; /* Currency and Search button are the only rows laid out alongside one another. */
	width: 40%;
	padding-top: 15px;
}
.unaccompanied-minors-link a {
	clear: both;
	line-height: 180%;
	display: block;
	margin-left: 5px;
}
.formRow#currency {
	clear: none !Important; /* Currency and Search button are the only rows laid out alongside one another. */	
	margin: 0;
	padding-top: 30px !important; /* Pushes currency converter downward to allow focus to move to button */
	width: 59%;
	border-bottom: none !Important;
}
#right_col #search .formRow#search_button_row, #right_col #search .formRow#currency { /* When search box is in the right column, we don't want the currency and search button rows laid out alongside one another. The next style adjusts for this. */
	width: 100% !important;
	padding-top: 0 !important;
	clear: both;
}
.formRow div { /* In each form row there may be a number of fields or selectors; these all will position alongside one another. */
	float: left;
	clear: none;
	padding: 0 5px 0 5px;
}
#search input {
	margin-right: 0.5em;
}
.formRow select, .formRow input, .formRow label {
	font-size: 100%;
	min-width: 3em;
}
.formRow select {
	margin-right: 3px;
}
.formRow option {
	font-weight: normal;
	padding: 1px;
	padding-left: 0.5em;
}	
span.calendar {
	padding-left: 0px;
	margin-left: 3px;
}
select option.select_country {
	margin-top: 10px;
	padding-left: 0.2em !important;
	font-weight: bold;
}
.select_break {
	border-top: 1px dashed gray;
	padding-left: 0 !important;
	width: 30px;
}
.formRow select option.quickpick {
	font-weight: bold;
}
.formRow input, .formRow select {
	font: 12px Arial, Helvetica, Verdana, Arial, Helvetica, sans-serif;	
	line-height: 90%;
}
.formRow input {
	display: inline; 
	float: left;
	clear: none;
}
input#cityfrom, input#cityto {
	width: 138px;
}
select.optional_locality {
	width: 138px;
}
div#oneway_or_return {
	padding: 0 !important;
	margin: 0 !important;
}
div#oneway_or_return div {
	margin: 7px 15px 10px 0;
	width: auto !important;
}
#oneway_or_return input {
	clear: left;
	float: left !important;
	margin: 0px 5px 0 0px;
}
.formRow label { /* Generic form label styles */
	color: #000;
	font-size: 100%;
	font-weight: normal;
	clear: none;
	float: left;
	line-height: 150%;
	margin-right: 0.5em;
}
#oneway_or_return label { /* Varied form label for one-way/return radio buttons  */
	width: auto !important;
	white-space: nowrap;
	clear: none !important;
	margin-right: 0 !important;
}
.formRow label.smaller_label_text { /* Label for a field with less emphasis */
	line-height: 15px;
	font-size: 11px !important;
	font-weight: normal !Important;
}
.timechooser select {
	float: left !important;
	display: block;
}
#currencyd select {
	position: relative;
	float: left !Important;
	clear: none !important;
}
#currency div {
	position: relative !important;
}
#currency label {
	font-weight: normal !important;
	float: left !important;
	clear: none !Important;
}

/********************************************

RIGHT COLUMN SEARCH FORM STYLES

**********************************************/
#right_col #search {
	border: 1px solid #b6babd;
	padding: 2px;	
	width: auto;
	background: none !important;
}
#right_col #search h2 {
	background: url("../images/design_elements/testimonial-box-hdr-bg2.jpg") right top no-repeat;
	display: block;
	color: #0b606a;
	border-bottom: 1px solid #b6babd;
	margin: 0;
	font-size: 16px;
}
#right_col #search h2 span {	
	background: url("../images/design_elements/testimonial-box-hdr-bg1.jpg") left top no-repeat;
	display: block;
	padding: 4px;
}
#right_col #search form {
	margin: 7px 4px 0 4px;
}
#right_col #search .formRow div {
	margin: 0; /* Adjusting so as to have less space between rows in this sidebar version of the search form. Specs are inherited from generic search in main CSS file, so need overriding here. */
}
#right_col #search .formRow { 
	padding: 0;
	margin: 6px auto 0 auto !important;
}
#right_col #search #from_and_to div {
	margin: 3px 0 2px 0; /* From/to fields need this adjustment to re-include space between rows */
}
#right_col #search label {
	float: none;
	width: 100%; /* When search is in sidebar, labels need to be positioned above fields rather than alongside them. The exceptions to this rule are the one-way/return one and the from/to one, as specified below. */
}
#right_col #search #oneway_or_return label, #search #from_and_to label { /*  */
	width: auto !important; 
	clear: none !important;
}
#right_col #search #from_and_to label {
	width: 2.6em !important;
	display: block !important;
}
#right_col #search #passengers label, #search #passengers select {
	display: block !important;
	width: auto !important; 
	clear: both !important;
}
#right_col #search #passengers div {
	float: left;
	width: auto;
	padding-right: 0; /* padding left and padding right were both set to 5px */
}
#right_col #search #currency {
	padding-bottom: 0 !important; /* adjusting for stuff in main stylesheet, which will eventually need its currency and button divs switched around to render this unnecesary. */
}
#right_col #search #search_button_row { 
	padding-bottom: 15px !important; /* adjusting for stuff in main stylesheet, which will eventually need its currency and button divs switched around to render this unnecesary. */
}



/******************************************************************

Insurance form styles 

******************************************************************/

#insurance_searchform select#main_destination {
	width: 12em;
}
#insurance_searchform #destination2, #insurance_searchform #destination3, #insurance_searchform #destination4 {
	float: left;
	clear: none;
	width: 11em;
}
#insurance_searchform #destination2 {
	/* clear: left !important; */
}
#insurance_searchform #destinations label {
	font-weight: bold;
	font-size: 120%;
}
#other_destinations label {
	font-weight: normal !important;
	font-size: 100% !important;
}
#insurance_searchform div#depart_date_row label, #insurance_searchform div#return_date_row label {
	font-weight: bold !important;
}
#insurance_searchform fieldset {
	border: 0;
	margin: 10px 0 0 0;
	padding: 0;
}
span.explanation { /* further remarks in tiny text explaining what field is for */
	font-weight: normal;
	font-size: 80% !important;
}
input#date, input#returndate {
	width: 6em;
}
span.calendar {
	float: left;
	clear: none;
}
select#departmmyy, select#departdd, select#returnmmyy, select#returndd {
	float: left;
	clear: none;
}
#insurance_searchform div#passengers label, #insurance_searchform div#passengers select  {
	clear: none !important;	
	float: left;
}
span.calendar {
	width: 22px;
	height: 22px;
	overflow: hidden;
	padding-left: 0;
	margin-left: 0px;
}

/******************************************************************

Hotel form styles 

******************************************************************/
#hotels_searchform #destinations label, #hotels_searchform #destinations label {
	font-weight: bold;
}
/* 
#hotels_searchform #search_button_row {
	 width: 70% !Important; 
}
#hotels_searchform .formRow#currency {
	 width: 50% !important;
}
*/

/********************************************

 TOP DESTINATIONS PRICE-BOARD (done lean and clean, no more touching!)
 
*********************************************/ 

div.top_destinations {
	width: 100%;
	margin: 0;
}
div.top_destinations div {
	clear: none;
	float: left;
	width: 300px;
	margin-right: 5px;
}
div.top_destinations #top_local_destinations {
	width: 285px;
	margin-right: 5px;
}
div.top_destinations #top_international_destinations {
	width: 320px;
	margin-right: 0;
}
div.top_destinations h2 {
	margin-bottom: 5px;
}
div.top_destinations table {
	width: 95%;
	margin: 0 5px;
	text-align: right; /* Aligns all the prices to the right of their cells; this is overridden using first-child pseudoclass for destination names */
	line-height: 130%;
	color: #be1600; /* red colour for prices; this is overridden using first-child pseudoclass for destination names */
	font-weight: bold;
}
div.top_destinations td:first-child, div.top_destinations th:first-child, td.place_name, th.place_name {
	text-align: left;
	text-indent: 8px;
	color: #000;
	font-weight: normal;
}
div.top_destinations th:first-child {
	text-indent: 0 !important; /* overrides the indent the th is inheriting with the leftalign/colour override above */
}

div.top_destinations th {
	white-space: nowrap;
	color: #000;
	text-indent: 10px;
	padding-bottom: 5px;
	font-weight: normal;
}

.top_destinations .odd { 
	background-color: #f3f5f5; 
}
.top_destinations .even { 
	background-color: #FFF; 
}

.top_destinations span.price {
	position: absolute; 
	right: 0;
	clear: none;
	padding-left: 3px;
	color: #ca2e15;
	font-weight: bold;
}
.top_destinations col.price { 
	min-width: 4em; 
}


/*****  FEATURED DESTINATIONS *****/

#featured_destinations {
	width: 100%;
	margin-top: 0px;
	background: url(../images/design_elements/curved-separator.gif) top center no-repeat;
	padding: 62px 0 0 0;
	clear: both;
	display: inline-block;
}

#featured_destinations div {
	width: 235px !Important;
	position: relative;
	float: left;
	clear: none;
	margin: 0 3px;
}
#featured_destinations div.major { /* major feature destination is larger than the others */
	width: 415px !important;
}
#featured_destinations h3 {
	font-size: 14px;
	color: #0b606a;
}
#featured_destinations p {
	font-size: 97%; /* not-really-noticeable size change helps fit more text into these small spaces */
}

#featured_destinations div:first-child {
	margin-left: 10px;
}
#featured_destinations div:last-child {
	margin-right: 10px;
}

#featured_destinations img {
	float: left;
	margin-right: 6px;
}

#featured_destinations .half p {
	margin-top: 3px;
}

#featured_destinations .feat_destination p {
	width: 228px;
	margin: 4px;
}

/* NB: Featured_destinations styles are also used on landing pages to hold info on city-pair destinations and origins. See that stylesheet for adjustments made. */



/********************************************

BREADCRUMB TRAIL
*Note that the .breadcrumb class has no margin on it; this will need 
to be set on each type of page it's used, as margins on the main_col div 
differ depending on page type. (At present the destination guide is the only place
this is used. Its margin is set for that page in destination_guide.css) */
 
*********************************************/ 

.breadcrumb {

}
.breadcrumb li {
	list-style-type: none;
	float: left;
	clear: none;
	margin-right: 0.1em;	
	font-size: 11px !important;
}
.breadcrumb #you_are_here {
	font-weight: bold;
}



/********************************************

RECYCLEABLE STYLES
 
*********************************************/ 
.last_col { /* for all those instances where the far right column in a set doesn't need a margin to create a separator space between it and the next column */
	margin-right: 0 !important;
}
.clearfloat { /* should be placed on a div or break element and should be the final element before the close of a container that should fully contain a float */
	clear: both;
    height: 0;
    font-size: 1px;
    line-height: 0px;
}
.clearleft { /* can be placed on a div or break element and should be the final element before the close of a container that should fully contain a float */
	clear: left;
    height: 0;
    font-size: 1px;
    line-height: 0px;
}
.no-break {
	white-space: nowrap;
}
.tinytext {
	font-size: 10px;
}
.ajax_popup {
	z-index: 999;
	position: relative;
	background: white;
	border: 1px dashed gray;
	width: 300px;
	margin: auto;
}
.hidden {
	visibility: hidden;
}
.alert {/* alert/attention style; use at top of page to grab user's attention */
	border: 2px solid #d3422a;
	clear: left;
	padding: 0.7em;
	margin: 2em 0 0 0;
}
a img {
	border: 0;
}

ul.checkmarks li {
	/*  */
	margin-bottom: 2px;
}
.note {
	/* background: #ecf2f3; */
}

/********************************************

FOLD-OUT LIST ON FAQ PAGE
 
*********************************************/ 
.fold_out_list dd {
	margin: 0.7em 1em;
} 
.fold_out_list a {
	text-decoration: underline;
	cursor: pointer;
}



/********************************************

TERMS AND CONDITIONS PAGE
 
*********************************************/ 
ol.terms, ol.terms ul {
	margin: 0;
	padding: 0;
}
.terms li {
	list-style-position: inside;
	font-size: 14px;
	font-weight: bold;
}
.terms ul li {
	list-style-type: none;
	margin: 10px 0;
	font-size: 12px;
	font-weight: normal;
}
.terms ol li {
	font-size: 12px;
	font-weight: normal;	
	margin: 10px 0;
	list-style: decimal;
	list-style-position: outside;
}



/********************************************

CONTACT US PAGE
 
*********************************************/
.googlemap {
	width: 240px;
	height: 200px;
	margin: 0
	clear: none;
	padding: 1px;
	padding-bottom: 18px;
	clear: both;	

}
.googlemap iframe {
	width: 240px;
	height: 200px;
	border: 1px solid #eeeff1;
	border-bottom: none !important;
	padding: 1px !important;
	margin: 0;	
	background: url(../images/design_elements/nav_menu_border_bottom.gif) repeat-x bottom;
}
.googlemap a {
	font-size: 11px;
	float: right;
	margin: 0;
	display: block;
	clear: both;	
}
div.quotes-and-assistance, div.head-office-details, div.online-enquiry-form, div.feedback-form { /* all subsections on contact page are indented */
	margin-left: 25px;
	margin-bottom: 30px;
	display: inline-block;
}

div.quotes-and-assistance h2, div.head-office-details h2, div.online-enquiry-form h2, div.feedback-form h2 {
	margin-bottom: 10px;
}
dl.contact-numbers, dl.big-phone-numbers {
	display: inline-block;
	width: 100%;
	clear: both;
}
dl.big-phone-numbers { /* For big phone numbers, text is, surprise, bigger and bolder! :P */
	font-weight: bold;	
	font-size: 15px;
}
dl.contact-numbers dt, dl.big-phone-numbers dt {
	margin-left: 0px !important;
	float: left;
	clear: left;
}
dl.big-phone-numbers dt { /* For big phone numbers, more space exists between the dt and dd in order to give the illusion of the number being right aligned. */
	width: 50%;
}
dl.contact-numbers dd, dl.big-phone-numbers dd {
	width: 30%;
	clear: right;
	margin-left: 0px !important;
	float: left;
}
dl.contact-numbers dt {
	width: 4em;
}
dl.big-phone-numbers dd { /* For big phone numbers section, text is aligned to the right */
	text-align: right;
}
.contact_form {
	width: 470px;
	background: url(../images/search-bg.jpg) bottom right no-repeat;
	display: inline-block;
	padding-right: 30px;
}
.contact_form .note {
	background: none;
	font-size: 95%;
	width: 70%;
	padding: 0 0 15px 15px;
}
.contact_form div {
	width: 100%;display: inline-block;
	padding: 0 0 3px 0;
}
.contact_form fieldset {
	border: 0 !important;
}
.contact_form label {
	width: 11em !important;
	display: block !important;
	float: left;
	clear: left;
	position: relative;
	line-height: 150%;
}
.contact_form label em {
	font-size: 110%;
	position: absolute;
	right: 5px;
	top: 3px;
	color: #ca2e15;
}
.contact_form input, .contact_form textarea {
	float: left;
	clear: right;
}
.contact_form .numbers {
	width: 300px;
	float: left;
	clear: none;
	padding: 0;
	margin-bottom: 5px;
	border: none;
}
.contact_form .numbers div {
	float: left !important;
	clear: none !important;
	width: auto !important;
}
.contact_form .numbers label {
	width: 4.5em !Important;
}
.contact_form .note, .contact_form .submitbutton, .contact_form .your_message_field {
	border: none;
}
.numbers label, .numbers input {
	clear: none;
}
.numbers label {
	width: auto !important;
	font-weight: normal;
	font-size: 11px;
	float: left;
	display: block !important;
	margin-right: 7px;
}
.numbers input {
	float: left;
}
.contact_form button {
	clear: both;
	display: block;
	float: right;
	width: auto;
}
.call_centre {
	clear: left;
}
.email_form {
	clear: both;
	padding-top: 20px;
}
.head-office-details dl, .head-office-details p {
	float: left;
	width: auto !Important;
	clear: none;
}
p.local-office-address {
	width: auto;
	float: left;
	margin-right: 30px;
	line-height: 120%;
}
p.local-office-address span {
	display: block;
	clear: both;
}
.submit_button {
	text-align: right;
	border: 0 !important;
}

.sidebar2 img {
	margin-bottom: 15px;
}


/* Pop-up calendar */ 
/* just changed text colour and removed background image */

.prevMonthButton, .nextMonthButton, .footerTable button {
  background-image :none;
  color: #000;
}


/*************************

BUTTON STYLES 

*************************/

/* Generic Button styles */

button, .button {
	background: url("../images/search-process-images/big_button-ls.gif") ;
	background-position: left 1px;
	background-repeat: no-repeat;
	
	font-family: Arial, Helvetica, Verdana, sans-serif;
	font-weight: bold;			
	color: #FFF;
	
	margin: 0;			
	padding: 0 0 0 20px !Important;
	height: 30px;
	
	border: 0;			
	cursor: pointer;

	font-size: 13px;
	text-decoration: none;
}


 button span, .button span {
	height: 30px;
	float: left;
	white-space: nowrap; 
	padding: 0;
	line-height: 30px;

	padding-right: 20px;
	margin: 0;
	background: url("../images/search-process-images/big_button-rs.gif") no-repeat top right;
}
			
			
/* Smaller button styles */

button.mini, #minisearch button, #index_featured_destinations .button, table.accommodation .total .button  {
	background: url("../images/search-process-images/small_button-ls.gif") no-repeat left; 
	font-family: Arial, Helvetica, Verdana, sans-serif;
	font-weight: bold;			
	color: #FFF;
	
	margin: 0;			
	padding: 0 0 0 20px;
	height: 25px;
	
	border: 0;			
	cursor: pointer;

	font-size: 13px;
	text-decoration: none;
	position: relative;
}

button.mini span, .more_button span, #minisearch button span,  #index_featured_destinations .button span, table.accommodation .total .button span {
	background: url("../images/search-process-images/small_button-rs.gif");
	background-repeat: no-repeat;
	background-position: right !Important;
	
	height: 25px !important;
	
	white-space: nowrap;
	padding: 0;
	line-height: 25px;

	padding-right: 20px !Important;
	margin: 0 !important;
}

table.accommodation .total .button {
	width: auto !important;
	display: inline-block;
}
table.accommodation .total .button span {
	display: inline-block !important;
	float: inherit;
	text-decoration: none;
	font-size: 11px;
}

/* floating the contents of the total column against one another and setting a width on the dollar amount so the buttons all line up down the page */
table.accommodation em {
	float: left;
	display: inline-block;
	height: 25px;
	line-height: 25px;
	width: 40px;
	text-align: right;
	padding-right: 10px;
}
table.accommodation .total .button {
	float: left;
	margin-right: 10px !Important;
}


/* Location-specific button styles */
#minisearch button#search_button {
	margin: 10px 0 15px 80px;
}
#index_featured_destinations .button {
	position: absolute;
	right: 0;
}
#index_featured_destinations .button span {
	font-weight: normal;
	color: #FFF;
}

/* Positions button on main page within search form, or alternately can position the replacement 'searching' animation in the same place */
button#search_button {
	clear: both;
	margin: 0;
} 
div.search_button_repmt {
	clear: both;
	width: 30%;
	margin: 0;
} 
#right_col button#search_button, div.search_button_repmt { /* When search box is in the right column, we want the search button floated to the right. This style adjusts for this. */
	margin-top: 5px;
	float: right;
}
div.search_button_repmt, div.send_button_repmt {
	display: block;
	clear: both;
	font-weight: bold; 
	color: #004e6f;
	padding: 15px 15px 15px 20px;
	background: url("../images/waitspin.gif") left center no-repeat;
}
div.loading-animation {
	margin: 70px auto 200px auto !Important;
	clear: both;	
	font-weight: bold;
	width: 10em;
	color: #004e6f;
	padding: 0 0 0 22px;
	background: url("../images/waitspin.gif") left center no-repeat;
}




/************ END OF BUTTON STYLES ******************/


/*****************************************************



*****************************************************/


.citylistsel {
	background-color: #0000F3;
	color: #FFFFFF;
}

.citylistun {
 	background-color:#FFFFFF;
	color:#000000;
}

.citylistdiv{
	max-height:100px;
	overflow:auto;
	border: solid #000000;
	border-width:1px;
	z-index:9999;
}


div.autocomplete {
    position:absolute;
    width:250px;
    background-color: white;
    border:1px solid #888;
    margin:0px;
    padding:0px;
}
div.autocomplete ul {
    list-style-type:none;
    margin:0px;
    padding:0px;
}
div.autocomplete ul li.selected { 
	background-color: #c6e4e6; /* #ffb; */
}
div.autocomplete ul li {
    list-style-type:none;
    display:block;
	text-align: left !important;
    margin:0;
    padding:2px;
    height:32px;
    cursor:pointer;
}

/*************************

MAILING LIST SUBSCRIBE/UNSUBSCRIBE PAGE

*************************/

.mailing-list-subscription {
	margin: 2px 0px 20px 0px;

}
.mailing-list-subscription form {
	padding: 10px 15px;
	background: #FFF url("../images/search-bg-reverse.jpg") bottom left no-repeat;
}
.mailing-list-subscription .formRow {
	display: inline-block;
	clear: none;
	margin-bottom: 6px;
	margin-right: 10px;
}
.mailing-list-subscription .formRow div {
	width: 45%;
}
.mailing-list-subscription .formRow div.fullwidth {
	width: 100% !Important;
}
.mailing-list-subscription .form_button_row {
	width: 45%;
}
.mailing-list-subscription label {
	width: 100%;
	font-weight: bold;
}
.mailing-list-subscription input#subscriber-name {
	width: 12em;
}
.mailing-list-subscription input#subscriber-email {
	width: 15em;
}
.mailing-list-subscription input#subscriber-security-code {
	width: 5em;
}
.form_button_row input {
	float: right;
}
.captcha {
	border: 1px solid black;
	float: left;
	clear: none;
}

/*************************

STYLES TO USE ON FORMS

*************************/

div.form1 form {
	padding: 10px;
}

