/**
 * HTML5 ✰ Boilerplate
 *
 * style.css contains a reset, font normalization and some base styles.
 *
 * Credit is left where credit is due.
 * Much inspiration was taken from these projects:
 * - yui.yahooapis.com/2.8.1/build/base/base.css
 * - camendesign.com/design/
 * - praegnanz.de/weblog/htmlcssjs-kickstart
*/


/**
 * html5doctor.com Reset Stylesheet (Eric Meyer's Reset Reloaded + HTML5 baseline)
 * v1.6.1 2010-09-17 | Authors: Eric Meyer & Richard Clark
 * html5doctor.com/html-5-reset-stylesheet/
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

blockquote, q { quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after { content: ""; content: none; }

ins { background-color: #ff9; color: #000; text-decoration: none; }

mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

table { border-collapse: collapse; border-spacing: 0; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }

input, select { vertical-align: middle; }


/**
 * Font normalization inspired by YUI Library's fonts.css: developer.yahoo.com/yui/
*/

body { font:15px/1.231 sans-serif; *font-size:small; } /* Hack retained to preserve specificity */
select, input, textarea, button { font:99% sans-serif; }

/* Normalize monospace sizing:
   en.wikipedia.org/wiki/MediaWiki_talk:Common.css/Archive_11#Teletype_style_fix_for_Chrome */
pre, code, kbd, samp { font-family: monospace, sans-serif; }


/**
 * Minimal base styles.
*/

/* Always force a scrollbar in non-IE */
html { overflow-y: scroll; }

/* Accessible focus treatment: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active { outline: none; }

ul, ol { margin-left: 2em; }
ol { list-style-type: decimal; }

/* Remove margins for nav lists */
nav ul, nav li { margin: 0; list-style:none; list-style-image: none; }

small { font-size: 85%; }
strong, th { font-weight: bold; }

td { vertical-align: top; }

