/* ARTWORK NOTES
--------------------------------------------

--------------------------------------------
*/

html body.site-home {
    --section-slideshow-bg: rgba(var(--primary-color-rgb),.9);
    --section-header-bg: var(--primary-color);
    --section-above-bg: var(--primary-color);
    --section-feature-bg: var(--primary-color);
    --section-showcase-bg: var(--primary-color);

    --section-container-main-bg: rgba(var(--primary-color-rgb),.9);

    --section-expanded-bg: var(--background-color);
    --section-extension-bg: rgba(var(--primary-color-rgb),.9);
}

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(--background-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);
}

.g-array-item-text {
    margin: 0!important;
    padding: 0!important;
}

/*OFFCANVAS*/
@media only screen and (max-width: 50.99rem) {
    #g-offcanvas .g-social-items {
        flex-wrap: wrap;
    }
}

/* NAVIGATION */
@media only screen and (min-width: 50.99rem) {
    #g-navigation {
        background: url('/images/template/bg-header.jpg') 50% 50% no-repeat;
        background-size: cover;
        position: relative;
        box-shadow: var(--default-box-shadow);
    }
    #g-navigation:before {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background: rgba(var(--primary-color-rgb),.9);
        backdrop-filter: blur(7px);
        --webkit-backdrop-filter: blur(7px);
    }
}

@media only screen and (max-width: 50.99rem) {
    #g-navigation {
        background: url('/images/template/bg-header.jpg') 50% 50% no-repeat;
        background-size: cover;
        position: relative;
        box-shadow: var(--default-box-shadow);
    }
    #g-navigation:before {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background: rgba(var(--primary-color-rgb),.9);
        backdrop-filter: blur(7px);
        --webkit-backdrop-filter: blur(7px);
    }
    #g-navigation > .g-container {
        padding: 1.5rem 0!important;
    }
}

@media only screen and (min-width: 50.99rem) {
    #g-navigation > .g-container > .g-grid:has(.sh-circle-icon) {
        padding: min(1vw, 1rem) min(2vw, 2rem) 0 min(2vw, 2rem)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    #g-navigation > .g-container > .g-grid:has(.nav-search) {
        padding: 2rem 1.5rem 0 1.5rem!important;
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    #g-navigation .nav-social-icons {
        display: none!important;
    }

    .space-hog .nav-search {
        pointer-events: all!important;
        width: 100%;
    }
    .space-hog .nav-search .g-search form {
        border: 2px solid var(--default-white);
        background: rgba(255,255,255,.15);
        border-radius: .25rem;
        overflow: hidden;
    }
    .space-hog .nav-search .g-search form:before {
        color: var(--default-white);
    }
}

@media only screen and (min-width: 50.99rem) {
    .space-hog > .g-container > .g-grid:has(.nav-social-icons) {
        top: 0;
        right: min(2vw, 2rem);
        bottom: unset;
        display: flex;
        flex-direction: row;
        gap: min(2vw, 2rem);
    }
    .space-hog > .g-container > .g-grid:has(.nav-social-icons) > .g-block {
        background: none;
        padding: 0;
        margin: 0;
        border-radius: 0;
        flex: unset;
        width: unset;
    }
    .space-hog > .g-container > .g-grid:has(.nav-social-icons) > .g-block.nav-social-icons {
        background: var(--default-white);
        padding: min(1vw, 1rem);
        border-bottom-left-radius: 1rem;
        border-bottom-right-radius: 1rem;
        overflow: hidden;
    }
    .space-hog > .g-container > .g-grid:has(.nav-social-icons) .g-social-items {
        flex-direction: row;
    }
    .space-hog > .g-container > .g-grid:has(.nav-social-icons) .g-social-items a {
        color: var(--primary-color)!important;
    }

    .space-hog .nav-search {
        pointer-events: all!important;
    }
    .space-hog .nav-search .g-search form {
        border: 2px solid var(--default-white);
        background: rgba(255,255,255,.15);
        border-radius: .25rem;
        overflow: hidden;
    }
    .space-hog .nav-search .g-search form:before {
        color: var(--default-white);
    }
}

@media only screen and (min-width: 50.99rem) {
    .space-hog > .g-container > .g-grid:has(.ql-toplinks-studius) {
        align-items: stretch!important;
    }
    .space-hog > .g-container > .g-grid:has(.ql-toplinks-studius) .ql-toplinks-studius {
        align-items: flex-end!important;
        display: flex;
        padding-bottom: min(2vw, 2rem);
    }
    .space-hog > .g-container > .g-grid:has(.ql-toplinks-studius) .ql-toplinks-studius > .g-content {
        width: 100%;
    }
    .ql-toplinks-studius .g-blockcontent-subcontent-block-content {
        flex-direction: row;
        justify-content: center;
    }

    .space-hog > .g-container > .g-grid:has(.sh-circle-icon) > .g-block:not(.sh-circle-icon):has(.g-logo) {
        /*padding-left: 0!important;*/
        display: flex;
        align-items: center;
    }

    .ql-toplinks-studius .g-blockcontent-subcontent-block {
        border-radius: .5rem;
        overflow: hidden;
    }
}

@media only screen and (min-width: 50.99rem) {
    .space-hog > .g-container > .g-grid:has(.g-main-nav) {
        box-shadow: none;
    }


    #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: rgba(var(--default-white-rgb),.15);
        height: 100%;
        width: 3000%;
        margin-left: -500%;
        margin-right: -500%;
        position: absolute;
        border-top: 4px solid var(--default-white);
    }

    .space-hog .g-main-nav .g-toplevel>li:not(.g-toplevel>li:has(.g-social-items))>.g-menu-item-container {
        padding: min(1.5vw, 1.5rem) min(1vw, 14.4px) min(1.25vw, 1.25rem) min(1vw, 14.4px);
    }

    .space-hog .g-main-nav .g-toplevel>li>.g-menu-item-container>.g-menu-item-content>.g-menu-item-title {
        font-size: min(1vw, 1rem);
    }

    #g-navigation .g-main-nav .g-toplevel > li:has(.g-social-items) {
        display: none!important;
    }

    .nav-search input {
        color: var(--default-white)!important;
    }
}

@media only screen and (max-width: 50.9rem) {
    .nav-search input {
        color: var(--default-white)!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;
    }
}

