html{
	background-color:#ffffff;
}

/* start general styles from the body tag */
body{
	margin:0px;
	background-color:#225364;
	font-family:Arial;
	font-size:16px;
}

/* link styling */
a{
	color: #FF6534;
}
a:hover{
	color:#890103;
}
/* different link colours when on green header and footer */
#topPanel a, #footer a{
	color:#ffffff;
	text-decoration:none;
}
#topPanel a:hover, #footer a:hover{
	color:#F3CB2E;
}

.clearFloat{	/* useful class for after floated content */
	clear:both;
	font-size:1px;
	line-height:1px;
	height:1px;
	overflow:hidden;
}

#pageTopBgStrip{	/* top green strip of full page width */
	width:100%;
	height:190px;
	background-color:#387a90;
}
#pageContentBgStrip{	/* near white background colour of page beneath header down to footers */
	background-color:#FBFBFB;
}

#topPanel{	/* centered fixed with container for the header and top level menu */
	position:relative;
	top:-190px;	/* this margin moves header up to be over green background of #pageTopBgStrip */
	width:980px;
	margin-left:auto;
	margin-right:auto;
	height:56px;
}
#header{	/* this fills main area of the header ensuring header bg continues even in narrow screens with horiz. scroll.*/
	position:absolute;
	z-index:2;
	top:0px;
	left:-260px;	/* negative left allows logo gradient to extend out for wide screens while not pushing content over and causing excessive scroll for narrow screens */
	width:1314px;
	height:190px;
	background-color:#387a90;
}
#logoExt{	/* the logo gradient from image in #header above wants to extend down to the left of the menu. the bg of this div provides the gradient to the left of the menu */
	position:absolute;
	z-index:3;
	left:-260px;
	top:149px;
	width:233px;
	height:41px;
	background-image:url('../imgs/logo-bg-ext.jpg');
}
#stars{	/* provides background image to the right of the header of stars */
	position:absolute;
	z-index:3;
	left:699px;
	top:0px;
	width:352px;
	height:193px;
	background-image:url(../imgs/header-stars.png);
}

/* phone contact details shown in the header */
#phonePic{
	position:absolute;
	z-index:3;
	left:561px;
	top:60px;
	width: 34px;
	height: 54px;
	background-image:url(../imgs/phone.jpg);
}
#phoneNumLabel{
	position:absolute;
	z-index:3;
	left:356px;
	top:62px;
	font-family:Arial;
	font-size:14px;
	color:#ffffff;
	text-shadow :#234753 3px 3px 2px;
}
#phoneNum{
	position:absolute;
	z-index:3;
	left:356px;
	top:80px;
	font-family:Arial;
	font-weight:bold;
	font-size:31px;
	color:#ffffff;
	text-shadow :#234753 2px 2px 2px;
}

#menuShadow{ /* this is the bottom layer of the menu. It provides a light shadow seen around the bottom half of the menu. Bottom 40px pokes out from beneath #header */
	position:absolute;
	z-index:1;
	left:-27px;
	top:149px;
	width:1028px;
	height:81px;
	-webkit-box-shadow: 0 0 5px #CCCCCC;
	-moz-box-shadow: 0 0 5px #CCCCCC;
	box-shadow: 0 0 5px #CCCCCC;
}
#menuCont{ /* the menu container sits in the same place as the #menuShadow above, just on a higher z-index so the menu shows above #header which the shadow goes beneath */
	position:absolute;
	z-index:3;
	left:-27px;
	top:149px;
	width:1028px;
	height:81px;
	background-color:#ffffff;
}
#menuCont ul{ /* the top level menu is an unordered list */
	float:left;
	list-style: none;
	margin:0px;
	padding:0px;
	margin-left:80px; /* TODO: use this left when get proper ostralos top level menu text */
	margin-left:50px;
	margin-top:25px;
	border-left: dashed 1px #8C8C8C;
}
#menuCont li{ /* top level menu is horizontal with a dashed line between each menu item */
	float:left;
	border-right: dashed 1px #8C8C8C;
}
#menuCont a, #menuCont span.active{
	display:block;
	margin-left:2px;
	margin-right:2px;
	padding: 8px 29px 8px 30px; /* top right bottom left */
	text-decoration:none;
	font-weight:bold;
}
#menuCont span.active{	/* green background of menu item for current page shown */
	background-color:#4197B0;
	color:#ffffff;
}
#menuCont a.active{	/* green background of menu item for link to top level page of current page shown */
	background-color:#4197B0;
	color:#000000;
}
#menuCont a{	/* white background for most links in the menu */
	background-color:#ffffff;
	color:#000000;
}
#menuCont a:hover{	/* green background on hover of menu links, keep same text same yellow on hover as rest of header and footer links */
	background-color:#4197B0;
	color:#F3CB2E;
}

