
body {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 100%;
	padding: 0;
	margin:0;
	background: url(../images/bg.jpg);
}

/* ======== Text Styles ======== */

h1 {
	font-size: 137.5%;
	color: #B42364;
	padding:0 25px 0 25px;
}

h2 {
	color: #000;
	font-size: 100%;
	font-weight: lighter;
	padding:0 25px 0 25px;
	margin: 10px 0 0 0;
}

p{
	color: #695740;
	font-size: 75%;
	line-height: 16px;
	margin:10px 0 0 0;
	padding:0 25px 0 25px;
}

p a{
	color: #B42364;
	padding:0;
	text-decoration: none;
}

p a:hover{
	border-bottom: dotted 1px #B42364;
}

.smallTxt{
	font-size: 62.5%;
}

.italic{
	font-style: italic;
}

.red{
	color: #B42364;
}

/* ======== Main Layout ======== */

#horizon {
	
width: 100%;
	height:110px;
	background: url(../images/bg_horizon.png) repeat-x top;

}

#wrapper{
	width: 960px;
	margin: 0px auto;
}

#header{
	background: url(../images/rightColTopRtBack.png) no-repeat right top;
	height:150px;
}

.leftCol{
	clear:both;
	float:left;
	width:200px; /* Width = 274px - 74px for padding */
	margin:0 0 20px 0;
	padding:188px 28px 0 46px;
	/* background-color: aqua; */
	background: url(../images/topLogo.png) no-repeat;
}

.rightCol{
	float:right;
	width:686px;
	padding:0 0 15px 0px;
	margin:0 0 20px 0;
}

.charfooter{
	clear:both;
	padding:28px 25px 0 300px;
	min-height: 170px;
	background: url(../images/charFootBack.png) no-repeat;
}

.footer{
	display: block;
	font-size: 62.5%;
	color: #695740;
	height:20px;
	background: url(../images/footBack.png) no-repeat center top;
	padding:20px;
}

/* ======== Left Col ======== */

.leftCol span {
	color: #695740;
	display: block;
	padding: 0 0 5px 0;	
	margin: 0;
}

ul.leftNav {
	padding: 0 0 15px 0;	
	margin: 0;
	list-style: none;
}

ul.leftNav li a{
	font-size: 75%;
	display: block;
	padding:2px 2px 2px 15px;
	line-height: 14px;
	text-decoration: none;
	color: #695740;
	background: url(../images/quickNavFlower.png) no-repeat left top;
	margin:0 0 4px 0;
}

ul.leftNav li a:hover{
	color: #B42364;
	background: url(../images/quickNavFlower.png) no-repeat left -15px;
}

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

a.reqBooking{
	color:#695740;
	display: block;
	padding:30px 0 0 25px;
	width:179px;
	height:58px;
	background: url(../images/requestBooking.png) no-repeat;
	text-decoration: none;
}

a:hover.reqBooking{
	color:#B42364;
}

a.bacc_member{
	color:#695740;
	display: block;
	padding:30px 0 0 25px;
	width:179px;
	height:125px;
	background: url(../images/btn_bacc-about.png) no-repeat;
	text-decoration: none;
}

a:hover.bacc_member{
	text-decoration: none;
}


a.rchm_member{
	color:#695740;
	display: block;
	padding:30px 0 0 25px;
	width:179px;
	height:160px;
	background: url(../images/btn-rchm-about.png) no-repeat;
	text-decoration: none;
}

a:hover.rchm_member{
	text-decoration: none;
}

.leftNewsArticle{
	margin:0 0 15px 0;
}

.leftNews h1{
	padding:0;
}

.leftNews p{
	padding:0;
}

.leftNewsArticle h2{
	padding:0;
}

.leftNewsArticle p{
	margin: 5px 0 5px 0;
}



.leftNewsArticle a{
	font-size: 75%;
	color: #B42364;
	text-decoration: none;
}

.leftNewsArticle a:hover{
	border-bottom: dotted 1px #B42364;
}

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

.longLife{
	color:#695740;
	display: block;
	width:179px;
	height:150px;
	background: url(../images/longLife.png) no-repeat center top;
}

/* ======== Right Col ======== */


ul.topSmallnav {
	list-style: none;
	text-align: center;
	padding: 0 0 0 7px;	
	margin: 0;
	width:200px;
	height:24px;
	float: right;
	font-size: 68.8%;
	background: url(../images/topSmallNavBack.png) no-repeat;
}

ul.topSmallnav li {
	margin: 0;	
	padding: 0;
	float: left;
}

ul.topSmallnav li a{
	padding: 5px 4px 0 4px;
	text-align: center;
	color: #695740;
	display: block;
	text-decoration: none;
	height:19px;
}

ul.topSmallnav li a:hover{
	color: #B42364;
}

ul.topSmallnav li a.selected{
	color: #B42364;
}

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

ul.topnav {
	list-style: none;
	margin: 0 0 0 0;
	padding:61px 0 0 0;
	height:53px;
	/* float: right; */
	font-size: 81.3%;
	clear:right;
	z-index: 300;
}
ul.topnav li {
	float: left;
	margin: 0;	
	padding: 0;
	position: relative;

}

ul.topnav li a{
	padding:19px 0 0 0;
	text-align: center;
	color: #B42364;
	display: block;
	text-decoration: none;
	/* float: left; */
	height:34px;
	background: url(../images/topNavBack.png) -150px bottom no-repeat;
	/* background-position:-150px bottom; */
}
ul.topnav li a:hover{
	color: #FFF;
	background: url(../images/topNavBack.png) -150px top no-repeat;
}
ul.topnav li a.selected{
	color: #FFF;
	background: url(../images/topNavBack.png) -150px top no-repeat;
}



