* { margin:0; padding:0; border:0; }
body { background: #fff url(../images/main-bg.png) repeat-x; }
body, input { font-family: "Trebuchet MS"; font-size: 11px; }



/***** wrapper *****/
#wrap { width: 900px; margin: 0 auto; }



/***** logo *****/
#logo { width: 900px; height: 139px; }
#logo h1 { padding: 22px 0 0 16px; }



/***** navigation *****/
#nav { width: 900px; height: 31px; background: url(../images/nav-bg.png) no-repeat; }

#nav .left { float: left; height: 31px; line-height: 31px; list-style: none; }
#nav .left li { float: left; height: 31px; background: url(../images/nav-seperator.png) no-repeat right; padding: 0 3px 0 0; }
#nav .left a { display: block; float: left; height: 31px; color: #040069; text-decoration: none; padding: 0 20px; }
#nav .left a:hover { text-decoration: underline; }
#nav .left .active a { color: #fff; background: url(../images/nav-active.png) repeat-x; }
#nav .left .active a:hover { text-decoration: none; }
#nav .left .active .first { background: url(../images/nav-active-first.png) no-repeat; }

#nav .right { float: right; padding: 6px 19px 0 0; }
#nav .right .text { float: left; width: 142px; height: 20px; background: url(../images/nav-search-input.png) no-repeat; }
#nav .right .text input { display: block; width: 130px; height: 16px; background: transparent; padding: 2px 6px; }
#nav .right .button { float: left; width: 52px; height: 18px; padding: 1px 0 0 5px; }
#nav .right .button input { display: block; width: 52px; height: 18px; font-size: 9px; color: #fff; background: url(../images/nav-search-button.png) no-repeat; cursor: pointer; }



/***** header *****/
#header { width: 900px; height: 155px; padding: 5px 0 6px 0; }

#header .rotator { float: left; width: 543px; height: 155px; padding: 0 5px 0 22px; }
#header .rotator .cntr { width: 543px; height: 155px; position: relative; }
#header .rotator .image { width: 543px; height: 155px; overflow: hidden; }
#header .rotator .image ul { list-style: none; width: 543px; }
#header .rotator .image li { width: 543px; height: 155px; overflow: hidden; }
#header .rotator .image img { display: block; width: 543px; }
#header .rotator .overlay { position: absolute; top: 0; width: 8px; height: 155px; }
#header .rotator .overlay.left { z-index: 99; left: 0; background: url(../images/header-rotator-overlay-left.png) no-repeat; }
#header .rotator .overlay.right { z-index: 98; right: 0; background: url(../images/header-rotator-overlay-right.png) no-repeat; }

#header .info { float: left; width: 264px; height: 155px; background: url(../images/header-info-bg.png) no-repeat; padding: 0 21px 0 25px; }
#header .info h2 { line-height: 31px; font-size: 14px; font-weight: normal; color: #312389; padding: 4px 0 0 0; }
#header .info .image { float: right; width: 116px; height: 98px; padding: 1px; border: 1px solid #c9bdd9; }
#header .info address { line-height: 18px; font-style: normal; color: #717171; }
#header .info address span { display: block; background: none no-repeat 0 5px; padding: 0 0 0 14px; }
#header .info address .address { background-image: url(../images/header-info-icon-address.png); }
#header .info address .phone { background-image: url(../images/header-info-icon-phone.png); }
#header .info address .fax { background-image: url(../images/header-info-icon-fax.png); }
#header .info address .email { background-image: url(../images/header-info-icon-email.png); }
#header .info address .website  { background-image: url(../images/header-info-icon-website.png); }



/***** full width column *****/
#fw { float: left; width: 859px; padding: 12px 0 31px 22px; }
#fw .box { background-image: url(../images/box-fw-mid.png); }
#fw .box .bgc1 { background-image: url(../images/box-fw-top.png); }
#fw .box .bgc2 { background-image: url(../images/box-fw-bottom.png); padding: 19px; }

#fw .products { clear: both; list-style: none; overflow: hidden; }
#fw .products li { float: left; width: 135px; font-size: 13px; text-align: center; }
#fw .products a { display: block; float: left; width: 105px; color: #917ea9; text-decoration: none; padding: 6px 15px; }
#fw .products .img { display: block; background: #fff; border: 1px solid #c9bdd9; padding: 1px; }
#fw .products .img img { display: block; width: 101px; height: 101px; }
#fw .products .txt { line-height: 20px; font-weight: bold; }
#fw .products a:hover { color: #312389; }
#fw .products a:hover .img { border-color: #312389; }



/***** large left column *****/
#ll { float: left; width: 595px; padding: 12px 0 31px 22px; }
#ll .box { background-image: url(../images/box-ll-mid.png); }
#ll .box .bgc1 { background-image: url(../images/box-ll-top.png); }
#ll .box .bgc2 { background-image: url(../images/box-ll-bottom.png); padding: 10px 22px 5px 22px; }

#ll h3 { line-height: 18px; font-size: 14px; font-weight: bold; color: #917ea9; padding: 12px 0 18px 0; }
#ll p { line-height: 18px; color: #717171; padding: 0 0 18px 26px; }



/***** large right column *****/
#lr { float: right; width: 617px; padding: 12px 20px 31px 0; }
#lr .box { background-image: url(../images/box-lr-mid.png); }
#lr .box .bgc1 { background-image: url(../images/box-lr-top.png); }
#lr .box .bgc2 { background-image: url(../images/box-lr-bottom.png); padding: 16px 19px; }

#lr .image { float: left; width: 211px; padding: 0 20px 14px 0; }
#lr .image span { display: block; background: #fff; border: 1px solid #c9bdd9; padding: 1px; }
#lr .image img { display: block; }
#lr h3 { float: left; width: 348px; line-height: 16px; font-size: 13px; font-weight: bold; color: #917ea9; border-bottom: 1px solid #ddd7e5; margin: 0 0 14px 0; }
#lr p { line-height: 18px; color: #717171; padding: 0 0 18px 0; }



/***** small left column *****/
#sl { float: left; width: 214px; padding: 12px 0 31px 22px; }
#sl .box { background-image: url(../images/box-sl-mid.png); }
#sl .box .bgc1 { background-image: url(../images/box-sl-top.png); }
#sl .box .bgc2 { background-image: url(../images/box-sl-bottom.png); padding: 6px; }

#sl .list { list-style: none; line-height: 23px; font-weight: bold; }
#sl .list ul { display: none; list-style: none; background: url(../images/content-sl-bottom.png) no-repeat bottom; }
#sl .list a { display: block; text-decoration: none; color: #707070; padding: 0 0 0 9px; }
#sl .list a:hover, #sl .list .open ul a:hover { text-decoration: underline; }
#sl .list .open { background: url(../images/content-sl-sub.png) repeat-y; }
#sl .list .open a, #sl .list a:focus { color: #fff; background: url(../images/content-sl-heading.png) no-repeat; }
#sl .list .open a:hover, #sl .list .open ul .active a:hover { text-decoration: none; }
#sl .list .open ul { display: block; line-height: 22px; font-weight: normal; padding: 2px 0; }
#sl .list .open ul a { color: #707070; background: url(../images/content-sl-list.png) no-repeat 35px 9px; padding: 0 0 0 45px; }
#sl .list .open ul .active a { color: #917ea9; }



/***** small right column *****/
#sr { float: right; width: 240px; padding: 12px 20px 31px 0; }
#sr .box { background-image: url(../images/box-sr-mid.png); }
#sr .box .bgc1 { background-image: url(../images/box-sr-top.png); }
#sr .box .bgc2 { background-image: url(../images/box-sr-bottom.png); padding: 13px 13px 17px 13px; }

#sr p { line-height: 18px; color: #717171; padding: 0 5px 18px 5px; }
#sr p.align-right { text-align: right; padding-bottom: 0; }
#sr p a { color: #34278c; text-decoration: none; }
#sr p a:hover { text-decoration: underline; }

#sr .button { width: 205px; height: 33px; line-height: 33px; background: url(../images/content-sr-button.png) no-repeat; margin: 0 0 0 5px; }
#sr .button a { display: block; width: 190px; height: 33px; text-align: center; color: #fff; text-decoration: none; padding: 0 15px 0 0; }
#sr .button a:hover { text-decoration: underline; }

#sr .images { list-style: none; overflow: hidden; padding: 0 0 12px 0; }
#sr .images li { float: left; width: 42px; height: 42px; padding: 5px 6px 6px 5px; }
#sr .images a { display: block; width: 40px; height: 40px; background: #fff; border: 1px solid #c9bdd9; padding: 1px; }



/***** content items *****/
h2 { line-height: 34px; font-size: 18px; font-weight: normal; color: #312389; padding: 10px 0 0 1px; }
.box { background: none repeat-y; }
.box .bgc1 { background: none no-repeat; }
.box .bgc2 { background: none no-repeat bottom; overflow: hidden; }



/***** footer *****/
#footer { clear: both; width: 100%; height: 30px; line-height: 30px; color: #ab9dbc; border-top: 1px solid #c9bdd9; }
#footer .cntr { width: 900px; margin: 0 auto; }
#footer p.left { float: left; }
#footer p.right { float: right; }
#footer a { color: #ab9dbc; text-decoration: underline; }