/*
    Theme Name: Montserrat
    Theme URI: https://www.sperlinginteractive.com
    Description: Sperling Interactive WordPress Starter Theme
    Version: 1.0
    Author: Sperling Interactive
  Theme URI: https://www.sperlinginteractive.com
*/

/*------------------------------------*\
    Example of Using Root Variable 
    :root {
        --blue: #0000FF          
    }
    .test-element {
        color: var(--blue)
    }
\*------------------------------------*/

:root{
    --scrollbar-width: 0px; 
}

/* global box-sizing */
*,
*:after,
*:before {
    box-sizing: border-box;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* html element 62.5% font-size for REM use */
html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    color: #444549;
    font: 400 16px/1.6 'Montserrat', sans-serif;
    font: 400 1.6rem/1.6 'Montserrat', sans-serif;
}

/* clear */
.clear:before,
.clear:after {
    content: ' ';
    display: table;
}

.clear:after {
    clear: both;
}

.clear {
    zoom: 1;
}

img {
    max-width: 100%;
    vertical-align: bottom;
    height: auto;
}

/* Lightspeed Lazy load fade in */
img[data-lazyloaded] {
    opacity: 0;
}

img.litespeed-loaded {
    -webkit-transition: opacity .5s linear 0.2s;
    -moz-transition: opacity .5s linear 0.2s;
    transition: opacity .5s linear 0.2s;
    opacity: 1;
}

a {
    text-decoration: none;
    color: #F47932;
}

a:hover {
    color: #ad511c;
}

a:focus {
    outline: 0;
}

a:hover,
a:active {
    outline: 0;
}

input:focus {
    border: 1px solid #04A4CC;
    outline: 0;
}

p,
ul,
ol {
    font-size: 1.5rem;
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
}

main ul li,
main ol li {
    margin-bottom: 0.5rem;
}

h1 {
    font-size: 3rem;
    margin-top: 1.25em;
    margin-bottom: 3.5rem;
    line-height: 1.3em;
    color: #0F576E;
}

h2 {
    font-size: 1.9rem;
    margin-top: 1.25em;
    margin-bottom: 0;
    line-height: 1.3em;
    color: #0F576E;
}

h3 {
    font-size: 1.7rem;
    margin-top: 1.25em;
    margin-bottom: 0;
    line-height: 1.3em;
    color: #0F576E;
    font-weight: 600;
}

h4 {
    font-size: 1.7rem;
    margin-top: 1.25em;
    margin-bottom: 0;
    line-height: 1.3em;
    color: #0F576E;
}

h5 {
    font-size: 1.7rem;
    margin-top: 1.25em;
    margin-bottom: 0;
    line-height: 1.3em;
    color: #0F576E;
}

h6 {
    font-size: 1.7rem;
    margin-top: 0.75em;
    margin-bottom: 0;
    line-height: 1.3em;
    color: #0F576E;
}

blockquote {
    /* margin: 25px 5vw;
    padding: 0 5vw 0 20px;
    font-style: italic;
    font-size: 1.9rem;
    border-left: solid 6px #e1e4ea; */
    color: #A5AF3A;
    font-weight: 600;
    font-style: italic;
}
blockquote cite {
    font-size: 1.4rem;
}
blockquote cite:before {
    content: '\2014';
    margin-right: 5px;
}

hr {
    border-color: #74CBC8!important;
    border-width: 1px;
    border-style: solid;
}

::marker {
    color: #A5AF3A;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/
/* wrapper */
.wrapper {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    min-height: 100vh;
    position: relative;
    width: 100%;
    max-width: 2560px;
}

main {
    flex: 1 auto;
    width: 100%;
    height: 100%;
}

.container {
    max-width:1600px; 
    align-self: center;
    flex: 1 auto;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    padding: 0 20px;
    /* -webkit-padding-start: 0px; */
}

.container-thin {
    max-width:900px; 
    align-self: center;
    flex: 1 auto;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    padding: 0 20px;
    /* -webkit-padding-start: 0px; */
}

.container-wide {
    max-width:1920px; 
    align-self: center;
    flex: 1 auto;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    padding: 0 20px;
}

.header-utility-menu .container {
    padding: 0;
}

/* header */
.header {
    margin-bottom: 50px;
}

.logo-img {
    backface-visibility: hidden;
    max-height: 60px;
    width: auto;
    margin-top: 20px;
    margin-bottom: 20px;
}

.header-utility-menu {
    background-color: #6c743b;
    padding: 0;
}

.header-utility-menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: space-between;
    display: flex;
}

.header-utility-menu ul li {
    flex: 1 1 auto;
    text-align: center;
}

.header-utility-menu ul a {
    font-size: 13px;
    color: white;
    font-weight: 600;
    text-transform: uppercase;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
    padding-bottom: 10px;
    display: block;
    line-height: 1.3;
}

.header-utility-menu ul li:nth-of-type(3n + 1) a {
    background-color: #A5AF3A;
}

.header-utility-menu ul li:nth-of-type(3n + 2) a {
    background-color: #0f576e;
}

.header-utility-menu ul li:nth-of-type(3n + 3) a {
    background-color: #444549;
}

.header-side-content {
    display: flex;
    justify-content: flex-end;
}

