*{
	padding: 0;
	margin: 0;	
}
body
{
	background:#3b3b3b;
	margin:10px auto;
}
#con
{
	margin:0 auto;
	text-align:center;
	background-color:#ffffff;
	width:980px;
}
#bookshelfheader
{
	position:relative;
	background:url('../../images/sites/header.png') top center no-repeat;
	height:58px;
	width:990px;
	margin:0 auto;
	text-align:center;
	overflow:hidden;
}
#bookshelfheader .headertitle
{
	background:url('../../images/sites/title.png') top center no-repeat;	
	height:52px;
	width:354px;
	margin:0 auto;
	margin-top:2px;
	text-align:center;
	float:left;
}
#bookshelfheader .headertitle h1
{
 	display:block;
	font-size:2em;
	padding-top:7px;
	color:#646464;
	font-weight:normal;
}
#bookshelf
{
	background:url('../../images/sites/shelf.png') top center repeat-y;
	height:2000px;
	width:990px;
	margin:0 auto;
	text-align:center;
	overflow:hidden;
}
#bookshelffooter
{
	background:url('../../images/sites/footer.png') top center no-repeat;
	height:55px;
	width:990px;
	margin:0 auto;
	text-align:center;
	overflow:hidden;
}
#txtC
{
	font-family:Arial, sans-serif;
	font-size:11pt;
	padding:5px;
}
#txtE
{
	font-family:Arial, sans-serif;
	font-size:11pt;
	padding:5px;
	width:290px;
}
.leaflet
{
	width:200px;
	height:282px;
	float:left;
	background-image:url('../images/leaflets/bg.png');
	background-repeat: no-repeat;
	margin-right:10px;
	margin-left:32px;
	margin-bottom:10px;
	margin-top:20px;
	cursor:pointer;
	position:relative;
	border:none;
	background-color:Transparent;
}
.leaflet:focus
{
	border:2px solid black;
}
.leaflet span
{
	color:#aaaaaa;
	font-family:arial;
	font-size:13pt;
	font-weight:bold;
	margin-top:40px;
	margin-left:10px;
	display:block;
	width:180px;
	text-align:left;

}
.category
{
	width:200px;
	height:282px;
	float:left;
	margin-right:10px;
	margin-left:32px;
	margin-bottom:10px;
	margin-top:20px;
	cursor:pointer;
	background-image:url('../images/leaflets/bg.png');	
	background-repeat:no-repeat;
	border:none;
	background-color:Transparent;
}
.category:focus
{
	border:2px solid black;
}
.category span
{
	color:#aaaaaa;
	font-family:arial;
	font-size:13pt;
	font-weight:bold;
	margin-top:40px;
	margin-left:10px;
	display:block;
	width:180px;
	text-align:left;
}

.clear
{
	clear:both;
	height:30px;
}
.theme
{
	position: absolute;
    text-align: center; 
    z-index: 9999999; 
    pointer-events: none;
    width: auto;
    /* Start styling here... */
    background:#000;
    width:200px;
    color:#ffffff;
    font-family:Arial, sans-serif;
    font-size:12px;
    text-align:justify;
    padding:10px;
    display:block;
}

#menulink
{
	float:left;
	left:0;
	width:290px;
	height:41px;
	cursor:pointer;	
	margin:10px;
	text-align:left;
}

.clearRow{
	clear:both;
	height: 1px;
}
#fade
{
	opacity:0.5;
	filter:alpha(opacity=50);
	background:#000000;
	width:100%;
	left:0;
	top:0;
	position:fixed;
	width:100%;
	min-width:100%;
	height:100%;
	min-height:100%;	
}
#popup
{
	z-index:999;
	text-align:center;
	width:640px;
	height:430px;
	position:absolute;
	background:#ffffff;
	display:none;
	-moz-border-radius: 15px;
	border-radius: 15px;
	position:fixed;	
	padding:20px;
	font-family:helvetica, arial;
	font-size:9pt;
}
#pTitle
{
	color:#00529b;
	font-family:arial;
	font-size:1.2em;	
	font-weight:normal;
}
.loading
{
	margin-top:50px;
}
#close
{
 	display:block;
	position:absolute;
	width:44px;
	height:35px;
	right:0;
	margin-right:-5px;
	background:url('../../images/sites/close2.png') no-repeat 0 0;
}
#close span
{
	display:none;
}
#close:hover
{ 
	background-position: 0 -35px;
}
.button
{
	display: block;
	width: 578px;
	height: 77px;
	background: url("../../images/sites/button.png") no-repeat 0 0;
	margin-top:17px;
	text-align:center;
	font-size:16px;
	margin-left:35px;
	border:none;
	cursor:pointer;
}
.button:focus
{
	border:2px solid #000000;
}
.buttonS
{
	display: block;
	width: 280px;
	height: 77px;
	background: url("../../images/sites/buttonS.png") no-repeat 0 0;
	margin-top:17px;
	margin-left:0px;
	float:left;
}

