/* Table of Contents
-----------------------------------------------------------------------------

1. CSS Reset
2. Base Typography
3. Base Classes
4. Structure
5. Pages
6. Modules

*/



/* 1. CSS Reset
------------------------------------------------------------------------------*/

html, body, br, hr, div, span, a, object, iframe, ul, ol, dl, li, dt, dd, h1, h2, h3, h4, h5, h6, p, blockquote, q, address,
small, big, cite, dfn, ins, del, i, em, b, strong, sup, sub, strike, pre, code, samp, kbd, var, tt, form, fieldset, legend, label,
input, textarea, option, .nobox, figure {background: transparent; border: 0; font-size: 100%; margin: 0; outline: 0; padding: 0; vertical-align: baseline;}

div, section, article, main, aside, header, footer, dialog, figure, figcaption, hgroup {display: block;}
html {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
*, *:before, *:after {-webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit;}

blockquote, q {quotes: none;}
br {height: 0;}
ul, ol, dl {list-style: none;}

table {border-spacing: 0; border-collapse: collapse;}
td {text-align: left; font-weight: normal;}

img {border: 0; border-style: none;}

fieldset {border: 1px solid transparent;}
input {font-family: 'Montserrat', sans-serif;}
input[type=submit] {letter-spacing: .045em; font-family: 'Montserrat', sans-serif; cursor: pointer; -webkit-appearance: none; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all}
input[type=text], input[type=email], textarea, select {letter-spacing: .045em; font-family: 'Montserrat', sans-serif; font-weight: 400; border-radius: 0; -webkit-appearance: none;}
span {font-family: 'Montserrat', sans-serif;}
button {font-family: 'Montserrat', sans-serif; background: none; border: none; padding: 0; cursor: pointer; outline: inherit}
select {-webkit-appearance: none; -webkit-border-radius: 0px;}

/* 2. Base Typography
------------------------------------------------------------------------------*/

/* Headers  */
.title-lrg-1 {font-weight: 700; font-size: 3rem; line-height: 3.75rem;}
.title-med-1 {font-weight: 700; font-size: 1.75rem; line-height: 1.75rem; letter-spacing: .02em;}
.title-med-2 {font-weight: 700; font-size: 1.5rem; line-height: 1.75rem;}
.title-sml-1 {font-weight: 700; font-size: 1.125rem; line-height: 1.125rem; letter-spacing: .02em;}
.title-sml-2 {font-weight: 600; font-size: 16px; line-height: 18px; letter-spacing: .02em;}
@media screen and (max-width: 600px){

}
.p-med-1 {}

/* Paragraphs */
p, .body li {color: #202020; font-weight: 400; font-size: 16px; line-height: 26px;}

/* Links */
a {color: #da1333; font-weight: 700; text-decoration: none; cursor: pointer;}
a:hover {color: #da1333; text-decoration: none;}
a:active {}
a:focus, button:focus, input[type=submit]:focus {text-decoration: underline}

/* Other Type */
strong {font-weight: bold;}
hr {border:0 #000 solid; border-top-width: 1px; clear: both; height: 0;}
ol {list-style: decimal;}
ul {list-style: disc;}

/* Google Web Font Smoothing */
html, body, p, a, h1, h2, h3, h4, h5, h6 {-webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;}

/* Colors
*/

/* 3. Helper Classes
------------------------------------------------------------------------------*/

/* General */
.clear {clear: both; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0}
.icon {display: block; text-indent: -9999px; background-size: 100%; background-repeat: no-repeat; text-indent: -9999px;}
.full-bg {background-repeat: no-repeat; background-position: center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover;}
.full-bg.full-bg-left {background-position: center left}
.full-bg.full-bg-right {background-position: center right}
.full-bg.full-bg-top-right {background-position: top right}
.full-bg.full-bg-bottom {background-position: bottom center}
.centered {text-align: center}
.flex {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap}
.flex-align-center {-ms-flex-align-items: center; -webkit-align-items: center; align-items: center}
.flex-align-bottom {-ms-flex-align-items: flex-end; -webkit-align-items: flex-end; align-items: flex-end}
.flex-align-top {-ms-flex-align-items: flex-start; -webkit-align-items: flex-start; align-items: flex-start}
.flex-justify-center {-ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center}
.flex-justify-end {-ms-flex-justify-content: flex-end; -webkit-justify-content: flex-end; justify-content: flex-end}
.flex-1 {-webkit-flex: 1; -ms-flex: 1; flex: 1}
.flex-flow-col {-webkit-flex-flow: column; flex-flow: column}
.flex-reverse {-ms-flex-direction: row-reverse; -webkit-flex-direction: row-reverse; flex-direction: row-reverse}
.flex-grow-1 {-ms-flex-positive: 1; flex-grow: 1;}
.no-scroll {overflow: hidden}
.image-square:after {display: block; content: ''; width: 100%; padding-top: 100%}
.sixteen-nine:after {display: block; content: ''; width: 100%; padding-top: 56.25%}
::selection {background: #da1333; color: #fff}
::-moz-selection {background: #da1333; color: #fff}
.txt-white * {color: #fff}
.animated-300, .animated-300 * {transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all}
.layout-two-col {-webkit-column-count: 2; -moz-column-count: 2; column-count: 2; -webkit-column-gap: 30px; -moz-column-gap: 30px; column-gap: 30px}
.bg-red {background-color: #da1333;}
.err-wrap {display: none !important}
@media screen and (max-width: 768px){
  .layout-two-col {-webkit-column-count: 1; -moz-column-count: 1; column-count: 1; -webkit-column-gap: 0; -moz-column-gap: 0; column-gap: 0}
}


/* Buttons & Links */
.btn {white-space: nowrap; position: relative; font-weight: 700; display: inline-block; font-size: 16px; line-height: 16px; font-weight: 700; text-transform: uppercase; letter-spacing: .075em; color: #fff; background-color: #da1333; padding: 13px 35px 14px 35px; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all;}
.btn:hover, .btn:focus {background-color: #213875; color: #fff}
.arw-btn {display: inline-block; border: 1px solid #fff; position: relative; text-transform: uppercase; font-size: 14px; line-height: 14px; letter-spacing: .14em; padding: 15px 25px; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all;}
.arw-btn .arw {position: absolute; top: 50%; margin-top: -18px; right: -25px; display: block; width: 36px; height: 36px; background-image: url(/assets/images/arw.svg); transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all;}
.arw-btn:hover, .arw-btn:focus {background-color: #fff; color: #da1333 !important}
.arw-btn:hover .arw, .arw-btn:focus .arw {right: -36px}
.arw-btn.arw-btn-red {border-color: #da1333; color: #da1333}
.arw-btn.arw-btn-red:hover, .arw-btn.arw-btn-red:focus {background-color: #da1333; color: #fff}
.arw-btn.arw-btn-red .arw {background-image: url(/assets/images/arw_red.svg);}

/* Overlays */
.overlay {position: relative;}
.overlay > div {position: relative; z-index: 2}
.overlay:after {display: block; content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.overlay-25:after {background: rgba(10,29,53,.25)}

/* Margin & Padding */
.vp-30 {padding-top: 30px; padding-bottom: 30px}
.vp-50 {padding-top: 50px; padding-bottom: 50px}
.vp-70 {padding-top: 70px; padding-bottom: 70px}
.vp-100 {padding-top: 100px; padding-bottom: 100px}
.vp-200 {padding-top: 200px; padding-bottom: 200px}
.pb-30 {padding-bottom: 30px}
.pb-50 {padding-bottom: 50px}
.pb-70 {padding-bottom: 70px}
.pb-100 {padding-bottom: 100px}
.pt-30 {padding-top: 30px}
.pt-50 {padding-top: 50px}
.pt-70 {padding-top: 70px}
.mt-30 {margin-top: 30px}
.mt-70 {margin-top: 70px}
.mb-30 {margin-bottom: 30px}
.mb-70 {margin-bottom: 70px}
.mb-100 {margin-bottom: 100px}
.hp-10 {padding-left: 10%; padding-right: 10%}
.hp-14 {padding-left: 14%; padding-right: 14%}
.hp-20 {padding-left: 20%; padding-right: 20%}
@media screen and (max-width: 960px){
  .vp-200 {padding-top: 100px; padding-bottom: 100px}
  .pt-50 {padding-top: 25px}
  .pb-50 {padding-bottom: 25px}
  .pb-100 {padding-bottom: 50px}
  .vp-50 {padding-top: 25px; padding-bottom: 25px}
  .vp-100 {padding-top: 50px; padding-bottom: 50px}
  .mb-100 {margin-bottom: 50px}
  .hp-20 {padding-left: 15%; padding-right: 15%}
}
@media screen and (max-width: 768px){
  .hp {padding-left: 0; padding-right: 0}
}
@media screen and (max-width: 600px){
  .pt-70 {padding-top: 35px}
  .pb-70 {padding-bottom: 35px}
  .vp-70 {padding-top: 35px; padding-bottom: 35px}
  .mb-70 {margin-bottom: 35px}
  .vp-200 {padding-top: 50px; padding-bottom: 50px}
}
@media screen and (max-width: 488px){
  .pb-100 {padding-bottom: 30px}
  .vp-100 {padding-top: 30px; padding-bottom: 30px}
}

/* States */
.is-visible {visibility: visible !important; opacity: 1 !important; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all;}
.is-hidden {visibility: hidden; opacity: 0; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all;}

/* Accessibility */
.visually-hidden {border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;}


/* 4. Structure
------------------------------------------------------------------------------*/

/* Page Layout */
html, body {height: 100%; font-size: 1em; font-family: 'Montserrat', sans-serif; font-weight: 400; color: #202020}
#wrapper {min-height: 100%; height: auto !important; margin: 0 auto; overflow: hidden; padding-top: 200px;}
.container {width: 90%; max-width: 1180px; margin: auto; position: relative;}
#skipnav {position: absolute; z-index: 99999; clip: rect(0 0 0 0); height: 1px; width: 1px; padding-bottom: 25px; transition: none; -webkit-transition: none; -o-transition: none}
#skipnav:hover, #skipnav:focus, #skipnav:active {text-transform: uppercase; font-size: 15px; letter-spacing: .03em; clip: auto; left: 0; top: 0; width: 100%; height: auto; margin: 0; padding: 10px 0; background: #da1333; border-left: none; border-right: none; text-align: center; font-weight: bold; color: #fff}
.layout-flex-col #wrapper {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex-flow: column; flex-flow: column}
.layout-flex-col #wrapper > * {width: 100%}
.layout-flex-col #wrapper main {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex-flow: column; flex-flow: column; -webkit-flex: 1; -ms-flex: 1; flex: 1}
.layout-flex-col #wrapper main > * {width: 100%}
.layout-flex-col #wrapper main .layout-flex-col-stretch {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex: 1; -ms-flex: 1; flex: 1; -ms-flex-align-items: center; -webkit-align-items: center; align-items: center}
@media screen and (max-width: 1080px){
  .container {width: 100%; padding: 0 5%;}
}
@media screen and (max-width: 960px){
  html, body {font-size: .9em}
}
@media screen and (max-width: 500px){
  html, body {font-size: .8em}
  #wrapper {padding-top: 150px;}
}

/* Header */
#header {width: 100%; position: absolute; top: 0; left: 0; z-index: 9999; height: 200px; background-color: #fff;}
#header.is-scrolled {height: 90px; position: fixed; -webkit-box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.15); box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.15)}
#header #header-logo {width: 165px; height: 146px; background-image: url(/assets/images/o45logo.svg); z-index: 3}
#header.is-scrolled #header-logo {width: 75px; height: 75px; background-image: url(/assets/images/o45logo_seal.svg);}
#header nav li {list-style: none}
#header > .container {height: 100%;}
#header .logo-container {z-index: 3}
.is-header-desktop #header .logo-container {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-align-items: center; -webkit-align-items: center; align-items: center}
.is-header-desktop #header nav #mobile-nav-bottom {display: none}
.is-header-desktop #header nav {-ms-flex-align-items: flex-start; -webkit-align-items: flex-start; align-items: flex-start; -webkit-flex: 1; -ms-flex: 1; flex: 1; display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-justify-content: flex-end; -webkit-justify-content: flex-end; justify-content: flex-end}
.is-header-desktop #header.is-scrolled nav {-ms-flex-align-items: center; -webkit-align-items: center; align-items: center}
.is-header-desktop #header nav > ul {padding: 25px 0; display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-justify-content: flex-end; -webkit-justify-content: flex-end; justify-content: flex-end; -ms-flex-align-items: center; -webkit-align-items: center; align-items: center}
.is-header-desktop #header nav li.level-1 {list-style: none; position: relative;}
.is-header-desktop #header nav li.level-1:first-child {margin-left: 0}
.is-header-desktop #header nav li.level-1 {color: #da1333; font-size: 14px; letter-spacing: .125em; font-weight: 700; text-transform: uppercase; padding-left: 35px;}
.is-header-desktop #header nav li.level-1 a {border-top: 2px solid transparent; padding-top: 5px; color: #848484; text-transform: uppercase; font-size: 14px; letter-spacing: .1em; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all}
.is-header-desktop #header nav li.level-1 a:hover, .is-header-desktop #header nav li.level-1 a:focus, .is-header-desktop #header nav li.level-1 a.active {border-color: #213875; color: #da1333}
.is-header-desktop #header nav li.level-1 a.btn {text-transform: uppercase; text-shadow: none; letter-spacing: .16em; padding: 13px 20px 14px 20px;}
.is-header-desktop #header nav li.level-1 a.btn:hover, .is-header-desktop #header nav li.level-1 a.btn:focus {background-color: #fff; color: #da1333}
.is-header-desktop #header nav li.level-1 .dropdown-menu {width: calc(100% + 30px); padding: 20px 30px 40px 30px; position: absolute; top: 50px; left: -30px; background-color: rgba(14,15,16,.85)}
.is-header-desktop #header nav li.level-1 .dropdown-menu ul {column-count: 2; column-gap: 30px}
.is-header-desktop #header nav li.level-1 .dropdown-menu ul li {padding: 15px 0; border-bottom: 1px dashed #545656; -webkit-column-break-inside: avoid; page-break-inside: avoid; break-inside: avoid}
.is-header-desktop #header nav li.level-1 .dropdown-menu ul li a {text-transform: none; font-size: 16px; font-weight: 600; letter-spacing: .065em}
.is-header-desktop #header nav .dropdown-menu[aria-hidden="true"] {opacity: 0; visibility: hidden}
.is-header-desktop #header nav .dropdown-menu[aria-hidden="false"] {opacity: 1; visibility: visible}
#mobile-menu-trigger {display: none}
@media screen and (max-width: 960px){
  #header > .container {-ms-flex-align-items: center; -webkit-align-items: center; align-items: center;}
  #header .mob-btn-container {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex: 1; -ms-flex: 1; flex: 1; -ms-flex-justify-content: flex-end; -webkit-justify-content: flex-end; justify-content: flex-end}
  #mobile-menu-trigger {display: block}
  #mobile-menu-trigger { -ms-touch-action: manipulation; touch-action: manipulation; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; white-space: nowrap; z-index: 9999; display: block; width: 35px;height: 25px;-webkit-transform: rotate(0deg);-moz-transform: rotate(0deg);-o-transform: rotate(0deg);transform: rotate(0deg);-webkit-transition: .5s ease-in-out;-moz-transition: .5s ease-in-out;-o-transition: .5s ease-in-out;transition: .5s ease-in-out;cursor: pointer;}
  #mobile-menu-trigger span {display: block;position: absolute;height: 4px;width: 100%;background-color: #202020;border-radius: 0;opacity: 1;left: 0;-webkit-transform: rotate(0deg);-moz-transform: rotate(0deg);-o-transform: rotate(0deg);transform: rotate(0deg);-webkit-transition: .25s ease-in-out;-moz-transition: .25s ease-in-out;-o-transition: .25s ease-in-out;transition: .25s ease-in-out;}
  #header.is-scrolled #mobile-menu-trigger span {background-color: #202020;}
  #mobile-menu-trigger span:nth-child(1) {top: 0px;}
  #mobile-menu-trigger span:nth-child(2),#mobile-menu-trigger span:nth-child(3) {top: 10px;}
  #mobile-menu-trigger span:nth-child(4) {top: 20px;}
  #mobile-menu-trigger.is-open span {background-color: #202020}
  #mobile-menu-trigger.is-open span:nth-child(1) {top: 18px;width: 0%;left: 50%;}
  #mobile-menu-trigger.is-open span:nth-child(2) {-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);-o-transform: rotate(45deg);transform: rotate(45deg);}
  #mobile-menu-trigger.is-open span:nth-child(3) {-webkit-transform: rotate(-45deg);-moz-transform: rotate(-45deg);-o-transform: rotate(-45deg);transform: rotate(-45deg);}
  #mobile-menu-trigger.is-open span:nth-child(4) {top: 18px;width: 0%;left: 50%;}
  #header #header-nav li span:before {content: ''; position: absolute; top:50%; margin-top: -1px; left: 0; height: 4px; background: #983222;}
  #header #header-nav span:after {content: ''; position: absolute; top:50%; margin-top: -1px; left: 0; height: 4px; background: #983222; transform: rotate(90deg); -moz-transform: rotate(90deg); -webkit-transform: rotate(90deg)}
  #header #header-nav span.is-active {transform: rotate(45deg); -moz-transform: rotate(45deg); -webkit-transform: rotate(45deg)}
  #header #header-nav span.is-active {transform: rotate(225deg); -moz-transform: rotate(225deg); -webkit-transform: rotate(225deg)}
  #header #header-nav ul li {color: #da1333; position: relative; float: inherit; text-align: left; list-style: none; margin-bottom: 10px;}
  #header #header-nav ul li a, #header #header-nav ul li.multi-list-title {color: #202020; padding-top: 10px; padding-bottom: 10px; padding-right: 5%; display: block; border-width: 0}
  #header #header-nav ul li.level-1 a {padding-left: 5%; color: #202020; font-size: 18px; font-weight: 700; letter-spacing: .04em}
  #header #header-nav ul li.level-1 a:hover, #header #header-nav ul li.level-1 a:focus {color: #da1333}
  #header #header-nav ul li.level-1 a.btn {letter-spacing: .16em; padding-top: 20px; padding-bottom: 20px;}
  #header #header-nav ul li.level-1 a.btn:hover, #header #header-nav ul li.level-1 a.btn:focus {background-color: #fff; color: #da1333}
  #header #header-nav {position: fixed; top: 0; left: 100%; bottom: 0; right: -100%; z-index: 1; width: 100%; height: 100vh; overflow: scroll; padding-top: 215px; background-color: #fff; -webkit-transition: all 500ms ease; -moz-transition: all 500ms ease; -o-transition: all 500ms ease; transition: all 500ms ease;}
  #header #header-nav:before {display: block; content: ''; width: 100%; height: 200px; background-color: #fff; position: fixed; top: 0; left: 100%; right: -100%; z-index: 2; -webkit-transition: all 500ms ease; -moz-transition: all 500ms ease; -o-transition: all 500ms ease; transition: all 500ms ease;}
  #header.is-mobile-open #header-nav {left: 0; right: 0}
  #header.is-mobile-open #header-nav:before {left: 0; right: 0}
  .overflow-hidden {overflow: hidden; height: 100%;}
}
@media screen and (max-width: 500px){
  #header {height: 150px;}
  #header #header-logo {width: 135px; height: 120px;}
  #mobile-menu-trigger span {background-color: #202020;}
  #header #header-nav, #header #header-nav:before {background-color: #fff;}
  #header #header-nav {padding-top: 165px}
  #header #header-nav:before {height: 150px}
  #header #header-nav ul li a, #header #header-nav ul li.level-1 a {color: #202020}
  #header #header-nav ul li a:hover, #header #header-nav ul li.level-1 a:hover, #header #header-nav ul li a:focus, #header #header-nav ul li.level-1 a:focus {color: #da1333}
  #header #header-nav ul li a.active, #header #header-nav ul li.level-1 a.active {color: #213875}
  #header #header-nav ul li.level-1 a.btn {color: #fff}
  #mobile-menu-trigger.is-open span {background-color: #202020}
  #header #header-nav ul li.level-1 a.btn:hover, #header #header-nav ul li.level-1 a.btn:focus {background-color: #202020; color: #fff}
}

/* Footer */
#footer {width: 100%; background-color: #213875; position: relative; padding: 50px 0}
#footer .container {}
#footer .footer-top {padding-bottom: 50px; border-bottom: 1px solid #4d6091}
/* #footer .footer-bottom {padding-top: 30px;} */
#footer * {color: #fff !important}
#footer .simple-form {padding-top: 20px;}
#footer p.footer-legal, #footer li a {font-size: 10px; line-height: 14px;}
#footer li {list-style: none; margin-left: 15px;}
#footer li a {font-weight: 400;}
@media screen and (max-width: 500px){
   #footer .footer-top, #footer .footer-bottom {text-align: center;}
   #footer .simple-form form {margin: 0 auto}
   #footer .footer-bottom p {width: 100%; -webkit-flex: 0 1 auto; -ms-flex: 0 1 auto; flex: 0 1 auto; padding-bottom: 30px;}
   #footer .footer-bottom {width: 100%; -ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center}
}


/* 5. Pages
------------------------------------------------------------------------------*/

/* pages */
.pages h1 {font-weight: 700; font-size: 1.75rem; line-height: 1.75rem; letter-spacing: .02em;}
.pages .page-title {margin-bottom: 30px;}

/* pk */
.pk.detail .body h3 {color: #202020}
.pk.detail .references > p {color: #213875; font-size: 18px; font-weight: 600; margin-bottom: 25px;}
.pk.detail .references ul li {list-style: none; margin-bottom: 25px;}
.pk.detail .references ul li a span {display: block;}
.pk.detail .references ul li a span.source {color: #213875; font-size: 13px; margin-bottom: 5px;}
.pk.detail .references ul li a:hover span.source, .pk.detail .references ul li a:focus span.source {color: #da1333}
.pk.detail .references ul li a span.title {color: #202020; font-size: 18px}

/* sidebar */
.sidebar .main {width: 75%; padding-right: 10%;}
.sidebar .main.full {padding-right: 0;}
.sidebar.sidebar-left .main {width: 75%; padding-left: 10%; padding-right: 0}
.sidebar aside {width: 25%}
.sidebar aside nav ul li {margin-bottom: 15px; list-style: none; font-size: 16px; line-height: 18px; letter-spacing: .02em; font-weight: 600;}
.sidebar aside nav ul li a {color: #848484; font-weight: 600;}
.sidebar aside nav ul li a:hover, .sidebar aside nav ul li a:focus {color: #da1333}
.sidebar aside nav ul li a.active {color: #213875}
@media screen and (max-width: 600px){
  .sidebar .main {width: 100%; padding-right: 0;}
  .sidebar.sidebar-left .main {width: 100%; padding-left: 0;}
  .sidebar aside {width: 100%;}
  .sidebar.sidebar-left aside {padding-bottom: 0;}
  .sidebar aside nav ul li {margin-bottom: 5px; font-size: 14px; line-height: 14px;}
  .sidebar aside nav ul li a {display: block; text-align: center; border: 1px solid #848484; padding: 10px}
  .sidebar aside nav ul li a.active {background-color: #213875; border-color: #213875; color: #fff}
  .sidebar aside nav ul li a:focus {background-color: #da1333; border-color: #da1333; color: #fff}
}

/* news */
.news.detail .main .page-title h1 {text-transform: none; color: #213875; font-weight: 600; line-height: 1.75rem;}
.news.detail .main .page-title h1:after {background-color: #c7c7c7;}
.news.detail .main .page-title .date {padding-top: 10px; color: #848484; font-weight: 700; font-size: 14px;}


/* 6. Modules
------------------------------------------------------------------------------*/

/* banners */
.banner {height: auto; position: relative;}
.banner.sm-banner:after {display: block; content: ''; width: 100%; padding-top: 31.344%}
.banner.med-banner:after {display: block; content: ''; width: 100%; padding-top: 44.777%;}
.banner.tall-banner:after {display: block; content: ''; width: 100%; padding-top: 58.594%;}
.banner .container {height: 100%}
.banner.large-banner {min-height: 600px;}
.banner .content > * {margin-bottom: 30px;}
.banner .content > *:last-child {margin-bottom: 0;}
.banner.banner-image-slider {max-height: calc(100vh - 200px); background-color: #202020;}
.banner.banner-image-slider .image {width: 100%; height: 100%; position: absolute; top: 0; left: 0; background-position-y: top;}
.banner.banner-image-slider:before {display: block; content: ''; width: 100%; padding-top: 66.65%}
.banner.banner-image-slider .container {position: absolute; left: 50%; top: 0; transform: translateX(-50%)}
.banner.banner-image-slider .slick-list, .banner.banner-image-slider .slick-track {position: absolute; top: 0; left: 0; height: 100%}
.banner.banner-image-slider .slick-list {width: 100%}
.banner h1 {text-shadow: 0px 0px 10px rgba(0, 0, 0, .85);}
@media screen and (max-width: 960px){
   .banner.large-banner {min-height: 500px;}
}
@media screen and (max-width: 768px){
   .banner.large-banner {min-height: 400px;}
}
@media screen and (max-width: 500px){
   .banner {text-align: center;}
   .banner .container {-ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center}
   .banner.large-banner {min-height: 300px;}
   .banner.large-banner h1 {font-size: 9vw; line-height: 10.5vw;}
   .banner.banner-image-slider {max-height: calc(100vh - 150px)}
}
@media screen and (max-width: 375px){
}

/* callouts */
.callout.callout-red {background-color: #da1333;}
.callout.callout-red * {color: #fff}
.callout .container > * {margin-bottom: 30px;}
.callout .container > *:last-child {margin-bottom: 0;}
.callout p {max-width: 760px; margin: 0 auto;}
.callout .simple-form form {margin: 0 auto;}
.callout h2 {color: #213875}
@media screen and (max-width: 990px){
  .callout.callout-large-txt h1 {font-size: 4.8vw; line-height: 6.8vw;}
}
@media screen and (max-width: 500px){
  .callout.callout-large-txt h1 {font-size: 9vw; line-height: 10.5vw;}
}

/* forms */
.simple-form form {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; border: 1px solid #fff; position: relative; width: 100%; max-width: 400px; height: 45px}
.simple-form input[type=email] {width: calc(100% - 45px); height: 45px; padding: 0 15px; line-height: 45px; text-transform: uppercase; font-size: 11px; letter-spacing: .12em;}
.simple-form input[type=submit] {width: 45px; height: 45px; text-indent: -9999px; background-image: url(/assets/images/arw.svg); background-repeat: no-repeat; background-position: left center; background-size: 70%;}
.simple-form  ::placeholder {color: #fff;opacity: 1;}
.simple-form  :-ms-input-placeholder {color: #fff;}
.simple-form  ::-ms-input-placeholder {color: #fff;}
.form input[type=text], .form input[type=email], .form input[type=tel] {width: 100%; height: 50px; line-height: 50px; border: 1px solid #e1e1e1; background-color: #fff; border-radius: 4px; padding: 0 15px; font-size: 16px; color: #202020}
.form input[type=text]:focus, .form input[type=email]:focus, .form input[type=tel]:focus, .form textarea:focus {border-color: #28a745;}
.form .dform_element.dform_text_input label, .form .dform_element.dform_email label, .form .dform_element.dform_textarea label, .form .dform_element.dform_select label, .form .dform_element.dform_checkbox > label, .form .dform_element.dform_html > label, .form .dform_element.dform_captcha label {border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;}
.form br {display: none}
.form .dfcolumns {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap}
.form .dform_columns_2 .dfcolumns .column {width: calc(50% - 12px) !important}
.form .dform_columns_2 .dfcolumns .column[data-number="1"] {margin-right: 24px;}
.form .dform_columns_3 .dfcolumns .column {width: calc(33.333% - 16px) !important}
.form .dform_columns_3 .dfcolumns .column[data-number="2"] {margin-left: 24px; margin-right: 24px}
.form textarea {min-width: 100%; max-width: 100%; height: 100px; min-height: 100px; max-height: 200px; width: 100%; border: 1px solid #e1e1e1; border-radius: 4px; padding: 15px; font-size: 16px; color: #202020}
.form input[type=submit] {font-weight: 700; color: #da1333; display: inline-block; border: 1px solid #da1333; position: relative; text-transform: uppercase; font-size: 14px; line-height: 14px; letter-spacing: .14em; padding: 15px 25px; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all;}
.form input[type=submit]:hover, .form input[type=submit]:focus {background-color: #da1333; color: #fff}
.form .dform_element.dform_text_input, .form .dform_element.dform_email, .form .dform_element.dform_textarea, .form .dform_element.dform_select, .form .dform_element.dform_file_upload, .form .dform_element.dform_date, .form .dform_element.dform_checkbox, .form .dform_element.dform_captcha {margin-bottom: 24px;}
.form .dform_element.dform_date {margin-bottom: 40px;}
.form .dform_error {margin-top: 5px; color: #da1333; font-weight: 600; font-size: 13px;}
.form .dform_select .dform_container {background-color: #fff; position: relative; display: block; border: 1px solid #e1e1e1; width: 100%; border-radius: 4px; height: 50px; line-height: 50px;}
.form .dform_select .dform_container select {background-color: transparent; border-radius: 4px; color: #202020; border: none; width: 100%;margin: 0;outline: none;padding: 15px;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;font-size: 16px;}
.form .dform_select .dform_container::after {content: "";position: absolute;top: 50%;right: 10px;margin-top: -3px;z-index: 2;pointer-events: none;width: 0; height: 0; border-left: 7px solid transparent;border-right: 7px solid transparent;border-top: 7px solid #202020;}
.form .dform_element.dform_date .dfinput_dates {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap}
.form .dform_element.dform_date .df_date_elem_extra, .form .dform_element.dform_date .df_date_elem {background-color: #fff; position: relative; display: block; border: 1px solid #e1e1e1; width: calc(33.333% - 16px); border-radius: 4px; height: 50px;}
.form .dform_element.dform_date .df_date_elem_extra:after, .form .dform_element.dform_date .df_date_elem:after {content: "";position: absolute;top: 50%;right: 10px;margin-top: -3px;z-index: 2;pointer-events: none;width: 0; height: 0; border-left: 7px solid transparent;border-right: 7px solid transparent;border-top: 7px solid #202020;}
.form .dform_element.dform_date .df_date_elem_extra select, .form .dform_element.dform_date .df_date_elem select {background-color: transparent; border-radius: 4px; color: #202020; border: none; width: 100%;margin: 0;outline: none;padding: 15px;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;font-size: 16px;}
.form .dform_element.dform_date .dfinput_dates > div:nth-child(2) {margin-left: 24px; margin-right: 24px;}
.form .dform_element.dform_date label, .form fieldset legend {color: #202020; text-transform: uppercase; letter-spacing: .05em; display: block; font-weight: 600; font-size: 13px; margin-top: 5px}
.form fieldset {background-color: #f9f9f9; border: 1px solid #e1e1e1; border-radius: 4px; margin-bottom: 24px;}
.form fieldset .dfcolumns {padding: 24px 24px 0 24px}
.form fieldset legend {background-color: #fff; padding: 3px 5px 3px 0; margin-left: -1px; font-size: 15px;}
.form .dform_element.dform_date > label {font-size: 15px; margin-bottom: 5px; margin-top: 0}
.form .dform_element.dform_checkbox ul.checkboxes li {list-style: none;}



.form-labels input[type=text], .form-labels input[type=email], .form-labels input[type=tel] {width: 100%; height: 50px; line-height: 50px; border: 1px solid #e1e1e1; border-radius: 4px; padding: 0 15px; font-size: 16px; color: #202020}
.form-labels input[type=text]:focus, .form-labels input[type=email]:focus, .form-labels input[type=tel]:focus, .form-labels textarea:focus {border-color: #28a745;}
.form-labels br {display: none}
.form-labels .dfcolumns {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap}
.form-labels .dform_columns_2 .dfcolumns .column {width: calc(50% - 12px) !important}
.form-labels .dform_columns_2 .dfcolumns .column[data-number="1"] {margin-right: 24px;}
.form-labels .dform_columns_3 .dfcolumns .column {width: calc(33.333% - 16px) !important}
.form-labels .dform_columns_3 .dfcolumns .column[data-number="2"] {margin-left: 24px; margin-right: 24px}
.form-labels textarea {min-width: 100%; max-width: 100%; height: 100px; min-height: 100px; max-height: 200px; width: 100%; border: 1px solid #e1e1e1; border-radius: 4px; padding: 15px; font-size: 16px; color: #202020}
.form-labels input[type=submit] {font-weight: 700; color: #da1333; display: inline-block; border: 1px solid #da1333; position: relative; text-transform: uppercase; font-size: 14px; line-height: 14px; letter-spacing: .14em; padding: 15px 25px; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all;}
.form-labels input[type=submit]:hover, .form-labels input[type=submit]:focus {background-color: #da1333; color: #fff}
.form-labels .dform_element.dform_text_input, .form-labels .dform_element.dform_email, .form-labels .dform_element.dform_textarea, .form-labels .dform_element.dform_select, .form-labels .dform_element.dform_file_upload {margin-bottom: 24px;}
.form-labels .dform_error {margin-top: 5px; color: #da1333; font-weight: 600; font-size: 13px;}
.form-labels .dform_select .dform_container {position: relative; display: block; border: 1px solid #e1e1e1; width: 100%; border-radius: 4px; height: 50px; line-height: 50px;}
.form-labels .dform_select .dform_container select {background-color: transparent; border-radius: 4px; color: #202020; border: none; width: 100%;margin: 0;outline: none;padding: 15px;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;font-size: 16px;}
.form-labels .dform_select .dform_container::after {content: "";position: absolute;top: 50%;right: 10px;margin-top: -3px;z-index: 2;pointer-events: none;width: 0; height: 0; border-left: 7px solid transparent;border-right: 7px solid transparent;border-top: 7px solid #202020;}

@media screen and (max-width: 500px){
  .form .dform_columns_2 .dfcolumns .column {width: 100% !important}
  .form .dform_columns_2 .dfcolumns .column[data-number="1"] {margin-right: 0;}
  .form .dform_columns_3 .dfcolumns .column {width: 100% !important}
  .form .dform_columns_3 .dfcolumns .column[data-number="2"] {margin-left: 0; margin-right: 0}

  .form-labels .dform_columns_2 .dfcolumns .column {width: 100% !important}
  .form-labels .dform_columns_2 .dfcolumns .column[data-number="1"] {margin-right: 0;}
  .form-labels .dform_columns_3 .dfcolumns .column {width: 100% !important}
  .form-labels .dform_columns_3 .dfcolumns .column[data-number="2"] {margin-left: 0; margin-right: 0}

  .form .dform_element.dform_date .df_date_elem_extra {width: calc(45% - 16px)}
  .form .dform_element.dform_date .dfinput_dates > div:nth-child(2) {width: calc(25% - 16px)}
  .form .dform_element.dform_date .dfinput_dates > div:nth-child(3) {width: calc(30% - 16px)}
}
@media screen and (max-width: 415px){
  .form .dform_element.dform_date .df_date_elem_extra {width: calc(45% - 8px)}
  .form .dform_element.dform_date .dfinput_dates > div:nth-child(2) {width: calc(25% - 8px); margin-left: 12px; margin-right: 12px;}
  .form .dform_element.dform_date .dfinput_dates > div:nth-child(3) {width: calc(30% - 8px)}
  .form .dform_element.dform_date .df_date_elem_extra select, .form .dform_element.dform_date .df_date_elem select {font-size: 14px;}
  .form fieldset .dfcolumns {padding: 24px 12px 0 12px}
  .form .dform_element.dform_date .df_date_elem_extra:after, .form .dform_element.dform_date .df_date_elem:after, .form .dform_select .dform_container::after {border-left-width: 5px; border-right-width: 5px; border-top-width: 5px;}
}
@media screen and (max-width: 320px){
  .form .dform_element.dform_date .df_date_elem_extra {width: 45%}
  .form .dform_element.dform_date .dfinput_dates > div:nth-child(2) {width: 25%; margin-left: 0; margin-right: 0;}
  .form .dform_element.dform_date .dfinput_dates > div:nth-child(3) {width: 30%}
  .form .dform_element.dform_date .df_date_elem_extra select, .form .dform_element.dform_date .df_date_elem select {font-size: 13px;}
}



/* body */
.body * {color: #202020}
.body img {display: block; max-width: 100%; height: auto !important}
.body ul li, .body ol li {margin-left: 23px; margin-bottom: 10px;}
.body h1, .body h2, .body h3, .body h4, .body h5, .body h6, .body p, .body a, .body ul, .body ol, .body img, .body blockquote, .body table {margin-bottom: 20px}
.body a {font-weight: 400; text-decoration: underline; color: #da1333; font-weight: 600}
.body h1, .body h2, .body h1 *, .body h2 * {font-weight: 600; font-size: 2.25rem; line-height: 3rem; color: #213875}
.form .body h2, .form .body h2 b {font-size: 1.25rem; line-height: 1.5rem;}
.form .body h2 b {font-weight: 800;}
.about .body h2 {color: #202020}
.body h3 {font-weight: 600; font-size: 1.25rem; line-height: 1.25rem; color: #213875}
.body h4 {font-weight: 700; font-size: 16px; line-height: 21px; letter-spacing: .1em; text-transform: uppercase;}
.body h5 {font-weight: 700; font-size: 14px; line-height: 18px; letter-spacing: .1em; text-transform: uppercase;}
.body h6 {font-weight: 700; font-size: 12px; line-height: 16px; letter-spacing: .1em; text-transform: uppercase;}

/* page title */
.page-title .title, .page-title h1 {display: inline-block; color: #c7c7c7; font-size: 1.5rem; line-height: 1.5rem; font-weight: 400; text-transform: lowercase;}
.page-title .title:after, .page-title h1:after {display: block; content: ''; width: 100%; height: 2px; background-color: #213875; margin-top: 30px;}
aside .page-title .title:after {background-color: #c7c7c7;}

/* narrow text */
.narrow-text .container {max-width: 750px;}

/* image banner */
.image-banner:after {display: block; content: ''; width: 100%; padding-top: 53%}

/* icon list */
.icon-list .item {width: calc(50% - 50px); margin-bottom: 100px}
.icon-list .item:nth-child(odd) {margin-right: 100px;}
.icon-list .item .image {width: 80px; margin-right: 20px;}
.icon-list .item .text {width: calc(100% - 100px)}
.icon-list .item .text h3 {color: #213875}
.icon-list .item .text .num {color: #202020; font-size: 18px; font-weight: 600; padding: 10px 0 8px 0}
.icon-list .item img {max-width: 80px; max-height: 80px; display: block;}
.icon-list .item:hover .text h3, .icon-list .item:focus .text h3 {color: #da1333}
@media screen and (max-width: 960px){
  .icon-list .item {width: calc(50% - 25px); margin-bottom: 50px}
  .icon-list .item:nth-child(odd) {margin-right: 50px;}
}
@media screen and (max-width: 600px){
  .icon-list .item {width: 100%;}
  .icon-list .item:nth-child(odd) {margin-right: 0;}
}
@media screen and (max-width: 500px){
  .icon-list .item {display: block; text-align: center; margin-bottom: 35px}
  .icon-list .item .image {display: block; width: 100%; margin-right: 0; margin-bottom: 15px}
  .icon-list .item img {margin: 0 auto}
}

/* back link */
.back-link a {color: #213875}
.back-link a:hover, .back-link a:focus {color: #da1333}

/* article list */
.article-list .item {margin-bottom: 50px; display: block}
.article-list .item .title {color: #202020; font-weight: 600;}
.article-list .item .title, .article-list .item p {margin-bottom: 10px;}
.article-list .item p.date {color: #848484; font-weight: 700; font-size: 14px;}
.article-list .item:hover .title, .article-list .item:focus .title {color: #da1333}
aside .article-list .item {padding-bottom: 15px; margin-bottom: 15px; border-bottom: 1px solid #c7c7c7;}
aside .article-list .item:last-child {margin-bottom: 0; border-bottom: none;}
aside .article-list .item .title {display: block;}

/* archives */
.archives li {margin-left: 17px; margin-bottom: 5px;}
.archives li a:hover, .archives li a:focus {color: #213875}

/* pagination */
.pagination {display: block; padding-top: 30px; border-top: 2px solid #c7c7c7}
.pagination li {margin-right: 10px; display: inline-block;}
.pagination li a {font-weight: 700;display: block;padding: 9px;text-align: center;line-height: 18px;font-size: 15px;min-width: 35px;height: 35px;color: #213875;}
.pagination li a:hover, .pagination li a:focus {color: #da1333}
.pagination li a.active {background-color: #213875;color: #fff;}
.pagination li a.active:hover, .pagination li a.active:focus {color: #fff;background-color: #da1333;}
@media screen and (max-width: 600px){
  .pagination li.desktop-only {display: none}
}

