/* Handcoded by http://psdcssxhtml.com */

/* reset */
body,div,dl,dt,dd,ul,ol,li,pre,form,fieldset,input,textarea,blockquote,th,td {
    margin:0;
    padding:0;
}

fieldset,img {
    border:0;
}

html {
    height:100%;
    margin-bottom:1px;
}

body {
    position:relative;
}

:focus {
    outline:none;
}

/* links */
a {
    color:#3c5f8f;
    text-decoration:none;
}

a:hover {
    text-decoration:underline;
}

/* header elements */
h1, h2, h3, h4, h5, h6 {
    font-family:Arial, Helvetica, sans-serif;
    font-weight:bold;
}

h1 {
    font-size:300%;
    color:#000;
}

h2 {
    font-size:250%;
    color:#3c5f8f;
}

h3 {
    font-size:19px;
    color:#3c5f8f;
}

h4 {
    font-size:175%;
    color:#3c5f8f;
}

h5 {
    font-size:150%;
    color:#3c5f8f;
}

h6 {
    font-size:125%;
    color:#3c5f8f;
}

/* page setup */
body {
	background-color:#3c5f8f;
	font-family:Arial, Helvetica, sans-serif;
	line-height:130%;
	color:#555;
	font-size:14px;
	background-image: url(../images/bg_general.jpg);
	background-repeat: no-repeat;
	background-position: center top;
}

/* wrapper setup */
div.rapidxwpr {
    margin:auto;
    width:958px;
    background:url(../images/wrapper-top.png) 50% 20px no-repeat;
    padding:35px 0 0 0;
}

div.rapidxwpr-bottom {
	padding:4px 19px 19px 19px;
	background-image: url(../images/wrapper-bottom3.png);
	background-repeat: no-repeat;
	background-position: 50%  100%;

}

/* header */
div#header {
    position:relative;
    height:174px;
    margin:0px 0px 15px 0px;
    background:url(../images/header-bg.jpg) 0 0 no-repeat;
}

/* logo */
span#logo, img#logo {
    position:absolute;
    top:-39px;
    left:0px;
    width:900px;
    height:220px;
    border:0;
}

/* main body setup */
div#middle {
    width:auto;
    margin:0px 0px 0px 0px;
    clear:both;
	background-color: #fff;
	background:url(../images/bg_corner.jpg) 0 100% no-repeat;
}

div#middle .background {
    min-height:140px;
}

div#middle .layoutleft {
    background:none;
}

div#middle .layoutright {
    background:none;
}

/* right column */
div#right {
	width:305px;
	float:right;
	border:#ccc 1px solid;
	padding-top: 10px;
	padding-right: 17px;
	padding-bottom: 5px;
	padding-left: 17px;
	background-color: #dae5f4;
}

/* content column */
div#main {
    width:auto;
}

div#middle .layoutleft div#main {
    margin:0px 0px 0px 0px;
    padding:0px 0px 0px 0px;
}

div#middle .layoutright div#main {
    margin:0px 200px 0px 0px;
    padding:0px 0px 0px 0px;
}

div#middle .withoutleft div#main {
    margin:0px 0px 0px 0px;
}

div#mainmiddle {
    margin:0px 0px 0px 0px;
}

div#main .withoutright {
    background:transparent;
}

div#content {
    width:auto;
	background:url(../images/bg_center.jpg) 100%  100px no-repeat;
}

div#main .withright div#content {
    margin:0px 354px 0px 0px;
    padding:0px 0px 0px 0px;
}

div#main .withoutright div#content {
    margin:0px 0px 0px 0px;
    padding:0px 0px 0px 0px;
}

/* footer */
div#footer {
    margin:-4px auto 0 auto;
    width:958px;
    padding:0 0 30px 0;
    clear:both;
    color:#fff;
}

* html div#footer {
    margin:-3px auto 0 auto;
}

div#footer a {
    color:#3a251d;
}

/* clearing & floating */
.clearingfix:after {
    content:".";
    display:block;
    line-height:0px;
    clear:both;
    visibility:hidden;
}

.clearingfix {
    display:block;
}

.floatbox {
    overflow:hidden;
}

/* alignments */
.alignleft {
    float:left;
    margin:0 20px 0 0;
}

.alignright {
    float:right;
    margin:0 0 0 20px;
}

/* topmenu */
div#topmenu {
    position:absolute;
    top:140px;
    left:150px;
    height:34px;
}

div#topmenu ul {
    padding:0px;
    margin:0px;
    list-style:none;
    float:left;
}

div#topmenu li {
    float:left;
    display:block;
}

div#topmenu li a {
    float:left;
    display:block;
    position:relative;
    height:34px;
    line-height:38px;
    overflow:hidden;
    color:#3a251d;
    /*background:url(../images/menu-r.png) 100% 0 no-repeat;*/
    padding:0 6px 0 0;
    font-size:16px;
    font-weight:bold;
}

div#topmenu li a span {
    display:block;
    float:left;
    color:#000;
   /* background:url(../images/menu-l.png) 0 0 no-repeat;*/
    padding:0 6px 0 13px;
    cursor:pointer;
}

div#topmenu li a:hover, div#topmenu li a.active {
    /*background:url(../images/menu-r.png) 100% -36px no-repeat;*/
    text-decoration:none;
}