.buttonSR
{
	display: block;
	width: 280px;
	height: 77px;
	background: url("../../images/sites/buttonS.png") no-repeat 0 0;
	margin-top:17px;
	margin-left:17px;
	float:left;
}

.button:hover, .buttonS:hover, .buttonSR:hover
{ 
	background-position: 0 -77px;
}

.button:hover span, .buttonS:hover span.be, .buttonS:hover span.beb, .buttonSR:hover span.be, .buttonSR:hover span.beb
{
	color:#ffffff;	

}
.button span, .buttonS span, .buttonSR span
{
	font-family:Helvetica;
	margin-top:25px;
	color:#787878;
	font-weight:bold;
	float:left;
	margin-left:20px;
	width:150px;
	text-align:left;

}
.buttonS span.be, .buttonSR span.be
{
	font-family:Helvetica;
	margin-top:20px;
	color:#787878;
	font-weight:bold;
	float:left;
	margin-left:20px;
	width:150px;
}
.buttonS span.beb, .buttonSR span.beb
{
	font-family:Helvetica;
	margin-top:0px;
	color:#787878;
	font-weight:bold;
	float:left;
	margin-left:20px;
	width:150px;
}
.button .img, .buttonS .img, .buttonSR .img
{
	float:left;
	margin-top:17px;
	margin-left:20px;
}
a
{
	text-decoration:none;	
	border:none;
}
img
{
	border:none;
}
.social
{
	margin-top:10px;
}
.clear
{
	clear:both;
	height:1px;
}


.buttonGeneric {
    font-weight: 400;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
    margin-bottom: 28px;
    -webkit-appearance: none;
    background-color: #007f3b;
    border: 2px solid transparent;
    border-radius: 4px;
    box-shadow: 0px 4px 0px #00401e;
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-weight: 600;
    margin-top: 0px;
    padding: 5px 5px;
    position: relative;
    text-align: center;
    vertical-align: top;
    width: auto;
}

.buttonGeneric:hover {
	background-color:#005427;
}
.buttonGeneric:focus {

    background-color: #ffeb3b;
	color:#000000;
}
.buttonSecondary
{
	background-color:#4c6272;
}
/*

.buttonGeneric {
	border:0;
	cursor:pointer;
	display:inline-block;
	height:25px;
	padding-left:5px;
	position:relative;
	outline:0;
	overflow:visible;
	text-decoration:none;
	
}
.buttonGeneric:hover {
	background-position:left -25px;
	text-decoration:none!important;
}
.buttonGeneric::-moz-focus-inner {
	border:0
}
.buttonGeneric span {

    display: block;
    font-weight: bold;
    height: 25px;
    line-height: 25px;
    padding: 0 10px 0 5px;
    position: relative;
    white-space: nowrap;
	text-shadow: 1px 1px 1px #ffffff;
	text-transform:uppercase;
	font-size:11px;
	font-family: helvetica, arial;
}
.buttonGeneric:hover span {
	background-position:right -25px;
	color:#ffffff;
}
*/


/* Fix button span margin in Safari + Chrome */
@media screen and (-webkit-min-device-pixel-ratio:0) {
	button.buttonGeneric span {
		margin:-1px 0 0 -1px;
	}
}

/*
.buttonOrange{
	background:url(../../images/sites/btn_orange.png) left -50px no-repeat;
}
.buttonOrange span {
	background:url(../../images/sites/btn_orange.png) right top no-repeat;
	color:#555555;	
}
*/

.buttonBlue  {
    color: #adadad;
    display: block;
    font-weight: bold;
    height: 35px;
    line-height: 35px;
    padding: 0 10px 0 10px;
    white-space: nowrap;
	text-shadow: 1px 1px 1px #ffffff;
	text-transform:uppercase;
	font-size:17px;
	width:120px;
}
.buttonBlue:hover  {
	background-position:right -35px;
	color:#ffffff;
}

.buttonBlue {

	background:url(../../images/sites/btn_blue2.png) right top no-repeat;
	color:#ffffff;	
}