/* account buttons shown in the header; login, my account, etc... */
#accountButtonsCont{
	position:absolute;
	z-index:3;
	left:817px;
	top:17px;
	font-family:Arial;
	color:#ffffff;
	font-size:14px;
	font-weight:bold;
}

.lognContPos{	/* popup dialog for login */
	position:absolute;
	top:20px !important;
}
.lognContPos .ui-dialog-titlebar{ /* nice green title bar for dialog */
	background-color:#32829B;
	background-image:none;
}
.lognRow{ /* space between email and password rows */
	padding-bottom:12px;
}
#lognNameLabel{
	padding-right:42px;	/* keep name and password text boxes starting about same left pos */
}
#lognPassLabel{
	padding-right:12px;	/* keep name and password text boxes starting about same left pos */
}
#lognName, #lognPass{
	width:170px;
}
#lognButton{
	float:right;
	margin-right:20px;
}

/* summary of the shopping cart on the right hand side of the header. This expands/collapses to show a listing of the cart. */
#cartSummary{ /* the container, fixed width, height expands when cart items are shown */
	position:absolute;
	z-index:3;
	left:642px;
	top:71px;
	width: 334px;
	min-height: 38px;
	background-color:#ffffff;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-shadow: 0 0 3px #333333;
	-moz-box-shadow: 0 0 3px #333333;
	box-shadow: 0 0 3px #333333;
}

/* styling of cart summary */
#cartItemsLabel,  #cartItemsValue, #cartItemsPrice{ 
	display:inline-block;
	padding-top:7px;
	vertical-align:middle;
}
#cartItemsLabel{
	color:#666666;
	font-size:14px;
	padding-left:12px;
}
#cartItemsValue{
	color:#333333;
	font-size:14px;
	font-weight:bold;
}
#cartItemsPrice{
	color:#333333;
	font-size:22px;
	padding-left:4px;
	text-align:center;
}
#viewCartButtonCont{
	position:absolute;
	top:6px;
	right:95px;
}
#checkoutCartButtonCont{
	position:absolute;
	top:6px;
	right:5px;
}
#viewCartButtonCont button span, #checkoutCartButtonCont button span, #cartButtons button span{
	padding: 4px 8px;
	font-size:12px;
}

/* expanded listing of shopping cart */
#shoppingCart{ /* expanded listing is not shown when page first loads */
	height:0px;
	overflow:hidden;
}
#shoppingCart .button{ /* keep the buttons from becomming to large */
	font-size:12px;
}
#cartContents{ /* container of adding an item by code, and the iframe showing listing of cart items */
	width:184px;
	margin-left:auto;
	margin-right:auto;
	padding-top:10px;
	padding-left:6px;
}
#cartContents table { /* keep table in layout from having uneccessary spacing */
	border-collapse:collapse;
}
#cartContents td {
	padding:0px;
	border:none;
}
#cartFrame{
	border:none;
	overflow:hidden;
	margin:0px;
	width:182px;
}
#cartButtons{
	margin-left:-6px; /* offset left padding of #cartContents so that buttons are centered */
	text-align:center;
	padding-bottom:20px;
}
#cartLabelMain{
	color:#51899D;
	font-weight:bold;
	font-size:16px;
	margin-top:16px;
	margin-left:16px;
}
#cartLabelCode, #cartLabelQty{
	color:#AEAEAE;
}
#addProdCode{
	width:97px;
}
#addProdQty{
	width:32px;
	margin-left:2px;
}
#addProdBtn{
	width:50px;
	margin-left:2px;
}
#btnChange{
	margin-left:16px;
}
#btnCheckout{
	margin-left:18px;
}


#mainPanel{ /* main area of the page that contains the content */
	width:980px;
	margin-left:auto;
	margin-right:auto;
}
#mainPanelLayout { /* keep table in layout from having uneccessary spacing */
	border-collapse:collapse;
}
#mainPanelLayout td {
	padding:0px;
	border:none;
}

#brandsPanel{ /* advertising strip at base of page containing Osteobiol and cibei */
	background-color:#F3F4F6;
	padding-top:12px;
	padding-bottom:12px;
	text-align:center;
}

