@import url('//fonts.googleapis.com/css2?family=PT+Serif:ital,wght@0,400;0,700;1,400;1,700&display=swap');
/************ TEMPLATE  ************
Mockup #2 Approved

COLORS (GRADIENTS IF ANY) INCLUDE RGB
Primary: Red 8e2635 rgb(142,38,53)
Secondary: Gold b79400 rgb(183,148,0)
Tertiary: 

FONTS USED (Google)
Display/Body: PT Serif

IMAGES (OPACITY, BLUR RADIUS IN PX, ROTATOR RATIO)
Header:  82% Opacity. 2px Blur.
QuickLinks: 85% Opacity
Widget Section: 92% Opacity. 5px Blur.

ADDITIONAL NOTES (FX, REQUESTS, HELPFUL TEXT)
- Hover FX for QLs just turn red with same opacity.
- Make sure to include hover for Resources & Events section
- Contact Us button has gradient: see below
dbdbdb rgb(219,219,219)(LEFT)to adadad rgb(173,173,173)(RIGHT)

-----
MASS SCHEDULE
Sunday Mass Schedule
Saturday Vigil: 4:00PM
Sunday: 8:00AM | 10:00AM | 12:00PM

Daily Mass Schedule
Monday - Friday: 8:00AM

Confession This Saturday
Saturday: 3:00PM to 3:30PM 
Any additional times please contact the office.

Adoration This Thursday
Thursday: 8:30AM - 11:30AM
************/

.site-1 {
    --primary-color: #8e2635;
    --secondary-color: #b79400;
    --tertiary-color: #b79400;

    --primary-rgb: 142,38,53;
    --secondary-rgb: 183,148,0;
    --tertiary-rgb: 183,148,0;

    --default-white: #ffffff;
    --default-black: #000000;

    --title-font-family: 'PT Serif', serif;
    --body-font-family: 'PT Serif', serif;

    --heading-color: var(--primary-color);
    --heading-font-family: var(--title-font-family);

    --title-border-bottom: 1px solid var(--secondary-color);

    --home-title-font: var(--title-font-family);

    --transparent: rgba(255,255,255,0);

    --default-box-shadow: 0px 0px 10px rgba(0,0,0,.5);

    --swiper-box-shadow: var(--default-box-shadow);

    --ql-title-color: var(--default-white);

    --mt-header-color: var(--primary-color);
    --mt-para-color: var(--default-black);
    --mt-para-desktop: 1.25vw;

    --rok-mini-badge: var(--primary-color);
}

.site-1-home .grid-sideways.grid-articles.grid-square {
    --grid-grid-height: 10vw;
    --grid-gap: .5vw;
}

.site-1 .ql-fa-toplinks {
    --ql-title-color: var(--primary-color);
}

.readon, .button, .btn, p.readmore .btn, .sprocket-lists-portrait-container > li .sprocket-lists-portrait-item > a span, .listentobutton.moduletable a {
    background: var(--primary-color);
    font-family: var(--body-font-family);
}

/*************** ALL SITE *****************/
.item-image {display: none;}

:is(.site-1-home, .site-2-home, .site-3-home) #g-page-surround .g-content {
    padding: 0;
}

:is(.site-1-home, .site-2-home, .site-3-home) #g-page-surround .g-array-item-text {
    margin: 0;
}

:is(.site-1-sub, .site-2-sub, .site-3-sub) section:not(#g-navigation, #g-container-footer, #g-copyright) .g-content {
    margin: 0.625rem;
    padding: 1.5rem;
}

:is(.site-1-sub, .site-2-sub, .site-3-sub) section#g-container-main #g-aside .g-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

@media (min-width: 50.99rem) {
  :is(.site-1-home, .site-2-home) #g-top .modern-alert .g-joomla-articles {
      padding: 0 3% !important;
  }
 }

/*************** HOMELAYOUT ***************/ 
/*************** OFFCANVAS ****************/
.g-offcanvas-toggle {color: var(--primary-color);} 
.g-offcanvas-toggle .fa-fw {text-shadow: none;}

@media only screen and (max-width: 50.99rem) {
    .site-1 #g-offcanvas .g-social-items {
        display: flex;
        flex-direction: row;
        gap: 2rem;
        align-items: center;
        justify-content: center;
    }
    .site-1 #g-offcanvas .g-social-items a {
        color: var(--secondary-color);
    }
    .site-1 #g-offcanvas .g-social-items a:hover {
        color: var(--tertiary-color);
    }
}

