body {
    font-family: 'Open Sans', sans-serif;
    font-size: 95%;
    color: #222;
    line-height: 1.65em;
}

body,
html {
    /*height: 100%;*/
    margin: 0;
    padding: 0;
}

p {
    margin: 0 0 1.5em 0;
}

strong,
th,
b {
    font-weight: bold;
    font-weight: 600;
}

sup {
    top: 0;
}

a,
a:link,
a:visited {
    color: #358433;
    text-decoration: none;
}

a:hover,
a:active,
a:focus {
    color: #2c55a6;
    text-decoration: underline;
}

#fundingchart {
    width: 550px;
}

#fundingchart span {
    margin-left: 0em;
    margin-right: 0em;
    font-size: 3.5em;
    font-weight: bold;
}

a.h1,
a.h2,
a.h3,
a.h4,
a.h5,
a.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold;
    font-weight: 600;
    display: block;
}

h1,
a.h1,
a:link.h1,
a:visited.h1,
a:hover.h1,
a:active.h1 {
    color: #2c55a6;
    font-weight: bold;
    font-weight: 600;
    font-size: 1.8em;
    display: block;
    margin-bottom: 0.9em;
    margin-top: 0.33em;
    line-height: 1.3em;
}

h2,
a.h2,
a:link.h2,
a:visited.h2,
a:hover.h2,
a:active.h2 {
    color: #2c55a6;
    font-weight: bold;
    font-weight: 600;
    margin-bottom: 0.75em;
    font-size: 1.3em;
    display: block;
}

h3,
a.h3,
a:link.h3,
a:visited.h3,
a:hover.h3,
a:active.h3 {
    color: #2c55a6;
    font-weight: bold;
    font-weight: 600;
    margin-bottom: 0.75em;
    font-size: 1.1em;
    display: block;
}

h4,
a.h4,
a:link.h4,
a:visited.h4,
a:hover.h4,
a:active.h4 {
    color: #2c55a6;
    font-weight: bold;
    font-weight: 600;
    margin-bottom: 0.75em;
    font-size: 1.0em;
    display: block;
}

h5,
a.h5,
a:link.h5,
a:visited.h5,
a:hover.h5,
a:active.h5 {
    color: #2c55a6;
    font-size: 1.00em;
}

h6,
a.h6,
a:link.h6,
a:visited.h6,
a:hover.h6,
a:active.h6 {
    color: #2c55a6;
    font-size: 0.75em;
}

fieldset {
    padding: 0;
    margin: 0;
}

legend {
    margin: 0 0 0 2em;
    padding: 0 1em;
}

textarea,
input,
select {
    border: solid 1px #ccc;
    margin: 0;
    padding: 1em;
}

::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #aaa;
    opacity: 1;
    /* Firefox */
}

:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #aaa;
}

::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #aaa;
}


/*input:focus,textarea:focus,select:focus { border:solid 1px black; }*/

hr {
    margin: 0.75em 0;
    padding: 0;
}

sub {
    vertical-align: sub;
    font-size: smaller;
}

sup {
    vertical-align: super;
    font-size: smaller;
}

ul,
ol,
dl {
    position: relative;
    padding: 0 0 0 3em;
    margin: 1.5em 0em;
}

ul {
    list-style-type: disc;
    list-style-position: outside;
}

ol {
    list-style-type: decimal;
    list-style-position: outside;
}

ul ul,
ol ul {
    list-style-type: circle;
}

ol ol,
ul ol {
    list-style-type: lower-latin;
}

dir,
menu {
    margin: 1.5em 0;
}


/* nested lists have no top/bottom margins */

ul ul,
ul ol,
ul dir,
ul menu,
ul dl,
ol ul,
ol ol,
ol dir,
ol menu,
ol dl,
dl ul,
dl ol,
dl dir,
dl menu,
dl dl,
dir ul,
dir ol,
dir dir,
dir menu,
dir dl,
menu ul,
menu ol,
menu dir,
menu menu,
menu dl {
    margin: 0;
    padding: 0 0 0 1.5em;
}

hr {
    margin: 0.75em 0;
    padding: 0;
}


/* set margin/padding to px for static w/ no scaling */

table td {
    vertical-align: top;
}

a {
    cursor: pointer;
}

em,
i {
    font-style: italic;
}

.clearance {
    clear: both;
    height: 0px;
    margin: 0;
    padding: 0;
    font-size: 0;
    line-height: 0;
}

