/*! HTML5 Boilerplate v8.0.0 | MIT License | https://html5boilerplate.com/ */

/*font-family:'AvenirNextLTW01-Regular';
font-family:'AvenirNextLTW01-Italic';
    font-family:'Avenir Next LT W01 Bold';
font-family:'AvenirNextLTW01-BoldIta';
font-family:'AvenirNextLTW01-Heavy';
font-family:'AvenirNextLTW01-HeavyIt_721290';
font-family:'AvenirNextLTW01-Condens_721299';
font-family:'AvenirNextLTW01-Condens_721302';
font-family:'AvenirNextLTW01-BoldCn';
font-family:'AvenirNextLTW01-BoldCnI_721320';
*/


/* @media only screen and (min-width: 768px) {

}
@media only screen and (min-width: 1024px) {

}
@media only screen and (min-width: 1440px) {
    
} */






/* main.css 2.1.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

   html {
    color: #333;
    font-size: 20px;
    line-height: 1.4;
    font-family:'AvenirNextLTW01-Condens_721299', Arial, Helvetica, sans-serif;
}

/*
   * Remove text-shadow in selection highlight:
   * https://twitter.com/miketaylr/status/12228805301
   *
   * Vendor-prefixed and regular ::selection selectors cannot be combined:
   * https://stackoverflow.com/a/16982510/7133471
   *
   * Customize the background color to match your design.
   */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
   * A better looking default horizontal rule
   */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
   * Remove the gap between audio, canvas, iframes,
   * images, videos and the bottom of their containers:
   * https://github.com/h5bp/html5-boilerplate/issues/440
   */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
   * Remove default fieldset styles.
   */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
   * Allow only vertical resizing of textareas.
   */

textarea {
    resize: vertical;
}

/* ==========================================================================
     Author's custom styles
     ========================================================================== */


:root {
    --navy:     #003a70;
    --navyDark: #00315E;
    --navyLight:#014f99;
    --red:      #cf102d;
    --redDark:  #be0e29;
    --blue:     #00519c;
    --blue2:    #005db3;
    --lightBlue:#5fb4e5;
    --text:     #333;
    --textLight:#757575;
    --SWCCgray: #a3a8ac;
    --lightGray:#ddd;
    --veryLightGray:#ebebeb;


}

body,
html {
    padding: 0;
    margin: 0;
    /* box-sizing: border-box; */
    /* background:#ddd; */
    width: 100%;
}

.site-grid {
    display: grid;
    grid-template-columns: .6rem minmax(200px, 1440px) .6rem;
}
@media only screen and (min-width: 480px) {}
@media only screen and (min-width: 768px) {}
@media only screen and (min-width: 1024px) {
    .site-grid {
        grid-template-columns: 2rem minmax(200px, 1440px) 2rem;
    }
}

@media only screen and (min-width: 1440px) {
    .site-grid {
        grid-template-columns: minmax(2rem, auto) minmax(1024px,1440px) minmax(2rem, auto);
    }
}

.backgroundFullWidth {
    grid-column: 1/-1;
}

.twoColGridNoMargin {
    display: grid;
    grid-template-columns: 1fr;
    gap:0;
}

.mobileGridItem1{
    grid-row-start: 1;
}
.mobileGridItem2{
    grid-row-start: 2;
}
.mobileGridItem3{
    grid-row-start: 3;
}
.mobileGridItem4{
    grid-row-start: 4;
}
@media only screen and (min-width: 480px) {}
@media only screen and (min-width: 768px) {
    
    .twoColGridNoMargin {
        grid-template-columns: 1fr 1fr;
    }
    .mobileGridItem1{
        grid-row-start: unset;
    }
    .mobileGridItem2{
        grid-row-start: unset;
    }
    .mobileGridItem3{
        grid-row-start: unset;
    }
    .mobileGridItem4{
        grid-row-start: unset;
    }
}


.contentWithMargins {
    grid-column: 2/3;
}
.contentNoMargins {
    grid-column: 1/-1;
}
.backgroundLightGray{
    background-color: #ededed;
}
.withPadding {
    padding:2rem 0;
}

h1,h2,h3,h4,h5 {
    color: var(--red);
    font-family:'AvenirNextLTW01-BoldCn';
    margin-bottom: .5em;
    line-height: 1.15;
}
h1.navy,h2.navy,h3.navy,h4.navy,h5.navy {
    color: var(--navy);
}
h1,h2,h3,h4,h5 {
    color: var(--red);
    font-family:'AvenirNextLTW01-BoldCn';
    margin-bottom: .5em;
    line-height: 1.15;
}
h1 > a,h2 > a,h3 > a,h4 > a,h5 > a {
text-decoration: none;
color: var(--red);
}
h1.navy > a,h2.navy > a,h3.navy > a,h4.navy > a,h5.navy > a {
    color: var(--navy);
    }
h1 > a:hover,h2 > a:hover,h3 > a:hover,h4 > a:hover,h5 > a:hover,
h1 > a:focus,h2 > a:focus,h3 > a:focus,h4 > a:focus,h5 > a:focus,
h1 > a:active,h2 > a:active,h3 > a:active,h4 > a:active,h5 > a:active {
    text-decoration: underline;
}

h1 {
    font-family:'Avenir Next LT W01 Bold';
    font-size: 3rem;
}
h2{
    font-family:'Avenir Next LT W01 Bold';
    font-size: 2.25rem;
}
h3{
    font-size: 1.5rem;
}
h4{
    font-size: 1.25rem;
}
.regular {
    font-family:'Avenir Next LT W01 Bold';
}
.centered {
    text-align: center;
}
.navy {
    color:var(--navy);
}

.bold{font-family:'Avenir Next LT W01 Bold';}
.boldItalic{font-family:'AvenirNextLTW01-BoldIta';}
.heavy{font-family:'AvenirNextLTW01-Heavy';}
.heavyItalic{font-family:'AvenirNextLTW01-HeavyIt_721290';}
.condensed{font-family:'AvenirNextLTW01-Condens_721299';}
.condensedItalic{font-family:'AvenirNextLTW01-Condens_721302';}
.boldCondensed{font-family:'AvenirNextLTW01-BoldCn';}
.boldCondensedItalic{font-family:'AvenirNextLTW01-BoldCnI_721320';}


aside h2:first-of-type, aside h3:first-of-type, aside h4:first-of-type {
    margin-top: 0;
}
.site-header {
    background-color: var(--red);
    background-image: url('../img/pattern-block-20.png');
    border-bottom: 1px solid #fff;
    position: relative;
    box-shadow: 0 0 50px rgba(0,0,0,.3);
}
.header-container {
    display: grid;
    grid-template-areas:
        "logo menu-bug"
        "destinations destinations";
    grid-template-columns: auto auto;
    padding: .6rem .6rem .25rem .6rem;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/var(--red)+0,cf102d+100&1+30,0+100 */
    /* background: -moz-linear-gradient(top,  rgba(207,16,45,1) 0%, rgba(207,16,45,1) 30%, rgba(207,16,45,0) 100%); */
    /* background: -webkit-linear-gradient(top,  rgba(207,16,45,1) 0%,rgba(207,16,45,1) 30%,rgba(207,16,45,0) 100%); */
    /* background: linear-gradient(to bottom,  rgba(207,16,45,1) 0%,rgba(207,16,45,1) 30%,rgba(207,16,45,0) 100%); */
    /* filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cf102d', endColorstr='#00cf102d',GradientType=0 ); */
}

header,
header a {
    color: #fff;
}

.navbar-brand {
    grid-area: logo;
    width: 153px;
    overflow: hidden;
    height: 42px;
    filter: drop-shadow(0 .125em .5em rgb(0 0 0 / 0.25));
}
.navbar-brand img {
    width: 100%;
}
.menu-bug {
    grid-area: menu-bug;
    text-transform: uppercase;
    transition: top ease 1s;
    top:0;
}
.menu-bug.sticky {
    position: fixed;
    top: 25vh;
    right: 0;
    opacity: .7;
    transition: top ease .5s;
    z-index: 99;
}
.menu-bug.sticky:hover,.menu-bug.sticky:active,.menu-bug.sticky:focus  {
    opacity: 1;
}
.menu-bug.sticky .ul-nav {
    list-style-type: none;
    display: flex;
    gap: 0em;
}
.menu-bug.sticky .ul-nav a {
    padding:1em;
    display: flex;
    gap: 0em;
    background-color: var(--red);
    border: solid 1px #fff;
}
.menu-bug.sticky .ul-nav a .navLabel {
    display: none;
}
.menu-bug.sticky .ul-nav li:nth-child(1) a {
    border-radius: 2em 0 0 2em;
    border-right: none;
    padding: .65rem .4rem .65rem .9rem;
}
.menu-bug.sticky .ul-nav li:nth-child(2) a {
    border-right: none;
    border-left: none;
    padding: .65rem .2rem .65rem .4rem;
}

.menu-bug a {
    text-decoration: none;
}

.menu-bug .ul-nav {
    justify-content: right;
    text-shadow: 0 .125em .5em rgba(0,0,0,.25);
    align-items: center;
    height: 100%;
}

.destinations {
    grid-area: destinations;
}

.ul-nav {
    padding: 0;
    margin: 0;
    list-style-type: none;
    display: flex;
    gap: 1em
}

.destinations .ul-nav {
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 1em;
    font-size: .75em;
    gap: 0;
    text-transform: uppercase;
}
.destinations a {
    text-decoration: none;
    background-position: bottom;
    background-size: 100% 0%;
    background-image: linear-gradient(var(--navy) 0 0);
    background-repeat: no-repeat;
    transition: background-size .2s;
}

.destinations a:hover, .destinations a:active, .destinations a:focus {
    background-size: 100% 100%;

}

.ul-nav li a {
    padding:.6em;
    
}

.destinations .ul-nav .fa-solid {
    margin-right: .25em;
}

@media only screen and (min-width: 1024px) {
    .header-container {
        grid-template-areas:
            "logo menu-bug"
            "logo destinations";
        grid-template-columns: auto auto;
        padding: .6rem;
        padding-bottom: 0.35rem;
    }

    .destinations .ul-nav {
        justify-content: right;
        margin-top: 0;
        font-size: .75em;
        gap: 0;
        height:36px;
        align-items: end;
    }
    .destinations .ul-nav li {
        padding-bottom: 0;
    }
    .navbar-brand {
        height: auto;
    }
}


/* END HEADER SECTION */

/***************Alert for closings and emergency info***************/
div.alert {
    box-shadow: inset 0 0 16px #bbb;
    line-height: 1;
    margin: 0;
    padding: 10px;
}
div.alert div.contentWrapper {
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
}

div.alert p {
	padding: 0;
	margin: 0;
	color: #cf102d;
	font-weight: bold;
	text-align: center;
}


/* BEGIN MENU OVERLAY */

.menuOverlay { 
    height: 0;
    width: 100%;
    position: fixed;
    z-index: 100;
    right: 0;
    top: 0;
    color:#fff;
    background-color: #00315E;
    background-color: rgba(0,49,94, 0.97); /*.97 */
    overflow-x: hidden; /* Disable horizontal scroll */
    transition: ease 0.3s; 
    display: hidden;
}
.menuOverlay.open {
    display: block;
    height: 100%;
}
.overlayTop {
    display: grid;
    grid-template-areas:
        "menuLogo menuClose"
        "menuDestinations menuDestinations"
        "search search"
        "overlayButtons overlayButtons";
    grid-template-columns: auto auto;
}
.menuDestinations {
    grid-area: menuDestinations;
}
.menuLogo{
    grid-area: menuLogo;
    width: 153px;
    overflow: hidden;
    height: 42px;
    filter: drop-shadow(0 .125em .5em rgb(0 0 0 / 0.25));
    margin: 0.6rem 0 0 0.6rem
}
.menuLogo img {
    width: 100%;
}
.closeMenu{
    grid-area: menuClose;
    justify-content: right;
    text-align: right;
    margin: 1.1rem .6rem 0 0;
}
.closeMenu a {
    color: #fff;
    background-color: #014f99;
    padding: .3em .75rem;
    border-radius: 1em;
    text-decoration: none;
}
.closeMenu a span {
    margin-right: .5rem;
}

.menuDestinations .ul-nav {
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 1em;
    font-size: .75em;
    gap: 0;
    text-transform: uppercase;
}
.menuDestinations a {
    text-decoration: none;
    color:#fff;
}

.menuDestinations .ul-nav li {
    padding:.6em;
    /* background-color: var(--navy); */
}

.menuDestinations .ul-nav .fa-solid {
    margin-right: .25em;
}
.site-search {
    grid-area: search;
}
.site-search .finder {
    width: 100%;
    box-sizing: border-box;
    border-top: solid 2px #ddd;
    border-bottom: solid 2px #ddd;
    display: flex;
    
}
.site-search .finder .search-query {
    width: 100%;
    border: none;
    padding:.5em 1em;
}
.site-search .finder button {
    width: 3.5em;
    text-align: center;
    background: var(--red);
    color:#fff;
    justify-content:center;
    align-items: center;
    padding:0;
    border: none;
}