/*************** TOP **********************/ 
/*************** NAVIGATION ***************/
@media only screen and (min-width: 50.99rem) {
    .site-1 #g-navigation {
        background: url('/images/template/header.jpg') 50% 60% no-repeat;
        background-size: cover;
        position: relative;
        z-index: 100;
    }
    .site-1 #g-navigation > .g-container {
        background: rgba(var(--primary-rgb),.82);
        backdrop-filter: blur(2px);
    }

    .site-1 #g-navigation > .g-container > .g-grid:has(.g-logo) {
        padding: 3vw!important;
    }
    .site-1 #g-navigation > .g-container > .g-grid:has(.g-toplevel) {
        border-top: .5vw solid var(--default-white);
    }

    .site-1 #g-navigation .g-logo img {
        width: 100%;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-1 #g-navigation {
        background: url('/images/template/header.jpg') 50% 60% no-repeat;
        background-size: cover;
        position: relative;
        z-index: 100;
    }
    .site-1 #g-navigation > .g-container {
        background: rgba(var(--primary-rgb),.82);
        backdrop-filter: blur(2px);
    }
}

@media only screen and (min-width: 50.99rem) {
    .g-main-nav .g-toplevel>li>.g-menu-item-container>.g-menu-item-content {
        font-size: 1.25vw;
        font-family: var(--body-font-family);
        font-weight: 600;
    }
    .g-main-nav .g-sublevel>li>.g-menu-item-container>.g-menu-item-content>.g-menu-item-title {
        font-size: 1.25vw;
        font-family: var(--body-font-family);
        font-weight: 600;
    }

    .site-1 #g-navigation .g-social-items {
        display: flex;
        flex-direction: row;
        gap: 2vw;
        align-items: center;
    }
    .site-1 #g-navigation .g-social-items a {
        color: var(--default-white);
        font-size: 1.25vw;
    }
    .site-1 #g-navigation .g-social-items a:hover {
        color: var(--primary-color);
    }
}
@media only screen and (max-width: 50.99rem) {
    #g-navigation .g-logo {
        max-width: 65%;
        margin: 2rem auto;
    }
}
/*************** SLIDESHOW ****************/ 
@media only screen and (min-width: 50.99rem) {
    .site-1-home #g-slideshow > .g-container {
        padding: 2vw!important;
    }
    .site-1-home #g-slideshow > .g-container > .g-grid:has(.fullwidth-swiper, .mass-times-block) {
        display: flex;
        flex-direction: row;
        gap: 2vw;
    }
    .site-1-home #g-slideshow > .g-container > .g-grid:has(.fullwidth-swiper, .mass-times-block) .fullwidth-swiper {
        flex: 66;
        width: unset;
        max-width: 66%;
        min-width: unset;
        border-radius: 1rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }
    .site-1-home #g-slideshow > .g-container > .g-grid:has(.fullwidth-swiper, .mass-times-block) .mass-times-block {
        flex: 34;
        width: unset;
        max-width: 34%;
        min-width: unset;
    }
    .site-1-home #g-slideshow .mass-times-block .g-array-item {
        padding: 2vw 2vw 2vw 2vw;
    }
    .site-1-home #g-slideshow .mass-times-block .g-array-item-text {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    .site-1-home .mass-times-block {
        background: none;
    }
    .site-1-home .mass-times-block h1 {
        text-align: left;
        font-weight: 600;
        font-size: 2.75vw;
        letter-spacing: 3px;
    }
    .site-1-home .mass-times-block p {
        line-height: 1.5;
    }
    .site-1-home .mass-times-block > .g-content {
        background: none;
    }

    .site-1-home .mass-times-block .strong-title {
        font-size: 1.5vw;
        font-weight: 700;
        line-height: 1.15;
        margin: 0;
        padding: 0;
    }
    .mt-italic {
        font-style: italic;
        font-weight: 400;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-1-home .mass-times-block {
        background: none;
    }
    .site-1-home .mass-times-block h1 {
        text-align: left;
        font-weight: 600;
        font-size: 8vw;
        letter-spacing: 3px;
    }
    .site-1-home .mass-times-block p {
        line-height: 1.5;
    }
    .site-1-home .mass-times-block > .g-content {
        background: none;
    }

    .site-1-home .mass-times-block .strong-title {
        font-size: 6vw;
        font-weight: 700;
        line-height: 1.15;
        margin: 0;
        padding: 0;
    }
    .mt-italic {
        font-style: italic;
        font-weight: 400;
    }
}

/*************** HEADER *******************/
.site-1-home .ql-inner-box {
    --ql-background-color: rgba(var(--secondary-rgb),.85);
    --ql-background-hover: rgba(var(--secondary-rgb),.85);
}

@media only screen and (min-width: 50.99rem) {
    .site-1-home #g-header > .g-container {
        padding: 1vw 2vw 3vw 2vw!important;
    }

    .ql-vw15 .g-blockcontent-subcontent-block-content {
        height: 12vw;
    }

    .site-1-home .ql-inner-box .g-blockcontent-subcontent {
        gap: 2vw;
    }
    .site-1-home .ql-inner-box .g-blockcontent-subcontent-block {
        border-radius: 1rem;
        border: 2px solid var(--default-white);
        box-shadow: var(--default-box-shadow);
        overflow: hidden;
        transition: .3s all ease-in-out;
    }
    .site-1-home .ql-inner-box .g-blockcontent-subcontent-block:hover {
        transform: scale(1.05);
    }
    .site-1-home .ql-inner-box .g-blockcontent-subcontent-title {
        padding: 0;
    }
    .site-1-home .ql-inner-box .g-blockcontent-subcontent-title > .g-blockcontent-subcontent-title-text {
        border: none!important;
    }
}

