html, body, * { margin: 0; padding: 0; }
html,body{height:100%;}
body { color: #333; font: .85em/1.75em Arial, Helvetica, sans-serif; background: #f1f3f3 url("../_images/back_content.gif") 0 226px repeat-x; }
#home { background-position: 0 351px; }
#content,.wrap { width: 960px; margin: 0 auto; }
.wrap { position: relative; }

/*
### OTHER TAGS ### */
p,li,dt,dd { word-spacing: 1px; }
p { margin: 1.5em 0 1.5em 0; }
hr { display: none; }
blockquote { margin: 1.5em 0 1.5em 20px; border-left: 2px solid #630021; padding: 0 0 0 20px; }
blockquote p { font-size: 13px; font-style: italic; margin: 0; padding: 5px 0; }
blockquote span { display: block; padding-top: 5px; }
a { color: #960; }
a:visited { color: #8B5B00; }
a:hover { background-color: #FFFF99; }
a img { border-width: 0; }
#content a { color: #f60; background-color: #f1f1f1; background-color: rgba(255,255,255,.5); padding: 0 2px; text-decoration: none; }
#content a:hover { background-color: #ff9; background-color: rgba(255,255,153,.75); }
::-moz-selection { background: #fc0; color: #000; }
::selection { background: #fc0; color: #000; }


/*
### HEADINGS ### */
h1,h2,h3,h4,h5{line-height:normal;font-weight:normal;color:#2F2F37;}
h1 { margin: 1.25em 0 .0 0; font-size: 32px; }
#h1_recent-news { font-size: 15px; color: #fd0; text-transform: uppercase; background: url("../_images/h1_recent-news.gif") 0 0 no-repeat; text-indent: -9114px; }
h2 { margin: 1.5em 0 10px 0; font-size: 24px; color: #495353; }
h2.o { color: #E75C00; }
.box h2 { font-size: 18px; margin-top: 10px; }
h2.tinytext { color: #888; font-size: 10px; font-weight: bold; text-transform: uppercase; letter-spacing: 2px; background: url("../_images/div_line.gif") bottom left repeat-x; padding-bottom: 3px; }
h2.sidehead { background: #2C4465 url("../_images/back_sidehead.gif") bottom right no-repeat; font-size: 17px; font-weight: bold; color: #e5e5e5; padding: 5px 10px 12px 10px; margin-bottom: 0; -moz-border-radius-topleft: 5px; border-radius-topleft: 5px; -moz-border-radius-topright: 5px; border-radius-topright: 5px; }
h2.sidehead a, h2.sidehead a:visited { text-decoration: none; color: #fff; }
h2.sidehead a:hover { color: #9FBDD7; }
h3 { margin: 1.5em 0 .625em 0; font-size: 17px; font-weight: bold; color: #EA5E00; }


/*
### LISTS ### */
ol { margin: 1.5em 0 1.5em 25px; padding: 0; }
#col-1 ul, ul.list, #home #col-2 ul { margin: 1.5em 0 1.5em 15px; padding: 0; }
#col-1 ul li, ul.list li, #home #col-2 li { background: url("../_images/bullet.gif") 0 6px no-repeat; padding-left: 18px; list-style-type: none; margin: 0; }
#col-2 ul.list { margin-left: 10px; }
#col-2 ul.list li { background-image: url("../_images/bullet2.gif"); }
#col-1 ul ul, ul.list ul { margin-top: 0; margin-bottom: 0; }

.menu { margin-bottom: 3em; }
.menu li { list-style-type: none; }
.menu a { padding: 4px 10px; border-bottom: 1px solid #d5d5e5; display: block; text-decoration: none; }
.menu a:hover { color: #000; }
.menu ul { display: none; }
.menu .open ul { display: block; }
.menu .open a, .menu li.open li.current a { font-weight: bold; }
.menu ul li a, .menu li.open li a { padding-left: 20px; font-size: 11px; color: #294C85; font-weight: normal; }

.ruled { margin: .5em 0 1.5em 0; padding: 0; }
.ruled li { list-style-type: none; margin: 0; padding: 0; }
.ruled span { float: right; color: #666; font-size: 11px; text-transform: uppercase; padding-top: 2px; }
.ruled a { display: block; line-height: 1.5em; padding: 3px 5px !important; border-bottom: 1px solid #bbb; background: none !important; }
.ruled a:hover { background-color: #fff !important; background-color: rgba(255,255,255,.75) !important; }

.articles a { padding-left: 23px !important; background: url("../_images/icon_doc.gif") 3px 5px no-repeat !important; }

#col-1 .checklist { margin-left: 5px; }
#col-1 .checklist li { background: url("../_images/checkmark.gif") 0 3px no-repeat; padding-left: 28px; }
#col-1 ul.block li h2 { margin-bottom: -10px; }

.thumbs { clear: both; margin: 10px 0 !important; }
#col-1 .thumbs li, .thumbs li { list-style-type: none; float: left; margin: 5px 9px !important; padding: 15px 0; list-style-image: none !important; background-image: none; }
#col-1 .thumbs li.portrait { padding: 0; }
.thumbs li a img { border: 4px solid #e1e5e5; }
.thumbs li a:hover img { border-color: #d1d1d1; }

.albums { border-top: 1px solid #CCD6EA; overflow: hidden;}
#col-1 .albums li, .albums li { float: left; width: 100%; margin: 0 !important; padding: 10px; border-bottom: 1px solid #CCD6EA; list-style-image: none !important; }
#col-1 .albums li.odd { background-color: #EFF3FF; }
#side .albums li { height: 78px; }
#side .albums li { padding: 10px 0; }
.albums a { float: left; margin-right: 15px; }
#side .albums a { margin-right: 10px; }
.albums .title { float: none; background: none; height: auto; width: auto; display: inline; font-size: 14px; font-weight: bold; padding: 0; }
.albums .title:hover { background: none; }

.webster dt { font-weight: bold; }
.webster dd { margin-bottom: 1.25em; }

ul.cols-2 { -moz-column-count:2; column-count:2; -moz-column-gap:20px; column-gap:20px; }
ul.cols-3 { -moz-column-count:3; column-count:3; -moz-column-gap:20px; column-gap:20px; }
ul.cols-4 { margin: 1.5em 0 !important; }
ul.cols-4 li { width: 124px; float: left; margin: 0 15px 10px 0 !important; }

ul.blocks h2, ul.blocks h3 { margin-bottom: 5px; }
ul.blocks p { margin-top: 5px; }

#col-1 #folio { margin: 1.75em 0 2em 15px; }
#col-1 #folio li { background: url("../_images/thumb_shadow.png") 0 0 no-repeat; float: left; margin: 0 10px 12px 0; padding: 0 0 15px 0; font-size: 11px; width: 138px; height: 120px; overflow: hidden; line-height: 1em; }
#folio a, #folio img, #folio strong { display: block; }
#folio a { padding: 3px; background-color: #f1f1f3; color: #CCCCCC; border: 1px solid #abafaf; }
#folio a:hover { color: #fc0; background-color: #FFF8A8; }
#folio strong { height: 25px; padding: 0 4px; display: table; background-color: #202122; }
#folio a:hover strong { background-color: #333; }
#folio span { font-weight: normal; display: table-cell; vertical-align: middle; width: 122px; }


/*
### HEADER ### */
#header { background: #222 url("../_images/back_header.jpg") 0 0 repeat-x; height: 185px; }
#home #header { height: 310px; }
#logo { margin: 0; padding: 10px 0; width: 410px; float: left; }
#logo span, #logo a { margin: 42px 0 10px 10px; display: block; width: 280px; height: 92px; background: url("../_images/logo_screen.png") 0 0 no-repeat; text-indent: -9114px; overflow: hidden; cursor: pointer; zoom: 1; }
#home #logo span, #home #logo a { margin-top: 65px; }
#logo img { position: absolute; left: -500px; width: 10px; height: 10px; }
#header h2 { margin: 62px 0 0 125px; width: 365px; height: 54px; background: url("../_images/h2_slogan.gif") 0 0 no-repeat; float: left; color: #ccc; text-indent: -9114px; }
#home #header h2 { margin: 0 0 0 10px; float: none; clear: left; }

#navigation { background: #000 url("../_images/back_nav.gif") 0 0 repeat-x; height: 40px; }
#navigation li { float: left; list-style-type: none; }
#navigation a { float: left; background: url("../_images/nav.gif") 0 0 no-repeat; color: #fff; line-height: 40px; margin: 0 27px 0 5px; text-indent: -9114px; overflow: hidden; }
#navigation a:hover { color: #fff; }
#navigation #nav-home { width: 60px; background-position: 0 0; }			#navigation #nav-home:hover { background-position: 0 -40px; }
#navigation #nav-about { width: 65px; background-position: -88px 0; }		#navigation #nav-about:hover { background-position: -88px -40px; }
#navigation #nav-folio { width: 82px; background-position: -181px 0; }		#navigation #nav-folio:hover { background-position: -181px -40px; }
#navigation #nav-news { width: 60px; background-position: -289px 0; }		#navigation #nav-news:hover { background-position: -289px -40px; }
#navigation #nav-contact { width: 74px; background-position: -376px 0; }	#navigation #nav-contact:hover { background-position: -376px -40px; }

#slideshow { position: absolute; top: -28px; right: -8px; height: 380px; width: 478px; }


/*
### LAYOUT ### */
#content-wrap { }
#main-wrap { width: 100%; float: left; padding: 0; }
#torso { min-height: 100%; height: auto !important; height: 100%; position: relative; margin: 0 0 -130px 0; }

.lyt-12 #col-1 { margin: 0 330px 0 0; }
.lyt-21 #col-1 { margin: 0 10px 0 330px; }
.lyt-312 #col-1, .lyt-213 #col-1 { margin: 0 330px; }
.lyt-1 #col-1 { margin: 0; }

.lyt-12 #col-2 { margin-left: -290px; }
.lyt-21 #col-2 { margin-left: -950px; }
#col-2,#col-3 { width: 290px; float: left; }
#col-1 { height: auto !important; height: 350px; min-height: 350px; }
#col-2 { padding-top: 12px; }
#col-3 { }
#col-1,#col-2,#col-3 { padding-bottom: 70px !important; }

/* homepage */
#home #col-1 { margin: 0 0 0 498px; padding-top: 50px; }
#home #col-2 { margin-left: -960px; width: 430px; padding-top: 55px !important; }


/*
### 960 grid ### */
.grid-1,.grid-2,.grid-3,.grid-4,.grid-5,.grid-6,.grid-7,.grid-8,.grid-9,.grid-10{margin: 0 10px;float:left;display:inline;}
.grid-1{width:50px;}
.grid-2{width:100px;}
.grid-3{width:185px;}
.grid-4{width:220px;}
.grid-5{width:280px;}
.grid-6{width:340px;}
.grid-7{width:400px;}
.grid-8{width:460px;}
.grid-9{width:530px;}
.grid-10{width:740px;}
.grid-loco{margin-left:0;}

.columns { float: left; width: 100%; margin-left: -10px; }

.services { float: left; width: 100%; }
.service { float: left; width: 274px; height: 247px; padding: 0 20px 1em 20px; overflow:hidden; }
.service.t { border-top: 1px solid #bbb; }
.service.r { border-right: 1px solid #bbb; }
.service.b { border-bottom: 1px solid #bbb; }
.service.l { border-left: 1px solid #bbb; }
.service h3 img { vertical-align: middle; margin-right: 10px; }


/*
### BLOG ### */
#col-1 #posts { margin: 0; padding: 0; }
#col-1 #posts li.post { margin: 0; padding: 0; background: none; }
.post { border-bottom: 3px double #ccc; }
#home .post { padding: 0 0 10px 0; }
li.post h2 { font-size: 24px; }
div.post h2 { margin-top: .7em; font-size: 22px; }
#content .post h2 a { color: #333; text-decoration: none; background: none !important; padding: 0; }
.post h2 a:hover { border-bottom: 2px solid #A5AFAF; }
.covershot { background-color: #fff; padding: 7px; }
.covershot img { display: block; border: 1px solid #F1F3F3; -ms-interpolation-mode:bicubic; }

.post-details,.post-meta { font-size: 11px; text-transform: uppercase; color: #777; }
.post-details { margin-top: -10px; margin-bottom: -10px; }
div.post-meta { text-align: right; }
dl.post-meta { margin-top: 2em; }
.post-meta dt { float: left; margin-right: 10px; }
.post-meta dd { display: inline; }
.post-meta a { margin-left: 15px; }
.post-meta .ico-comment { font-weight: bold; }

.comments { margin: 0 0 3em 0; padding: 0; float: left; width: 100%; border-bottom: 2px solid #ccc; }
#comments li { list-style-type: none; margin: 10px 0; padding: 0; }
#comments dl { float: left; width: 100%; }
.comments dt, .comments dd { float: left; }
.comments dt { border-top: 2px solid #aaa; width: 195px; padding: 13px 5px 15px 10px; line-height: 1.25em; clear: left; }
#comments span { margin-left: 24px; display: block; }
.comments dt em.datetime { font-size: 11px; color: #777; display: block; margin-top: 4px; }
#frm-comment em.datetime { margin-top: -4px; }
#frm-comment dt, #frm-comment dd { padding-bottom: 8px; }
#frm-comment label { font-weight: bold; }
.comments dd { border-top: 2px solid #ccc; width: 400px; padding: 10px 5px 15px 15px; }
.comment-permalink { display: block; overflow: hidden; float: left; width: 16px; margin-right: 4px; background: transparent url("../_images/icon_comment.gif") 0 2px no-repeat; text-indent: -9114px; }


/*
### PAGINATION ### */
.pager { border: 1px solid #BADAEF; background-color: #E9F3FA; padding: 10px 10px 0 10px; height: 1.5em; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; }
.cap { border-width: 0 0 1px 0; margin-bottom: 10px; }
.base { border-width: 1px 0 0 0; padding: 0 10px 10px 10px; clear: both; margin-top: 10px; }
.pager div { float: right; line-height: 1.5em; }
.pager .status { float: left; }
.pager a { text-decoration: none; padding: 0 1px; color: #2B5EE6 !important; }
.pager .current { font-weight: bold; border: 2px solid #2B5EE6; }
.cap .current { border-width: 0 0 2px 0; }
.base .current { border-width: 2px 0 0 0; }
.pager input { width: 87%; }

/*
### REGULAR PAGINATION ### */
.paging, .post-nav { border: 1px solid #ccc; background-color: #eceded; }
.paging { padding: 10px 10px 0 10px; height: 1.5em; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; }
.cap { border-width: 0 0 1px 0; margin-bottom: 10px; }
.base { border-width: 1px 0 0 0; padding: 0 10px 10px 10px; clear: both; margin-top: 10px; }
.paging div { float: right; line-height: 1.5em; }
.paging .status { float: left; }
.paging a { text-decoration: none; padding: 0 1px; color: #1A446D !important; }
.paging .current { font-weight: bold; border: 2px solid #1A446D; }
.cap .current { border-width: 0 0 2px 0; }
.base .current { border-width: 2px 0 0 0; }
.paging input { width: 93%; }

.post-nav { margin-top: 45px; padding: 2px 10px; border-width: 1px 0; height: 1.75em; }
.ico-prev { float: left; }
.ico-next { float: right; }



/*
### FOOTER ### */
#footer-ghost { height: 130px; clear: both; }
#footer { background-color: #161718; color: #444; font-size: 11px; clear: both; padding: 21px 0 1px 0; height: 108px; }
#footer .wrap { position: relative; border-top: 1px solid #484848; }
#footer a { text-decoration: none; color: #ccc; }
#footer a:hover { color: #fff; background-color: #2B2D2F; }
#footer p { width: 25%; float: left; }
#footer ul { margin: 1.5em 0; }
#footer li { list-style-type: none; }


/*
### PPGS ### */
#footer #PPGS { float: right; margin: -40px 5px 0 0; }
#footer #PPGS a { display: block; height: 19px; width: 94px; border-width: 0 !important; background: url("../_images/ppgs.gif") 0 0 no-repeat; overflow: hidden; text-indent: -9114px; }
#footer #PPGS a:hover { background-position: 0 -19px; }


/*
### FORM STYLES ### */
form { margin: 1em 0; }
fieldset { border-width: 0; margin: 1.5em 0; clear: both;}
legend { display: block; padding: 0; font-weight: bold; line-height: 1.5em; }
fieldset fieldset legend { font-size: 11px; color: #333; }
label { line-height: 1.5em; width: 150px; float: left; }
label.inline { font-size: 12px; font-family: Arial, Helvetica, sans-serif; display: inline !important; font-weight: normal !important; float: none !important; }
label em, fieldset em { font-weight: normal; color: #c00; }
input, textarea, select { margin:0 0 .5em 0; font-size: 12px; font-family: Arial, Helvetica, sans-serif; border-top:1px solid #7c7c7c; border-left:1px solid #b3b3b3; border-right:1px solid #b3b3b3; border-bottom:1px solid #ccc; background:#fff url("../_images/fieldbg.gif") repeat-x top !important; color:#333; padding: 2px 0 2px 2px; width: 99%; }
input.radio, input.checkbox, input.btn { width: auto !important; border-width: 0 !important; background: none !important; vertical-align: middle; margin-right: 5px; }
input.btn { padding: 0; vertical-align: top; }
p.btn { padding: 20px 0 0 15px; }
p.optlist label { font-size: 11px; font-family: Arial; display: inline; }
p.optlist span { width: 33%; margin: 0; }
textarea { height: 50px; }
.auto { width: auto; }
.twochar { width: 25px !important; }
.fourchar { width: 40px !important; }
.sixchar { width: 55px !important; }
.xsmall { width: 25% !important; }
.small { width: 32% !important; }
.medium { width: 50% !important; }
.large { width: 100%; }
.tall { height: 100px; }
.taller { height: 214px; }

.cells { border-top: 1px solid #ddd; border-width: 1px 0 0 0; padding: 0; margin: 0; }
.cells label { display: block; float: left; width: 25%; margin: 0 1% 0 0; }
.cells p, .cells .p, .cells fieldset { border-bottom: 1px solid #ddd; margin: 0; padding: 8px 0; }
.cells .p div { margin-left: 26%; }
.cells .p div div { margin: 0; }
.cells input, .cells textarea, .cells select { width: 70%; }
.cells fieldset { position: relative; }
.cells fieldset p { border-width: 0; margin-left: 26%; padding-top: 0; }
.cells legend span { position: absolute !important; top: 0; left: 0; }


.missing { background-color: #FF9999; padding: 5px !important; }
span.missing { margin: 0; padding: 5px 2px !important; width: 47.5%; }
#frm-error { border: 2px solid #FF9999; background-color:#FFCCCC; padding: 10px 5%; text-align: center; margin: 10px 15px !important; }

.button { background-color: #161718; color: #fc0; border-width: 0; padding: 4px 5px; text-transform: uppercase; letter-spacing: 1px; cursor:pointer; }
.button:hover { background-color: #333435; }

.cells { border-top: 1px solid #ddd; border-width: 1px 0 0 0; padding: 0; margin: 0; }
.cells label { display: block; float: left; width: 25%; margin: 0 1% 0 0; }
.cells p, .cells .p, .cells fieldset { border-bottom: 1px solid #ddd; margin: 0; padding: 8px 0; }
.cells .p div { margin-left: 26%; }
.cells .p div div { margin: 0; }
.cells input, .cells textarea, .cells select { width: 70%; }
.cells fieldset { position: relative; }
.cells fieldset p { border-width: 0; margin-left: 26%; padding-top: 0; }
.cells legend span { position: absolute !important; top: 0; left: 0; }

.full { position: absolute; left: -9114px; }


/*
### VCARD STYLES ### */
.vcard { margin: 10px 0 2em 0; }
.vcard dt, .vcard dd { line-height: 1.5em; }
.vcard dt { display: none; font-weight: normal; }
.vcard .show { float: left; display: block; padding-right: 4px; }
.vcard .fn { font-weight: bold; font-size: 13px; color: #3c6188; padding-bottom: 8px; }
.vcard .adr { padding-bottom: 8px; }

#footer .vcard { float: right; width: 250px; padding: 0 0 0 20px; margin: 10px 0 10px 20px; border-left: 2px solid #89aacd; position: relative; }


/*
### GMapEZ STYLES ### */
.GMapEZ { height: 480px; }


/*
### INFOBOX STYLE ### */
.box { background: #eeefef url("../_images/box.gif") bottom left repeat-x; border: 1px solid #fff; margin: 1.5em 0; }
.box-inner { border: 1px solid #ccc; padding: 1px 20px 10px 20px; }
.box h1, .box h2 { margin-top: .75em; }
.box h2, .box h3 { color: #CC5200; font-weight: normal; }
#home .box h2 { font-size: 18px; }



/*
### COMMON STYLES ### */
.left { float: left; margin: 0 20px 20px 0; }
.right { float: right; margin: 0 0 20px 20px; }
p.right { float: none; margin: 10px 0 1.5em 0; text-align: right; }
img.left, img.right, img.border { border: 1px solid #999; }
blockquote.right { width: 40%; }
.center { text-align: center; }
.caps { text-transform: uppercase; }
.bold { font-weight: bold !important; }
.last { border-width: 0 !important; margin-right: 0 !important; background: none !important; }
.clear { clear: both; float: none !important; height: 1px; line-height: 1px; font-size: 1px; overflow: hidden; }
.intro { font-size: 1.15em; line-height: 1.75em; color: #444; }
.action { border-top: 1px solid #D6AE52; background-color: #FFF7CE; padding: 10px !important; clear: both; }
.red { color: #c00; }
.hr { border-top: 1px solid #ccc; margin: 2em 0 -1em 0; }
.arrow { font-size: 13px; }
.screenshot { padding-bottom: 14px; background: url("../_images/mid_shadow.gif") bottom center no-repeat; }
.screenshot img { display: block; border: 1px solid #999; background-color: #fff; padding: 4px; }


/*
### ICONS ### */
.icon { padding-left: 20px !important; padding-bottom: 1px; background-repeat: no-repeat; }
.icon.big { font-size: 14px; font-weight: bold; }
.icon.mini { font-size: 10px; text-transform: uppercase; padding: 2px 2px 2px 18px !important; vertical-align: top; }
.ico-map { background-image: url("../_images/icon_marker.gif"); }
.ico-comment { background-image: url("../_images/icon_mini-comment.gif"); }


/*
### CLICKMAP ### */
#clickmap-overlay { position:fixed; top:0; left:0; width:100%; height:100%; background-color:#000; filter:alpha(opacity=70); opacity: 0.7; } 
#clickmap-loading { position:fixed; top:0; left:0; width:100%; height:100%; background:transparent url("../_images/loadingAnimation.gif") no-repeat center center; } 
#clickmap-container div { position:absolute; width:20px; height:20px; background:transparent url("../_images/click.png") no-repeat center center; } 