.search-btn {
    margin-left: 5px;
    display: none;
    align-self: center;
}

.search-btn button#searchBtn {
    border: 0;
    color: #F47932;
    font-size: 1.8rem;
    padding: 5px 6px;
    border-radius: 5px;
    transition: all .2s;
    background-color: transparent;
}

.search-btn button#searchBtn:hover {
    /* background-color: #4C9A45; */
    color: #974b1f;
}

.nav #search-button {
    color: #000000;
}

.emergency-banner {
    background-color: #F47932;
}

.emergency-banner p {
    text-align: center;
    font-weight: 600;
    color: white;
}

.emergency-banner a {
    color: white;
}

/* nav */
.nav {}

.header .nav {
    display: none;
}


/* mega menu */

/* #mega-menu-item-27 .mega-sub-menu {
    opacity: 1!important;
    visibility: visible!important;
} */

.mega-menu-row {
    margin-left: -30px!important;
    margin-right: -30px!important;
}

#mega-menu-item-27 .mega-menu-row {
    margin-left: -10px!important;
    margin-right: -10px!important;
}

#mega-menu-item-27 #menu-main-menu .hide-on-desktop {
    display: block!important;
}

#mega-menu-item-27 #menu-main-menu > li > ul > li.menu-item-has-children > ul.sub-menu {
    display: none;
    padding-left:15px;
    /* flex-basis: 14.28%!important;
    width: 14.28%!important; */
} 

#mega-menu-item-27 > .mega-menu-row {
    margin-left: -10px!important;
    margin-right: -10px!important;
}

#mega-menu-item-27 #menu-main-menu {
    display: flex;
    flex-wrap: wrap;
    color: white;
    line-height: 1.8;
    margin: 0;
    padding: 0;
    list-style: none;
}

#mega-menu-item-27 #menu-main-menu > li {
    flex: 1 1 auto;
    position: relative;
    padding: 0 10px;
    flex-basis: 14.28%!important;
    width: 14.28%!important;
}

.mega-sub-menu li.mega-menu-item a,
.mega-sub-menu li.menu-item a {
    padding:1px 6px !important;
    display: inline-block!important;
    align-self: flex-start!important;
}

.mega-sub-menu li.mega-menu-item a:hover, 
.mega-sub-menu li.menu-item a:hover,
.mega-sub-menu li.menu-item a.active  {
    background-color: #DA3E80!important;
}

#mega-menu-item-27 #menu-main-menu > li > a {
    font-weight: bold;
    text-transform: uppercase;
    font-size: 15px;
    margin-bottom: 10px;
}

#mega-menu-item-27 #menu-main-menu > li > ul li a {
    font-size: 14px;
}

#mega-menu-item-27 #menu-main-menu > li > ul li.menu-item-has-children a {
    padding-right: 34px!important;
    position: relative;
}

#mega-menu-item-27 #menu-main-menu a {
    color: white;
}

/* #mega-menu-item-27 #menu-main-menu .mega-menu-item-toggle {
    color: #F8DD2D;
    font-weight: bold;
    margin-left: 4px;
    margin-right: -6px;
    font-size: 20px;
    cursor: pointer;
    line-height: 1;
    position: absolute;
    top: 1px;
    right: -2px;
    padding: 1px 8px 2px 7px;
    display: inline-block;
} */

#mega-menu-item-27 #menu-main-menu .mega-menu-item-toggle {
    color: #F8DD2D;
    font-weight: bold;
    font-size: 20px;
    cursor: pointer;
    line-height: -0;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    padding: 0 8px;
    align-items: center;
    display: inline-flex;
}


#mega-menu-item-27 #menu-main-menu a.active .mega-menu-item-toggle{
    color: #ffffff
}

#mega-menu-item-27 #menu-main-menu .mega-menu-item-toggle:hover {
    background-color: rgba(255,255,255, 0.2);
}

#mega-menu-item-27 #menu-main-menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

#mega-menu-item-27 #menu-main-menu li {
    list-style: none;
}

#mega-menu-item-27 .mega-indicator {
    display: none!important;
}

/* #mega-menu-item-27 > a {
    color: #A5AF3A!important;
    font-size: 38px!important;
} */

#mega-menu-wrap-header-menu #mega-menu-header-menu > li#mega-menu-item-27 > a.mega-menu-link {
    color: #A5AF3A!important;
    font-size: 38px!important;
}

#mega-menu-item-27 > a:hover {
    color: #6c743b !important;
}

#mega-menu-item-27 #menu-item-27 {
    display: none!important;
}

#mega-menu-item-27 .widget_nav_menu {
    padding: 0!important;
}

.mega-sub-menu li.mega-menu-item .mm-links {
    font-size: 4vw!important;
    line-height: 1!important;
}
.mega-sub-menu li.mega-menu-item .mm-links a {
    display: block;
    border-bottom: solid 2px white;
    color: #74CBC8;
    padding-bottom: 30px!important;
    margin-bottom: 24px!important;
    font-weight: bold!important;
    transition: all 0.5s!important;
}
.mega-sub-menu li.mega-menu-item .mm-links a:last-child {
    border-bottom: none!important;
}