/*************** ABOVE ********************/
/*************** SHOWCASE *****************/
/*************** UTILITY ******************/
/*************** FEATURE ******************/
/*************** MAIN *********************/
:is(#g-sidebar, #g-mainbar, #g-aside) {
    background: none;
}

@media only screen and (min-width: 50.99rem) {
    .site-1-home .grid-articles {
        --grid-title-font-size: 1.5vw;
        --grid-text-font-size: 1.25vw;
    }

    .site-1-home #g-container-main > .g-container {
        padding: 4vw 5% 5vw 5%!important;
    }
    .site-1-home #g-container-main > .g-container > .g-grid {
        display: flex;
        flex-direction: row;
        gap: 3vw;
    }
    .site-1-home #g-container-main > .g-container > .g-grid > .g-block:nth-child(1) {
        flex: 35;
        width: unset;
        background: var(--default-white);
        border-radius: 1rem;
        box-shadow: var(--default-box-shadow);
        padding: 2vw 1.5vw;
    }
    .site-1-home #g-container-main > .g-container > .g-grid > .g-block:nth-child(2) {
        flex: 50;
        width: unset;
        background: var(--default-white);
        border-radius: 1rem;
        box-shadow: var(--default-box-shadow);
        padding: 2vw 1.5vw;
    }
    .site-1-home #g-container-main > .g-container > .g-grid > .g-block:nth-child(3) {
        max-width: 165px;
        width: unset;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .site-1-home .grid-articles.grid.grid-mobile-stacked.grid-sideways .g-content-array > .g-grid {
        border-top-left-radius: 6vw 50%!important;
        border-bottom-left-radius: 6vw 50%!important;
    }
    .site-1-home #ph-addpic.grid-articles .g-array-item-image {
        border-radius: 50%;
        overflow: hidden;
        position: relative;
    }
    .site-1-home #ph-addpic.grid-articles .g-array-item-image:before {
        content: "Read More";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        background: rgba(0,0,0,.5);
        opacity: 0;
        transition: .3s all ease-in-out;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        color: var(--default-white);
        font-family: var(--title-font-family);
        line-height: 1;
        margin: 0;
        padding: 0;
        font-size: 1.25vw;
        font-weight: 600;
    }
    .site-1-home #ph-addpic.grid-articles .g-content-array > .g-grid:hover .g-array-item-image:before {
        opacity: 1;
    }

    .site-1-home .rok-mini-particle-verticle .rme-items {
        gap: 2vw;
    }
    .site-1-home .rok-mini-particle-verticle .rme-day {
        padding: 0 2vw 1vw 2vw;
        order: 2;
        font-size: 1.5vw;
    }
    .site-1-home .rok-mini-particle-verticle .rme-month {
        padding: 1vw 2vw 0 2vw;
        order: 1;
        font-size: 1.5vw;
    }

    .site-1-home .rok-mini-particle-verticle .rme-title {
        order: 2;
        color: var(--default-black);
        font-size: 1.25vw;
        font-weight: 500;
    }
    .site-1-home .rok-mini-particle-verticle .rme-time {
        order: 1;
        font-size: 1.5vw;
        color: var(--default-black);
        font-weight: 600;
    }

    .site-1-home #g-container-main .g-title {
        color: var(--primary-color);
        text-align: left;
        text-transform: none;
        font-variant-caps: normal;
        font-size: 3vw;
        font-weight: 600;
        letter-spacing: 1px;
        line-height: 2;
        margin: 0;
        padding: 0;
        font-family: var(--title-font-family);
        border: none;
    }

    .site-1-home #g-container-main .button {
        background: var(--secondary-color);
        font-family: var(--title-font-family);
        font-size: 1.25vw;
        line-height: 1;
        padding: .75vw 2vw;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-1-home .grid-articles {
        --grid-title-font-size: 6vw;
        --grid-text-font-size: 4vw;
    }

    .site-1-home #g-container-main > .g-container {
        padding: 2rem 1rem!important;
    }
    .site-1-home #g-container-main > .g-container > .g-grid {
        display: flex;
        flex-direction: column;
        gap: 2rem;
    }
    .site-1-home #g-container-main > .g-container > .g-grid > .g-block:nth-child(1) {
        width: 100%;
        background: var(--default-white);
        border-radius: 1rem;
        box-shadow: var(--default-box-shadow);
        padding: 2vw 1.5vw;
        order: 3;
    }
    .site-1-home #g-container-main > .g-container > .g-grid > .g-block:nth-child(2) {
        width: 100%;
        background: var(--default-white);
        border-radius: 1rem;
        box-shadow: var(--default-box-shadow);
        padding: 2vw 1.5vw;
        order: 1;
    }
    .site-1-home #g-container-main > .g-container > .g-grid > .g-block:nth-child(3) {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        order: 2;
    }
    .site-1-home .grid-articles.grid.grid-mobile-stacked.grid-sideways .g-content-array > .g-grid {
        border-top-left-radius: 6vw 50%!important;
        border-bottom-left-radius: 6vw 50%!important;
    }
    .site-1-home #ph-addpic.grid-articles .g-array-item-image {
        border-radius: 50%;
        overflow: hidden;
        position: relative;
    }
    .site-1-home #ph-addpic.grid-articles .g-array-item-image:before {
        content: "Read More";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        background: rgba(0,0,0,.5);
        opacity: 0;
        transition: .3s all ease-in-out;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        color: var(--default-white);
        font-family: var(--title-font-family);
        line-height: 1;
        margin: 0;
        padding: 0;
        font-size: 1.25vw;
        font-weight: 600;
    }
    .site-1-home #ph-addpic.grid-articles .g-content-array > .g-grid:hover .g-array-item-image:before {
        opacity: 1;
    }

    .site-1-home #g-mainbar {
        margin: 0;
        padding: 0;
    }

    .site-1-home .rok-mini-particle-verticle .rme-items {
        gap: 1rem;
    }
    .site-1-home .rok-mini-particle-verticle .rme-day {
        padding: 0 1rem .5rem 1rem;
        order: 2;
        font-size: 4vw;
    }
    .site-1-home .rok-mini-particle-verticle .rme-month {
        padding: .5rem 1rem 0 1rem;
        order: 1;
        font-size: 4vw;
    }

    .site-1-home .rok-mini-particle-verticle .rme-title {
        order: 2;
        color: var(--default-black);
        font-size: 4vw;
        font-weight: 500;
    }
    .site-1-home .rok-mini-particle-verticle .rme-time {
        order: 1;
        font-size: 5vw;
        color: var(--default-black);
        font-weight: 600;
    }
    .site-1-home .rok-mini-particle-verticle .rme-description {
        justify-content: flex-start;
    }

    .site-1-home #g-container-main .g-title {
        color: var(--primary-color);
        text-align: center;
        text-transform: none;
        font-variant-caps: normal;
        font-size: 6vw;
        font-weight: 600;
        letter-spacing: 1px;
        line-height: 2;
        margin: 0;
        padding: 0;
        font-family: var(--title-font-family);
        border: none;
    }

    .site-1-home #g-container-main .button {
        background: var(--secondary-color);
        font-family: var(--title-font-family);
        font-size: 4vw;
        line-height: 1;
        padding: 1rem;
    }
}

