body,
div, span, p, a, 
h1, h2, h3, h4, h5, h6,
ul, li,
table, tbody, th, tr, td {
	margin: 0;
	padding: 0;
	line-height: 1;
	border: 0;
	list-style: none;
}

form, input {
	margin: 0;
	padding: 0;
}

img {
	border: 0;
}

.break {
	clear: both;
	height: 1px;
	overflow: hidden;
}

body {
	background-color: #8cc6ed;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #333333;
}

h1 {
	margin-bottom: 12px;
	color: #333333;
	font-size: 18px;
}

p {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	line-height: 16px;
}

a {
	text-decoration: none;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #2077ba;
}

a:hover {
	text-decoration: underline;
}

ul.with-bullets li {
	padding: 4px 0;
	margin-left: 25px;
	list-style: disc;
}

#container {
	width: 928px;
	margin: 0 auto;
	padding: 0 15px;
	background: #FFFFFF;
}

#header {
	width: 928px;
	height: 298px;
	background: url(images/header-bg.png) no-repeat left top;
}

#menu {
	width: 911px;
	padding-top: 11px;
	margin: 0 auto; 
}

#menu ul {
	height: 41px;
	background: url(images/menu-bg.png) no-repeat left top;
}

#menu ul li {
	height: 25px;
	padding: 16px 7px 0;
	background: url(images/menu-spacer.png) no-repeat right top;
	float: left;
}

#menu ul li.last {
	background: none;
}

#menu ul li a {
	text-decoration: none;
	color: #FFFFFF;
	font-size: 12px;
	font-weight: bold;
}

#menu ul li a:hover {
	text-decoration: underline;
}

#header #search {
	margin: 198px 14px 0 0;
	float: right;
	display: inline;
}

#header #search form input {
	float: left;
}

#header #search form input.text {
	width: 210px;
	height: 13px;
	padding: 4px;
	margin-right: 10px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #666666;
}

#header #logo {
	margin: 26px 0 0 52px;
	float: left;
	display: inline;
}

#header #logo a {
	width: 261px;
	height: 186px;
	display: block;
}

#content {
	padding: 13px 0;
}

#footer {
	width: 928px;
	margin: 0 auto 53px;
	padding: 0 15px;
	background: url(images/footer-bg-bottom.png) no-repeat left bottom #FFFFFF;
	overflow: hidden;
}

#footer .images {
	padding-bottom: 10px;
	float: right;
}

#footer .images img {
	margin-right: 51px;
	float: left;
}

#footer .images img.left {
	padding-top: 11px;
}

#footer .images img.right {
	margin-right: 0;
}

#footer .links {
	width: 360px;
	margin-top: 16px;
	color: #0a4982;
}

#footer .links ul {
	width: 346px;
}

#footer .links li {
	margin-right: 9px;
	padding: 2px 0;
	float: left;
	color: #333333;
}

#footer .links .li.end {
	margin-right: 0;
}

#footer .links li a {
	color: #333333;
}

/*---- HOMEPAGE ---*/
#content .left {
	width: 610px;
	height: 593px;
	margin: 0 13px 15px 0;
	float: left;
	display: inline;
	overflow: hidden;
}

#content .right {
	width: 305px;
	height: 593px;
	margin-bottom: 15px;
	float: left;
	overflow: hidden;
}

/*- LEFT -*/
#fun-starts-here {
	width: 610px;
	height: 125px;
	margin-bottom: 16px;
	padding: 52px 0 0 18px;
	background: url(images/hp-fun-bg.png) no-repeat left top; 
}

#fun-starts-here p {
	width: 346px;
	color: #FFFFFF;
	font-weight: bold;
	line-height: 20px;
}

#flash {
	width: 610px;
	height: 400px;
}

/*- RIGHT -*/
#newsletter {
	width: 230px;
	height: 40px;
	margin-bottom: 14px;
	padding: 65px 0 0 75px;
	background: url(images/hp-newsletter-bg.png) no-repeat left top;
}

#newsletter form input {
	float: left;
}

#newsletter form input.text {
	width: 165px;
	height: 13px;
	padding: 4px;
	margin-right: 10px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #999999;
}

#special-offers {
	width: 305px;
	height: 196px;
	margin-bottom: 16px;
	padding: 0 0 0 0;
	background: url(images/hp-special-offers-bg.png) no-repeat left top;
}

#special-offers .detail {
	height: 109px;
	padding: 8px 0 0 20px;
}

#special-offers .detail h3,
#special-offers .detail h3 a {
	margin: 14px 0 4px;
	color: #FFFFFF;
	font-size: 16px;
}

#special-offers .detail a.more {
	font-weight: bold;
	color: #380c46;
}

#special-offers .navigation {
	padding: 7px 0 0 20px;
}

