@font-face {
	font-family: 'Rubik-Regular';
	src: url('../fonts/Rubik-Regular.eot');
	src: local('☺'), url('../fonts/Rubik-Regular.woff') format('woff'),
					 url('../fonts/Rubik-Regular.ttf') format('truetype'),
					 url('../fonts/Rubik-Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Rubik-Medium';
	src: url('../fonts/Rubik-Medium.eot');
	src: local('☺'), url('../fonts/Rubik-Medium.woff') format('woff'),
					 url('../fonts/Rubik-Medium.ttf') format('truetype'),
					 url('../fonts/Rubik-Medium.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Rubik-Bold';
	src: url('../fonts/Rubik-Bold.eot');
	src: local('☺'), url('../fonts/Rubik-Bold.woff') format('woff'),
					 url('../fonts/Rubik-Bold.ttf') format('truetype'),
					 url('../fonts/Rubik-Bold.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'RobotoSlab-Regular';
	src: url('../fonts/RobotoSlab-Regular.eot');
	src: local('☺'), url('../fonts/RobotoSlab-Regular.woff') format('woff'),
					 url('../fonts/RobotoSlab-Regular.ttf') format('truetype'),
					 url('../fonts/RobotoSlab-Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'RobotoSlab-Bold';
	src: url('../fonts/RobotoSlab-Bold.eot');
	src: local('☺'), url('../fonts/RobotoSlab-Bold.woff') format('woff'),
					 url('../fonts/RobotoSlab-Bold.ttf') format('truetype'),
					 url('../fonts/RobotoSlab-Bold.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* Master layout */

/************************************************************
Global styles */

/* Partial CSS Reset */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
html, body {
	height: 100%;
	width: 100%;
	-webkit-text-size-adjust: 100%;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, select, input, option {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
}
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary {
	display: block;
}
audio, canvas, video {
	display: inline-block;
}
audio:not([controls]) {
	display: none;
	height: 0;
}
pre {
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

:focus {
	outline: none;
}

table {
	border: 0 none;
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
}
td {
	vertical-align: top;
}
/* End Reset */

body {
	line-height: normal;
	font: 14px 'Rubik-Regular';
	color: #333;
}

/* Links */
a,
input[type=submit] {
	display: inline-block;
	color: inherit;
	outline: none;
	-webkit-transition: all 0.3s ease 0s; 
	   -moz-transition: all 0.3s ease 0s;
	    -ms-transition: all 0.3s ease 0s;
	     -o-transition: all 0.3s ease 0s;
			transition: all 0.3s ease 0s;
}
a:link,
a:visited,
a:hover,
a:active {
	text-decoration: none;
	outline: none;
}
a img {
	border: none;
	-webkit-transition: all 0.5s ease 0s;
       -moz-transition: all 0.5s ease 0s;
		-ms-transition: all 0.5s ease 0s;
		 -o-transition: all 0.5s ease 0s;
			transition: all 0.5s ease 0s;
}
img {
	height: auto;
	max-width: 100%;
}
a[href^="tel:"] {
	color: inherit;
}

/* Form elements */
input:not([type="number"]):not([type="submit"]) {
    padding: 17px 15px 15px;
    border: 1px solid #333;
    vertical-align: top;
    color: #333;
}
input[type]:-webkit-autofill,
input[type]:-webkit-autofill:hover,
input[type]:-webkit-autofill:focus,
input[type]:-webkit-autofill:active { /* Fix input background with autocomplete */
    transition: background-color 5000s ease-in-out 0s;
}
input[type="search"] {
    -webkit-appearance: textfield;
}
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
}
input[type="submit"] {
    min-width: 48px;
    height: 48px;
    vertical-align: top;
    background-color: #32589e;
    color: #fff;
    cursor: pointer;
}
input[type="submit"]::-moz-focus-inner { /* Fix extra button padding in Firefox */
	padding: 0;
	border: none;
	line-height: 1;
}
textarea {
	resize: none;
}

/* Default Placeholder styles */
::-webkit-input-placeholder {
/* WebKit browsers */
  	color: #333;
}
:-moz-placeholder {
/* Mozilla Firefox 4 to 18 */
	color: #333;
	opacity: 1;
}
::-moz-placeholder {
/* Mozilla Firefox 19+ */
	color: #333;
	opacity: 1;
}
:-ms-input-placeholder {
/* Internet Explorer 10+ */
	color: #333;
	opacity: 1;
}

/* Headings */
h1 {
	margin-bottom: 28px;
	text-transform: uppercase;
	letter-spacing: -1px;
	font: 54px/58px 'RobotoSlab-Bold';
	color: #32589e;
}
h2 {
	margin-bottom: 12px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font: 30px/34px 'RobotoSlab-Bold';
	color: #32589e;
}
h3 {
	margin-bottom: 12px;
	text-transform: uppercase;
	font: 22px/26px 'RobotoSlab-Bold';
}
h4 {
	text-transform: uppercase;
    font: 20px 'Rubik-Medium';
}
h5 {
    margin-bottom: 6px;
    font: 16px/24px 'Rubik-Medium';
}
h6 {
	margin-bottom: 4px;
    text-transform: uppercase;
	font: 12px/20px 'Rubik-Medium';
}

/* Block-level */
address {
	font-style: inherit;
}
p {
	margin-bottom: 16px;
    line-height: 20px;
}
p a {
	color: #3554a0;
}
p a:hover {
	color: inherit;
}
ul {
	list-style-type: none;
}
strong {
	font-weight: normal;
	font-family: 'Rubik-Bold';
}
sup {
	font-size: 11px;
}

/************************************************************
Generic Site Styles */
.table {
	display: table;
	width: 100%;
	height: 100%;
	table-layout: fixed;
	float: none !important;
}
.table.page,
.container {
	max-width: 1000px;
	margin: 0 auto;
}
.container {
	padding: 0 20px;
}
main .table.page,
.table.auto-height {
	height: auto;
}

.table.auto-width {
	width: auto;
}

.table.auto-all {
	height: auto;
	width: auto;
}

.row {
	display: table-row;
}
.cell {
	display: table-cell;
	vertical-align: top;
	height: 100%;
	float: none !important;
}
.padding {
	padding: 0px 20px;
}
.padding-left {
	padding-left: 20px;
}
.padding-right {
	padding-right: 20px;
}
.middle {
	vertical-align: middle;
}
.bottom {
	vertical-align: bottom;
}
.table-header-group {
	display: table-header-group;
}
.table-footer-group {
	display: table-footer-group;
}

/* Text alignment */
.align-left {
	text-align: left !important;
}
.align-center {
	text-align: center !important;
}
.align-right {
	text-align: right !important;
}

/* Container class to make iFrames responsive */
.frame-contain {
	position: relative;
	max-width: 100%;
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%; /* 16:9 */
							/* 75% = 4:3 */
}
.frame-contain iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

/************************************************************
Miscellaneous */
.clearfix:after {
	content: '.';
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.pull-left {
	float: left;
}
.pull-right {
	float: right;
}
.relative {
	position: relative;
}
.full-size {
	height: 100%;
	width: 100%;
}

.on-top {
  position: relative;
  z-index: 1;
}

.hide {
	display: none !important;
}

.no-scroll {
	overflow: hidden;
}

a:not([class*="fa-"]):before,
a:after,
[class*="fa-"],
.sub-ctrl,
.img-box,
.img-box:after,
.img-box .text-box,
.vertical-box:before,
.vertical-box:after,
.vertical-box > *,
.quick-links-wrapper .overlay,
.slick-arrow:after {
	-webkit-transition: all 0.3s ease 0s;
	   -moz-transition: all 0.3s ease 0s;
	 	-ms-transition: all 0.3s ease 0s;
		 -o-transition: all 0.3s ease 0s;
			transition: all 0.3s ease 0s;
}

.menu-panel:after,
.sub-menu,
.search-box {
	-webkit-transition: all 0.5s ease 0s;
	   -moz-transition: all 0.5s ease 0s;
		-ms-transition: all 0.5s ease 0s;
		 -o-transition: all 0.5s ease 0s;
			transition: all 0.5s ease 0s;
}

a [class*="fa-"] {
	-webkit-transition: none;
	   -moz-transition: none;
		-ms-transition: none;
		 -o-transition: none;
			transition: none;
}

.overlay {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(51,51,51,.25);
	z-index: 1;
}

.half-box {
	width: 50%;
}

.text-box {
    display: inline-block;
    width: 74%;
}

.img-box {
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.img-box:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-border-radius: inherit;
    -moz-border-radius: inherit;
    border-radius: inherit;
    background: -moz-linear-gradient(left, rgba(51,84,160,0.7) 0%, rgba(73,162,91,0.7) 100%);
	background: -webkit-linear-gradient(left, rgba(51,84,160,0.7) 0%,rgba(73,162,91,0.7) 100%);
	background: linear-gradient(to right, rgba(51,84,160,0.7) 0%,rgba(73,162,91,0.7) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b33354a0', endColorstr='#b349a25b',GradientType=1 );
}
.img-box .relative {
    z-index: 1;
}
.img-mask {
	position: absolute;
	top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: url(../images/layout/figure-mask.png) no-repeat;
    background-size: 100% 100%;
    z-index: 2;
}

.negative-indent {
    margin: 0 -20px;
}

.btn {
	position: relative;
	min-width: 150px;
	padding: 16px 15px 15px;
	border-left: 4px solid #3354a0;
	border-right: 4px solid #49a25b;
	text-transform: uppercase;
	text-align: center;
	font: 14px 'Rubik-Regular';
	color: #333;
}
.btn.white {
	color: #fff;
}
.btn:before,
.btn:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #3354a0;
	background: -moz-linear-gradient(left, #3354a0 0%, #49a25b 100%);
	background: -webkit-linear-gradient(left, #3354a0 0%,#49a25b 100%);
	background: linear-gradient(to right, #3354a0 0%,#49a25b 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3354a0', endColorstr='#49a25b',GradientType=1 );
}
.btn:after {
	top: auto;
	bottom: 0;
}
.btn:hover {
	border-color: #3354a0;
	color: #fff;
	background-color: #3354a0;
}
.btn:hover:before,
.btn:hover:after {
    opacity: 0;
}
.btn + .btn {
    margin-left: 6px;
}

.more-link {
	position: relative;
	padding: 7px 0 7px 45px;
	font: 14px/23px 'Rubik-Bold';
	color: #333;
}
.more-link:before {
	content: "\f107";
	position: absolute;
	top: 3px;
	left: 0;
	width: 23px;
	height: 23px;
	border: 4px solid #a0a0a0;
	-webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    text-align: center;
	font: 14px/23px Font Awesome\ 5 Pro;
	font-weight: bold;
	-webkit-box-shadow: 0 0 0 3px #c4c4c4;
    -moz-box-shadow: 0 0 0 3px #c4c4c4;
    box-shadow: 0 0 0 3px #c4c4c4;
	background-color: #d2d2d2;
	transition: all 0.3s ease 0s;
}
.more-link:hover {
	color: #0f8b56;
}
.more-link:hover:before {
	border-color: #90c6af;
	color: #fff;
	-webkit-box-shadow: 0 0 0 3px rgba(15,139,86,.25);
    -moz-box-shadow: 0 0 0 3px rgba(15,139,86,.25);
    box-shadow: 0 0 0 3px rgba(15,139,86,.25);
	background-color: #0f8b56;
}

/************************************************************
Slick Slider main styles */
.slick-initialized .slick-slide {
	z-index: 7 !important;
}
.slick-initialized .slick-slide.slick-active {
	z-index: 8 !important;
}
.slick-vertical .slick-slide {
	position: relative;
	border: none;
}
.slick-slide img {
    margin: 0 auto 20px;
}
.slider-control {
	position: absolute;
    bottom: 50%;
    left: 50%;
    max-width: 960px;
    width: 100%;
    margin-left: -480px;
    text-align: center;
    -webkit-transform: translateY(50%);
    -moz-transform: translateY(50%);
    -ms-transform: translateY(50%);
    -o-transform: translateY(50%);
    transform: translateY(50%);
    z-index: 8;
}
.slick-arrow {
    width: 35px;
	height: 35px;
	color: #fff;
	z-index: 9;
}
.slick-arrow:hover {
	color: #0071ce;
}
.slick-arrow:after {
    font: 24px/15px Font Awesome\ 5 Pro;
    font-weight: bold;
}
.slick-arrow.slick-prev {
	left: 0;
}
.slick-arrow.slick-prev:after {
    content: "\f104";
}
.slick-arrow.slick-next {
	right: 0;
}
.slick-arrow.slick-next:after {
	content: "\f105";
}

.slick-dotted.slick-slider {
	margin-bottom: 0;
}
.slick-dots {
    bottom: 25px;
    height: 10px;
    line-height: 0;
    z-index: 9;
}
.slick-dots li {
    width: 10px;
    height: 10px;
    margin: 0 5px;
    font-size: 12px;
    color: #fff;
}
.slick-dots li button {
	width: 100%;
	height: 100%;
    padding: 0;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background-color: #fff;
}
.slick-dots li.slick-active button {
	background-color: #32589e;
}
.slick-dots li button:before {
    content: none;
}

/***********************
  Pagination Styles
***********************/

.pagination {
  display: block;
  background-color: #F9F9F9;
  border: 1px solid #E8E8E8;
  padding: 6px;
  margin-top: 20px;
  text-align: center;
  margin-bottom: 30px;
}

.pagination > div {
  display: inline-block;
  vertical-align: middle;
}

.pagination > div + div {
  margin-left: 6px;
}

.pagination a, 
.pagination span,
.pagination strong {
  display: inline-block;
  font-family: 'Rubik-Regular';
  font-size: 14px;
  line-height: 14px;
  padding: 10px 11px 8px;
}

.pagination span {
  padding:10px 13px 10px 11px;
}

.pagination a {
  color: #32589e !important;
  background-color: #ddd;
  border: 1px solid #ccc;
  transition: all 0.3s ease 0s;
}

.pagination a:hover {
  background-color: #32589e;
  color: #FFF !important;
}

.pagination span {
  font-family: 'Rubik-Regular';
  color: #FFF;
  background-color: #32589e;
  border: 1px solid #FFF;
  font-weight: bold;
}

.pagination > .prev a,
.pagination > .next a {
  font-size: 22px;
  padding: 8px 11px 11px 11px;
  font-family: Arial,Helvetica Neue,Helvetica,sans-serif;
}

.pagination strong {
  font-family: 'Rubik-Bold';
  font-weight: normal;
  color: #32589e;
  background-color: #ddd;
  border: 1px solid #32589e;
}

.pagination > .prev:empty,
.pagination > .next:empty {
  display: none;
}

.pagination > .prev:empty + div {
  margin-left: 0px;
}

#search-results .pagination > li {
	display: inline-block;
	vertical-align: middle;
}
#search-results .pagination > li + li {
	margin-left:8px;
}
#search-results > ol {
	margin-left: 15px;
}
#search-results > ol > li {
	font-size:24px;
}
#search-results > ol > li p {
	font-size:14px;
	margin-bottom: 20px;
}

#search-results h4  {
	font-size: 16px;
	font-weight:bold;
}

#search-results h4 a {
	color:#32589e !important;
}

#search-results mark {
	color:#FFF;
	background-color:#444;
	padding: 2px;
}