/*SLIDESHOW*/
@media only screen and (min-width: 50.99rem) {
    .video-bg .g-video {
        box-shadow: none;
        background: transparent;
        padding-bottom: min(42vw, 602.5px);
    }
    .video-bg .g-videolocal-play {
        display: none!important;
    }
    .video-bg video {
        width: 100%;
        aspect-ratio: 2.39/1;
        object-position: center;
        object-fit: cover;
        height: unset!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .video-bg .g-video {
        box-shadow: none;
        background: transparent;
        padding-bottom: min(42vw, 602.5px);
    }
    .video-bg .g-videolocal-play {
        display: none!important;
    }
    .video-bg video {
        width: 100%;
        aspect-ratio: 2.39/1;
        object-position: center;
        object-fit: cover;
        height: unset!important;
    }
}


/*HEADER*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-header > .g-container {
        padding: min(2vw, 2rem)!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) {
    .welcome-wrapper {
        display: flex;
        flex-direction: column;
        gap: min(2vw, 2rem);
    }
    .welcome-wrapper .welcome-title {
        display: flex;
        flex-direction: column;
        gap: min(1.5vw, 1.5rem);
    }
    .welcome-wrapper .welcome-title-header {
        display: flex;
        flex-direction: row;
        gap: min(2vw, 2rem);
        align-items: center;
        justify-content: center;
    }
    .welcome-wrapper .welcome-title-header:before {
        content: '';
        border-bottom: 2px solid var(--default-white);
        flex: 1;
        order: 1;
    }
    .welcome-wrapper .welcome-title-header .g-title {
        margin: 0;
        padding: 0;
        order: 2;
        color: var(--default-white);
        font-size: min(3.5vw, 3.5rem);
        line-height: 1;
        border: none;
        text-transform: none;
        font-variant-caps: normal;
        text-align: center;
        font-weight: 600;
    }
    .welcome-wrapper .welcome-title-header:after {
        content: '';
        border-bottom: 2px solid var(--default-white);
        flex: 1;
        order: 3;
    }

    .welcome-wrapper .welcome-title-text p {
        margin: 0;
        padding: 0;
        font-size: min(1.5vw, 1.5rem);
        text-align: center;
        font-style: italic;
        color: var(--default-white);
    }

    .welcome-wrapper .welcome-buttons {
        display: flex;
        flex-direction: row;
        gap: min(1.5vw, 1.5rem);
        justify-content: center;
    }
    .welcome-wrapper .welcome-buttons .button {
        margin: 0;
        padding: min(1vw, 1rem) min(2vw, 2rem);
        color: var(--default-white);
        background: rgba(255,255,255,.15);
        font-size: min(1.5vw, 1.5rem);
        text-align: center;
        border: 2px solid var(--default-white);
        border-radius: .25rem;
    }
}

@media only screen and (max-width: 50.99rem) {
    .welcome-wrapper {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .welcome-wrapper .welcome-title {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .welcome-wrapper .welcome-title-header {
        display: flex;
        flex-direction: row;
        gap: 1rem;
        align-items: center;
        justify-content: center;
    }
    .welcome-wrapper .welcome-title-header:before {
        content: '';
        border-bottom: 2px solid var(--default-white);
        flex: 1;
        order: 1;
    }
    .welcome-wrapper .welcome-title-header .g-title {
        margin: 0;
        padding: 0;
        order: 2;
        color: var(--default-white);
        font-size: 5vw;
        line-height: 1;
        border: none;
        text-transform: none;
        font-variant-caps: normal;
        text-align: center;
        font-weight: 600;
    }
    .welcome-wrapper .welcome-title-header:after {
        content: '';
        border-bottom: 2px solid var(--default-white);
        flex: 1;
        order: 3;
    }

    .welcome-wrapper .welcome-title-text p {
        margin: 0;
        padding: 0;
        font-size: 4vw;
        text-align: center;
        font-style: italic;
        color: var(--default-white);
    }

    .welcome-wrapper .welcome-buttons {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        justify-content: center;
    }
    .welcome-wrapper .welcome-buttons .button {
        margin: 0;
        padding: 1rem;
        color: var(--default-white);
        background: rgba(255,255,255,.15);
        font-size: 4vw;
        text-align: center;
        border: 2px solid var(--default-white);
        border-radius: .25rem;
    }
}

/*ABOVE*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-above > .g-container {
        padding: min(2vw, 2rem)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-above > .g-container {
        padding: 2rem 1rem!important;
    }
}

@media only screen and (min-width: 50.99rem) {
    .ql-border-box {
        margin: 0;
        padding: 0;
    }
    .ql-border-box > .g-content {
        margin: 0;
        padding: 0;
    }
    .ql-border-box > .g-content > div {
        margin: 0;
        padding: 0;
    }
    .ql-border-box .g-blockcontent {
        margin: 0;
        padding: 0;
    }
    .ql-border-box .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        gap: min(1.5vw, 1.5rem);
    }
    .ql-border-box .g-blockcontent-subcontent-block {
        margin: 0;
        padding: 0;
        position: relative;
        flex: 1;
        overflow: hidden;
        border: 2px solid var(--default-white);
        border-radius: .5rem;
        box-shadow: var(--default-box-shadow);
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-subcontent-block:hover {
        transform: scale(1.05);
    }
    .ql-border-box .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-title:before {
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        border: 2px solid transparent;
    }
    .ql-border-box .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-subcontent-img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        aspect-ratio: 16/9;
        object-position: center;
        object-fit: cover;
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-subcontent-title {
        margin: 0;
        padding: min(2vw, 2rem);
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background: rgba(var(--secondary-color-rgb),.7);
        display: flex;
        justify-content: center;
        align-items: center;

        color: var(--default-white);
        font-family: var(--body-font-family);
        line-height: 1.2;
        font-weight: 600;
        text-align: center;
        font-size: min(1.5vw, 1.5rem);
        text-transform: none;
        font-variant-caps: normal;
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-subcontent-title:before {
        content: '';
        position: absolute;
        top: min(.75vw, .75rem);
        bottom: min(.75vw, .75rem);
        left: min(.75vw, .75rem);
        right: min(.75vw, .75rem);
        border: 2px solid var(--default-white);
        border-radius: .25rem;
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        font-family: var(--body-font-family);
        line-height: 1.2;
        font-weight: 600;
        text-align: center;
        font-size: min(1.5vw, 1.5rem);
        text-transform: none;
        font-variant-caps: normal;
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
        z-index: 5;
    }
    .ql-border-box .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
        z-index: 5;
    }
}

@media only screen and (max-width: 50.99rem) {
    .ql-border-box {
        margin: 0;
        padding: 0;
    }
    .ql-border-box > .g-content {
        margin: 0;
        padding: 0;
    }
    .ql-border-box > .g-content > div {
        margin: 0;
        padding: 0;
    }
    .ql-border-box .g-blockcontent {
        margin: 0;
        padding: 0;
    }
    .ql-border-box .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 1rem;
    }
    .ql-border-box .g-blockcontent-subcontent-block {
        margin: 0;
        padding: 0;
        position: relative;
        flex: 1;
        min-width: calc(50% - .5rem);
        max-width: calc(50% - .5rem);
        overflow: hidden;
        border: 2px solid var(--default-white);
        border-radius: .5rem;
        box-shadow: var(--default-box-shadow);
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-subcontent-block:hover {
        transform: scale(1.05);
    }
    .ql-border-box .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-title:before {
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        border: 2px solid transparent;
    }
    .ql-border-box .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-subcontent-img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        aspect-ratio: 16/9;
        object-position: center;
        object-fit: cover;
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-subcontent-title {
        margin: 0;
        padding: 1.5rem;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background: rgba(var(--secondary-color-rgb),.7);
        display: flex;
        justify-content: center;
        align-items: center;

        color: var(--default-white);
        font-family: var(--body-font-family);
        line-height: 1.2;
        font-weight: 600;
        text-align: center;
        font-size: 4vw;
        text-transform: none;
        font-variant-caps: normal;
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-subcontent-title:before {
        content: '';
        position: absolute;
        top: .75rem;
        bottom: .75rem;
        left: .75rem;
        right: .75rem;
        border: 2px solid var(--default-white);
        border-radius: .25rem;
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        font-family: var(--body-font-family);
        line-height: 1.2;
        font-weight: 600;
        text-align: center;
        font-size: 4vw;
        text-transform: none;
        font-variant-caps: normal;
        transition: .3s all ease-in-out;
    }
    .ql-border-box .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
        z-index: 5;
    }
    .ql-border-box .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
        z-index: 5;
    }
}

/*FEATURE*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-feature > .g-container {
        padding: min(2vw, 2rem) min(2vw, 2rem) min(4vw, 4rem) min(2vw, 2rem)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-feature > .g-container {
        padding: 2rem 1rem!important;
    }
}


@media only screen and (min-width: 50.99rem) {
    .mass-container {
        margin: 0;
        padding: 0;
    }
    .mass-container > .g-content {
        margin: 0;
        padding: 0;
    }
    .mass-container .g-content-array {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        gap: min(3vw, 3rem);
    }
    .mass-container .g-content-array > .g-grid {
        margin: 0;
        padding: min(1.5vw, 1.5rem);
        flex: 1;
        background: rgba(255,255,255,.15);
        border: 1px solid var(--default-white);
        border-radius: 1rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .mass-container .g-content-array > .g-grid > .g-block {
        margin: 0;
        padding: 0;
    }
    .mass-container .g-content-array > .g-grid > .g-block > .g-content {
        margin: 0;
        padding: 0;
    }
    .mass-container .g-array-item {
        margin: 0;
        padding: 0;
    }
    .mass-container .g-array-item-text {
        margin: 0;
        padding: 0;
    }

    .mass-container .g-array-item-text :is(h1,h2,h3,h4,h5,h6) {
        color: var(--default-white);
        border-bottom: 2px solid var(--default-white);
        text-transform: none;
        font-variant-caps: normal;
        font-size: min(2.5vw, 2.5rem);
        line-height: 1.4;
        margin-bottom: min(1vw, 1rem);
    }
    .mass-container .g-array-item-text ul {
        margin: 0 0 1.5rem 1.5rem!important;
    }
    .mass-container .g-array-item-text :is(p, li) {
        color: var(--default-white);
        font-size: min(1.25vw, 1.25rem);
        line-height: 1.4;
        font-family: var(--body-font-family);
    }

    .mass-container .ital-text {
        font-style: italic;
    }

    .mass-container .mass-schedule-buttons {
        display: flex;
        flex-direction: column;
        gap: min(1vw, 1rem);
    }
    .mass-container .mass-schedule-buttons .button {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: min(1.25vw, 1.25rem);
        background: rgba(255,255,255,.8);
        line-height: 1;
        color: var(--primary-color);
        font-family: var(--body-font-family);
        font-size: min(1.5vw, 1.5rem);
        font-weight: 600;
    }
    .mass-container .mass-schedule-buttons .button.pray-icon:before {
        content: '\f683';
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
        color: var(--primary-color);
        line-height: 1.25;
        font-size: min(1vw, 1rem);
    }
    .mass-container .mass-schedule-buttons .button.host-icon:before {
        content: '\e83b';
        font-weight: 900;
        font-family: 'fontello';
        color: var(--primary-color);
        line-height: 1.25;
        font-size: min(1vw, 1rem);
    }
    .mass-container .mass-schedule-buttons .button.bible-icon:before {
        content: '\f647';
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
        color: var(--primary-color);
        line-height: 1.25;
        font-size: min(1.25vw, 1.25rem);
    }

    .mass-container a:not(.button) {
        color: var(--default-white)!important;
        transition: .3s all ease-in-out;
    }
    .mass-container a:not(.button):hover {
        opacity: .5;
    }
}

@media only screen and (max-width: 50.99rem) {
    .mass-container {
        margin: 0;
        padding: 0;
    }
    .mass-container > .g-content {
        margin: 0;
        padding: 0;
    }
    .mass-container .g-content-array {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }
    .mass-container .g-content-array > .g-grid {
        margin: 0;
        padding: 1rem;
        flex: 1;
        background: rgba(255,255,255,.15);
        border: 1px solid var(--default-white);
        border-radius: 1rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .mass-container .g-content-array > .g-grid > .g-block {
        margin: 0;
        padding: 0;
    }
    .mass-container .g-content-array > .g-grid > .g-block > .g-content {
        margin: 0;
        padding: 0;
    }
    .mass-container .g-array-item {
        margin: 0;
        padding: 0;
    }
    .mass-container .g-array-item-text {
        margin: 0;
        padding: 0;
    }

    .mass-container .g-array-item-text :is(h1,h2,h3,h4,h5,h6) {
        color: var(--default-white);
        border-bottom: 2px solid var(--default-white);
        text-transform: none;
        font-variant-caps: normal;
        font-size: 6vw;
        line-height: 1.4;
        margin-bottom: 1rem;
    }
    .mass-container .g-array-item-text ul {
        margin: 0 0 1.5rem 1.5rem!important;
    }
    .mass-container .g-array-item-text :is(p, li) {
        color: var(--default-white);
        font-size: 4vw;
        line-height: 1.4;
        font-family: var(--body-font-family);
    }

    .mass-container .ital-text {
        font-style: italic;
    }

    .mass-container .mass-schedule-buttons {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .mass-container .mass-schedule-buttons .button {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: 1rem;
        background: rgba(255,255,255,.8);
        line-height: 1;
        color: var(--primary-color);
        font-family: var(--body-font-family);
        font-size: 4vw;
        font-weight: 600;
    }
    .mass-container .mass-schedule-buttons .button.pray-icon:before {
        content: '\f683';
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
        color: var(--primary-color);
        line-height: 1.25;
        font-size: 3.5vw;
    }
    .mass-container .mass-schedule-buttons .button.host-icon:before {
        content: '\e83b';
        font-weight: 900;
        font-family: 'fontello';
        color: var(--primary-color);
        line-height: 1.25;
        font-size: 3.5vw;
    }
    .mass-container .mass-schedule-buttons .button.bible-icon:before {
        content: '\f647';
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
        color: var(--primary-color);
        line-height: 1.25;
        font-size: 3.5vw;
    }

    .mass-container a:not(.button) {
        color: var(--default-white)!important;
        transition: .3s all ease-in-out;
    }
    .mass-container a:not(.button):hover {
        opacity: .5;
    }
}

.link-line {
    text-decoration: underline;
}

/*SHOWCASE*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-showcase > .g-container {
        padding: min(1vw, 1rem) min(2vw, 2rem) min(4vw, 4rem) min(2vw, 2rem)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-showcase > .g-container {
        padding: 2rem 0!important;
    }
}

.site-home #g-showcase.cc-campaign-hidden {
    display: none!important;
}

/* ================================
   Capital Campaign Box
================================ */

#ccBox.cc-container,
#ccBox .g-content,
#ccBox .g-particle,
#ccBox .g-content-array,
#ccBox .g-grid,
#ccBox .g-block,
#ccBox .g-array-item {
    margin: 0;
    padding: 0;
}