.buttonBlueS  {
 	border:0;
    color: #ffffff;
    height: 25px;
    line-height: 25px;
    padding: 0 4px 0 4px;
    white-space: nowrap;
	font-size:17px;
	width:45%;
	float:left;
	margin-top:7px;
	margin-right:10px;
}
.buttonBlueS:hover  {
	background-position:right -35px;
	color:#ffffff;
}

.buttonBlueS {

	background:url(../../images/sites/btn_blue2.png) right top no-repeat;
	color:#ffffff;	
}

.star-rating
{
	list-style:none;
	margin-left:5px !important;
	padding:0px;
	width: 125px;
	height: 25px;
	position: relative;
	background: url('../../images/sites/star.gif') top left repeat-x;	
	margin-top:-5px;	
}
.star-rating li{
	padding:0px;
	margin:0px;
	/*\*/
	float: left;
	/* */
}
.star-rating li a{
	display:block;
	width:25px;
	height: 25px;
	text-decoration: none;
	text-indent: -9000px;
	z-index: 20;
	position: absolute;
	padding: 0px;
}
.star-rating li a:hover{
	background: url('../../images/sites/star.gif') left bottom;
	z-index: 2;
	left: 0px;
}
.star-rating a:focus,
.star-rating a:active{
	border:0;	
	-moz-outline-style: none;
	        outline: none; 
}
.star-rating a.one-star{
	left: 0px;
}
.star-rating a.one-star:hover{
	width:25px;
}
.star-rating a.two-stars{
	left:25px;
}
.star-rating a.two-stars:hover{
	width: 50px;
}
.star-rating a.three-stars{
	left: 50px;
}
.star-rating a.three-stars:hover{
	width: 75px;
}
.star-rating a.four-stars{
	left: 75px;
}	
.star-rating a.four-stars:hover{
	width: 100px;
}
.star-rating a.five-stars{
	left: 100px;
}
.star-rating a.five-stars:hover{
	width: 125px;
}
.star-rating li.current-rating{
	background: url('../../images/sites/star.gif') left center;
	position: absolute;
	height: 25px;
	display: block;
	text-indent: -9000px;
	z-index: 1;
}
.ttstars
{
	width:100%;
	text-align:center;
	margin-top:5px;
}
.extext, .expand, .expandtitle .expandimage, .expandvideo
{
	display:none;
}
.expandaudio
{
	display:block;
	clear:both;
	padding-top:20px;
}
.showtext
{
	position:absolute;
	width:195px;
	left:0;	
}
.innerdiv
{
	position:relative;
	background-repeat:no-repeat;
	height:100%;
	width:100%;	

}

#websitelogo
{
	float:right;
	margin-right:10px;
	margin-top:4px;	
}
#websitelogo:focus
{
	border:2px solid #000000;
}
#mobilewrapper
{
	display:none;
}
#mobilefooter
{
	display:none;
}
span.mobiletext, span.mobilecomments
{
	display:none;
}
.leafletreview
{
	border-bottom:1px dotted #c6c6c6;
	text-align:left;
	padding:10px;
}
#reviewwrapper
{
	margin-top:20px;
	width:100%;
	height:330px;
	overflow:auto;
	border:1px dotted #c6c6c6;
}
#reviewwrapper p
{
	padding:20px;
}
.reviewr
{
	float:left;
	margin-left:10px;
	margin-top:5px;
	font-size:9pt;
	font-family:helvetica;
}
#mobilepopup
{
	display:none;
}
#mobilepopup span
{
	display:none;	
}
#mobilepopup #innerbox
{
	display:none;	
}
#mobilepopup #innerbox .mobilereviewtext
{
	display:none;	
}
.trlogo
{
	width:290px;
	margin-right:5px;
}
.trlogo:hover
{
	opacity:0.8;
	filter:alpha(opacity=80);
}

.line
{
	display:none;
	border-bottom:2px solid #676767;
	width:100%;
	height:20px;	
 	clear:both;
 	margin-bottom:15px;
}
.leafletcontainer
{
 	position:relative;
 	z-index:1;
	display:none;
	height:100px;
	width:100%;
	border-right:none;
	border-left:none;
	padding-top:10px;
	padding-bottom:10px;
	border-bottom:2px solid #676767;	
	margin-bottom:15px;
	background-color:#ffffff;
}
.leafletcontainer:focus
{
	border:2px solid #000000;
	background-color:yellow;
}
.mobilearrow, #mobilebuttons, a.popupa
{
	display:none;
}
p
{
	font-family:Helvetica, Arial;
}