/* Set sub, sup without affecting line-height: gist.github.com/413930 */
sub, sup { font-size: 75%; line-height: 0; position: relative; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

pre {
    /* www.pathf.com/blogs/2008/05/formatting-quoted-code-in-blog-posts-css21-white-space-pre-wrap/ */
    white-space: pre; white-space: pre-wrap; word-wrap: break-word;
    padding: 15px;
}

textarea { overflow: auto; } /* www.sitepoint.com/blogs/2010/08/20/ie-remove-textarea-scrollbars/ */

.ie6 legend, .ie7 legend { margin-left: -7px; } 

/* Align checkboxes, radios, text inputs with their label by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css  */
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
.ie7 input[type="checkbox"] { vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }

/* Hand cursor on clickable input elements */
label, input[type="button"], input[type="submit"], input[type="image"], button { cursor: pointer; }

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea { margin: 0; }

/* Colors for form validity */
input:valid, textarea:valid   {  }
input:invalid, textarea:invalid {
    border-radius: 1px; -moz-box-shadow: 0px 0px 5px red; -webkit-box-shadow: 0px 0px 5px red; box-shadow: 0px 0px 5px red;
}
.no-boxshadow input:invalid, .no-boxshadow textarea:invalid { background-color: #f0dddd; }


/* These selection declarations have to be separate
   No text-shadow: twitter.com/miketaylr/status/12228805301
   Also: hot pink! */
::-moz-selection{ background: #FF5E99; color:#fff; text-shadow: none; }
::selection { background:#FF5E99; color:#fff; text-shadow: none; }

/* j.mp/webkit-tap-highlight-color */
a:link { -webkit-tap-highlight-color: #FF5E99; }

/* Make buttons play nice in IE:
   www.viget.com/inspire/styling-the-button-element-in-internet-explorer/ */
button {  width: auto; overflow: visible; }

/* Bicubic resizing for non-native sized IMG:
   code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */
.ie7 img { -ms-interpolation-mode: bicubic; }

/**
 * You might tweak these..
*/

body, select, input, textarea {
    /* #444 looks better than black: twitter.com/H_FJ/statuses/11800719859 */
    color: #444;
    /* Set your base font here, to apply evenly */
    /* font-family: Georgia, serif;  */
}

/* Headers (h1, h2, etc) have no default font-size or margin; define those yourself */
h1, h2, h3, h4, h5, h6 { font-weight: bold; }

a, a:active { color: #607890; }
a:hover { color: #036; }


/**
 * Primary styles
 *
 * Author: 
*/

/** Generated by FG *
@font-face {
	font-family: 'PTC55F';
	src: url('fonts/PTSans.ttf');
}
*/

@font-face {
    font-family: 'PTSans';
    src: url('f/PTSans-Regula.eot?#iefix') format('embedded-opentype'), 
        url('f/PTSans-Regular.woff') format('woff'), 
        url('f/PTSans-Regular.ttf')  format('truetype'),
        url('f/PTSans-Regular.svg#svgFontName') format('svg');
}

@font-face {
    font-family: 'PTSans';
    font-weight: bold;
    src: url('f/PTSans-Bold.eot?#iefix') format('embedded-opentype'), 
        url('f/PTSans-Bold.woff') format('woff'), 
        url('f/PTSans-Bold.ttf')  format('truetype'),
        url('f/PTSans-Bold.svg#svgFontName') format('svg');
}

@font-face {
    font-family: 'PTSans';
    font-style: italic;
    src: url('f/PTSans-Italic.eot?#iefix') format('embedded-opentype'), 
        url('f/PTSans-Italic.woff') format('woff'), 
        url('f/PTSans-Italic.ttf')  format('truetype'),
        url('f/PTSans-Italic.svg#svgFontName') format('svg');
}

@font-face {
    font-family: 'PTSans';
    font-style: italic;
    font-weight: bold;
    src: url('f/PTSans-BoldItalic.eot?#iefix') format('embedded-opentype'), 
        url('f/PTSans-BoldItalic.woff') format('woff'), 
        url('f/PTSans-BoldItalic.ttf')  format('truetype'),
        url('f/PTSans-BoldItalic.svg#svgFontName') format('svg');
}

em {
    font-style: italic;
}
a, a:active { color: #57b55c; text-decoration: none;}
a:hover { color: #2bb0f4; }


/*Pagination*/
.pagination {
    clear: both;
    width: 100%;
    margin: 4px auto;
    list-style: none;
    text-align: center;
    font-size: 12px;
    text-shadow: none;
}
.pagination li {
    display: inline;
    margin: 0 2px;
}
.pagination li .disabled {padding: 0 3px; }
.pagination li a {
    color: #666;
    background: #A5A5A5;
    padding: 6px 9px 5px 10px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    font-weight: bold;
}

.pagination li a:hover { color: #fff;}
.pagination li.active a  {
    background: #57B55C;
    padding: 6px 9px 5px 10px;
    color: #fff;

}
.pagination li.active a:hover {color: #000;}
.pagination li.text {
    margin: 0;
    color: #A5A5A5;
}
.pagination li.text a { 
    color: #A5A5A5;
    background: none;/*#D1D1D1*/
    padding: 0 3px;
    font-weight: normal;
}
.pagination li.text a:hover {
    color: #000;
}


body {
    color: #000;
    background: #fbfbfb;
    font-family: PTSans, Helectiva, Arial;
    height: 100%;
}

#container {
    position: relative;
    overflow: hidden;
    max-width: 940px;
    min-height: 300px;
    width: 96%;
    margin: 30px auto;
    padding-bottom: 24px;
    background-size: 100% 250px;
    box-shadow: 0 0 10px rgba(0, 20, 50, 0.25);
    text-shadow: 0 1px 0 #FFFEFF;


    background: #ffffff; /* Old browsers */
    background:#fff -webkit-gradient(linear, left bottom, left top, from(#fff), to(#eeecec)) repeat-x;
    background:#fff -webkit-linear-gradient(center bottom, #fff 50%, #eeecec) repeat-x;       
    background:#fff -moz-linear-gradient(center bottom, #fff 50%, #eeecec) repeat-x;       
    background: -o-linear-gradient(center bottom, #fff 50%, #eeecec) repeat-x;    
    background: -ms-linear-gradient(center bottom, #fff 50%, #eeecec) repeat-x;    
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeecec',GradientType=0 ); /* IE6-9 */
    background: linear-gradient(center bottom, #fff 50%, #eeecec) repeat-x;    

    -webkit-box-shadow:0 0 10px rgba(0,20,50,.25);
    -moz-box-shadow:0 0 10px rgba(0,20,50,.25);
    -o-box-shadow:0 0 10px rgba(0,20,50,.25);
    box-shadow:0 0 10px rgba(0,20,50,.25);              
    behavior: url(/css/pie/PIE.htc);

}

header.main {
    width: 240px;
    position: absolute;
    top:  30px;
    left: 0;
}
header.main a.logo-link {
    color: #000;
    margin: 0 0 30px 60px;
    display: block;
    overflow: hidden;
    width: 150px;
}
header.main h1 {
    font-size: 28px;
    float: left;
}

header.main h4 {	color: #2bb0f4;}
header.main h4 sup {	color: #57b55c;}

header nav ul {
    z-index: 100;
    list-style: none;
    font-size: 22px;
    line-height: 1.9;
    overflow: hidden;
    background: #fff;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    width: 180px;
    margin: 0 auto;
}
header nav ul a {color:  #000; padding-left: 20px;}
header nav ul li.active a {color: #57B55C;}
header nav ul a:hover, header nav ul .active a:hover {color: #2BB0F4;}
#main {
    width: 100%;
    z-index: 90;
}
#main header address {
    float: right;
}
.page article {
    margin: 20px 0 10px 0;
    padding: 0 60px 10px 240px;
    overflow: hidden;
    line-height: 1.8;
}
.page article.gray {
    background: #D1D1D1;
    text-shadow: 0 1px 0 #c0c0c0;
}
.page article p {
    padding: 10px 0;
}
.page article p.list-header{
    padding-bottom: 2px;
}
.page article h2 {
    font-size: 22px;
    margin: 10px 0;
}
.page article h3 {
    font-size: 20px;
    margin: 8px 0;
}
.page article h4 {
    font-size: 18px;
    margin: 6px 0;
    color: #787474;
    font-weight: 100;
}
.page .more {
    float: right;
    font-size: 13px;
    color: #a5a5a5;
}
.page .more:hover,.page .gray .more:hover { color: #000; }
.page .gray .more { color: #666; }
.page header {
    overflow: hidden;
    font-size: 13px;
    padding: 10px 10px 0 0;
}

.slider-project {
    width: 638px;
    height: 258px;
    position:relative;
    border: 1px solid #808181;
}
.slider-project img {
    position:absolute;
    top: 0px;
    left: 0px;
    display: none;
    width: 638px;
    height: 258px;
}
.slider-project a {
    border: 0;
    display: block;
}
.slider-project .nivo-controlNav {
    position: absolute;
    bottom: 3px;
    left: 50%;
    margin-left: -27px;
    overflow: hidden;
}
.slider-project .nivo-controlNav a {
    float: left;
    text-indent: -9999px;
    display: block;
    width: 8px;
    height: 8px;
    background: #999;
    margin: 0 5px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}
.slider-project .nivo-controlNav a:hover {
    background: #000;
}
footer.main {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 24px;
    color: #A5A5A5;
    font-size: 13px;
    overflow: hidden;
    width: 100%;
}
footer.main p {
    float: right;
    padding: 0 5px;
}


#contact-map {
    width:  638px;
    height: 300px;
}
.a-form div {
    width: 638px;
    overflow: hidden;
    margin: 18px 0;
}
.a-form label {
    display: block;
    float: left;
    text-align: right;
    width: 18%;
    margin: 0 2% 0 0;
}
.a-form input, .a-form select, .a-form textarea {
    width: 79%;
    float: left;
    border: 1px solid #AAAAAA;
    padding: 4px 2px;
}
.a-form textarea {height: 220px;}
.a-form .checkbox input {
    width: auto;
    margin-left: 20%;

}
.a-form .checkbox label {
    width: auto;
    margin-left: 2%;
    line-height: 1;
}
.a-form input:focus, .a-form select:focus, .a-form textarea:focus {
    background: #FFFFDF;
}
.a-form button {
    cursor: pointer;
}
.a-form .btn-wrap {
    text-align: right;
}

.a-form .btn-wrap button{
    background: #57B55C;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    font-weight: bold;
    padding: 0.4em 1.2em;
    display: inline;
    border: 0;
    color: #fff;   
}

.a-form .errors {
    font-size: 80%;
    color: red;
    clear: both;
    margin-left: 20%;
}
.contact-info {
    overflow: hidden;
    width: 100%;
}
.contact-info address {
    float: left;
    width: 40%;
}
.contact-info brief-link {
    float: left;
    width: 60%;
}
.brief-download {
    padding-right: 28px;
    background: url(../img/doc_ico.png) right center no-repeat;
}


.flashMessages {
    padding: 10px 60px 0 240px;

}
.flashMessages ul {
    list-style: none; 
    margin: 0; 
    background: #aaa; 
    color: #fff;
    padding: 5px 10px;
    border: 2px solid #aaa ;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    text-shadow: none;
}
/**
 * Non-semantic helper classes: please define your styles before this section.
*/


/*
 * jQuery Nivo Slider v2.6
 * http://nivo.dev7studios.com
 *
 * Copyright 2011, Gilbert Pellegrom
 * Free to use and abuse under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
 * 
 * March 2010
 */
 
 
/* The Nivo Slider styles */
.nivoSlider {
	position:relative;
}
.nivoSlider img {
	position:absolute;
	top:0px;
	left:0px;
}
/* If an image is wrapped in a link */
.nivoSlider a.nivo-imageLink {
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	border:0;
	padding:0;
	margin:0;
	z-index:6;
	display:none;
}
/* The slices and boxes in the Slider */
.nivo-slice {
	display:block;
	position:absolute;
	z-index:5;
	height:100%;
}
.nivo-box {
	display:block;
	position:absolute;
	z-index:5;
}
/* Caption styles */
.nivo-caption {
	position:absolute;
	left:0px;
	bottom:0px;
	background:#000;
	color:#fff;
	opacity:0.8; /* Overridden by captionOpacity setting */
	width:100%;
	z-index:8;
}
.nivo-caption p {
	padding:5px;
	margin:0;
}
.nivo-caption a {
	display:inline !important;
}
.nivo-html-caption {
    display:none;
}
/* Direction nav styles (e.g. Next & Prev) */
.nivo-directionNav a {
	position:absolute;
	top:45%;
	z-index:9;
	cursor:pointer;
}
.nivo-prevNav {
	left:0px;
}
.nivo-nextNav {
	right:0px;
}
/* Control nav styles (e.g. 1,2,3...) */
.nivo-controlNav a {
	position:relative;
	z-index:9;
	cursor:pointer;
}
.nivo-controlNav a.active {
	font-weight:bold;
}







/* For image replacement */
.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }

/* Hide for both screenreaders and browsers:
   css-discuss.incutio.com/wiki/Screenreader_Visibility */
.hidden { display: none; visibility: hidden; }

/* Hide only visually, but have it available for screenreaders: by Jon Neal.
  www.webaim.org/techniques/css/invisiblecontent/  &  j.mp/visuallyhidden */
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: drupal.org/node/897638 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }

/* The Magnificent Clearfix: Updated to prevent margin-collapsing on child elements.
   j.mp/bestclearfix */
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }
.clearfix:after { clear: both; }
/* Fix clearfix: blueprintcss.lighthouseapp.com/projects/15318/tickets/5-extra-margin-padding-bottom-of-page */
.clearfix { zoom: 1; }



/**
 * Media queries for responsive design.
 *
 * These follow after primary styles so they will successfully override.
*/

@media all and (orientation:portrait) {
    /* Style adjustments for portrait mode goes here */

}

@media all and (orientation:landscape) {
    /* Style adjustments for landscape mode goes here */

}

/* Grade-A Mobile Browsers (Opera Mobile, Mobile Safari, Android Chrome)
   consider this: www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/ */
@media screen and (max-device-width: 480px) {


    /* Uncomment if you don't want iOS and WinMobile to mobile-optimize the text for you: j.mp/textsizeadjust */
    /* html { -webkit-text-size-adjust:none; -ms-text-size-adjust:none; } */
}


/**
 * Print styles.
 *
 * Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
*/
@media print {
    * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important;
        -ms-filter: none !important; } /* Black prints faster: sanbeiji.com/archives/953 */
    a, a:visited { color: #444 !important; text-decoration: underline; }
    a[href]:after { content: " (" attr(href) ")"; }
    abbr[title]:after { content: " (" attr(title) ")"; }
    .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
    pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
    thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */
    tr, img { page-break-inside: avoid; }
    @page { margin: 0.5cm; }
    p, h2, h3 { orphans: 3; widows: 3; }
    h2, h3{ page-break-after: avoid; }
}