#special-offers .navigation img.next {
	margin-right: 20px;
	float: right;
}

#latest-news {
	width: 305px;
	height: 262px; 
	background: url(images/hp-latest-news-bg.png) no-repeat left top;
}

#latest-news .listing {
	height: 172px; 
	padding-top: 2px;
	padding-left: 20px;
	color: #FFFFFF;
}

#latest-news .listing .article {
	clear: both;
	padding-bottom: 14px;
}

#latest-news .listing .article.last {
	margin-bottom: 0;
}

#latest-news .listing .article img {
	margin: 0 15px 0 10px; 
	border: 1px solid #FFFFFF;
	float: right;
	display: inline;
}

#latest-news .listing .article h4 {
	font-size: 14px;
}

#latest-news .listing .article p {
	font-size: 14px;
	line-height: 16px;
}

#latest-news .listing .article a {
	margin-top: 4px;
	color: #FFFFFF;
	font-weight: bold;
	display: block;
}

#latest-news a.more {
	margin: 4px 0 0 20px;
	display: block;
}

.attraction {
	height: 248px;
	margin: 0 14px 15px 0;
	float: left;
}

.attraction.last {
	margin-right: 0;
}

.attraction img {
	float: right;
}

#visitor-attractions {
	width: 299px;
}
  
#virtual-tours {
	width: 296px;
}
  
#events {
	width: 305px;
}

#hp-sub-footer img {
	float: left;
}

#hp-sub-footer img.advert-left {
	margin-right: 12px;
}

/*---- CONTENT ----*/
a.return {
	margin: 20px 20px 0 0;
	float: right;
	color: #FFFFFF;
	display: inline;
}

#content-header-default {
	width: 928px;
	height: 48px;
	background: url(images/header-default.png) no-repeat left top;
}

#content-header-default h1 {
	padding: 14px 0 0 21px;
	font-family: "Times New Roman", Times, serif;
	font-size: 22px;
	color: #FFFFFF;
}

#mainbody {
	width: 886px;
	padding: 12px 20px 20px;
	border-left: 1px solid #CCCCCC;
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	overflow: hidden;
}

#mainbody p {
	margin-bottom: 10px;	
}

#mainbody p a {
	color: #2077ba;
	text-decoration: none;
}

#mainbody p a:hover {
	text-decoration: underline;
}

#mainbody a {
	color: #333333;
}

/*---- LISTING ----*/
.listing {
	overflow: hidden;
}

.listing .item {
	width: 269px;
	margin: 0 38px 20px 0;
	padding-bottom: 15px;
	color: #666666;
	float: left;
	border-bottom: 1px solid #CFCFCF;
}

.listing .item.end {
	margin-right: 0;
}

.listing .item .item-container {
	height: 125px;
}

.listing .item img {
	float: right;
	border: 1px solid #CFCFCF;
}

.listing .item h2,
.listing .item h2 a {
	color: #666666;
	font-size: 14px;
	line-height: 16px;
}

.listing .item .description p {
	height: 76px;
	line-height: 16px;
}

.listing .item a.more {
	color: #666666;
}

/*---- DETAIL ----*/
#right-col {
	width: 305px;
	margin-left: 20px;
	margin-bottom: 25px;
	float: right;
}

#right-col.border {
	
}

#right-col img {
	border: 1px solid #CCCCCC;
	margin-bottom: 15px;
}

#contact-details {
	width: 305px;
	float: right;
}

#contact-details p {
	margin-bottom: 2px;
	line-height: 16px;
}

#contact-details .telephone {
	padding: 4px 0 3px 24px;
	background: url(images/ico_telephone.png) no-repeat left center;
}

#contact-details .email {
	padding: 4px 0 3px 24px;
	background: url(images/ico_email.png) no-repeat left center;
}

#contact-details .website {
	padding: 4px 0 3px 24px;
	background: url(images/ico_website.png) no-repeat left center;
}

#map {
	width: 305px;
	height: 305px;
	margin-bottom: 15px;
	border: 1px solid #cccccc;
}


/*---- VISITOR ATTRACTIONS ----*/
#content-header-visitor-attractions {
	width: 928px;
	height: 48px;
	background: url(images/header-visitor-attractions.png) no-repeat left top;
}

#content-header-visitor-attractions a.return {
	margin: 20px 20px 0 0;
	float: right;
	color: #FFFFFF;
	display: inline;
}

#attraction-tours {
	width: 540px;
	margin-top: 40px;
	padding-top: 40px;
	background: url(images/360-virtual-tours.png) no-repeat left top;
}

#attraction-tours img {
	margin-right: 6px;
	margin-bottom: 15px;
	border: 1px solid #999999;
}

#attraction-tours img.last {
	margin-right: 0;
}

#attraction-gallery {
	margin-top: 25px;
}