.clear {
    clear: both;
    height: 0px;
    margin: 0;
    padding: 0;
    margin-top: 0;
    font-size: 0;
    line-height: 0;
}

.cntPage li,
.cntPage ol,
.cntPage ul,
.cntPage td,
.cntPage tr,
.cntPage table {}

.cntPage li {
    margin-bottom: 0.5em;
}

.padding {
    padding: 1em 1em 1em 1em;
}

.addPadding {
    padding: 0.5em 1em;
}

.floatfix {
    display: inline-block;
    width: 100%;
    height: 1%;
    margin: 0;
    padding: 0;
}

.floatleft {
    float: left;
    margin: 0 1em 0.5em 0;
}

.floatright {
    float: right;
    margin: 0 0 0.5em 1em;
}

.errorpage {
    display: block;
    text-align: center;
    margin-top: 1em;
}

.erroralt {
    font-size: .9em;
    color: #c81305;
    font-style: italic;
}

.message {
    font-weight: bold;
    color: #00BB00;
}

.messagealt {
    font-size: .9em;
    color: #00BB00;
}

.small {
    font-size: 0.85em;
    line-height: 1.35em;
    margin-bottom: 0.85em;
}

figcaption {
    margin-top: 0.5em;
    font-size: 0.85em;
    line-height: 1.35em;
}

.caption {
    font-size: 0.9em;
    line-height: 1.6em;
    color: #676767;
    display: block;
    margin-top: 4px;
}

figure {
    margin-bottom: 1.5em;
}

.smaller {
    font-size: 0.75em;
    line-height: 1.4em;
}

.large {
    font-size: 1.15em;
    line-height: 1.5em;
    /*font-weight: 100;*/
}

.larger {
    font-size: 1.35em;
    line-height: 1.65em;
    font-weight: 100;
}

.italic {
    font-style: italic;
}

.gray {
    color: #777;
}

