﻿/* ----- IMPORTED CSS FILES ----- */

@import url('reset.css');


/* ----- GOOGLE WEB FONTS ----- */

@import url(http://fonts.googleapis.com/css?family=Open+Sans:400,700);


/* ----- BASIC ELEMENTS ----- */

body {
	background-color: #FFFFFF;
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	color: #333333;
}

table {
  margin: 1em 0 1em 0;
}

td, th {
	padding: 3px 2px 3px 2px;
	text-align: left;
}

td p, th p {
    margin: 0;
}

td h1, td h2, td h3, th h1, th h2, th h3 {
    margin: 1em 0 1em 0;
}

a {
    color: #333333;
	text-decoration: underline;
	font-weight: normal;
}

a:hover {
	color: #A72A4F;
}

p {
	margin: 0 0 1em 0;
}

.small {
	font-size: 12px;
}

.normal {
    font-size: 16px;
}

.large {
	font-size: 20px;
}

.left {
    text-align: left;
}

.center {
    text-align: center;
}

.right {
	text-align: right;
}

.highlight {
	color: #009B3E;
}

h1 {
	font-size: 25px;
	font-weight: normal;
	color: #333333;
	margin: 0 0 1em 0;
}

h2 {
	font-size: 20px;
	font-weight: normal;
	color: #333333;
	margin: 0 0 1em 0;
}

h3 {
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 1em 0;
}

h1 a, h2 a, h3 a {
    text-decoration: none;
}

hr {
	width: 100%;
	height: 0;
	border: 0;
	border-top: 1px solid #333333;
	text-align: left;
	margin: 1em 0 1em 0;
}

ul, ol {
	margin: 0 0 1em 0;
	padding: 0 0 0 22px;
}

ul li {
    list-style-type: square;
}

ol li {
	list-style-type: decimal;
	line-height: 150%;
}

object, embed, iframe {
    border: 1px solid #333333;
    background-color: transparent;
    margin: 1em 0 1em 0;
}


/* ----- FORM ELEMENTS ----- */

fieldset {
    padding: 10px;
    border: 1px solid #333333;
    margin: 2em 2em 2em 0;
}

legend {
	font-size: 20px;
    padding: 0 10px 0 10px;
    margin: 0 0 0 -20px;
}

label {
    display: block;
    float: left;
    width: 150px;
	margin: 0;
}

.label_inline {
    display: inline;
    float: none;
    margin: 0 0 1em 0;
}

input[type="text"], input[type="password"], input[type="email"] {
	width: 200px;
	height: 15px;
	margin: 0 0 1em 0;
	border: 1px solid #333333;
	background-color: #E9E9E9;
	color: #333333;
}

select {
	width: 202px;
	margin: 0 0 1em 0;
	border: 1px solid #333333;
	background-color: #E9E9E9;
	color: #333333;
}

input[type="submit"], input[type="button"], input[type="reset"] {
	width: auto;
	height: 25px;
	padding: 0 20px 0 20px;
	margin: 1em 1em 1em 0;
	background-image: url(../images/theme/button-background.png);
	background-repeat: repeat-x;
	background-position: 0 0;
	border: 1px solid #009B3E;
	font-size: 13px;
	color: #FFFFFF;
	cursor: pointer;
}

input[type="submit"]:hover, input[type="button"]:hover, input[type="reset"]:hover {
	background-position: 0 -25px;
	color: #FFFFFF;
	border: 1px solid #A72A4F;
}

input[type="submit"]:active, input[type="button"]:active, input[type="reset"]:active {
	background-position: 0 -50px;
	color: #FFFFFF;
	border: 1px solid #A72A4F;
	box-shadow: inset 1px 1px 1px 0px #333333;
}

input[type="radio"], input[type="checkbox"] {
	width: auto;
	margin: 5px 1em 1em 0;
	float: left;
}

textarea {
	width: 350px;
	height: 200px;
	margin: 0 0 1em 0;
	border: 1px solid #333333;
	background-color: #E9E9E9;
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	color: #333333;
}

input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, select:focus, textarea:focus {
	background-color: #FFFFFF;
}

.validation-summary {
    font-size: 13px;
    line-height: 150%;
    color: #A72A4F;
    font-weight: bold;
}

.status {
    font-size: 18px;
    font-weight: bold;
    color: #009B3E;
}


/* ----- IMAGE ELEMENTS ----- */

img {
	border: 0;
}

img.border {
	border: 1px solid #333333;
	margin: 0 0 1em 0;
}

img.no_margins {
	border: 0;
	margin: 0;
}

img.no_margins_border {
	border: 1px solid #333333;
	margin: 0;
}

img.left_align {
	margin: 0 1em 1em 0;
	float: left;
}

img.right_align {
	margin: 0 0 1em 1em;
	float: right;
}

img.left_align_border {
	margin: 0 1em 1em 0;
	float: left;
	border: 1px solid #333333;
}

img.right_align_border {
	margin: 0 0 1em 1em;
	float: right;
	border: 1px solid #333333;
}


/* ----- SITE BACKGROUND ----- */

#background {
    position: fixed;
    width: 100%;
    height: 100%;
    background-image: url(../images/theme/background-grid.png);
    top: 0px;
    left: 0px;
    z-index: 0;
}


/* ----- HEADER ELEMENTS ----- */

header {
	height: 150px;
	background-color: #009B3E;
	border-bottom: 1px solid #FFFFFF;
	position: relative;
	z-index: 1;
}