#attraction-gallery h2 {
	font-size: 22px;
	font-family: "Times New Roman", Times, serif;
	color: #621a9b;
}

#attraction-gallery img {
	margin-right: 8px;
	margin-bottom: 15px;
	border: 1px solid #999999;
}

#attraction-gallery img.last {
	margin-right: 0;
}	

/*---- MEMBERS AREA ----*/
#content-header-members-area {
	height: 30px;
	width: 918px;
	background: url(images/header-members-area.png) no-repeat left top;
	padding: 18px 10px 0 0;
	text-align: right;
	color: #FFFFFF;
	font-size: 14px;
	font-weight: bold;
}

#content-header-members-area a {
	color: #FFFFFF;
	font-size: 14px;
	font-weight: bold;
}

#mainbody.members-area h2 {
	font-size: 16px;
	margin-bottom: 4px;
}

#mainbody.members-area a {
	color: #016aae;
}

#mainbody.members-area #right-col #offers {
	margin-bottom: 25px;
	line-height: 16px;
}

#mainbody.members-area #right-col #stats,
.stats-page {
	line-height: 14px;
}

form .row {
	padding: 8px 0;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 2px;
	margin-left: 0px;
	clear:both;
	font-size:12px;
}

form .row label {
	width: 120px;
	float: left;
	text-align: right;
	margin-right: 15px;
	display: block;
	text-transform: capitalize;
	font-size: 12px;
	font-weight: bolder;
	color: #666666;
	line-height: 24px;
	clear: left;
}

form .row span.padding-top {
	padding-top: 6px;
	display: block;
}

form .row input {
	float:left;
}

form .row input.inputbox {
	width: 300px;
	border: 1px solid #CCCCCC;
	padding: 3px;
	margin:0;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	float:left;
}

form .row textarea.textareabox {
	float:left;
	height:400px;
}

#errors ul li {
	margin-top: 6px;
	font-weight: bold;
}

table#attraction-detail tr td {
	padding: 5px 0;
}

/*---- STATS PAGE ----*/
.stats-page h3 {
	margin-top: 10px;
	margin-bottom: 5px;
	font-size: 14px;
}

.stats-page #attraction-stats {
	float: left;
	width: 400px;
}

.stats-page #offers-stats {
	float: left;
	width: 400px;
	line-height: 16px;
}

/*---- SPECIAL OFFERS ----*/
#content-header-special-offers {
	width: 928px;
	height: 48px;
	background: url(images/header-special-offers.png) no-repeat left top;
}

/*---- NEWS ----*/
#content-header-latest-news {
	width: 928px;
	height: 48px;
	background: url(images/header-latest-news.png) no-repeat left top;
}

#news.listing {
	margin-top: 25px;
}

#news.listing .item {
	width: 420px;
}

#news.listing .item p.date {
	margin-bottom: 0;
}

/*- PAGING STYLING -*/
.pageidx-nav {
	width: 520px;
	margin: 15px auto;
	font-size: 12px;
}

.pageidx-nav .pageidx-prev {
	float:left;
	width:60px;
}

.pageidx-nav .pageidx-nos {
	float:left;
	text-align:center;
	width:400px;
}

.pageidx-nav .pageidx-next {
	width:60px;
	float:left;
	text-align:right;
}

#other-news {
	
}

#other-news h2 {
	font-size: 14px;
	margin: 5px 0;
}

#other-news .item {
	margin-bottom: 15px;
}

#other-news .item h3,
#other-news .item h3 a {
	font-size: 12px;
	color: #666666;
}

#other-news .item p {
}

#other-news .item p.date {
	margin-bottom: 0;
}

#other-news .item a {
	color: #333333;
}

/*---- CONTACT US ----*/
form .row textarea#frm_query {
	height: 150px;
	width: 320px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #000000;
}

form .row input.checkbox {
	margin: 0;
	padding: 0;
}

form .row div.checkbox-text {
	width: 400px;
	margin-left: 4px;
	*padding-top: 4px; /* Astrix implements style for IE7 and below only */
	float: left;
	display: inline;
}

/*---- VIRTUAL TOURS ----*/
#content-header-virtual-tours {
	width: 928px;
	height: 48px;
	background: url(images/header-virtual-tours.png) no-repeat left top;
}

#tours-listing {
	width: 885px;
	margin-top: 30px;
}

#tours-listing h2 {
	margin-bottom: 8px;
	font-size: 16px;
}

#tours-listing .item {
	margin-bottom: 30px;
	float: left;
}

#tours-listing .item img {
	margin-right: 22px;
	margin-bottom: 15px;
	border: 1px solid #999999;
}

#tours-listing .item img.end {
	margin-right: 0;
}

/*---- MODAL OVERLAY FORM ----*/
form#formLogin,
form#formRegister {
	margin: 20px 0;
}

