/* headings */
.typography h1,
.typography .h1,
.typography h1 a,
.typography .h1 a,
.typography .h1 *,
.typography h2,
.typography .h2,
.typography h2 a,
.typography .h2 a,
.typography h3,
.typography .h3,
.typography h3 a,
.typography .h3 a,
.typography h4,
.typography .h4,
.typography h4 a,
.typography .h4 a,
.typography h5,
.typography .h5,
.typography h5 a,
.typography .h5 a  {
    font-family:"Quicksand", sans-serif;
    font-weight: 700;
    display:block;
}

.typography h1,
.typography h1 a,
.typography .h1 a,
.typography .h1 ,
.typography .h1 *,
.typography h1 span,
.typography .h1 span,
.typography .h1 strong,
.typography h1 strong
{
    font-family:"Quicksand", sans-serif !important;
    font-weight: 700;
    position: relative;
    font-size: 3.75rem;
    line-height: 4.375rem;
    color: #001d6c;
    margin-bottom: 1.25rem;
}

.typography h1.white,
.typography h1.white a,
.typography .h1.white a,
.typography .h1.white ,
.typography .h1.white *,
.typography h1.white span,
.typography .h1.white span,
.typography .h1.white strong,
.typography h1.white strong{
    background: transparent !important;
    -webkit-text-fill-color: #fff;

}


.typography h1.small,
.typography .h1.small{
    font-size: 2rem !important;
}

.typography h1.verysmall,
.typography .h1.verysmall{
    font-size: 1.5rem !important;
}

.typography h1 + h2,
.typography .h1 + .h2,
.typography h1 + .h2 {
    margin-top: -12px;
    margin-bottom: 1.75rem;
}

.typography h2,
.typography .h2,
.typography .h2 a,
.typography h2 a ,
.typography .h2 span,
.typography h2 span,
.typography h2 strong,
.typography h2 strong
{
    font-family:"Quicksand", sans-serif !important;
    font-weight: 700;
    display: block;
    position: relative;
    font-size: 3.125rem;
    /*margin-bottom: 28px;*/
    line-height: 3.75rem;
    color: #001d6c;
}

.typography h2.light,
.typography .h2.light{
    font-family: "Quicksand", sans-serif !important;
    font-weight: 400;
}
.typography .inlinewith-h2
{
    line-height: 1.625rem;
}
.typography .h2 span,
.typography h2 span {
    color: #000;
}

.typography h2.small,
.typography .h2.small{
    font-size: 1.625rem !important;
}

.typography h2.verysmall,
.typography .h2.verysmall{
    font-size: 1.25rem !important;
}


.typography h2.simple:after{
    display: none;
}

.typography h3,
.typography .h3,
.typography .h3 a,
.typography h3 a,
.typography h3 span,
.typography .h3 span,
.typography .h3 strong,
.typography h3 strong
{
    font-family:"Quicksand", sans-serif !important;
    font-weight: 700;
    text-transform: none;
    position: relative;
    font-size: 1.875rem;
    /*margin-bottom: 1em;*/
    line-height: 2.5rem;
    color: #001d6c;
}
.typography h3.small,
.typography .h3.small,
.typography .h3.small a,
.typography h3.small a {
    font-size: 1.125rem;
    line-height: 1.2;
}

.typography h3 + h4 {
    margin-top: -6px;
}

.typography h4,
.typography .h4,
.typography .h4 a,
.typography h4 a,
.typography h4 span,
.typography .h4 span,
.typography .h4 strong,
.typography h4 strong
{
    font-size: 1.5rem;
    color: #001d6c;
    line-height: 1.3;
    margin-bottom: 0.5em;
    text-transform: none;
}

.typography h5,
.typography .h5,
.typography .h5 a,
.typography h5 a,
.typography h5 span,
.typography .h5 span
{
    font-size: 1.375rem;
    line-height: 1.2;
    margin-bottom: 0.5em;
    font-family:"Quicksand", sans-serif;
    font-weight: 400;
}