.menuCTAbuttons .mod-custom {
    grid-area: overlayButtons;
    display: grid;
    grid-template-columns: 1fr;
    gap: 1em;
    margin: 1em;
}
.menuCTAbuttons .mod-custom .button {
    border: solid 2px #fff !important;
    display: block;
    width: 100%;
    box-sizing: border-box;
}

@media only screen and (min-width: 768px) {
    .menuCTAbuttons .mod-custom {
        grid-template-columns: 1fr 1fr;
    }
}

@media only screen and (min-width: 1024px) {
    .menuCTAbuttons .mod-custom {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
}


/* BEGIN MAIN MENU */
.mainMenu {
    background-color: var(--navy);
    color:#fff;
}
.mainMenu a {
    color:#fff;
    text-decoration: none;
}
.mainMenu ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.mainMenu ul li.deeper.parent{
    display:grid;
    grid-template-columns: 1fr 50px;
}
.mainMenu > ul > li:not(.deeper.parent){
    display:grid;
    grid-template-columns: 1fr;
}
.mainMenu .deeper.parent > a, .mainMenu > ul > li > a {
    font-family:'Avenir Next LT W01 Bold';
    border-top: solid 2px #00519C;
    /* border-bottom: solid 2px #00519C; */
    padding: .5rem .75rem;
    margin: 0;
    display: block;
    font-size: 1.25rem;
}
.mainMenu .deeper.parent > a:hover, .mainMenu .deeper.parent > a:active, .mainMenu .deeper.parent > a:focus {
    background-color: var(--navyDark);
}
.mainMenu > ul > li > a:hover, .mainMenu > ul > li > a:active, .mainMenu > ul > li > a:focus {
    background-color: var(--navyDark);
}
.mainMenu .deeper.parent.active > a {
    background-color: var(--navyDark);
}

.mainMenu .deeper.parent > button {
    font-size: 1.25rem;
    border: none;
    border-top:solid 2px #00315E;
    background-color: #005DB3;
    color:#fff;
    cursor: pointer;
    transition: all ease 1s;
    position: relative;
    display: grid;
    align-items: center;
}

.mainMenu ul:first-child .deeper.parent > button {
    border-top:solid 2px #00519C;
}

.mainMenu .deeper.parent > button span {
    transition: all .5s;
    grid-column: 1/2;
    grid-row: 1/2;
}

.mainMenu .deeper.parent > button.open {
    background-color: var(--red);
}
.mainMenu .deeper.parent > button.open .fa-plus {
    opacity: 0;
}


.mainMenu .deeper.parent > button.closed {
    background-color: #005DB3;
}

.mainMenu .deeper.parent > button.open span {
    rotate: 180deg;
}


.mainMenu .nav-child {
    background-color: #005DB3;
    grid-column-start: 1;
    grid-column-end: span 2;
    overflow: hidden;
    display: none;
}
.mainMenu .nav-child.expanded {
    display: block;
}
.mainMenu .nav-child a {
    font-family:'AvenirNextLTW01-Condens_721299';
    background-color: #00519C;
    border-top: solid 2px #005DB3;
    margin: 0 0 0 .8rem;
    padding: .5rem;
    display: block;
}
.mainMenu .nav-child a:hover, .mainMenu .nav-child a:active, .mainMenu .nav-child a:focus {
    background-color: var(--navy);
}
.mainMenu .nav-child .active a {
    background-color: var(--navy);
}
.mainMenu .nav-child li:first-child a {
    border-top: none;
}
.quicklinks {
    background-color: var(--navy);
    background-image: url('../img/pattern-block-20.png');
    padding: 1rem;
    margin: 2rem;
}

.quicklinks h3 {
    color: #5FB4E5;
    text-transform: uppercase;
    font-family:'Avenir Next LT W01 Bold';
    margin: 0;
}
.quicklinks ul {
    list-style: none;
    font-family:'AvenirNextLTW01-BoldCn';
    padding: 0;
    margin: .75rem 0 0 0;
}
.quicklinks li {
    padding: .3rem 0;
}
.quicklinks a{
    color: #fff;
    text-decoration: none;
}
.quicklinks a:hover, .quicklinks a:focus, .quicklinks a:active  {
    text-decoration: underline;
}

.peopleLinks {
    padding: 1rem;
    margin: 2rem;
}
.peopleLinks h3 {
    color: #5FB4E5;
    text-transform: uppercase;
    font-family:'Avenir Next LT W01 Bold';
    margin: 0;
}
.peopleLinks li {
    padding: .3rem 0;
}
.peopleLinks ul {
    list-style: none;
    font-family:'AvenirNextLTW01-BoldCn';
    padding: 0;
    margin: .75rem 0 0 0;
}
.peopleLinks a {
    color:#fff;
    text-decoration: none;
}
.peopleLinks a:hover, .peopleLinks a:focus, .peopleLinks a:active  {
    text-decoration: underline;
}



.featured {
    color:#fff;
    display: grid;
    grid-template-columns: 1fr;
    margin: 1rem;
    gap: 1rem;
}


.featured a {
    color:#fff;
    text-decoration: none;
}
.featured article {
    width: 100%;
    box-sizing: border-box;
    position: relative;
}
.featured figure {
    padding: 0;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
}
.gridHeader {
    grid-column-start: 1;
    grid-column-end: -1;
}
h2.gridHeader {margin-bottom: .25em;}

.featured img {
    width: 100%;
}
.featured h2 {
    color:#fff;
}
.featured h3 {
    margin: .25em 0 0 0;
    font-size: .8em;
    width: 100%;
    color:#fff;
}
.featured .tag {
    font-size: .7em;
    background-color: var(--red);
    margin: 0;
    padding: 0.25em 0.25em;
    text-transform: uppercase;
    line-height: 1;
}
.featuredOverlay {
    position: absolute;
    display: flex;
    bottom: 0;  
    flex-flow: row wrap;
    flex-wrap: wrap;
    padding: 0.5em;
}

.featured figure {
    width: 100%;
    height:100%;
}
.featured img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    position: relative;
    z-index: -1;
}

.featured figure::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 100%);
    background: -moz-linear-gradient(bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 100%);
    background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 100%);
}


@media only screen and (min-width: 425px) {
    .featured {
        grid-template-columns: 1fr 1fr;
    } 
}
@media only screen and (min-width: 768px) {
    .featuredOverlay {
        font-size: 1.2em;
    }
    .featured {
        margin: 1rem 3rem;
        gap: 2rem;
    } 
    .menuOverlay.open {
        display: grid;
        grid-template-columns: auto auto auto auto;
        grid-template-areas: "overlayTop overlayTop overlayTop overlayTop"
        ". overlaySearch overlaySearch ."
        ". overlayLinks overlayMenu ."
        "overlayBottom overlayBottom overlayBottom overlayBottom";
    }
    .overlayTop {
        grid-area: overlayTop;
    }
    .overlayMenu {
        grid-area: overlayMenu;
        padding-left: 2rem;
        border-left:#00519C solid 2px;
        min-width: 380px;
    }
    .overlaySearch {
        grid-area: overlaySearch;
        margin-top: 1rem;
        width: 760px;
    }
    .site-search .finder {
        border: solid 2px #ddd;
    }
    .menuCTAbuttons .mod-custom {
        margin: 2rem 0;
        font-size: 1.25em;
    }
    .overlayLinks {
        grid-area: overlayLinks;
    }
    .overlayLinks h3 {
        font-size: .9em;
    }
    .overlayBottom {
        grid-area: overlayBottom;
    }
    .quicklinks {
        margin: 0 2rem 0 0;
        color:#fff;
    }
    .peopleLinks {
        margin: 2rem 2rem 0 0;
    }



}
@media only screen and (min-width: 1024px) {
    .menuOverlay.open {
        display: grid;
        grid-template-columns: auto 300px 700px auto;
    }
    .overlaySearch {
        margin:auto;
        margin-top: 1rem;
        width: 1000px;
    }
    .menuCTAbuttons .mod-custom {
        font-size: 1.5em;
    }

    .featured {
        margin: 1rem 3rem;
        gap: 3rem;
        grid-template-columns: 1fr 1fr 1fr;
    } 

}   
@media only screen and (min-width: 1440px) {
    .featured {
        margin: 1rem auto;
        gap: 3rem;
        max-width: 1440px;
        grid-template-columns: 1fr 1fr 1fr;
    } 
}   



/* END MAIN MENU */





/* END MENU OVERLAY */





/* BEGIN CONTENT PAGE HEADERS */
.noHero {
    color: var(--text);
}

.pageHero {
    display: grid;
    grid-template-columns: .6rem auto .6rem;
    transition: all .3s;
    grid-column: 1/-1;
}
.pageHero h1 {
    margin: 0;
    font-size: 1.5rem;
    font-family:'AvenirNextLTW01-BoldCn';
    color:#fff;
}

.heroImage {
    min-height: 200px;
    grid-row: 1 / 2;
    grid-column: 1 / 4;
    position: relative;
    max-height: 500px;
}

.heroImage::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 50%);
    background: -moz-linear-gradient(bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 50%);
    background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 50%);
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 50%);    
}
.heroImage.noShadow::after {
    content: unset;
}


.heroImage img {
    object-fit: cover;
    /* object-position: center center; */
    height: 100%;
    width: 100%;
}
.heroBottom {
    grid-row: 1 / 2;
    grid-column: 2 / 3;
    color: #fff;
    align-self: self-end;
    position: relative;
    padding-bottom: .6rem;
}

.pageHero.noImage .heroBottom {
    color: var(--text);
    margin-top: 2rem;
    
}
.pageHero.noImage .heroBottom a {
    color: var(--text);
}

.pageHero.noImage h1, .pageHero.noImage h2  {
    color: var(--red);
}
.pageHero.noImage h1.navy, .pageHero.noImage h2.navy  {
    color: var(--navy);
}


@media only screen and (min-width: 768px) {
    .pageHero h1 {
        font-size: 2em;
    }
}

@media only screen and (min-width: 1024px) {
    .pageHero {
        grid-template-columns: 2rem auto 2rem;
    }
    .pageHero h1 {
        font-size: 2.25em;
        font-family:'Avenir Next LT W01 Bold';
    }
    
}
@media only screen and (min-width: 1440px) {
    .pageHero {
        grid-template-columns: minmax(2rem, auto) minmax(1024px,1440px) minmax(2rem, auto);
    } 
    .pageHero h1 {
        font-size: 3em;
    }
    .heroImage {
        max-height: 600px;
    }
}
@media only screen and (min-width: 1920px) {
    .heroImage {
        max-height: 750px;
    }
}


/* END CONTENT PAGE HEADERS */
/* BEGIN BREAD CRUMBS */
nav.breadcrumb {
    text-transform: uppercase;
    background-color: rgba(0,0,0,.25);
    display: inline-block;
    padding: 0 0.5rem 0.25rem;
}
.breadcrumb ol {
    margin: 0;
    padding: 0;
}
.breadcrumb li {
    display: inline-block;
    list-style-type: none;
    margin: 0;
    font-size: .6em;
}
.breadcrumb a {
    color:#fff;
}
.noImage .breadcrumb a {
    color:var(--text);
}
.noImage nav.breadcrumb {
    background-color: transparent;
    padding: 0;
}


.breadcrumb li:not(:last-child)::after {
    color: var(--red);
    margin: 0 0.2rem;
    font: var(--fa-font-solid);
    font-size: 1em;
    content: "\f054";
}
li.mod-breadcrumbs__divider.float-start {
    display: none;
}


@media only screen and (min-width: 768px) {
    .breadcrumb li {
        font-size: .8rem;
    }
}

@media only screen and (min-width: 1024px) {

}
@media only screen and (min-width: 1440px) {

}


/* END BREAD CRUMBS */
/* BEGIN SECTION NAVIGATION */
.sectionNav * {
    box-sizing: border-box;
}
.sectionNav {
    position: relative;
    font-size: .9rem;
    grid-column: 1/-1;
    margin-bottom: 1rem;
}
.sectionNav > ul {
    margin: 0;
    padding: 0;
    background-color: #EBEBEB;
}
.sectionNav > ul > li {
    list-style: none;
    width:100%;
    min-height: 1.9rem;
    display:block;
    position: relative;
}
.sectionNav > ul > li > button {
    border:solid 1px var(--lightGray);;
    border-bottom: 1px solid #fff;
    border-left: 1px solid #fff;
    display: block;
    align-items: center;
    height: 100%;
    min-height: 1.9rem;
    width: 2.4rem;
    padding: 0.4rem;
    justify-self: center;
    align-self: center;
    background-color: var(--lightGray);
}

.sectionNav > ul > li.expanded > button {
    border-bottom: 1px solid transparent;
}
.sectionNav > ul > li span {
    transition: rotate .3s;
}
.sectionNav > ul > li.expanded span:not(span.separator) {
    rotate: 180deg;
}

.sectionNav > ul > li > a, .sectionNav > ul > li >span.separator {
    color: #333333;
    background-color: #EBEBEB;
    text-decoration: none;
    border-bottom: 1px solid #fff;
    display: block;
    align-items: center;
    min-height: 1.9rem;
    padding:.5rem;
    padding-left: 1rem;
    transition:background-color .3s, border .3s;
}

.sectionNav > ul > li.active > a {
    border-left: .2rem solid var(--text);
    padding-left: .7rem;
    background-color: #e0e0e0;
}