#ccBox {
    --cc-blue: #003f93;
    --cc-red: #a43c50;
    --cc-light: #e9edf5;
    --cc-dark: #111;
    --cc-border: rgba(255, 255, 255, 0.85);
    --cc-bar-empty: #d8d8d8;
    --cc-bar-line: #ffffff;
    --cc-radius: 0.65rem;
    --cc-progress: 0%;
}

#ccBox .cc-wrapper {
    position: relative;
    max-width: 96rem;
    margin: 2rem auto;
    background: var(--cc-light);
    border: 3px solid var(--cc-border);
    border-radius: var(--cc-radius);
    box-shadow: 0 0.4rem 1.2rem rgba(0, 0, 0, 0.25);
    overflow: visible;
    color: var(--cc-dark);
    font-family: Georgia, "Times New Roman", serif;
}

/* Optional red top strip like the screenshot */
#ccBox .cc-wrapper::before {
    content: "\f19c  CAPITAL CAMPAIGN";
    font-family: "Font Awesome 6 Free", var(--title-font-family);
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    height: 5.25rem;
    background: var(--cc-red);
    color: #fff;
    font-size: 1.65rem;
    letter-spacing: 0.03em;
    border-radius: calc(var(--cc-radius) - 3px) calc(var(--cc-radius) - 3px) 0 0;
}

/* Optional X icon top-right */
#ccBox .cc-wrapper::after {
    content: "\f00d";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    top: 1.35rem;
    right: 2rem;
    color: #fff;
    font-size: 2.1rem;
    line-height: 1;
}

#ccBox .cc-header {
    padding: 2.1rem 5.75rem 0;
    text-align: center;
}

#ccBox .cc-header .g-title {
    margin: 0;
    padding-bottom: 1.25rem;
    color: var(--cc-red);
    font-size: min(3.5vw, 3.5rem);
    line-height: 1.05;
    font-weight: 500;
    letter-spacing: 0.02em;
    border-bottom: 2px solid rgba(0, 0, 0, 0.75);
}

#ccBox .cc-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4.5rem;
    padding: 2.25rem 5.75rem 1.5rem;
}

#ccBox .cc-content-column h6 {
    margin: 0 0 0.5rem;
    font-size: min(1.75vw, 1.7rem);
    line-height: 1.2;
    font-weight: 700;
    color: #050505;
    text-transform: none;
    font-variant-caps: normal;
}

#ccBox .cc-content-column p,
#ccBox .cc-content-column li {
    font-size: clamp(1.05rem, 1.45vw, 1.55rem);
    line-height: 1.42;
    color: #050505;
}

#ccBox .cc-content-column p {
    margin: 0;
    font-size: min(1.5vw, 1.5rem);
}

#ccBox .cc-content-column ul {
    margin: 0;
    padding-left: 1.55rem;
}

#ccBox .cc-content-column li {
    padding-left: 0.45rem;
    margin-bottom: 0.35rem;
    font-size: min(1.5vw, 1.5rem);
}

/* ================================
   Load Bar
================================ */

#ccBox .cc-loadbar {
    padding: 1.4rem 5.75rem 4.2rem;
}

#ccBox .cc-loadbar-title h2 {
    margin: 0 0 1.75rem;
    font-size: min(2vw, 2rem);
    line-height: 1.2;
    font-weight: 400;
    color: #050505;
    text-transform: none;
    font-variant-caps: normal;
}

#ccBox .cc-loadbar-title strong {
    font-weight: 800;
}

/* ================================
   Load Bar - Real Sections
   11%, 22%, 22%, 22%, 23%
================================ */

#ccBox .cc-loadbar-design {
    position: relative;
    height: 5rem;
    border-radius: 999rem;
    border: 3px solid var(--default-white);
    overflow: hidden;
    background: #d8d8d8;
    box-shadow:
        inset 0 0 0 0.35rem rgba(255, 255, 255, 0.75),
        0 0.12rem 0.35rem rgba(0, 0, 0, 0.35);
}

/* Full colored section track */
#ccBox .cc-loadbar-sections {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    width: 100%;
    height: 100%;
}

/* Individual real sections */
#ccBox .cc-loadbar-segment {
    position: relative;
    height: 100%;
    flex: 0 0 auto;
}

/* White divider line at the end of each section except the last */
#ccBox .cc-loadbar-segment:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 4px;
    background: #fff;
    transform: translateX(50%);
    z-index: 4;
}

/* Gray unfilled overlay */
#ccBox .cc-loadbar-empty-cover {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: var(--cc-progress);
    z-index: 2;
    background: #d8d8d8;
}

/* Keep divider lines visible over gray overlay */
#ccBox .cc-loadbar-divider {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 5;
    width: 4px;
    background: #fff;
    transform: translateX(-50%);
    pointer-events: none;
}

/* Stars */
#ccBox .cc-loadbar-section-star {
    position: absolute;
    top: 50%;
    z-index: 6;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    margin: 0;
    padding: 0;
    color: transparent;
    font-size: 2.1rem;
    line-height: 1;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