.typography .h5 strong,
.typography h5 strong
{
    font-size: 1.375rem;
    line-height: 1.2;
    margin-bottom: 0.5em;
    font-family:"Quicksand", sans-serif !important;
    font-weight: 700;
}

.typography h6,
.typography .h6,
.typography .h6 a,
.typography h6 a,
.typography h6 span,
.typography .h6 span,
.typography .h6 span,
.typography h6 strong
{
    font-family:"Quicksand", sans-serif !important;
    font-weight: 500;
    font-size: 1.188rem;
    line-height: 1;
    color: #001d6c;
    margin-bottom: 0.5em;
}

.typography .font_blue,
.typography .font_red
{
  color: #001d6c !important;
}

.typography .font_white,
.typography .font_white--all *,
.typography.font_white--all *
{
  color: #fff !important;
}

/* font_grey replace color in _form input */
.typography .font_grey
{
    color:#999 !important;
}

.typography .font_green
{
  color: #008a3d !important
}
.typography .font_red
{
    color:#001d6c !important
}
.typography .font_small{
	font-size: 0.938rem;
}

.typography p{
    margin-bottom: 1em;
    color:#112447;
}

.typography span a:not(.btn),
.typography p a:not(.btn){
    margin-bottom: 1em;
    color:#112447;
    text-decoration: underline !important;
}

/* lists */
.typography ol,
.typography ul {
    counter-reset: li; /* Initiate a counter */
    margin-left: 0; /* Remove the default left margin */
    padding-left: 0; /* Remove the default left padding */
    margin-bottom: 1.5em;
}

.typography ol ol,
.typography ul ul {
    margin: 0 0 0 2em; /* Add some left margin for inner lists */
}

.typography ol > li,
.typography ul > li {
    position: relative; /* Create a positioning context */
    margin: 0 0 3px 28px; /* Give each list item a left margin to make room for the numbers */
    padding: 4px 8px; /* Add some spacing around the content */
    list-style: none; /* Disable the normal item numbering */
    color:#112447;
}


.typography ul > li {
    margin: 0 0 3px 18px; /* Give each list item a left margin to make room for the numbers */
}

.typography ol > li:before {
    content: counter(li); /* Use the counter as content */
    counter-increment: li; /* Increment the counter by 1 */
    /* Position and style the number */
    position: absolute;
    top: 10px;
    left: -28px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* Some space between the number and the content in browsers that support
       generated content but not positioning it (Camino 2 is one example) */
    margin-right: 8px;
    height: 28px;
    width: 28px;
    color: #fff;
    text-align: center;
    font-family:"Quicksand", sans-serif !important;
    font-weight: bold;
    background-color: #112447;
    line-height: 1.75rem;
}

.typography ul > li:before {
    content: "";
    /* Position and style the number */
    position: absolute;
    top: 12px;
    left: -18px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* Some space between the number and the content in browsers that support
       generated content but not positioning it (Camino 2 is one example) */
    margin-right: 5px;
    color: #fff;
    background-color: #112447;
    height: 8px;
    width: 8px;
    font-weight: normal;
    text-align: center;
    font-size: 52px;
    line-height: 1.688rem;
    list-style-type: circle;
    border-radius: 99px;
}
.typography.font_white--all ul > li:before,
.typography .text-white ul > li:before
{
    color:white !important;
    background-color:white !important;
}

.typography a:not(.btn){
	color: #001d6c;
    font-family:"Quicksand", sans-serif;
    font-weight: 400;
}

.typography a:not(.btn):focus,
.typography a:not(.btn):focus-visible
{
    outline: 1px solid #b65205;
}


.typography .left,
.typography .alignleft {
    float: left;
    margin: 0 1.5em 1.5em 0;
}

.typography .center,
.typography .aligncenter {
    float: none;
    margin: 0 auto;
}

.typography p + ul{
    margin-top: -18px;
}

