/* colour references: 
dark blue = color: #003399;
light blue = color: #66CCFF;
teracotta = color: #996666;
*/

/* global whitespace reset */
html, body, div, span, h1, h2, h3, h4, h5, p, a, img, ul, li, fieldset, form {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: Arial, Helvetica, sans-serif;
	vertical-align: baseline;
}
td, th, {
	padding: 0px 0px 0px 10px;
	border: 1;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: Arial, Helvetica, sans-serif;
	vertical-align: baseline;
}

ul {
	list-style: none;
	padding: 0 12px 0 0;
}

html {
	overflow: scroll;
}

/* generic floats */
.floatleft {
	float: left;
}

.floatright {
	float: right;
}

.floatbottomright { /* get acrobat & get flash buttons */
	float: right;
	vertical-align: baseline;
}

/* layout css begins */
body {
	font: 100% Arial, Helvetica, sans-serif;
	line-height: 18px;
	width: 100%;
	height: 100%;
	text-align: center; /* forces centering for IE 5's  */
	background-image: url("../images/backgrounds/background01.jpg");
	background-repeat: no-repeat;
}


#wrapper {
	text-align: left;
	margin: 0px auto;
	padding: 0px;
	border: 0;
	width: 1000px;
}

#side-a {
	float: left;
	width: 585px;
	position: relative;
}

a#logolink { /* transparent layer to make main logo clickable */
	position: absolute;
	top: 0;
	left: 0;
	width: 150px;
	height: 150px;
	text-decoration: none;
}

a#logolink i {
	color: #ffffff; /* hide text link - its in the menu and crumbtrail anyway */
	visibility: hidden;
}

/* left navigation */
#navigation {
	margin-left: 28px;
	display: inline; /* fixes ie6 double margin float bug */
}

#navigation ul li.topline {
	width: 120px;
	border-top: 1px dashed #996666;
	border-bottom: 1px dashed #996666;
}

#navigation ul li {
	width: 120px;
	border-bottom: 1px dashed #996666;
}

#navigation ul li a {
	padding-left: 10px;
	height: 25px;
	line-height: 25px;
}

#navigation ul li a:link, #navigation ul li a:visited {
	color: #996666;
	font-weight: bold;
	text-decoration: none;
}

#navigation ul li a:hover, #navigation ul li a:active  {
	color: #003399;
	font-weight: bold;
	text-decoration: none;
}

/* second tier left navigation */
#navigation ul li ul li {
	border-bottom: none;
}

#navigation ul li ul li a {
	padding-left: 20px;
	height: 25px;
	line-height: 25px;
}

#navigation ul li ul li a:link, #navigation ul li ul li a:visited {
	color: #996666;
	font-weight: normal;
	text-decoration: none;
}

#navigation ul li ul li a:hover, #navigation ul li ul li a:active {
	color: #66CCFF;
	font-weight: normal;
	text-decoration: none;
}

#navpanel {
	margin-top: 40px;
	width: 125px;
	height: 125px;
	background-image: url("../images/backgrounds/nav_panel.png");
	background-repeat: no-repeat;
}

a#callbacklink { /* transparent layer to make Inquiries button clickable */
	position: absolute;
	top: 573px;
	left: 30px;
	width: 125px;
	height: 125px;
	text-decoration: none;
}

a#callbacklink i {
	color: #ffffff; /* hide text link */
	visibility: hidden;
	text-indent:-100em;
}


/* current page highlighting */
li#current {
	width: 120px;
	background-image: url("../images/generic/menu_bg_fade.png");
	background-position: top left;
	background-repeat: no-repeat;
	border-bottom: 1px dashed #996666;
}

li#current a#on, div.element li a#on {
	color: #003399;
}

/* page header images */

h1#headerimage span { /* replace this with definitive image replacement system asap */
	display: none;
}

h1#headerimage {
	width: 585px;
    height: 250px;
	background-position: top left;
	background-repeat: no-repeat;
}

#homepage h1#headerimage {
	background-image: url("../images/headers/ideal_weddings.png");
}

#yourwedding h1#headerimage {
	background-image: url("../images/headers/your_wedding.png");
}

#ourdestinations h1#headerimage {
	background-image: url("../images/headers/our_destinations.png");
}

#weddingglossary h1#headerimage {
	background-image: url("../images/headers/wedding_glossary.png");
}

#yourmemories h1#headerimage {
	background-image: url("../images/headers/your_memories.png");
}