#footerPanel{ /* very bottom page content of copyright, terms, privacy, address */
	color:#ffffff;
}
#footer{
	position:relative;
	width:980px;
	height:77px;
	margin-left:auto;
	margin-right:auto;
}
#footerAbs{
	position:absolute;
	left:0px;
	top:0px;
	width:1054px;
	height:57px;
	background-color:#225364;
	padding-top:20px;
}
#footerRow1{
	padding-bottom:20px;
	margin-bottom:20px;
	margin-right:74px;
	background-image:url(../imgs/footer-line.gif);
	background-position:bottom left;
	background-repeat:repeat-x;
}
#footer div{
	font-size:12px;
}
#terms{
	float:right;
}
#privacy{
	float:right;
	border-right:solid 1px #ffffff;
	padding-right:8px;
	margin-right:8px;
}
#footerGTS{
	padding-left:120px;
	font-size:12px;
}
#footer div #footerAddressTitle{
	font-weight:bold;
	font-size:18px;
	padding-bottom:8px;
}
#footer div .footerAddress{
	float:left;
	width:240px;
	color:#8FB7C3;
	font-size:13px;
	font-weight:bold;
}



#page{
	margin-right:24px;
}
#content{
	padding-left:35px;
	line-height:18px;
	color:#666666;
}
#newsCont{
	width:194px;
	float:left;
	margin-left:10px;
	margin-top:-40px;
	background-image:url(/imgs/news.bg.jpg);
	background-repeat:repeat-y;
}
#newsHeader{
	border-bottom:solid 1px #ffffff;
}
.newsItem{
	padding-top:20px;
	padding-left:15px;
	padding-right:5px;
	color:#666666;
}
.newsItem div, .newsItem strong{
	font-size:11px;
}



/* left hand menu */
#lhsMenu{
	width:200px;
	float:left;
	padding-top:20px;
	padding-bottom:20px;
	background-color:#E1E1E1;
}
#lhsMenu span, #lhsMenu a{
	display:block;
	width:170px;
	padding-left:30px;
	padding-top:3px;
	padding-bottom:3px;
	border-bottom: solid 1px #F0F0F0;
	color:#333333;
	text-decoration:none;
}
#lhsMenu a:hover{
	color:#3478EF !important;
}
#lhsMenu span{
	color:#049EC4;
	font-weight:bold;
}
#lhsMenu a.prodCat{
	background-color:#EFEFEF;
	color:#666666;
	width:160px;
	padding-left:40px;
	border-bottom: solid 1px #FFFFFF;
}
#lhsMenu a.prodCatExp{
	background-color:#E3F1FC;
	color:#666666;
	width:160px;
	padding-left:40px;
	border-bottom: solid 1px #FFFFFF;
}
#lhsMenu span.prodCat{
	background-color:#EFEFEF;
	width:160px;
	padding-left:40px;
	border-bottom: solid 1px #FFFFFF;
}
#lhsMenu span.prodCatExp{
	background-color:#E3F1FC;
	width:160px;
	padding-left:40px;
	border-bottom: solid 1px #FFFFFF;
}
#lhsMenu a.catGroup{
	background-color:#F9F9F9;
	color:#969696;
	width:150px;
	padding-left:50px;
	border-bottom: solid 1px #F1F1F1;
}
#lhsMenu a.catGroupExp{
	background-color:#E3F1FC;
	color:#969696;
	width:150px;
	padding-left:50px;
	border-bottom: solid 1px #F1F1F1;
}
#lhsMenu span.catGroup{
	background-color:#F9F9F9;
	width:150px;
	padding-left:50px;
	border-bottom: solid 1px #F1F1F1;
}
#lhsMenu span.catGroupExp{
	background-color:#E3F1FC;
	width:150px;
	padding-left:50px;
	border-bottom: solid 1px #F1F1F1;
}
.menuPopout{
	position:absolute;
	top:0px;
	left:200px;
	width:200px;
	background-color:#E3F1FC;
	display:none;
}
.menuPopout a{
	border-bottom: solid 1px #FFFFFF !important;
}

/* Contact Details */
#contentCont{
	margin-left:6px;
	margin-top:11px;
}
#contentTop{
	width:209px;
	height:89px;
	background-image:url(/imgs/rhs.box.top.jpg);
	background-repeat:no-repeat;
	vertical-align:top;
}
#contentMid{
	width:209px;
	background-image:url(/imgs/rhs.box.mid.jpg);
	background-repeat:repeat-y;
}
#contentBase{
	width:209px;
	height:47px;
	background-image:url(/imgs/rhs.box.base.jpg);
	background-repeat:no-repeat;
}
#contentContents{
	position:relative;
	margin-top:-48px;
	margin-left:16px;
	margin-right:12px;
}
#contentBaseContents{
	position:relative;
	margin-top:-12px;
	margin-left:16px;
	margin-right:12px;
}
#contentLabelMain{
	color:#51899D;
	font-weight:bold;
	font-size:16px;
	margin-top:16px;
	margin-left:16px;
}
.contentHeaderline{
	margin-top:12px;
	font-weight:bold;
	padding-bottom:6px;
	border-bottom:solid 1px #E8E8E8;
	margin-bottom:6px;
}