.sectionNav > ul > li.current > a {
    border-left: .2rem solid var(--red);
    padding-left: .7rem;
    background-color: #e0e0e0;
}

.sectionNav .mod-menu__sub li.current > a {
    border-left: .2rem solid var(--red);
    padding-left: .7rem;
    background-color: var(--veryLightGray);
}


.sectionNav > ul > li > a:hover, .sectionNav > ul > li > a:focus,.sectionNav > ul > li > a:active {
    background-color: #ddd;
}
.noImage.sectionNav {
    border-top: 1px solid #ececec;
}

.noImage.sectionNav > ul {
    background-color: #fff;
}
.noImage.sectionNav > ul > li > a {
    background-color: #fff;
}

.sectionNav .hasDrillDown {
    display: grid;
    grid-template-columns: auto 2.4rem;
}

.sectionNav .subWrapper {
    grid-column: 1 / -1;
}
.sectionNav .subGrid {
    display: grid;
    transition: grid-template-rows .3s ease;
    grid-template-rows: 0fr;
}
.sectionNav .hasDrillDown.expanded .subGrid {
    grid-template-rows: 1fr;
}
.sectionNav .mod-menu__sub {
    list-style: none;
    text-align: left;
    background-color: var(--lightGray);
    margin: 0;
    padding: 0;
    overflow: hidden;
}
.sectionNav .mod-menu__sub a {
    color: var(--text);
    display: block;
    padding: .25rem .25rem .25rem 1.5rem;
    text-decoration: none;
    border-bottom: solid 1px var(--veryLightGray);
}
.sectionNav .mod-menu__sub a:hover, .sectionNav .mod-menu__sub a:active, .sectionNav .mod-menu__sub a:focus {
    background-color: var(--veryLightGray);
}


@media only screen and (min-width: 1024px) {
    .sectionNav {
        margin-bottom: 2rem;
    }
    .sectionNav > ul {
        min-height: 2.5rem;
        flex-wrap:unset;
        justify-content: center;
        text-align: center;
    }
    .sectionNav > ul > li {
        display: inline;
    }
    .sectionNav > ul > li > a, .sectionNav > ul > li >span.separator  {
        min-height: 2.5rem;
        justify-content: center;
        border-bottom: .2rem solid #EBEBEB;
        padding: 0.25rem .75rem 0.1rem .75rem;
        text-align: center;
        display: inline-flex;
    }
    .sectionNav > ul > li.active > a {
        border-left: none;
    }

    .sectionNav.noImage > ul > li  a {
        border-bottom: .2rem solid #fff;    
    }

    .sectionNav .active > a {
        border-left: none;
        border-bottom: .2rem solid #bbb;
        padding: 0.25rem 1rem 0.1rem 1rem;
    }
    .sectionNav > ul > li.current > a {
        border-left: none;
        border-bottom: .2rem solid var(--red);
        padding: 0.25rem 1rem 0.1rem 1rem;
        background-color: transparent;
    }    

    .sectionNav > ul > li > a:hover, .sectionNav > ul > li > a:active, .sectionNav > ul > li > a:focus {
        background-color: inherit;
        border-bottom: .2rem solid var(--red);
    }

    .sectionNav .hasDrillDown {
        display: inline;
    }
    .sectionNav .hasDrillDown::after {
        content: "\f078";
        font: var(--fa-font-solid);
        display: inline-block;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        position: absolute;
        right: .75rem;
        top: 0;
    }
    .sectionNav > ul > li.hasDrillDown > a, .sectionNav > ul > li.hasDrillDown >span.separator {
        padding: 0.25rem 1.65rem 0.1rem 0.75rem;
    }

    .sectionNav > ul > li > button.showSubmenu {
        display: none;
    }
    .sectionNav .subWrapper {
        position: absolute;
        left: 0;
        padding: 0;
        z-index: 1;
        width: auto;
        min-width: 100%;
    }
    .sectionNav .hasDrillDown .subGrid{
        display: block;
        width: auto;
        max-height: 0rem;
        transition: max-height .3s;
        overflow: hidden    ;
    }
    .sectionNav .hasDrillDown:hover .subGrid{
        display: block;
        width: auto;
        max-height: 40rem;
        transition: max-height .3s;
    }
    .sectionNav .mod-menu__sub a {
        padding: .25rem .75rem;
        white-space: nowrap;
    }
    .sectionNav .mod-menu__sub li.current a {
        border: none;
        border-left: .3rem solid var(--red);
        padding-left: .45rem;
        background-color: var(--veryLightGray);
    }
    .sectionNav .mod-menu__sub a:hover, .sectionNav .mod-menu__sub a:active, .sectionNav .mod-menu__sub a:focus {
        background-color: var(--veryLightGray);
        border-left: .3rem solid var(--red);
        padding-left: .45rem;
    }
}


/* END SECTION NAVIGATION */


/* BEGIN IN-CONTENT MENU */

.articleMenu {
    background-color: var(--navy);
    color: #fff;
}
.articleMenu * {
    box-sizing: border-box;
}
.articleMenu h3 {
    color: #fff;
    margin: 0;
    padding: 0.5rem 1rem;
    background-color: var(--navyDark);
    /* background-image: url(../img/pattern-block-20.png); */
    border-bottom: 1px solid var(--navyLight);

}
.articleMenu a {
    color: #fff;
    text-decoration: none;
}
.articleMenu ul {
    list-style: none;
    padding:0;
    margin: 0;
}
.articleMenu ul li {
    padding: 0.25rem 1rem;
    border-bottom: 1px solid var(--navyLight);
}
.articleMenu ul li:last-child {
    border-bottom:none;
}
@media only screen and (min-width: 1024px) {
    .articleMenu {
        float:right;
        margin-left: 1rem;
    }
}
@media only screen and (min-width: 1440px) {
    .articleMenu {
        float:right;
        margin-left: 2rem;
    }
}

/* END IN-CONTENT MENU */



/* BEGIN CONTENT STYLES */

.backgroundRed {
    background-color: var(--red);
}
.backgroundNavy {
    background-color: var(--navy);
}
.backgroundNavyDark{
    background-color: var(--navyDark);
}
.backgroundNavy a, .backgroundRed a, .backgroundNavyDark a {
    color: #ffffff;
}
.backgroundBlue {
    background-color: var(--lightBlue);
}
.backgroundGray {
    background-color: var(--SWCCgray);
}
/* .backgroundLightGray {
background-color: #eeeeee;
} */
.backgroundWhite {
    background-color: #ffffff;
}
.backgroundPattern{
    background-image: url('../img/pattern-block-20.png');
}

.contentContainer {
    grid-template-columns: minmax(.6rem, auto) minmax(auto,1024px) minmax(.6rem, auto);
}

.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; height: auto; }
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:none; }

@media only screen and (min-width: 1440px) {
    .contentContainer {
        grid-template-columns: minmax(.6rem, auto) minmax(auto,1440px) minmax(.6rem, auto);
    }   
}
.com-content-article, .com-content-category {
    margin-bottom: 2rem;
}
@media only screen and (min-width: 768px) {
    .hasRightColumn {
        display: grid;
        gap: 1rem;
        grid-template-columns: 2fr 1fr;
    }
    .hasRightColumn.colWidth25 {
        grid-template-columns: 3fr 1fr;
    }
    .hasRightColumn.colWidth33 {
        grid-template-columns: 2fr 1fr;
    }
    .hasRightColumn.colWidth50 {
        grid-template-columns: 1fr 1fr;
    }
}
.marginBottomNone {
    margin-bottom:0;
}
.marginTopNone {
    margin-top:0;
}
figure, figure img {
    max-width: 100%;
    padding: 0;
    margin: 0;
}
.halfFull {padding: 0;}
.halfFull figure {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}
.halfFull figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.halfPadded {
    padding:2rem;
    width: 100%;
}
.halfPadded.noPaddingTop {
    padding-top: 0;
}
.halfPadded.noPaddingBottom {
    padding-bottom: 0;
}

.halfPadded h3:first-child, .halfPadded h2:first-child {
    margin-top: 0;
}
.halfLeftMargin, .halfRightMargin {
    box-sizing: border-box;
}

@media only screen and (min-width: 1024px) {

    .dividerLine .halfLeftMargin {
        border-right: 1px solid #ddd;
    }

    .halfLeftMargin {
        max-width: 552px;
        margin-left: auto;
        margin-right: 0;
    }
    .halfRightMargin {
        max-width: 552px;
        margin-left: 0;
        margin-right: auto;
    }
}

@media only screen and (min-width: 1440px) {
    .halfLeftMargin, .halfRightMargin {
        max-width: 760px;
    }
}

.navyBackground {
    background-color: var(--navy);
    color: #fff;
}
.navyBackground h2, .navyBackground h3 {
    color:#5FB4E5;
}
.navyBackground a {
    color:#5FB4E5;
}
.redBackground {
    background-color: var(--red);
    color: #fff;
}
.redBackground a {
    color: #fff;
}

.introText {
    font-size: 1.3rem;
    font-family:'Avenir Next LT W01 Bold';
    color:#757575;
}

.colorBlock {
    display: block;
    background-color: var(--navy);
    padding: 1rem;
    font-family: 'AvenirNextLTW01-BoldCn';
}
.colorBlock.navy {
    color:#fff;
    background-color: #005DB3;
    box-shadow: inset 0 0 6em var(--navy);
}
.colorBlock.navy a {
    color:#C7E4FF;  
}
.colorBlock a {
    text-decoration: underline; 
}
.colorBlock.gray {
    color:#333;
    background-color: #eee;
    box-shadow: inset 0 0 6em #a3a8ac;
}
.colorBlock.lightGray {
    background-color:#ededed;
}


.findAProgram {
    background-color: #ededed;
    padding: 1.5rem;
    margin-top: 0;
    margin-bottom: auto;
}
.findAProgram h2 {
    font-size: 1.5rem;
}
.findAProgram .inputWrapper {
    width: 100%;
    box-sizing: border-box;
    /* border: 1px solid #757575;
    background-color: #fff; */
    position: relative;
    margin-bottom: 1rem;
}
.inputWrapper.inlineButton input[type="text"] {
    border: solid 1px #757575;
    padding: 0.5rem;
    padding-right:3rem;
    box-sizing: border-box;
    width: 100%;
    font-size: 1.25em;
}
.inputWrapper button {
    border: none;
    background-color: transparent;
    color: var(--red);
    font-size: 1.25em;
    padding: 0;
    display: inline-block;
    width: 56px;
    box-sizing: border-box;
    position: absolute;
    right: 0;
    height:100%;
}
.findAProgram .clear {
    position: relative;
    right:0;
}

.grid-2col {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}

.grid-3col {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}