@media only screen and (min-width: 50.99rem) {
    .site-1-sub #g-mainbar {
        min-height: 30vh;
    }
}

@media only screen and (max-width: 50.99rem) {
    :is(.site-1-sub, .site-2-sub) #g-mainbar > .g-grid > .g-block > .g-content {
        margin: 0;
        padding: 0;
    }
}

/*************** EXPANDED *****************/ 
@media only screen and (min-width: 50.99rem) {
    .site-1-home #g-expanded {
        background: url('/images/template/bg-widgets-and-hrs.jpg') 50% 50% no-repeat;
        background-size: cover;
    }
    .site-1-home #g-expanded > .g-container {
        background: rgba(var(--secondary-rgb),.92);
        backdrop-filter: blur(5px);
        padding: 3vw 5%!important;
    }

    .site-1-home #g-expanded > .g-container > .g-grid {
        display: flex;
        flex-direction: row;
        gap: 3vw;
    }
    .site-1-home #g-expanded > .g-container > .g-grid > .facebook-container {
        flex: 30;
        width: unset;
    }
    .site-1-home #g-expanded > .g-container > .g-grid > .hr-ql {
        flex: 40;
        width: unset;
    }

    .site-1-home #g-expanded .eapps-widget {
        border-radius: 1.5rem;
        overflow: hidden;
        box-shadow: 3px 3px 15px rgba(0,0,0,.5);
    }

    .facebook-container .g-title {
        color: var(--default-white);
        text-align: center;
        text-transform: none;
        font-variant-caps: normal;
        font-size: 2vw;
        font-weight: 600;
        letter-spacing: 1px;
        line-height: 2;
        margin: 0;
        padding: 0;
        font-family: var(--title-font-family);
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-1-home #g-expanded {
        background: url('/images/template/bg-widgets-and-hrs.jpg') 50% 50% no-repeat;
        background-size: cover;
    }
    .site-1-home #g-expanded > .g-container {
        background: rgba(var(--secondary-rgb),.92);
        backdrop-filter: blur(5px);
        padding: 2rem 1rem!important;
    }

    .site-1-home #g-expanded > .g-container > .g-grid {
        display: flex;
        flex-direction: column;
        gap: 2rem;
    }
    .site-1-home #g-expanded > .g-container > .g-grid > .facebook-container {
        width: 100%;
    }
    .site-1-home #g-expanded > .g-container > .g-grid > .hr-ql {
        width: 100%;
    }

    .site-1-home #g-expanded .eapps-widget {
        border-radius: 1.5rem;
        overflow: hidden;
        box-shadow: 3px 3px 15px rgba(0,0,0,.5);
    }

    .facebook-container .g-title {
        color: var(--default-white);
        text-align: center;
        text-transform: none;
        font-variant-caps: normal;
        font-size: 6vw;
        font-weight: 600;
        letter-spacing: 1px;
        line-height: 2;
        margin: 0;
        padding: 0;
        font-family: var(--title-font-family);
    }
}