.mega-sub-menu li.mega-menu-item .mm-links a:hover {
    color: rgb(182, 255, 253);
    background-color: transparent!important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link {
    font-size: 15px!important;
    padding: 0px 10px 0px 10px!important;
}

/* responsive menu pro */
#responsive-menu-pro-item-27 {
    display: none!important;
}

/* sidebar */
.sidebar {}

/* footer */
.footer {
    background: #444549;
    margin-top:60px;
    padding-top: 60px;
    padding-bottom: 20px;
    color: #ffffff;
}

.footer-m {
    max-height: 90px;
}

.footer ul {
    list-style: none;
    margin:0;
    padding: 0;
}

.footer,
.footer p,
.footer ul {
    font-size: 1.5rem;
}

footer a:not(.wp-block-button__link):hover {
    opacity: 0.6;
}

.footer-nav li {
    padding-top: 5px;
    padding-bottom: 5px;
}

.footer-nav-header {
    font-weight: bold;
    border-bottom: solid 1px #A5AF3A;
}

.company-social-links {
    font-weight:bold;
    display: flex;
    align-items: center;
    margin: 20px 0;
}

.company-social-links a {
    margin: 0 7px;
    font-size: 26px;
}

.footer .copyright {
    text-transform: uppercase;
}

.pagination {
    font-size: 1.6rem;
}

.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    height: auto;
}

iframe {
    max-width: 100%;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/*------------------------------------*\
    PAGES
\*------------------------------------*/

/* COMMON */
.breadcrumbs-section {
    margin-top: 1.5rem!important;
}
.breadcrumbs {
    font-size: 1.4rem;
    margin-bottom: 50px;
    margin-top: -40px;
}

.breadcrumbs span {
    color: #A5AF3A;
    padding: 0 5px;
}

.breadcrumbs span:first-of-type {
    padding-left: 0;
}

.breadcrumbs a {
    color: #444549;
}

.page-header-image {
    padding-right: 10%;
    display: block;
}
.title-area-left-column {
    padding-right: 2rem;
}

.flex-columns-section {
    display: flex; 
    height: 100%;
}
.flex-columns-outer {
    flex: 1;
}
.flex-columns-column {
    display: flex;
}
.flex-columns-inner {
    flex: 1;
}

.post-password-form input {
    height: 42px;
}
.post-password-form label {
    font-weight: bold;
}

.sperling-form select,
.sperling-form input,
.sperling-form button {
    height: 42px;
}

/* NEWS */
.ajax-overlay {
    font-size: 60px;
    text-align: center;
    background-color:rgba(255,255,255,0.9); 
    position: absolute;
    top: 0.75rem;
    right: 0px;
    bottom: 0;
    left: 0px;
    content: '';
    z-index: 1;
    display: none;
}

.ajax-overlay.loader {
    display: block;
}

.load-more-button-holder {
    display: inline-block;
}

.load-more {
    color: white; 
    display: flex; 
    justify-content: center; 
    align-items: center; 
    color: #F47932; 
    text-decoration: none; 
    font-size: 24px;
}

.load-more-text {
    margin-right: 10px;
}

.load-more-icon {
    background-color: #F47932; 
    color: white; 
    width: 32px; 
    height: 32px; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    border-radius: 50%;
}

.load-more.loading {
    opacity: 0.5;
    pointer-events: none;
}

form#filter {
    display: flex; 
    flex-wrap: wrap;
    margin-bottom: 40px;
    margin-top: 40px;
    gap: 10px;
}
form#filter input,
form#filter select
 {
    flex: 1 0 auto;
    /* margin-right: 10px; */
    padding: 8px 10px;
    /* margin-bottom: 10px; */
    background-color: #e8eef0;
    border: solid 1px #c5d3d7;
    max-width: 100%;
    flex: 1;
}
form#filter .button {
    margin-bottom: 10px;
}

.blog-sidebar {
    margin-right: 0;
}

.blog-sidebar-news-header {
    border-bottom: solid 2px #F47932;
}

.single-blog-title {
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom:20px;
    margin-top: 0;
}
.single-blog-date {
    margin: 0;
    color: #74CBC8;
    font-size: 2.75rem;
}

.columns.single-blog-date-columns {
    margin-bottom: 50px;
}

.blog-card-info {
    flex: 1 1 auto; 
    display: flex; 
    flex-direction: column; 
    justify-content: space-between;
}
.blog-card-excerpt {
    border-top: solid 2px #F47932; 
    padding-top:15px;
}
.blog-card-alumni-title {
    text-transform: uppercase;
    font-weight: 600;
}

/* Directory */
.directory-list .directory-item:nth-child(odd) .directory-item-inner {
    background-color: #e8eef0;
}
.directory-list .directory-item:nth-child(even) .directory-item-inner {
    background-color: #f8fad9;
}

/*------------------------------------*\
    IMAGES
\*------------------------------------*/

/*------------------------------------*\
    GUTENBERG
\*------------------------------------*/

/* WP 6.0 */
.has-global-padding > .alignfull {
    /* padding: 0 20px; */
    padding-left: 20px;
    padding-right: 20px;
}

body .is-layout-constrained.has-background:where(:not(.alignleft):not(.alignright):not(.alignfull))  > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body .is-layout-constrained.is-style-outline-box:where(:not(.alignleft):not(.alignright):not(.alignfull))  > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    padding-left: 40px;
    padding-right: 40px;
}