.grid-autoColumns {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, auto));
}
.grid-autoColumns.evenColumns {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.grid-column-gap {
    gap: 1rem;
}

@media only screen and (min-width: 768px) {
    .grid-2col {
        grid-template-columns: 1fr 1fr;
        gap: 1rem;
    }
    .grid-3col {
        grid-template-columns: 1fr 1fr 1fr;
        gap: 1rem;
    }
}
@media only screen and (min-width: 1024px) {
    .grid-2col {
        gap: 2rem;
    }
    .grid-3col {
        gap: 2rem;
    }
}

.contentColumnGrid {
    display: grid;
    gap: 1rem;
}
.columnTemplate2fr1fr {
    grid-template-columns: 1fr;
}

@media only screen and (min-width: 768px) {
}
@media only screen and (min-width: 1024px) {
    .columnTemplate2fr1fr {
        grid-template-columns: 2fr 1fr;
    }
}
@media only screen and (min-width: 1440px) {
}

.paddingBottom {
    padding-bottom: 1rem;
}
.paddingBottomExtra {
    padding-bottom: 2rem;
}

.marginBottom {
    margin-bottom: 1rem;
}
.marginBottomExtra {
    margin-bottom: 2rem;
}
.marginTop {
    margin-top: 1rem;
}
.marginTopExtra {
    margin-top: 2rem;
}

.changeView {
    text-align: center;
}
.changeView button {
    border:solid 1px #ddd;
    background-color: #e6e6e6;
    color:#333;
    margin:0 0 1rem 0;
    padding:.5rem;
    width:3rem;
}
.changeView button.active {
    background-color: #ffffff;
    box-shadow: inset 0 0 .75rem rgba(0,0,0,.1);
}
.changeView button:hover, .changeView button:focus {
    border:solid 1px #757575;
    box-shadow: inset 0 0 .75rem rgba(0,0,0,.1);
}


form.getInfo {
    width: 100%;
}
.getInfo input, .getInfo textarea {
    width: 100%;
    margin-bottom: 1rem;
    box-sizing: border-box;
    padding: .5rem;
}
.getInfo textarea {
    box-sizing: border-box;
}




/* admissionsOfficeInfo */

.admissionsOfficeInfo .fa-solid, .admissionsOfficeInfo .fa-regular {
    display: inline-block;
    width: 2rem;
    color:var(--red);
}


.admissionsOfficeInfo .socialIcon {
    font-size: 3rem;
    height: 4rem;
    width: 4rem;
    display: inline-block;
    text-align: center;
    margin-right: 1rem;
    line-height: 4rem;
}

.admissionsOfficeInfo a.facebook{
    background-color:#4267B2;
    color: #fff;
}
.admissionsOfficeInfo a.twitter{
    background-color:#1DA1F2;
    color: #fff;
}
.admissionsOfficeInfo a.x-twitter{
    background-color:#000000;
    color: #fff;
}
.admissionsOfficeInfo a.instagram{
    background-color:#C13584;
    color: #fff;
}
.admissionsOfficeInfo a.youtube{
    background-color:#FF0000;
    color: #fff;
}
.admissionsOfficeInfo a.snapchat{
    color:#000;
    background-color: #FFFC00;
    border-radius: 10%;
}

article ul, .contentArea ul, ul.chevrons, .newsArticleBody ul {
    list-style: none;
}
article ul li, .contentArea ul li, .contentArea ul.chevrons li, ul.chevrons,.newsArticleBody ul li {
    position: relative;
    margin-bottom: .5rem;
}
article ul:not(.sampleCourses,.tags,.pagination,.nav,.mod-list,.sigFreeContainer) li::before, .contentArea ul:not(.sampleCourses) li::before, .contentArea ul.chevrons li::before, ul.chevrons li::before, .newsArticleBody ul li::before {
    content: "\f101";
    font: var(--fa-font-solid);
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    color:var(--red);
    margin-right: .5rem;
    position: absolute;
    left: -1.5rem;
    top: .25rem;
}
article ul.noBullets li::before {
    content: '';
}

.newsArticleBody ul li::before{
    font-size:1rem;
    margin-top: .5rem;
}

ul.hasIcons{
    list-style: none;
}
ul.hasIcons li {
    position: relative;
}

ul.hasIcons li::before {
    content: "\f101";
    font: var(--fa-font-solid);
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    color:var(--red);
    margin-right: .5rem;
    position: absolute;
    left:-1.5rem;
}

ul.hasIcons li.phone::before {
    content: "\f095 ";
}
ul.hasIcons li.paper-plane::before {
    content: "\f1d8";
    font: var(--fa-font-regular);
}
ul.hasIcons li.calendar-plus::before {
    content: "\f271";
    font: var(--fa-font-regular);
}
ul.hasIcons li.circle-info::before {
    content: "\f05a";
}
ul.hasIcons li.message::before {
    content: "\f27a";
    font: var(--fa-font-regular);
}
ul.loose li {
    margin-bottom: 1rem;
}


.inlineAside {
    width: 100%;
    padding: 1rem;
    display: block;
    margin-bottom: 1rem;
    box-sizing: border-box;
    z-index: 2;
    position: relative;
}

.applyNowDiv {
    background-color: #EBEBEB;
    text-align: center;
}
.applyNowDiv .button {
    margin-left:auto;
    margin-right:auto;
    margin-top: 1rem;
}

.lastDollarDiv {
    background-color: var(--navy);
}
.lastDollarDiv strong {
    color: #5FB4E5;
    font-family:'Avenir Next LT W01 Bold';
    font-size: 1.5rem;
}


@media only screen and (min-width: 768px) {
    .inlineAside {
        width: 40%;
        margin-bottom: 1rem;
        margin-left: 1rem;
        float: right;
        clear: right;
    }
}
@media only screen and (min-width: 1024px) {

}
@media only screen and (min-width: 1440px) {
    .inlineAside {
        width: 30%;
        margin-left: 2rem;
    }
}


.wantMoreInfoDiv {
    background-color: #EBEBEB;
    padding: 1rem;
    text-align: center;
    margin-left:auto;
    margin-right:auto;
    width: auto;
    display: inline-block;
}
.wantMoreInfoDiv .button {
    display: inline-block;
    margin-left:1rem;
}

.sampleCourses {
    list-style: none;
    padding: 0;
    margin: auto 0 2rem 0;
}
.sampleCourses li {
    padding: .5rem;
    border-bottom: 1px solid #ddd;
    display: table;
    width: 100%;
    margin-bottom: 0 !important;
    align-self:first baseline;
    box-sizing: border-box;
}
.sampleCourses .crn {
    display: table-cell;
    width: 100px;
}

.courseDescription {
    display: table-cell;
}

a.infoIcon {
    color:var(--red);
    text-decoration: none;
    font-size: 1.2em;
}

#coursesModal {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    align-items: center;
    justify-content: center;
}
.courseModalBackground {
    position: absolute;
    height: 100%;
    width: 100%;
    background-color: rgba(0,0,0,.8);
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;

}
.courseNumber {
    font-size: 1.2rem;
    font-family:'AvenirNextLTW01-BoldCn';
}
.courseTitle {
    font-size: 1.2rem;
    font-family:'AvenirNextLTW01-BoldCn';
}
.courseDesc {
    text-align: left;
}

#coursesModal.show {
    display: flex;
}

.courseModalWrapper {
    font-size: 1rem;
    color: #333;
    background-color: #fff;
    box-sizing: border-box;
    padding:1rem;
    position: relative;
    margin: 1rem;
    border: solid 2px #757575;
}
.courseModalWrapper div {
    margin-bottom: 1rem;
}
.closeCourseModal {
    position: absolute;
    right: 1rem;
    top: 1rem;
}



@media only screen and (min-width: 768px) {
    .sampleCourses {
        columns: 2;
    }
    .courseModalWrapper {
        max-width: 90%;
    }
}
@media only screen and (min-width: 1024px) {
    .courseModalWrapper {
        max-width: 75%;
    }

}
@media only screen and (min-width: 1440px) {
    .courseModalWrapper {
        max-width: 60%;
    }
}



.programEmpGrid {
    display: grid;
    grid-template-columns: 1fr;
    width: auto;
    margin: 0 auto;
    text-align: left;
}

.programEmpGrid article {
    padding:1rem;
}
.programEmpGrid figure {
    width: 100%;
}
.programEmpGrid img {
    width: 100%;
    height:100%;
    object-fit: cover;
    object-position: center;
}

@media only screen and (min-width: 768px) {
    .programEmpGrid {
        grid-template-columns: 1fr;
        margin: 1rem;
        gap: 2rem;
    } 
    .programEmpGrid h3, .programEmpGrid p {
        margin: 0;
    }
    .programEmpGrid article {
        padding:0;
        display: grid;
        grid-template-columns: 200px auto;
        column-gap: 1rem;
        row-gap: .75rem;
    }
    .programEmpGrid article figure {
        grid-row: 1/5;
        height:230px;
        overflow: hidden;
    }

}
@media only screen and (min-width: 1024px) {
    .programEmpGrid {
        grid-template-columns: 1fr 1fr;
        margin: 1rem;
        gap: 2rem;
        justify-content: center; 
    } 
    .programEmpGrid article {
        padding:0;
        display: grid;
        grid-template-columns: 175px auto;
        column-gap: 1rem;
    }
    .programEmpGrid article figure {
        height:210px;
        overflow: hidden;
    }

}
@media only screen and (min-width: 1440px) {
    .programEmpGrid {
        grid-template-columns: repeat(auto-fit, minmax(400px, 500px));
        margin: 1rem auto;
        gap: 2rem;
    } 

}

.contentWithMargins input[type="text"], .contentWithMargins textarea {
    border: solid 1px #757575;
    width: 100%;
    box-sizing: border-box;
    padding: 0.75rem;
    margin: 0.5rem 0;
}

.relatedArticlesWrapper > article {
    display:inline-block;
    width: 250px;
    text-align: left;
    background-color: #fff;
    margin:0 1rem;
    border: solid 1px #ddd;
}
.relatedArticlesWrapper a {
    text-decoration: none;
}
.relatedArticlesWrapper figure {
    width: 100%;
    height:200px;
    object-fit: cover;
    margin-bottom: .5rem;
}
.relatedArticlesWrapper img {
    width: 100%;
    height:100%;
    object-fit: cover;
}
.relatedArticlesWrapper h3{
    margin: .5rem 1rem;
    color:#333333;
}
.relatedArticlesWrapper p {
    margin: 0 1rem 1rem 1rem;

    color:var(--red);
    text-align: right;
}