@media only screen and (min-width: 50.99rem) {
    .hr-ql {
        margin: 0;
        padding: 0;
    }
    .hr-ql > .g-content {
        margin: 0;
        padding: 0;
    }
    .hr-ql > .g-content > div {
        margin: 0;
        padding: 0;
    }
    .hr-ql .g-blockcontent {
        margin: 0;
        padding: 0;
    }
    .hr-ql .g-blockcontent > .g-grid:has(.g-blockcontent-header) {
        margin: 0;
        padding: 0;
    }
    .hr-ql .g-blockcontent > .g-grid:has(.g-blockcontent-header) > .g-block {
        margin: 0;
        padding: 0;
    }
    .hr-ql .g-blockcontent .g-blockcontent-header {
        margin: 0;
        padding: 0;
    }
    .hr-ql .g-blockcontent .g-blockcontent-header .g-title {
        color: var(--default-white);
        text-align: center;
        text-transform: none;
        font-variant-caps: normal;
        font-size: 2vw;
        font-weight: 600;
        letter-spacing: 1px;
        line-height: 2;
        margin: 0;
        padding: 0;
        font-family: var(--title-font-family);
    }
    .hr-ql .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 2vw 1.5vw;
    }
    .hr-ql .g-blockcontent-subcontent-block {
        margin: 0;
        padding: 0;
        flex: 1;
        min-width: 40%;
        max-width: 50%;
        position: relative;
    }
    .hr-ql .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 1vw;
    }
    .hr-ql .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-img {
        border: 2px solid var(--default-white);
    }
    .hr-ql .g-blockcontent-subcontent-img {
        margin: 0;
        padding: 0;
        aspect-ratio: 4/3;
        object-position: center;
        object-fit: cover;
        background: var(--default-white);
        box-shadow: 3px 3px 15px rgba(0,0,0,.5);
        border-radius: 1.5rem;
        transition: .3s border ease-in-out;
        border: none;
    }
    .hr-ql .g-blockcontent-subcontent-title {
        margin: 0;
        padding: 0;
        background: var(--primary-color);
        padding: .5vw;
        width: 100%;
        border-radius: .5rem;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .hr-ql .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        text-align: center;
        font-size: 1vw;
    }
    .hr-ql .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .hr-ql .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

@media only screen and (max-width: 50.99rem) {
    .hr-ql {
        margin: 0;
        padding: 0;
    }
    .hr-ql > .g-content {
        margin: 0;
        padding: 0;
    }
    .hr-ql > .g-content > div {
        margin: 0;
        padding: 0;
    }
    .hr-ql .g-blockcontent {
        margin: 0;
        padding: 0;
    }
    .hr-ql .g-blockcontent > .g-grid:has(.g-blockcontent-header) {
        margin: 0;
        padding: 0;
    }
    .hr-ql .g-blockcontent > .g-grid:has(.g-blockcontent-header) > .g-block {
        margin: 0;
        padding: 0;
    }
    .hr-ql .g-blockcontent .g-blockcontent-header {
        margin: 0;
        padding: 0;
    }
    .hr-ql .g-blockcontent .g-blockcontent-header .g-title {
        color: var(--default-white);
        text-align: center;
        text-transform: none;
        font-variant-caps: normal;
        font-size: 6vw;
        font-weight: 600;
        letter-spacing: 1px;
        line-height: 2;
        margin: 0;
        padding: 0;
        font-family: var(--title-font-family);
    }
    .hr-ql .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 1rem;
    }
    .hr-ql .g-blockcontent-subcontent-block {
        margin: 0;
        padding: 0;
        flex: 1;
        min-width: 40%;
        max-width: 50%;
        position: relative;
    }
    .hr-ql .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .hr-ql .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-img {
        border: 2px solid var(--default-white);
    }
    .hr-ql .g-blockcontent-subcontent-img {
        margin: 0;
        padding: 0;
        aspect-ratio: 4/3;
        object-position: center;
        object-fit: cover;
        background: var(--default-white);
        box-shadow: 3px 3px 15px rgba(0,0,0,.5);
        border-radius: 1.5rem;
        transition: .3s border ease-in-out;
        border: none;
    }
    .hr-ql .g-blockcontent-subcontent-title {
        margin: 0;
        padding: 0;
        background: var(--primary-color);
        padding: .5rem;
        width: 100%;
        border-radius: .5rem;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .hr-ql .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        text-align: center;
        font-size: 3vw;
    }
    .hr-ql .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .hr-ql .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

