@font-face {
	font-family: 'AGaramond-Regular';
	src: url('/assets/theme/global/fonts/AGaramond-Regular.eot');
	src: local('☺'), url('/assets/theme/global/fonts/AGaramond-Regular.woff') format('woff'),
					 url('/assets/theme/global/fonts/AGaramond-Regular.ttf') format('truetype'),
					 url('/assets/theme/global/fonts/AGaramond-Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
    font-family: 'AGaramond-Semibold';
    src: url('/assets/theme/global/fonts/AGaramond-Semibold.eot');
    src: local('☺'), url('/assets/theme/global/fonts/AGaramond-Semibold.woff') format('woff'),
                     url('/assets/theme/global/fonts/AGaramond-Semibold.ttf') format('truetype'),
                     url('/assets/theme/global/fonts/AGaramond-Semibold.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'ProximaNovaA-Regular';
    src: url('/assets/theme/global/fonts/ProximaNovaA-Regular.eot');
    src: local('☺'), url('/assets/theme/global/fonts/ProximaNovaA-Regular.woff') format('woff'),
                     url('/assets/theme/global/fonts/ProximaNovaA-Regular.ttf') format('truetype'),
                     url('/assets/theme/global/fonts/ProximaNovaA-Regular.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'ProximaNovaA-Bold';
    src: url('/assets/theme/global/fonts/ProximaNovaA-Bold.eot');
    src: local('☺'), url('/assets/theme/global/fonts/ProximaNovaA-Bold.woff') format('woff'),
                     url('/assets/theme/global/fonts/ProximaNovaA-Bold.ttf') format('truetype'),
                     url('/assets/theme/global/fonts/ProximaNovaA-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 {
	letter-spacing: 0.5px;
	line-height: normal;
	font: 18px 'AGaramond-Regular';
	color: #1f1f1f;
}

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

/* Form elements */
input:not([type="number"]):not([type="submit"]) {
    padding: 13px 12px 12px;
    border: 1px solid #bec0c0;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    vertical-align: top;
    font-size: 14px;
    color: #1f1f1f;
}
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"] {
	display: inline-block;
	width: 110px;
    height: 43px;
    padding: 12px 12px 11px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    vertical-align: top;
    text-transform: uppercase;
    text-align: center;
    font: 14px 'ProximaNovaA-Regular';
    color: #fff;
    background-color: #838383;
    outline: none;
	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: #bec0c0;
}
:-moz-placeholder {
/* Mozilla Firefox 4 to 18 */
	color: #bec0c0;
	opacity: 1;
}
::-moz-placeholder {
/* Mozilla Firefox 19+ */
	color: #bec0c0;
	opacity: 1;
}
:-ms-input-placeholder {
/* Internet Explorer 10+ */
	color: #bec0c0;
	opacity: 1;
}

/* Headings */
h1 {
	margin-bottom: 16px;
	font: 38px 'AGaramond-Regular';
}
h2 {
    margin-bottom: 18px;
  font: 28px 'AGaramond-Regular';
  color: #838383;
}
h3 {
	margin-bottom: 14px;
	text-transform: uppercase;
	font: 18px 'ProximaNovaA-Bold';
}
h4 {
	font: 18px/24px 'ProximaNovaA-Bold';
	margin-bottom: 10px;
}
h5 {
    font: 18px/24px 'AGaramond-Semibold';
}
h6 {
    font: 16px/24px 'AGaramond-Semibold';
}

/* Block-level */
address {
	font-style: inherit;
}
p {
	margin-bottom: 18px;
    line-height: 24px;
}
p:last-child {
	margin-bottom:0;
}
p a:hover {
	color: #838383;
}
ul {
	list-style-type: none;
}
ol {
	margin: 0 0 25px 15px;
}
ol li + li {
	padding-top: 4px;
}
.noscript-show {
	display: none;
}
.container ul:not([class]) {
	margin-bottom: 25px;
}
.container ul:not([class]) li:not([class]) {
	padding: 0 0 4px 15px;
	position: relative;
}
.container ul:not([class]) li:not([class]):before {
	content: '';
	position: absolute;
	top: 6px;
	left: 0;
	background-color: #a1a1a1;
	border-radius: 50%;
	height: 6px;
	width: 6px;
}

.col-right ul:not([class]) {
	margin: 0 0 25px 0;
}
.col-right ul:not([class]) li {
	position: relative;
	padding-bottom: 10px;
}
.col-right ul:not([class]) li:last-child {
	padding-bottom: 0;
}
.col-right ul:not([class]) li:before {
	content: '';
	background-color: #c3c3c3;
	border-radius: 50%;
	position: absolute;
	left: -20px;
	top: 6px;
	height: 8px;
	width: 8px;
}

strong {
	font-weight: normal;
	font-family: 'AGaramond-Semibold';
}
sup {
	font-size: 11px;
}

/************************************************************
Generic Site Styles */
.flexbox-reverse {
	display: flex;
	flex-direction: row-reverse;
}
.table {
	display: table;
	width: 100%;
	height: 100%;
	table-layout: fixed;
	float: none !important;
}
.table.page,
.container {
	max-width: 1140px;
	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-"],
.header-wrapper,
.sub-ctrl,
.img-box:after,
.icon:after,
.recent-notices li {
	transition: all 0.3s ease 0s;
}

.header-menu,
.header-menu:before,
.main-nav,
.nav-menu > li,
.sub-menu,
.search-box,
.search-box .search-form {
	transition: all 0.5s ease 0s;
}

a [class*="fa-"] {
	transition: none;
}

.overlay {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(37,37,38,.5);
	z-index: 1;
}
.bg-box {
	padding: 65px 0 75px;
	background: #f7f7f7;
}
.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: rgba(37,37,38,.5);
    opacity: 0;
    visibility: hidden;
}
.img-box .relative {
    z-index: 1;
}

.btn, a.btn, input[type="submit"].btn {
	position: relative;
	min-width: 162px;
    padding: 12px 15px 11px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
	text-transform: uppercase;
	text-align: center;
	font: 18px 'ProximaNovaA-Regular';
	color: #fff;
	background-color: #838383;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
}
.btn + .btn {
	margin-left: 8px;
}

.btn:hover,
a.btn:hover,
input[type="submit"].btn:hover {
	background-color:#1f1f1f;
}

.icon svg {
	height: 100%;
	width: 100%;
}
.quick-links li a:hover svg path {
	fill: #838383;
	transition: all 0.3s ease 0s;
}

.modal {
	cursor:pointer;
}

/****************************
   Global Side Nav Styles
****************************/

.side-nav header {
  color: #838383;
  font-family: 'AGaramond-Regular';
  font-size: 24px;
  line-height: 30px;
  font-style: italic;
}

.side-nav > ul {
  padding: 5px 0px 0px 0px;
}

.side-nav > ul,
.side-nav > ul > li,
.side-nav > ul > li > a {
  list-style: none;
  display: block;
  font-size: 18px;
  line-height: 24px;
  font-family: 'ProximaNovaA-Regular';
  color: #a7a9a9;
  text-transform: uppercase;
}

.side-nav > ul > li > a {
  padding: 3px 0px 10px;
}

.side-nav > ul > li > a:hover,
.side-nav > ul > li > a.active {
  color: #1f1f1f;
}

/***********************
  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: 'ProximaNovaA-Regular';
  font-size: 14px;
  line-height: 14px;
  padding: 10px 11px 8px;
}

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

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

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

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

.pagination > .prev a,
.pagination > .next a {
  font-size: 22px;
  padding: 8px 11px 11px 11px;
}

.pagination strong {
  font-family: 'ProximaNovaA-Bold';
  font-weight: normal;
  color: #24335A;
  background-color: #ddd;
  border: 1px solid #24335A;
}

.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: 25px;
}
#search-results > ol > li {
	font-size:24px;
}
#search-results > ol > li + li {
	margin-top:15px;
	padding-top:15px;
	border-top:1px solid #CCC;
}
#search-results > ol > li small {
	display: block;
	font-size:14px;
	color:#999;
}
#search-results > ol > li p {
	font-size:16px;
}

#search-results mark {
	color:#FFF;
	background-color:#838383;
}
#search-results a {
	color: #000;
}
#search-results a:hover {
	color: #838383;
}