body .is-layout-constrained.is-style-thin-content > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: 900px!important;
}
/* /WP 6.0 */

.wp-block-cover.alignfull {
    width: auto!important;
    min-width: 100%;
}

.wp-block-cover.alignfull .wp-block-cover__inner-container {
    max-width: 1560px;
    margin: 0 auto;
}

.wp-block-cover-image.has-background-dim:not([class*=-background-color]), .wp-block-cover.has-background-dim:not([class*=-background-color]) {
    background-color: transparent!important;
}

.wp-block-media-text__media,
.wp-block-media-text__content {
    margin-bottom: 30px!important;
}

/* .wp-block-columns {
    margin-bottom: 1.5em;
} */

.wp-block-table table td {
    padding: 5px;
}

.wp-block-button:not(:last-child) {
    margin-right: 0.5em!important;
}

/* TOOK THIS OUT DO WE NEED IT?? */
/* .wp-block-group__inner-container:after {
    content: '';
    display: block;
    clear: both;
} */

.wp-block-button__link {
    transition: all 0.3s ease-in-out;
    background-color: #A5AF3A;
    color: #ffffff;
    position:relative;
    padding: 12px 30px;
    font-size: 1.6rem;
    line-height: 1.25;
    border-radius: 0;
    font-weight: 600;
}

.is-style-outline>.wp-block-button__link, .wp-block-button__link.is-style-outline {
    padding: 12px 30px;
}

.wp-block-button.is-style-full, .wp-block-button.is-style-full .wp-block-button__link {
    width: 100%;
}

.is-style-alt>.wp-block-button__link, .wp-block-button__link.is-style-alt {
    background-color: transparent;
    padding: 12px 0;
    color: #F47932;
    font-weight: 400;
    font-size: 20px;
    text-transform: uppercase;
    box-shadow: none!important;
}

.is-style-alt>.wp-block-button__link:after, .wp-block-button__link.is-style-alt:after {
    font-family: 'Font Awesome 6 Pro';
    content: '\f0a9';
    margin-left: 8px;
}

.is-style-alt>.wp-block-button__link:hover, .wp-block-button__link.is-style-alt:hover {
    color: #A5AF3A;
}

.wp-block-button__link:before {
    content: '';
    border-radius: inherit;
    position:absolute;
    width: 100%;
    height:100%;
    top:0;
    left:0;
}

.wp-block-button__link:hover {
    box-shadow:inset 0 0 0 2000px rgba(0, 0, 0, 0.3);
}

.wp-block-button .wp-block-button__link.is-style-outline, .wp-block-button.is-style-outline>.wp-block-button__link {
    padding: 10px 28px;
}

.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color), .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color) {
    color: #A5AF3A;
    border: solid 2px #A5AF3A;
}

.is-style-outline>.wp-block-button__link, .wp-block-button__link.is-style-outline {
    border: 2px solid #A5AF3A
}

.is-style-outline>.wp-block-button__link:not(.has-background):hover, .wp-block-button__link.is-style-outline:not(.has-background):hover {
    background-color:#A5AF3A;
}

.is-style-outline>.wp-block-button__link:not(.has-background):hover, .wp-block-button__link.is-style-outline:not(.has-background):hover, .wp-block-button__link:hover {
    color: white;
}

.is-style-highlight-group {
    border-radius: 20px;
}

.is-style-highlight-group-shadow {
    border-radius: 20px;
    box-shadow: 5px 10px 10px #acacac;
}

.wp-block-separator {
    margin-top: 40px;
    margin-bottom: 40px;
    border-top: 1px solid;
    border-bottom: none!important;
}

.alignfull {
    /* margin-left: calc(-100vw / 2 + 100% / 2 + var(--scrollbar-width) / 2);
    margin-right: calc(-100vw / 2 + 100% / 2);
    max-width: calc(100vw - var(--scrollbar-width)); */
}

.wp-block-group__inner-container {
    max-width:1600px!important;
    align-self: center;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 0;
}

.container-wide .wp-block-group__inner-container {
    max-width:1920px!important;
    align-self: center;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 0;
}

.wp-block-group.is-style-large-v-padding {
    padding: 60px 0px;
}

.wp-block-group.is-style-no-v-padding {
    padding: 0px 0px!important;
}

.wp-block-group.has-background,
.wp-block-group.is-style-outline-box {
    padding-top: 50px;
    padding-bottom: 50px;
}

.wp-block-group.alignfull .wp-block-group__inner-container {
    /* padding: 30px 20px; */
    padding-left: 20px;
    padding-right: 20px;
}

.wp-block-group.alignfull.is-style-large-v-padding > .wp-block-group__inner-container {
    padding: 60px 20px;
}

.wp-block-group.alignfull.is-style-no-v-padding > .wp-block-group__inner-container {
    padding: 0px 20px;
}

/* .wp-block-columns .wp-block-group.has-background {
    height:100%;
    position: relative;
    z-index: 0;
} */

/* .wp-block-group.has-background a:not(.wp-block-button__link) {
    color: inherit;
} */