/* images */
.typography .captionImage{
    display: inline-block;
}
.typography .center.captionImage
{
    display:block;
}

.typography .captionImage img {
    margin-bottom: 0 !important;
}

.typography img,
.typography .captionImage{
    max-width: 100%;
    height: auto;
}

.typography .captionImage p.caption {
    font-size: 0.875rem;
    clear: both;
    padding: 6px;
    background: #001d6c;
    width: 100%;
    margin: 0;
    color: #fff;
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px;
}

section.typography img,
section.typography .captionImage{
    max-width: 100% !important;
    height: auto !important;
}


/* tables */
.typography table {
    border-collapse: collapse;
    margin-bottom: 1.5em;
	width: 100%;
}


.typography table td{
    border:0;
}

.typography tbody > tr > td,
.typography tbody > tr > th,
.typography tfoot > tr > td,
.typography tfoot > tr > th,
.typography thead > tr > td,
.typography thead > tr > th
.typography td {
    padding: 7px;
    line-height: 2;
    vertical-align: top;
}

.typography tr{
    border-bottom: 1px solid #ececec;
}

.typography tbody tr:last-child{
    /*border-bottom: 0;*/
}

.typography table thead td,
.typography table th{
    font-family:"Quicksand", sans-serif !important;
    font-weight: 700;
    color:#333;
}

.typography tr:hover {
    background: #eee;
}

.typography strong {
    font-family:"Quicksand", sans-serif !important;
    font-weight: 700;
}

.typography .sneekpeek:after {
    font-family: "Font Awesome 5 Pro";
    content: "\f002";
    color: #DF4B38;
    margin-left: 10px;
    font-size: 1.25rem;
    position: absolute;
    margin-top: -6px;
}

