/* ARTWORK NOTES
--------------------------------------------

--------------------------------------------
*/
html body.site-home {
    --section-slideshow-bg: transparent;
    --section-header-bg: var(--background-color);
    --section-expanded-bg: var(--background-color);
    --section-extension-bg: var(--tertiary-color);
}

html body {
    --side-menu-bg: var(--primary-color);
    --side-menu-bg-hover: var(--secondary-color);
    --side-menu-font-size-desktop: min(1.25vw, 1.25rem);
    --side-menu-font-family: var(--body-font-family);
    --side-menu-font-weight: 400;

    --section-bottom-bg: var(--primary-color);
}

html body #g-navigation {
    --main-menu-text-color: var(--default-white);
    --main-menu-text-color-hover: var(--default-white);
	--main-menu-bg: transparent;
    --main-menu-bg-color: transparent;

    --navigation-floating-social-padding: min(1vw, 1rem);

    --section-navigation-bg: transparent;
}

.g-array-item-text {
    margin: 0!important;
    padding: 0!important;
}

a {color: var(--secondary-color);}

@media only screen and (min-width: 50.99rem) {
    .site-sub.site.withmaxwidth #g-header > .g-container {
        width: 100%;
        max-width: 100%;
    }

    #hero-title-text {
        width: 100%;
        max-width: 1440px;
        transform: translateX(-50%);
        left: 50%;
        right: unset;
        padding-left: min(5vw, 5rem);
    }

    .grid-mobile-stacked .g-item-title {
        padding: min(.75vw, .75rem);
    }
}

/* NAVIGATION */
@media only screen and (min-width: 50.99rem) {
    .site-home #g-container-top {
        background: url('/images/template/header-left2.jpg') 0% 0% no-repeat;
        background-size: 50%;
    }

    .site-sub #g-page-surround {
        background: url('/images/template/header-left2.jpg') 0% 0% no-repeat;
        background-size: 50%;
    }
    .site-sub :is(#g-container-top, #g-navigation, #g-utility, #g-container-main, #g-sidebar, #g-mainbar) {
        background: transparent;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home #g-container-top {
        background: url('/images/template/header-left2.jpg') 0% 0% no-repeat;
        background-size: 50%;
    }

    .site-sub #g-page-surround {
        background: url('/images/template/header-left2.jpg') 0% 0% no-repeat;
        background-size: 50%;
    }
    .site-sub :is(#g-container-top, #g-navigation, #g-utility, #g-container-main, #g-sidebar, #g-mainbar) {
        background: transparent;
    }
}

/* Translate shortcut added beside the navigation's existing social icons. */
#g-navigation .g-main-nav .g-social-items a.site-translate-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

#g-navigation .g-main-nav .g-social-items a.site-translate-link img {
    display: block;
    width: 40px;
    height: 23px;
    object-fit: contain;
}

#g-navigation .g-main-nav .g-social-items a.site-translate-link:focus-visible {
    outline: 2px solid var(--secondary-color);
    outline-offset: 3px;
}

@media only screen and (min-width: 50.99rem) {
    #g-navigation > .g-container > .g-grid:has(.g-main-nav) {
        position: relative;
    }
    #g-navigation > .g-container > .g-grid:has(.g-main-nav):before {
        content: '';
        background: var(--primary-color);
        height: 100%;
        width: 3000%;
        margin-left: -500%;
        margin-right: -500%;
        position: absolute;
    }

    #g-navigation.crawl-space .g-main-nav .g-toplevel>li:hover:not(.g-menu-item-type-particle)>.g-menu-item-container, #g-navigation.crawl-space .g-main-nav .g-toplevel>li.active:not(.g-menu-item-type-particle)>.g-menu-item-container {
        margin: 0;
        border: none;
    }

    #g-navigation > .g-container > .g-grid:nth-child(2) {
        padding: min(1.25vw, 1.25rem) min(2.5vw, 2.5rem)!important;
    }

    .crawl-space > .g-container > .g-grid:has(.g-main-nav) .g-social-items a {
        color: var(--default-white)!important;
    }
    .crawl-space > .g-container > .g-grid:has(.g-main-nav) .g-social-items a:hover {
        color: var(--secondary-color)!important;
    }
}

@media only screen and (min-width: 50.99rem) {
    #g-navigation .g-main-nav .g-sublevel>li>.g-menu-item-container {
        color: var(--default-white);
    }
    #g-navigation .g-main-nav .g-sublevel>li>.g-menu-item-container:hover {
        background: var(--secondary-color);
        color: var(--default-white)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    #g-navigation > .g-container {
        padding: 1rem 0!important;
        display: flex;
        flex-direction: column;
    }
    #g-navigation > .g-container > .g-grid:nth-child(1) {
        order: 2;
    }
    #g-navigation > .g-container > .g-grid:nth-child(2) {
        order: 1;
        padding-bottom: 1rem;
    }
    #g-navigation > .g-container > .g-grid:nth-child(2) .g-logo {
        max-width: 30%!important;
    }
}

.mass-times-block .g-array-item-text a.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    margin-top: .25rem;
    padding: .75rem 1.25rem;
    border: 2px solid var(--secondary-color);
    border-radius: .35rem;
    background: var(--secondary-color);
    color: var(--primary-color);
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    box-shadow: var(--default-box-shadow);
    transition: color .2s ease, background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.mass-times-block .g-array-item-text a.button:hover,
.mass-times-block .g-array-item-text a.button:focus-visible {
    background: var(--primary-color);
    color: var(--default-white);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, .2);
}