#contact h1#headerimage {
	background-image: url("../images/headers/contact.png");
}

#requestacallback h1#headerimage {
	background-image: url("../images/headers/request_a_call_back.png");
}

#dominicanrepublic h1#headerimage {
	background-image: url("../images/headers/dominican_republic.png");
}

#nicaragua h1#headerimage {
	background-image: url("../images/headers/nicaragua.png");
}

#guatemala h1#headerimage {
	background-image: url("../images/headers/guatemala.png");
}

#mexico h1#headerimage {
	background-image: url("../images/headers/mexico.png");

}

#costarica h1#headerimage {
	background-image: url("../images/headers/costa_rica.png");
}

#sitemap h1#headerimage {
	background-image: url("../images/headers/sitemap.png");
}

#maincontent { /* main copy area */
	width: 425px;
}

#googlemap {
	margin-left: 10px;
	margin-bottom: 10px;
}

h2 { /* resort/hotel heading */
	font-size: 20px;
	color: #003399;
	margin-left: 10px;
	padding: 0 0 6px 0;
}

h3 { /* location heading */
	font-size: 18px;
	color: #003399;
	margin-left: 10px;
	padding: 0 0 6px 0;
}

h4 { /* page title/section heading */
	font-size: 14px;
	font-weight: bold;
	color: #003399;
	margin-left: 10px;
}

h5, caption { /* subheadings */
	font-size: 13px;
	font-weight: bold;
	color: #003399;
	margin: 14px 0 0 10px;
	padding-bottom: 0;
	text-align: left; /* for caption specifically */
}

.heading_teracotta{
	color: #996666;
}

#virtualtours h5 {
	margin:0 0 12px 0;
}

p, a, td, th, #maincontent li, #rightsitemap li {
	font-size: 12px;
	color: #003399;
}

p.intro {
	font-weight: bold;
	padding: 0 20px 10px 10px;
}

p.maincopy, p.quote {
	padding: 0 20px 10px 10px;
}

p.quote_italic{
	font-style:italic;
	padding: 0 20px 10px 10px;
}

p.quote_non_italic{
	font-style:none;
	padding: 0 20px 10px 10px;
}

p.smallprint {
	font-size: 10px;
	padding: 0 20px 10px 10px;
}

/*.smallprint {
	font-size: 10px;
}*/

ul.bulleted, .element ul {
	list-style-type: disc;
	margin-left: 24px;
}

ul.bulleted {
	margin-bottom: 16px;
}

.tablecell { /* extras page price table */
	width: 415px;
	padding-left: 10px;
}

.cellleft {
	width: 315px;
	float: left;
}

.cellright {
	width: 100px;
	float: right;
}

.cellleft p {
	padding: 2px 0;
}

.cellright p {
	text-align: right;
	padding: 2px 20px 2px 0;
}

.golf {width:50%} /* special rule for golf course tables */

.indent{
	margin-left:50px;
}
.middleindent{
	margin-left:60px;
}

/* tabbed homepage boxes */
#tabpanels {
	margin: 0 20px 0 10px;
}

#innerleft {
	position: relative;
	height: 180px;
	width: 180px;
	overflow: visible;
}

#innerleft a {
	color: #555555;
	text-decoration: none;
}

#innerleft h6 {
	height: 1.85em;
	line-height: 1.85em;
	font-size: 0.7em;
	margin: 0;
	color: #003399;
	zoom: 1;
	margin-right: 2px;
	cursor: pointer;
	font-weight: bold;
	text-decoration: none;
	float: left;
	padding: 0 7px;
	background: #9DD9F7;
}

#innerleft h6:hover {
	background: #C7EAFB;
}

#innerleft h6.h6minus {
	background: #C7EAFB;
	position: relative;
	z-index: 10;
}

#innerleft .showDIV,#innerleft div#first {
	top: 1.55em;
	font-size: 1em;
	width: 180px;
	height: 180px;
	background-color: #FFFFFF;
}

#innerleft div,#innerleft .hideDIV {
	position: absolute;
	top: -9999px;
	left: 0;
	background-color: #FFFFFF;
}

#innerright {
	position: relative;
	height: 180px;
	width: 180px;
	overflow: visible;
}

#innerright a {
	color: #555555;
	text-decoration: none;
}