#ccBox .cc-loadbar-section-star::before {
    content: "★";
    display: block;
    line-height: 1;
}

#ccBox .cc-loadbar-section-star.is-complete {
    color: #fff;
    text-shadow: 0 0.08rem 0.15rem rgba(0, 0, 0, 0.22);
}

#ccBox .cc-loadbar-amounts {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 1.6rem 1.4rem 0;
}

#ccBox .cc-loadbar-amounts p {
    margin: 0;
    font-size: min(1.75vw, 1.75rem);
    line-height: 1.2;
    color: #050505;
}

#ccBox .cc-loadbar-amounts strong {
    font-weight: 800;
}

/* Button overlaps the bottom like the screenshot */
#ccBox .cc-button {
    position: absolute;
    left: 50%;
    bottom: -2.2rem;
    transform: translateX(-50%);
    z-index: 5;
}

#ccBox .cc-button .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.9rem;
    min-width: 27rem;
    min-height: 5rem;
    padding: 1rem 2.25rem;
    border-radius: 0.35rem;
    border: 2px solid rgba(255, 255, 255, 0.28);
    background: var(--cc-red);
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 1.8vw, 1.75rem);
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 0.25rem 0.55rem rgba(0, 0, 0, 0.25);
}

#ccBox .cc-button .button::after {
    content: "\f054";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 0.9em;
}

/* Hide the old CSS-only X if you used .cc-wrapper::after */
#ccBox .cc-wrapper::after {
    display: none;
}

/* Real clickable close button */
#ccBox .cc-close-btn {
    position: absolute;
    top: 1.15rem;
    right: 1.75rem;
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 2.35rem;
    line-height: 1;
    cursor: pointer;
    font-family: Arial, Helvetica, sans-serif;
}

#ccBox .cc-close-btn:hover,
#ccBox .cc-close-btn:focus {
    opacity: 0.75;
    outline: none;
}

@media only screen and (max-width: 60rem) {
    #ccBox .cc-close-btn {
        top: 0.75rem;
        right: 1rem;
        font-size: 1.85rem;
    }
}

/* ================================
   Mobile
================================ */

@media only screen and (max-width: 60rem) {
    #ccBox .cc-wrapper {
        margin: 1rem;
    }

    #ccBox .cc-wrapper::before {
        height: 4.25rem;
        font-size: 1.2rem;
    }

    #ccBox .cc-wrapper::after {
        top: 1.1rem;
        right: 1.25rem;
        font-size: 1.5rem;
    }

    #ccBox .cc-header {
        padding: 1.75rem 1.5rem 0;
    }

    #ccBox .cc-content {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        padding: 1.75rem 1.5rem 1rem;
    }

    #ccBox .cc-loadbar {
        padding: 1rem 1.5rem 5rem;
    }

    #ccBox .cc-loadbar-design {
        height: 3.8rem;
    }

    #ccBox .cc-loadbar-section-star {
        font-size: 1.5rem;
    }

    #ccBox .cc-loadbar-amounts {
        align-items: flex-start;
        padding: 1.25rem 0.5rem 0;
    }

    #ccBox .cc-button {
        width: calc(100% - 3rem);
    }

    #ccBox .cc-button .button {
        width: 100%;
        min-width: 0;
        min-height: 4.25rem;
        text-align: center;
    }

    #ccBox .cc-header .g-title {
        font-size: 6vw;
    }

    #ccBox .cc-content-column h6 {
        font-size: 4.5vw;
    }
    #ccBox .cc-content-column p {
        font-size: 4vw;
    }
    #ccBox .cc-content-column li {
        font-size: 4vw;
    }
    #ccBox .cc-loadbar-title h2 {
        font-size: 5vw;
    }
    #ccBox .cc-loadbar-amounts p {
        font-size: 4vw;
    }
}

@media only screen and (max-width: 35rem) {
    #ccBox .cc-loadbar-amounts {
        flex-direction: column;
        gap: 0.65rem;
    }
}

@media only screen and (max-width: 60rem) {
    #ccBox .cc-loadbar-design {
        height: 3.8rem;
    }

    #ccBox .cc-loadbar-section-star {
        width: 2rem;
        height: 2rem;
        font-size: 1.45rem;
    }

    #ccBox .cc-loadbar-divider,
    #ccBox .cc-loadbar-segment:not(:last-child)::after {
        width: 3px;
    }
}

/*MAIN*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-container-main > .g-container {
        padding: min(5vw, 5rem) min(2vw, 2rem)!important;
    }
    .site-home #g-container-main > .g-container > .g-grid {
        display: flex;
        flex-direction: row;
        gap: min(4vw, 4rem);
        align-items: center;
    }
    .site-home #g-container-main > .g-container > .g-grid > .g-block:has(#g-mainbar) {
        flex: 1;
        width: unset;
        max-width: unset;
    }
    .site-home #g-container-main > .g-container > .g-grid > .g-block:has(#g-aside) {
        flex: unset;
        width: unset;
        max-width: 165px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-container-main > .g-container {
        padding: 2rem 1rem!important;
    }
}

/* Global Swiper News stabilization */
.swiper-news,
.swiper-news .g-swiper,
.swiper-news .g-swiper-slider,
.swiper-news .swiper,
.swiper-news .swiper-container {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    box-sizing: border-box;
}

.swiper-news .swiper-wrapper {
    align-items: stretch;
}

.swiper-news .swiper-slide {
    box-sizing: border-box;
    min-width: 0;
    height: auto;
}

/* Important for Gantry/flex parents */
.swiper-news .g-content,
.swiper-news .g-swiper,
.swiper-news .g-swiper-slider,
.swiper-news .g-grid,
.swiper-news .g-block {
    min-width: 0;
    box-sizing: border-box;
}

/* Prevent images/borders from making the calculated slide wider */
.swiper-news img {
    box-sizing: border-box;
    max-width: 100%;
}

