/*
 * General stylesheet
 */



* {margin:0;outline:none;padding:0;}
code,kbd,samp,pre,tt,var,textarea,input,select,isindex {font:inherit;font-size:100%}
dfn,i,cite,var,address,em {
	font-style: normal;
	color: #0B0B0B;
}
th,b,strong,h1,h2,h3,h4,h5,h6 {
	font-weight: bold;
	color: #353131;
}
a,img,a img,iframe,form,fieldset,abbr,acronym,object,applet {border:none}
table {border-collapse:collapse;border-spacing:0}
caption,center {vertical-align:top}
th,td {
	vertical-align: middle;
	color: #131313;
}
q {quotes:"" ""}
ul,ol,dir,menu {list-style:none}
sub,sup {vertical-align:baseline}
a {color:inherit}
hr {display:none}

/* HTML5 reset for older browsers */
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block;}

/*
 * General styles
 */

html, body {
    width: 100%;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 100%;
    color: #555555;
    background-color: #03080d;
}

input[type="text"], input[type="password"], select, textarea {
    padding: 2px 5px;
    color: #2d2d2d;
    font-size: inherit;
}

input[type="text"], input[type="password"], select, textarea {
    border: 0 none;
}

a {
    color: inherit;
    text-decoration: underline;
}

a:hover {
    text-decoration: none;
}

.clear {
    height: 1px;
    line-height: 1px;
    font-size: 1%;
    clear: both;
}

.but, .ico {
    display: inline-block;
    border: 0 none;
    text-decoration: none;
    cursor: pointer;
}

/*
 * Main frame
 */

#wrapper {
    float: left;
    width: 100%;
    min-height: 100%;
    position: relative;
}

.clearfix {
	float: left;
	width: 100%;
	clear: both;
	background-color: #F5EDED;
	color: #494444;
}

.full-width {
	float: left;
	width: 100%;
	clear: both;
	background-color: #DDD7D7;
}

.inner-padding {
	width: 80%;
	margin: 0 auto;
	background-color: #F7F2F2;
}

/*
 * General styles for columns layout
 */

.col-group {
	width: 100%;
	float: left;
	margin-top: 25px;
	color: #0E0D0D;
}

.col {
    width: 100%;
    float: left;
    margin-bottom: 25px;
}

.col-inner-padding {
    padding: 5%;
}

/*
 * Typography & Colors
 */

#content, #footer {
    font-size: 0.8em;
}

h1 {
	font-size: 2.2em;
	font-weight: 300;
	margin-bottom: 20px;
	color: #434040;
}

h2 {
	font-size: 1.5em;
	font-weight: 300;
	margin-bottom: 20px;
	color: #4A4646;
}

h3 {
    font-size: 1.3em;
    font-weight: 300;
    margin-bottom: 15px;
}

input[type="submit"], input[type="button"], button {
    text-transform: uppercase;
    font-size: 1em;
    font-weight: 300;
}

.transp-bg {
    background: url('../images/transp-bg.png') repeat 0 0;
}

.light-texture-bg {
    color: #2d2d2d;
    background: url('../images/texture.png') repeat #acacac;
}

.dark-bg {
    color: #555555;
    background-color: #03080d;
}

.dark-bg h1,
.dark-bg h2,
.dark-bg h3 {
	color: #413E3E;
}

/*
 * Header
 */

#header {
	padding: 1% 0;
	background-color: #F5F7F9;
}

#logo {
    float: left;
}

/*
 * Horizontal navigation bar
 */

nav {
	width: 100%;
	color: #0E0D0D;
}

.horizontal-nav ul {
    float: left;
    width: 100%;
}

.horizontal-nav li {
    width: 100%;
    position: relative;
    z-index: 100;
}

.horizontal-nav a,
.horizontal-nav span.label {
    display: block;
    width: 90%;
    line-height: 2em;
    padding: 0.5em 5%;
    color: #fefefe;
    text-transform: uppercase;
    font-size: 0.8em;
    text-decoration: none;
    cursor: pointer;
}

.horizontal-nav a:hover {
    color: #d6dee5;
}

.horizontal-nav .active,
.horizontal-nav .active:hover {
    cursor: default;
}