.mass-times-block .g-array-item-text a.button:focus-visible {
    outline: 2px solid var(--primary-color);
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    .mass-times-block .g-array-item-text a.button {
        transition: none;
    }
}

/*SLIDESHOW*/
.mass-times-block .g-array-item-text :is(p, li) {
    font-size: 1.1rem;
    line-height: 1.25;
    margin-bottom: 3px;
}

@media only screen and (min-width: 50.99rem) {
    .site-home #g-slideshow > .g-container {
        padding: min(2.5vw, 2.5rem)!important;
    }
}

/* Keep the Mass Times column from becoming too narrow beside the swiper. */
@media only screen and (min-width: 50.99rem) and (max-width: 90rem) {
    .site-home #g-slideshow > .g-container > .g-grid {
        flex-direction: column!important;
        gap: clamp(1rem, 2vw, 2rem);
    }

    .site-home #g-slideshow > .g-container > .g-grid > .g-block {
        flex: 0 0 100%!important;
        width: 100%!important;
        max-width: 100%!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .mass-times-block {
        padding: 1.5rem!important;
    }
}

/*HEADER*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-header > .g-container {
        padding: min(2vw, 2rem) min(2.5vw, 2.5rem)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-header > .g-container {
        padding: 2rem 1rem!important;
    }
}

@media only screen and (min-width: 50.99rem) {
    .quicklinks-circle {
        margin: 0;
        padding: 0;
    }
    .quicklinks-circle > .g-content {
        margin: 0;
        padding: 0;
    }
    .quicklinks-circle > .g-content > div {
        margin: 0;
        padding: 0;
    }
    .quicklinks-circle .g-blockcontent {
        margin: 0;
        padding: 0;
    }
    .quicklinks-circle .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        gap: min(1.5vw, 1.5rem);
    }
    .quicklinks-circle .g-blockcontent-subcontent-block {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        position: relative;
        flex: 1;
        border-radius: 50%;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .quicklinks-circle .g-blockcontent-subcontent-block:hover {
        transform: scale(1.03);
    }
    .quicklinks-circle .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-title:before {
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        border: 2px solid transparent;
    }
    .quicklinks-circle .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .quicklinks-circle .g-blockcontent-subcontent-img {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        width: 100%;
        height: auto;
        aspect-ratio: 1/1;
        object-position: center;
        object-fit: cover;
    }
    .quicklinks-circle .g-blockcontent-subcontent-title {
        margin: 0;
        padding: min(2vw, 2rem);
        transition: .3s all ease-in-out;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        background: rgba(var(--primary-color-rgb),.6);
        color: var(--default-white);
        font-size: min(1.5vw, 1.5rem);
        font-weight: 700;
        line-height: 1.2;
        text-transform: none;
        font-variant-caps: normal;
    }
    .quicklinks-circle .g-blockcontent-subcontent-title:before {
        content: '';
        position: absolute;
        transition: .3s all ease-in-out;
        top: min(.75vw, .75rem);
        bottom: min(.75vw, .75rem);
        left: min(.75vw, .75rem);
        right: min(.75vw, .75rem);
        border: 2px solid var(--default-white);
        border-radius: 50%;
    }
    .quicklinks-circle .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        color: var(--default-white);
        font-size: min(1.5vw, 1.5rem);
        font-weight: 700;
        line-height: 1.2;
        text-transform: none;
        font-variant-caps: normal;
    }
    .quicklinks-circle .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .quicklinks-circle .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

@media only screen and (max-width: 50.99rem) {
    .quicklinks-circle {
        margin: 0;
        padding: 0;
    }
    .quicklinks-circle > .g-content {
        margin: 0;
        padding: 0;
    }
    .quicklinks-circle > .g-content > div {
        margin: 0;
        padding: 0;
    }
    .quicklinks-circle .g-blockcontent {
        margin: 0;
        padding: 0;
    }
    .quicklinks-circle .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 1rem;
    }
    .quicklinks-circle .g-blockcontent-subcontent-block {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        position: relative;
        flex: 1;
        min-width: calc(50% - .5rem);
        max-width: calc(50% - .5rem);
        border-radius: 50%;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .quicklinks-circle .g-blockcontent-subcontent-block:hover {
        transform: scale(1.03);
    }
    .quicklinks-circle .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-title:before {
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        border: 2px solid transparent;
    }
    .quicklinks-circle .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .quicklinks-circle .g-blockcontent-subcontent-img {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        width: 100%;
        height: auto;
        aspect-ratio: 1/1;
        object-position: center;
        object-fit: cover;
    }
    .quicklinks-circle .g-blockcontent-subcontent-title {
        margin: 0;
        padding: 1rem;
        transition: .3s all ease-in-out;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        background: rgba(var(--primary-color-rgb),.6);
        color: var(--default-white);
        font-size: 4vw;
        font-weight: 700;
        line-height: 1.2;
        text-transform: none;
        font-variant-caps: normal;
    }
    .quicklinks-circle .g-blockcontent-subcontent-title:before {
        content: '';
        position: absolute;
        transition: .3s all ease-in-out;
        top: .75rem;
        bottom: .75rem;
        left: .75rem;
        right: .75rem;
        border: 2px solid var(--default-white);
        border-radius: 50%;
    }
    .quicklinks-circle .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        color: var(--default-white);
        font-size: 4vw;
        font-weight: 700;
        line-height: 1.2;
        text-transform: none;
        font-variant-caps: normal;
    }
    .quicklinks-circle .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .quicklinks-circle .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

/*MAIN*/
@media only screen and (min-width: 50.99rem) {
    #g-container-main:has(.news-to-me) > .g-container {
        padding: min(5vw, 5rem) min(2.5vw, 2.5rem)!important;
    }

    .site-home #g-sidebar {
        height: 100%;
    }
    .site-home #g-sidebar > .g-grid {
        height: 100%;
    }

    .site-home #g-mainbar {
        height: 100%;
    }
    .site-home #g-mainbar > .g-grid {
        height: 100%;
    }

    .e-widget-container {height: 100%;}
    .e-widget-container > .g-content {height: 100%;}
    .e-widget-container > .g-content > .g-content-array {height: 100%;}
    .e-widget-container > .g-content > .g-content-array > .g-grid {height: 100%;}
    .e-widget-container > .g-content > .g-content-array > .g-grid > .g-block {height: 100%;}
    .e-widget-container > .g-content > .g-content-array > .g-grid > .g-block > .g-content {height: 100%;}
    .e-widget-container > .g-content > .g-content-array > .g-grid > .g-block > .g-content > .g-array-item {height: 100%;}
    .e-widget-container > .g-content > .g-content-array > .g-grid > .g-block > .g-content > .g-array-item > .g-array-item-text {height: 100%;}
    .e-widget-wrapper {height: 100%; display: flex; flex-direction: column; gap: min(1.5vw, 1.5rem);}
    .e-widget-wrapper .e-widget-content {flex: 1;}

    #g-container-main:has(.news-to-me) .g-title {
        margin: 0!important;
    }

    .e-widget-wrapper .e-widget-title {
        padding: 0 min(1vw, 1rem);
    }

    .news-widget-container .e-widget-button {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        padding: 0 min(1vw, 1rem);
    }
    .calendar-container .e-widget-button {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .e-widget-button .button {
        width: 70%;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        padding: min(1vw, 1rem);
    }
    .news-widget-container .e-widget-button .button {
        max-width: 226px;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-container-main > .g-container {
        padding: 2rem 0!important;
    }
    .e-widget-wrapper {height: 100%; display: flex; flex-direction: column; gap: 1rem;}
    .news-widget-container .e-widget-button {
        padding: 0 1rem!important;
    }
    #g-mainbar {
        padding: 0 1rem!important;
    }
}

