html {
  font-size: 66.7%; }
  
body {
  font-size: 1.5em;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
	}
	
h1 { font-size: 4.0rem; line-height: 1.2;  margin-top:1.5rem; margin-bottom: 2rem;}
h2 { font-size: 3.6rem; line-height: 1.25; margin-top:1rem; margin-bottom: 1.5rem;}
h3 { font-size: 3.0rem; line-height: 1.3;  }
h4 { font-size: 2.4rem; line-height: 1.35; }
h5 { font-size: 1.8rem; line-height: 1.5;  }
h6 { font-size: 1.5rem; line-height: 1.6;  }


@media (max-width: 767px) {
  h1 { font-size: 3.5rem; }
  h2 { font-size: 3.2rem; }
  h3 { font-size: 3.0rem; }
  h4 { font-size: 2.6rem; }
  h5 { font-size: 2.0rem; }
  h6 { font-size: 1.5rem; }
}

aside p {
	font-size: 80%;
	}
	
aside h1 {
	font-size:1.5em;
	}
	
#footer h1 {
	font-size: 3rem;
	}
	
#footer h2 {
	font-size: 2.5rem;
	}
	
#footer h3 {
	font-size: 3rem;
	}
	
#footer p {
	font-size: 1.3rem;
	line-height: 1.8rem;
	}

a {
	text-decoration: none;
	-webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
	}

a:focus, a:active {
	outline:none;
	}
	
figcaption {
	font-size:1.2rem;
	display: block;
	margin-bottom: 1em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}

.subheadline {font-size: 2rem;}

blockquote, q {
	border-left: 4px solid;
	padding-left: 1rem;
	}

hr {
  margin-top: 3rem;
  margin-bottom: 3.5rem;
    }
  
.mod_article .ce_text.intro {
	padding-bottom:3em;
	}

.mod_breadcrumb ul {
    padding:0;
    font-size: 1.1rem;
    list-style-type:none;
    }

.mod_breadcrumb li {
    float:left;
    padding-right: .5em;
    }

.mod_breadcrumb li:after {
	content: '\e918';
    font-family: icons;
    padding-left: 0.3em;
    }

.mod_breadcrumb .last:after {
	display:none;
	}

.mod_breadcrumb .first {
    padding-left:0;
    }

.mod_breadcrumb .active {
    font-weight:bold;
    background: none;
    }

p.time::before {
    content: '\f133';
    font-family: icons;
    padding-right: 0.4em;
    }
    
p.info {
	display:inline-block;
	border-bottom: 1px solid;
	}

body[class^="icon-"]:before,
body[class*="icon-"]:before,
.mod_navigation li[class^="icon-"]:before,
.mod_navigation li[class*="icon-"]:before,
.mod_customnav li[class^="icon-"]:before,
.mod_customnav li[class*="icon-"]:before{
	display: none;
	}
	
.mod_navigation strong {
	font-weight:normal;
	}

/* --------------- Lists and tables --------------- */

.ce_table ul, .ce_list ul, .ce_text ul {
  	list-style: circle inside;
  	list-style-position: outside;
  	margin-left: 1em;
  	padding-left: 0;
  	margin-top: 0;
	}
	
.ce_table ol, .ce_list ol, .ce_text ol {
  	list-style: decimal inside;
  	list-style-position: outside;
  	margin-left: 1em;
  	padding-left: 0;
  	margin-top: 0;
	}

.ce_table ul ul, .ce_list ul ul, .ce_text ul ul,
.ce_table ul ol, .ce_list ul ol, .ce_text ul ol,
.ce_table ol ol, .ce_list ol ol, .ce_text ol ol,
.ce_table ol ul, .ce_list ol ul, .ce_text ol ul {
  	margin: 1.5rem 0 1.5rem 3rem;
  	}
  	
.ce_table li, .ce_list li, .ce_text li {
  	margin-bottom: 1rem;
	}

[class*="ce_"] table, .mod_calendar table {
	width:100%;
	}
	
[class*="ce_"] th, .mod_calendar th,
[class*="ce_"] td, .mod_calendar td {
  	padding: 12px 15px;
  	text-align: left;
  	border-bottom: 1px solid #E1E1E1;
	}
	
[class*="ce_"] th:first-child, .mod_calendar th:first-child,
[class*="ce_"] td:first-child, .mod_calendar td:first-child {
  	padding-left: 0;
	}
  
[class*="ce_"] th:last-child, .mod_calendar th:last-child,
[class*="ce_"] td:last-child, .mod_calendar td_last-child {
  	padding-right: 0;
	}

.tableform table label {
	padding-right:2em;
	}
	
.mod_calendar thead .label {
    width: 14.28%;
	}

.mod_calendar .event.upcoming {
    font-size: 80%;
	}
	
td.weekend.empty {
	background:transparent;
	}
	
/* ------------------ Header image styling ----------------- */

.header-image h1 { font-size: 5.0rem; line-height: 1.2;}
.header-image h2 { font-size: 4.6rem; line-height: 1.25;}
.header-image h3 { font-size: 4.0rem; line-height: 1.3;}
.header-image h4 { font-size: 3.4rem; line-height: 1.35;}
.header-image h5 { font-size: 2.8rem; line-height: 1.5;}
.header-image h6 { font-size: 2.5rem; line-height: 1.6;}
.header-image p {font-size:1.8rem;}