@media only screen and (min-width: 50.99rem) {
    .swiper-news .g-swiper .g-swiper-slider .swiper-slide {
        display: flex;
        flex-direction: row;
        gap: min(4vw, 4rem);
        width: 100%!important;
        align-items: stretch;
    }
    .swiper-news .g-swiper .g-swiper-slider .swiper-slide img {
        flex: 2;
        order: 2;
        width: 100%;
        max-width: min(50vw, 45rem);
        height: auto;
        aspect-ratio: 16/9;
        display: flex;
        object-position: center;
        object-fit: cover;
        border: 3px solid var(--default-white);
        border-radius: 1rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide {
        position: relative;
        flex: 1.25;
        order: 1;
        background: var(--default-white)!important;
        border-radius: 1rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
        padding: min(1.25vw, 1.25rem);
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper {
        justify-content: flex-start;
        align-items: flex-start;
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content {
        display: flex;
        flex-direction: column;
        gap: min(1vw, 1rem);
        justify-content: flex-start;
        align-items: flex-start;
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content:before {
        content: '';
        border-bottom: 2px solid var(--default-black);
        width: 100%;
        order: 2;
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content > .g-swiper-title {
        font-size: min(2vw, 2rem);
        color: var(--default-black);
        margin: 0;
        padding: 0;
        text-align: left;
        order: 1;
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content > .g-swiper-text {
        font-size: min(1vw, 1rem);
        color: var(--default-black);
        order: 3;
        margin: 0;
        padding: 0;
        text-align: left;
        font-weight: 500;
        font-family: var(--body-font-family);
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content > .button {
        position: absolute;
        bottom: min(1.25vw, 1.25rem);
        left: min(1.25vw, 1.25rem);
        display: flex;
        flex-direction: row;
        gap: min(1.25vw, 1.25rem);
        width: min(14vw, 14rem);
        justify-content: center;
        text-align: center;
        font-size: min(1.5vw, 1.5rem);
        padding: min(.75vw, .75rem);
        line-height: 1;
    }

    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content > .button:after {
        content: '\f105';
        font-size: min(1vw, 1rem);
        line-height: 1.25;
        color: var(--default-white);
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
    }

    .swiper-news .swiper-navigation {
        position: absolute;
        bottom: min(1.25vw, 1.25rem);
        left: min(18.25vw, 18.25rem);
        display: flex;
        flex-direction: row;
        gap: min(1vw, 1rem);
        width: min(8vw, 8rem);
        justify-content: space-between;
    }
    .swiper-news .swiper-navigation div[class*="button-next"], .swiper-news .swiper-navigation div[class*="button-prev"] {
        position: relative;
        color: var(--default-black);
        font-size: min(1.5vw, 1.5rem);
        line-height: 1.25;
        width: min(3.25vw, 3.25rem);
        height: min(3.25vw, 3.25rem);
        border: 2px solid var(--default-black);
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: .3s all ease-in-out;
    }
    .swiper-news .swiper-navigation div[class*="button-next"]:hover, .swiper-news .swiper-navigation div[class*="button-prev"]:hover {
        background: var(--tertiary-color);
    }
    .swiper-news .swiper-navigation div[class*="button-next"] {
        transform: none;
        order: 2;
        right: 0;
    }
    .swiper-news .swiper-navigation div[class*="button-prev"] {
        transform: none;
        order: 1;
        left: 0;
    }
}

@media only screen and (max-width: 50.99rem) {
    .swiper-news {
        padding-bottom: 1.5rem!important;
    }
    .swiper-news .g-swiper .g-swiper-slider .swiper-slide {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        width: 100%!important;
        align-items: stretch;
    }
    .swiper-news .g-swiper .g-swiper-slider .swiper-slide img {
        flex: 2;
        order: 1;
        width: calc(100% - 6px);
        max-width: 100%;
        height: auto;
        aspect-ratio: 16/9;
        display: flex;
        object-position: center;
        object-fit: cover;
        border: 3px solid var(--default-white);
        border-radius: 1rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide {
        position: relative;
        flex: 1.25;
        order: 2;
        background: var(--default-white)!important;
        border-radius: 1rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
        padding: 1rem;
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper {
        justify-content: flex-start;
        align-items: flex-start;
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        justify-content: flex-start;
        align-items: flex-start;
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content:before {
        content: '';
        border-bottom: 2px solid var(--default-black);
        width: 100%;
        order: 2;
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content > .g-swiper-title {
        font-size: 6vw;
        color: var(--default-black);
        margin: 0;
        padding: 0;
        text-align: left;
        order: 1;
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content > .g-swiper-text {
        font-size: 4vw;
        color: var(--default-black);
        order: 3;
        margin: 0;
        padding: 0;
        text-align: left;
        font-weight: 500;
        font-family: var(--body-font-family);
    }
    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content > .button {
        /*position: absolute;
        bottom: min(1.25vw, 1.25rem);
        left: min(1.25vw, 1.25rem);*/
        display: flex;
        flex-direction: row;
        gap: 1rem;
        width: 90%;
        justify-content: center;
        text-align: center;
        font-size: 4vw;
        padding: 1rem;
        line-height: 1;
        order: 4;
    }

    .swiper-news #swiper-1728.g-swiper .g-swiper-slider .swiper-slide .slide > .slide-content-wrapper > .slide-content > .button:after {
        content: '\f105';
        font-size: min(1vw, 1rem);
        line-height: 1.25;
        color: var(--default-white);
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
    }

    /*.swiper-news .swiper-navigation {
        position: absolute;
        bottom: min(1.25vw, 1.25rem);
        left: min(18.25vw, 18.25rem);
        display: flex;
        flex-direction: row;
        gap: min(1vw, 1rem);
        width: min(8vw, 8rem);
        justify-content: space-between;
    }
    .swiper-news .swiper-navigation div[class*="button-next"], .swiper-news .swiper-navigation div[class*="button-prev"] {
        position: relative;
        color: var(--default-black);
        font-size: min(1.5vw, 1.5rem);
        line-height: 1.25;
        width: min(3.25vw, 3.25rem);
        height: min(3.25vw, 3.25rem);
        border: 2px solid var(--default-black);
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: .3s all ease-in-out;
    }
    .swiper-news .swiper-navigation div[class*="button-next"]:hover, .swiper-news .swiper-navigation div[class*="button-prev"]:hover {
        background: var(--tertiary-color);
    }
    .swiper-news .swiper-navigation div[class*="button-next"] {
        transform: none;
        order: 2;
        right: 0;
    }
    .swiper-news .swiper-navigation div[class*="button-prev"] {
        transform: none;
        order: 1;
        left: 0;
    }*/

    .swiper-news .swiper-navigation div[class*="button-next"] {
        top: 6rem;
    }
    .swiper-news .swiper-navigation div[class*="button-prev"] {
        top: 6rem;
    }
}

/*EXPANDED*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-expanded > .g-container {
        padding: min(5vw, 5rem) min(2vw, 2rem)!important;
        display: flex;
        flex-direction: column;
        gap: min(2vw, 2rem);
    }

    .site-home #g-expanded .g-title {
        margin: 0;
        padding: 0;
        line-height: 1;
        text-align: center;
        font-size: min(3.5vw, 3.5rem);
        color: var(--primary-color);
        font-family: var(--title-font-family);
        text-transform: none;
        font-variant-caps: normal;
        border: none;
    }

    .site-home #g-expanded .news-button > .g-content {
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
    }
    .site-home #g-expanded .news-button .button {
        padding: min(1.25vw, 1.25rem) min(2vw, 2rem);
        background: var(--secondary-color);
        text-transform: none;
        font-variant-caps: normal;
        font-weight: 700;
        display: flex;
        flex-direction: row;
        gap: min(1.25vw, 1.25rem);
        justify-content: center;
        align-items: center;
        line-height: 1;
    }

    .site-home #g-expanded .news-button .button:after {
        content: '\f105';
        font-size: min(1vw, 1rem);
        line-height: 1.25;
        color: var(--default-white);
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-expanded > .g-container {
        padding: 2rem 0!important;
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .site-home #g-expanded .g-title {
        margin: 0;
        padding: 0;
        line-height: 1;
        text-align: center;
        font-size: 7vw;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        text-transform: none;
        font-variant-caps: normal;
        border: none;
    }

    .site-home #g-expanded .news-button > .g-content {
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        padding: 0 1rem!important;
    }
    .site-home #g-expanded .news-button .button {
        padding: 1rem;
        background: var(--secondary-color);
        text-transform: none;
        font-variant-caps: normal;
        font-weight: 700;
        display: flex;
        flex-direction: row;
        gap: 1rem;
        justify-content: center;
        align-items: center;
        line-height: 1;
    }

    .site-home #g-expanded .news-button .button:after {
        content: '\f105';
        font-size: 4vw;
        line-height: 1.25;
        color: var(--default-white);
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
    }
}

@media only screen and (min-width: 50.99rem) {
    .re-news {
        margin: 0;
        padding: 0;
    }
    .re-news > .g-content {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: min(2vw, 2rem);
    }
    .re-news .g-content-array {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        gap: min(2vw, 2rem);
        justify-content: center;
    }
    .re-news .g-content-array > .g-grid {
        margin: 0;
        padding: min(1vw, 1rem) min(1vw, 1rem) min(2.5vw, 2.5rem) min(1vw, 1rem);
        position: relative;
        flex: 1;
        min-width: calc(25% - min(1.5vw, 1.5rem));
        max-width: calc(25% - min(1.5vw, 1.5rem));
        background: var(--default-white);
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
        border-radius: .75rem;
        border-bottom: .25rem solid var(--primary-color);
        transition: .3s all ease-in-out;
    }
    .re-news .g-content-array > .g-grid:hover {
        transform: scale(1.05);
    }
    .re-news .g-content-array > .g-grid > .g-block {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .re-news .g-content-array > .g-grid > .g-block > .g-content {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: min(1vw, 1rem);
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-image {
        margin: 0;
        padding: 0;
        position: relative;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-image:after {
        content: '\f054';
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
        color: var(--secondary-color);
        font-size: min(1.25vw, 1.25rem);
        line-height: 1.25;
        background: rgba(var(--default-white-rgb),.8);
        width: min(2vw, 2rem);
        height: min(2vw, 2rem);
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        box-shadow: var(--default-box-shadow);
        backdrop-filter: blur(5px);
        --webkit-backdrop-filter: blur(5px);

        position: absolute;
        bottom: .75rem;
        right: .75rem;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-image a {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-image img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        aspect-ratio: 16/9;
        border-radius: .4rem;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-title {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .re-news .g-item-title {
        margin: 0;
        padding: 0;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        font-size: min(2vw, 2rem);
        line-height: 1.4;
        font-weight: 500;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        transition: .3s all ease-in-out;
    }
    .re-news .g-item-title a {
        margin: 0;
        padding: 0;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        font-size: min(2vw, 2rem);
        line-height: 1.2;
        font-weight: 700;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-text {
        margin: 0;
        padding: 0;
        color: var(--default-black);
        font-family: var(--body-font-family);
        font-size: min(1.25vw, 1.25rem);
        line-height: 1.2;
        opacity: .7;
        transition: .3s all ease-in-out;
    }
    .re-news .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;
    }
    .re-news .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) {
    .re-news {
        margin: 0;
        padding: 0;
    }
    .re-news > .g-content {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        overflow: visible;
    }
    .re-news .g-content-array {
        margin: 0;
        padding: 1rem 12.5vw;
        display: flex;
        flex-direction: row;
        gap: 1rem;

        overflow-x: auto;
        overflow-y: hidden;

        scroll-snap-type: x mandatory;
        scroll-padding-left: 12.5vw;
        scroll-padding-right: 12.5vw;

        -webkit-overflow-scrolling: touch;
    }
    .re-news .g-content-array > .g-grid {
        margin: 0;
        padding: 1rem;
        position: relative;
        transition: .3s all ease-in-out;

        flex: 0 0 75vw;
        max-width: 75vw;
        width: 100%;

        scroll-snap-align: center;
        scroll-snap-stop: always;
        background: var(--default-white);
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
        border-radius: .75rem;
        border-bottom: .25rem solid var(--primary-color);
        transition: .3s all ease-in-out;
    }
    .re-news .g-content-array > .g-grid:hover {
        transform: scale(1.05);
    }
    .re-news .g-content-array > .g-grid > .g-block {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .re-news .g-content-array > .g-grid > .g-block > .g-content {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-image {
        margin: 0;
        padding: 0;
        position: relative;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-image:after {
        content: '\f054';
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
        color: var(--secondary-color);
        font-size: min(1.25vw, 1.25rem);
        line-height: 1.25;
        background: rgba(var(--default-white-rgb),.8);
        width: min(2vw, 2rem);
        height: min(2vw, 2rem);
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        box-shadow: var(--default-box-shadow);
        backdrop-filter: blur(5px);
        --webkit-backdrop-filter: blur(5px);

        position: absolute;
        bottom: .75rem;
        right: .75rem;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-image a {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-image img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        aspect-ratio: 16/9;
        border-radius: .4rem;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-title {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .re-news .g-item-title {
        margin: 0;
        padding: 0;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        font-size: 5vw;
        line-height: 1.4;
        font-weight: 500;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        transition: .3s all ease-in-out;
    }
    .re-news .g-item-title a {
        margin: 0;
        padding: 0;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        font-size: 5vw;
        line-height: 1.2;
        font-weight: 700;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        transition: .3s all ease-in-out;
    }
    .re-news .g-array-item-text {
        margin: 0;
        padding: 0;
        color: var(--default-black);
        font-family: var(--body-font-family);
        font-size: 4vw;
        line-height: 1.2;
        opacity: .7;
        transition: .3s all ease-in-out;
    }
    .re-news .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;
    }
    .re-news .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;
    }
}

/*EXTENSION*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-extension > .g-container {
        padding: min(4vw, 4rem) min(2vw, 2rem)!important;
    }

    .site-home #g-extension .widget-wrapper > .widget-feed {
        overflow: visible!important;
        padding: 0!important;
    }
    .site-home #g-extension .widget-wrapper > .widget-feed > .widget-feed-inner-box {
        overflow: visible!important;
    }

    .site-home #g-extension .widget-container .widget-wrapper {
        gap: min(1.5vw, 1.5rem);
    }

    .site-home #g-extension.widget-parthenon-alt > .g-container > .g-grid {
        gap: min(4vw, 4rem);
    }

    .site-home #g-extension .widget-container .widget-wrapper .widget-title .g-title {
        color: var(--default-white)!important;
        font-weight: 600!important;
    }

    .site-home #g-extension .widget-container .widget-wrapper .widget-button .button {
        width: 100%;
        padding: min(1.25vw, 1.25rem);
        font-size: min(1.5vw, 1.5rem);
        text-transform: none;
        font-variant-caps: normal;
        font-weight: 400;
        display: flex;
        flex-direction: row;
        gap: min(1.25vw, 1.25rem);
        justify-content: center;
        align-items: center;
        border: 1px solid var(--default-white);
        line-height: 1;
    }
    .site-home #g-extension .widget-container.calendar-widget-container .widget-wrapper .widget-button .button:before {
        content: '\f073';
        font-size: min(1vw, 1rem);
        line-height: 1.25;
        color: var(--default-white);
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
    }
    .site-home #g-extension .widget-container:is(.formed-widget-container, .flocknote-widget-container) .widget-wrapper .widget-button .button:after {
        content: '\f105';
        font-size: min(1vw, 1rem);
        line-height: 1.25;
        color: var(--default-white);
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
    }


    .site-home #g-extension .widget-wrapper.flocknote-widget-wrapper .widget-feed-inner-box {
        background: var(--default-white);
        border-radius: 1rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-extension > .g-container {
        padding: 2rem 1rem!important;
    }

    .site-home #g-extension .widget-wrapper > .widget-feed {
        overflow: visible!important;
        padding: 0!important;
    }
    .site-home #g-extension .widget-wrapper > .widget-feed > .widget-feed-inner-box {
        overflow: visible!important;
    }

    .site-home #g-extension .widget-container .widget-wrapper {
        gap: 1rem;
    }

    .site-home #g-extension .widget-container .widget-wrapper .widget-title .g-title {
        color: var(--default-white)!important;
        font-weight: 600!important;
    }

    .site-home #g-extension .widget-container .widget-wrapper .widget-button .button {
        width: 100%;
        padding: 1rem;
        font-size: 4vw;
        text-transform: none;
        font-variant-caps: normal;
        font-weight: 400;
        display: flex;
        flex-direction: row;
        gap: 1rem;
        justify-content: center;
        align-items: center;
        border: 1px solid var(--default-white);
        line-height: 1;
    }
    .site-home #g-extension .widget-container.calendar-widget-container .widget-wrapper .widget-button .button:before {
        content: '\f073';
        font-size: 4vw;
        line-height: 1.25;
        color: var(--default-white);
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
    }
    .site-home #g-extension .widget-container:is(.formed-widget-container, .flocknote-widget-container) .widget-wrapper .widget-button .button:after {
        content: '\f105';
        font-size: 4vw;
        line-height: 1.25;
        color: var(--default-white);
        font-weight: 900;
        font-family: 'Font Awesome 6 Free';
    }


    .site-home #g-extension .widget-wrapper.flocknote-widget-wrapper .widget-feed-inner-box {
        background: var(--default-white);
        border-radius: 1rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
}

@media only screen and (min-width: 50.99rem) {
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box {
        overflow-y: auto!important;
        max-height: min(51vw, 720px);
        padding: min(.5vw, .5rem) min(1vw, 1rem);

        scrollbar-width: thin;
        scrollbar-color: rgba(255,255,255,.45) transparent;
    }

    /* Chrome, Edge, Safari */
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar {
        width: 8px;
    }

    /* Hide scrollbar track/container */
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-track {
        background: transparent;
    }

    /* Hide scrollbar buttons/arrows */
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button {
        display: none;
        width: 0;
        height: 0;
    }

    /* Keep only the draggable scrollbar bar visible */
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-thumb {
        background: rgba(255,255,255,.45);
        border-radius: 999px;
    }

    /* Optional hover */
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-thumb:hover {
        background: rgba(255,255,255,.65);
    }

    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:single-button,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:vertical,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:vertical:start,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:vertical:end,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:vertical:increment,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:vertical:decrement {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        background: transparent !important;
        background-image: none !important;
    }


    .flocknote-widget-wrapper .flocknote-feed .g-title {
        color: var(--default-black);
        font-family: var(--body-font-family);
        font-size: min(2vw, 2rem);
    }

    .flocknote-widget-wrapper .newsfeed .feed-link > a {
        color: var(--default-black)!important;
        font-weight: 700;
        transition: .3s all ease-in-out;
        font-size: min(1.25vw, 1.25rem);
    }
    .flocknote-widget-wrapper .newsfeed .feed-link > a:hover {
        opacity: .5;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box {
        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-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar {
        width: 8px;
    }

    /* Hide scrollbar track/container */
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-track {
        background: transparent;
    }

    /* Hide scrollbar buttons/arrows */
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button {
        display: none;
        width: 0;
        height: 0;
    }

    /* Keep only the draggable scrollbar bar visible */
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-thumb {
        background: rgba(255,255,255,.45);
        border-radius: 999px;
    }

    /* Optional hover */
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-thumb:hover {
        background: rgba(255,255,255,.65);
    }

    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:single-button,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:vertical,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:vertical:start,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:vertical:end,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:vertical:increment,
    .site-home #g-extension .widget-wrapper.calendar-widget-wrapper .widget-feed-inner-box::-webkit-scrollbar-button:vertical:decrement {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        background: transparent !important;
        background-image: none !important;
    }


    .flocknote-widget-wrapper .flocknote-feed .g-title {
        color: var(--default-black);
        font-family: var(--body-font-family);
        font-size: 5vw;
    }

    .flocknote-widget-wrapper .newsfeed .feed-link > a {
        color: var(--default-black)!important;
        font-weight: 700;
        transition: .3s all ease-in-out;
        font-size: 4vw;
    }
    .flocknote-widget-wrapper .newsfeed .feed-link > a:hover {
        opacity: .5;
    }
}

@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);
    }
}

/*FOOTER*/
@media only screen and (min-width: 50.99rem) {
    #g-container-footer {
        background: url('/images/template/bg-footer.jpg') 50% 50% no-repeat;
        background-size: cover;
        border-bottom: 1rem solid var(--secondary-color);
    }
    #g-container-footer > .g-container {
        background: rgba(var(--primary-color-rgb),.9);
        backdrop-filter: blur(30px);
        --webkit-backdrop-filtber: blur(30px);
    }
    #g-footer {
        background: transparent;
    }
    #g-copyright {
        background: transparent;
    }
}

@media only screen and (max-width: 50.99rem) {
    #g-container-footer {
        background: url('/images/template/bg-footer.jpg') 50% 50% no-repeat;
        background-size: cover;
        border-bottom: 1rem solid var(--secondary-color);
    }
    #g-container-footer > .g-container {
        background: rgba(var(--primary-color-rgb),.9);
        backdrop-filter: blur(30px);
        --webkit-backdrop-filtber: blur(30px);
    }
    #g-footer {
        background: transparent;
    }
    #g-copyright {
        background: transparent;
    }

    .site.withmaxwidth #g-footer > .g-container {
        padding: 2rem 1rem!important;
    }
}