.wp-block-embed-youtube,
.wp-block-video {
    position: relative;
    cursor: pointer;
}

.wp-block-embed-youtube:before,
.wp-block-video:before {
    content: '';
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    z-index: 1;
    pointer-events: none;
    border: solid 5px transparent;
    transition: all 0.3s;
    cursor: pointer;
}

.has-dark-blue-background-color {
    background-color: #0F576E;
}

.has-dark-blue-color {
    color: #0F576E;
}

.has-aqua-background-color {
    background-color: #74CBC8;
}

.has-aqua-color {
    color: #74CBC8;
}

.has-green-background-color {
    background-color: #A5AF3A;
}

.has-green-color {
    color: #A5AF3A;
}

.has-orange-background-color {
    background-color: #F47932;
}

.has-orange-color {
    color: #F47932;
}

.has-light-blue-background-color {
    background-color: #e8eef0;
}

.has-light-blue-color {
    color: #e8eef0;
}

.has-dark-gray-background-color {
    background-color: #444549;
}

.has-dark-gray-color {
    color: #444549;
}

.has-gray-background-color {
    background-color: #707070;
}

.has-gray-color {
    color: #707070;
}

.has-light-gray-background-color {
    background-color: #d6d6d6;
}

.has-light-gray-color {
    color: #d6d6d6;
}

.has-white-background-color {
    background-color: #ffffff;
}

.has-white-color {
    color: #ffffff;
}

.has-black-background-color {
    background-color: #000000;
}

.has-black-color {
    color: #000000;
}

.is-style-no-margin {
    margin: 0!important;
}

.is-style-light-weight {
    font-weight: 300;
}

.is-style-max-height-100 img {
    max-height: 100px;
    width: auto;
}

.is-style-button-bottom-columns .wp-block-column {
    display: flex;
    flex-direction: column;
}

.is-style-button-bottom-columns .wp-block-column .wp-block-buttons {
    margin-top: auto;
}

.is-style-button-bottom-columns .wp-block-column .wp-block-buttons {
    margin-top: auto;
}
.is-style-thin-content .wp-block-group__inner-container {
    max-width: 900px!important;
}

.is-style-right-wide {
    padding-left: calc(((100vw - var(--scrollbar-width)) - 1600px) / 2);
}

.is-style-outline-box {
    border: solid 2px #74CBC8;
}

.is-style-justify-center {
    justify-content: center;
}

/*------------------------------------*\
    CUSTOM GUTENBERG BLOCKS
\*------------------------------------*/

/* Title and Content Area Blocks */
.area-blocks-image {
    height: 100%;
    min-height: 275px;
    position: relative;

    display: flex;
    justify-content: center;
    align-items: center;
}

.area-blocks-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
}

.area-blocks-image.image-has-overlay:before {
    content: '';
    position: absolute;
    top: 0;
    bottom:0;
    left: 0;
    right: 0;
    background-color: #429795;
    mix-blend-mode: multiply;
    z-index: 1;
}

.area-blocks-image .image-overlay-text {
    z-index: 1;
    padding: 10% 15%;
    text-align: center;
    font-weight: 600;
}

.area-info-block {
    display: flex;
    justify-content: center;
    flex-direction: column;
    min-height: 275px;
    padding: 35px 20px;
}

.area-info-block-title {
    background-color: white; 
    padding: 7px 15px; 
    color: #444549!important;
    display: inline-block;
    text-transform: uppercase;
    align-self: flex-start;
    font-size: 1.7rem;
}

.area-info-block-link {
    color: white;
    font-weight:600;
    text-transform: uppercase;
    transition: all 0.2s;
    white-space: nowrap;
    margin-top: 10px;
}

.area-info-block-link span {
    background-color: rgba(255, 255, 255, 0.4);
    margin-left: 8px;
    padding: 4px;
    transition: all 0.2s;
}
.area-info-block-link i {
    color: white;
}

.area-info-block-link:hover {
    color: #c1ca5a!important;
}

.area-info-block-link:hover span {
    background-color: #A5AF3A;
}

.area-image-video {
    position: absolute; 
    content:''; 
    top:0; 
    left: 0; 
    bottom: 0; 
    right: 0; 
    display: flex; 
    align-items:center; 
    justify-content:center; 
    cursor: pointer; 
    font-size: 40px; 
    color: white;
    transition: all 0.2s;
    flex-direction: column;
    z-index: 1;
}
.area-image-video p {
    opacity: 0;
    height: 0;
    transition: all 0.2s;
    font-size: 12px;
    position: absolute;
    margin: 95px 0 0 0;
}
.area-image-video:hover {
    background-color: rgba(0,0,0,0.6)
}
.area-image-video:hover p {
    opacity: 1;
    height: 35px;
}
.area-vid-cover-img {
    height:100%;
    width: 100%;
    position: relative;
    min-height: 275px;
    background-color: #444549;
}

.area-vid-cover-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
}

.area-image-video-holder {
    position: relative;
    height:100%;
    min-height: 275px;
}

