@charset "UTF-8";
pre,textarea{
    overflow:auto
}
body,figure{
    margin:0
}
body,legend{
    padding:0
}
body,html{
    height:100%
}
article,aside,details,dialog,figcaption,figure,figure>img,footer,header,hgroup,img,main,menu,nav,section,summary{
    display:block
}
hr,img,legend{
    border:0
}
.video-container,body,sub,sup{
    position:relative
}
[class*=" icon-"],[class^=icon-],html{
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale
}
body,h1,h2,h3,h4,h5,h6{
    color:#3d3e3b;
    line-height:1.3
}
a,hr{
    background-color:transparent
}
.program-tabs:after,hr{
    clear:both
}
article ul,nav ol,nav ul{
    list-style:none
}
html{
    font-family:sans-serif;
    -ms-text-size-adjust:100%;
    -webkit-text-size-adjust:100%
}
h1,h2,h3,h4,h5,h6{
    font-style:normal
}
abbr[title]{
    border-bottom:1px dotted
}
b,strong{
    font-weight:700
}
dfn{
    font-style:italic
}
hr{
    -moz-box-sizing:content-box;
    box-sizing:content-box;
    height:0
}
mark{
    background:#ff0;
    color:#000
}
code,kbd,pre,samp{
    font-family:monospace,serif;
    font-size:1em
}
a:active,a:hover{
    outline:0
}
q{
    quotes:"“" "”" "‘" "’"
}
small{
    font-size:80%
}
sub,sup{
    font-size:75%;
    line-height:0;
    vertical-align:baseline
}
sup{
    top:-.5em
}
sub{
    bottom:-.25em
}
pre{
    white-space:pre;
    white-space:pre-wrap;
    word-wrap:break-word
}
[hidden],audio:not([controls]){
    display:none
}
.ie8 img{
    width:auto
}
#getlocations_map_canvas img,.gmap img,.openlayers-map img,.view-gmap img{
    max-width:none
}
svg:not(:root){
    overflow:hidden
}
fieldset{
    border:1px solid silver;
    margin:0 2px;
    padding:.35em .625em .75em
}
button,input,select,textarea{
    font-family:inherit;
    font-size:100%;
    margin:0
}
button,input{
    line-height:normal
}
button,select{
    text-transform:none
}
button,html input[type=button],input[type=reset],input[type=submit]{
    -webkit-appearance:button;
    cursor:pointer
}
button[disabled],html input[disabled]{
    cursor:default
}
input[type=checkbox],input[type=radio]{
    box-sizing:border-box;
    padding:0
}
input[type=search]{
    -moz-box-sizing:content-box;
    -webkit-box-sizing:content-box;
    box-sizing:border-box
}
*,.tab-content,::after,::before{
    box-sizing:border-box
}
input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{
    -webkit-appearance:none
}
button::-moz-focus-inner,input::-moz-focus-inner{
    border:0;
    padding:0
}
textarea{
    vertical-align:top;
    min-height:100px
}
table{
    border-collapse:collapse;
    border-spacing:0
}
@media print{
    *{
        background:0 0!important;
        color:#000!important;
        filter:none!important;
        -ms-filter:none!important
    }
    a,a:visited{
        text-decoration:underline
    }
    a[href]:after{
        content:" (" attr(href) ")"
    }
    abbr[title]:after{
        content:" (" attr(title) ")"
    }
    a[href^="javascript:"]:after,a[href^="#"]:after{
        content:""
    }
    thead{
        display:table-header-group
    }
    img,tr{
        page-break-inside:avoid
    }
    @page{
        margin:.5cm
    }
    h2,h3,p{
        orphans:3;
        widows:3
    }
    h2,h3{
        page-break-after:avoid
    }
}
body,html{
    -webkit-tap-highlight-color:transparent
}
body{
    font-family:Merriweather,serif;
    font-size:16px;
    font-size:1rem;
    min-width:320px
}
@media (min-width:320px){
    body{
        overflow-x:hidden
    }
}
img{
    max-width:100%;
    height:auto
}
a,a.button,button,input[type=submit]{
    display:inline-block;
    text-decoration:none
}
.page-wrapper{
    max-width:1800px;
    margin:0 auto
}
blockquote{
    color:#31a429;
    margin:20px 0 20px 20px;
    padding:0 0 0 20px;
    float:right;
    max-width:350px;
    border-left:3px solid #31a429;
    line-height:1.2;
    font-family:allerregular;
    font-size:18px;
    font-size:1.125rem
}
@media (min-width:900px){
    blockquote{
        margin:34px 0 34px 34px;
        font-size:24px;
        font-size:1.5rem
    }
}
hr{
    margin:40px auto;
    border-bottom:solid 1px #dadada
}
.video-container{
    padding-bottom:56.25%;
    padding-top:30px;
    height:0;
    overflow:hidden
}
.video-container .placeholder,.video-container embed,.video-container iframe,.video-container object{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%
}
.sr-text{
    clip:rect(1px,1px,1px,1px);
    clip-path:polygon(0 0,0 0,0 0,0 0);
    position:absolute;
    white-space:nowrap;
    height:1px;
    width:1px;
    overflow:hidden
}
@font-face{
    font-family:allerregular;
    src:url(../fonts/aller_rg-webfont.woff2) format("woff2"),url(../fonts/aller_rg-webfont.woff) format("woff");
    font-weight:400;
    font-style:normal
}
@font-face{
    font-family:allerbold;
    src:url(../fonts/aller_bd-webfont.woff2) format("woff2"),url(../fonts/aller_bd-webfont.woff) format("woff");
    font-weight:400;
    font-style:normal
}
@font-face{
    font-family:icomoon;
    src:url(../fonts/icomoon.eot?961ase);
    src:url(../fonts/icomoon.eot?961ase#iefix) format("embedded-opentype"),url(../fonts/icomoon.woff2?961ase) format("woff2"),url(../fonts/icomoon.ttf?961ase) format("truetype"),url(../fonts/icomoon.woff?961ase) format("woff"),url(../fonts/icomoon.svg?961ase#icomoon) format("svg");
    font-weight:400;
    font-style:normal
}
[class*=" icon-"],[class^=icon-]{
    font-family:icomoon!important;
    speak:none;
    font-style:normal;
    font-weight:400;
    font-variant:normal;
    text-transform:none;
    line-height:1
}
a.button,button,h1,h2,h3,h4,h5,h6,header .nav__dropdown-toggle,input[type=submit]{
    font-family:allerbold
}
.icon-apple:before{
    content:""
}
.icon-caret:before{
    content:""
}
.icon-externalLink:before{
    content:""
}
.icon-facebook:before{
    content:""
}
.icon-filter:before{
    content:""
}
.icon-info:before{
    content:""
}
.icon-linkedIn:before{
    content:""
}
.icon-mail:before{
    content:""
}
.icon-mailOutline:before{
    content:""
}
.icon-math:before{
    content:""
}
.icon-badge:before{
    content:""
}
.icon-modal:before{
    content:""
}
.icon-phone:before{
    content:""
}
.icon-print:before{
    content:""
}
.icon-ratingBars:before{
    content:""
}
.icon-reading:before{
    content:""
}
.icon-schoolHouse:before{
    content:""
}
.icon-science:before{
    content:""
}
.icon-star:before{
    content:""
}
.icon-twitter:before{
    content:""
}
.icon-yes:before{
    content:""
}
.icon-cross:before{
    content:""
}
.icon-arrow-right:before{
    content:""
}
.icon-arrow-left:before{
    content:""
}
h1,h2,h3,h4,h5,h6{
    margin:0 0 14px;
    font-weight:400;
    transition:font-size .3s ease
}
h1.-flush,h2.-flush,h3.-flush,h4.-flush,h5.-flush,h6.-flush{
    margin-bottom:0
}
h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{
    text-decoration:none
}
h1{
    font-size:36px;
    font-size:2.25rem
}
@media (min-width:1100px){
    h1{
        font-size:43px;
        font-size:2.6875rem
    }
}
h2{
    font-size:24px;
    font-size:1.5rem
}
@media (min-width:1100px){
    h2{
        font-size:28px;
        font-size:1.75rem
    }
}
h3,p.-lead{
    font-size:18px;
    font-size:1.125rem
}
@media (min-width:1100px){
    h3{
        font-size:20px;
        font-size:1.25rem
    }
}
h4{
    font-size:17px;
    font-size:1.0625rem
}
@media (min-width:1100px){
    h4{
        font-size:18px;
        font-size:1.125rem
    }
}
h5,h6{
    font-size:16px;
    font-size:1rem
}
p{
    font-size:15px;
    font-size:.9375rem;
    margin:0 0 34px;
    line-height:1.8
}
p:last-child{
    margin:0
}
article a{
    font-weight:700
}
article p+ol,article p+ul{
    margin-top:-20px
}
article ol li,article ul li{
    margin:0 0 10px
}
article ol,article ul{
    margin:0 0 25px;
    line-height:1.8
}
article ol:last-child,article ul:last-child{
    margin:0
}
article ul{
    padding:0
}
article ul li{
    position:relative;
    padding-left:22px
}
article ul li::before{
    content:"";
    position:absolute;
    width:7px;
    height:7px;
    background:#00b9ca;
    font-size:18px;
    left:0;
    top:10px
}
article ol{
    padding:0 0 0 20px
}
a{
    -webkit-text-decoration-skip:objects;
    color:#00b9ca;
    transition:.3s ease
}
a:focus{
    outline:0
}
a:hover{
    text-decoration:underline
}
a.button,button,input[type=submit]{
    padding:14px 30px;
    text-transform:uppercase;
    background:0 0;
    color:#fff;
    text-align:center;
    font-size:13px;
    font-size:.8125rem;
    border:2px solid #fff;
    border-radius:4px;
    transition:all .3s ease
}
label,select{
    display:block
}
a.button.hovered,a.button:active,a.button:focus,a.button:hover,button.hovered,button:active,button:focus,button:hover,input[type=submit].hovered,input[type=submit]:active,input[type=submit]:focus,input[type=submit]:hover{
    transition:all .3s ease;
    color:#3d3e3b;
    background:#fff;
    outline:0
}
a.button.-small,button.-small,input[type=submit].-small{
    font-size:11px;
    font-size:.6875rem
}
a.button.-big,button.-big,input[type=submit].-big{
    font-size:18px;
    font-size:1.125rem
}
a.button.-arrow,button.-arrow,input[type=submit].-arrow{
    position:relative;
    padding-right:52px
}
a.button.-arrow::after,button.-arrow::after,input[type=submit].-arrow::after{
    content:"";
    font-family:icomoon;
    position:absolute;
    top:16px;
    right:30px;
    transition:all .3s ease
}
a.button.-arrow:hover::after,button.-arrow:hover::after,input[type=submit].-arrow:hover::after{
    right:25px;
    transition:all .3s ease
}
label{
    padding:10px 0
}
label.error{
    color:red
}
input[type=email],input[type=password],input[type=search],input[type=text],select,textarea{
    font-family:allerregular;
    width:100%;
    margin:0 0 10px;
    padding:8px;
    font-size:1em;
    color:#3d3e3b;
    border-top:2px solid #d2dbdc;
    border-right:2px solid #d2dbdc;
    border-bottom:2px solid #d2dbdc;
    border-left:2px solid #d2dbdc;
    border-radius:3px;
    -webkit-appearance:none;
    transition:background-color .3s ease
}
input[type=email].-focused,input[type=email]:focus,input[type=password].-focused,input[type=password]:focus,input[type=search].-focused,input[type=search]:focus,input[type=text].-focused,input[type=text]:focus,select.-focused,select:focus,textarea.-focused,textarea:focus{
    outline:0;
    background-color:#fff;
    color:#3d3e3b
}
input[type=email].-focused::-webkit-input-placeholder,input[type=email]:focus::-webkit-input-placeholder,input[type=password].-focused::-webkit-input-placeholder,input[type=password]:focus::-webkit-input-placeholder,input[type=search].-focused::-webkit-input-placeholder,input[type=search]:focus::-webkit-input-placeholder,input[type=text].-focused::-webkit-input-placeholder,input[type=text]:focus::-webkit-input-placeholder,select.-focused::-webkit-input-placeholder,select:focus::-webkit-input-placeholder,textarea.-focused::-webkit-input-placeholder,textarea:focus::-webkit-input-placeholder{
    color:#c1c1c1;
    opacity:.9
}
input[type=email].-focused::-moz-placeholder,input[type=email]:focus::-moz-placeholder,input[type=password].-focused::-moz-placeholder,input[type=password]:focus::-moz-placeholder,input[type=search].-focused::-moz-placeholder,input[type=search]:focus::-moz-placeholder,input[type=text].-focused::-moz-placeholder,input[type=text]:focus::-moz-placeholder,select.-focused::-moz-placeholder,select:focus::-moz-placeholder,textarea.-focused::-moz-placeholder,textarea:focus::-moz-placeholder{
    color:#c1c1c1;
    opacity:.9
}
input[type=email].-focused:-ms-input-placeholder,input[type=email]:focus:-ms-input-placeholder,input[type=password].-focused:-ms-input-placeholder,input[type=password]:focus:-ms-input-placeholder,input[type=search].-focused:-ms-input-placeholder,input[type=search]:focus:-ms-input-placeholder,input[type=text].-focused:-ms-input-placeholder,input[type=text]:focus:-ms-input-placeholder,select.-focused:-ms-input-placeholder,select:focus:-ms-input-placeholder,textarea.-focused:-ms-input-placeholder,textarea:focus:-ms-input-placeholder{
    color:#c1c1c1;
    opacity:.9
}
input[type=email].-focused:-moz-placeholder,input[type=email]:focus:-moz-placeholder,input[type=password].-focused:-moz-placeholder,input[type=password]:focus:-moz-placeholder,input[type=search].-focused:-moz-placeholder,input[type=search]:focus:-moz-placeholder,input[type=text].-focused:-moz-placeholder,input[type=text]:focus:-moz-placeholder,select.-focused:-moz-placeholder,select:focus:-moz-placeholder,textarea.-focused:-moz-placeholder,textarea:focus:-moz-placeholder{
    color:#c1c1c1;
    opacity:.9
}
input[type=email].error,input[type=password].error,input[type=search].error,input[type=text].error,select.error,textarea.error{
    border:1px solid red
}
select{
    background-color:#fff;
    padding:8px 35px 8px 8px;
    font-size:1em;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    background-image:url(../images/select-arrow-down.svg);
    background-repeat:no-repeat;
    background-position:right 12px center;
    border-radius:3px;
    text-decoration:none
}
select:focus{
    outline:0
}
select:hover{
    cursor:pointer
}
select:-moz-focusring{
    color:transparent
}
select::-ms-expand{
    display:none
}
.checks>.check,.radios>.check{
    margin-bottom:0
}
.checks label,.radios label{
    display:inline-block;
    padding-bottom:5px;
    margin-bottom:0;
    padding-left:30px;
    text-indent:-30px;
    width:auto
}
.checks input[type=checkbox]+label span,.checks input[type=radio]+label span,.radios input[type=checkbox]+label span,.radios input[type=radio]+label span{
    width:22px;
    height:20px;
    margin:-3px 8px 0 0
}
.checks label:hover,.radios label:hover{
    cursor:pointer
}
.checks input[type=checkbox],.checks input[type=radio],.radios input[type=checkbox],.radios input[type=radio]{
    display:none
}
.checks input[type=checkbox]+label span,.checks input[type=radio]+label span,.radios input[type=checkbox]+label span,.radios input[type=radio]+label span{
    display:inline-block;
    vertical-align:middle;
    position:relative;
    text-indent:0;
    cursor:pointer
}
.checks input[type=checkbox]+label span:before,.checks input[type=radio]+label span:before,.radios input[type=checkbox]+label span:before,.radios input[type=radio]+label span:before{
    display:block;
    position:relative;
    top:2px;
    left:2px;
    font-family:icomoon;
    font-size:16px;
    color:red
}
.checks input[type=checkbox]+label span:before,.radios input[type=checkbox]+label span:before{
    content:""
}
.checks input[type=checkbox]:checked+label span:before,.radios input[type=checkbox]:checked+label span:before{
    content:""
}
.checks input[type=radio]+label span:before,.programs-filter .filter-trigger::before,.radios input[type=radio]+label span:before{
    content:""
}
.checks input[type=radio]:checked+label span:before,.radios input[type=radio]:checked+label span:before{
    content:""
}
.print-header{
    display:none
}
@media print{
    *,:after,:before{
        color:#000!important;
        filter:grayscale(100%);
        box-shadow:none;
        text-shadow:none
    }
    .print-header{
        display:block;
        margin:0 0 20px;
        padding:20px;
        border-bottom:1px solid #dadada
    }
    .header-program-detail a.back-link,.header-program-detail::before,footer,header{
        display:none
    }
    .print-header img{
        width:200px
    }
    .program-content,.program-side-rail{
        width:100%!important
    }
    .page-wrapper{
        margin:0;
        padding:0
    }
    .header-program-detail{
        padding:14px 0!important
    }
    .header-program-detail span.type-label{
        padding-left:0
    }
    .program-content-wrapper{
        padding:14px 0!important
    }
    .program-content-wrapper .inner{
        display:block!important
    }
    .program-accordion,.program-content ul li::before,.program-tabs,.send-comments,.social-icons{
        display:none
    }
    .program-content ul{
        list-style:disc!important;
        padding:0 0 0 16px
    }
    .program-content ul li{
        padding:0
    }
    .program-side-rail{
        margin:0!important
    }
    .program-side-rail .rail-content{
        padding:20px 0!important
    }
    .program-side-rail a[href]:after{
        content:none!important
    }
    .modal-open .page-wrapper{
        display:none!important
    }
    .modal{
        position:static!important;
        display:block!important;
        padding-top:0!important
    }
    .modal .modal-inner{
        max-width:initial!important;
        width:100%;
        margin:0 auto;
        padding:20px
    }
    .modal .print-header{
        padding:0 0 20px!important
    }
    .modal .modal-header{
        padding:0!important;
        height:auto!important
    }
    .modal .modal-header h3{
        margin-bottom:20px!important
    }
    .modal .modal-header span{
        display:none!important
    }
    .modal .modal-content{
        padding:0!important
    }
    .modal .modal-content ol,.modal .modal-content p,.modal .modal-content ul{
        font-size:15px!important
    }
}
header{
    background:#eff7f8;
    position:relative
}
header .inner{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    padding-right:20px;
    margin:0 auto;
    height:70px
}
@media (min-width:1000px){
    header .inner{
        justify-content:space-between;
        height:96px;
        padding-left:320px
    }
}
@media (min-width:1300px){
    header .inner{
        padding-left:280px
    }
}
@media (min-width:1500px){
    header .inner{
        padding-left:160px
    }
}
@media (min-width:1700px){
    header .inner{
        padding-left:60px
    }
}
header .logo{
    position:absolute;
    top:0;
    left:0;
    width:242px;
    height:100px;
    z-index:10;
    background-image:url(../images/logo-angle.svg);
    background-repeat:no-repeat;
    background-position:left top;
    background-size:242px 96px;
    padding:18px 0 0 20px
}
@media (min-width:1000px){
    header .logo{
        width:338px;
        height:134px;
        background-size:335px 133px;
        padding:26px 0 0 34px
    }
}
header .logo img{
    width:165px
}
@media (min-width:1000px){
    header .logo img{
        width:212px
    }
}
header .main-nav-wrapper{
    display:flex;
    justify-content:flex-end;
    flex-wrap:wrap;
    width:100%
}
header .main-nav{
    display:none
}
@media (min-width:1000px){
    header .main-nav{
        display:flex;
        justify-content:flex-end;
        width:100%
    }
    header .main-nav>ul{
        margin:0;
        padding:0;
        display:flex;
        justify-content:space-between
    }
    header .main-nav>ul>li{
        margin:0;
        white-space:nowrap;
        position:relative;
        text-transform:uppercase;
        font-family:allerbold;
        font-size:18px;
        font-size:1.125rem;
        transition:all .3s ease;
        text-align:center
    }
    header .main-nav>ul>li.active{
        overflow:hidden
    }
    header .main-nav>ul>li.active::before{
        content:"";
        position:absolute;
        bottom:-3px;
        left:50%;
        margin-left:-12px;
        width:0;
        height:0;
        border-style:solid;
        border-width:0 12px 10px;
        border-color:transparent transparent #4C48B7;
        opacity:1;
        transition:.3s ease
    }
    header .main-nav>ul>li a{
        padding:15px 18px;
        color:#3d3e3b
    }
    header .main-nav>ul>li a:hover{
        text-decoration:none;
        box-shadow:inset 0 -5px 0 0 #00b9ca
    }
    header .main-nav>ul>li:hover.active::before{
        opacity:0;
        transition:.3s ease
    }
}
header .priority-nav .priority-nav__wrapper{
    display:none
}
header .priority-nav.priority-nav-has-dropdown .priority-nav__wrapper{
    display:block
}
header .nav__dropdown-toggle{
    position:relative;
    padding:15px 18px;
    border:0;
    color:#3d3e3b;
    border-radius:0;
    font-size:18px;
    font-size:1.125rem
}
header .nav__dropdown-toggle::after{
    position:absolute;
    top:20px;
    right:0;
    content:"";
    font-family:icomoon;
    font-size:9px;
    font-size:.5625rem;
    transform:rotate(90deg)
}
header .nav__dropdown-toggle:focus,header .nav__dropdown-toggle:hover{
    text-decoration:none;
    box-shadow:inset 0 -5px 0 0 #00b9ca;
    background:0 0
}
header .priority-nav__dropdown{
    opacity:0;
    visibility:hidden;
    border-radius:4px;
    position:absolute;
    z-index:60;
    top:100%;
    right:0;
    width:186px;
    padding:0;
    box-shadow:0 10px 5px 1px rgba(0,0,0,.11);
    transition:.3s ease
}
header .priority-nav__dropdown.show{
    opacity:1;
    visibility:visible
}
header .priority-nav__dropdown::before{
    content:"";
    position:absolute;
    top:-8px;
    right:10px;
    width:0;
    height:0;
    border-style:solid;
    border-width:0 9px 8px;
    border-color:transparent transparent #fff;
    z-index:60
}
header .priority-nav__dropdown>li{
    margin:0;
    padding:2px;
    background:#fff;
    display:block;
    text-transform:none;
    font-family:allerregular;
    font-size:15px;
    font-size:.9375rem;
    text-align:left;
    border-top:1px solid #dadada;
    transition:.3s ease
}
header .priority-nav__dropdown>li:first-child{
    border-top-left-radius:4px;
    border-top-right-radius:4px;
    border:0
}
header .priority-nav__dropdown>li:last-child{
    border-bottom-left-radius:4px;
    border-bottom-right-radius:4px
}
header .priority-nav__dropdown>li a{
    padding:10px 14px;
    display:block;
    margin:5px;
    border-radius:4px;
    transition:.3s ease;
    color:#3d3e3b
}
header .priority-nav__dropdown>li:hover{
    transition:.3s ease
}
header .priority-nav__dropdown>li:hover a{
    transition:.3s ease;
    text-decoration:none;
    background:#cde7ea
}
header .utility{
    display:none
}
@media (min-width:1000px){
    header .utility{
        display:block;
        position:relative;
        padding-top:12px;
        margin-bottom:12px
    }
    header .utility ul{
        list-style:none;
        display:flex;
        justify-content:flex-end;
        align-items:center;
        font-family:allerregular;
        font-size:13px;
        font-size:.8125rem;
        margin:0;
        padding:0
    }
    header .utility ul li{
        margin-left:30px
    }
    header .utility ul li:first-child{
        margin-left:0
    }
    header .utility ul li a{
        color:#777
    }
    header .utility ul li.-search a.site-header-main-nav-search-trigger{
        position:relative;
        height:21px;
        color:#fff;
        line-height:21px;
        padding:0 37px 0 8px;
        border-radius:4px;
        border:0;
        background:#31a429;
        margin:0;
        z-index:1
    }
    header .utility ul li.-search a.site-header-main-nav-search-trigger::after{
        position:absolute;
        top:0;
        right:0;
        bottom:0;
        width:30px;
        display:flex;
        justify-content:center;
        align-items:center;
        font-family:icomoon;
        content:"";
        color:#fff;
        border-top-right-radius:4px;
        border-bottom-right-radius:4px;
        background:#2b9024;
        font-size:13px;
        font-size:.8125rem;
        z-index:1
    }
    header .utility ul li.-search a.site-header-main-nav-search-trigger:focus,header .utility ul li.-search a.site-header-main-nav-search-trigger:hover{
        color:#fff;
        text-decoration:none;
        background:#2b9024
    }
    header .utility .suggestions{
        margin-top:3px
    }
}
header .utility .js-search-box{
    position:absolute;
    top:10px;
    right:0;
    width:calc(100% + 100px);
    background:#fff;
    border:1px solid #cdcdcd;
    border-radius:4px;
    transition:opacity .3s ease-in-out,visibility .3s ease-in-out,z-index .3s ease-in-out;
    opacity:0;
    z-index:9;
    visibility:hidden
}
header .utility .js-search-box.-is-open{
    opacity:1;
    visibility:visible;
    z-index:10
}
header .utility .js-search-box .search-field{
    border:0
}
header .utility .js-search-box .search-field input[type=text]{
    padding:4px 35px 4px 30px;
    border:0;
    margin:0;
    background-size:16px 16px;
    background-position:4px 4px
}
header .utility .js-search-box .search-field input[type=text]::placeholder{
    font-style:italic
}
header .utility .js-search-box .search-submit{
    position:absolute;
    top:2px;
    right:36px;
    height:21px;
    line-height:21px;
    padding:0 8px;
    border-radius:4px;
    border:0;
    background:#31a429;
    font-size:11px;
    font-size:.6875rem;
    letter-spacing:1px;
    margin:0
}
header .utility .js-search-box .search-submit:focus,header .utility .js-search-box .search-submit:hover{
    color:#fff;
    text-decoration:none;
    background:#2b9024
}
header .utility .js-search-box .js-search-close{
    position:absolute;
    display:flex;
    justify-content:center;
    align-items:center;
    top:-1px;
    right:-1px;
    width:35px;
    height:27px;
    padding:0;
    background:#a7a7a7;
    font-size:14px;
    font-size:.875rem;
    border:0;
    border-top-right-radius:4px;
    border-bottom-right-radius:4px;
    z-index:20
}
header .utility .js-search-box .js-search-close::before{
    font-family:icomoon;
    content:"";
    color:#fff
}
header .utility .js-search-box .js-search-close:focus,header .utility .js-search-box .js-search-close:hover{
    text-decoration:none
}
footer{
    background:#303e50;
    color:#fff;
    padding:20px 0;
    font-family:allerbold
}
@media (min-width:1000px){
    footer{
        padding:60px 0
    }
}
@media (min-width:1280px){
    footer{
        padding:60px 0
    }
}
footer .inner{
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    padding:0 20px
}
@media (min-width:1268px){
    footer .inner{
        padding:0
    }
}
footer a{
    color:#fff
}
footer ul{
    margin:0;
    padding:0;
    list-style:none
}
footer p{
    margin-bottom:14px
}
footer .social-icons{
    padding:0 0 13px;
    margin:0 0 20px;
    border-bottom:1px solid #7c7b7b
}
footer .social-icons [class*=" icon-"],footer .social-icons [class^=icon-]{
    margin-left:20px;
    font-size:0
}
footer .social-icons [class*=" icon-"]:first-child,footer .social-icons [class^=icon-]:first-child{
    margin:0
}
footer .social-icons [class*=" icon-"]:hover,footer .social-icons [class^=icon-]:hover{
    text-decoration:none;
    opacity:.5
}
footer .social-icons [class*=" icon-"]::before,footer .social-icons [class^=icon-]::before{
    font-size:18px;
    font-size:1.125rem
}
footer .footer-left{
    font-size:13px;
    font-size:.8125rem
}
footer .footer-left .footer-main-nav{
    list-style:none;
    font-size:13px;
    font-size:.8125rem;
    text-transform:uppercase;
    margin:0 0 40px
}
footer .footer-left .footer-main-nav li{
    margin:0 0 20px
}
footer .footer-left .financial-support{
    font-size:13px;
    font-size:.8125rem
}
footer .footer-left .copyright{
    font-size:13px;
    font-size:.8125rem;
    font-family:allerregular
}
@media (min-width:1100px){
    footer .footer-bottom{
        display:flex;
        justify-content:space-between
    }
    footer .footer-left{
        width:30%
    }
    footer .footer-left .copyright,footer .footer-left .financial-support{
        padding-right:34px
    }
    footer .footer-right{
        width:70%;
        padding-left:34px
    }
}
footer .footer-left .footer-utility-nav{
    font-family:allerregular;
    margin-bottom:30px
}
footer .footer-left .footer-utility-nav li{
    display:inline-block;
    margin-left:20px
}
footer .footer-left .footer-utility-nav li:first-child{
    margin:0
}
footer .footer-right{
    font-size:13px;
    font-size:.8125rem
}
footer .footer-right .partner-title{
    font-size:18px;
    font-size:1.125rem;
    text-transform:uppercase;
    padding:0 0 10px;
    margin:0 0 20px;
    border-bottom:1px solid #7c7b7b
}
footer .footer-right ul{
    list-style:none
}
footer .footer-right ul li{
    margin:0 0 18px
}
.program-content-wrapper{
    padding-bottom:40px
}
@media (min-width:1000px){
    .program-content-wrapper{
        padding-bottom:60px
    }
    .program-content-wrapper .inner{
        display:flex;
        justify-content:space-between
    }
}
.program-content-wrapper .inner{
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    padding:0 20px
}
@media (min-width:1268px){
    .program-content-wrapper .inner{
        padding:0
    }
}
@media (min-width:1000px){
    .program-content-wrapper .program-content{
        width:70%;
        margin-right:34px
    }
    .program-content-wrapper .program-side-rail{
        width:28%;
        position:relative;
        margin-top:-200px
    }
}
@media (min-width:1100px){
    .program-content-wrapper .program-content{
        margin-right:60px
    }
}
.standard-content-wrapper{
    position:relative;
    max-width:1200px;
    background:#fff;
    padding:20px;
    margin:-100px 20px 0
}
@media (min-width:1268px){
    .standard-content-wrapper{
        padding:0
    }
}
@media (min-width:700px){
    footer .footer-right ul{
        column-count:2;
        column-gap:40px
    }
    .standard-content-wrapper{
        padding:34px
    }
}
@media (min-width:1000px){
    .standard-content-wrapper{
        padding:60px;
        margin:-250px 34px 0
    }
}
@media (min-width:1268px){
    .standard-content-wrapper{
        margin:-250px auto 0
    }
}
.standard-content-wrapper .page-title{
    text-align:center
}
.standard-content-wrapper .components a,.standard-content-wrapper .standard-content-body a{
    display:inline
}
.standard-content-wrapper .components p:last-child,.standard-content-wrapper .standard-content-body p:last-child{
    margin:0 0 34px
}
@media (min-width:1100px){
    .standard-content-wrapper{
        padding:70px 120px
    }
    .standard-content-wrapper .standard-content-body p{
        font-size:18px;
        font-size:1.125rem
    }
    .standard-content-wrapper .components p,.standard-content-wrapper .components p:last-child,.standard-content-wrapper .standard-content-body p,.standard-content-wrapper .standard-content-body p:last-child{
        margin:0 0 34px
    }
}
.standard-content-wrapper .component{
    margin:20px 0
}
.image-hero{
    position:relative;
    height:320px;
    display:flex;
    align-items:center;
    padding:20px 0;
    background-image:url(../images/fpo/home-hero-6dac972b07fe4239ca22b2723b6b470d.jpg);
    background-size:cover;
    background-position:center
}
.image-hero:before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    background:#000;
    background:linear-gradient(to right,#000 0,transparent 100%);
    filter:progid:DXImageTransform.Microsoft.gradient( startColorstr="#000000", endColorstr="transparent", GradientType=0 )
}
.image-hero .inner{
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    padding:0 20px;
    width:100%
}
@media (min-width:1268px){
    .image-hero .inner{
        padding:0
    }
}
.image-hero-content{
    color:#fff;
    position:relative;
    z-index:2;
    max-width:510px;
    width:90%
}
@media (min-width:400px){
    .image-hero-content{
        width:74%
    }
}
@media (min-width:500px){
    .image-hero-content{
        width:58%
    }
}
@media (min-width:600px){
    .image-hero-content{
        width:45%
    }
}
.image-hero-content h1{
    color:#fff;
    font-size:26px;
    font-size:1.625rem;
    font-weight:700;
    text-shadow:0 2px 4px rgba(0,0,0,.9)
}
@media (min-width:700px){
    .image-hero{
        height:390px
    }
    .image-hero-content h1{
        font-size:30px;
        font-size:1.875rem
    }
}
@media (min-width:900px){
    .image-hero-content h1{
        font-size:36px;
        font-size:2.25rem
    }
}
@media (min-width:1000px){
    .image-hero{
        height:495px
    }
    .image-hero:before{
        background:linear-gradient(to right,#000 0,transparent 70%)
    }
    .image-hero-content{
        width:55%
    }
    .image-hero-content h1{
        font-size:48px;
        font-size:3rem;
        line-height:54px;
        line-height:3.375rem
    }
}
.image-hero-content h1 span{
    font-family:allerregular;
    font-weight:200
}
.mobile-menu .utility ul li a,.mobile-menu ul li{
    font-family:allerbold;
    color:#fff
}
.image-hero-content p{
    font-size:12px;
    font-size:.75rem;
    text-shadow:0 2px 4px #000
}
@media (min-width:900px){
    .image-hero-content p{
        font-size:16px;
        font-size:1rem
    }
}
.mobile-push{
    position:relative;
    right:0;
    z-index:100;
    transition:right .3s
}
.mobile-menu-trigger{
    display:inline-block;
    width:26px;
    height:20px;
    position:relative
}
.mobile-menu-trigger span,.mobile-menu-trigger::after,.mobile-menu-trigger::before{
    position:absolute;
    width:26px;
    height:4px;
    background:#3d3e3b;
    border-radius:1px;
    content:""
}
@media (min-width:1000px){
    .mobile-menu-trigger{
        display:none
    }
}
.mobile-menu-trigger span{
    display:inline-block;
    top:8px
}
.mobile-menu-trigger::before{
    top:0
}
.mobile-menu-trigger::after{
    bottom:0
}
.mobile-menu{
    background-color:#4b48b7;
    width:280px;
    position:fixed;
    right:-280px;
    top:0;
    bottom:0;
    transition:right .3s;
    z-index:9999999;
    overflow-y:auto
}
.mobile-menu .search{
    /* height:70px; */
    padding:10px 20px;
    position:relative;
    background:#3c3a92;
    display:flex;
    align-items:center
}
.mobile-menu .search .autocomplete-search,.mobile-menu .search .js-search-box{
    width:100%
}
.mobile-menu .search .js-search-box{
    /* margin-top:20px */
}
.mobile-menu .search input{
    margin-bottom:0;
    padding-left:40px;
    border:0;
    background-size:18px 18px;
    background-position:10px 7px;
    font-size:13px;
    font-size:.8125rem
}
.mobile-menu .search .site-header-main-nav-search-trigger{
    display:none
}
.mobile-menu .search button{
    visibility:hidden
}
.mobile-menu .search .result-list li{
    border-bottom:1px solid #d2dbdc
}
.mobile-menu .search .result-list li:last-child{
    border:0
}
.mobile-menu ul{
    margin:0;
    padding:0;
    list-style:none
}
.mobile-menu ul li{
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-bottom:1px solid rgba(255,255,255,.4);
    position:relative
}
.mobile-menu ul li a{
    color:#fff;
    text-transform:uppercase;
    font-size:18px;
    font-size:1.125rem;
    padding:20px;
    display:block;
    flex:1;
    transition:background-color .3s ease
}
.mobile-menu ul li a:hover{
    text-decoration:none
}
.mobile-menu ul li i.icon-caret{
    padding:0 20px;
    cursor:pointer;
    flex:0
}
.mobile-menu ul li.back{
    height:70px;
    padding:0 20px 0 0;
    justify-content:flex-start;
    text-transform:uppercase;
    border:0;
    background:#3c3a92
}
.mobile-menu ul li.back i.icon-caret{
    height:70px;
    background:#353280;
    margin-right:20px;
    position:relative;
    transform:rotate(180deg);
    display:flex;
    align-items:center;
    padding:0 24px
}
.mobile-menu ul.panel-1 li.main{
    text-transform:uppercase
}
.mobile-menu .utility ul li,.mobile-menu .utility ul li:last-child{
    border:0
}
.mobile-menu .utility ul li .js-search-box,.mobile-menu .utility ul li .search{
    display:none
}
.mobile-menu .utility ul li a{
    text-transform:none;
    font-weight:400;
    padding:14px 20px;
    font-size:14px;
    font-size:.875rem
}
.mobile-menu .utility ul li a:hover{
    color:#fff
}
@media (max-width:999px){
    .mobile-open{
        height:100vh;
        overflow:hidden
    }
    .mobile-open .mobile-push{
        right:280px
    }
    .mobile-open .mobile-menu{
        right:0;
        position:absolute
    }
}
.subjects-panel{
    padding:40px 0;
    margin-top:-60px
}
@media (min-width:700px){
    .subjects-panel{
        margin-top:-80px
    }
}
@media (min-width:900px){
    .subjects-panel{
        padding:90px 0;
        margin-top:-120px
    }
}
.subjects-panel .inner{
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    padding:0 20px
}
@media (min-width:1268px){
    .subjects-panel .inner{
        padding:0
    }
}
@media (min-width:600px){
    .subjects-panel .inner{
        display:flex;
        justify-content:space-between;
        flex-wrap:wrap
    }
    .subjects-panel .subject-box{
        width:48%
    }
}
.subjects-panel .subject-box{
    position:relative;
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    padding:20px;
    background-color:#fff;
    border-radius:10px;
    overflow:hidden;
    margin-bottom:20px;
    box-shadow:0 2px 21px 0 rgba(0,0,0,.43)
}
@media (min-width:900px){
    .subjects-panel .subject-box{
        width:31%;
        margin-bottom:34px
    }
}
@media (min-width:1000px){
    .subjects-panel{
        margin-top:-150px
    }
    .subjects-panel .subject-box{
        padding:30px 24px 34px 20px
    }
}
.subjects-panel .subject-box::before{
    position:absolute;
    content:"";
    right:-8px;
    bottom:-84px;
    left:-50%;
    width:155%;
    height:143px;
    border-radius:55%;
    background-color:#f1f1f1;
    transform:rotate(-1deg);
    transition:.3s ease
}
.subjects-panel .subject-box::after{
    position:absolute;
    content:"";
    top:0;
    right:0;
    bottom:0;
    left:0;
    box-shadow:inset 0 -3px 0 0 #fff;
    border-radius:10px
}
.subjects-panel .subject-box-icon{
    position:relative;
    z-index:2;
    width:97px;
    margin-top:-14px;
    transition:.3s ease
}
.subjects-panel .subject-box-title{
    position:relative;
    z-index:2;
    font-size:17px;
    font-size:1.0625rem
}
@media (min-width:1000px){
    .subjects-panel .subject-box-title{
        font-size:19px;
        font-size:1.1875rem
    }
}
@media (min-width:1200px){
    .subjects-panel .subject-box-title{
        font-size:24px;
        font-size:1.5rem
    }
}
.subjects-panel .subject-box-arrow{
    position:absolute;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    right:24px;
    bottom:20px;
    width:28px;
    height:28px;
    background:#00b9ca;
    border-radius:50%
}
.subjects-panel .subject-box-arrow::after{
    content:"";
    font-family:icomoon;
    position:absolute;
    transition:all .3s ease;
    color:#fff;
    font-size:10px;
    font-size:.625rem
}
.subjects-panel .subject-box:focus,.subjects-panel .subject-box:hover{
    box-shadow:0 2px 4px 0 rgba(0,0,0,.33);
    text-decoration:none
}
.subjects-panel .subject-box:focus::before,.subjects-panel .subject-box:hover::before{
    left:-65%;
    transform:rotate(0)
}
.subjects-panel .subject-box:focus .subject-box-icon,.subjects-panel .subject-box:hover .subject-box-icon{
    transform:scale(1.1,1.1)
}
.subjects-panel .subject-box:focus .subject-box-arrow,.subjects-panel .subject-box:hover .subject-box-arrow{
    background:#31a429
}
.subjects-panel .studies-panel{
    width:100%;
    text-align:center;
    padding-top:20px
}
@media (min-width:700px){
    .subjects-panel .studies-panel{
        display:flex;
        padding-bottom:30px
    }
}
.subjects-panel .studies-panel a,.subjects-panel .studies-panel h3,.subjects-panel .studies-panel p{
    color:#fff
}
.subjects-panel .studies-panel h3{
    width:100%;
    margin-bottom:0
}
@media (min-width:1000px){
    .subjects-panel .studies-panel{
        padding-top:36px;
        padding-bottom:0
    }
    .subjects-panel .studies-panel h3{
        font-size:22px;
        font-size:1.375rem
    }
}
.subjects-panel .studies-panel p{
    width:100%
}
.subjects-panel .studies-panel a{
    text-decoration:underline
}
.subjects-panel .studies-panel a:focus,.subjects-panel .studies-panel a:hover{
    text-decoration:none
}
.subjects-panel .studies-panel-left,.subjects-panel .studies-panel-right{
    padding:40px
}
.subjects-panel .studies-panel-left{
    background-color:#0a97a4;
    border-top-left-radius:40px
}
.subjects-panel .studies-panel-right{
    background-color:#00b9ca;
    border-bottom-right-radius:40px
}
@media (min-width:700px){
    .subjects-panel .studies-panel-left,.subjects-panel .studies-panel-right{
        display:flex;
        flex-direction:column;
        flex-wrap:wrap;
        justify-content:center;
        align-items:center;
        width:50%;
        padding:40px 70px;
        flex:1 0 auto
    }
    .subjects-panel .studies-panel-left{
        margin-right:-15px
    }
    .subjects-panel .studies-panel-right{
        margin-top:30px;
        margin-left:-15px;
        margin-bottom:-30px
    }
}
.angle-split-panel{
    position:relative;
    overflow:hidden;
    color:#fff;
    background:#303e50
}
@media (min-width:900px){
    .angle-split-panel{
        padding:40px 0
    }
    .angle-split-panel .inner{
        display:flex;
        justify-content:space-between
    }
}
.angle-split-panel .inner{
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    padding:0 20px
}
@media (min-width:1268px){
    .angle-split-panel .inner{
        padding:0
    }
}
.angle-split-panel h1,.angle-split-panel h2,.angle-split-panel h3{
    color:#fff;
    font-size:30px;
    font-size:1.875rem
}
.angle-split-panel .left-background,.angle-split-panel .right-background{
    position:absolute;
    top:0;
    left:0;
    bottom:0;
    z-index:1;
    height:50%;
    width:100%;
    overflow:hidden
}
@media (min-width:900px){
    .angle-split-panel .left-background,.angle-split-panel .right-background{
        height:100%;
        width:58%
    }
}
.angle-split-panel .left-background img,.angle-split-panel .right-background img{
    object-fit:cover;
    object-position:50% 0;
    max-width:none;
    width:100%;
    height:470px;
    opacity:.1
}
.angle-split-panel .left-background{
    background:#4b48b7
}
@media (min-width:1100px){
    .angle-split-panel h1,.angle-split-panel h2,.angle-split-panel h3{
        font-size:38px;
        font-size:2.375rem
    }
    .angle-split-panel .left-background img,.angle-split-panel .right-background img{
        transform:scale(1.15) skewX(20deg)
    }
    .angle-split-panel .left-background{
        left:-7%;
        transform:skewX(-20deg)
    }
    .angle-split-panel .right-background{
        right:-7%;
        transform:skewX(-20deg)
    }
}
.angle-split-panel .right-background{
    background:#31a429;
    top:50%
}
.angle-split-panel .left-content,.angle-split-panel .right-content{
    position:relative;
    z-index:2;
    padding:40px 0
}
@media (min-width:900px){
    .angle-split-panel .right-background{
        top:0;
        left:50%
    }
    .angle-split-panel .left-content,.angle-split-panel .right-content{
        width:50%
    }
    .angle-split-panel .left-content{
        padding-right:20px
    }
    .angle-split-panel .right-content{
        padding-left:20px
    }
    .header-programs{
        display:flex;
        align-items:center;
        height:250px
    }
}
@media (min-width:1100px){
    .angle-split-panel .left-content{
        padding-right:100px
    }
    .angle-split-panel .right-content{
        padding-left:100px
    }
}
.header-programs{
    position:relative;
    padding:40px 20px;
    background:#4C48B7;
    background-size:cover;
    z-index:1
}
.header-programs .inner{
    position:relative;
    max-width:1160px;
    width:100%;
    z-index:3
}
@media (min-width:500px){
    .header-programs .inner{
        display:flex;
        align-items:flex-start
    }
}
.header-programs-icon{
    background:rgba(255,255,255,.2);
    width:99px;
    height:99px;
    border-radius:50%;
    padding:15px;
    margin-bottom:20px;
    flex:none
}
@media (min-width:500px){
    .header-programs-icon{
        margin-bottom:0;
        margin-right:20px
    }
    .header-program-detail .inner{
        display:flex;
        flex-wrap:wrap
    }
}
.header-programs h1,.header-programs p{
    color:#fff
}
@media (min-width:900px){
    .header-programs-icon{
        width:150px;
        height:150px;
        padding:30px;
        margin-right:40px
    }
    .header-programs p{
        font-size:18px;
        font-size:1.125rem
    }
}
.header-programs input{
    width:100%;
    max-width:550px;
    margin:0 auto;
    border:0;
    background-image:url(../images/icons/search.svg);
    background-repeat:no-repeat;
    background-size:20px;
    background-position:14px 13px;
    padding:12px 12px 12px 50px
}
@media (min-width:1100px){
    .header-programs p{
        font-size:20px;
        font-size:1.25rem
    }
    .header-programs input{
        font-size:18px;
        font-size:1.125rem
    }
}
.header-program-detail{
    position:relative;
    background:#fff;
    background-size:cover;
    padding:40px 0
}
.header-program-detail .inner{
    position:relative;
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    padding:0 20px;
    z-index:2
}
@media (min-width:1268px){
    .header-program-detail .inner{
        padding:0
    }
}
.header-program-detail .back-link{
    position:relative;
    color:#3d3e3b;
    font-family:allerbold;
    text-transform:uppercase;
    font-size:14px;
    font-size:.875rem;
    line-height:14px;
    line-height:.875rem;
    padding:0 0 0 16px;
    margin:0 0 60px;
    display:block;
    width:100%
}
.header-program-detail .back-link::before{
    position:absolute;
    left:0;
    top:-1px;
    content:"«"
}
.header-program-detail-icon{
    background:#f1f1f1;
    width:99px;
    height:99px;
    border-radius:50%;
    padding:15px;
    margin-bottom:20px;
    flex:none
}
@media (min-width:500px){
    .header-program-detail-icon{
        margin-bottom:0;
        margin-right:20px
    }
}
.header-program-detail-content{
    flex:1 1 auto;
    width:calc(100% - 119px)
}
.header-program-detail .label-row{
    display:flex;
    align-items:center;
    margin:0 0 20px;
    font-family:allerregular;
    text-transform:uppercase;
    font-size:14px;
    font-size:.875rem
}
.header-program-detail .type-label{
    position:relative;
    padding:4px 8px 2px;
    background:#4C48B7;
    color:#fff;
    border-top-left-radius:4px;
    border-top-right-radius:4px;
    border-bottom-right-radius:4px;
    margin:0 22px 0 0
}
.header-program-detail .type-label::before{
    content:"";
    position:absolute;
    left:0;
    bottom:-7px;
    width:0;
    height:0;
    border-style:solid;
    border-width:7px 9px 0 0;
    border-color:#4C48B7 transparent transparent
}
.header-program-detail .grade-label{
    text-transform:uppercase
}
.header-program-detail .grade-levels{
    border-radius:1000px;
    color:#fff;
    background:#4C48B7;
    padding:4px 10px 1px;
    margin-left:10px;
    margin-top:-4px
}
.header-program-detail h1{
    margin:0
}
.header-standard-content{
    position:relative;
    min-height:200px;
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center center;
    background-color:#4C48B7
}
.header-standard-content:before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    background:rgba(76,72,183,.8);
    background:linear-gradient(to right,rgba(76,72,183,.8) 0,rgba(75,72,183,.8) 100%);
    filter:progid:DXImageTransform.Microsoft.gradient( startColorstr="rgba(76, 72, 183, 0.8)", endColorstr="rgba(75, 72, 183, 0.8)", GradientType=0 )
}
@media (min-width:1000px){
    .header-program-detail h1{
        width:68%
    }
    .header-standard-content:before{
        background:linear-gradient(to right,rgba(76,72,183,.8) 0,rgba(75,72,183,.8) 70%)
    }
    .header-standard-content{
        min-height:410px
    }
}
.evidence-chart{
    display:flex;
    flex-wrap:wrap;
    border-bottom:1px solid #dadada;
    border-right:1px solid #dadada;
    margin:0 0 40px
}

.evidence-chart .chart-column{
    width:100%;
    padding:10px 20px;
    text-transform:uppercase;
    font-size:28px;
    font-size:1.75rem;
    font-family:allerbold;
    border-top:1px solid #dadada;
    border-left:1px solid #dadada
}
@media (min-width:600px){
    .evidence-chart .chart-column{
        width:50%;
        padding:20px
    }
}
@media (min-width:900px){
    .evidence-chart{
        border-top:1px solid #dadada;
        border-right:0
    }
    .evidence-chart .chart-column{
        padding:20px 30px;
        width:auto;
        border-top:0
    }
    .evidence-chart .chart-column:first-child{
        width: 38%;
        padding-left:0;
        border:0
    }
}
@media (min-width:1000px){
    .evidence-chart .chart-column{
        padding:10px 20px
    }
}
@media (min-width:1100px){
    .evidence-chart .chart-column{
        padding:20px 24px
    }
}
@media (min-width:1200px){
    .evidence-chart .chart-column{
        padding:20px 30px
    }
}
.evidence-chart .chart-title{
    color:#31a429;
    font-family:Merriweather,serif;
    font-weight:600;
    font-size:13px;
    font-size:.8125rem;
    text-transform:capitalize;
    margin:0 0 10px
}
.evidence-chart .essa-rating{
    position:relative;
    padding-left:60px
}
.evidence-chart .essa-rating::before{
    content:"";
    position:absolute;
    left:0;
    font-family:icomoon;
    font-size:26px;
    font-size:1.625rem;
    color:#31a429
}
.evidence-chart .essa-rating .badge{
    position:relative;
    color:#00b9ca;
    font-size:21px;
    font-size:1.3125rem;
    margin:0 0 0 5px
}
.evidence-chart.-moderate .essa-rating::after,.evidence-chart.-promising .essa-rating::after{
    position:absolute;
    top:0;
    height:32px;
    background:#fff;
    opacity:.7;
    content:""
}
.evidence-chart.-moderate .chart-title,.evidence-chart.-moderate .essa-rating::before{
    color:#ff923a
}
.evidence-chart.-moderate .essa-rating::after{
    left:32px;
    width:16px
}
.evidence-chart.-promising .chart-title,.evidence-chart.-promising .essa-rating::before{
    color:#f0256b
}
.evidence-chart.-promising .essa-rating::after{
    left:14px;
    width:32px
}
.image-chart{
    border-top:1px solid #dadada;
    margin:0 0 40px
}
.image-chart img{
    margin-bottom:20px
}
@media (min-width:900px){
    .image-chart img{
        margin-bottom:30px
    }
}
.image-chart-legend{
    display:flex;
    background:#f1f1f1;
    padding:20px
}
.image-chart-legend-level{
    display:flex;
    align-items:center;
    font-family:allerbold;
    font-size:14px;
    font-size:.875rem;
    margin-right:20px
}
.image-chart-legend-level::before{
    content:"";
    width:10px;
    height:10px;
    margin-right:6px
}
.image-chart-legend-level.-strong::before{
    background:#31a429
}
.image-chart-legend-level.-moderate::before{
    background:#ff923a
}
.image-chart-legend-level.-promising::before{
    background:#f0256b
}
.email-signup{
    position:relative;
    background:#eff7f8;
    padding:20px;
    margin:0 0 40px
}
@media (min-width:1100px){
    .email-signup{
        padding:34px;
        margin:0 0 60px
    }
}
.email-signup::before{
    content:"";
    position:absolute;
    left:0;
    bottom:-12px;
    width:0;
    height:0;
    border-style:solid;
    border-width:12px 24px 0 0;
    border-color:#eff7f8 transparent transparent
}
.email-signup .overlay{
    position:absolute;
    top:100%;
    left:100%;
    right:100%;
    bottom:100%;
    opacity:0;
    border-radius:5px;
    z-index:-1;
    transition:all .3s ease;
    background-color:rgba(75,72,183,.9)
}
.email-signup .overlay.-processing{
    z-index:5;
    opacity:1;
    top:10px;
    left:10px;
    right:10px;
    bottom:10px
}
.email-signup .overlay.-processing .status{
    text-align:center;
    position:absolute;
    top:50%;
    left:0;
    right:0;
    padding:20px;
    transform:translateY(-50%)
}
.email-signup .overlay.-processing .status:before{
    content:"";
    position:absolute;
    top:70%;
    left:0;
    width:100%;
    height:14px;
    background:url(../images/dots.svg) center center no-repeat;
    background-size:contain
}
.email-signup .overlay.-error{
    background-color:rgba(240,37,107,.9)
}
.email-signup .overlay.-error .status:before{
    background:0 0
}
.email-signup .overlay.-success{
    background-color:rgba(49,164,41,.9)
}
.email-signup .overlay.-success .status:before{
    background:0 0
}
.email-signup .overlay .status{
    opacity:0
}
.email-signup .email-title{
    position:relative;
    font-family:allerbold;
    font-size:18px;
    font-size:1.125rem;
    margin:0 0 14px;
    padding-left:40px;
    color:#303e50
}
@media (min-width:1200px){
    .email-signup .email-title{
        font-size:21px;
        font-size:1.3125rem
    }
}
.email-signup .email-title::before{
    content:"";
    position:absolute;
    top:1px;
    left:0;
    font-family:icomoon;
    font-size:15px;
    font-size:.9375rem
}
@media (min-width:1200px){
    .email-signup .email-title::before{
        top:4px
    }
}
.email-signup .email-signup-form{
    position:relative
}
@media (min-width:1100px){
    .email-signup .email-title{
        margin:0
    }
    .email-signup .email-signup-form{
        width:50%
    }
}
.email-signup .email-signup-form .email-field{
    background:#fff;
    margin:0
}
.email-signup .email-signup-form button{
    position:absolute;
    top:0;
    bottom:0;
    right:0;
    background:#31a429;
    border:0;
    border-radius:0 4px 4px 0;
    font-family:allerregular;
    padding:0 1.7em;
    font-size:18px;
    font-size:1.125rem
}
.email-signup .email-signup-form button:hover{
    color:#fff;
    background:#2b9024
}
.programs-filter{
    position:relative;
    overflow:hidden
}
.programs-filter .filter-trigger{
    position:fixed;
    left:280px;
    top:0;
    width:40px;
    height:40px;
    padding:20px 20px 0 20px;
    color:#fff;
    background:#232422;
    margin-bottom:20px;
    font-family:allerregular;
    white-space:nowrap;
    text-decoration:none;
    transition:.3s ease;
    opacity:.8;
    z-index:10
}
@media (min-width:700px){
    .programs-filter .filter-trigger{
        width:60px;
        height:60px
    }
    .programs-filter .filter-trigger.-filter-open{
        font-size:18px;
        font-size:1.125rem;
        width:280px;
        padding-left:60px
    }
    .programs-filter .filter-trigger.-filter-open:hover{
        background:#232422
    }
}
.programs-filter .filter-trigger span{
    opacity:0;
    text-transform:uppercase;
    display:inline-block
}
.programs-filter .filter-trigger.-filter-open{
    position:static;
    width:280px;
    padding-left:60px;
    transition:.3s ease;
    opacity:1
}
.programs-filter .filter-trigger.-filter-open span{
    opacity:1
}
.programs-filter .filter-trigger::before{
    font-family:icomoon;
    position:absolute;
    top:7px;
    left:9px;
    font-size:20px;
    font-size:1.25rem
}
@media (min-width:700px){
    .programs-filter .filter-trigger::before{
        top:15px;
        left:19px
    }
}
.programs-filter .filter-bottom{
    position:relative;
    width:calc(100vw + 280px);
    transform:translateX(-280px);
    transition:.3s ease;
    display:flex;
    justify-content:space-between
}
.programs-filter .filter-bottom.-filter-open{
    transform:translateX(0)
}
@media (min-width:900px){
    .programs-filter .filter-bottom.-filter-open{
        width:100%
    }
}
.programs-filter .filter-side-bar{
    width:280px;
    flex-shrink:0;
    overflow:hidden;
    background:#fff;
    transition:.3s ease;
    border-bottom:1px solid #dadada
}
.programs-filter .filter-side-bar.-filter-open{
    height:100%
}
.programs-filter .filter-side-bar ul{
    margin:0;
    padding:0;
    list-style:none;
    visibility:hidden;
    height:0;
    overflow:hidden;
    transition:.3s ease
}
.programs-filter .filter-side-bar ul.-is-open,.programs-filter .filter-side-bar ul.-is-open ul{
    visibility:visible;
    height:auto;
    overflow:visible;
    padding-bottom:20px
}
.programs-filter .filter-side-bar .filter-row{
    padding:0 20px
}
.programs-filter .filter-side-bar .filter-row:first-child{
    border:0
}
.programs-filter .filter-side-bar .filter-row li{
    margin:8px 0 0
}
.programs-filter .filter-side-bar .filter-row .parent-term-name{
    font-family:allerbold;
    text-transform:uppercase;
    font-size:15px;
    font-size:.9375rem
}
.programs-filter .filter-side-bar .filter-row a{
    color:#7c8389;
    font-size:14px;
    font-size:.875rem;
    background-image:url(../images/icons/unchecked.svg);
    background-repeat:no-repeat;
    background-position:0 2px;
    background-size:14px 14px;
    padding:0 0 0 24px;
    display:flex;
    justify-content:space-between;
    align-items:baseline
}
.programs-filter .filter-side-bar .filter-row a:hover{
    color:#3d3e3b;
    text-decoration:none!important
}
.programs-filter .filter-side-bar .filter-row a.-active{
    background-image:url(../images/icons/checked.svg);
    background-position:0 1px;
    background-size:19px 16px
}
.programs-filter .filter-side-bar .filter-row a.-disabled{
    display:none
}
.programs-filter .filter-side-bar .filter-row a .name{
    flex:1 1 0
}
.programs-filter .filter-side-bar .filter-row a .count{
    flex:none
}
.programs-filter .filter-side-bar .filter-row .filter-title{
    display:flex;
    justify-content:space-between;
    color:#3d3e3b;
    font-family:allerbold;
    text-transform:uppercase;
    font-size:15px;
    font-size:.9375rem;
    letter-spacing:.5px;
    margin:0 -20px;
    padding:16px 20px;
    background:0 0;
    border-top:1px solid #dadada
}
.programs-filter .filter-side-bar .filter-row .filter-title::after{
    content:"";
    font-family:icomoon;
    transition:all .3s ease;
    font-size:14px;
    font-size:.875rem;
    margin-top:-2px
}
.programs-filter .filter-side-bar .filter-row .filter-title:focus,.programs-filter .filter-side-bar .filter-row .filter-title:hover{
    text-decoration:none
}
.programs-filter .filter-side-bar .filter-row .filter-title.-is-open::after{
    transform:rotate(90deg)
}
.programs-filter .filter-side-bar .filter-row.-programs-designed-for li{
    font-family:allerregular;
    text-transform:uppercase;
    letter-spacing:.4px;
    font-size:14px;
    font-size:.875rem
}
.programs-filter .filter-side-bar .filter-row.-programs-designed-for li a{
    background-image:none;
    display:block;
    margin:0 -10px;
    padding:10px 10px 7px;
    border-radius:4px
}
.programs-filter .filter-side-bar .filter-row.-programs-designed-for li a.-active,.programs-filter .filter-side-bar .filter-row.-programs-designed-for li a:hover{
    text-decoration:none;
    color:#fff;
    background:#00b9ca
}
.programs-filter .filter-side-bar .filter-row.-evidence-rating li{
    position:relative
}
.programs-filter .filter-side-bar .filter-row.-evidence-rating li a{
    padding:0 0 0 30px
}
.programs-filter .filter-side-bar .filter-row.-evidence-rating li a:hover{
    text-decoration:none
}
.programs-filter .filter-side-bar .filter-row.-evidence-rating li a::before{
    content:"";
    font-family:icomoon;
    font-style:normal;
    font-size:12px;
    font-size:.75rem;
    color:#31a429;
    flex:none;
    margin-right:10px
}
.programs-filter .filter-side-bar .filter-row.-evidence-rating li a::after{
    background:#fff;
    opacity:.7
}
.programs-filter .filter-side-bar .filter-row.-evidence-rating li a.-moderate::before{
    color:#ff923a
}
.programs-filter .filter-side-bar .filter-row.-evidence-rating li a.-moderate::after{
    content:"";
    position:absolute;
    left:44px;
    bottom:0;
    width:9px;
    height:18px
}
.programs-filter .filter-side-bar .filter-row.-evidence-rating li a.-promising::before{
    color:#f0256b
}
.programs-filter .filter-side-bar .filter-row.-evidence-rating li a.-promising::after{
    content:"";
    position:absolute;
    left:36px;
    bottom:0;
    width:16px;
    height:18px
}
.programs-filter .filter-side-bar .filter-reset{
    padding:0 20px 16px
}
.programs-filter .filter-side-bar .filter-reset button{
    font-family:allerregular;
    background:#eff7f8;
    padding:6px 10px;
    color:#3d3e3b
}
.programs-filter .filter-items{
    flex-grow:1;
    padding:20px;
    background:#eff7f8;
    transition:.3s ease;
    width:calc(100% - 280px);
    display:flex;
    align-content:flex-start;
    flex-flow:row wrap
}
.programs-filter .filter-items.-filter-open{
    transition:.3s ease
}
.programs-filter .filter-items .program-card{
    margin-bottom:20px;
    width:100%
}
@media (min-width:1200px){
    .programs-filter .filter-items{
        padding:30px
    }
    .programs-filter .filter-items .program-card{
        margin-bottom:30px
    }
}
.program-card{
    background:#fff;
    transition:box-shadow .75s ease;
    position:relative;
    box-shadow:0 0 4px 0 rgba(0,0,0,.2)
}
.program-card:hover{
    transition:box-shadow .2s ease;
    box-shadow:0 4px 20px rgba(0,0,0,.1)
}
.program-card.-badged .badge{
    display:inline-block
}
.program-card a{
    width:100%;
    padding:20px
}
.program-card a:hover{
    text-decoration:none
}
@media (min-width:1200px){
    .program-card a{
        padding:26px
    }
}
@media (min-width:700px){
    .program-card a{
        display:flex;
        align-items:center
    }
    .program-card-content{
        flex:0 1 auto;
        width:86%;
        padding-right:20px;
        border-right:1px solid #dadada
    }
    .-multiple .program-card-content{
        align-self:stretch;
        width:60%
    }
    .-multiple .program-card-outcomes{
        width:40%
    }
}
.program-card-outcomes{
    display:flex;
    flex-wrap:wrap;
    flex:none
}
.-multiple .program-card-outcomes .essa-rating{
    display:inline-flex;
    flex:1 1 auto
}
@media (max-width:699px){
    .program-card-outcomes{
        border-top:1px solid #dadada;
        padding-top:20px;
        margin-top:20px
    }
}
@media (min-width:700px){
    .program-card-outcomes{
        width:14%;
        padding-left:20px;
        min-width:140px
    }
}
.program-card-outcomes .outcomes-label{
    display:none
}
.program-card .title-row{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    width:100%
}
.program-card .title-row .corner-content{
    flex:none;
    font-family:allerregular;
    font-size:12px;
    font-size:.75rem;
    color:#3d3e3b;
    display:flex;
    align-items:center;
    padding-top:5px;
    margin-left:20px
}
.program-card .title-row .corner-content .badge{
    color:#00b9ca;
    margin-left:10px;
    font-size:22px;
    font-size:1.375rem
}
.program-card .title-row .corner-content .grades{
    color:#5D7375;
    font-size:14px;
    font-size:.875rem
}
.program-card .program-title{
    color:#3d3e3b;
    font-family:allerbold;
    font-size:20px;
    font-size:1.25rem;
    margin:0 0 16px
}
@media (min-width:1200px){
    .program-card-content{
        padding-right:30px
    }
    .program-card-outcomes{
        padding-left:40px;
        min-width:190px
    }
    .program-card .program-title{
        font-size:24px;
        font-size:1.5rem
    }
}
.program-card .teaser{
    color:#80868C;
    font-size:13px;
    font-size:.8125rem
}
.program-card .teaser p{
    font-size:13px;
    font-size:.8125rem
}
.program-card .essa-rating{
    position:relative;
    color:#3d3e3b;
    font-family:allerregular;
    font-size:16px;
    font-size:1rem;
    padding-left:40px
}
.program-card .essa-rating::before{
    content:"";
    position:absolute;
    top:-2px;
    left:0;
    font-family:icomoon;
    font-size:18px;
    font-size:1.125rem;
    color:#31a429
}
.program-card .essa-rating.-moderate::after,.program-card .essa-rating.-promising::after{
    content:"";
    position:absolute;
    background:#fff;
    opacity:.7;
    height:18px
}
.program-card .essa-rating.-moderate::before{
    color:#ff923a
}
.program-card .essa-rating.-moderate::after{
    left:11px;
    width:22px
}
.program-card .essa-rating.-promising::before{
    color:#f0256b
}
.program-card .essa-rating.-promising::after{
    left:9px;
    width:23px
}
@media (min-width:700px){
    .program-card.-multiple a{
        align-items:flex-start
    }
    .tab-content.-schools ul{
        column-count:2;
        column-gap:40px;
        break-inside:avoid;
        break-inside:avoid-column
    }
}
.program-card.-multiple .outcomes-label{
    display:block;
    width:100%;
    font-family:allerbold;
    color:#3d3e3b;
    text-transform:uppercase;
    letter-spacing:.75px;
    font-size:14px;
    font-size:.875rem;
    margin-top:10px;
    margin-bottom:20px
}
.program-card.-multiple .essa-rating{
    padding-left:30px;
    font-size:12px;
    font-size:.75rem;
    margin-right:20px;
    margin-bottom:20px
}
.program-card.-multiple .essa-rating::before{
    top:0;
    font-size:12px!important
}
.program-card.-multiple .essa-rating.-moderate::after{
    left:14px;
    width:8px;
    height:18px
}
.program-card.-multiple .essa-rating.-promising::after{
    left:7px;
    width:18px;
    height:18px
}
.program-side-rail{
    position:relative;
    z-index:3;
    font-family:allerregular
}
.program-side-rail .rail-content{
    background:#eff7f8;
    padding:20px;
    overflow-y:hidden;
    overflow-wrap:break-word;
    word-wrap:break-word;
    -ms-word-break:break-all;
    word-break:break-word;
    -ms-hyphens:auto;
    -moz-hyphens:auto;
    -webkit-hyphens:auto;
    hyphens:auto
}
.program-side-rail .rail-content a{
    position:relative;
    color:#3d3e3b;
    font-size:16px;
    font-size:1rem;
    max-width:100%
}
.program-side-rail .rail-row{
    margin-top:20px;
    padding-top:12px;
    border-top:1px solid #dadada
}
.program-side-rail .rail-row:first-child{
    margin:0;
    padding:0;
    border:0
}
.program-side-rail .rail-title{
    color:#4C48B7;
    font-family:Merriweather,serif;
    font-weight:600;
    font-size:13px;
    font-size:.8125rem;
    text-transform:capitalize;
    margin:0 0 18px
}
.program-side-rail .social-icons ul{
    margin:0;
    padding:0;
    list-style:none
}
.program-side-rail .social-icons ul li{
    position:relative;
    display:inline-block;
    margin:0 0 0 20px
}
.program-side-rail .social-icons ul li:first-child{
    margin:0
}
.program-side-rail .social-icons ul li a{
    font-size:0;
    color:#3d3e3b;
    transition:.3s ease
}
.program-side-rail .social-icons ul li a:hover{
    text-decoration:none;
    opacity:.5;
    transition:.3s ease
}
.program-side-rail .social-icons ul li a::before{
    font-size:20px;
    font-size:1.25rem
}
.program-side-rail .social-icons ul li a.icon-mail::before{
    font-size:15px;
    font-size:.9375rem
}
.program-side-rail .provider{
    font-size:0
}
.program-side-rail .provider a{
    margin:0 0 6px;
    padding:0 0 0 24px
}
.program-side-rail .provider a::before{
    position:absolute;
    left:0;
    font-family:icomoon
}
.program-side-rail .provider .phone a::before{
    top:2px;
    content:"";
    font-size:14px;
    font-size:.875rem
}
.program-side-rail .provider .email a::before{
    top:6px;
    content:"";
    font-size:9px;
    font-size:.5625rem
}
.program-side-rail .provider .website a::before{
    top:3px;
    content:"";
    font-size:13px;
    font-size:.8125rem
}
.program-side-rail .cost p{
    line-height:1.3;
    margin:0 0 10px
}
.program-side-rail .cost ul{
    font-size:14px;
    font-size:.875rem;
    padding:0 0 0 16px
}
.program-side-rail .cost ul li{
    margin:10px 0 0
}
.program-side-rail .cost ul li:first-child{
    margin:0
}
.program-side-rail .groups-studied ul{
    margin:0;
    padding:0;
    list-style:none
}
.program-side-rail .groups-studied ul li{
    margin:0 0 6px
}
.program-side-rail .groups-studied ul li a{
    font-family:allerbold;
    font-size:16px;
    font-size:1rem
}
.program-side-rail .groups-studied .star{
    margin-left:4px;
    position:relative;
    font-family:icomoon;
    color:#4C48B7;
    font-size:11px;
    font-size:.6875rem
}
.program-side-rail .detailed-overview,.program-side-rail .parent-engagement-tools{
    font-family:allerbold
}
.program-side-rail .parent-engagement-tools .icon-yes{
    margin-right:8px;
    color:#4C48B7
}
.program-side-rail .detailed-overview a{
    margin:0 0 6px;
    padding:0 0 0 24px;
    float:left;
    clear:both
}
.program-side-rail .detailed-overview a::before{
    position:absolute;
    left:0;
    font-family:icomoon
}
.program-side-rail .detailed-overview .key-studies::before{
    top:2px;
    content:"";
    font-size:15px;
    font-size:.9375rem
}
.program-side-rail .detailed-overview .external-link::before{
    top:1px;
    content:"";
    font-size:14px;
    font-size:.875rem
}
.program-accordion{
    padding:30px 0;
    background:#00b9ca
}
.program-accordion .inner{
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    padding:0 20px
}
@media (min-width:1268px){
    .program-accordion .inner{
        padding:0
    }
}
.program-accordion .accordion-item .title{
    position:relative;
    font-family:allerbold;
    font-size:18px;
    font-size:1.125rem;
    color:#303e50;
    padding:20px 30px 20px 50px;
    background:#fff;
    margin-bottom:1px
}
.program-accordion .accordion-item .title::before{
    font-family:icomoon;
    position:absolute;
    left:20px
}
.program-accordion .accordion-item .content{
    padding:20px;
    background:#fff;
    margin-bottom:1px;
    display:none
}
.program-accordion .accordion-item.-providers .title::before{
    content:""
}
.program-accordion .accordion-item.-users .title::before{
    content:""
}
.program-accordion .accordion-item.-schools .title::before{
    top:16px;
    font-size:20px;
    font-size:1.25rem;
    content:""
}
.program-accordion .accordion-item.-active .title{
    background:#4b48b7;
    color:#fff;
    margin-bottom:0
}
.program-accordion .accordion-item.-active .content{
    display:block
}
.program-tabs{
    position:relative;
    padding:0 0 60px
}
.program-tabs:after,.program-tabs:before{
    content:" ";
    display:table
}
.program-tabs::after{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:88px;
    background:#00b9ca;
    z-index:-1
}
.program-tabs .inner{
    max-width:1200px;
    margin:0 auto;
    overflow:hidden;
    padding:12px 20px 30px
}
@media (min-width:1268px){
    .program-tabs .inner{
        padding:12px 0 60px
    }
}
.program-tabs input[type=radio]{
    display:none
}
.program-tabs label{
    position:relative;
    display:flex;
    justify-content:stretch;
    align-items:center;
    float:left;
    cursor:pointer;
    color:#303e50;
    font-family:allerbold;
    font-size:18px;
    font-size:1.125rem;
    border-top-left-radius:4px;
    border-top-right-radius:4px;
    padding:20px 10px 28px;
    transition:.3s ease
}
@media (min-width:800px){
    .program-tabs label{
        padding:20px 34px 28px
    }
}
@media (min-width:1000px){
    .program-tabs label{
        padding:20px 65px 28px
    }
}
@media (min-width:1100px){
    .program-tabs label{
        padding:20px 80px 28px
    }
}
@media (min-width:1200px){
    .program-tabs label{
        padding:20px 85px 28px
    }
}
.program-tabs label:first-child{
    margin:0
}
.program-tabs label:hover{
    background:rgba(255,255,255,.5);
    transition:.3s ease
}
.tab-content,[id^=tab]:checked+label{
    background:#fff
}
.program-tabs label .icon::before{
    font-style:normal;
    font-family:icomoon;
    margin-right:12px
}
.program-tabs label.-providers .icon::before{
    content:"";
    font-size:22px;
    font-size:1.375rem
}
.program-tabs label.-users .icon{
    position:relative;
    margin-top:-2px
}
.program-tabs label.-users .icon::before{
    content:"";
    font-size:24px;
    font-size:1.5rem
}
.program-tabs label.-schools .icon{
    position:relative;
    margin-top:-4px
}
.program-tabs label.-schools .icon::before{
    content:"";
    font-size:26px;
    font-size:1.625rem
}
#tab0:checked~#tab-content0,#tab1:checked~#tab-content1,#tab2:checked~#tab-content2,#tab3:checked~#tab-content3{
    display:block
}
.tab-content{
    display:none;
    width:100%;
    float:left;
    padding:34px 0
}
.tab-content .content{
    max-width:800px
}
.tab-content.-schools,.tab-content.-schools .content{
    max-width:none
}
.tab-content.-schools ul{
    margin:0;
    list-style:none;
    border-top:1px solid #dadada;
    padding:40px 0 0
}
.tab-content.-schools ul li{
    margin:20px 0 0;
    display:inline-block;
    width:100%
}
.tab-content.-schools ul li:first-child{
    margin:0
}
.tab-content *{
    animation:tab-fade .3s ease
}
@keyframes tab-fade{
    0%{
        opacity:0
    }
    100%{
        opacity:1
    }
}
.autocomplete-search{
    position:relative
}
.autocomplete-search input{
    background-image:url(../images/icons/search.svg);
    background-repeat:no-repeat;
    background-size:24px 24px;
    background-position:12px 11px
}
.autocomplete-search input.-loading{
    background-image:url(../images/icons/searching.svg);
    background-size:20px 20px
}
.autocomplete-search .suggestions{
    position:absolute;
    top:calc(100% - 3px);
    left:0;
    right:0;
    z-index:10;
    width:100%;
    text-align:left!important;
    margin:0 auto;
    max-width:550px
}
.autocomplete-search .suggestions .liquid-child,.autocomplete-search .suggestions.liquid-container{
    overflow:visible
}
.modal-open,.pagination{
    overflow:hidden
}
.autocomplete-search .suggestions .result-list{
    display:block;
    margin:0;
    padding:0;
    list-style:none;
    font-size:12px;
    font-size:.75rem;
    font-family:allerregular;
    box-shadow:0 5px 5px 1px rgba(0,0,0,.11);
    background:#eff7f8;
    border-bottom-right-radius:4px;
    border-bottom-left-radius:4px;
    overflow:hidden
}
@media (min-width:900px){
    .autocomplete-search .suggestions .result-list{
        font-size:14px;
        font-size:.875rem
    }
}
.autocomplete-search .suggestions .result-list li{
    font-style:italic;
    color:#3d3e3b;
    border-top:1px solid #d2dbdc;
    padding:12px;
    margin:0
}
.autocomplete-search .suggestions .result-list li+a{
    padding:0
}
.autocomplete-search .suggestions .result-list li a{
    margin:-12px;
    display:block;
    font-style:normal;
    padding:12px;
    color:#000
}
.autocomplete-search .suggestions .result-list li a:hover{
    color:#000;
    text-decoration:none;
    background:#ddeef0
}
.autocomplete-search .suggestions .result-list li.active{
    background:#00b9ca
}
.pagination{
    width:100%;
    text-align:center
}
.pagination a,.pagination span{
    width:36px;
    height:36px;
    display:flex
}
@media (min-width:700px){
    .pagination{
        display:flex;
        justify-content:space-between
    }
}
.pagination a{
    background:#dadada;
    color:#3d3e3b;
    justify-content:center;
    align-items:center;
    font-family:allerregular;
    margin-left:1px
}
.modal .modal-content-wrapper .modal-header span::before,.pagination-arrows a::before{
    font-family:icomoon
}
.pagination a:first-child{
    margin:0
}
.pagination a-active,.pagination a:hover{
    text-decoration:none;
    background:#3d3e3b;
    color:#fff
}
.pagination a.active{
    background:#00b9ca;
    color:#fff
}
.pagination span{
    background:#dadada;
    color:#3d3e3b;
    justify-content:center;
    align-items:center;
    margin:0 1px
}
.pagination-arrows{
    text-align:center;
    margin-bottom:20px;
    display:flex
}
.pagination-arrows a{
    font-size:0
}
.pagination-arrows a::before{
    content:"";
    position:relative;
    font-size:20px;
    font-size:1.25rem
}
.pagination-arrows a.prev::before{
    content:""
}
.pagination-numbers{
    text-align:center;
    display:flex
}
.send-comments{
    position:relative;
    margin:30px 0 0;
    padding:24px;
    text-align:center;
    color:#fff;
    border-top-left-radius:20px;
    border-bottom-right-radius:20px;
    background:linear-gradient(to right,#4C48B7 20%,#4b48b7 100%)
}
.send-comments::before{
    content:"";
    position:absolute;
    left:0;
    bottom:-23px;
    width:0;
    height:0;
    border-style:solid;
    border-width:24px 24px 0 0;
    border-color:#4C48B7 transparent transparent
}
.modal,.modal-open{
    position:fixed;
    left:0;
    right:0
}
@media (min-width:1000px){
    .send-comments{
        margin:40px 0 0;
        padding:34px
    }
    .send-comments::before{
        bottom:-34px;
        border-width:34px 34px 0 0
    }
}
.send-comments h3{
    color:#fff
}
.send-comments a,.send-comments button{
    width:100%;
    margin:20px 0 0;
    font-size:15px;
    font-size:.9375rem
}
@media (min-width:1000px){
    .send-comments a,.send-comments button{
        margin:34px 0 0
    }
}
.text-image-panel .image{
    margin-bottom:30px
}
.text-image-panel .image img{
    margin:0 auto
}
@media (min-width:900px){
    .text-image-panel{
        display:flex;
        justify-content:space-between
    }
    .text-image-panel .image,.text-image-panel .text{
        width:48%
    }
    .text-image-panel .image{
        margin-bottom:50px
    }
    .text-image-panel.right .image{
        order:2
    }
}
.modal{
    top:0;
    bottom:0;
    z-index:99999999;
    margin:auto;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,.75);
    display:flex;
    align-items:flex-start;
    justify-content:flex-start;
    max-height:100vh;
    overflow-x:hidden;
    overflow-y:scroll;
    padding-top:200px;
    transition:.3s ease
}
.modal .modal-inner{
    max-width:600px;
    width:100%;
    margin:0 auto;
    padding:20px
}
.modal .modal-content-wrapper{
    background-color:#fff;
    border-radius:4px;
    overflow:hidden
}
.modal .modal-content-wrapper .modal-header{
    height:70px;
    width:100%;
    position:relative;
    color:#fff;
    padding:20px 34px;
    background:#4C48B7;
    background:linear-gradient(to right,#4C48B7 0,#4b48b7 100%);
    filter:progid:DXImageTransform.Microsoft.gradient( startColorstr="#4C48B7", endColorstr="#4b48b7", GradientType=0 );
    display:flex;
    justify-content:space-between;
    align-items:center
}
@media (min-width:1000px){
    .modal .modal-content-wrapper .modal-header{
        background:linear-gradient(to right,#4C48B7 0,#4b48b7 70%)
    }
}
.modal .modal-content-wrapper .modal-header h3{
    margin:0;
    color:#fff;
    font-size:22px;
    font-size:1.375rem;
    width:100%
}
.modal .modal-content-wrapper .modal-header span{
    font-size:0;
    display:inline-block;
    cursor:pointer;
    transition:.3s ease
}
.modal .modal-content-wrapper .modal-header span:hover{
    opacity:.5;
    transition:.3s ease
}
.star,.star::after,.star:hover,.star:hover::after{
    transition:.6s ease
}
.modal .modal-content-wrapper .modal-header span.icon-close::before{
    content:"";
    font-size:26px;
    font-size:1.625rem
}
.modal .modal-content-wrapper .modal-header span.icon-print::before{
    content:"";
    font-size:20px;
    font-size:1.25rem;
    margin-right:14px
}
.modal .modal-content-wrapper .modal-content{
    padding:30px 34px 34px
}
.modal .modal-content-wrapper .modal-content p{
    margin:0 0 18px;
    font-size:12px;
    font-size:.75rem
}
.modal .modal-content-wrapper .modal-content p:last-child{
    margin:0
}
.modal .modal-content-wrapper .modal-content ol,.modal .modal-content-wrapper .modal-content ul{
    font-size:12px;
    font-size:.75rem
}
.star{
    display:inline-block;
    position:relative;
    cursor:pointer
}
.star::after{
    content:"";
    position:absolute;
    visibility:hidden;
    opacity:0;
    left:50%;
    margin-left:-4px;
    top:-8px;
    width:0;
    height:0;
    border-style:solid;
    border-width:6px 4px 0;
    border-color:#303e50 transparent transparent
}
.star:hover::after{
    visibility:visible;
    opacity:1
}
.star .hoverBubble{
    position:absolute;
    width:110px;
    bottom:calc(100% + 8px);
    left:50%;
    margin-left:-55px;
    z-index:10
}
.faq-row .question a,.star .hoverBubble .liquid-child{
    position:relative;
    font-family:allerregular
}
.star .hoverBubble .liquid-child{
    background:#303e50;
    padding:8px 14px;
    color:#fff;
    text-align:center;
    text-transform:none!important;
    font-size:11px;
    font-size:.6875rem;
    border-radius:4px
}
.faq-row{
    margin:2px 0 0
}
.faq-row .question{
    display:flex
}
.faq-row .question a{
    width:100%;
    display:block;
    background:#eff7f8;
    font-weight:400;
    padding:14px 20px 14px 48px;
    color:#3d3e3b;
    font-size:18px;
    font-size:1.125rem
}
@media (min-width:1000px){
    .faq-row .question a{
        font-size:24px;
        font-size:1.5rem
    }
}
.faq-row .question a::before{
    position:absolute;
    font-family:icomoon;
    color:#00b9ca;
    content:"";
    top:16px;
    left:20px;
    font-size:16px;
    font-size:1rem;
    transition:.3s ease
}
.faq-row .question a:hover{
    text-decoration:none;
    background:#ddeef0
}
.faq-row .answer{
    padding:30px 20px
}
.-active .faq-row .question a::before{
    transform:rotate(90deg);
    transition:.3s ease
}
.partner-grid{
    margin-top:30px
}
@media (min-width:400px){
    .partner-grid{
        display:flex;
        flex-wrap:wrap
    }
}
@media (min-width:1100px){
    .faq-row .question a::before{
        top:20px
    }
    .partner-grid{
        margin-top:40px
    }
}
.partner-grid .grid-item{
    border-top:1px solid #dadada;
    display:flex;
    justify-content:center;
    align-items:center;
    padding:20px 0
}
@media (min-width:400px){
    .partner-grid .grid-item{
        border:1px solid #dadada;
        width:50%;
        margin:-1px -.5px 0;
        padding:20px
    }
}
@media (min-width:800px){
    .partner-grid .grid-item{
        width:33.333%
    }
}
@media (min-width:1100px){
    .partner-grid .grid-item{
        width:25%
    }
}
.partner-grid .grid-item img{
    max-height:150px
}