@media only screen and (min-width: 50.99rem) {
    .footer-wrapper {
        display: flex;
        flex-direction: column;
        gap: min(2vw, 2rem);
    }
    .footer-wrapper:before {
        content: '';
        border-bottom: 2px solid var(--default-white);
        order: 2;
    }

    .footer-wrapper .footer-top-row {
        order: 1;
        display: flex;
        flex-direction: row;
        gap: min(3vw, 3rem);
        align-items: center;
    }
    .footer-wrapper .footer-logo-icon {
        width: min(12vw, 12rem);
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }
    .footer-wrapper .footer-logo-icon img {
        width: 60%;
    }
    .footer-wrapper .footer-title {
        flex: 1;
    }
    .footer-wrapper .footer-title :is(h1,h2,h3,h4,h5,h6) {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        text-align: center;
        line-height: 1.25;
        font-size: min(2.5vw, 2.5rem);
        font-family: var(--title-font-family);
        font-weight: 600;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        background: none;
    }
    .footer-wrapper .footer-title p {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        text-align: center;
        line-height: 1.4;
        font-size: min(1.25vw, 1.25rem);
        font-family: var(--body-font-family);
        font-weight: 400;
    }
    .footer-wrapper .footer-social-icons {
        width: min(12vw, 12rem);
    }
    .footer-wrapper .footer-social-icons .g-social-items {
        display: flex;
        flex-direction: row;
        justify-content: flex-end;
        align-items: center;
        gap: min(1.25vw, 1.25rem);
    }
    .footer-wrapper .footer-social-icons .g-social-items a {
        font-size: min(1.75vw, 1.75rem);
    }

    .footer-wrapper .footer-bottom-row {
        order: 3;
        display: flex;
        flex-direction: row;
        gap: min(4vw, 4rem);
    }
    .footer-wrapper .footer-bottom-row .footer-content-column {
        flex: 1;
    }
    .footer-wrapper .footer-content-column :is(h1,h2,h3,h4,h5,h6) {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        text-align: left;
        line-height: 1.25;
        font-size: min(2vw, 2rem);
        font-family: var(--title-font-family);
        font-weight: 600;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        background: none;
        margin-bottom: min(1.25vw, 1.25rem);
    }
    .footer-wrapper .footer-content-column :is(li,p) {
        margin: 0;
        padding: 0;
        line-height: 2;
        color: var(--default-white);
        font-size: min(1.25vw, 1.25rem);
        font-family: var(--body-font-family);
    }

    .footer-wrapper .footer-links {
        display: flex;
        flex-direction: column;
        gap: min(1vw, 1rem);
        align-items: flex-start;
    }
    .footer-wrapper .footer-links a {
        background: rgba(var(--default-white-rgb),.1);
        border-radius: .2rem;
        padding: min(.5vw, .5rem) min(1vw, 1rem);
        line-height: 1;
        display: flex;
        flex-direction: row;
        gap: min(.75vw, .75rem);
        align-items: center;
        justify-content: flex-start;
        font-size: min(1.5vw, 1.5rem);
    }
    .footer-wrapper .footer-links a:after {
        content: '\f105';
        font-weight: 900;
        color: var(--default-white);
        font-family: 'Font Awesome 6 Free';
        font-size: min(1vw, 1rem);
    }
}