.area-testimonial-box {
    display: flex;
    justify-content: center;
    flex-direction: column;
    min-height: 275px;
    padding: 10%;
    background-color: #6A7432;
    position: relative;
}
.area-testimonial-box i{
    font-size: 32px;
    color: white;
    position: absolute;
    left: 15px;
    top: 15px;
}
.testimonial-body {
    font-size: 2rem;
    font-weight: 500;
}
.testimonial-author {
    font-size: 1.9rem;
    font-weight: 100;
}

.wysiwyg-box {
    border: solid 1px #74CBC8;
}

/* link list */
.link-list-item {
    font-size: 1.9rem;
    border-bottom: solid 1px black;
}
.link-list-item a {
    display: flex;
    width: 100%;
    padding-bottom:8px;
    padding-top: 10px;
}
.link-list-item a span {
    color: #444549;
    font-weight: 600;
}
.link-list-item a i {
    margin-left: auto;
    padding-left: 15px;
    font-size: 20px;
    margin-top: 8px;
}

/* faculty listing */
.faculty-listing-item {
    margin-bottom: 40px;
}

/* department faculty block */
.department_faculty_block {
    padding-right: 15%; /* reversed on desktop */
    padding-left:0;
}
.department_faculty_block.mobile-right-padding{
    padding-left: 15%; /* reversed on desktop */
    padding-right:0;
}
.department_faculty_block.mobile-right-padding .columns{
    flex-direction: row-reverse;
}

.featured_alumni_news_block {
    padding-right: 15%; /* reversed on desktop */
    padding-left: 0;
}
.featured_alumni_news_block.mobile-right-padding{
    padding-left: 15%; /* reversed on desktop */
    padding-right: 0;
}
.featured_alumni_news_block.mobile-right-padding .columns {
    flex-direction: row-reverse;
}

/* image slider */
.center-slider {
    margin-left: -20px!important;
    margin-right: -20px!important;
    margin-bottom: 60px!important;
    margin-top: 60px!important;
}
.center-slider .slick-slide {
    margin: 0px 20px;
}

.center-slider .slick-slide img {
    width: 100%;
}


.center-slider .slick-slide {
    transition: all ease-in-out .3s;
    opacity: .2;
}

.center-slider .slick-active {
    opacity: .5;
}

.center-slider .slick-current {
    opacity: 1;
}

.center-slider .slick-list{padding:0 20% 0 0;}

/* .center-slider .slick-dots li button {
    border: solid 2px #d30c8a;
    border-radius: 50%;
    padding: 0!important;
    width: 15px!important;
    height: 15px!important;
} */

/* .center-slider .slick-dots li button:before {
    color: #d30c8a!important;
    opacity: 1!important;
    font-size: 7px!important;
    line-height: 17px!important;
    left: -3px!important;
} */



/* .center-slider .slick-dots li button {
    border: solid 2px #d30c8a;
    border-radius: 50%;
    padding: 0!important;
    width: 15px!important;
    height: 15px!important;
} */

.center-slider .slick-dots li button:before {
    color: #DA3E80!important;
    font-size: 14px;
}

.center-slider .slick-dots {
    bottom: -40px!important;
}

.center-slider .slick-dots li {
    opacity: 0.4;
}
.center-slider .slick-dots li.slick-active {
    opacity: 1!important;
}

.slick-dots  > li:only-child {
        display: none;
}


/* acf google map */
.acf-map-block {
    width: 100%;
    height: 400px;
    border: #ccc solid 1px;
    margin: 20px 0;
}

.acf-map-block img {
   max-width: inherit !important;
}

/*------------------------------------*\
    EVENTS
\*------------------------------------*/

#tribe-events-pg-template {
    max-width: 1600px!important;
    width: 100%;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__button, .tribe-block__events-link .tribe-events-c-subscribe-dropdown__button {
    padding: 8px;
    border-radius: 0!important;
}

.single-tribe_events .tribe-events-schedule h2 {
    font-weight: bold!important;
    font-size: 2rem!important;
    margin-top: 0!important;
}

.single-tribe_events .tribe-events.tribe-common {
    clear: both;
}

.events_scroller_block {
    height: 0;
    border: solid 2px #A5AF3A;
    overflow: auto;
    /* margin-bottom: 0.75rem; */
}

.events_scroller_block::-webkit-scrollbar-track {
    border-radius: 10px;
    background-color: #F5F5F5;
}

.events_scroller_block::-webkit-scrollbar {
    width: 12px;
    background-color: #F5F5F5;
    border-radius: 10px;
}

.events_scroller_block::-webkit-scrollbar-thumb {
    /* background-color: #ffa818; */
    background-color: #A5AF3A;
}

.event-item {
    padding: 0 10px;
    margin: 0;
}

.event-item a {
    padding: 20px 10px;
    display: block;
    border-bottom: solid 1px #dadada;
}

.event-item a:hover {
    color: #A5AF3A!important;
}

.event-item a:hover h3,
.event-item a:hover h4,
.event-item a:hover p {
    color: #A5AF3A!important;
}

.events-scroller-heading {
    line-height: 1;
}

/* Careers Scroller */
.careers_scroller_block {
    height: 500px;
    border: solid 2px #74CBC8;
    overflow: auto;
    padding: 20px;
    /* margin-bottom: 0.75rem; */
}

.careers_scroller_block::-webkit-scrollbar-track {
    border-radius: 10px;
    background-color: #F5F5F5;
}