@media screen and (max-width: 736px) 
{
 	body
 	{
		background:#ffffff;
	}
 	#bookshelfheader, #bookshelffooter
 	{
		display:none;
	}
	#bookshelf[style]
	{
		height:100% !important;
	}
	#bookshelf
	{
		background:none;
		width:100%;
		margin:0;
		padding:0;
	}
	.leafletcontainer
	{
		display:block;
	}
	.line
	{
		display:block;
	}
	#con
	{
		width:100%;
		margin:0;
	}
	.leaflet, .category
	{
		display:block;
		float:none;
		width:100%;
		background-image:none;
		background-color:#ffffff;
		clear:both;
		position:relative;
		margin-left:0px;
		margin-top:0px;
		margin-bottom:0px;
		padding:5px;
		border-top:2px solid #676767;
		font-size:8pt;
	}
	/*.leaflet:hover, .category:hover
	{
		height:160px;

	}
	*/
	.leaflet[style], .category[style]
	{
		background-image:none !important;
		/*pointer-events:none;*/
	}
	.leaflet span[style], .category span[style]
	{
		color:#ffffff !important;	
	}

	.leaflet span, .category span
	{
		margin:10px 0 0 10px;
		float:left;
		width:65%;
		color:#777777;
		font-family: Helvetica, Arial;
		font-weight:normal;
		text-align:left;
		display:none;
	}
	.leaflet:active, .category:active
	{
		background:#f1f1f1;
	}
	.clearRow{
		clear:both;
		height: 0px;
	}

	.tooltip
	{


	}
	.expand
	{
	 	display:block;
	 	position:relative;
	 	z-index:1;
		height:0px;
		width:100%;
		background:#ffffff;
		margin-top:0px;
		overflow:hidden;
	}
	.expand p
	{
		text-align:justify;
		margin:10px;
		font-size:0.9em;
	}
	.expand a
	{
		display:block;
		margin:10px;
		padding:10px;
		font-family: sans-serif;
		font-size:1.1em;
		color:#676767;
	}
	.eximage
	{
		width:80px;
		height:80px;
		float:left;
		background-repeat:no-repeat;
		background-position:top center;

	}
	.innerdiv
	{
		display:none;
	}
	#mobilewrapper
	{
	 	display:block;
	 	position:relative;
		margin:0 auto; 
		width:100%; 
		max-width:480px; 
		height:100%;

		margin-top:-10px;	
	}
	#mobileheader
	{
		position:relative;
		width:100%;
		text-align:left;
		margin-top:-10px;
		background:#ffffff;
		padding-top:5px;
		padding-bottom:5px;
	}
	#mobiletitle
	{
		float:left;
		font-family:Arial;
		font-size:15pt;
		color:#000000;
		margin-top:10px;
		width:100%;
		text-align:center;
		text-shadow: 2px 2px #a6a6a6;
	}
	#mobilelogo
	{
		margin-right:10px;
		margin-top:10px;
		float:right;
	}
	#mobilebanner
	{
	    width: 100%; 
	    height: 150px; 
	    position: relative; 
	    left: 0px; 
	    top: 0px; 
	    z-index: 900;
	    background:url('../images/mobilebanner.jpg') no-repeat center;
	}

	.stretch {

		width:100%;
	}
	#mobilefooter
	{
	 	display:block;
		height:40px;
	}
	.category span
	{
		display:none;
	}
	.expandimage
	{
	 	position:relative;
	 	z-index:1;
	 	display:block;
		width:80px;
		height:45px;
		float:left;
		background-repeat:no-repeat;
		background-position:top center;
	}
	
	span.expandtitle
	{
	 	position:relative;
	 	z-index:1;
		font-family:helvetica, arial;
	 	display:block;
	 	text-align:left;
		font-size:1.1em;
		float:left;
		margin-top:10px;
		color:#676767;
	}
	.expandvideo
	{
	 	position:relative;
	 	z-index:1;
		display:block;
		margin-bottom:10px;
		height:245px;
		clear:both;
		border-bottom:2px solid #676767;			
	}
	.expandaudio
	{
	 	padding-top:60px;
		display:block;
		border-bottom:2px solid #676767;
		height:40px;
	}


	span.mobiletext
	{
		font-family:helvetica, arial;
	 	display:block;
	 	text-align:left;
		font-size:1.5em;
		float:left;
		margin-left:5px;
		color:#676767;

	}
	span.mobilecomments
	{
	 	position:relative;
	 	z-index:10;
	 	display:block;
	 	text-align:left;
		font-size:1.0em;
		float:left;
		margin-left:5px;
		color:#676767;
		margin-bottom:10px;
		
	}
	.extext
	{
	 	display:block;
		margin-left:80px;
		height:50px;
		clear:both;

	}
	.ttstars
	{
		text-align:left;
		height:0px;
		width:150px;
	}
	#mobilepopup
	{
		height:80%;
		position:fixed;
		width:90%;
		background:#f7f7f7;
		display:none;		
		-moz-border-radius: 15px;
		border-radius: 15px;
		z-index:999;
		box-shadow: 10px 10px 5px #888888;
		-moz-box-shadow:    5px 5px 5px #888888;
  		-webkit-box-shadow: 5px 5px 5px #888888;
  		box-shadow:         5px 5px 5px #888888;
	}
	#mobilepopup span
	{
		font-family:Helvetica, Arial;
		font-size:15pt;
		color:#343434;
		text-align:center;
		display:block;
		margin:10px;
		position:relative;
	}
	#mobilepopup #innerbox
	{
	 	position:relative;
		margin:10px;
		padding:10px;
		border:1px solid #f1f1f1;
		height:80%;
		overflow:auto;
		display:block;
		background:#ffffff;
		-moz-border-radius: 15px;
		border-radius: 15px;		
	}
	#mobilepopup #innerbox .mobilereviewtext
	{
		clear:both;
		font-family:Helvetica, Arial;		
		font-size:0.8em;
		display:block;
	}
	.stf
	{
		position:relative;
		z-index:1;
	 	display:block;
	 	clear:both;
		padding-top:10px;
	}
	span.sf
	{
		font-family:Helvetica, Arial;
		font-size:0.8em;
		font-weight:bold;
		display:block;
		clear:both;
		text-align:left;
		color:#676767;
		margin-left:10px;
		padding-right:10px;
		margin-top:5px;
	}
	.stftxt
	{
		padding:5px;
		background:#ededed;
		border:2px solid #bdbdbd;
		width:95%;
	}
	.mobilearrow
	{
		display:block;
		position:absolute;
		right:20px;
		margin-top:10px;		
	}
	#mobilebuttons
	{
		border-bottom:1px solid #bdbdbd;
		height:40px;
		width:90%;
	 	display:block;
	 	margin:0 auto;
	}
	a.popupa
	{
	 	display:block;
		font-family:Helvetica, Arial;
		border:1px solid #c6c6c6;
		color:#676767;
		text-align:center;
		font-size:0.9em;
		padding:5px;
		float:left;
		margin-right:10px;
	}
	.mobilecomments
	{
		font-family:Helvetica, Arial;
		width:200px;
		text-align:left;
		padding-right:10px;		
		margin-bottom:5px;
		font-weight:bold;
		font-size:0.9em;
	}
	a.mobilesave
	{
		display:block;
		width:97%;
		background:#f78f1e;
		font-family:Helvetica, Arial;
		color:#ffffff;
		padding:5px;
		margin-top:20px;
		text-align:center;
	}
	a.mobilesaveS
	{
		display:block;
		float:left;
		width:41%;
		background:#f78f1e;
		font-family:Helvetica, Arial;
		color:#ffffff;
		padding:5px;
		text-align:center;
		margin-right:1%;
	}

}