#innerright h6 {
	height: 1.85em;
	line-height: 1.85em;
	font-size: 0.7em;
	margin: 0;
	color: #003399;
	zoom: 1;
	margin-right: 2px;
	cursor: pointer;
	font-weight: bold;
	text-decoration: none;
	float: left;
	padding : 0 7px;
	background: #9DD9F7;
}

#innerright h6:hover {
	background: #C7EAFB;
}

#innerright h6.H6minus {
	background: #C7EAFB;
	position: relative;
	z-index: 10;
}

#innerright .showDIV,#innerright div#first {
	top: 1.55em;
	font-size:1em;
	margin: 0;
	width: 180px;
	height: 180px;
	background-color: #FFFFFF;
}

#innerright div,#innerright .hideDIV {
	position: absolute;
	top: -9999px;
	left: 0;
	background-color: #FFFFFF;
}

#virtualtours { /* virtual tour thumbnail layout */
	padding: 0 20px 10px 10px;
}

div.thumb {
	float: left;
	padding: 0 10px 10px 0;
}

div.thumb p {
	font-size: 11px;
	text-align: center;
}

#maincontent a:link, #maincontent a:visited {
	font-size: 12px;
	color: #003399;
	font-weight: normal;
	text-decoration: underline;
}

#maincontent a:hover, #maincontent a:active {
	font-size: 12px;
	color: #66CCFF;
	font-weight: normal;
	text-decoration: underline;
}

#maincontent a.underline {
	text-decoration: underline;
}

#maincontent a:link.noline, #maincontent a:visited.noline {
	text-decoration: none;
}

#maincontent a:hover.noline, #maincontent a:active.noline {
	text-decoration: underline;
}

#maincontent fieldset {
	margin-left: 10px;
}

#maincontent #form select {
	width: 395px;
}

#maincontent table {
	padding: 0 20px 10px 7px;
}

#maincontent td, th {
	vertical-align: top;
}

.tablepadding{
	padding-left: 168px;
}

/* WEDDING PACKAGE LINKS */

#packages {
	padding: 10px 0 20px 10px;
}

#packages a.packages:link, #packages a.packages:visited {
	padding-left: 20px;
	color: #996666;
	background: transparent url(../images/generic/heart-icon.png) no-repeat center left;
	text-decoration: none;
}

#packages a.packages:hover, #packages a.packages:active {
	color: #66CCFF;
	text-decoration: underline;
}

/* SEARCH RESULTS */

#result_report {
	padding:0 20px 10px 0;
	font-weight: bold;
	color: #003399;
	margin-bottom:14px;
}
	
#results{
	width: 425px;
}

#results a:link, #results a:visited {
	color: #003399;
}

#results a:hover, #results a:active {
	color: #66ccff;
}

.idented {
	color: #003399;
	margin-left:30px;
}

div.description {
	font-size: 12px;
	color: #003399;
	padding:0 20px 10px 10px;
}

#other_pages {
	color: #003399;
}

#heropanel { /* hero panel sits at bottom of maincontent */
	position: relative;
	width: 425px;
	height: 181px;
	background-image: url("../images/backgrounds/hero_panel_bg.png");
	background-position: top left;
	background-repeat: no-repeat;
}

#innerpanel {
	position: absolute;
	width: 366px;
	height: 148px;
	top: 14px;
	left: 22px;
}

#innerpanel h3 { /* image replacement */
	width: 366px;
	height: 55px;
	font-size: 0.8em;
	position: relative;
	color: #996666;
}

#innerpanel h3 img { /* image replacement */
	z-index: 1;
	position: absolute;
	top: 0;
	left: 0;
	width: 366px;
	height: 55px;
}

#innerpanel p {
	color: #996666;
	font-weight: bold;
	margin-left: 94px;
}

#innerpanel hr {
	height: 1px;
	border-style: dashed;
	border-width: 1px 0 0 0;
	border-color: #996666;
}

#innerpanel a:link, #innerpanel a:visited {
	color: #996666;
	font-weight: bold;
	text-decoration: none;
}

#innerpanel a:hover, #innerpanel a:active {
	color: #003399;
	font-weight: bold;
	text-decoration: underline;
}

#side-b { 
	background-image: url("../images/headers/header_right.png");
	background-position: top right;
	background-repeat: no-repeat;
	margin: 0;
	float: left;
	width: 415px;
	height: 10% /* Holly hack for peekaboo ie bug */
}

#crumbtrail { /* top right crumbtrail */
	font-size:11px;
	color: #996666;
	margin: 6px 0 0;
}