header nav {
	height: 40px;
	padding: 10px 0 0 0;
	background-color: #153534;
	border-bottom: 1px solid #FFFFFF;
}

header nav ul {
    padding: 0;
	text-align: right;
}

header nav ul li {
	display: inline-block;
	list-style-type: none;
}

header nav ul li a {
	display: block;
	margin: 0;
	border-right: 1px solid #15CEC8;
	padding: 0 20px 0 20px;
	color: #FFFFFF;
    text-decoration: none;
}

header nav ul li:last-child a {
    border: 0;
}

header nav ul li a:hover, header nav ul li a.active {
    color: #15CEC8;
}

header h4 {
	text-align: right;
	color: #FFFFFF;
	font-size: 22px;
	font-weight: normal;
	padding: 50px 10px 0 0;
}

figure#logo {
	float: left;
	padding: 25px 0 0 10px;
}

/* ----- MAIN CONTENT ELEMENTS ----- */

#main {
	width: 960px;
	margin: 0 auto 0 auto;
	position: relative;
	z-index: 1;
}

#main main {
	width: 620px;
	min-height: 500px;
	float: left;
	padding: 50px 0 100px 20px;
}

#main main header, #main aside header {
	height: auto;
	background-color: transparent;
	border: 0;
	position: static;	
}

#main aside {
	width: 300px;
	float: left;
	padding: 50px 0 50px 20px;
}

#main aside #calendar_link {
	height: 53px;
	background-image: url(../images/theme/calendar_background.png);
	background-repeat: no-repeat;
	background-position: top right;
	margin: 0 0 20px 0;
}

#main aside #news {
	min-height: 100px;
	background-color: rgba(21,206,200,0.8);
	margin: 0 0 23px 0;
        padding: 10px;
}

#main aside h2 {
        font-size: 22px;
        color: #FFFFFF;
}

#main aside h3 {
        font-size: 14px;
        font-weight: bold;
        color: #FFFFFF;
}

#main aside p {
        font-size: 14px;
        color: #FFFFFF;
}

#main aside a {
        color: #FFFFFF;
}

#main aside a:hover {
	color: #A72A4F;
}

#main aside hr {
	border-top: 1px dotted #FFFFFF;
}

#main aside #contact_link {
	height: 53px;
	background-image: url(../images/theme/contact_background.png);
	background-repeat: no-repeat;
	background-position: top right;
	margin: 0 0 20px 0;	
}

#main aside #calendar_link a, #main aside #contact_link a {
	display: block;
	height: 45px;
	padding: 5px 0 0 10px;
	font-size: 22px;
	font-weight: normal;
	color: #FFFFFF;
	text-decoration: none;	
}

#main aside #calendar_link a {
	width: 290px;
}

#main aside #contact_link a {
	width: 180px;
}

#main aside #contact_link figure {
	width: 85px;
	height: 35px;
	float: right;
        text-align: right;
	padding: 10px 10px 0 15px;
}

#main aside #contact_link figure a {
	display: inline;
	width: auto;
	height: auto;	
}


/* ----- FOOTER ELEMENTS ----- */

footer {
    width: 100%;
    min-width: 960px;
    height: 70px;
    padding: 10px 0 0 0;
    position: fixed;
    bottom: 0;
    left: 0;
    background-color: #153534;
    background-color: rgba(21,53,52,0.9);
    z-index: 2;
}

footer h3 {
	font-size: 13px;
	font-weight: bold;
	margin: 0;
}

footer p {
    font-size: 13px;
    margin: 0;
	color: #FFFFFF;
}

footer .small {
	font-size: 11px;	
}

footer a {
    text-decoration: none;
    font-weight: normal;
	color: #FFFFFF;
}

footer a:hover {
    text-decoration: underline;
	color: #FFFFFF;
}

footer #address {
    width: 700px;
    margin: -13px 20px 0 20px;
	padding: 13px 0 0 0;
    float: left;
	background-image: url(../images/theme/footer_background.png);
	background-repeat: no-repeat;
}

footer #development {
    width: 200px;
    height: 20px;
    position: absolute;
    bottom: 5px;
    right: 10px;
    text-align: right;
}

footer #development p {
    font-size: 11px;
}


/* ----- MEDIA QUERY BASE LAYOUT 1200px ----- */


@media screen and (min-width: 1250px) {

	#main {
		width: 1200px;
	}
	
	#main main {
		width: 780px;
	}
	
	#main aside {
		width: 380px;
	}
	
	footer {
		min-width: 1200px;
	}
	
	#main aside #calendar_link a {
		width: 370px;
	}
	
	#main aside #contact_link a {
		width: 260px;
	}

}


/* ----- JQUERY BXSLIDER ----- */

.bx-wrapper {
	position: relative;
	margin: 0 auto 0 auto;
	padding: 0;
	*zoom: 1;
}

.bx-wrapper img {
	max-width: 100%;
	display: block;
}

/* ----- JQUERY GALLERY ----- */

#gallery figure {
    width: 170px;
    height: 170px;
    /*border: 1px solid #A6A4AF;*/
    margin: 0 10px 0 0;
    float: left;
    text-align: center;
}

.mfp-fade.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.30s ease;
    -moz-transition: all 0.30s ease;
    transition: all 0.30s ease;
}

.mfp-fade.mfp-bg.mfp-ready {
    opacity: 0.90;
}

.mfp-fade.mfp-bg.mfp-removing {
    opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;
    -webkit-transition: all 0.30s ease;
    -moz-transition: all 0.30s ease;
    transition: all 0.30s ease;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1;
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0;
}