#star_rating svg {
	width: 1em;
	height: 1em;
	fill: currentColor;
	stroke: currentColor;
}
#star_rating label, #star_rating output {
	display: block;
	float: left;
	font-size: 2em;
	height: 1.2em;
	color: #036;
	cursor: pointer;
	/* Transparent border-bottom avoids jumping
	   when a colored border is applied
		 on :hover/:focus */
	border-bottom: 2px solid transparent;
}
#star_rating output {
	font-size: 1.5em;
	padding: 0 1em;
}
#star_rating input:checked ~ label {
	color: #999;
}
#star_rating input:checked + label {
	color: #036;
	border-bottom-color: #036;
}
#star_rating input:focus + label {
	border-bottom-style: dotted;
}
#star_rating:hover input + label {
	color: #036;
}
#star_rating input:hover ~ label,
#star_rating input:focus ~ label,
#star_rating input[id="star0"] + label {
	color: #999;
}
#star_rating input:hover + label,
#star_rating input:focus + label {
	color: #036;
}
#star_rating input[id="star0"]:checked + label {
	color: #ff2d21;
}
#star_rating [type="submit"] {
	float: none;
}
.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
a.accessibility
{
	display:block;
	margin-top:15px;
	color:#000000;
}

a.accessibility:hover
{
	color:#505050;
	text-decoration:underline;
}