@media only screen and (min-width: 50.99rem) {
    .n-widget-feed {
        margin: 0;
        padding: 0;
    }
    .n-widget-feed > div {
        margin: 0;
        padding: 0;
    }
    .n-widget-feed .g-content-array {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
    }
    .n-widget-feed .g-content-array > .g-grid {
        margin: 0;
        padding: min(1.5vw, 1.5rem) min(1vw, 1rem);
        transition: .3s all ease-in-out;
        position: relative;
        border-bottom: 2px solid var(--secondary-color);
    }
    .n-widget-feed .g-content-array > .g-grid > .g-block {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .n-widget-feed .g-content-array > .g-grid > .g-block > .g-content {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .n-widget-feed .g-array-item {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        display: flex;
        flex-direction: row;
        gap: min(1vw, 1rem);
        align-items: center;
    }
    .n-widget-feed .g-array-item:hover,
    .n-widget-feed .g-array-item:focus-within {
        transform: scale(1.025);
    }
    .n-widget-feed .g-array-item-image {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        flex: 1;
        border: 2px solid var(--default-white);
        border-radius: .75rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
        position: relative;
    }
    .n-widget-feed .g-array-item-image:before {
        content: '\f138';
        font-family: 'Font Awesome 6 Free';
        font-weight: 900;
        position: absolute;
        bottom: min(.5vw, .5rem);
        right: min(.5vw, .5rem);
        font-size: min(2vw, 2rem);
        color: rgba(var(--default-white-rgb),.85);
        backdrop-filter: blur(10px);
        --webkit-backdrop-filter: blur(10px);
        line-height: 1.25;
    }
    .n-widget-feed .g-array-item-image a {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .n-widget-feed .g-array-item-image img {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        width: 100%;
        height: auto;
        aspect-ratio: 16/9;
        object-position: center;
        object-fit: cover;
    }
    .n-widget-feed .g-array-item-title {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        flex: 1.5;
    }
    .n-widget-feed .g-item-title {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        font-size: min(1.5vw, 1.5rem);
        font-weight: 600;
        line-height: 1.4;
        font-family: var(--body-font-family);
        text-align: left;
        text-transform: none;
        font-variant-caps: normal;
        color: var(--primary-color);
        border: none;
        background: none;
    }
    .n-widget-feed .g-item-title a {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        font-size: min(1.5vw, 1.5rem);
        font-weight: 600;
        line-height: 1.4;
        font-family: var(--body-font-family);
        text-align: left;
        text-transform: none;
        font-variant-caps: normal;
        color: var(--primary-color);
        border: none;
        background: none;
    }
    .n-widget-feed .g-array-item-read-more {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .n-widget-feed .g-array-item-read-more a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

@media only screen and (max-width: 50.99rem) {
    .n-widget-feed {
        margin: 0;
        padding: 0;
        overflow: hidden;
    }

    .n-widget-feed > div {
        margin: 0;
        padding: 0;
    }

    .n-widget-feed .g-content-array {
        margin: 0;
        padding: 1rem 12.5vw;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 1rem;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: 12.5vw;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .n-widget-feed .g-content-array::-webkit-scrollbar {
        display: none;
    }

    .n-widget-feed .g-content-array > .g-grid {
        margin: 0;
        padding: 0;
        position: relative;
        flex: 0 0 75vw;
        width: 75vw;
        max-width: 75vw;
        scroll-snap-align: center;
        scroll-snap-stop: always;
        transition: .3s all ease-in-out;
        border-bottom: none;
    }

    .n-widget-feed .g-content-array > .g-grid > .g-block {
        margin: 0;
        /*padding: 1rem;*/
        height: 100%;
        transition: .3s all ease-in-out;
    }

    .n-widget-feed .g-content-array > .g-grid > .g-block > .g-content {
        margin: 0;
        padding: 0;
        height: 100%;
        transition: .3s all ease-in-out;
    }

    .n-widget-feed .g-array-item {
        margin: 0;
        padding: 0;
        height: 100%;
        transition: .3s all ease-in-out;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
    }

    .n-widget-feed .g-array-item:hover,
    .n-widget-feed .g-array-item:focus-within {
        transform: scale(1.01);
    }

    .n-widget-feed .g-array-item-image {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        border: 2px solid var(--default-white);
        border-radius: .75rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
        position: relative;
    }

    .n-widget-feed .g-array-item-image:before {
        content: '\f138';
        font-family: 'Font Awesome 6 Free';
        font-weight: 900;
        position: absolute;
        z-index: 2;
        bottom: .5rem;
        right: .5rem;
        font-size: 5vw;
        color: rgba(var(--default-white-rgb), .85);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        line-height: 1.25;
        pointer-events: none;
    }

    .n-widget-feed .g-array-item-image a {
        margin: 0;
        padding: 0;
        display: block;
        transition: .3s all ease-in-out;
    }

    .n-widget-feed .g-array-item-image img {
        margin: 0;
        padding: 0;
        display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        object-position: center;
        object-fit: cover;
        transition: .3s all ease-in-out;
    }

    .n-widget-feed .g-array-item-title {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }

    .n-widget-feed .g-item-title,
    .n-widget-feed .g-item-title a {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        font-size: 5vw;
        font-weight: 600;
        line-height: 1.4;
        font-family: var(--body-font-family);
        text-align: left;
        text-transform: none;
        font-variant-caps: normal;
        color: var(--primary-color);
        border: none;
        background: none;
    }

    .n-widget-feed .g-array-item-read-more,
    .n-widget-feed .g-array-item-read-more a {
        margin: 0;
        padding: 0;
        position: absolute;
        inset: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }

    .n-widget-feed .g-array-item-read-more a {
        z-index: 3;
    }
}

@media only screen and (min-width: 50.99rem) {
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content {
        overflow-y: auto!important;
        max-height: min(51vw, 565px);
        padding: min(.5vw, .5rem) min(1vw, 1rem);

        scrollbar-width: thin;
        scrollbar-color: rgba(255,255,255,.45) transparent;
    }

    /* Chrome, Edge, Safari */
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar {
        width: 8px;
    }

    /* Hide scrollbar track/container */
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-track {
        background: transparent;
    }

    /* Hide scrollbar buttons/arrows */
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button {
        display: none;
        width: 0;
        height: 0;
    }

    /* Keep only the draggable scrollbar bar visible */
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-thumb {
        background: rgba(255,255,255,.45);
        border-radius: 999px;
    }

    /* Optional hover */
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-thumb:hover {
        background: rgba(255,255,255,.65);
    }

    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:single-button,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:vertical,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:vertical:start,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:vertical:end,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:vertical:increment,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:vertical:decrement {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        background: transparent !important;
        background-image: none !important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content {
        overflow-y: auto!important;
        max-height: 500px;
        padding: .5rem 1rem;

        scrollbar-width: thin;
        scrollbar-color: rgba(255,255,255,.45) transparent;
    }

    /* Chrome, Edge, Safari */
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar {
        width: 8px;
    }

    /* Hide scrollbar track/container */
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-track {
        background: transparent;
    }

    /* Hide scrollbar buttons/arrows */
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button {
        display: none;
        width: 0;
        height: 0;
    }

    /* Keep only the draggable scrollbar bar visible */
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-thumb {
        background: rgba(255,255,255,.45);
        border-radius: 999px;
    }

    /* Optional hover */
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-thumb:hover {
        background: rgba(255,255,255,.65);
    }

    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:single-button,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:vertical,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:vertical:start,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:vertical:end,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:vertical:increment,
    .site-home #g-container-main .e-widget-container.calendar-container .e-widget-content::-webkit-scrollbar-button:vertical:decrement {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        background: transparent !important;
        background-image: none !important;
    }
}

@media only screen and (min-width: 50.99rem) {
    .gcaltohtml {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: min(1vw, 1rem);
    }
    .gcaltohtml .cc-block {
        margin: 0;
        padding: 0;
        background: var(--default-white);
        border-radius: .5rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .gcaltohtml .cc-dateblockformat {
        margin: 0;
        padding: 3px min(.5vw, .5rem);
        display: flex;
        flex-direction: row;
        gap: min(1vw, 1rem);
        justify-content: space-between;
        align-items: center;
        background: var(--background-color);
    }
    .gcaltohtml .cc-dateset {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        gap: min(.5vw, .5rem);
        align-items: center;
    }
    .gcaltohtml .cc-day-of-month-num {
        margin: 0;
        padding: min(.5vw, .5rem);
        font-size: min(1.5vw, 1.5rem);
        color: var(--primary-color);
        font-family: var(--title-font-family);
        border-radius: 50%;
        background: transparent;
        aspect-ratio: 1/1;
        height: min(2.5vw, 2.5rem)!important;
        width: auto;
        line-height: 1;
        font-weight: 700;
    }
    .gcaltohtml .cc-month-year {
        margin: 0;
        padding: 0;
        font-size: min(1.4vw, 1.4rem);
        line-height: 1;
        color: var(--primary-color);
        font-weight: 600;
        font-family: var(--body-font-family);
        text-align: left;
    }
    .gcaltohtml .cc-dayset {
        margin: 0;
        padding: 0;
        font-size: min(1.4vw, 1.4rem);
        line-height: 1;
        color: var(--primary-color);
        font-weight: 600;
        font-family: var(--body-font-family);
        text-align: right;
    }
    .gcaltohtml .cc-eventblock {
        margin: 0;
        padding: min(.75vw, .75rem);
    }
    .gcaltohtml .cc-innereventblock {
        margin: 0;
        padding: 0;
    }
    .gcaltohtml .event {
        margin: 0;
        padding: min(.5vw, .5rem) 0;
        display: flex;
        flex-direction: row;
        gap: min(1.5vw, 1.5rem);
    }
    .gcaltohtml .cc-innereventblock > .event:not(.event:last-child) {
        border-bottom: 1px solid rgba(0,0,0,.3);
    }
    .gcaltohtml .cc-timeofday {
        margin: 0;
        padding: 0;
        flex: 1;
        font-size: min(1.4vw, 1.4rem);
        color: var(--primary-color);
        font-weight: 700;
        font-family: var(--title-font-family);
        line-height: 1.2;
    }
    .gcaltohtml .cc-title {
        margin: 0;
        padding: 0;
        flex: 2.5;
        font-size: min(1.25vw, 1.25rem);
        text-align: left;
        line-height: 1.2;
        font-weight: 400;
        color: var(--default-black);
        font-family: var(--body-font-family);
    }
}

@media only screen and (max-width: 50.99rem) {
    .gcaltohtml {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .gcaltohtml .cc-block {
        margin: 0;
        padding: 0;
        background: var(--default-white);
        border-radius: .5rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .gcaltohtml .cc-dateblockformat {
        margin: 0;
        padding: 3px .5rem;
        display: flex;
        flex-direction: row;
        gap: 1rem;
        justify-content: space-between;
        align-items: center;
        background: var(--background-color);
    }
    .gcaltohtml .cc-dateset {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        gap: .5rem;
        align-items: center;
    }
    .gcaltohtml .cc-day-of-month-num {
        margin: 0;
        padding: .5rem;
        font-size: 4vw;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        border-radius: 50%;
        background: transparent;
        aspect-ratio: 1/1;
        height: 2.5rem!important;
        width: auto;
        line-height: 1;
        font-weight: 700;
    }
    .gcaltohtml .cc-month-year {
        margin: 0;
        padding: 0;
        font-size: 4vw;
        line-height: 1;
        color: var(--primary-color);
        font-weight: 600;
        font-family: var(--body-font-family);
        text-align: left;
    }
    .gcaltohtml .cc-dayset {
        margin: 0;
        padding: 0;
        font-size: 4vw;
        line-height: 1;
        color: var(--primary-color);
        font-weight: 600;
        font-family: var(--body-font-family);
        text-align: right;
    }
    .gcaltohtml .cc-eventblock {
        margin: 0;
        padding: .75rem;
    }
    .gcaltohtml .cc-innereventblock {
        margin: 0;
        padding: 0;
    }
    .gcaltohtml .event {
        margin: 0;
        padding: .5rem 0;
        display: flex;
        flex-direction: row;
        gap: 1rem;
    }
    .gcaltohtml .cc-innereventblock > .event:not(.event:last-child) {
        border-bottom: 1px solid rgba(0,0,0,.3);
    }
    .gcaltohtml .cc-timeofday {
        margin: 0;
        padding: 0;
        flex: 1;
        font-size: 4vw;
        color: var(--primary-color);
        font-weight: 700;
        font-family: var(--title-font-family);
        line-height: 1.2;
    }
    .gcaltohtml .cc-title {
        margin: 0;
        padding: 0;
        flex: 2.5;
        font-size: 4vw;
        text-align: left;
        line-height: 1.2;
        font-weight: 400;
        color: var(--default-black);
        font-family: var(--body-font-family);
    }
}

/*EXPANDED*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-expanded > .g-container {
        padding: min(3vw, 3rem) min(2.5vw, 2.5rem)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-expanded > .g-container {
        padding: 2rem 1rem!important;
    }
}

/* =========================================================
   EQUAL WIDGET BOXES
   ========================================================= */

.equal-widget-boxes {
    padding: 4rem 0;
}

.equal-widget-boxes > .g-container > .g-grid {
    display: flex;
    align-items: stretch;
    gap: 2rem;
}


/* =========================================================
   COLUMNS
   ========================================================= */

.equal-widget-boxes .equal-widget-container {
    flex: 1 1 0;
    width: 33.333%;
    min-width: 0;
}

.equal-widget-boxes .equal-widget-container > .g-content,
.equal-widget-boxes .equal-widget-container .g-content-array,
.equal-widget-boxes .equal-widget-container .g-content-array > .g-grid,
.equal-widget-boxes .equal-widget-container .g-content-array > .g-grid > .g-block,
.equal-widget-boxes .equal-widget-container .g-content-array > .g-grid > .g-block > .g-content,
.equal-widget-boxes .equal-widget-container .g-array-item,
.equal-widget-boxes .equal-widget-container .g-array-item-text {
    height: 100%;
}


/* =========================================================
   BOX
   ========================================================= */

.equal-widget-boxes .equal-widget-wrapper {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 42rem;

    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 0.75rem;

    overflow: hidden;

    box-shadow:
        0 0.25rem 0.75rem rgba(0, 0, 0, 0.06),
        0 1rem 2.5rem rgba(0, 0, 0, 0.08);
}


/* =========================================================
   TITLE
   ========================================================= */

.equal-widget-boxes .equal-widget-title {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;

    min-height: 5.5rem;
    padding: 1.25rem 1.75rem;

    background: var(--primary-color);
}

.equal-widget-boxes .equal-widget-title .g-title {
    margin: 0;
    padding: 0;

    color: #fff;

    font-size: clamp(1.5rem, 1.75vw, 2rem);
    line-height: 1.15;
    font-weight: 700;
    border: none;
    text-align: center;
}


/* =========================================================
   CONTENT
   ========================================================= */

.equal-widget-boxes .equal-widget-feed {
    flex: 1 1 auto;

    padding: 1.5rem 1.75rem;

    overflow: auto;

    scrollbar-width: thin;
}

.equal-widget-boxes .equal-widget-feed > :first-child {
    margin-top: 0;
}

.equal-widget-boxes .equal-widget-feed > :last-child {
    margin-bottom: 0;
}


/* =========================================================
   LINKS
   ========================================================= */
.equal-widget-boxes .equal-widget-feed a {
    color: var(--primary-color);
}
.equal-widget-boxes .equal-widget-feed a[href^="mailto:"] {
    color: var(--primary-color);
    font-weight: 600;
    text-decoration: none;
}

.equal-widget-boxes .equal-widget-feed a:hover,
.equal-widget-boxes .equal-widget-feed a:focus {
    text-decoration: underline;
}


/* =========================================================
   MASS VIDEOS
   ========================================================= */

.equal-widget-boxes .video-widget-container .equal-widget-feed p {
    margin: 0 0 1.5rem;
}

.equal-widget-boxes .video-widget-container .equal-widget-feed p:last-child {
    margin-bottom: 0;
}

.equal-widget-boxes .video-widget-container iframe {
    display: block;

    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;

    margin-top: 0.5rem;

    border: 0;
    border-radius: 0.4rem;
}


/* =========================================================
   STAFF
   ========================================================= */

.equal-widget-boxes .staff-widget-container .equal-widget-feed p {
    margin: 0;
    padding: min(.5vw, .5rem) 0;

    line-height: 1.5;

    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    font-size: min(.96vw, .96rem);
}

.equal-widget-boxes .staff-widget-container .equal-widget-feed p:first-child {
    padding-top: 0;
}

.equal-widget-boxes .staff-widget-container .equal-widget-feed p:last-child {
    border-bottom: 0;
}

.equal-widget-boxes .staff-widget-container .equal-widget-feed a {
    overflow-wrap: anywhere;
}


/* =========================================================
   FACEBOOK
   ========================================================= */

.equal-widget-boxes .facebook-widget-container .equal-widget-feed {
    padding: 0;
}

.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-container {
    width: 100% !important;
    max-width: none !important;
}


/* =========================================================
   BOTTOM BUTTON
   ========================================================= */

.equal-widget-boxes .equal-widget-button {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 0.65rem;

    padding: 1.25rem 1.75rem;

    background: rgba(0, 0, 0, 0.035);

    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.equal-widget-boxes .equal-widget-button .button {
    margin: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.equal-widget-boxes .button-subtext {
    font-size: min(.7vw, .65rem);
    font-weight: 400;
    line-height: 1.4;
    text-align: center;
    width: 100%;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media only all and (max-width: 50.99rem) {

    .equal-widget-boxes {
        padding: 2.5rem 0;
    }

    .equal-widget-boxes > .g-container > .g-grid {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }

    .equal-widget-boxes .equal-widget-container {
        flex: 0 0 auto;
        width: 100%;
    }

    .equal-widget-boxes .equal-widget-wrapper {
        height: auto;
        min-height: 0;
        border-radius: 0.6rem;
    }

    .equal-widget-boxes .equal-widget-title {
        min-height: 0;
        padding: 1rem 1.25rem;
    }

    .equal-widget-boxes .equal-widget-title .g-title {
        font-size: 1.5rem;
    }

    .equal-widget-boxes .equal-widget-feed {
        flex: none;
        max-height: 30rem;

        padding: 1.25rem;

        overflow-y: auto;
    }

    .equal-widget-boxes .facebook-widget-container .equal-widget-feed {
        padding: 0;
    }

    .equal-widget-boxes .mass-widget-container .equal-widget-feed {
        max-height: none;
    }

    .equal-widget-boxes .mass-widget-container iframe {
        width: 100%;
        aspect-ratio: 16 / 9;
    }

    .equal-widget-boxes .equal-widget-button {
        padding: 1rem 1.25rem;
    }

    .equal-widget-boxes .staff-widget-container .equal-widget-feed p {
        font-size: 4vw;
    }

}

/* =========================================================
   SQUARE ALL WIDGET CORNERS
   ========================================================= */

/* =========================================================
   FACEBOOK HEIGHT
   ========================================================= */

.equal-widget-boxes .facebook-widget-container .equal-widget-wrapper {
    min-height: 0;
    overflow: hidden;
}

/*
 * IMPORTANT:
 * height: 0 prevents the enormous Facebook feed from
 * determining the height of the entire three-column row.
 *
 * flex: 1 then makes it fill whatever space is available
 * inside the equal-height card.
 */
.equal-widget-boxes .facebook-widget-container .equal-widget-feed {
    flex: 1 1 0;
    height: 0;
    min-height: 0;

    padding: 0;
    overflow: hidden;
}


/* Elfsight outer containers */
.equal-widget-boxes .facebook-widget-container .eapps-widget,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-container,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-inner {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;

    border-radius: 0 !important;
}


/*
 * Make Elfsight use a column layout so its header/menu remain
 * visible while the posts area receives the leftover space.
 */
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-inner {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}


/* The posts section gets the remaining height */
.equal-widget-boxes
.facebook-widget-container
.eapps-facebook-feed-content-container {
    flex: 1 1 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: none !important;

    overflow-y: auto !important;

    border-radius: 0 !important;
}


/* Remove remaining rounded corners */
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-header,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-menu,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-content,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-posts,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-posts-item,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-posts-item-inner {
    border-radius: 0 !important;
}


/* Make Facebook fill the card */
.equal-widget-boxes .facebook-widget-container .equal-widget-feed {
    flex: 1 1 auto;
    min-height: 0;
    padding: 0;
    overflow: hidden;
}

.equal-widget-boxes .facebook-widget-container .eapps-widget,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-container,
.equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-inner {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
}


/* Scroll the Facebook posts instead of growing the card */
.equal-widget-boxes
.facebook-widget-container
.eapps-facebook-feed-content-container {
    min-height: 0;
    overflow-y: auto !important;
}


/* Mobile */
@media only all and (max-width: 50.99rem) {

    .equal-widget-boxes .equal-widget-wrapper {
        border-radius: 0;
    }

}

/* =========================================================
   FACEBOOK DESKTOP
   ========================================================= */

.equal-widget-boxes .facebook-widget-container .equal-widget-feed {
    flex: 1 1 0;
    height: 0;
    min-height: 0;

    padding: 0;
    overflow: hidden;
}


/* =========================================================
   FACEBOOK MOBILE
   ========================================================= */

@media only all and (max-width: 50.99rem) {

    .equal-widget-boxes .facebook-widget-container .equal-widget-wrapper {
        height: auto;
        min-height: 0;
    }

    .equal-widget-boxes .facebook-widget-container .equal-widget-feed {
        flex: none;

        height: auto;
        min-height: 28rem;
        max-height: 38rem;

        overflow: hidden;
    }

    .equal-widget-boxes .facebook-widget-container .eapps-widget,
    .equal-widget-boxes .facebook-widget-container .eapps-facebook-feed,
    .equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-container,
    .equal-widget-boxes .facebook-widget-container .eapps-facebook-feed-inner {
        height: 100% !important;
        min-height: 0 !important;
        max-height: 100% !important;
    }

    .equal-widget-boxes
    .facebook-widget-container
    .eapps-facebook-feed-content-container {
        flex: 1 1 auto !important;

        height: auto !important;
        min-height: 0 !important;

        overflow-y: auto !important;
    }

}

/*EXTENSION*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-extension > .g-container {
        padding: min(5vw, 5rem) min(2.5vw, 2.5rem)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-extension > .g-container {
        padding: 2rem 1rem!important;
    }
}

@media only screen and (min-width: 50.99rem) {
    .ql-important-links {
        margin: 0;
        padding: 0;
    }
    .ql-important-links > .g-content {
        margin: 0;
        padding: 0;
    }
    .ql-important-links > .g-content > div {
        margin: 0;
        padding: 0;
    }
    .ql-important-links .g-blockcontent {
        margin: 0;
        padding: 0;
    }
    .ql-important-links .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        gap: min(4vw, 4rem);
    }
    .ql-important-links .g-blockcontent-subcontent-block {
        margin: 0;
        padding: 0;
        position: relative;
        flex: 1;
        transition: .3s all ease-in-out;
    }
    .ql-important-links .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-img {
        transform: scale(1.03) translateY(-.5rem);
    }
    .ql-important-links .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: min(1.5vw, 1.5rem);
        transition: .3s all ease-in-out;
    }
    .ql-important-links .g-blockcontent-subcontent-img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        aspect-ratio: 4/3;
        object-position: center;
        object-fit: cover;
        box-shadow: var(--default-box-shadow);
        border-radius: 16px;
        overflow: hidden;
        transition: .3s all ease-in-out;
    }
    .ql-important-links .g-blockcontent-subcontent-title {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        display: flex;
        justify-content: center;
        align-items: center;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        text-align: center;
        font-size: min(2vw, 2rem);
        line-height: 1;
        font-weight: 500;
        text-transform: none;
        font-variant-caps: normal;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        background: none;
    }
    .ql-important-links .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        text-align: center;
        font-size: min(2vw, 2rem);
        line-height: 1;
        font-weight: 500;
        text-transform: none;
        font-variant-caps: normal;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        background: none;
    }
    .ql-important-links .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .ql-important-links .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

@media only screen and (max-width: 50.99rem) {
    .ql-important-links {
        margin: 0;
        padding: 0;
    }
    .ql-important-links > .g-content {
        margin: 0;
        padding: 0;
    }
    .ql-important-links > .g-content > div {
        margin: 0;
        padding: 0;
    }
    .ql-important-links .g-blockcontent {
        margin: 0;
        padding: 0;
    }
    .ql-important-links .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 4rem;
    }
    .ql-important-links .g-blockcontent-subcontent-block {
        margin: 0;
        padding: 0;
        position: relative;
        flex: 1;
        transition: .3s all ease-in-out;
    }
    .ql-important-links .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-img {
        transform: scale(1.03) translateY(-.5rem);
    }
    .ql-important-links .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        transition: .3s all ease-in-out;
    }
    .ql-important-links .g-blockcontent-subcontent-img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        aspect-ratio: 4/3;
        object-position: center;
        object-fit: cover;
        box-shadow: var(--default-box-shadow);
        border-radius: 16px;
        overflow: hidden;
        transition: .3s all ease-in-out;
    }
    .ql-important-links .g-blockcontent-subcontent-title {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        display: flex;
        justify-content: center;
        align-items: center;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        text-align: center;
        font-size: 5vw;
        line-height: 1;
        font-weight: 500;
        text-transform: none;
        font-variant-caps: normal;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        background: none;
    }
    .ql-important-links .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        text-align: center;
        font-size: 5vw;
        line-height: 1;
        font-weight: 500;
        text-transform: none;
        font-variant-caps: normal;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        background: none;
    }
    .ql-important-links .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .ql-important-links .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

/*FOOTER*/
@media only screen and (min-width: 50.99rem) {
    #g-footer > .g-container {
        padding: min(2vw, 2rem) min(2.5vw, 2.5rem) min(7vw, 7rem) min(2.5vw, 2.5rem)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site.withmaxwidth #g-footer > .g-container {
        padding: 2rem 1rem 7rem 1rem!important;
    }
}

/* =========================================================
   FOOTER
   ========================================================= */

.footer-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 4rem;

    padding: min(2vw, 2rem) 0;

    color: #fff;
    border-bottom: 2px solid rgba(var(--default-white-rgb),.4);
}


/* =========================================================
   LOGO
   ========================================================= */

.footer-logo {
    flex: 0 0 11rem;
}

.footer-logo a {
    display: block;
}

.footer-logo img {
    display: block;
    width: 100%;
    max-width: 11rem;
    height: auto;
}


/* =========================================================
   MAIN CONTENT
   ========================================================= */

.footer-content {
    flex: 1 1 auto;
    min-width: 0;
}

.footer-content h3 {
    margin: 0 0 0.75rem;

    color: #c79c48;

    font-size: clamp(2rem, 2.5vw, 2.8rem);
    line-height: 1.1;
    font-weight: 400;
    border: none;
}

.footer-content > p {
    margin: 0 0 2rem;

    font-size: 1rem;
    line-height: 1.6;
}


/* =========================================================
   LINKS
   ========================================================= */

.footer-wrapper a {
    color: #fff;
    text-decoration: none;
}

.footer-wrapper a:hover,
.footer-wrapper a:focus {
    color: #c79c48;
    text-decoration: none;
}


/* =========================================================
   CAMPUSES
   ========================================================= */

.footer-campuses {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3rem;
}

.footer-campuses > div {
    min-width: 0;
}

.footer-campuses h4 {
    margin: 0 0 0.75rem;

    color: #fff;

    font-size: 1rem;
    line-height: 1.4;
    font-weight: 700;
}

.footer-campuses p {
    margin: 0;

    font-size: 1rem;
    line-height: 1.7;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media only all and (max-width: 50.99rem) {

    .footer-wrapper {
        flex-direction: column;
        gap: 2rem;
    }

    .footer-logo {
        flex: none;
        width: 100%;
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .footer-logo img {
        max-width: 8rem;
    }

    .footer-content {
        width: 100%;
    }

    .footer-content h3 {
        font-size: 2rem;
    }

    .footer-content > p {
        margin-bottom: 1.5rem;
    }

    .footer-campuses {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

}

/*BOTTOM*/
@media only screen and (min-width: 50.99rem) {
    #g-bottom {
        position: relative;
        z-index: 10;
    }
    #g-bottom > .g-container {
        padding: 2rem 0!important;
    }
    #g-bottom .admod td {
        padding-top: 0!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    #g-bottom {
        position: relative;
        z-index: 10;
    }
    .site.withmaxwidth #g-bottom > .g-container {
        padding: 2rem 0!important;
    }
    #g-bottom .admod td {
        padding-top: 0.5rem!important;
    }
}

.search-page #searchForm .btn {
    background: var(--primary-color);
}

.grid-articles .g-array-item-text a:not(a.button) {
    color: var(--primary-color);
}
.grid-articles .g-array-item-text a {
    color: var(--primary-color);
}

@media only screen and (max-width: 50.99rem) {
    .admod.adside tbody {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: .5rem .5rem;
    }
}

@media only screen and (max-width: 50.99rem) {
    body#site-grid.newslayout #g-container-main > .g-container {
        padding: 2rem 1rem!important;
    }
    body#site-grid.newslayout #g-container-main #g-mainbar {
        margin: 0!important;
        padding: 0!important;
    }

    #site-grid.newslayout .grid-mobile-stacked .g-item-title {
        --grid-title-font-size: 3vw;
    }
}

@media only screen and (max-width: 50.99rem) {
    body .side-menu-particle .g-blockcontent-subcontent-title-text {
        --side-menu-font-size-desktop: 4vw;
    }
}