.continueLink
{
    position:relative;
    font-family: "Quicksand", sans-serif !important;
    font-weight: 500;
    font-size: 1.188rem;
    line-height: 1;
    color: #000;
    margin-bottom: 0.5em;
    background: -webkit-linear-gradient(left, #001d6c, #01509f);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.continueLink::before{
    font-family: "Font Awesome 5 Pro";
    content: "\f178";
    color: #001d6c;
    margin-right:10px;
}
.font-32{
    font-size: 2rem !important;
    line-height: 2.625rem !important;
}
/* misc */
.separator {
    height: 0;
    border-bottom: 2px dashed #74b0d4;
    margin-bottom: 1.125rem;
    opacity: 0.5;
}

.img-fluid {
    max-width: 100%;
    height: auto !important;
}

.white-text,
.white-text *{
    color: #fff !important;
    background: transparent;
}
.white-text h1:after,
.white-text h2:after{
    background-color:#fff !important;
}

.tableofcontents {
    margin-bottom: 1rem !important;
}

.tableofcontents li {
    margin-left: 0;
    padding-left: 20px;
}

.tableofcontents li:before {
    display: none;
}

table.stacktable,
.stacktable {
}


.content__column a:not([href]) {
    position: relative;
    top: -140px;
    display: block;
    height: 1px;
    width: 1px;
    opacity: 0;
    background: red;
}

.headline__line {
    border-left-width: 4px !important;
    padding-left: 10px !important;
    border-left-style: solid !important;
}

.typography .font-gradient
{
    background: -webkit-linear-gradient(left, #001d6c, #01509f);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.typography .font-grey
{
    color:#999 !important;
}

.white {
  color: #fff !important;
}

.green {
    color: #001d6c !important;
}

.grey {
    color: #999 !important;
}

.typography .orange,
.typography .orange *,
.typography .font_orange *,
.typography .font_orange {
    color: #FA7F26 !important;
}

.high-contrast .typography .orange,
.high-contrast .typography .orange *,
.high-contrast .typography .font_orange *,
.high-contrast .typography .font_orange{
    color: #b65205 !important;
}

.font-14 *,
.font-14{
    font-size: 0.875rem !important;
}

.font-16 *,
.font-16{
    font-size: 1rem !important;
}


:not(.text-center) .subtitle {
    color: #001D6C;
    font-size: 3.75rem;
    line-height: 4.375rem;
    position: relative;
    font-family:"Quicksand", sans-serif !important;
    font-weight: 400;
    display: block;
    margin-bottom: .25em;
}

:not(.text-center) .subtitle__h2 {
    color: #001D6C;
    font-size: 3.125rem;
    line-height: 3.75rem;
    position: relative;
    font-family:"Quicksand", sans-serif !important;
    font-weight: 400;
    display: block;
    margin-bottom: .25em;
}


.text-center .subtitle {
    padding-left: 0;
}

.typography .bold
{
    font-weight: bold;
    font-family: "Quicksand", sans-serif !important;
}

.typography .font-weight-light{
    font-family: "Quicksand", sans-serif !important;
    font-weight: 400;
}


@media only screen and (max-width : 1199.98px) {

    .typography h1,
    .typography h1 a,
    .typography .h1 a,
    .typography .h1 ,
    .typography h1 span,
    .typography .h1 span{
        font-size: 2.875rem;
        line-height: 3.25rem;
        margin-bottom: 0.75rem;
    }

    .typography h2,
    .typography .h2,
    .typography .h2 a,
    .typography h2 a ,
    .typography .h2 span,
    .typography h2 span {
        font-size: 2.5rem;
        line-height: 2.875rem;
        margin-bottom: 0.75rem;
    }
    .typography .inlinewith-h2
    {
        line-height:1.75rem;
    }

    .typography h3,
    .typography .h3,
    .typography .h3 a,
    .typography h3 a,
    .typography .h3 span,
    .typography h3 span{
        font-size: 2.25rem;
        line-height: 2.625rem;
        margin-bottom: 0.75rem;
    }

    .typography h3 + h4 {
        margin-top: -6px;
    }

    .typography h4,
    .typography .h4,
    .typography .h4 a,
    .typography h4 a,
    .typography .h4 span,
    .typography h4 span{
        font-size: 1.875rem;
        line-height: 2.25rem;
        margin-bottom: 0.5em;
    }

    .typography h5,
    .typography .h5,
    .typography .h5 a,
    .typography h5 a,
    .typography .h5 span,
    .typography h5 span{
        font-size: 1.5rem;
        line-height: 1.875rem;
        margin-bottom: 0.5em;
    }

    .typography h6,
    .typography .h6,
    .typography .h6 a,
    .typography h6 a,
    .typography .h6 span,
    .typography h6 span{
        font-size: 1.25rem;
        line-height: 1.625rem;
        margin-bottom: 0.5em;
    }

    .hero__carousel p{
        font-size: 1rem !important;
    }

    .typography h1 + h2,
    .typography .h1 + .h2,
    .typography h1 + .h2 {
        margin-bottom: 0;
    }

    .typography h1.small,
    .typography .h1.small{
        font-size: 1.625rem !important;
    }

    .typography h2.small,
    .typography .h2.small{
        font-size: 1.625rem !important;
    }
    :not(.text-center) .subtitle {
        font-size: 2.875rem;
        line-height: 3.25rem;
    }
    :not(.text-center) .subtitle__h2 {
        font-size: 2.5rem;
        line-height: 2.875rem;
    }
}

@media only screen and (max-width : 991.98px) {

    .typography h1,
    .typography h1 a,
    .typography .h1 a,
    .typography .h1 ,
    .typography h1 span,
    .typography .h1 span{
        font-size: 2.25rem;
        line-height: 2.25rem;
        margin-bottom: 0.75rem;
    }

    .typography h2,
    .typography .h2,
    .typography .h2 a,
    .typography h2 a ,
    .typography .h2 span,
    .typography h2 span {
        font-size: 2rem;
        line-height: 2.375rem;
        margin-bottom: 0.75rem;
    }
    .typography .inlinewith-h2
    {
        line-height:1.75rem;
    }

    .typography h3,
    .typography .h3,
    .typography .h3 a,
    .typography h3 a,
    .typography .h3 span,
    .typography h3 span{
        font-size: 1.75rem;
        line-height: 2.25rem;
        margin-bottom: 0.75rem;
    }

    .typography h3 + h4 {
        margin-top: -6px;
    }

    .typography h4,
    .typography .h4,
    .typography .h4 a,
    .typography h4 a,
    .typography .h4 span,
    .typography h4 span{
        font-size: 1.625rem;
        line-height: 2.125rem;
        margin-bottom: 0.5em;
    }

    .typography h5,
    .typography .h5,
    .typography .h5 a,
    .typography h5 a,
    .typography .h5 span,
    .typography h5 span{
        font-size: 1.375rem;
        line-height: 1.75rem;
        margin-bottom: 0.5em;
    }

    .typography h6,
    .typography .h6,
    .typography .h6 a,
    .typography h6 a,
    .typography .h6 span,
    .typography h6 span{
        font-size: 1.25rem;
        line-height: 1.75rem;
        margin-bottom: 0.5em;
    }

    .hero__carousel p{
        font-size: 1rem !important;
    }

    .typography h1 + h2,
    .typography .h1 + .h2,
    .typography h1 + .h2 {
        margin-bottom: 0;
    }

    .typography h1.small,
    .typography .h1.small{
        font-size: 1.625rem !important;
    }

    .typography h2.small,
    .typography .h2.small{
        font-size: 1.625rem !important;
    }

}


@media only screen and (max-width : 767.98px) {

    .typography h1,
    .typography h1 a,
    .typography .h1 a,
    .typography .h1 ,
    .typography h1 span,
    .typography .h1 span{
        font-size: 1.875rem;
        line-height: 2.25rem;
        margin-bottom: 0.75rem;
    }

    .typography h2,
    .typography .h2,
    .typography .h2 a,
    .typography h2 a ,
    .typography .h2 span,
    .typography h2 span {
        font-size: 1.625rem;
        line-height: 2rem;
        margin-bottom: 0.75rem;
    }
    .typography .inlinewith-h2
    {
        line-height: 1.75rem;
    }

    .typography h3,
    .typography .h3,
    .typography .h3 a,
    .typography h3 a,
    .typography .h3 span,
    .typography h3 span{
        font-size: 1.375rem;
        line-height: 1.875rem;
        margin-bottom: 0.75rem;
    }

    .typography h3 + h4 {
        margin-top: -6px;
    }

    .typography h4,
    .typography .h4,
    .typography .h4 a,
    .typography h4 a,
    .typography .h4 span,
    .typography h4 span{
        font-size: 1.25rem;
        line-height: 1.75rem;
        margin-bottom: 0.5em;
    }

    .typography h5,
    .typography .h5,
    .typography .h5 a,
    .typography h5 a,
    .typography .h5 span,
    .typography h5 span{
        font-size: 1.125rem;
        line-height: 1.625rem;
        margin-bottom: 0.5em;
    }

    .typography h6,
    .typography .h6,
    .typography .h6 a,
    .typography h6 a,
    .typography .h6 span,
    .typography h6 span{
        font-size: 1rem;
        line-height: 1.5rem;
        margin-bottom: 0.5em;
    }

    .hero__carousel p{
        font-size: 1rem !important;
    }

    .typography h1 + h2,
    .typography .h1 + .h2,
    .typography h1 + .h2 {
        margin-bottom: 0;
    }

    .typography h1.small,
    .typography .h1.small{
        font-size: 1.625rem !important;
    }

    .typography h2.small,
    .typography .h2.small{
        font-size: 1.625rem !important;
    }
    :not(.text-center) .subtitle {
        font-size: 1.375rem;
        line-height: 1.75rem;
    }
    :not(.text-center) .subtitle__h2 {
        font-size: 1.375rem;
        line-height: 1.75rem;
    }
}