@media (max-width: 767px) {
  .header-image h1, .hero h1 { font-size: 2rem; margin-bottom: 1rem; margin-top: 0; line-height:1;}
  .header-image h2, .hero h2 { font-size: 1.5rem; margin-bottom: .5rem;}
  .header-image p, .header-image a { font-size: 1.1rem; }
  
}

.image_container.float_left { margin-right:3em;}
.image_container.float_right { margin-left:3em;}

.image_container .cboxElement:after {
	content: '\e907';
    font-family: icons;
    padding: .3em .7em;
    position: absolute;
    top:0;
    left:0;
    z-index:1;
    opacity: .7;
	}
	

/* --------------- Forms -------------- */

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="submit"],
button[type="submit"],
textarea, select {
	height: 38px;
    width: 100%;
    padding: 6px 10px;
    background-color: rgb(66, 87, 134);
    background-color: rgba(66, 87, 134, 0.2);
    border: 1px solid transparent;
    border-bottom: 1px solid #000;
    box-shadow: none;
    box-sizing: border-box;
    color: #fff;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius:0;
	}
	
input[type="text"].captcha {
	display: inline-block;
	width: 4em;
	}
	
.light input[type="email"],
.light input[type="number"],
.light input[type="search"],
.light input[type="text"],
.light input[type="tel"],
.light input[type="url"],
.light input[type="password"],
.light textarea, .light select {
    background-color: rgb(255,255,255);
    background-color: rgba(255,255,255,0.03);
    border: 1px solid transparent;
    border-bottom: 1px solid #fff;
    color: #fff;
	}
	
textarea {
  	min-height: 65px;
  	padding-top: 6px;
  	padding-bottom: 6px;
  }
  
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  	background-color: rgb(255,255,255);
  	background-color: rgba(255,255,255,0);
  	outline: 0;
  }
  
label,
legend {
  	display: block;
  	margin-bottom: .5rem;
  	font-weight: 300;
	}

.radio_container label,
.checkbox_container label {
  	display: inline-block;
  	}

fieldset {
  	padding: 0;
  	border-width: 0;
	}
  
input[type="checkbox"],
input[type="radio"] {
  display: inline;
	}
  
label > .label-body {
  	display: inline-block;
  	margin-left: .5rem;
  	font-weight: normal;
	}
  
label.block {
	width:100%;
	}
	
.widget.block select {
	width: 100%;
	}

select { border-bottom-left-radius: 0;}