@media only screen and (max-width: 50.99rem) {
    .footer-wrapper {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .footer-wrapper:before {
        content: '';
        border-bottom: 2px solid var(--default-white);
        order: 2;
    }

    .footer-wrapper .footer-top-row {
        order: 1;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        align-items: center;
        justify-content: center;
    }
    .footer-wrapper .footer-logo-icon {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        text-align: center;
    }
    .footer-wrapper .footer-logo-icon img {
        width: 40%;
    }
    .footer-wrapper .footer-title {
        flex: 1;
    }
    .footer-wrapper .footer-title :is(h1,h2,h3,h4,h5,h6) {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        text-align: center;
        line-height: 1.25;
        font-size: 6vw;
        font-family: var(--title-font-family);
        font-weight: 600;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        background: none;
    }
    .footer-wrapper .footer-title p {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        text-align: center;
        line-height: 1.4;
        font-size: 4vw;
        font-family: var(--body-font-family);
        font-weight: 400;
    }
    .footer-wrapper .footer-social-icons .g-social-items {
        display: flex;
        flex-direction: row;
        justify-content: flex-end;
        align-items: center;
        gap: 1.5rem;
    }
    .footer-wrapper .footer-social-icons .g-social-items a {
        font-size: 5vw;
    }

    .footer-wrapper .footer-bottom-row {
        order: 3;
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }
    .footer-wrapper .footer-bottom-row .footer-content-column {
        flex: 1;
    }
    .footer-wrapper .footer-content-column :is(h1,h2,h3,h4,h5,h6) {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        text-align: left;
        line-height: 1.25;
        font-size: 6vw;
        font-family: var(--title-font-family);
        font-weight: 600;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        background: none;
        margin-bottom: 1rem;
    }
    .footer-wrapper .footer-content-column :is(li,p) {
        margin: 0;
        padding: 0;
        line-height: 2;
        color: var(--default-white);
        font-size: 4vw;
        font-family: var(--body-font-family);
    }

    .footer-wrapper .footer-links {
        display: flex;
        flex-direction: column;
        gap: .5rem;
        align-items: flex-start;
    }
    .footer-wrapper .footer-links a {
        background: rgba(var(--default-white-rgb),.1);
        border-radius: .2rem;
        padding: .75rem;
        line-height: 1;
        display: flex;
        flex-direction: row;
        gap: .75rem;
        align-items: center;
        justify-content: flex-start;
        font-size: 4vw;
    }
    .footer-wrapper .footer-links a:after {
        content: '\f105';
        font-weight: 900;
        color: var(--default-white);
        font-family: 'Font Awesome 6 Free';
        font-size: 4vw;
    }
}

/*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: .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;
    }
}

.welcome-buttons{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:20px;
    margin:30px 0;
}

.welcome-button{
    background:#f7f3eb;
    border-radius:18px;
    padding:30px 25px;
    text-decoration:none;
    text-align:center;
    transition:.3s ease;
    box-shadow:0 4px 15px rgba(0,0,0,.08);
    border-top:4px solid #c9a44c;
}

.welcome-button:hover{
    transform:translateY(-5px);
    background:#173f35;
    text-decoration:none;
}

.welcome-title{
    display:block;
    font-size:1.25rem;
    font-weight:700;
    color:#173f35;
    margin-bottom:10px;
}

.welcome-text{
    display:block;
    color:#555;
    line-height:1.5;
}

.welcome-button:hover .welcome-title,
.welcome-button:hover .welcome-text{
    color:#fff;
}

/* PARISH NEWS subpage — allow cards to wrap on desktop */
@media only screen and (min-width: 50.99rem) {
    .parish-news .re-news .g-content-array {
        flex-wrap: wrap;
    }
}

/* PARISH NEWS subpage — 3-column layout on tablet (50.99rem–75rem) */
@media only screen and (min-width: 50.99rem) and (max-width: 75rem) {
    .parish-news .re-news .g-content-array > .g-grid {
        min-width: calc(33.333% - min(1.5vw, 1.5rem));
        max-width: calc(33.333% - min(1.5vw, 1.5rem));
    }
}


@media only screen and (max-width: 50.99rem) {
    #site-grid.site-sub.parish-news #g-container-main > .g-container {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
}

@media only screen and (min-width: 50.99rem) {
    .tv-display #g-header {
        background: var(--primary-color);
    }

    .tv-display #g-header > .g-container {
        padding: 2vw!important;
    }
    .tv-display #g-container-main > .g-container {
        padding: 2vw!important;
    }
    .tv-display #g-header .g-logo {
        margin: 0;
        padding: 0;
    }
    .tv-display #g-header .g-logo:after {
        display: none!important;
    }

    .tv-display .swiper-overlay-logo {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 10001;
    }
    .tv-display .swiper-overlay-logo > .g-content {
        z-index: 20;
        /*height: 17vw!important;
        width: 17vw;*/
        pointer-events: none;
        background: rgba(var(--tertiary-rgb), .8);
        backdrop-filter: blur(4px);
        border-radius: 50%;
        overflow: hidden;
        /*padding: 1.25vw;*/
        box-shadow: var(--default-box-shadow);
    }
    .tv-display .swiper-overlay-logo .g-logo img {
        aspect-ratio: 1/1;
        height: auto;
        width: 100%;
    }

    .tv-display .mt-box {
        display: flex;
        flex-direction: row;
        gap: 4vw;
        justify-content: space-evenly;
    }
    .tv-display .mt-box .mt-column p {
        font-size: 1.25vw;
        color: var(--default-white);
    }
    .tv-display .mt-box .mt-column a {
        color: var(--default-white);
    }
    .tv-display .mt-container {
        display: flex;
        align-items: center;
    }
    .tv-display .mt-container > .g-content {
        width: 100%;
    }

    .tv-display .grid-sideways .g-array-item {
        --grid-column-calc: 10vw;
        --grid-grid-height: 10vw;
    }
    .tv-display .grid-sideways .g-array-item-image img {
        width: 90%!important;
        height: unset!important;
    }
    .tv-display .grid-articles .g-array-item-image {
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
    }
    .tv-display .grid-articles .g-item-title {
        --grid-title-font-size: 1.5vw;
    }
    .tv-display .grid-sideways .g-content-array {
        --grid-gap: 1rem 1rem;
    }
    .tv-display .grid-articles .g-array-item-text {
        font-size: 1.25vw!important;
    }

    .tv-display .g-title {
        border-left: 1rem solid var(--secondary-color);
        text-transform: uppercase;
        letter-spacing: 5px;
        font-size: 4rem;
        line-height: 1;
        margin: 0;
        padding: 0;
        padding-left: 2vw;
        margin-bottom: 1rem;
        border-bottom: none!important;
    }

    .tv-display #g-bottom {
        position: unset;
    }
    .tv-display #lowerRotate {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 10000;
    }

    .tv-display .g-content-array {
        margin-top: 0!important;
    }

    .tv-display #g-bottom:not(:has(#lowerRotate .swiper-slide img)) {
        display: none!important;
    }
    .tv-display:has(#lowerRotate .swiper-slide img) {
        overflow-y: hidden!important;
    }

    .tv-display #lowerRotate.fullwidth-swiper .swiper-slide img {
        width: 100%;
        height: 100%;
    }

    .tv-display #g-container-main > .g-container > .g-grid > .g-block:has(#g-mainbar) {
        padding: 0 1rem!important;
    }

    .tv-display .widget-button.calendar-button {
        display: none!important;
    }

}