#crumbtrail a:link, #crumbtrail a:visited {
	font-size:11px;
	color: #996666;
	text-decoration: none;
}

#crumbtrail a:hover, #crumbtrail a:active {
	font-size:11px;
	color: #66CCFF;
}

#rightpanels { /* accordion and static menus */
	margin-right: 38px;
}

#rightsitemap {
	margin-top: 90px; /* keeps both content columns level */
}

.divider {
	margin-bottom: 10px;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color:  #996666;
	overflow: visible;
}

.copydivider {
	margin: 0 30px 10px 10px;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color:  #cccccc;
}

img.hearticon {
	margin-left: 180px;  /* center the image */
	margin-bottom:  -9px;  /* halfway over dashed line */
    z-index: 2;  /* display image on top of the other images */
}

#callout h3 { /* image replacement */
	width: 200px;
	height: 40px;
	font-size: 0.8em;
	position: relative;
	color: #996666;
	margin-left: 105px;
}

#callout h3.packages {
	width: 250px;
	margin-left: 0;
}

#callout div.description p {
	color: #996666;
	margin-left: 20px;
}

#callout h3 img { /* image replacement */
	z-index: 1;
	position: absolute;
	top: 0;
	left: 0;
	width: 250px;
	height: 40px;
}

#callout p {
	color: #996666;
	margin-left: 105px;
}

#callout a:link, #callout a:visited {
	color: #996666;
	font-weight: normal;
	text-decoration: none;
}

#callout a:hover, #callout a:active {
	color: #66CCFF;
	font-weight: normal;
	text-decoration: underline;
}

#accordion h3.toggler { /* accordion */
	width: 250px;
	height: 40px;
	font-size: 1.2em;
	position: relative;
	color: #996666;
	cursor: pointer;
	cursor: hand;
}

#accordion h3.toggler img {
	z-index: 1;
	position: absolute;
	top: 0;
	left: 0;
	width: 250px;
	height: 40px;
}

.element img {
	float: left;
}

.element p {
	padding-left: 20px;
	color: #996666;
}

.element ul {
	list-style-type: disc;
	color: #996666;
	padding-left: 12px;
}

.element a:link, .element a:visited {
	color: #996666;
	font-size: 11px;
	font-weight: normal;
	text-decoration: none;
}

.element a:hover, .element a:active {
	color: #66CCFF;
	font-size: 11px;
	font-weight: normal;
	text-decoration: underline;
}

p#contact {
	font-size: 14px;
	color: #FFFFFF;
	font-weight: bold;
	padding-bottom: 30px;
}

p#contact a:link {
	color: #FFFFFF;
}

p#contact a:hover {
	color: #003399;
}

label.reg, input.reg { /* contact & call back forms */
	display:block; 
	width:200px; 
	float:left; 
	margin-bottom:10px; 
	font-size:12px; 
	color:#003399;
}

label.reg {
	text-align:left; 
	width:180px; 
	padding-right:20px;
}

label.subscribe{
	margin: 0 0 10px 0;
	float: left;
	width: 390px;
	font-size:12px; 	
	color: #003399;
}

label.rad {
	float:left;
	text-align:left; 
	width:180px; 
	padding-right:20px;
	font-size:12px; 
	color:#003399;
}

input.rad {
	float:left; 
	margin-right:10px; 
	margin-bottom:10px;
	margin-left:0;
}

input.subscribe{
	margin: 0px;
	padding: 0px;	
	width: 20px;
}

input.message {
	display:block; 
	width:200px;
	height:100px; 
	float:left; 
	margin-bottom:10px; 
	font-size:12px; 
	color:#003399;
}

#submitbutton{
	margin-left:310px;
	margin-top: 5px;
	width: 90px;
}

p.reg {
	padding: 0 20px 10px 0;
}

p.regbold {
	padding: 0 20px 10px 0;
	font-weight: bold;
}

#search {
	padding: 5px 38px 40px 0;
}

#footer, .clear {
	clear: both; /* keeps footer under longest column at all times */	
}

#footer {
	width: 792px;
	height: 33px;
	margin-left: 170px;
}

.footertxt {
	font-size: 10px;
	color: #996666;
	line-height: 33px;
}

.footertxt a:link, .footertxt a:visited {
	font-size: 10px;
	color: #996666;
}

.footertxt a:hover, .footertxt a:active {
	font-size: 10px;
	color: #003399;
}