.horizontal-nav li:hover > a {
    color: #d6dee5;
}

.horizontal-nav ul ul {
    float: none;
    overflow: hidden;
    position: relative;
    z-index: -1;
}

.horizontal-nav ul ul li {
    width: 100%;
    height: auto;
    margin-top: -3em;
    -moz-transition: 0.4s linear 0.4s;
    -ms-transition: 0.4s linear 0.4s;
    -o-transition: 0.4s linear 0.4s;
    -webkit-transition: 0.4s linear 0.4s;
    transition: 0.4s linear 0.4s;
}

.horizontal-nav ul ul a {
    text-transform: none;
    width: 80%;
    padding: 0.2em 10%;
    height: auto;
}

.horizontal-nav .menu-overlay {
    width: 100%;
    height: 3em;
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    cursor: pointer;
}

.horizontal-nav .parent:hover ul {
    padding: 0.5em 0;
    -moz-transition: 0.4s linear 0.4s;
    -ms-transition: 0.4s linear 0.4s;
    -o-transition: 0.4s linear 0.4s;
    -webkit-transition: 0.4s linear 0.4s;
    transition: 0.4s linear 0.4s;
}

.horizontal-nav .parent:hover ul li {
    margin-top: 0;
    -moz-transition: 0.4s linear 0.4s;
    -ms-transition: 0.4s linear 0.4s;
    -o-transition: 0.4s linear 0.4s;
    -webkit-transition: 0.4s linear 0.4s;
    transition: 0.4s linear 0.4s;
}

/*
 * Vertical navigation bar
 */

.vertical-nav ul {
    width: 100%;
    float: left;
}

.vertical-nav li {
    width: 100%;
    overflow: hidden;
    float: left;
    position: relative;
    z-index: 100;
}

.vertical-nav a,
.vertical-nav span.label {
    display: block;
    float: left;
    max-width: 100%;
    line-height: 2em;
    font-size: 1em;
    text-decoration: none;
    white-space: nowrap;
    outline: 0;
    cursor: pointer;
}

.vertical-nav a:hover {
    text-decoration: underline;
}

.vertical-nav ul ul {
    width: 90%;
    float: left;
    margin-left: 10%;
    position: relative;
    z-index: -1;
}

.vertical-nav ul ul li {
    width: 100%;
    height: auto;
    margin-top: -2em;
    opacity: 0;
    -moz-transition:  0.4s linear 0.4s;
    -ms-transition: 0.4s linear 0.4s;
    -o-transition: 0.4s linear 0.4s;
    -webkit-transition: 0.4s linear 0.4s;
    transition: 0.4s linear 0.4s;
}

.vertical-nav span.label {
    max-width: 90%;
    padding-right: 10%;
    position: relative;
}

.vertical-nav .menu-icon {
    display: block;
    width: 10%;
    height: 2em;
    background: url('../images/ico-arrow-down.png') no-repeat 100% center;
    position: absolute;
    top: 0;
    right: 0;
}

.vertical-nav .menu-overlay {
    width: 100%;
    height: 2em;
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    cursor: pointer;
}

.vertical-nav .parent:hover ul li {
    margin-top: 0;
    opacity: 1;
}

.vertical-nav .parent:hover span.menu-icon {
    background: url('../images/ico-arrow-up.png') no-repeat 100% center;
}

/*
 * Header navigation
 */

.header-menu {
    float: left;
    width: 100%;
    padding: 25px 0;
}

.header-menu ul {
    background-color: #2d2d2d;
}

.header-menu li {
    border-bottom: 2px solid #03080d;
}

.header-menu .active,
.header-menu .active:hover {
    color: #03080d;
    background-color: #fefefe;
}

.header-menu span.active,
.header-menu span.active:hover {
    color: #03080d;
    background-color: #fefefe;
}

.horizontal-nav li:hover > .active {
    color: #03080d;
}

.header-menu ul ul {
    background-color: #141414;
}

.header-menu ul ul li {
    border: 0 none;
}

/*
 * Full width image
 */

.full-width-image img {
    display: none;
    margin: 0;
}

.full-width-image .image-small {
    display: block;
}

/*
 * Content area
 */

#content {
    padding-bottom: 25px;
}