.hidden,
.invisible {
    position: absolute;
    left: -9999px;
    top: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.invisible {
    position: absolute !important;
}

.blue {
    color: #2c55a6;
}

.green {
    color: #358433;
}

.notice-box,
.notice {
    padding: 1em;
    box-sizing: border-box;
    border: 1px solid #FFFF00;
    background-color: #FFFCD4;
    margin-top: 1.25em;
    margin-bottom: 1.25em;
}

.notice-box p:last-child {
    margin-bottom: 0;
}

.blue-bg {
    padding: 1.5em;
    box-sizing: border-box;
    background-color: #2c55a6;
    color: #fff;
    margin-top: 1.25em;
    margin-bottom: 1.5em;
}

.blue-bg .btn {
    color: #2c55a6 !important;
    background: #e0e8f9;
    border: 2px solid #fff !important;
    padding: 10px 50px;
    font-weight: 200 !important;
}

.light-blue-bg {
    padding: 1.5em;
    box-sizing: border-box;
    background-color: #f3f4f9;
    margin-top: 1.25em;
    margin-bottom: 1.5em;
}


.blue-bg p:last-child, .light-blue-bg p:last-child {
    margin-bottom: 0;
}

.blue-bg a {
    color: #eee;
}



/*label.required { background: url(../images/required.gif) no-repeat right; padding-right: 7px; }*/

.btn {
    background-color: #2c55a6;
    color: #fff !important;
    padding: 1em 2em;
    box-sizing: border-box;
    cursor: pointer;
    /*border: 1px solid #2c55a6;*/
    font-family: 'Open Sans', sans-serif;
    font-weight: bold;
    font-weight: 600;
    text-align: center;
    display: inline-block;
    -webkit-appearance: none;
}

.btn-1 {
    background-color:transparent;
    color: #2c55a6 !important;
    padding: 1em 3em;
    box-sizing: border-box;
    cursor: pointer;
    border: 0;
    font-family: 'Open Sans', sans-serif;
    font-weight: bold;
    font-weight: 600;
    text-align: center;
    display: inline-block;
    -webkit-appearance: none;
    border: 1px solid #2c55a6;
}

.btn-2  {
    background-color:transparent;
    color: #358433 !important;
    padding: 1em 3em;
    box-sizing: border-box;
    cursor: pointer;
    border: 0;
    font-family: 'Open Sans', sans-serif;
    font-weight: bold;
    font-weight: 600;
    text-align: center;
    display: inline-block;
    -webkit-appearance: none;
    border: 1px solid #358433; 
}

.btn:focus {
    /*background-color: #676767;
    color: #fff;
    text-decoration: none;*/
    outline: 0;
    border: none !important;
}

.btn:hover, .btn-1:hover , .btn-2:hover  {
    background-color: #676767;
    /*border: 1px solid #676767;*/
    color: #fff !important;
    text-decoration: none;
}

input.btnalt {
    background-color: #ccc;
    color: #000;
    border: solid .2em #eee;
    border-right-color: #444;
    border-bottom-color: #444;
    font-weight: bold;
    -moz-border-radius: 2px;
    border-radius: 2px;
}

input:active.btnalt {
    background-color: #aaa;
    border: solid .2em #444;
    border-right-color: #eee;
    border-bottom-color: #eee;
}

img.left {
    float: left;
    margin: 0 1em .5em 0;
}

img.right {
    float: right;
    margin: 0 0 .5em 1em;
}

h1.dottedBottom {}

.dottedBottom {
    border-bottom: none;
}

h1.dottedBottom,
h2.dottedBottom,
h3.dottedBottom,
h4.dottedBottom,
h2,
h3 {
    padding-bottom: 0em;
    margin-bottom: 0.5em;
}


/* SB EDITOR & TEMPLATE STYLES */

.sbTable1 {
    background-color: #F0EDDD;
    border: solid 1px #CCC;
}

.sbTable1 td {
    vertical-align: top;
    padding: 6px;
}

.sbTable2 {
    background-color: #FFFFFF;
    border: solid 1px #CCC;
}

.sbTable2 td,
.sbTable2 th {
    vertical-align: top;
    padding: 6px;
    text-align: left;
}

.sbTable2 tr:first-child th {
    background-color: #2c55a6;
    color: #fff;
}

.sbTable2 tr.rowheader td, .sbTable1 tr.rowheader td {
    background-color: black;
    color: #fff;
}

.sbTable2 tr.alt {
    /*background-color: #F0F0F0;*/
}

.sbTable2 tr:nth-child(even) {
    background-color: #e6e6e6;
}

.sbTable2 tr:nth-child(odd) {
    background-color: #ffffff;
}

.sortable {
    background-color: #FFFFFF;
    border: solid 1px #cccccc;
}

.sortable td {
    vertical-align: top;
    padding: 6px;
}

.sortable tr.alt {
    background-color: #F5F5F5;
}

.sbNormal {
    font-size: 1em;
    color: #000000;
    font-weight: normal;
    margin: 0;
    padding: 0;
}

.sbHeader1 {
    color: #2c55a6;
    font-weight: bold;
    font-size: 1.8em;
    display: block;
}

.sbHeader2 {
    color: #2c55a6;
    font-weight: bold;
    margin-bottom: 5px;
    font-size: 1.2em;
    display: block;
}

.sbHeader3 {
    color: #3d7e00;
    font-weight: bold;
    font-size: 1.1em;
    display: block;
}

.sbHeader4 {
    color: #2c55a6;
    font-weight: bold;
    margin-bottom: 5px;
    font-size: 1.0em;
    display: block;
}

.imgbox {
    float: right;
    width: 240px;
    margin: 0 0 8px 8px;
    background-color: #eeeeee;
    padding: 8px;
    font-style: italic;
    width: auto;
    min-width: 1px;
}

.imgbox img {
    padding-bottom: 4px;
}

.ActivePage {
    background-color: #e8eaf1;
}

div.story h4 {
    color: #2c55a6;
}

.video-container {
    margin-bottom: 8px;
}

/* New custom styles*/

.styledTextBlock {
  position: relative;
  display: inline-block;
  margin-bottom:15px;
  padding:3% 5% 3% 5%;
  width: 90%;
  background-color: #fff;
  border-radius: 5px;
  border: 1px solid #dfdfdf;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0);
  border-radius: 5px;
  box-sizing: border-box;
  /*min-height: 320px;*/

}

.styledTextBlock p:last-child {
    margin-bottom: 0;
}

.styledTextBlock::after {
  content: "";
  border-radius: 5px;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
  opacity: 0;

}

.styledTextBlock:hover {
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}

.styledTextBlock:hover::after {
    opacity: 1;
}

.card {
    --bs-card-border-radius: 0.225rem;
    --bs-card-spacer-y: 2rem;
    --bs-card-spacer-x: 2rem;
    
}


/* End new custom styles*/