/* 1. Target the main content block that holds both the title and the scroll area */
.tv-display #scrollHeadlines {
    /* Set a specific viewport height for the scrolling headlines */
    height: 40vw; 
    /* Establish a new stacking context */
    position: relative; 
    /* Ensure nothing overlaps this whole block from a lower context */
    z-index: 1; 
    overflow: hidden;
}

/* 2. Target the Title element (.g-title) */
.tv-display #scrollHeadlines .g-title {
    /* Make the title positionable */
    position: relative; 
    /* Give the title a higher stacking layer than the content array */
    /* Use a high number like 10 to ensure it's on top of the scrolling content */
    z-index: 10; 
    /* Make sure the title has a background so the scrolling content doesn't show through */
    background-color: white; /* Replace 'white' with your block's background color */
    padding: 10px; /* Optional: adds space around the title */
    margin: 0; /* Remove default margins to prevent gaps */
}

/* 3. The scrolling wrapper CSS (from the previous response) */
.tv-display .g-content-array {
    display: flex;
    flex-direction: column;
    padding-top: 10px; 
    /* Reset its stacking context to be beneath the title */
    z-index: 5; 
    /* Apply a negative margin to pull it up so the scroll animation starts right under the title. */
    /* You'll need to adjust this value based on the actual height of your .g-title */
    /* A value of roughly -50px is a common starting point if your title is around 40px tall. */
    margin-top: -50px; 
}

/* Keyframe animation remains the same */
@keyframes verticalScroll {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-50%); 
    }
}

@media only screen and (min-width: 50.99rem) {
    .tv-display .gcaltohtml {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 1vw;
    }
    .tv-display .gcaltohtml .cc-block {
        margin: 0;
        padding: 0;
        background: var(--default-white);
        border-radius: .5rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .tv-display .gcaltohtml .cc-dateblockformat {
        margin: 0;
        padding: 3px .5vw;
        display: flex;
        flex-direction: row;
        gap: 1vw;
        justify-content: space-between;
        align-items: center;
        background: var(--background-color);
    }
    .tv-display .gcaltohtml .cc-dateset {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        gap: .5vw;
        align-items: center;
    }
    .tv-display .gcaltohtml .cc-day-of-month-num {
        margin: 0;
        padding: .5vw;
        font-size: 1.5vw;
        color: var(--primary-color);
        font-family: var(--title-font-family);
        border-radius: 50%;
        background: transparent;
        aspect-ratio: 1/1;
        height: 2.5vw!important;
        width: auto;
        line-height: 1;
        font-weight: 700;
    }
    .tv-display .gcaltohtml .cc-month-year {
        margin: 0;
        padding: 0;
        font-size: 1.4vw;
        line-height: 1;
        color: var(--primary-color);
        font-weight: 600;
        font-family: var(--body-font-family);
        text-align: left;
    }
    .tv-display .gcaltohtml .cc-dayset {
        margin: 0;
        padding: 0;
        font-size: 1.4vw;
        line-height: 1;
        color: var(--primary-color);
        font-weight: 600;
        font-family: var(--body-font-family);
        text-align: right;
    }
    .tv-display .gcaltohtml .cc-eventblock {
        margin: 0;
        padding: .75vw;
    }
    .tv-display .gcaltohtml .cc-innereventblock {
        margin: 0;
        padding: 0;
    }
    .tv-display .gcaltohtml .event {
        margin: 0;
        padding: .5vw 0;
        display: flex;
        flex-direction: row;
        gap: 1.5vw;
    }
    .tv-display .gcaltohtml .cc-innereventblock > .event:not(.event:last-child) {
        border-bottom: 1px solid rgba(0,0,0,.3);
    }
    .tv-display .gcaltohtml .cc-timeofday {
        margin: 0;
        padding: 0;
        flex: 1;
        font-size: 1.4vw;
        color: var(--primary-color);
        font-weight: 700;
        font-family: var(--title-font-family);
        line-height: 1.2;
    }
    .tv-display .gcaltohtml .cc-title {
        margin: 0;
        padding: 0;
        flex: 2.5;
        font-size: 1.25vw;
        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) {
    .tv-display .gcaltohtml {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .tv-display .gcaltohtml .cc-block {
        margin: 0;
        padding: 0;
        background: var(--default-white);
        border-radius: .5rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .tv-display .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);
    }
    .tv-display .gcaltohtml .cc-dateset {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        gap: .5rem;
        align-items: center;
    }
    .tv-display .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;
    }
    .tv-display .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;
    }
    .tv-display .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;
    }
    .tv-display .gcaltohtml .cc-eventblock {
        margin: 0;
        padding: .75rem;
    }
    .tv-display .gcaltohtml .cc-innereventblock {
        margin: 0;
        padding: 0;
    }
    .tv-display .gcaltohtml .event {
        margin: 0;
        padding: .5rem 0;
        display: flex;
        flex-direction: row;
        gap: 1rem;
    }
    .tv-display .gcaltohtml .cc-innereventblock > .event:not(.event:last-child) {
        border-bottom: 1px solid rgba(0,0,0,.3);
    }
    .tv-display .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;
    }
    .tv-display .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);
    }
}

@media only screen and (min-width: 50.99rem) {
    body.site.site-sub.parish-news #g-container-main > .g-container > .g-grid > .g-block:has(#g-mainbar) > #g-mainbar > .g-grid > #grid-addpic > .g-content {
        margin: .625rem 0!important;
        padding: 1.5rem 0!important;
    }
}

.accordian-wrapper .g-content-array > .g-grid.active .g-array-item-text li {
    font-size: 1.1rem;
}