/* specific to the contact page */
.contactFormRow{
	padding-bottom:10px;
}
input.contactFormBox,textarea.contactFormBox{
	float:left;
	border:solid 1px #7E9DB9;
	color:#333333;
}
input.contactFormBox{
	width:350px;
	margin-right:10px;
}
textarea.contactFormBox{
	width:550px;
}
.contactFormLabel{
	float:left;
	width:80px;
	overflow:hidden;
}

/* from the product catalogue*/
#pagingHeader{
	padding-left:20px;
	padding-bottom:10px;
}
.prodStrip{
	border-top:solid 1px #D2D2D2;
}
.prodHeader{
	font-weight:bold;
	color:#000000;
	padding-top:4px;
	padding-bottom:4px;
}
.buttonFix{
	margin-top:-1px;
}
.headerStrip{
	position:relative;
	height:20px;
	font-weight:bold;
}
.valueStrip{
	position:relative;
	height:25px;
	font-style:italic;
}
.popupCont{
	border:solid 1px #7F9DB9;
	width:281px;
	margin-top:-2px;
	position:absolute;
	z-index:10;
	background-color:#ffffff;
	display:none;
	font-size:12px;
}
.popupRow{
	position:relative;
	height:28px;
	line-height:15px;
	overflow:hidden;
	padding-left:2px;
}
.popupRow a{
	text-decoration:none;
	color:#000000;
	display:block;
}

.prodRow{
	border-top:solid 1px #D1D1D1;
	margin-bottom:10px;
}
.prodTable{
	border-collapse:collapse;
	border-top:solid 1px #D1D1D1;
	margin-bottom:10px;
}
.prodTable td{
	padding:0px;
	border:none;
}
.prodTable .ui-button{ /* keeps rows vertically lined up by having smaller button text */
	font-size:10px;
}
.col4{
	position:absolute;
	top:0px;
	left:0px;
	width:14px;
}
.col1{
	position:absolute;
	top:0px;
	left:14px;
	width:90px;
}
.col2{
	position:absolute;
	top:0px;
	left:105px;
	width:105px;
}
.col3{
	position:absolute;
	top:0px;
	left:211px;
	width:74px;
}
.col5{
	position:absolute;
	top:0px;
	left:292px;
	width:130px;
}
.col5 .ui-button{ /* keeps rows vertically lined up by having smaller button text */
	font-size:10px;
}

.nzprice{
	background-image: url(/imgs/nzprice.gif);
    background-repeat:no-repeat;
	border:solid 1px #7F9DB9;
	padding-left:20px;
	height:18px;
	width:50px;
}
.prodInput{
	border:solid 1px #7F9DB9;
	height:18px;
}
.stopFloat{
	clear:both;
	height:1px;
	overflow:hidden;
}
.qtysel{
	margin-top:1px;
}

/* rhs checkout progress */
#cartProgress{
	margin-top:20px;
	border: 1px dashed #8C8C8C;
	padding:9px;
	font-family:Arial;
	font-size:15px;
	color:#20276D;
	font-weight:bold;
}
#cartProgress a{
	color:#20276D;
	text-decoration:none;
}
#cartProgress img{
	margin-right:6px;
	vertical-align:middle;
}

/* registration page */
.regInput{
	width: 400px;
	border: solid 1px #7F9DB9;
	margin-bottom:3px;
}
#registerRequiredHeader{
	margin-left:-20px;
	margin-bottom:6px;
}
#registerCont .normInput{
	width:auto;
	border: none;
}
.regError{ /* also used to style errors on checkout */
	color:#890103;
	background-color:#FFDDDD;
	padding:2px;
}
.regErrorMain{
	display:inline-block;
	margin-bottom:18px;
	margin-left:37px;
	font-weight:bold;
	color:#000000;
	background-color:#FFCBCD;
	padding:8px;
	border: solid 1px #890103;
}
#regSuccess{
	display:inline-block;
	margin-bottom:18px;
	margin-left:17px;
	font-weight:bold;
	color:#000000;
	background-color:#9BD4EF;
	padding:8px;
	border: solid 1px #078EBB;
}