.careers_scroller_block::-webkit-scrollbar {
    width: 12px;
    background-color: #F5F5F5;
    border-radius: 10px;
}

.careers_scroller_block::-webkit-scrollbar-thumb {
    /* background-color: #ffa818; */
    background-color: #0F576E;
}

.careers-scroller-header {
    background-color: #74CBC8;
    padding: 5px 10px;
    color: white;
    font-size: 1.9rem;
    display: inline-block;
}

.careers-item {
    padding: 0 10px;
    margin: 0;
}

.careers-item a {
    padding: 20px 10px;
    display: block;
    border-bottom: solid 1px #dadada;
}

.careers-item a:hover {
    color: #A5AF3A!important;
}

.careers-item a:hover h3,
.careers-item a:hover h4,
.careers-item a:hover p {
    color: #A5AF3A!important;
}

.career-apply-header {
    margin-top: -20px;
    margin-left:-20px;
    margin-right: -20px;
    margin-bottom: 20px;
    line-height: 1;
}

/*------------------------------------*\
    Search Bar
\*------------------------------------*/

#searchModal {
    display: none;
    /* Hidden by default */
    position: fixed;
    /* Stay in place */
    z-index: 999;
    /* Sit on top */
    padding-top: 100px;
    /* Location of the box */
    left: 0;
    top: 0;
    width: 100%;
    /* Full width */
    height: 100%;
    /* Full height */
    overflow: auto;
    /* Enable scroll if needed */
    background-color: rgb(255, 255, 255);
    /* Fallback color */
    background-color: rgba(255, 255, 255, 0.8);
    /* Black w/ opacity */
}


/* Modal Content/Box */

#modal,
.modal {
    display: none;
    position: fixed;
    z-index: 999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0, 0, 0);
    background-color: rgba(0, 0, 0, 0.4);
}

.modal-content {
    position: relative;
    /* background-color: rgba(255,255,255,0.9); */
    /* background-color: #4C9A45; */
    background-color: #0F576E;
    margin: 10% auto;
    padding: 0;
    border: 0;
    width: 800px;
    max-width: 80%;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    -webkit-animation-name: animatetop;
    -webkit-animation-duration: 0.4s;
    animation-name: animatetop;
    animation-duration: 0.4s;
    color: #FFFFFF;
}

.modal-content a {
    color: #FFFFFF;
}

.modal-header {
    padding: 2px 16px;
    background-color: #A5AF3A;
    color: white;
}

.modal-header h4 {
    margin: 0;
    padding: 10px 0;
    color: white;
}

.modal-body {
    padding: 20px;
}


/* The Close Button */

.close {
    color: #fff;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

.modal-body .form-inner {
    display: flex;
    justify-content: center;
}

.modal-body .form-inner input[type=search] {
    padding: 10px 15px;
    font-size: 1.6rem;
    color: #163C6F;
    border-radius: 20px 0 0 20px;
    border: 0;
    background-color: #fff;
    width: 80%;
    font-family: 'Lato', sans-serif;
}

.modal-body .form-inner button.search-submit {
    border-radius: 0 20px 20px 0;
    background-color: #A5AF3A;
    font-size: 2rem;
    border: 0;
    padding: 10px 15px;
    color: #fff;
    transition: all .4s;
}

.modal-body .form-inner button.search-submit:hover {
    background-color: #6e7523;
}

@-webkit-keyframes animatetop {
    from {
        top: -300px;
        opacity: 0
    }
    to {
        top: 0;
        opacity: 1
    }
}

@keyframes animatetop {
    from {
        top: -300px;
        opacity: 0
    }
    to {
        top: 0;
        opacity: 1
    }
}

.search-header {
    background-color: #163C6F;
    color: #fff;
}

.search-result-wrapper article {
    margin-bottom: 30px;
}

.search-result-wrapper h2 {
    margin: 10px 0;
}

.search-result-wrapper h2 a {
    color: #163C6F;
    transition: all .3s;
}

.search-result-wrapper h2 a:hover {
    color: #A5AF3A;
}


/* /Search Bar */

/*------------------------------------*\
    ACF GOOGLE MAP
\*------------------------------------*/

.acf-map {
    width: 100%;
    height: 100%;
    min-height: 400px;
    max-height: 600px;
    border: #ccc solid 1px;
    margin: 20px 0;
  }

   /* Fixes potential theme css conflict. */
  .acf-map img {
   max-width: inherit !important;
  }


/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

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

@media only screen and (min-width:480px) {
    .header-utility-menu ul a {
        font-size: 14px;
    }
}

@media only screen and (min-width:769px) {
    .page-header-image {
        display: none;
    }
    .breadcrumbs {
        margin-top: -50px;
        margin-bottom: 60px;
    }
    .blog-sidebar {
        margin-right: 60px;
    }
    .header-utility-menu ul {
        justify-content: flex-end;
    }
    .header-utility-menu ul li {
        flex: none;
    }
    .header-utility-menu ul a {
        font-size: 17px;
    }
    .header-utility-menu .container {
        padding: 0 20px;
    }

    .header-utility-menu ul li a {
        background-color: transparent!important;
    }
}

@media only screen and (min-width:782px) {
    .is-style-x-wide-gap {
        gap: 7.125em!important;
    }
    .is-style-wide-gap {
        gap: 3.125em!important;
    }
    /* .wp-block-columns {
        margin-bottom: 1.75em;
    } */
    .predefined-right-padding {
        padding-right: 30px;
    }
    .title-area-accent-image.bump-up {
        height: calc(100% - 100px);
    }
    .center-slider {
        margin-top: 0px!important;
    }
}

@media only screen and (min-width:1140px) {
    .header .nav {
        display: block;
    }
    .title-area-left-column {
        padding-right: 5.25rem;
    }
    .search-btn {
        display: block;
    }
    .is-style-smaller-breakpoint.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 0!important;
        flex-grow: 1!important;
    }
}