form#formLogin fieldset,
form#formRegister fieldset {
	margin-bottom: 15px;
	padding: 10px 0 15px;
}

form#formLogin fieldset legend,
form#formRegister fieldset legend {
	font-size: 14px;
	font-weight: bold;
	line-height: 16px;
}

div.modal-errors {
	margin: 8px 0;
	font-weight: bold;
}

div.modal-errors ul li {
	list-style: disc;
	margin-left: 20px;
	line-height: 18px;
}

/*---- PRESS ----*/
#mainbody.press .item {
	width: 410px;
	margin: 0 60px 25px 0;
	float: left;
}

#mainbody.press .item.end {
	margin-right: 0;
}

#mainbody.press h2 {
	margin-bottom: 4px;
	color: #333333;
	font-size: 16px;
}

#mainbody.press a {
	color: #2077ba;
}

/*---- NEWSLETTER ----*/
#newsletter-signup form input.text {
	margin: 0;
	padding: 4px;
	border: 1px solid #999999;
}

#newsletter-signup form input.button {
	margin-top: 4px;
}

/*---- SIGN IN ----*/
#login {
	width: 425px;
	float: left;
}

#register {
	width: 425px;
	padding-left: 25px;
	float: left;
	border-left: 1px solid #CCCCCC;
}

#login form input.text,
#register form input.text {
	padding: 4px;
	border: 1px solid #CCCCCC;
}

#register span {
	color: #666666;
}

/* VOUCHERS SYSTEM */

#vouchers-table{
	font-size:14px;
	
}

.vouchers-long{
	width:885px;
}

#vouchers-table th{
	text-align:left;
	color:#FFFFFF;
	padding:5px;
	background-image:url(images/header-default.png);
	background-position:5px 34px;
	height:20px;
	overflow:hidden;	
}

#vouchers-table td{
	text-align:left;
	padding:5px;	
}

#vouchers-table .title{
	padding:3px 0 7px 0;
	color:#336699;
	font-weight:bold;
}

#vouchers-table .desc{
	padding-right:20px;
	border-bottom:1px dotted #CCCCCC;
}

#vouchers-table .price{
	width:70px;
	font-weight:bold;
	border-bottom:1px dotted #CCCCCC;
}

#vouchers-table .quantity{
	width:60px;
	border-bottom:1px dotted #CCCCCC;
}

#vouchers-table .quantity-input{
	width:40px;
}

#vouchers-table .total{
	width:70px;
	font-weight:bold;
	border-bottom:1px dotted #CCCCCC;
}

#vouchers-table .gtotal-t{
	font-size:16px;
	color:#333333;
}

#vouchers-table .gtotal-p{
	font-size:16px;
	font-weight:bold;
}

#vouchers-table .alignright{
	text-align:right;
	padding-right:20px;
}

.voucher-details-col{
	float:left;
	width:400px;
	padding-right:20px;
}

.voucher-details-col .row{
	height:22px;
	display:block;
	clear:both;
}

.voucher-details-col .small{
	font-size:10px;
	font-weight:bold;
	color:#333333;
	padding-left:10px;
	display:inline-block;
	line-height:16px;
}

.voucher-details-col .row label{
	width:150px;
	line-height:16px;
}

.voucher-details-col .row input{
	width:200px;
	background-color:#f5f5f5;
	border:1px solid #CCCCCC;
	padding:2px;
}

.inactive .row label{
	color:#CCCCCC;
}

.inactive .row input{
	border:1px dotted #dddddd;
	background-color:#fcfcfc;
}

.inactive .asterisk{
	color:#cccccc;
}	

.asterisk{
	color:#CC0000;
	font-weight:bold;
	font-size:16px;
	display:inline-block;
	padding-right:5px;
	vertical-align:bottom;
	height:10px;
}

h3.payment{
	color:#336699;
	padding:2px 0 5px 0;
}

p.payment{
	font-size:14px;
	padding:2px 0 10px 0;
}

.payment-tickbox{
	display:block;
	float:left;
	margin-right:10px;
	height:30px;
	padding-top:4px;
}

.voucher-message{
	border:1px solid #F4E0C6;
	background-color:#FDEFEA;
	padding:15px;
	margin:15px 0 15px 0;
	font-size:14px;
	font-weight:bold;
}

.voucher-message ul{
	list-style:circle;
}

.voucher-message li{
	list-style:circle;
	padding-left:10px;
	margin-left:15px;
	margin-top:8px;
	color:#990000;
	font-weight:normal;
}

/*---- FORGOTTEN PASSWORD ----*/
a.forgotten {
	margin: 6px 0 0 136px;
	display: block;
	clear: both;
	float: left;
	font-size: 10px;
	color: #666;
}

#login.forgotten label {
	width: 180px;
}