/* member screen styles */
#memberCont .normInput{
	width:auto;
	border: none;
}
.memberInput{
	width: 320px;
	border: solid 1px #7F9DB9;
}
#memberDisplay{
	width:435px;
	margin-bottom:20px;
}
#memberDisplay td{
	padding:4px;
	border-bottom: solid 1px #E0E9F0;
}
#memberDisplay .secondCol{
	padding-left:30px;
	width:280px;
}
.custId{
	font-size:10px;
	color:#999999;
}

/* address admin */
.addressButtonCont{
	float:right;
	width:65px;
	vertical-align:top;
}
.addressButtonCont a{
	display:block;
	text-decoration:none;
}
.addAddress{
	vertical-align:text-bottom;
	border:none;
}

/* my cart admin */
#cartAdjCont{
	border-collapse: collapse;
	margin-left:10px;
	border-right: solid 1px #E6E6E6;
}
#cartAdjCont th{
	border: solid 1px #E6E6E6;
	background-color: #88BBCC;
	color:#333333;
	padding:6px;
	font-size:11px;
}

#cartAdjCont td{
	color:#666666;
	padding:6px;
	vertical-align: top;
	text-align:center;
	font-size:10px;
}
#cartAdjCont .cell{
	border-left: solid 1px #E6E6E6;
	border-bottom: solid 1px #E6E6E6;
}
#cartAdjCont .cell input{
	font-size:11px;
}
#cartAdjCont .cellProd{
	border-left: solid 1px #E6E6E6;
	border-bottom: solid 1px #E6E6E6;
	font-weight:bold;
	text-align:left;
	width:250px;
}
#cartAdjCont .cellProd img{
	float:left;
	vertical-align: text-top;
	margin-right:12px;
}
#cartAdjCont .cellMoney{
	border-left: solid 1px #E6E6E6;
	border-bottom: solid 1px #E6E6E6;
	text-align:right;
	padding-right:10px;
	width:55px;
}
#cartAdjCont span.totalsLabel{
	display:inline-block;
	width:75px;
	font-weight:bold;
	text-align:left;
}
#cartAdjCont span.totalsValue{
	display:inline-block;
	text-align:right;
	width:55px;
}

/* checkout page */
#checkoutRequiredHeader{
	width:720px;
	margin-bottom:6px;
}
.checkoutHeader{
	width:720px;
	background-color:#4B859B;
	color:#FFFFFF;
}
.checkoutBody{
	margin-top:5px;
	margin-left:20px;
	margin-bottom:15px;
}
.checkoutBody input{
	width:200px;
}

/* order confirmation page */
#orderDetailsCont, #addressCont, #customerDetailsCont, #orderingCompanyCont, #prodsOrdered, #paymentCont{
	width:280px;
	border: solid 1px #E6E6E6;
	overflow:hidden;
	margin-bottom:12px;
}

#confirmation h4.checkoutHeader{
	width:280px;
}

/* order history page */
#orderHistoryChoiceCont{
	position:relative;
	margin-left:-5px;
	width:450px;
	padding-bottom:4px;
	border-bottom: solid 1px #E6E6E6;
	margin-bottom:12px;
}
#orderHistoryDateCont, #orderHistoryDateCont input{
	font-size:11px;
}
.orderHistoryChoice{
	float:left;
	border:solid 1px #E6E6E6;
	padding:2px;
}
#orderHistoryListingCont{
	position:relative;
	width:960px;
	left:-190px;
	background-color:#ffffff;
}
#orderHistoryListing{
	border-collapse: collapse;
}
#orderHistoryListing th{
	border: solid 1px #E6E6E6;
	background-color: #88BBCC;
	color:#333333;
}
#orderHistoryListing td{
	border:solid 1px #E6E6E6;
}
#orderHistoryFrame{
	margin-top:0px;
}

#showOrderCont{
	border:solid 1px #1C8D89;padding-left:10px;
}
#printpage{
	float:right;
}
.showOrderTable{
	margin-left:0px !important;
	border-right:none !important;
}
#orderViewCont{
	display:none;
	position:absolute;
	z-index:99;
	top:95px;
	left:30px;
	width:650px;
	background-color:#ffffff;
	border:solid 1px #116677;
}
#orderViewHeader{
	background-color:#049EC4;
	border-bottom:solid 1px #116677;
	padding:4px;
	padding-left:10px;
	font-weight:bold;
}
#orderHistoryClose{
	float:right;
	width:40px;
	margin-right:10px;
}