@media only screen and (min-width:1215px) {
    .events_scroller_block.bump-up {
        margin-top: calc(-100px);
    }
}

@media only screen and (min-width:1280px) {
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link {
        font-size: 16px!important;
        padding: 0px 20px 0px 20px!important;
    }
    
}

@media only screen and (min-width: 1400px) {
    p,
    ul,
    ol {
        font-size: 1.6rem;
    }


    h1 {
        font-size: 3.8rem;
    }

    h2 {
        font-size: 2.4rem;
    }

    h3 {
        font-size: 2rem;
    }

    h4 {
        font-size: 1.8rem;
    }

    h5 {
        font-size: 1.8rem;
    }

    h6 {
        font-size: 1.8rem;
    }
    .area-info-block-title {
        font-size: 1.8rem;
    }
}

@media only screen and (min-width:1920px) {
    .is-style-right-wide {
        padding-left: 160px;
    }
}

/* max width */
@media only screen and (max-width:768px) {
    /* Apply left padding to every 2nd element (1st in the repeating pattern) */
    .mobile-left-padding {
        padding-left: 10%!important; /* Adjust the padding value as needed */
        padding-right: 0!important;
    }
    
    /* Apply right padding to every 2nd element (2nd in the repeating pattern) */
    .mobile-right-padding {
        padding-right: 10%!important; /* Adjust the padding value as needed */
        padding-left: 0!important;
    }

    .hide-block-on-mobile {
        display: none!important;
    }
    .is-style-hide-image-block-on-mobile {
        display: none!important;
    }
}

@media only screen and (max-width:1139px) {
    .is-style-smaller-breakpoint.wp-block-columns:not(.is-not-stacked-on-mobile) {
        flex-wrap: wrap!important;
    }
    .is-style-smaller-breakpoint.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 100%!important;
    }
}

/* is-hidden for bulma */
@media screen and (max-width: 768px) {
    .is-hidden-mobile {
      display: none !important;
    }
  }
  
  @media screen and (min-width: 769px), print {
    .is-hidden-tablet {
      display: none !important;
    }
  }
  
  @media screen and (min-width: 769px) and (max-width: 1023px) {
    .is-hidden-tablet-only {
      display: none !important;
    }
  }
  
  @media screen and (max-width: 1023px) {
    .is-hidden-touch {
      display: none !important;
    }
  }
  
  @media screen and (min-width: 1024px) {
    .is-hidden-desktop {
      display: none !important;
    }
  }
  
  @media screen and (min-width: 1024px) and (max-width: 1215px) {
    .is-hidden-desktop-only {
      display: none !important;
    }
  }
  
  @media screen and (min-width: 1216px) {
    .is-hidden-widescreen {
      display: none !important;
    }
  }
  
  @media screen and (min-width: 1216px) and (max-width: 1407px) {
    .is-hidden-widescreen-only {
      display: none !important;
    }
  }
  
  @media screen and (min-width: 1408px) {
    .is-hidden-fullhd {
      display: none !important;
    }
  }
  /* /is-hidden for bulma */

/*------------------------------------*\
    MISC
\*------------------------------------*/
::selection {
    background: #04A4CC;
    color: #FFF;
    text-shadow: none;
}

::-webkit-selection {
    background: #04A4CC;
    color: #FFF;
    text-shadow: none;
}

::-moz-selection {
    background: #04A4CC;
    color: #FFF;
    text-shadow: none;
}

#lvideo-wrap .lvideo-container {
    max-width: 978px!important;
}

.video-responsive {
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
    height: 0;
}

.map-responsive {
    overflow: hidden;
    padding-bottom: 100%;
    position: relative;
    height: 0;
    width: 100%;
}

.map-responsive iframe {
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    position: absolute!important;
    /* border: solid 10px white; */
}

.video-responsive iframe,
.video-responsive video {
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    position: absolute!important;
    /* border: solid 10px white; */
}

.hide-me {
    display: none!important;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #FFF;
    border: 1px solid #F0F0F0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption .wp-caption-text,
.gallery-caption {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

.sticky {}

.bypostauthor {}

/*------------------------------------*\
    PRINT
\*------------------------------------*/
@media print {
    * {
        background: transparent !important;
        box-shadow: none !important;
        color: #000 !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " ("attr(href) ")";
    }

    abbr[title]:after {
        content: " ("attr(title) ")";
    }

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }

    .nav,
    .sidebar,
    .home-slider,
    #respond {
        display: none;
    }

    @page {
        margin: 2cm;
    }
}