/*************** EXTENSION ****************/
/*************** BOTTOM *******************/
@media only screen and (min-width: 50.99rem) {
    .site-1 #g-bottom {
        padding: 2vw 0!important;
    }
    .site-1 #g-bottom .admod td {
        padding: 0;
    }
}

/*************** FOOTER *******************/
#g-footer .g-content-array {margin: 0;}
#g-footer a {color: var(--default-white); transition: .3s all ease-in-out;} 
#g-footer a:hover {opacity: .5;}

@media only screen and (min-width: 50.99rem) {
    .site-1 #g-footer > .g-container > .g-grid:has(.footer-wrapper) {
        padding: 3vw 5%!important;
    }
    .footer-wrapper {
        display: flex;
        flex-direction: row;
        gap: 2vw;
        justify-content: space-between;
        align-items: stretch;
    }
    .footer-wrapper .weblinks a {
        text-decoration: underline;
        font-size: 1.25vw;
        line-height: 1.5;
    }
    .footer-logo {
        width: 25%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .footer-logo a {
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .footer-logo img {
        width: 20vw;
    }
    .footer-wrapper h1 {
        color: var(--default-white);
        font-size: 2vw;
        font-family: var(--title-font-family);
        line-height: 2;
        margin: 0;
        padding: 0;
    }
    .footer-wrapper p {
        font-size: 1.25vw;
        font-family: var(--title-font-family);
        letter-spacing: 1px;
    }
    .footer-links .weblinks {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }
    .f-underline {
        text-decoration: underline;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-1 #g-footer > .g-container > .g-grid:has(.footer-wrapper) {
        padding: 2rem 1rem!important;
    }
    .footer-wrapper {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        justify-content: space-between;
        align-items: stretch;
    }
    .footer-wrapper .weblinks a {
        text-decoration: underline;
        font-size: 3vw;
        line-height: 1.5;
    }
    .footer-logo {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .footer-logo a {
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .footer-logo img {
        width: 90%;
    }
    .footer-wrapper h1 {
        color: var(--default-white);
        font-size: 6vw;
        font-family: var(--title-font-family);
        line-height: 2;
        margin: 0;
        padding: 0;
    }
    .footer-info h1 {
        text-align: center;
    }
    .footer-info p {
        text-align: center;
    }
    .footer-wrapper p {
        font-size: 4vw;
        font-family: var(--title-font-family);
        letter-spacing: 1px;
    }
    .footer-links .weblinks {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }
    .f-underline {
        text-decoration: underline;
    }
}

@media only screen and (min-width: 50.99rem) {
    .site-1 #g-footer > .g-container > .g-grid:has(.ptp-wrapper) {
        background: var(--default-white);
        padding: 2vw 5%!important;
    }

    .ptp-wrapper {
        display: flex;
        flex-direction: row;
        gap: 2vw;
    }
    .ptp-image {
        flex: 10;
    }
    .ptp-text {
        flex: 90;
    }
    .ptp-text :is(h1,h2,h3,h4,h5,h6) {
        color: var(--default-black);
        font-size: 1.75vw;
        font-family: var(--title-font-family);
        text-transform: none;
        font-variant-caps: normal;
        font-weight: 600;
        line-height: 1;
        margin: 0;
        padding: 0;
        margin-bottom: 1vw;
    }
    .ptp-text p {
        color: var(--default-black);
        font-family: var(--body-font-family);
        font-size: 1vw;
        font-weight: 400;
        letter-spacing: 2px;
    }
    #g-footer .ptp-text a {
        color: var(--default-black)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-1 #g-footer > .g-container > .g-grid:has(.ptp-wrapper) {
        background: var(--default-white);
        padding: 2rem 1rem!important;
    }

    .ptp-wrapper {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .ptp-image {
        flex: 10;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .ptp-image img {
        width: 40%;
    }
    .ptp-text {
        flex: 90;
    }
    .ptp-text :is(h1,h2,h3,h4,h5,h6) {
        color: var(--default-black);
        font-size: 6vw;
        font-family: var(--title-font-family);
        text-transform: none;
        font-variant-caps: normal;
        font-weight: 600;
        line-height: 1;
        margin: 0;
        padding: 0;
        margin-bottom: 1vw;
    }
    .ptp-text p {
        color: var(--default-black);
        font-family: var(--body-font-family);
        font-size: 3vw;
        font-weight: 400;
        letter-spacing: 2px;
    }
    #g-footer .ptp-text a {
        color: var(--default-black)!important;
    }
}

/*************** COPYRIGHT ****************/ 
@media only screen and (max-width: 50.99rem) {
    .web-policy {
        justify-content: flex-end;
        padding-right: 10px;
    }
    .site-1 .adminfootericon {
        bottom: 40px
    }

    .site-2 .adminfootericon {
        bottom: 40px
    }
}

/*************** MODULES ******************/
.moduletable .nav.menu, .moduletable .unstyled {background: var(--primary-color);} 
.moduletable .nav.menu li.current.active a, .moduletable .nav.menu li a:hover {    
    color: var(--default-white); 
    background: var(--secondary-color);
} 
/*************** SECTIONS *****************/
/*************** MOBILE *******************/

.g-offcanvas-toggle {
  background: var(--default-white);
  display: grid;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  box-shadow: var(--default-box-shadow);
}

/*************** ADS **********************/

@media only screen and (min-width: 50.99rem) {
    #site-grid #g-container-main {
        padding-bottom: 3vw;
    }
}

@media only screen and (max-width: 50.99rem) {
    .grid.ph-sidebyside-mobile .g-array-item-read-more {
        opacity: 0;
    }
    .grid.ph-sidebyside-mobile .g-array-item-title {
        padding: 1rem;
    }
}

@media only screen and (min-width: 50.99rem) {
    .search-page button.btn {
        background: var(--primary-color)!important;
    }
    .search-page button.btn:hover {
        background: var(--secondary-color)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .search-page button.btn {
        background: var(--primary-color)!important;
    }
    .search-page button.btn:hover {
        background: var(--secondary-color)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .ph-sidebyside-mobile .g-array-item-read-more {
        opacity: 0;
    }
    .ph-sidebyside-mobile .g-array-item-title {
        padding: 1rem;
    }
}

@media only screen and (min-width: 50.99rem) {
    .bilingual {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        gap: 2vw;
    }
    .bilingual .englishtext {
        flex: 1;
    }
    .bilingual .spanishtext {
        flex: 1;
        font-style: italic;
    }
}

@media only screen and (max-width: 50.99rem) {
    .bilingual {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }
    .bilingual .englishtext {
        flex: 1;
    }
    .bilingual .spanishtext {
        flex: 1;
        font-style: italic;
    }
}

/* Image Paths for Particle Template */
/* All images used in the particle template need to be updated here */

@media (min-width: 50.99rem) {
  .style-201 .g-container:has([class*="-201"]) {background-image: url('/images/template/header-church-transparent-background.png'); background-position: center; background-size: cover; background-repeat: no-repeat;}
  .style-202 .g-container:has([class*="-202"]) {background-image: url("/images/template/header-church-transparent-background.png"); background-position: center; background-size: cover; background-repeat: no-repeat;}
  .style-301 .mass-times-301 {background: url('/images/template/masstimes.jpg') 0% no-repeat; background-size: cover; background-position: center;}
  .style-303 .mass-times-303 {background: url('/images/template/masstimes.jpg') 0% no-repeat; background-size: cover; background-position: center;}
  .style-304 .mass-times-304 {background: url('/images/template/masstimes.jpg') 0% no-repeat; background-size: cover; background-position: center;}
  .style-305 .mass-times-305 {background: url('/images/template/masstimes.jpg') 0% no-repeat; background-size: cover; background-position: center;}
  .style-1001 :is(#g-navigation, #g-slideshow, #g-header, #g-above, #g-feature, #g-showcase, #g-utility, #g-container-main, #g-expanded, #g-extension, #g-bottom, #g-footer, #g-copyright):has([class*="-1001"]) {background: url('/images/template/parallax1.jpg') 50% 50% no-repeat;}
  .mockup-ads.particle-template .g-block:has(div.adside) .adside {background-image: url("/images/template/side-ads.png");}
  .mockup-ads.particle-template .adhorizontal {background-image: url("/images/template/horizontal-ads.png");}
}

@media (max-width: 50.99rem) {
   .mockup-ads.particle-template .g-block:has(div.adside) .adside {background-image: url("/images/template/side-ads.png");}
   .mockup-ads.particle-template .adhorizontal {background-image: url("/images/template/horizontal-ads-mobile.png");}
}

@media only screen and (min-width: 50.99rem) {
    .ql-fa-vertical-toplinks {
        --ql-icon-size-desktop: 2.25vw;
        --ql-icon-color: var(--default-white);
        --ql-icon-hover: var(--primary-color);

        --ql-title-font-size-desktop: 1.25vw;
        --ql-font-family: var(--title-font-family);
        --ql-title-hover: var(--primary-color);
    }

    .ql-fa-vertical-toplinks {
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }
    .ql-fa-vertical-toplinks > .g-content {
        margin: 0;
        padding: 0;
    }
    .ql-fa-vertical-toplinks > .g-content > div {
        margin: 0;
        padding: 0;
    }
    .ql-fa-vertical-toplinks .g-blockcontent {
        margin: 0;
        padding: 0;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start!important;
        gap: 1vw;
    }
    /*
    dbdbdb rgb(219,219,219)(LEFT)to adadad rgb(173,173,173)(RIGHT)
    */
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-block {
        margin: 0;
        padding: .75vw 1.5vw;
        flex: 1;
        overflow: hidden;
        width: unset;
        transition: .3s all ease-in-out;
        border-radius: 1rem;
        background: linear-gradient(to right, rgba(219,219,219,.5), rgba(173,173,173,.5));
        box-shadow: 0px 0px 7px rgba(0,0,0,.5);
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-block:hover {
        background: linear-gradient(to right, rgba(219,219,219,1), rgba(173,173,173,1));
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-title-icon {
        color: var(--ql-icon-hover);
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-title-text {
        color: var(--ql-title-hover);
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        position: relative;
        align-items: center;
        justify-content: center;
        width: 100%;
        gap: 1vw;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-title-icon {
        margin: 0;
        padding: 0;
        color: var(--ql-icon-color);
        font-size: var(--ql-icon-size-desktop);
        flex: 25;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: .2s all ease-in-out;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-title {
        margin: 0;
        padding: 0;
        flex: 75;
        line-height: 1.25vw;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        color: var(--ql-title-color);
        font-family: var(--ql-font-family);
        font-weight: var(--ql-title-weight);
        font-size: var(--ql-title-font-size-desktop);
        text-transform: var(--ql-text-transform);
        letter-spacing: var(--ql-letter-spacing);
        line-height: 1.25vw;
        transition: .2s all ease-in-out;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

@media only screen and (max-width: 50.99rem) {
    .ql-fa-vertical-toplinks {
        --ql-icon-size-desktop: 3vw;
        --ql-icon-size-mobile: 3rem;
        --ql-icon-color: var(--default-white);

        --ql-title-font-size-desktop: 1.25vw;
        --ql-title-font-size-mobile: 1.5rem;
        --ql-font-family: var(--title-font-family);
    }

    .ql-fa-vertical-toplinks {
        margin: 0;
        padding: 1rem 1rem 1rem 1rem;
    }
    .ql-fa-vertical-toplinks > .g-content {
        margin: 0;
        padding: 0;
    }
    .ql-fa-vertical-toplinks > .g-content > div {
        margin: 0;
        padding: 0;
    }
    .ql-fa-vertical-toplinks .g-blockcontent {
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start!important;
        gap: 1vw;
        width: fit-content!important;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-block {
        margin: 0;
        padding: .5rem 1rem;
        flex: 1;
        border-radius: var(--ql-border-radius);
        overflow: hidden;
        width: 100%;
        transition: .3s all ease-in-out;
        border-radius: .5rem;
        background: linear-gradient(to right, rgba(219,219,219,.5), rgba(173,173,173,.5));
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-block:hover {
        background: linear-gradient(to right, rgba(219,219,219,1), rgba(173,173,173,1));
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-title-icon {
        color: var(--ql-icon-hover);
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-title-text {
        color: var(--ql-title-hover);
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        position: relative;
        align-items: center;
        justify-content: center;
        width: 100%;
        gap: 1vw;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-title-icon {
        margin: 0;
        padding: 0;
        color: var(--ql-icon-color);
        font-size: var(--ql-icon-size-mobile);
        flex: 20;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: .3s all ease-in-out;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-title {
        margin: 0;
        padding: 0;
        flex: 80;
        /*padding-right: 33%;*/
        line-height: 1.5rem;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        color: var(--ql-title-color);
        font-family: var(--ql-font-family);
        font-weight: var(--ql-title-weight);
        font-size: var(--ql-title-font-size-mobile);
        text-transform: var(--ql-text-transform);
        letter-spacing: var(--ql-letter-spacing);
        line-height: 1.5rem;
        transition: .3s all ease-in-out;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .ql-fa-vertical-toplinks .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

@media only screen and (min-width: 50.99rem) {
    .rok-mini-verticle {
        padding: 0;
    }
    .rok-mini-verticle .rokminievents3 {
        justify-content: flex-start;
    }
    .rok-mini-verticle .rme-badge {
        border-radius: 1rem;
        overflow: hidden;
        flex: 20;
    }
    .rok-mini-verticle .rme-description {
        flex: 80;
    }
    .rok-mini-verticle .rme-day {
        padding: 1vw 2vw 0 2vw;
    }
    .rok-mini-verticle .rme-month {
        padding: 0vw 2vw 1vw 2vw;
    }
    .rok-mini-verticle .rme-items li {
        overflow: visible;
        width: 100%;
        max-width: unset;
    }
    .rok-mini-verticle .rme-items {
        overflow: visible;
        gap: 2rem;
        width: 100%;
        max-width: unset;
    }
}

@media only screen and (max-width: 50.99rem) {
    .rok-mini-verticle .g-title {
        color: var(--default-black);
        font-size: 2rem;
    }
    .rok-mini-verticle .rme-badge {
        border-radius: .5rem;
    }
}