ul.topnav li.home a {
	padding-left: 4px;
	width:71px;
	background: url(../images/topNavBack.png) left bottom no-repeat;
}
ul.topnav li.home a:hover {
	color: #FFF;
	background: url(../images/topNavBack.png) left top no-repeat;
}
ul.topnav li.home a.selected {
	color: #FFF;
	background: url(../images/topNavBack.png) left top no-repeat;
}


ul.topnav li.contact a {
	padding-right: 4px;
	width:71px;
	background: url(../images/topNavBack.png) right bottom no-repeat;
}
ul.topnav li.contact a:hover {
	color: #FFF;
	background: url(../images/topNavBack.png) right top no-repeat;
}
ul.topnav li.contact a.selected {
	color: #FFF;
	background: url(../images/topNavBack.png) right top no-repeat;
}


ul.topnav li.charlotte a{
	width: 120px;
}
ul.topnav li.acupuncture a{
	width: 100px;
}
ul.topnav li.herbal a{
	width: 120px;
}ul.topnav li.conditions a{
	width: 134px;
}
ul.topnav li.prices a{
	width: 62px;
}


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

ul.topnav li ul.subnav {
	font-size: 85%;
	list-style: none;
	position: absolute; 
	left: 0px; 
	top: 50px;
	background: url(../images/subNavBack.png) no-repeat center bottom;
	margin: 0;
	margin-left: -4px;
	padding: 0 0 15px 0;
	display: none;
	float: left;
	width: 178px;
	z-index: 350;
}
ul.topnav li ul.subnav li{
	margin: 0; 
	padding: 0 10px 0 2px;
	clear: both;
}

ul.topnav li ul.subnav li span{
	display:block;
	height:10px;
	width:170px;
	margin-left: 2px;
	background: url(../images/dropMenuShadow.png) repeat-x;
}

html ul.topnav li ul.subnav li a {
	padding:5px 0 5px 0;
	color: #695740;
	float: left;
	text-align: left;
	width: 149px;
	background: none;
	padding-left: 5px;
	margin-left: 10px;
	/* margin-right: 5px; */
	height:auto;
}

html ul.topnav li ul.subnav li a:hover {
	color: #FFF;
	background: #B42364;
}
html ul.topnav li ul.subnav li a.selected {
	color: #FFF;
	background: #B42364;
}

.topLevelGen{
	width:686px;
	height:195px;
	position: absolute;
	z-index: 100;
	background: url(../images/genImageFrame.png) no-repeat;
}

.rightCol ul{
	color: #695740;
	font-size: 75%;
	line-height: 16px;
	padding:0;
	margin:10px 0 0 25px;
	list-style: disc;
	list-style-position: inside;
}

/* price table
-----------------------*/

table.list-table {
	font-size: 75%;
	color: #695740;
	border-collapse:collapse;
	width:637px;
	border: 1px dashed #C1BCAF;
	margin-top: 15px;
	margin-left:25px;
}

table.list-table th, td {
	padding: 0.5em 0.5em;
}

.wide{
	width:500px;
}

table.list-table thead {
	color: #000;
	text-align: left;
	background: url(../images/tableHeadBack.png);
	border-bottom: 1px dashed #C1BCAF;
	font-weight:bold;
}

.even-row {
	background: none;
}

.odd-row {
	background: url(../images/tableEvenBack.png);
	/* background-color:#fff; */
}

.hl-row {
	background-color:#C1BCAF;
}

td.row {
	border-right: 1px #C1BCAF dashed;
}

td.row-end  {
	border-right: none;
}

/* ======== Footers ======== */


.topImage {
	padding: 25px 0 0 0;
	margin: 0;
	width:686px;
	height:130px;
}

.charfooter p{
	margin:0;
	color: #B42364;
}


#greynoise{
	display: block;
	float: right;
}
#greynoise a{
	color: #695740;
	text-decoration: none;
}
#greynoise a:hover{
	color: #B42364;
	/* text-decoration: underline; */
	border-bottom: dotted 1px #B42364;
}


/* ======== Forms ======== */


.defaultForm{
	margin: 10px 0 10px 0;
}

.defaultForm fieldset {
	margin:0 0 3em 0;
 	padding:0;
 	border:none;

}

.defaultForm legend {
	display: none;

}

.defaultForm p{
	clear:both;
}

.defaultForm label{
	display:block;
	float: left;
	width:180px;
	font-weight: bold;
}

.labelMargin{
	margin-left:180px;
}

.defaultForm input[type="text"]{
	width:250px;
}

.defaultForm input[type="file"]{
	/* width:200px; //dont use. This breaks in firefox if there's text after the box */
}

.defaultForm textarea{
	width:250px;
}
.defaultForm select{
	width:250px;
}

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

.formError{
	display: block;
	color:#F27C20;
	/* background: #F27C20 url(../images/errorTag.jpg) left no-repeat; */
	margin:.5em 0 .5em 0;
	margin-left:180px;
}

.formErrorMsg{
	font-size: 75%;
	display: block;
	background:#FFFDDA url(../images/warning.png) 5px no-repeat;
	color:#F27C20;
	text-align: left;
	padding:10px 10px 10px 35px;
	margin:10px 25px 10px 25px;
	border: #FEE363 solid 1px;
	clear:both;
}

.formOKMsg{
	background:#E1FFD1 url(../images/formOKMsg.jpg) 10px no-repeat;
	color:#468D3F;
	text-align: left;
	padding:10px 10px 10px 35px;
	margin:0 0 10px 0;
	border: #C5F8AC solid 1px;
	clear:both;
}

/* ======== Misc ======== */

sup {
	font-size:xx-small; 
	vertical-align:top;
}

.floatRight{
	float:right;
	margin: 0 0 0 20px;
}
.floatLeft{
	float:left;
	margin: 0 20px 0 0;
}