.mediaGrid {
    display: grid;
    background-color: #eee;
    margin-top: 2rem;
    margin-bottom: 1rem;
}
.mediaGrid figure {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.mediaGrid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.mediaGrid .quickFact {
    text-align: center;
    font-size: 1.2rem;
    box-sizing: border-box;
    padding: 2rem;
    display: flex;
    justify-content: center;
    flex-direction: column;
    height: 100%;
    box-shadow: inset 0 0 2rem rgba(0,0,0,.5);
}
.mediaGrid .quickFact p {
    margin: 0;
}
.mediaGrid .bigNumber {
    font-family:'Avenir Next LT W01 Bold';
    font-size: 2rem;
    display: block;
}
.mediaGrid .navyBackground .bigNumber  {
    color:#5FB4E5;
}


@media only screen and (min-width: 768px) {
    .mediaGrid6 {
        grid-template-columns: 1fr 1fr;
    }
    .mediaGrid .bigNumber {
        font-size: 2rem;
    }
}
@media only screen and (min-width: 1024px) {
    .mediaGrid6 {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .mediaGrid .bigNumber {
        font-size: 2rem;
    }
}
@media only screen and (min-width: 1440px) {
    .mediaGrid .bigNumber {
        font-size: 4rem;
    }
}

.videoThumb {
    position: relative;
}
.videoThumb::before {
    content: "\f144";
    font: var(--fa-font-solid);
    position: absolute;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    color: #fff;
    font-size: 4rem;
    text-shadow: 0 0 20px rgba(0,0,0,.5);
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    opacity: .6;
    transition: all ease .3s;
}
.videoThumb:hover::before {
    opacity: 1;
    box-shadow: inset 0 0 2rem rgba(0,0,0,.5);

}

/* BEGIN NEWS ARTICLES */
.newsArticle * {
    box-sizing: border-box;
}
.newsHero.heroBottom{
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}
.newsArticleHeadline {
    margin-top:.5rem;
    font-size: 1.75rem;
}
.newsArticle .page-header {
    margin: auto;
    max-width: 720px;
}

.article-img-full-width {
	width: 100%;
	height:auto;
	margin-bottom:1em;
}
.article-img-left {
	border: none;
	float: left;
	margin: 0 1em 1em 0;
	max-width: 50%;
	height:auto;
	padding: 0;
}
.article-img-right {
	border: none;
	float: right;
	margin: 0 0 1em 1em;
	max-width: 50%;
	height:auto;
	padding: 0;
}

.accordion-toggle {
    cursor: pointer;
    margin: 0 0 0 16px;
    position: relative;
  }
  
  .accordion-toggle::before {
    content: "";
    cursor: pointer;
    display: block;
    border: solid 6px transparent;
    border-left-color: #cf102d;
    left: -16px;
    margin: 0;
    position: relative;
    top: 1.5rem;
    width: 0;
    height: 0;
  }
  
  .accordion-content {
    /*display: none;*/
    background-color: #eee;
    padding: .1em 1em;
    margin: 0.5em 0;
  }
  
  .accordion-content.default {
    display: block;
  }
  
  /* .accordion-toggle.active {display: none;} */
  
  .accordion-toggle.active::before {
    border-left-color: transparent;
    border-top-color: #cf102d;
  }



.item-date {
    font-size: .8rem;
    font-family:'AvenirNextLTW01-Condens_721302';
}
.newsArticle .item-date {
    max-width: 720px;
    margin: 0 auto 1.3rem auto;
}

.newsArticle .article-img-left, .newsArticle .article-img-right {
	float: none;
    margin: 0 auto 1rem auto;
	max-width: 100%;
}

figure.item-image {
    width: 100%;
    margin: 0 0 1rem 0;
}
figure.item-image img, .article-img-left, .article-img-right,.article-img-left img, .article-img-right img {
    width: 100%;
    height: auto;
}
figure.item-image,.article-img-left, .article-img-right  {
    width: 80%;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
}
figcaption {
    font-family:'AvenirNextLTW01-Condens_721302';
    border-bottom:1px solid var(--lightGray);
    padding-bottom:.5rem;
    margin-top: .5rem;
    font-size: .8rem;
    clear: both;
}

.newsArticleBody p, .newsArticleBody ul, .newsArticleBody ol, .newsArticleBody div,.newsArticleBody h2, .newsArticleBody h3, .newsArticleBody figure {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}

.newsArticleBody figure img {
    width: 100%;
    height: auto;
}

@media only screen and (min-width: 480px) {
    .newsArticleHeadline {
        font-size: 2rem;
    }
    figure.item-image,.article-img-left, .article-img-right  {
        width: 100%;
        max-width: 480px;
        margin-left: auto;
        margin-right: auto;
    }
    figcaption {
        font-size: .9rem;
    }
}

@media only screen and (min-width: 768px) {
    .newsArticleHeadline {
        font-size: 2.25rem;
    }
    .newsArticleHeadline {
        margin-top:.5rem;
        font-size: 1.75rem;
    }
    figure.item-image.right, .article-img-right {
        width: 50%;
        float:right;
        margin: 0 0 1rem 1rem;
    }
    figure.item-image.left, .article-img-left {
        width: 50%;
        float:left;
        margin: 0 1rem 1rem 0;
    }
    .newsArticle .article-img-left {
        float: left;
        margin: 0 1rem 1rem 0;
        max-width: 50%;
    }
    .newsArticle .article-img-right {
        float: right;
        margin: 0 0 1rem 1rem;
        max-width: 50%;
    }
        
}
@media only screen and (min-width: 1024px) {
    .newsArticleHeadline {
        font-size: 2.5rem;
    }
    figure.item-image.right, .article-img-right  {
        width: 40%;
        margin: 0 0 1rem 1rem;
    }
    figure.item-image.left, .article-img-left {
        width: 40%;
        margin: 0 1rem 1rem 0;
    }
    .newsArticleBody{
        font-size: 1.2rem;
    }
    .item-date {
        font-size: 1rem;
    }

}
@media only screen and (min-width: 1440px) {
    .newsArticleHeadline {
        font-size: 3rem;
    }
    figure.item-image.right, .article-img-right {
        width: 33%;
        margin: 0 0 2rem 2rem;
    }
    figure.item-image.left, .article-img-left {
        width: 33%;
        margin: 0 2rem 2rem 0;
    }
    .newsArticleBody{
        font-size: 1.3rem;
    }
    .newsArticleBody p, .newsArticleBody ul, .newsArticleBody ol, .newsArticleBody div,.newsArticleBody h2, .newsArticleBody h3 {
        max-width: 1024px;
    }
    .item-date {
        font-size: 1rem;
    }
    .newsArticle .item-date {
        max-width: 1024px;
        margin: 0 auto 1.3rem auto;
    }
    .newsArticle .page-header {
        max-width: 1024px;
    }
    .newsHero.heroBottom{
        max-width: 1024px;
    }
}
/* END NEWS ARTICLES */
.com-content-category-blog__item {
    border-top: 1px solid var(--SWCCgray);
    margin-bottom: 2rem;
}
.com-content-category-blog__item:first-child {
    border-top: none;
    margin-bottom: 2rem;
}

.com-content-category-blog .category-desc {
    border-bottom: 1px solid var(--SWCCgray);
    margin-bottom: 2rem;
    padding-bottom: 1rem;
}

.news-blog * {
    box-sizing: border-box;
}
.news-blog img {
    max-width: 100%;
}
.news-blog h1, .news-blog h2 {
    text-wrap: balance;
    font-size: 1.5rem;
    font-family: 'AvenirNextLTW01-Heavy';
    margin-top: 0;
}
.articleContainer {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    /* border-top: 1px solid var(--SWCCgray); */
    padding-top: 1rem;
    margin-bottom: 1rem;
}
.news-thumb {
    /* border: solid 5px green; */
    width: 100%;
    max-width: 100%;
}

.articleLink {
    color: var(--red);
    text-decoration: none;
}
.citation {
    font-family:'AvenirNextLTW01-Condens_721302';
    font-size: .8em;
}


@media only screen and (min-width: 480px) {

}
@media only screen and (min-width: 768px) {
    .news-thumb {
        grid-area: articleImage;
        grid-row: 1/2;
    }
    .articleBody {
        grid-area: articleBody;
        grid-column: 1/2;
        grid-row-start: 1/2;
    }
    .articleWithImage {
        grid-template-columns: 3fr 1fr;
        grid-template-areas: "articleBody articleImage";
        column-gap: .5rem;
    }
    .news-blog h2 {
        font-size: 1.75rem;
    }
}
@media only screen and (min-width: 1024px) {
    .articleWithImage {
        grid-template-columns: 3.5fr 1fr;
        column-gap: 1rem;
    }
    .news-blog h2 {
        font-size: 2rem;
    }
}
@media only screen and (min-width: 1440px) {
    .articleWithImage {
        grid-template-columns: 4fr 1fr;
    }
    .news-blog h2 {
        font-size: 2.25rem;
    }
}
.swMag dl.fields-container, .swMag ul.fields-container {
    background-color: #f5f5f5;
    padding: 1em;
    clear: both;
    list-style: none;
}

/* BEGIN NEWS BLOG */

/* END NEWS BLOG */

/* ==================
Pagination
==================  */

.counter{
text-align: center;
}
.pagination {
    /* display: flex; */
    display: block;
    list-style: none;
    padding-left: 0;
    text-align: center;}
.page-item {
display:inline-block;
}
.page-link {
    background-color: #fff;
    border: 1px solid #dfe3e7;
    display: block;
    position: relative;
    text-decoration: none;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out
}
@media (prefers-reduced-motion:reduce) {
    .page-link {
        transition: none
    }
}
.page-link:hover {
    border-color: #dfe3e7;
    z-index: 2
}
.page-link:focus,.page-link:hover {
    background-color: #003a70;
    color: #fff;
}
.page-link:focus {
    box-shadow: 0 0 0 .25rem rgba(0,0,0,.25);
    outline: 0;
    z-index: 3
}
.page-item:not(:first-child) .page-link {
    margin-left: -1px
}
.page-item.active .page-link {
    background-color: #ddd;
    border-color: #ddd;
    color: #003a70;
    z-index: 3
}
.page-item.disabled .page-link {
    background-color: #fff;
    border-color: #dfe3e7;
    color: #6d757e;
    pointer-events: none
}
.page-link {
    padding: .375rem .75rem
}
.page-item:first-child .page-link {
    border-bottom-left-radius: .25rem;
    border-top-left-radius: .25rem
}
.page-item:last-child .page-link {
    border-bottom-right-radius: .25rem;
    border-top-right-radius: .25rem
}
.pagination-lg .page-link {
    font-size: 1.25rem;
    padding: .75rem 1.5rem
}
.pagination-lg .page-item:first-child .page-link {
    border-bottom-left-radius: .3rem;
    border-top-left-radius: .3rem
}
.pagination-lg .page-item:last-child .page-link {
    border-bottom-right-radius: .3rem;
    border-top-right-radius: .3rem
}
.pagination-sm .page-link {
    font-size: .875rem;
    padding: .25rem .5rem
}
.pagination-sm .page-item:first-child .page-link {
    border-bottom-left-radius: .2rem;
    border-top-left-radius: .2rem
}

.pagination-sm .page-item:last-child .page-link {
    border-bottom-right-radius: .2rem;
    border-top-right-radius: .2rem
}  
ul.pager {
    clear: both;
    list-style: outside none none;
    margin: 2em 0 0 0;
    padding: 0;
}
ul.pager li.previous a,ul.pager li.next a {
    padding:5px 20px;
    border:solid 1px #ddd;
    border-radius:6px;
    display:inline-block;
    font-family:'AvenirNextLTW01-BoldCn';
    text-decoration:none;
    color:#003a70;
    border-color:#ddd;
    background: #fff;
}
ul.pager li.previous a:hover, ul.pager li.next a:hover {
    background: #ddd;
}
ul.pager li.previous a {
    float: left;
}
ul.pager li.next a
{
    float: right;
}


/* END CONTENT STYLES */


/* BEGIN IMAGE GRIDS */
.imageGrid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}
.imageGrid a {
    display: grid;
    grid-template-columns: 1fr;
    color: #fff;
    text-decoration: none;
}
.imageGrid figure {
    margin: 0;
    padding: 0;
    grid-column: 1/-1;
    grid-row: 1/-1;
    overflow: hidden;
    height: 300px;
}
.imageGrid img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
    transition: all .5s;
}
.imageGrid a:hover img, .imageGrid a:focus img {
    transform: scale(1.1);
}
.imageGrid a:hover p, .imageGrid a:focus p {
    background-color: rgba(0, 0, 0, 1);
}

.imageGrid a p {
    margin: 0;
    padding: .5rem;
    grid-column: 1/-1;
    grid-row: 1/-1;
    align-self: self-end;
    background-color: rgba(0, 0, 0, 0.6);
    font-family:'AvenirNextLTW01-BoldCn';
    font-size: 1.25rem;
    position: relative;
    transition: all .5s;
}
.imageGrid.hasLinkArrow a p {
    padding-right: 2rem;
}

.imageGrid.hasLinkArrow p::after {
    content: "\f35a";
    font: var(--fa-font-solid);
    position: absolute;
    right: .5rem;
    bottom: .5rem;
}
.noArrow::after, .noArrow p::after {
    content:unset !important;
}
.programGrid {
    margin-bottom: 2rem;
}
.imageGrid .colorBlock a {
    text-decoration: underline; 
}

.spanAll {
    grid-column: 1/-1;
}


@media only screen and (min-width: 768px) {
    .imageGrid {
        display: grid;
        grid-template-columns: 1fr  1fr;
        gap: 1rem;
    }
}
@media only screen and (min-width: 1024px) {
    .imageGrid {
        display: grid;
        grid-template-columns: 1fr  1fr 1fr;
        gap: 1.5rem;
    }
}
@media only screen and (min-width: 1440px) {
    .imageGrid {
        display: grid;
        grid-template-columns: 1fr  1fr 1fr  1fr;
        gap: 2rem;
    }
}

/* END IMAGE GRIDS */

/* BEGIN PROGRAM LIST VIEW */

.programListView {
    display: grid;
    margin-bottom: 1rem;
}
.mceContentBody .programListView.hidden {
    display: block !important;
}
.programListView ul {
    list-style: none;
}
.programListView li {
    margin-bottom: .5rem;
    position: relative;
}
.programListView li::before {
    /* removed font- based rules */
    content: "\f101";
    font: var(--fa-font-solid);
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    color:var(--red);
    margin-right: .5rem;
    position: absolute;
    left:-1.5rem;
}

@media only screen and (min-width: 768px) {
    .programListView {
        grid-template-columns: 1fr 1fr;
        gap: 1rem;
    }
}
@media only screen and (min-width: 1024px) {
    .programListView {
        max-width: 1024px;

        margin-left: auto;
        margin-right: auto;
        gap: 2rem;
        font-size: 1.2em;
    }
}
@media only screen and (min-width: 1440px) {
}



/* END PROGRAM LIST VIEW */


/* BEGIN BUTTONS AND LINKS WITH BUTTON STYLE */
.red {
    color:var(--red);
}
.green {
    color:#00905e;
}
.navy {
    color:var(--navy);
}
.blue {
    color: #5FB4E5;
}
.white {
    color:#ffffff;
}
.leftAlign {
    text-align: left;
}
.rightAlign {
    text-align: right;
}

.button.autoWidth {display:inline-block;}
.autoWidth {display:inline-block;}