.error { color: #ff0000; }

/*.ce_comments input[type="email"],
.ce_comments input[type="number"],
.ce_comments input[type="search"], 
.ce_comments input[type="text"],
.ce_comments input[type="tel"],
.ce_comments input[type="url"],
.ce_comments input[type="password"],
.ce_comments textarea,
.ce_comments select {
	width:auto;
	}
	
.ce_comments label {
	display: inline;
	}
*/
	
.comment_default {
	border: 1px solid #dedede;
	padding: 1em;
	margin-bottom: 1em;
	}
	
.comment_default .reply {
	padding-left:2em;
	}

.comment_default .reply p.info {
	font-weight: bold;
	}

/* ------------- Buttons and input submit -------------- */

input,
textarea,
select,
fieldset,
button {
  	margin-bottom: 1.5rem; }
  
input[type="submit"], button[type="submit"] {
  	display: inline-block;
  	height: 38px;
  	padding: 0 30px;
  	text-align: center;
  	font-size: 1.5rem;
  	font-weight: 300;
  	line-height: 38px;
  	text-decoration: none;
  	white-space: nowrap;
  	background-color: transparent;
  	border-radius: 4px;
  	border: 1px solid #425786;
  	color: #425786;
  	cursor: pointer;
  	box-sizing: border-box; }

input[type="submit"]:hover,
input[type="submit"]:focus
button:hover,
button:focus {
  	color: #0FA0CE;
  	border-color: #0FA0CE;
  	outline: 0;
	}
  
.light input[type="submit"], .light button[type="submit"] {
  	color: #fff;
  	border-color: #fff;
  	-webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
	}
  
.light input[type="submit"]:hover .light button[type="submit"]:hover {
  	color: #0FA0CE;
  	border-color: #0FA0CE;
	}
  
*[class*="btn"] a, a.btn, a.btn-large, a.btn-small {
	display: inline-block;
	border: 1px solid #425786;
	color: #425786;
	text-decoration:none;
	padding:.5em .8em;
	border-radius: 3px;
	margin-bottom: .5em;
	-webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
	}

*[class*="btn"] a:hover, a.btn:hover, a.btn-large:hover, a.btn-small:hover {
	border-color: #0FA0CE;
	}

*[class*="btn"].invert a, a.btn.invert, a.btn-small.invert, a.btn-large.invert {
	background-color: #425786;
	color: #fff;
	}

*[class*="btn"].invert a:hover, a.btn.invert:hover, a.btn-small.invert:hover, a.btn-large.invert:hover {
	background-color: #0FA0CE;
	}

.btn-small a, a.btn-small {
	padding: .4em 1em;
	font-size: 80%;
	}

.btn-large a, a.btn-large {
	padding: 1em 2em;
	font-size: 110%;
	}
	
.light *[class*="btn"] a, .light a.btn, .light a.btn-large, .light a.btn-small, *[class*="btn"].light a, .light.btn-large a, .light.btn-small a {
	border: 1px solid #fff;
	color: #fff;
	}

.light *[class*="btn"].invert a, *[class*="btn"].light.invert a {
	background-color:#fff;
	}

/* -------------- Useful helper classes. Extend as needed. ---------------- */

.space-top10 { margin-top:10px; }
.space-top20 { margin-top:20px; }
.space-top30 { margin-top:30px; }
.space-top40 { margin-top:40px; }
.space-top50 { margin-top:50px; }
.space-bottom10 { margin-bottom:10px; }
.space-bottom20 { margin-bottom:20px; }
.space-bottom30 { margin-bottom:30px; }
.space-bottom40 { margin-bottom:40px; }
.space-bottom50 { margin-bottom:50px; }

.mod_article.space-top10, .mod_article.space-top20, .mod_article.space-top30, .mod_article.space-top40, .mod_article.space-top50,
.mod_article.space-bottom10, .mod_article.space-bottom20, .mod_article.space-bottom30, .mod_article.space-bottom40, .mod_article.space-bottom50
	{ margin-top:0; margin-bottom: 0; }

.mod_article.space-top10 .inside::before {content: ' ';	display:block; height: 10px; }
.mod_article.space-top20 .inside::before {content: ' ';	display:block; height: 20px; }
.mod_article.space-top30 .inside::before {content: ' ';	display:block; height: 30px; }
.mod_article.space-top40 .inside::before {content: ' ';	display:block; height: 40px; }
.mod_article.space-top50 .inside::before {content: ' ';	display:block; height: 50px; }
.mod_article.space-bottom10 .inside::after {content: ' '; display:block; height: 10px; clear:both;}
.mod_article.space-bottom20 .inside::after {content: ' '; display:block; height: 20px; clear:both;}
.mod_article.space-bottom30 .inside::after {content: ' '; display:block; height: 30px; clear:both;}
.mod_article.space-bottom40 .inside::after {content: ' '; display:block; height: 40px; clear:both;}
.mod_article.space-bottom50 .inside::after {content: ' '; display:block; height: 50px; clear:both;}

[class*="ce_"].box,
[class*="mod_"].box {
	padding: 1em 1em 0 1em;
	margin-bottom: .5em;
	border: 1px solid #dedede;
	}

.infobox {
	background-color: #dedede;
	padding: 1em 1em 0 1em !important;
	margin-bottom: 1rem;
	}
	
.infobox:before {
	content: '\e822';
    font-family: icons;
    padding: 0 .8em 0 0;
    font-size: 2em;
    float:left;
    }

.infobox.success {
	background-color: #8DCC33;
	}

.success:before {
	content: '\e8ca';
	}

.infobox.warning {
	background-color: #CC3333;
	color: #fff;
	}

.warning:before {
	content: '\e840';
	}

.feature-item {
	text-align: center;
	}

.feature-item:before {
	font-size: 6em;
	opacity: .5;
	padding-bottom: 1rem;
	}


/* -------------- Misc ------------------ */
	
.subnav li {
	padding-bottom: .5em;
	}
	
.mod_eventlist .header {
	margin-top: 2rem;
	}
	
.mod_eventlist .event {
	margin-bottom: 1rem;
	}

.mod_eventlist p.time {
	font-size: 2rem;
	}

.accordion > div {
	padding: 1rem;
	}	
	
.error {
	color: ff0000;
}
	
.toggler {
	position: relative;
    padding: 6px 10px;
    border-bottom: 1px solid;
    font-weight: bold;
    cursor: pointer;
    }
    
.toggler:focus { outline:none;}

.toggler:before {
	display: inline-block;
	width:1.5rem;
	font-family: icons;
	content: '\e81d';
	padding-right: 2em;
	}
	
.toggler.ui-state-active:before {
	font-family: icons;
	content: '\e81f';
	padding-right: 2em;
	}
	
.link-print::before, .link-pdf::before, .link-fb::before, .link-twitter::before, .link-google::before {
	height: 1.5rem;
	width: 1.5rem;
	font-family: icons;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.5rem;
    line-height: 1.5rem;
    padding:.5em;
    background-color: #dedede;
    display: inline-block;
    border-radius:50%;
    margin: .2em;
    color: #000;
    opacity: .7;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
	}

.link-print:hover::before, .link-pdf:hover::before, .link-fb:hover::before, .link-twitter:hover::before, .link-google:hover::before {
	color: #fff;
	background-color: #999;
	}
.link-print::before {
	content: '\e8d7';
	}
.link-pdf::before {
	content: '\e8cc';
	}
.link-fb::before {
	content: '\f09a';
	}
.link-twitter::before {
	content: '\f099';
	}
.link-google::before {
	content: '\f30f';
	}