figure img {
    float: left;
    max-width: 100%;
    height: auto;
    width: auto\9;
    margin-bottom: 10px;
}

img.img-left {
    margin-right: 10px;
}

img.img-right {
    float: right;
    margin-left: 10px;
}

article {
    line-height: 1.7em;
}

p {
	line-height: 1.7em;
	margin-bottom: 2em;
	color: #454242;
	font-size: 115%;
}

p.last {
	margin-bottom: 0;
	font-size: 115%;
}

blockquote {
    margin-left: 3em;
    padding-left: 1.5em;
    border-left: 1px solid #03080d;
    word-wrap: break-word;
}

article ul {
    margin-left: 4em;
    margin-bottom: 2em;
    list-style-type: disc;
}

article ol {
    margin-left: 4em;
    margin-bottom: 2em;
    list-style-type: decimal-leading-zero;
}

article ul li, article ol li {
	padding-left: 0.5em;
	color: #3B3636;
}

article ul.last, article ol.last {
    margin-bottom: 0;
}

.separator {
    float: left;
    width: 100%;
    height: 1px;
    line-height: 1px;
    background-color: #03080d;
    border-bottom: 1px solid #d6dee5;
    margin-top: 0.5em;
}

.content-block {
    padding: 12px 15px;
    margin-bottom: 2em;
}

.margin-25 {
    margin-bottom: 25px;
}

/*
 * Footer
 */

#footer {
	padding-bottom: 1%;
	border-top: 1px solid #d7dad1;
	background-color: #F9F4F4;
}

#copyright {
    margin: 4em 0 1em 0;
}

/*
 * Social links (big)
 */

a.social-big {
    float: left;
    width: 35px;
    height: 35px;
    margin-right: 8px;
    background: url('../images/social-big.png') no-repeat 0 0;
    text-indent: -2000em;
    -moz-transition:  all 0.2s ease-out 0s;
    -ms-transition: all 0.2s ease-out 0s;
    -o-transition: all 0.2s ease-out 0s;
    -webkit-transition: all 0.2s ease-out 0s;
    transition: all 0.2s ease-out 0s;
}

a.social-big.facebook:hover {
    background-position: 0 0;
}

a.social-big.facebook {
    background-position: 0 -35px;
}

a.social-big.twitter:hover {
    background-position: -43px 0;
}

a.social-big.twitter {
    background-position: -43px -35px;
}

a.social-big.googleplus:hover {
    background-position: -86px 0;
}

a.social-big.googleplus {
    background-position: -86px -35px;
}

a.social-big.linkedin:hover {
    background-position: -129px 0;
}

a.social-big.linkedin {
    background-position: -129px -35px;
}

a.social-big.myspace:hover {
    background-position: -172px 0;
}

a.social-big.myspace {
    background-position: -172px -35px;
}

/*
 * Form elements
 */

fieldset {
    float: left;
    margin: 10px 10px 10px 0;
}

fieldset.form-wrapper {
    margin: 0;
}

input[type="text"], input[type="password"], select, textarea {
    display: block;
    float: left;
    width: 93%;
    padding: 7px;
    margin: 0 5px 5px 0;
    color: #555555;
    background: url('../images/transp-bg.png') repeat 0 0 #ccd0d3;
    border: 1px solid #ccd0d3;
}

select {
    width: auto;
    min-width: 40%;
}

input[type="submit"], input[type="button"], button {
    display: block;
    float: left;
    padding: 7px 10px;
    margin: 0 10px 5px 0;
    cursor: pointer;
    border: 1px solid #929292;
}

input[type="checkbox"], input[type="radio"] {
    background: url('../images/transp-bg.png') repeat 0 0 #ccd0d3;
    border: 1px solid #ccd0d3;
}

.but-black {
    color: #acacac;
    background-color: #03080d;
}

.but-gray {
    color: #acacac;
    background-color: #3e4348;
}

.but-lightgray {
    color: #03080d;
    background-color: #e2e5e7;
}

label {
    padding: 0 20px 0 0;
}

.nowrap {
    white-space: nowrap;
}

/*
 * Map
 */

#map_canvas {
    height: 22em;
    min-height: 100%;
    overflow: hidden;
    width: 100%;
}