.button.red {background-color: var(--red);border-color:var(--red)}
.button.navy {background-color: var(--navy);border-color:#115085}
.button.blue {background-color: var(--lightBlue);border-color:var(--lightBlue)}
.button.gray {background-color: var(--SWCCgray);border-color:var(--SWCCgray); color:var(--navy);}
.button.lightGray {background-color: var(--veryLightGray);border-color:var(--lightGray); color:var(--red);}
.button.white {background-color: #ffffff;border-color: #ffffff;}
.button.green {background-color: #008A00;border-color: #ffffff}
.button.clear {background-color: transparent;border-color: #ffffff}

.button:hover {background-color: var(--redDark);}
.button.red:hover {background-color: var(--redDark);}
.button.navy:hover {background-color: #115085;}
.button.blue:hover {background-color: #2d93ce;}
.button.gray:hover {background-color: #888c8f;}
.button.lightGray:hover {background-color: var(--lightGray);}
.button.white:hover {background-color: #ffffff;box-shadow: 0 0 1.5em rgba(0,0,0,.5) inset;}
.button.green:hover {background-color: #006e00;}
.button.clear {background-color: rgba(255,255,255,.25)}


.button.red span, .button.red a, .button.navy span, .button.navy a, .button.green span, .button.green a{
  color:#ffffff;
}
.button.white a, .button.white span {color:var(--navy);}
.button span, .button a, a.button {
  color:#ffffff;
  text-decoration: none;
  display: block;
}
.button.sidePadding {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.button span.far, .button span.fas {
  display: inline;
}

.button, .button.red, .ff_elem.bfCustomSubmitButton, .ff_elem.btn-primary, .cf-btn {
    padding: 0.25em;
    border: 2px solid var(--red);
    background-color: var(--red);
    display: block;
    text-align: center;
    font-family: 'AvenirNextLTW01-BoldCn';
    text-decoration: none;
    width: fit-content;
    color:#fff;
    margin: .25em auto;
}
.button a, a.button {
    color:#fff;
    text-decoration: none;
    position: relative;
}
.button.red {
    color:#fff;
    background-color: var(--red);
    border-color: var(--red);
}
.button.green {
    color:#fff;
    background-color: #00905e;
    border-color: #00905e;
}
.button.navy {
    color:#fff;
    background-color: var(--navy);
    border-color: var(--navy);
}
.button.blue {
    color:var(--navy);
    background-color: #5FB4E5;
    border-color: #5FB4E5;
}
.button.borderwhite {
    border-color: #fff;
}
.button.borderRed {border-color: var(--red);}
.button.borderNavy {border-color: var(--navy);}
.button.borderBlue {border-color: var(--lightBlue);}
.button.borderGray {border-color: var(--SWCCgray);}
.button.borderWhite {border-color: #ffffff;}



.button.hasLinkArrow {
    padding-right: 2rem;
}

.button.hasLinkArrow::after {
    content: "\f35a";
    font: var(--fa-font-solid);
    position: absolute;
    right: .5rem;

}

.fullWidthButton {
    width: 100% !important;
    box-sizing: border-box;
}

.picker .picker__footer button {
    float:unset;
}



/* END BUTTONS BUTTONS AND LINKS WITH BUTTON STYLE */



/* BEGIN FOOTER SECTION */

footer {background-color: var(--navy);
color:#fff;
text-align: center;
font-size: .9rem;
background-image: url('../img/footer-background-tall.jpg');
background-position: center;
background-size: cover;
position: relative;
}
footer a {
    color:#fff;
}
footer::before{
    content: '';
    background-color: var(--red);
    border-bottom: solid 1px #fff;
    display: block;
    height: .7rem;
    width: 100%;
    position: absolute;
    top: 0;
}
.footerLogo {
    max-width: 100%;
    width:200px;
}
.footerColumn1 {
    padding: 2.8rem 1rem 0 1rem;
    grid-area: footerColumn1;
}

.footerColumn2, .footerColumn3, .footerColumn4, .footerColumn5  {
    padding: 0rem 1rem 0 1rem;
}
.footerColumn2  {
    grid-area: footerColumn2;
}
.footerColumn3  {
    grid-area: footerColumn3;
}
.footerColumn4  {
    grid-area: footerColumn4;
}
.footerColumn5  {
    grid-area: footerColumn5;
}

.copyright {
    color:#C7E4FF;
    background-color: #00315e;
    font-size: .6rem;
    text-align: center;
    height: 72px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1em;
    box-sizing: border-box;
    margin-top: 2rem;
    grid-area: copyright;
}
footer h3{
    font-family:'AvenirNextLTW01-Heavy';
    font-size: 1.2rem;
    color: #5FB4E5;
    margin: 1rem 0 .5rem 0;
}
footer h4 {
    font-family:'AvenirNextLTW01-BoldCn';
    font-size: 1rem;
    margin: .5rem 0 .5rem 0;
}
footer p {
    margin: .5rem 0 .5rem 0;
}
footer nav ul {
    padding: 0;
    list-style: none;
    margin:0;
    line-height: 1.5rem;
}

.appStoreButtons {
    display: flex;
    gap: 1em;
    justify-content: center;
    margin-top: 2em;
    margin-bottom: 1.5rem;
    grid-area: appStoreButtons;
}
.appStoreButtons img {width:100px;}

.footerSocialBlock {
    grid-area: footerSocialBlock;
}

.footerSocialIcons {
    display: flex;
    justify-content: center;
    gap: 1em;
    margin-bottom: 1.5rem;
}
.footerSocialIcons a {
    padding: .5rem;
    border: solid 1px #fff;
    background-color: #00315e;
    width:1.5rem;
    height:1.5rem;
    line-height: 1.5rem;
    border-radius: 50%;
    font-size: 1.25rem;
    transition: all ease .3s;
    display: inline-block;
}
.footerSocialIcons a.x img {
    width: 1.4rem;
    height: auto;
    text-align: center;
    position: relative;
    top: -3px;
}

.footerSocialIcons a:hover,.footerSocialIcons a:active,.footerSocialIcons a:focus {
    background-color: #fff;
    color:#00315e;
}
.footerSocialIcons a.facebook:hover,.footerSocialIcons a.facebook:active,.footerSocialIcons a.facebook:focus{
    color:#4267B2;
}
.footerSocialIcons a.twitter:hover,.footerSocialIcons a.twitter:active,.footerSocialIcons a.twitter:focus{
    color:#1DA1F2;
}
.footerSocialIcons a.x-twitter:hover,.footerSocialIcons a.x-twitter:active,.footerSocialIcons a.x-twitter:focus{
    color:#000000;
}
.footerSocialIcons a.instagram:hover,.footerSocialIcons a.instagram:active,.footerSocialIcons a.instagram:focus{
    color:#C13584;
}
.footerSocialIcons a.youtube:hover,.footerSocialIcons a.youtube:active,.footerSocialIcons a.youtube:focus{
    color:#FF0000;
}
.footerSocialIcons a.snapchat:hover,.footerSocialIcons a.snapchat:active,.footerSocialIcons a.snapchat:focus{
    color:#000;
    background-color: #FFFC00;
}

@media only screen and (min-width: 425px) {
    .footerGrid {
        display:grid;
        grid-template-columns: 1fr 1fr;
        grid-template-areas: 
        "footerColumn1 footerColumn1"
        "footerColumn2 footerColumn3"
        "footerColumn4 footerColumn5"
        "appStoreButtons appStoreButtons"
        "footerSocialBlock footerSocialBlock"
    }

}
@media only screen and (min-width: 768px) {
    .footerGrid {
        grid-template-columns: 1fr 1fr 1fr;
        grid-template-areas: 
        "footerColumn1 footerColumn1 footerColumn1"
        "footerColumn2 footerColumn3 footerColumn4"
        "footerColumn2 footerColumn3 footerColumn5"
        "appStoreButtons appStoreButtons appStoreButtons"
        "footerSocialBlock footerSocialBlock footerSocialBlock"
    }

}
@media only screen and (min-width: 1024px) {
    footer {
        background-image: url('../img/footer-background.jpg');
        background-position: center;
        background-size: cover;
        }
    .footerGrid {
        text-align: left;
        grid-template-columns: auto auto auto auto;
        grid-template-areas: 
        "footerColumn1 footerColumn2 footerColumn3 footerColumn4"
        "footerColumn1 footerColumn2 footerColumn3 footerColumn5"
        "footerColumn1 footerColumn2 appStoreButtons appStoreButtons"
        "footerColumn1 footerColumn2 footerSocialBlock footerSocialBlock";
        max-width: 1440px;
        margin: auto;

    }
    .footerColumn1 {
        padding: 2.8rem 1rem 0 2rem;
    }
    .footerColumn1 .columnWrapper {
        border-right: solid 2px #00519C;
        height: 100%;
    }
    
    
    .footerColumn2, .footerColumn3, .footerColumn4  {
        padding: 2.8rem 1rem 0 1rem;
    }
    .footerColumn2 h3:first-child, .footerColumn3 h3:first-child, .footerColumn4 h3:first-child, .footerSocialBlock h3:first-child  {
        margin-top: 0;
    }
    footer nav ul {
        line-height: 1.3em;
    }
    .footerSocialIcons {
        text-align: center;
        justify-content: left;
        margin-bottom: 1rem;
    }
    .appStoreButtons {
        justify-content: left;
        margin-bottom: 0;
    }
    .appStoreButtons img {
        width: 140px;
        margin-bottom:1rem;
    }


}
@media only screen and (min-width: 1440px) {
    .footerGrid {
        text-align: left;
        grid-template-columns: auto auto auto auto auto;
        grid-template-areas: 
        ". footerColumn1 footerColumn2 footerColumn3 footerColumn4 footerColumn5 ."
        ". footerColumn1 footerColumn2 footerColumn3 footerColumn4 appStoreButtons ."
        ". footerColumn1 footerColumn2 footerSocialBlock footerSocialBlock footerSocialBlock ."
        ". footerSpacer footerSpacer footerSpacer footerSpacer footerSpacer .";
    }
    .footerColumn5  {
        padding: 2.8rem 1rem 0 1rem;
    }
    .footerColumn5 h3:first-child  {
        margin-top: 0;
    }
    .footerSocialBlock {
        padding: 0rem 1rem 0 1rem;
    }
    .footerSocialIcons a {
        margin-right: .9rem;
    }
    .appStoreButtons {
        display: block;
        max-width: 200px;
        margin: 1rem;

    }
    .appStoreButtons img {
        width: 140px;
        margin-bottom:1rem;
    }
    .footerSocialIcons {
        display: inline;
    }
    .allSocialLink {
        display: inline;
        margin:1rem;
    }



}

/* ==========================================================================
   Tables
   ========================================================================== */
   table {
	line-height:1.2;
	border-collapse: collapse;
}


table.schedule {
	border: 1px solid #ccc;
	border-bottom:none;
	width:100%;
	font-size:.8em;
}
table.schedule td, table.schedule th {
	padding:3px;
	border-bottom: 1px solid #cccccc;
}

.widetable {
	overflow-x: auto;
	background-image: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #ffffff), color-stop(100%, rgba(255, 255, 255, 0))), -webkit-gradient(linear, 100% 50%, 0% 50%, color-stop(0%, #ffffff), color-stop(100%, rgba(255, 255, 255, 0))), -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #c3c3c5), color-stop(100%, rgba(195, 195, 197, 0))), -webkit-gradient(linear, 100% 50%, 0% 50%, color-stop(0%, #c3c3c5), color-stop(100%, rgba(195, 195, 197, 0)));
	background-image: -webkit-linear-gradient(left, #ffffff, rgba(255, 255, 255, 0)), -webkit-linear-gradient(right, #ffffff, rgba(255, 255, 255, 0)), -webkit-linear-gradient(left, #c3c3c5, rgba(195, 195, 197, 0)), -webkit-linear-gradient(right, #c3c3c5, rgba(195, 195, 197, 0));
	background-image: -moz-linear-gradient(left, #ffffff, rgba(255, 255, 255, 0)), -moz-linear-gradient(right, #ffffff, rgba(255, 255, 255, 0)), -moz-linear-gradient(left, #c3c3c5, rgba(195, 195, 197, 0)), -moz-linear-gradient(right, #c3c3c5, rgba(195, 195, 197, 0));
	background-image: -o-linear-gradient(left, #ffffff, rgba(255, 255, 255, 0)), -o-linear-gradient(right, #ffffff, rgba(255, 255, 255, 0)), -o-linear-gradient(left, #c3c3c5, rgba(195, 195, 197, 0)), -o-linear-gradient(right, #c3c3c5, rgba(195, 195, 197, 0));
	background-position: 0 0, 100% 0, 0 0, 100% 0;
	background-repeat: no-repeat;
	background-color: white;
	background-size: 4em 100%, 4em 100%, 1em 100%, 1em 100%;
	background-attachment: local, local, scroll, scroll;
}


.schedule_header_row, .schedule-header {
	background-color: #cccccc;
	font-weight: bold;
}

table.data_table {
	border: 1px solid #ccc;
	border-bottom:none;
	width:100%;
	font-size:1em;
}
table.data_table td, table.data_table th {
	padding:3px;
	border-bottom: 1px solid #cccccc;
}
.data_table_header_row, .data_table-header {
	background-color: #cccccc;
	font-weight: bold;
}

table.data_table caption {
	color: #cf102d;
	text-align: left;
	line-height: 1.6em;
	margin-top: .5em;
	font-size: 1.3em;
	font-weight: bold;
}

.em1{font-size:1em;}
.em_9{font-size:.9em;}
.em_8{font-size:.8em;}
.em_7{font-size:.7em;}

table.com-content-category__table.category {
    text-align: left;
    line-height: 1.5;
}


/* END FOOTER SECTION */


/* ==========================================================================
   Employee directory
========================================================================== */

.empGridHeader {
display: none;
}

#contactList {
border: 1px solid #cccccc;
width: 100%;
}
#contactList thead {
text-transform: uppercase;
background-color: #eeeeee;
font-size: 1.2em;
font-family: 'AvenirNextLTW01-BoldCn', 'Arial Black';
}

.com-contact, .com-contact-category {
    margin-bottom: 2rem;
}

.cat-list-row {
    text-align: left;
    padding: 0.5em 1em;
    border-bottom: solid 1px #cccccc;
    display:grid;
    grid-template-columns: 75px 1fr;
}

.contact-heading h1, .contact-category h1 {
    margin-top:0;
}

.employee-directory .contact-name, .employee-directory .position, .employee-directory .com-contact__tags, .employee-directory .phone, .employee-directory .email {
grid-column-start: 2;
grid-column-end: 3;
}
.com-contact__tags {
padding: 7px 0;
}

/* .cat-list-row-alternate:nth-child(even) {
    background-color: #eeeeee;
} */

.filterContainer{
margin-bottom: 1em;
}

.imageBlock {
grid-row-start: 1;
grid-row-end: 4;
}

.contact-name, .contact-name a {
color: #cf102d;
font-family: 'AvenirNextLTW01-BoldCn', 'Arial Black';
font-size: 1.3em;
}
.employee-directory .position {
    font-size: .8em;
}
.position {
color: #777777;
font-family: 'AvenirNextLTW01-Condens_721302';
font-weight: normal;
}
.moreLink {
grid-column-start: 1;
grid-row-start: 5;
}
.moreLink .button {
font-size:.75em;
display: inline;
}
.contact-photo {
    display: block;
    float: left;
    margin-right: 1em;
    height: 60px;
    width: 60px;
    overflow: hidden;
    border-radius: 50%;
}
.contact-photo img {
    width: 100%;
    height: auto;
    text-align: center;
    transition: transform .2s ease;
}
.contact-photo img:hover,.contact-photo img:active,.contact-photo img:focus {
    transform: scale(1.2);
}

.department-title{
    background-color:#f2f2f2;
    color: #29366A;
    padding: 3px 5px;
    font-weight:normal;
    font-size:1.5em;
    font-family:'Avenir Next LT W01 Bold';
}
.department-title a{
    text-decoration:underline;
}

.atheltic-department{
    background-color:#003a70;
    color: #fff;
    padding: 3px 5px;
    margin: 0;
    font-weight:normal;
    font-size:1em;
    font-family:'Avenir Next LT W01 Bold';
}

a.back_to_top {
    font-size:.75em;
    font-weight:normal;
    color:blue;
    float:right;
    font-family:'AvenirNextLTW01-Regular';
}

ul.employee-list{
    padding:0;
    margin:0;
    list-style:none;
}
.employee-item{
    border-bottom: 1px dotted #DDDDDD;
    clear: both;
    margin: 10px 0;
    overflow: auto;
    padding-bottom: 10px;
}
.employee-list .employee-item:last-child {
    border-bottom:none;
}

.emp_name{
    margin-bottom: 5px;
    font-size:1.25em;
    font-family:'Avenir Next LT W01 Bold';
}
.employee-details {
    line-height:1.2;
}

.emp-name-mobile {
    clear: both;
    float: left;
}

.employee-list {
    font-family:'AvenirNextLTW01-Regular';
}

.emp_name_large{
    margin-bottom: 5px;
    font-size:2.25em;
    line-height:normal;
}

.employee-directory .position{
    font-size:1em;
    font-style:italic;
}

.employee-directory .position-mobile {
    font-style:italic;
    clear: left;
    float: left;
}

.directory-search {
    background-color: #F2F2F2 !important;
    margin: 10px 0 20px !important;
    padding: 10px !important;
}
.directory-search .inputbox {
    width:60%;
}
.directory-search .button {
    width: 30%;
    display: inline;
        color: #ffffff;
}

.department-filter {
    float:left;
    width:49%;
}
.department-filter select {
    padding:3px;
    width:100%
}
.k2SearchBlock {
    float:left;
    margin-right:10px;
    width:49%
}
.view-schedule {
    margin-top:7px;
}
.view-schedule-mobile {
    margin-top:7px;
    clear: both;
    float: left;
}
.employee-directory .phone-mobile, .employee-directory .email-mobile {
    clear: both;
    float: left;
}

.employee-details {
    font-size:1em;
    padding:0 5%;
}
.employee-details .position{
    font-size:1em;
    font-style:italic;
}


.employee-photo{
    border: 1px solid #CCCCCC;
    float: right;
    margin-bottom: 10px;
    padding: 5px;
width: auto;
max-width: 300px;
height: auto;
}
.employee-photo.mobile{
    margin-left:10px;
}

.com-contact__tags.employee-departments:after {
content: "";
clear: left;
display: block;
}

.employee-departments ul {
    margin:0;
    padding:0;
    list-style:none;
    float:left;
}
.employee-departments ul li {
    margin:0 10px 0 0;
    padding:0;
    float:left;
}


.employee-departments span {
    font-weight:bold;
    float:left;
    margin-right:10px;
}

/* .phone{} */
.employee-details .email{
    font-weight:bold;
    font-size:1em;
}

.employee-details h5 {
    font-size:1em;
    line-height:16px;
    margin: 20px 0 10px 0;
}
.employee-details h5 span {
    font-size:1em;
    color:#333;
    font-style:italic;
    font-weight:normal;
}
/* .employee-details .info {} */

span.last-updated {
font-family: 'AvenirNextLTW01-Condens_721302', sans-serif;
color: #676767;
font-size: .8em;
}

.employee-schedule {
    width:100%;
    font-size:1em;
}
.employee-schedule td {
    vertical-align: top;
    width: 20%;
}
.schedule_office_hours {
    background-color: #FFFFCC;
    font-weight: bold;
}
.back_to_full {
    display: block;
    float: none;
    text-align: center;
    border-bottom: 1px dotted #DDDDDD;
    clear: both;
    margin: 0 0 10px 0;
    padding-bottom: 10px;
}
.clr {
    border: medium none;
    clear: both;
    display: block;
    float: none;
    height: 0;
    line-height: 0;
    margin: 0;
    padding: 0;
}

/* .faculty_schedule {} */
table.faculty_schedule {
    border: 1px solid #cccccc;
    clear: both;
    font-size: .75em;
    width: 100%;
}
/* table.faculty_schedule tr {} */
table.faculty_schedule tr td {
    border: 1px solid #cccccc;
    width: 20%;
    padding: .25em;
    vertical-align:top;
}


/* DEPARTMENT PAGE */
.empBlock {
display: grid;
grid-template-columns: 1fr 3fr;
grid-column-gap: 1em;
column-gap: 1em;
grid-row-gap: 0.25em;
row-gap: 0.25em;
margin-bottom: 2em;
/* background-color: rgb(250, 160, 250); */
}

figure.empImage {
margin:0 0;
grid-row: 1/8;
}

.empImage img {
max-width: 100%;
height: auto;
width: 100%;
}
.empBlock h3 {
margin: 0;
}


@media only screen and (min-width: 480px) {
    .empBlock {
        grid-template-columns: 1fr 2fr;
    }

}
@media only screen and (min-width: 768px) {
    .cat-list-row {
        grid-template-columns: 75px auto 26% 10%;
    }
    #nameHeader {
        grid-column: 1 / span 2;
    }
    #phoneHeader {
        display: none;
    }
    #emailHeader {
        display: none;
    }

    .employee-directory .phone {
        grid-column-start: 3;
        grid-column-end: 4;
        grid-row-start: 1;
    }
    .employee-directory .email {
        grid-column-start: 3;
        grid-column-end: 4;
        grid-row-start: 2;

    }
    .moreLink {
        grid-column-start: 4;
        grid-column-end: 5;
        grid-row-start: 1;
    }

    .employee-details {
        padding:0;
    }

    .empGridHeader {
        display: grid;
        grid-template-columns: 75px auto 26% 10%;
        text-align: left;
        padding: 0.5rem 1rem;
        border-bottom: solid 1px #cccccc;
        text-transform: uppercase;
        background-color: #eeeeee;
        font-size: 1.2em;
        font-family: 'AvenirNextLTW01-BoldCn', 'Arial Black';
    }

    table.faculty_schedule {
        font-size: .875em;
    }

    .departmentList { 
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-column-gap: 1em;;
        column-gap: 1em;
    }

    .empBlock {
        grid-template-columns: 1fr 2fr;
    }


}
  
  
  
@media only screen and (min-width: 1024px) {
    table.faculty_schedule {
        font-size: 1em;
    }

    .cat-list-row {
        grid-template-columns: 75px auto 13% 23% 9%;
    }

    .empGridHeader {
        grid-template-columns: 75px auto 13% 23% 9%;
    }

    #phoneHeader {
        display: initial;
    }

    #emailHeader {
        display: initial;
    }

    #phoneEmailHeader {
        display: none;
    }

    .employee-directory .email {
        grid-column-start: 4;
        grid-column-end: 5;
        grid-row-start: 1;

    }

    .moreLink {
        grid-column-start: 5;
        grid-column-end: 6;
        grid-row-start: 1;
    }

    .empBlock {
        grid-template-columns: 1fr 2fr;
    }


}


ul.tags {
    display: inline;
    list-style: none;
    padding: 0;
    margin: 0;
}

ul.tags li {
    display: inline;
    margin-right: .25em;
}

ul.tags li a {
    text-decoration: none;
    background-color: #003a70;
    color: #ffffff;
    padding: 3px 6px;
    border-radius: 1em;
    line-height: 1em;
    white-space: nowrap;
}

ul.tags li a:hover, ul.tags li a:active, ul.tags li a:focus {
    background-color: #115085;
}

a.skip-link {
	position:absolute;
	left:-1000px;
	top:-1000px;
	width:1px;
	height:1px;
	text-align: left;
	overflow:hidden;
}
a.skip-link:focus, a.skip-link:active, a.skip-link:hover {
	position:absolute;
	left:0;
	top:0;
	width:auto;
	height:auto;
	overflow:visible;
	background-color:#FF3;
	background: rgba(0, 0, 0, 0.6) none repeat scroll 0 0;
	color: #fff;
	display: block;
	padding: 1px 10px 2px;
	text-decoration: none;
	z-index:10;
}


/* =========================
HOME PAGE
========================= */

.homeButtonsWrapper{
    background-color: var(--navy);
    margin-bottom: .6rem;
}
.homeButtons {
    display: grid;
    gap: 1rem;
    width: 100%;
    box-sizing: border-box;
    padding: 1rem;
}
.homeButtons a {
    display: block;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
    border: solid 3px #fff;
    font-size: 1.5rem;
    background-color: #005db3;
    transition: background-color .2s;
}
.homeButtons a:hover, .homeButtons a:active, .homeButtons a:focus {
    background-color: var(--navyDark);
    box-shadow: 0 0 10px rgba(0 0 0 / 0.25);
}
.homeButtons .apply {
    background-color: var(--red);
}
.homeButtons a.apply:hover, .homeButtons a.apply:active, .homeButtons a.apply:focus {
    background-color: var(--redDark);
    box-shadow: 0 0 10px rgba(0 0 0 / 0.25);
}

@media only screen and (min-width: 480px) {

}
@media only screen and (min-width: 768px) {
    .homeButtons {
        grid-template-columns: 1fr 1fr;
        gap: 1.5rem;
        margin-bottom: 0    ;
        padding: 2rem; 
    }
}
@media only screen and (min-width: 1024px) {
    .homeButtons {
        grid-template-columns: 1fr 1fr 1fr 1fr;
        gap: 2rem;
        margin-bottom: 0;
        padding: 2rem; 
        background-color: var(--navy);
        font-size: 1.75rem;
    }
    .homeButtonsWrapper{
        margin-bottom: 0;
    }
}

.homePageVideo {
    position: relative;
}
.homePageVideo > .custom {
    /* display: grid; */
    display: block;
}

.videoWrapper {
    grid-row: 1 / -1;
    grid-column: 1 / -1;
}
.tellUsModule * {
    box-sizing: border-box;
}
.tellUsModule a {
    color: var(--lightBlue);
}
.tellUsModule select:checked {
    background-color: var(--navyLight);
}

.tellUsModule {
    background-color: var(--navy);
    width: auto;
    padding: .5rem;
    color: #fff;
    grid-row: 1 / -1;
    grid-column: 1 / -1;
    z-index: 1;
    justify-self: center;
    height: auto;
    align-self: end;
    text-align: center;
}
.tellUsModule h2 {
    margin: 0;
    text-align: center;
    color:var(--lightBlue);
    font-size: 1.5rem;
}
.tellUsModule select {
    padding: 0.25rem;
    border: 1px solid var(--navy);
    display: block;
    width: auto;
    max-width: 100%;
    margin: 0.5rem auto;
}
.tellUsModule button {
    padding: 0.25rem 0.5rem;
    background-color: var(--red);
    color: #fff;
    border: 1px solid #fff
}

@media only screen and (min-width: 480px) {
    .tellUsModule {
        padding: 1rem;
    }
    .tellUsModule h2 {
        font-size: 1.75rem;
    }
    .tellUsModule p {
        margin: 0;
    }
}
@media only screen and (min-width: 768px) {
    .homePageVideo > .custom {
        display: grid;
    }
    .tellUsModule {
        background-color: hsla(209,100%,20%,0.8);
    }
    .tellUsModule select {
        display: inline;
        margin: 0.5rem .25rem;
    }    
    .tellUsModule {
        padding: 1rem 2rem;
        margin-bottom: 1rem;
    }
    .tellUsModule h2 {
        font-size: 2rem;
    }
}
@media only screen and (min-width: 1024px) {

}
@media only screen and (min-width: 1440px) {

}

.homePage {
    margin-bottom: 0;
}

.featuredStories {
    padding: 2rem 0;
}
.featuredStories * {
    transition: all .4s;
}

.featuredStories a {
    text-decoration: none;
    color:var(--navy);
    transition: background-color .2s;
}
.newsflash-image {
    overflow:hidden;
    box-shadow: 0 0 15px rgba(0 0 0 / 0.25) ;
}
.featuredStories a:hover, .featuredStories a:active, .featuredStories a:focus{
    text-decoration: underline;
}
.featuredStories a:hover img, .featuredStories a:active img, .featuredStories a:focus img{
    transform: scale(1.05);
}
.featuredStories .mod-articlesnews.newsflash {
    display: grid;
    grid-template-columns: 1fr;
    gap:1rem;
}
.featuredStories .mod-articlesnews.newsflash img {
    width: 100%;
    height:76vw;
    max-height: 325px;
    object-fit: cover;
}
.newsflash-title {
    color:var(--navy);
    margin-bottom: 0;
}

@media only screen and (min-width: 480px) {
    .featuredStories .mod-articlesnews.newsflash {
        grid-template-columns: 1fr 1fr;
    }
    .featuredStories .mod-articlesnews.newsflash img {
        width: 100%;
        height:44vw;
        max-height: 325px;
        object-fit: cover;
    }
}
@media only screen and (min-width: 768px) {
}
@media only screen and (min-width: 1024px) {
    .featuredStories .mod-articlesnews.newsflash {
        grid-template-columns: 1fr 1fr 1fr 1fr;
        gap:2rem;
    }
    .featuredStories .mod-articlesnews.newsflash img {
        height:22vw;
    }
}
@media only screen and (min-width: 1440px) {
    .featuredStories .mod-articlesnews.newsflash img {
        height:42vw;
    }
}

.homePageNewsBlock {
    background: #fff;
}
.homePageNewsBlock ul {
    padding: 0;
    margin: 0;
}
.homePageNewsBlock li {
    list-style: none;
    border-bottom: 1px solid var(--lightGray);
}
.homePageNewsBlock li:first-child {
    border-top: 1px solid var(--lightGray);
}

.homePageNewsBlock li a {
    text-decoration: none;
    color: var(--navy);
    font-size: 1.1rem;
    font-family: 'AvenirNextLTW01-BoldCn';
    line-height: 1.5rem;
    display: block;
    padding: 0.75rem 1rem;
    transition: background-color .2s;
}
.homePageNewsBlock li a:hover, .homePageNewsBlock li a:active, .homePageNewsBlock li a:focus  {
    text-decoration: underline;
    background-color: #edf5ff;
}

.homePageNewsBlock h2{
    margin-left: 1rem;
}
.newsHeader {
 /* display:grid; */
}
.homePageNewsBlock .viewMoreNews{
    margin-left: 1rem;
	margin-bottom:1rem;
	font-size:1.2rem
}

@media only screen and (min-width: 1440px) {
    .newsHeader {
        display: grid;
        grid-template-columns: auto 1fr;
        align-items: end;
    }
}



.headlinesGrid {
    display: grid;
    grid-template-columns: 1fr;
}

@media only screen and (min-width: 480px) {

}
@media only screen and (min-width: 768px) {
    .homePageNewsBlock .collegeNews{
        border-right: 1px solid var(--lightGray);
    }
    .headlinesGrid {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
    .homePageNewsBlock li:last-child {
        border-bottom: none;
    }

}
@media only screen and (min-width: 1024px) {
    .homePageNewsBlock li a {
        padding: 1.25rem 1rem;
    }

}
@media only screen and (min-width: 1440px) {

}
.featuredLinks h2 {
    text-align: center;
}
.featuredLinks ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.featuredLinks li {
    position: relative;
    font-size: 1rem;
}
.featuredLinks li::before {
    content: "\f101";
    font: var(--fa-font-solid);
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    color:var(--red);
    margin-right: .5rem;
    position: relative;
    font-size: .8rem;
}
.featuredLinks a {
    text-decoration: none;
    color: var(--navy);
}
.featuredLinks a:hover, .featuredLinks a:active, .featuredLinks a:focus{
    text-decoration: underline;
}
@media only screen and (min-width: 768px) {
    .featuredLinks ul {
        columns: 1;
    }
}
@media only screen and (min-width: 1024px) {
    .featuredLinks ul {
        columns: 2;
    }
}
@media only screen and (min-width: 1440px) {
    .featuredLinks ul {
        columns: 3;
    }
}

/* ==========================================================================
    EVENTS MODULE
    ========================================================================== */
.eventsInfoIntro {
    text-align: center;
    background: var(--veryLightGray);
    padding: 1rem;
}
.eventsInfoIntro .button {
    margin: 1rem auto;
    padding: 0.5rem 1rem;
}

a.eventWrapper {
    text-decoration: none;
}
.eventWrapper {
    display: grid;
    grid-template-columns: 1fr;
    border-bottom:1px solid var(--lightGray);
    padding:1rem;
    gap: 0 1rem;
    transition: background-color .2s;
}
.eventWrapper:last-child {
    border-bottom:none;
}

.eventDay {
    color: var(--text);
    text-transform: uppercase;
    font-size: .75rem;

}
.eventDay.lowerCase {
    text-transform: unset;
}
.eventDate {
    font-family:'Avenir Next LT W01 Bold';
    font-size: 1rem;
    text-transform: uppercase;
    color:var(--red);
}
p.eventTitle {
    margin:0;
    padding: 0;
    font-size: 1.25rem;
    font-family:'Avenir Next LT W01 Bold';
}
p.eventTitle {
    color:var(--navy);
    text-decoration: none;    
}
a.eventWrapper:hover p.eventTitle {
    text-decoration: underline;    
}
.eventWrapper:hover, .eventWrapper:active, .eventWrapper:focus{
    background-color: #edf5ff;
}
p.eventWhen {
    margin:0;
    padding: 0;
    font-size: .8em;
    color:var(--text);
}
@media only screen and (min-width: 480px) {
    .eventDate {
        font-size: 1.25rem;
    }
    p.eventTitle {
        font-size: 1.1rem;
    }
}
@media only screen and (min-width: 768px) {

}
@media only screen and (min-width: 1024px) {
    .homePageEvents {
        display: grid;
        grid-template-columns: 2fr 3fr;
        gap: 1rem;
    }
    .eventsInfoIntro {
        text-align: center;
        background: transparent;
        padding: 1rem;
        align-self: center;
    }
    .eventsInfoIntro .button {
        margin: 1rem auto;
        padding: 0.5rem 1rem;
    }
    .eventsInfoIntro h2 {
        margin-top: 0;
    }
    .eventsFeed {
        border-left: 1px solid var(--lightGray);
    }
    .eventWrapper {
        display: grid;
        grid-template-columns: minmax(auto,100px) 2.5fr;
        grid-template-rows: 1rem auto;
        border-bottom:1px solid var(--lightGray);
        padding: 0.75rem 1rem;
        gap: 0 1rem;
    }
    .eventWrapper:last-child {
        border-bottom:none;
    }

    .eventDay {
        grid-row: 1/2;
        grid-column: 1/2;
        color: var(--text);
        text-transform: uppercase;
    }
    .eventDay.lowerCase {
        text-transform: unset;
    }
    .eventDate {
        grid-row: 2/3;
        grid-column: 1/2;
        font-family:'Avenir Next LT W01 Bold';
        font-size: 1rem;
        color:var(--red);
    }
    .eventInfo {
        grid-row:1/3;
        grid-column: 2/3;
    }
    p.eventTitle {
        margin:0;
        padding: 0;
        font-size: 1.1rem;
        font-family:'Avenir Next LT W01 Bold';
        line-height: 1.5rem;
    }
    p.eventWhen {
        margin:0;
        padding: 0;
    }
}
@media only screen and (min-width: 1440px) {

}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.homePageBanners .slick-slide img
{
    width:100%;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}


/* Slider */
.slick-loading .slick-list
{
    /* background: #fff url('./ajax-loader.gif') center center no-repeat; */
}

/* Icons */
/* @font-face
{
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;

    src: url('./fonts/slick.eot');
    src: url('./fonts/slick.eot?#iefix') format('embedded-opentype'), url('./fonts/slick.woff') format('woff'), url('./fonts/slick.ttf') format('truetype'), url('./fonts/slick.svg#slick') format('svg');
} */
/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
    z-index: 2;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev::before,
.slick-next::before
{
    font: var(--fa-font-solid);
    display: block;
    color: #fff;
    font-size: 1em;

    line-height: 1;
    font-size:1rem;
    z-index: 2;

    /* opacity: .75; */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}


.slick-prev
{
    left: -25px;
}
.slick-prev::before
{
    content: "\f053";
}

.slick-next
{
    right: -25px;
}
.slick-next::before
{
    content: "\f054";
}

/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
    opacity: .75;
    color: black;
}


/* ==========================================================================
     ConvertForms
     ========================================================================== */




     .convertforms {
        --color-primary: #003a70;
        --color-success: #dedede;
        --color-danger: #d73e31;
        --color-warning: #F4B400;
        --color-default: #444;
        --color-grey: #ccc;
    }

    .convertforms {
        margin: 0;
        padding: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-family: 'AvenirNextLTW01-Condens_721299', Arial, Helvetica, sans-serif;;
        max-width: var(--max-width);
        background-color: var(--background-color);
        border: var(--border);
        border-radius: var(--border-radius);
        padding: var(--padding);
        background-image: var(--background-image);
        background-repeat: var(--background-repeat);
        background-size: var(--background-size);
        background-position: var(--background-position);
        color: #333;
    }

    .convertforms .cf-input {
        font-size: 1em;
        color: var(--input-color);
        background-color: var(--input-background-color);
        padding: var(--input-padding);
        border: solid 1px var(--input-border-color);
        border-radius: var(--input-border-radius);
        text-align: var(--input-text-align)
    }

    .convertforms fieldset {
        border: 1px solid #DDDDDD;
        border-radius: 10px;
        clear: both;
        margin: 1.5em 0;
        padding:0 5% 1em;
        width:100%
    }
    .convertforms fieldset fieldset {
        margin: 1.5em .5em;
    }

    .convertforms fieldset .fieldset[data-type='heading'] {
        margin-top: -1.4em;
        padding-top: 0;
    }

    .convertforms fieldset legend h2 {
        margin-top: 0;
        padding: 0 .2em;
        background: #fff;
        position: relative;
        left: -.2em;
    }

    .convertforms legend {
        width: auto;
        display: flex;
    }
    
    .convertforms fieldset fieldset legend {
        font-size: 1em;
    }

    .convertforms .cf-label {
        color: var(--label-color);
        font-size: 1em;
        margin-bottom: .45em;
        display: block;
        line-height: 1.3;
        font-weight: var(--label-weight)
    }

    .convertforms .cf-input,.convertforms input[type="text"], .convertforms select {
        background-color: #f3f3f3;
        border: 1px solid #CCCCCC;
        border-radius: 0;
        font-size: 1em;
    }
    
    .convertforms .cf-input:focus,.convertforms .cf-input:invalid:focus {
        -webkit-box-shadow: none;
        box-shadow: none;
        color: var(--input-color);
        background-color: #FFFFFF;
        border: 1px solid #99CCFF;
    }
    .convertforms .cf-control-input {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 9px;
        font-size: 1em;
    }

    .cf-control-group:focus-within {
        background: #ffffcc;
    }
    

    .convertforms textarea {
        background-color: #F7F7F7;
        border: 1px solid #CCCCCC;
        border-radius: 0;
        float: left;
        font-size: 1em;
        margin-bottom: 4px;
        padding: 0.2em;
    }
    .convertforms textarea:focus {
        background-color: #FFFFFF;
        border: 1px solid #99CCFF;
    }
    button.cf-btn.cf-btn {
        padding: .5em 1em;
        font-size: 1.1em;
        margin: auto;
    }

    .convertforms .cf-response {
        color: #333;
        margin-bottom: 20px;
        padding: 10px 15px;
        width: 100%;
        border-radius: var(--input-border-radius);
        display: none;
        text-align: center
    }
    .convertforms .cf-input:not(.flatpickr-input)[readonly] {
        -webkit-box-shadow: none;
        box-shadow: none;
    }

    /* WebKit, Blink, Edge */
    .convertforms input::-webkit-input-placeholder {
        color: #333;
    }
    /* Mozilla Firefox 4 to 18 */
    .convertforms input:-moz-placeholder { 
    color: #333;
    opacity: 1;
    }
    /* Mozilla Firefox 19+ */
    .convertforms input::-moz-placeholder { 
    color: #333;
    opacity: 1;
    }
    /* Internet Explorer 10-11 */
    .convertforms input:-ms-input-placeholder { 
    color: #333;
    }
    /* Microsoft Edge */
    .convertforms input::-ms-input-placeholder {
    color: #333;
    }
    /* Most modern browsers support this now. */
    .convertforms input::placeholder { 
    color: #333;
    }
    /* Most modern browsers support this now. */
    .convertforms textarea::placeholder { 
    color: #333;
    }
    .convertforms .cf-input::placeholder, .convertforms .cf-input:has(option:disabled:checked) {
        color: #333;
    }

    .cf-control-group[data-label='reCAPTCHA'] {
        z-index: 2;
    }


/* ==========================================================================
     Helper classes
     ========================================================================== */

/*
   * Hide visually and from screen readers
   */

.hidden,
[hidden] {
    display: none !important;
}
.hidden::after, .hidden::before {display: none !important;}

/*
   * Hide only visually, but have it available for screen readers:
   * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
   *
   * 1. For long content, line feeds are not interpreted as spaces and small width
   *    causes content to wrap 1 word per line:
   *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
   */

.sr-only, .visuallyhidden, .visually-hidden {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
    /* 1 */
}

/*
   * Extends the .sr-only class to allow the element
   * to be focusable when navigated to via the keyboard:
   * https://www.drupal.org/node/897638
   */

.sr-only.focusable:active,
.sr-only.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    white-space: inherit;
    width: auto;
}

/*
   * Hide visually and from screen readers, but maintain layout
   */

.invisible {
    visibility: hidden;
}

/*
   * Clearfix: contain floats
   *
   * For modern browsers
   * 1. The space content is one way to avoid an Opera bug when the
   *    `contenteditable` attribute is included anywhere else in the document.
   *    Otherwise it causes space to appear at the top and bottom of elements
   *    that receive the `clearfix` class.
   * 2. The use of `table` rather than `block` is only necessary if using
   *    `:before` to contain the top-margins of child elements.
   */

.clearfix::before,
.clearfix::after {
    content: " ";
    display: table;
}

.clearfix::after {
    clear: both;
}

/* ==========================================================================
     EXAMPLE Media Queries for Responsive Design.
     These examples override the primary ('mobile first') styles.
     Modify as content requires.
     ========================================================================== */

.desktop-only, .desktopOnly {display: none;}
.mobile-only, .mobileOnly {display: unset;}


@media only screen and (min-width: 600px) {
    .desktop-only, .desktopOnly {display: unset;}
    .mobile-only, .mobileOnly  {display: none;}

    header span.fa-solid {
        margin-right: .5em;
    }

}