div#topmenu li a:hover span, div#topmenu li a.active span {
    /*background:url(../images/menu-l.png) 0 -36px no-repeat;*/
	text-decoration:underline;
	color:#3c5f8f;
}

/* quote */
div.quote {
	text-align:left;
	padding-top: 40px;
	padding-bottom: 40px;
	padding-left: 230px;
}

/* about */
div.about, div.news {
    margin:0 0 30px 0;
}

div.about h3, div.news h3 {
    margin:0 0 10px 0;
}

div.about img {
    border:#3c5f8f 2px solid;
}

/* news */
div.news ul {
    list-style:none;
}

div.news ul li {
    margin:0 0 10px 0;
}

div.news span.date {
    font-weight:bold;
}

div.news a.more {
    color:#3c5f8f;
    font-weight:bold;
    float:right;
}

/* call us */
div.call-us {
    border:1px dashed #555;
	background-color:#eee;
    padding:5px 5px;
    margin:0 0 10px 0;
	background:url(../images/bg_call.jpg) no-repeat;
}

div.call-us .numbers {
    width:360px;
    float:left;
}

div.call-us .numbers p {
    margin:0;
    padding:5px 0;
    font-size:16px;
    font-weight:bold;
    color:#412d21;
}

div.call-us .numbers p span {
    color:#3c5f8f;
	line-height:16px;
    width:170px;
    display:block;
    float:left;
}

div.call-us .message {
    width:160px;
    float:right;
}

/* featured */
div.featured {
    margin:0 0 10px 0;
    padding:14px 17px;
}

div.featured a {
    font-weight:bold;
}

div.featured h3 {
    margin:0 0 10px 0;
}

div.featured ul {
    list-style:none;
}

div.featured ul li {
    padding:10px 0;
    clear:both;
    min-height:80px;
}

div.featured ul li .item-img {
    width:110px;
    float:left;
}

div.featured ul li .item-details {
    width:410px;
    float:right;
	padding-top:13px;
}

/* footermenu */
.footermenu {
    float:left;
    /*background:url(../images/copyright-bg.png) 0 0 no-repeat;*/
    width:650px;
    height:36px;
    margin:0 0 0 15px;
    line-height:34px;
    font-size:11px;
    font-weight:bold;
    color:#3a251d;
    padding:0 20px;
}

.footermenu .copyright {
    float:left;
}

.footermenu .copyright a {
text-decoration:underline;
}

.footermenu ul {
    list-style:none;
    float:right;
}

.footermenu ul li {
    float:left;
    margin:0 0 0 7px;
}

/* credits */
.credits {
    float:right;
    /*background:url(../images/credits-bg.png) 0 0 no-repeat;*/
    width:194px;
    height:36px;
    margin:0 15px 0 0;
    text-align:center;
    line-height:34px;
    font-size:11px;
    font-weight:bold;
    color:#3a251d;
}


/*SLIDER*/

#slider {
	padding:7px 0;
	position:relative;
	text-align:right;
	clear:both;
	color:#fff;
}

/*
	root element for the scrollable.
	when scrolling occurs this element stays still.
*/
.scrollable {

	/* required settings */
	position:relative;
	overflow-x:scroll;
	width: 920px;
	height:100px;
	

}

/*
	root element for scrollable items. Must be absolutely positioned
	and it should have a extremely large width to accomodate scrollable items.
	it's enough that you set the width and height for the root element and
	not for this element.
*/
.scrollable .items {
	/* this cannot be too large */
	width:2700px;


}

.scrollable .items2 {
	/* this cannot be too large */
	width:970px;

}

/* single scrollable item */
.scrollable img {
	float:left;
	margin:0 20px 0 0;
	background-color:#fff;
	padding:2px;
	cursor:pointer;
	width:93px;
	height:70px;
}

/* active item */
.scrollable .active {
	border:2px solid #ccc;
	z-index:9999;
	position:relative;
	padding:0px;
}


/* this makes it possible to add next button beside scrollable */
.scrollable {
	float:left;	
}

/* prev, next, prevPage and nextPage buttons */
a.browse {
	background:url(../images/hori_large.png) no-repeat;
	display:block;
	width:30px;
	height:30px;
	position:absolute;
	margin:40px 10px;
	cursor:pointer;
	font-size:1px;
}

/* right */
a.right 				{ background-position: 0 -30px; left: 870px; top:-25px;}
a.right:hover 		{ background-position:-30px -30px; }
a.right:active 	{ background-position:-60px -30px; } 


/* left */
a.left				{ left: 870px; top:10px; } 
a.left:hover  		{ background-position:-30px 0; }
a.left:active  	{ background-position:-60px 0; }

/* up and down */
a.up, a.down		{ 
	background:url(images/vert_large.png) no-repeat; 
	float: none;
	margin: 10px 50px;
}

/* up */
a.up:hover  		{ background-position:-30px 0; }
a.up:active  		{ background-position:-60px 0; }

/* down */
a.down 				{ background-position: 0 -30px; }
a.down:hover  		{ background-position:-30px -30px; }
a.down:active  	{ background-position:-60px -30px; } 


/* disabled navigational button */
a.disabled {
	visibility:hidden !important;		
} 
