@import url('//fonts.googleapis.com/css2?family=Cinzel:wght@400..900&family=Nunito+Sans:ital,opsz,wght@0,6..12,200..1000;1,6..12,200..1000&display=swap');
/************ TEMPLATE  ************
Church Approved Mockup #2
School - Make school match the church

REVISIONS
- They're not sure about St. Bridget Mass Times. They said they change times a lot.

School Notes
- Place School Mission next to the Rotator
- Make the Header the light Blue and the background the dark blue
- School logo in Dropbox
- Mockups of school sections in Dropbox for reference (just for the look and image placement)

COLORS (inverted for the school)
Primary: Light Blue 2C5A91 rgb(44,90,145)
Secondary: Dark LBlue 1D2F56 rgb(29,47,86)
Tertiary: Gold F4D484 rgb(244,212,132)

FONTS USED (Google)
Display: Cinzel
Body: Nunito Sans

IMAGES (Opacity | Blur Radius)
- Headers: 86% Opacity
- Statue images: 90% Opacity.
************/

.site-1 {
    --primary-color: #2C5A91;
    --secondary-color: #1D2F56;
    --tertiary-color: #F4D484;

    --primary-rgb: 44,90,145;
    --secondary-rgb: 29,47,86;
    --tertiary-rgb: 244,212,132;

    --default-white: #ffffff;
    --default-black: #000000;

    --title-font-family: 'Cinzel', serif;
    --body-font-family: 'Nunito Sans', sans-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);

    --hero-title-left-position: 5%;

    --mt-fixed-height-desktop: 38vw;
}

.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):not(.sponsorshippage) section:not(#g-navigation, #g-container-footer, #g-copyright, #g-bottom) .g-content:not(.g-blockcontent-subcontent-block-content, .g-content-array > .g-grid > .g-block > .g-content) {
    margin: 0.625rem !important;
    padding: 1.5rem !important;
}

:is(.site-1-sub, .site-2-sub, .site-3-sub) section:not(#g-navigation, #g-container-footer, #g-copyright) #grid-addpic .g-content {
    padding: 0 !important;
    margin: 0 !important;
}

: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(--default-white);
    }
    .site-1 #g-offcanvas .g-social-items a:hover {
        color: var(--tertiary-color);
    }
}

@media only screen and (max-width: 50.99rem) {
  .grid-mobile-stacked .g-item-title {
    --grid-title-font-size: 4vw;
  }
}

/*************** TOP **********************/ 
/*************** NAVIGATION ***************/
@media only screen and (min-width: 50.99rem) {
  .site-1 #g-navigation {
    background: url('/images/template/header.png') 100% 10% no-repeat, var(--secondary-color);
    background-size: 30%;
    border-bottom: .25rem solid var(--tertiary-color);
    position: relative;
    z-index: 100;
    box-shadow: var(--default-box-shadow);
  }
  .site-1 #g-navigation > .g-container {
    background: rgba(var(--secondary-rgb),.86);
  }
  .site-1 #g-navigation > .g-container > .g-grid:has(.ql-fa-toplinks) {
    padding: 2vw 3%!important;
  }
  .site-1 #g-navigation .g-logo img {
    width: 100%;
  }
  .site-1 #g-navigation .g-main-nav {
    background: linear-gradient(to top, #b2b2b2, #ffffff);
  }
}

@media only screen and (max-width: 50.99rem) {
    .site-1 #g-navigation {
      background: url('/images/template/header.png') 100% 10% no-repeat, var(--secondary-color);
      background-size: contain;
      border-bottom: .25rem solid var(--tertiary-color);
      position: relative;
      z-index: 100;
      box-shadow: var(--default-box-shadow);
    }
    .site-1 #g-navigation > .g-container {
      background: rgba(var(--secondary-rgb),.86);
    }
  }

@media only screen and (min-width: 50.99rem) {
  .site-1 #g-navigation .ql-fa-toplinks {
      --ql-title-color: var(--default-white);
      --ql-icon-color: var(--default-white);
      --ql-background-hover: rgba(var(--tertiary-rgb),.5);
      --ql-icon-hover: var(--tertiary-color);
      --ql-title-hover: var(--tertiary-color);
  }
  .site-1 #g-navigation .ql-fa-toplinks .g-blockcontent-subcontent-block {
      border-radius: 1rem;
      background: rgba(255,255,255,.3);
      border: 2px solid var(--default-white);
  }
  .site-1 #g-navigation .ql-fa-toplinks .g-blockcontent-subcontent-block-content {
      gap: 1vw;
  }
  .site-1 #g-navigation .ql-fa-toplinks .g-blockcontent-subcontent-title-icon {
      font-size: 3.5vw;
      margin: 0;
      padding: 0;
      line-height: 1;
  }
  .site-1 #g-navigation .ql-fa-toplinks .g-blockcontent-subcontent-title-text {
      font-size: 1.5vw;
      font-family: var(--title-font-family);
      font-weight: 500;
  }
}

@media only screen and (max-width: 50.99rem) {
  .site-1 #g-navigation .ql-fa-toplinks .g-blockcontent-subcontent {
      justify-content: center;
      gap: 3rem; 
  }
  .site-1 #g-navigation .ql-fa-toplinks .g-blockcontent-subcontent-block {
      flex: unset;
  }
  .site-1 #g-navigation .ql-fa-toplinks .g-blockcontent-subcontent-block-content > .g-blockcontent-subcontent-title {
      display: flex;
      justify-content: center;
      align-items: center;
  }
  .site-1 #g-navigation .ql-fa-toplinks .g-blockcontent-subcontent-title-text {
      color: var(--default-white);
  }
}

@media only screen and (min-width: 50.99rem) {
  #g-navigation .g-main-nav .g-toplevel>li>.g-menu-item-container {
    padding: 1vw .5vw;
  }
    .g-main-nav .g-toplevel>li>.g-menu-item-container>.g-menu-item-content {
        font-size: 1.25vw;
        font-family: var(--title-font-family);
        font-weight: 700;
    }
    .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(--title-font-family);
        font-weight: 700;
    }

    .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(--secondary-color);
        font-size: 1.75vw;
    }
    .site-1 #g-navigation .g-social-items a:hover {
        color: var(--secondary-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 3%!important;
  }
  .site-1-home #g-slideshow > .g-container > .g-grid {
    display: flex;
    flex-direction: row;
    gap: 3vw;
  }
  .site-1-home #g-slideshow .fullwidth-swiper {
    flex: 70;
    width: unset;
    position: relative;
  }
  .site-1-home #g-slideshow .fullwidth-swiper:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    background: var(--default-white);
    border-radius: 1rem;
    overflow: hidden;
    transform: translate(1vw, 1vw);
    z-index: 1;
  }
  .site-1-home #g-slideshow .fullwidth-swiper > .g-content {
    overflow: hidden;
    box-shadow: var(--default-box-shadow);
    border-radius: 1rem;
    position: relative;
    z-index: 2;
  }
  .site-1-home #g-slideshow .mass-times-block {
    flex: 30;
    width: unset;
  }

  .site-1-home .mass-times-block > .g-content {
    background: transparent;
    height: 100%;
  }
  .site-1-home .mt-content-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1vw;
    height: 100%;
  }
  .site-1-home .mt-buttons {
    display: flex;
    flex-direction: column;
    gap: 1vw;
  }
  .site-1-home .mt-buttons .button {
    border: 2px solid var(--default-white);
    border-radius: .5rem;
    background: transparent;
    color: var(--default-white);
    line-height: 1;
    font-family: var(--title-font-family);
    text-transform: none;
    font-variant-caps: small-caps;
    font-weight: 700;
    font-size: 1.5vw;
    padding: .75vw;
    width: 100%;
    text-align: center;
    letter-spacing: 1px;
  }
  .site-1-home #g-slideshow .mt-buttons .button:hover {
    background: var(--tertiary-color);
    color: var(--secondary-color)!important;
  }
  .site-1-home .mass-times-block .g-content-array {
      height: 100%;
  }
  .site-1-home .mass-times-block .g-content-array > .g-grid {
      height: 100%;
  }
  .site-1-home .mass-times-block .g-content-array > .g-grid > .g-block {
      height: 100%;
  }
  .site-1-home .mass-times-block .g-content-array > .g-grid > .g-block > .g-content {
      height: 100%;
  }
  .site-1-home .mass-times-block .g-array-item {
      height: 100%;
      padding: 0;
  }
  .site-1-home .mass-times-block .g-array-item-text {
      height: 100%;
  }
  .site-1-home .mass-times-block :is(h1,h2,h3,h4,h5,h6) {
    font-size: 2vw;
    font-family: var(--body-font-family);
    margin: 0;
    padding: 0;
    line-height: 1;
    font-weight: 400;
    text-transform: none;
    font-variant-caps: normal;
    color: var(--default-white);
    margin-bottom: .5vw;
  }
  .site-1-home .mass-times-block :is(h1,h2,h3,h4,h5,h6).mt-big-title {
    font-size: 4vw;
    color: var(--tertiary-color);
    font-family: var(--title-font-family);
    font-weight: 700;
    text-transform: none;
    font-variant-caps: small-caps;
    margin-bottom: 1vw;
  }
  .site-1-home .mass-times-block p {
    font-size: 1.25vw;
    font-family: var(--body-font-family);
    color: var(--default-white);
    line-height: 1.5;
    margin: 0;
    padding: 0;
    margin-bottom: 1vw;
    font-weight: 500;
  }
  .site-1-home .mt-border-bottom {
    border-bottom: 2px solid var(--default-white);
    padding-bottom: 2vw!important;
  }
}

@media only screen and (max-width: 50.99rem) {
    .site-1-home .mass-times-block :is(h1,h2,h3,h4,h5,h6) {
        font-size: 6vw;
        font-family: var(--body-font-family);
        margin: 0;
        padding: 0;
        line-height: 1;
        font-weight: 400;
        text-transform: none;
        font-variant-caps: normal;
        color: var(--default-white);
        margin-bottom: .5rem;
    }
    .site-1-home .mass-times-block :is(h1,h2,h3,h4,h5,h6).mt-big-title {
        font-size: 8vw;
        color: var(--tertiary-color);
        font-family: var(--title-font-family);
        font-weight: 700;
        text-transform: none;
        font-variant-caps: small-caps;
        margin-bottom: 1rem;
    }
    .site-1-home .mass-times-block p {
        font-size: 4vw;
        font-family: var(--body-font-family);
        color: var(--default-white);
        line-height: 1.5;
        margin: 0;
        padding: 0;
        margin-bottom: 1rem;
        font-weight: 500;
    }
    .site-1-home .mt-border-bottom {
        border-bottom: 2px solid var(--default-white);
        padding-bottom: 1rem!important;
    }
    .site-1-home .mt-buttons {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .site-1-home .mt-buttons .button {
        border: 2px solid var(--default-white);
        border-radius: .5rem;
        background: transparent;
        color: var(--default-white);
        line-height: 1;
        font-family: var(--title-font-family);
        text-transform: none;
        font-variant-caps: small-caps;
        font-weight: 700;
        font-size: 4vw;
        padding: .75rem;
        width: 100%;
        text-align: center;
        letter-spacing: 1px;
    }
    .site-1-home #g-slideshow .mt-buttons .button:hover {
        background: var(--tertiary-color);
        color: var(--secondary-color)!important;
    }
}

/*************** HEADER *******************/
/*************** ABOVE ********************/
/*************** SHOWCASE *****************/
/*************** UTILITY ******************/
@media only screen and (min-width: 50.99rem) {
  .site-1-home #g-utility > .g-container {
      padding: 1vw 3% 2vw 3%!important;
  }
  .site-1-home #g-utility > .g-container > .g-grid {
    background: var(--secondary-color);
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: var(--default-box-shadow);
    padding: 1.5vw 1.5vw 3vw 1.5vw;
  }
}

.ql-window-title {
  --ql-border-radius: 1rem;
}

@media only screen and (min-width: 50.99rem) {
  .ql-window-title {
      margin: 0;
      padding: 0;
  }
  .ql-window-title > .g-content {
      margin: 0;
      padding: 0;
  }
  .ql-window-title > .g-content > div {
      margin: 0;
      padding: 0;
  }
  .ql-window-title .g-blockcontent {
      margin: 0;
      padding: 0;
  }
  .ql-window-title .g-blockcontent-subcontent {
      margin: 0;
      padding: 0;
      display: flex;
      flex-direction: row;
      gap: 2vw;
  }
  .ql-window-title .g-blockcontent-sbucontent-block {
      margin: 0;
      padding: 0;
  }
  .ql-window-title .g-blockcontent-subcontent-block-content {
      margin: 0;
      padding: 0;
      position: relative;
      padding: 1vw!important;
      display: flex;
      justify-content: center;
      align-items: center;
      border-radius: var(--ql-border-radius);
      box-shadow: var(--default-box-shadow);
      transition: .2s all ease-in-out;
  }
  .ql-window-title .g-blockcontent-subcontent-block-content:before {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      height: 100%;
      width: 100%;
      /*aspect-ratio: 4 / 3;*/
      background: var(--default-white);
      border-radius: var(--ql-border-radius);
      z-index: 1;
  }
  .ql-window-title .g-blockcontent-subcontent-block-content:after {
      content: "";
      position: absolute;
      top: 1vw;
      bottom: 1vw;
      left: 1vw;
      right: 1vw;
      height: auto;
      width: calc(100% - 2vw);
      /*border: 1vw solid var(--tertiary-color);*/
      aspect-ratio: 16 / 9;
      border-radius: var(--ql-border-radius);
      box-shadow: inset var(--default-box-shadow);
      border-collapse: separate;
      z-index: 3;
  }
  .ql-window-title .g-blockcontent-subcontent-img {
      margin: 0;
      padding: 0;
      border-radius: var(--ql-border-radius);
      aspect-ratio: 16 / 9;
      width: 100%;
      height: auto;
      object-position: center;
      object-fit: cover;
      position: relative;
      z-index: 2;
      box-shadow: inset var(--default-box-shadow);
      transition: .2s all ease-in-out;
  }
  .ql-window-title .g-blockcontent-subcontent-block-content:hover {
      transform: scale(1.10);
      box-shadow: var(--default-box-shadow-hover);
  }
  .ql-window-title .g-blockcontent-subcontent-subtitle {
      position: absolute;
      top: 100%;
      transform: translateY(150%);
      margin: 0;
      padding: 0;
      background: none;
      color: var(--secondary-color);
      opacity: .5;
      font-size: 1.25vw;
      line-height: 1;
  }
  .ql-window-title .g-blockcontent-subcontent-title {
      margin: 0;
      padding: 0;
      position: absolute;
      bottom: -1vw;
      left: .75vw;
      right: .75vw;
      width: calc(100% - 1.5vw);
      height: 3.5vw;
      max-height: 3vw;
      background: var(--tertiary-color);
      z-index: 4;
      border-radius: .5vw;
      box-shadow: var(--default-box-shadow);
      padding: .5vw;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 1.25vw; 
      line-height: 1;
  }
  .ql-window-title .g-blockcontent-subcontent-title-text {
      margin: 0;
      padding: 0;
      font-size: 1.25vw;
      line-height: 1;
      text-align: center;
      color: var(--secondary-color);
      font-family: var(--title-font-family);
      text-transform: uppercase;
      letter-spacing: 2px;
      font-weight: 700;
  }
  .ql-window-title .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-window-title .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) {
  .site-1-home #g-utility .ql-dm {
      --ql-background-color: rgba(255,255,255,.6);
      --ql-background-hover: rgba(255,255,255,.8);
      --ql-title-color: var(--primary-color);
  }
  .site-1-home .ql-dm .g-blockcontent-subcontent-title {
      backdrop-filter: blur(2px);
      --webkit-backdrop-filter: blur(2px);
  }

  .ql-window-title .g-blockcontent-subcontent-subtitle {
      position: absolute;
      bottom: 0;
      margin: 0;
      padding: .5rem .5rem 1rem .5rem;
      background: none;
      color: var(--primary-color);
      opacity: .5;
      font-size: 4vw;
      line-height: 1;
      z-index: 1;
      width: 100%;
      text-align: center;
  }

  .ql-dm .g-blockcontent-buttons {
      z-index: 5;
  }
}

/*************** FEATURE ******************/
/*************** MAIN *********************/
@media only screen and (min-width: 50.99rem) {
  .site-1-home #g-container-main > .g-container {
    padding: 1vw 3%!important;
  }
  .site-1-home #g-container-main:not(:has(#ph-addpic .g-content-array > .g-grid:nth-child(1))) {
    display: none!important;
  }
  .site-1-home #g-mainbar {
    display: flex;
    flex-direction: column;
    gap: 2vw;
  }

  .ph-tvab-wrapper {
    display: flex;
    flex-direction: row;
    gap: 2vw;
    align-items: center;
    justify-content: space-between;
  }
  .ph-tvab-wrapper .ph-tvab-title .g-title {
    color: var(--tertiary-color);
    font-size: 3vw;
    font-family: var(--title-font-family);
    line-height: 1;
    border: none;
    background: none;
    margin: 0;
    padding: 0;
    text-transform: none;
    font-variant-caps: small-caps;
    font-weight: 700;
  }
  .ph-tvab-wrapper .ph-tvab-button .button {
    background: transparent;
    border: 2px solid var(--default-white);
    border-radius: .25rem;
    line-height: 1;
    color: var(--default-white);
    font-family: var(--title-font-family);
    font-weight: 400;
    font-size: 1.5vw;
    padding: .75vw 2.5vw;
  }
  .ph-tvab-wrapper .ph-tvab-button .button:hover {
    background: var(--secondary-color);
  }
}

@media only screen and (max-width: 50.99rem) {
    .site-1-home #g-container-main > .g-container {
      padding: 2rem 0!important;
    }
    .site-1-home #g-container-main:not(:has(#ph-addpic .g-content-array > .g-grid:nth-child(1))) {
      display: none!important;
    }
    .site-1-home #g-mainbar {
      display: flex;
      flex-direction: column;
      gap: 1rem;
    }
  
    .ph-tvab-wrapper {
      display: flex;
      flex-direction: row;
      gap: 1rem;
      align-items: center;
      justify-content: space-between;
    }
    .ph-tvab-wrapper .ph-tvab-title .g-title {
      color: var(--tertiary-color);
      font-size: 8vw;
      font-family: var(--title-font-family);
      line-height: 1;
      border: none;
      background: none;
      margin: 0;
      padding: 0;
      text-transform: none;
      font-variant-caps: small-caps;
      font-weight: 700;
    }
    .ph-tvab-wrapper .ph-tvab-button .button {
      background: transparent;
      border: 2px solid var(--default-white);
      border-radius: .25rem;
      line-height: 1;
      color: var(--default-white);
      font-family: var(--title-font-family);
      font-weight: 400;
      font-size: 5vw;
      padding: 1rem;
    }
    .ph-tvab-wrapper .ph-tvab-button .button:hover {
      background: var(--secondary-color);
    }
  }

@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 {
    padding: 1.5vw 3% 4vw 3%!important;
  }
  .site-1-home #g-expanded > .g-container {
    background: url('/images/template/bg-widgets-mary.png') 115% 0% no-repeat;
    background-size: 40%;
    border-radius: 1.5rem;
    overflow: hidden;
    box-shadow: var(--default-box-shadow);
  }
  .site-1-home #g-expanded > .g-container > .g-grid {
    background: rgba(var(--secondary-rgb),.9);
    padding: 4vw;
    display: flex;
    flex-direction: row;
    gap: 4vw;
  }
  .site-1-home #g-expanded > .g-container > .g-grid > .facebook-container {
    flex: 1;
    width: unset;
    max-width: unset;
  }
  .site-1-home #g-expanded > .g-container > .g-grid > .calendar-container {
    flex: 1;
    width: unset;
    max-width: unset;
  }
  .site-1-home #g-expanded > .g-container > .g-grid > .g-block:has(.admod) {
    flex: unset;
    max-width: 165px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

@media only screen and (max-width: 50.99rem) {
    .site-1-home #g-expanded {
      padding: 1rem!important;
    }
    .site-1-home #g-expanded > .g-container {
      background: url('/images/template/bg-widgets-mary.png') 115% 0% no-repeat;
      background-size: 40%;
      border-radius: 1.5rem;
      overflow: hidden;
      box-shadow: var(--default-box-shadow);
    }
    .site-1-home #g-expanded > .g-container > .g-grid {
      background: rgba(var(--secondary-rgb),.9);
      padding: 2rem;
      display: flex;
      flex-direction: column;
      gap: 2rem;
    }
    .site-1-home #g-expanded > .g-container > .g-grid > .facebook-container {
      flex: 1;
      width: unset;
      max-width: unset;
    }
    .site-1-home #g-expanded > .g-container > .g-grid > .calendar-container {
      flex: 1;
      width: unset;
      max-width: unset;
    }
    .site-1-home #g-expanded > .g-container > .g-grid > .g-block:has(.admod) {
      flex: 1;
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
    }
  }

@media only screen and (min-width: 50.99rem) {
  .widgets-column {
    display: flex;
    flex-direction: column;
    gap: 2vw;
    flex: auto 1 auto;
  }
  .widgets-column .widgets-title .g-title {
    color: var(--tertiary-color);
    font-size: 3vw;
    line-height: 1;
    font-family: var(--title-font-family);
    font-weight: 700;
    text-transform: none;
    letter-spacing: 1px;
    margin: 0;
    padding: 0;
    font-variant-caps: small-caps;
    border: none;
    background: none;
  }
  .widgets-column .widgets-feed {
    border-radius: 1.25rem;
    overflow: hidden;
    box-shadow: var(--default-box-shadow);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    flex: 1;
  }
  .facebook-container .widgets-feed > .eapps-widget {
    width: 100%;
    height: 100%;
  }
  .calendar-container .widgets-feed iframe {
    height: 56vw;
    margin: 0;
    padding: 0;
  }
  .widgets-column .widgets-button {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .widgets-column .widgets-button .button {
    width: 90%;
    background: var(--tertiary-color);
    color: var(--secondary-color);
    font-size: 1.5vw;
    line-height: 1;
    margin: 0;
    padding: 1vw;
    text-align: center;
    font-family: var(--title-font-family);
    font-weight: 700;
    border-radius: .25rem;
    box-shadow: var(--default-box-shadow);
    text-transform: none;
    font-variant-caps: small-caps;
  }
  .widgets-column .widgets-button .button:hover {
    transform: scale(1.05);
  }

  .facebook-container > .g-content {
    height: 100%;
  }
  .facebook-container .g-content-array {
    height: 100%;
  }
  .facebook-container .g-content-array > .g-grid {
    height: 100%;
  }
  .facebook-container .g-content-array > .g-grid > .g-block {
    height: 100%;
  }
  .facebook-container .g-content-array > .g-grid > .g-block > .g-content {
    height: 100%;
  }
  .facebook-container .g-array-item {
    height: 100%;
  }
  .facebook-container .g-array-item-text {
    height: 100%;
  }
  .facebook-container .widgets-column {
    height: 100%;
  }

  .facebook-container .eapps-widget > .eapps-widget {
    height: 100%;
  }
  .facebook-container .eapps-widget > .eapps-widget > .eapps-facebook-feed-container {
      height: 100%;
  }
  .facebook-container .eapps-widget > .eapps-widget > .eapps-facebook-feed-container > .eapps-facebook-feed-inner {
      height: 100%;
      display: flex;
      flex-direction: column;
  }
  .facebook-container .eapps-widget > .eapps-widget > .eapps-facebook-feed-container > .eapps-facebook-feed-inner > .eapps-facebook-feed-content-container {
      /*height: unset!important;*/
      flex: 1 1 auto;
  }
}

@media only screen and (max-width: 50.99rem) {
    .widgets-column {
      display: flex;
      flex-direction: column;
      gap: 1rem;
      flex: auto 1 auto;
    }
    .widgets-column .widgets-title .g-title {
      color: var(--tertiary-color);
      font-size: 10vw;
      line-height: 1;
      font-family: var(--title-font-family);
      font-weight: 700;
      text-transform: none;
      letter-spacing: 1px;
      margin: 0;
      padding: 0;
      font-variant-caps: small-caps;
      border: none;
      background: none;
    }
    .widgets-column .widgets-feed {
      border-radius: 1.25rem;
      overflow: hidden;
      box-shadow: var(--default-box-shadow);
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      flex: 1;
    }
    .facebook-container .widgets-feed > .eapps-widget {
      width: 100%;
      height: 100%;
    }
    .calendar-container .widgets-feed iframe {
      height: 100vw;
      margin: 0;
      padding: 0;
    }
    .widgets-column .widgets-button {
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .widgets-column .widgets-button .button {
      width: 90%;
      background: var(--tertiary-color);
      color: var(--secondary-color);
      font-size: 4vw;
      line-height: 1;
      margin: 0;
      padding: 1rem;
      text-align: center;
      font-family: var(--title-font-family);
      font-weight: 700;
      border-radius: .25rem;
      box-shadow: var(--default-box-shadow);
      text-transform: none;
      font-variant-caps: small-caps;
    }
    .widgets-column .widgets-button .button:hover {
      transform: scale(1.05);
    }
  
    .facebook-container > .g-content {
      height: 100%;
    }
    .facebook-container .g-content-array {
      height: 100%;
    }
    .facebook-container .g-content-array > .g-grid {
      height: 100%;
    }
    .facebook-container .g-content-array > .g-grid > .g-block {
      height: 100%;
    }
    .facebook-container .g-content-array > .g-grid > .g-block > .g-content {
      height: 100%;
    }
    .facebook-container .g-array-item {
      height: 100%;
    }
    .facebook-container .g-array-item-text {
      height: 100%;
    }
    .facebook-container .widgets-column {
      height: 100%;
    }
  
    .facebook-container .eapps-widget > .eapps-widget {
      height: 100%;
    }
    .facebook-container .eapps-widget > .eapps-widget > .eapps-facebook-feed-container {
        height: 100%;
    }
    .facebook-container .eapps-widget > .eapps-widget > .eapps-facebook-feed-container > .eapps-facebook-feed-inner {
        height: 100%;
        display: flex;
        flex-direction: column;
    }
    .facebook-container .eapps-widget > .eapps-widget > .eapps-facebook-feed-container > .eapps-facebook-feed-inner > .eapps-facebook-feed-content-container {
        /*height: unset!important;*/
        flex: 1 1 auto;
    }
  }

/*************** 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 {
    padding: 0 5% 3vw 5%!important;
  }
}

@media only screen and (max-width: 50.99rem) {
    .site-1 #g-footer > .g-container {
      padding: 2rem!important;
    }
  }

@media only screen and (min-width: 50.99rem) {
  .footer-wrapper {
    display: flex;
    flex-direction: row;
    gap: 2vw;
  }
  .footer-wrapper .footer-column {
    flex: 1;
  }
  .footer-wrapper .footer-hr {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .footer-wrapper .footer-stb {
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
  .footer-wrapper .footer-ql {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
  }

  .footer-wrapper h1 {
    color: var(--tertiary-color);
    font-family: var(--title-font-family);
    line-height: 1;
    font-size: 3.25vw;
    font-weight: 400;
  }
  .footer-wrapper p {
    font-size: 1.25vw;
    line-height: 1.8;
    font-weight: 500;
  }
}

@media only screen and (max-width: 50.99rem) {
    .footer-wrapper {
      display: flex;
      flex-direction: column;
      gap: 1rem;
    }
    .footer-wrapper .footer-column {
      flex: 1;
    }
    .footer-wrapper .footer-hr {
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
    }
    .footer-wrapper .footer-stb {
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
    }
    .footer-wrapper .footer-ql {
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
    }
  
    .footer-wrapper h1 {
      color: var(--tertiary-color);
      font-family: var(--title-font-family);
      line-height: 1;
      font-size: 10vw;
      font-weight: 400;
    }
    .footer-wrapper p {
      font-size: 4vw;
      line-height: 1.8;
      font-weight: 500;
    }
  }

/*************** 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 (min-width: 50.99rem) {
  .footer-important-links .g-blockcontent {
      margin: 0;
      padding: 0;
  }
  .footer-important-links .g-blockcontent-subcontent {
      margin: 0;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: .75vw;
  }
  .footer-important-links .g-blockcontent-subcontent-block {
      margin: 0;
      padding: 0;
      position: relative;
      transition: .3s all ease-in-out;
  }
  .footer-important-links .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-title-text {
      opacity: .5;
  }
  .footer-important-links .g-blockcontent-subcontent-block-content {
      margin: 0;
      padding: 0;
      transition: .3s all ease-in-out;
  }
  .footer-important-links .g-blockcontent-subcontent-title {
      margin: 0;
      padding: 0;
      color: var(--default-white);
      font-size: 1.5vw;
      text-decoration: underline;
      line-height: 1;
      font-weight: 400;
      display: flex;
      letter-spacing: 2px;
      transition: .3s all ease-in-out;
  }
  .footer-important-links .g-blockcontent-subcontent-title-text {
      margin: 0;
      padding: 0;
      color: var(--default-white);
      font-size: 1.35vw;
      text-decoration: underline;
      line-height: 1;
      font-weight: 400;
      letter-spacing: 2px;
      transition: .3s all ease-in-out;
  }
  .footer-important-links .g-blockcontent-buttons {
      margin: 0;
      padding: 0;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      height: 100%;
      width: 100%;
      opacity: 0;
  }
  .footer-important-links .g-blockcontent-buttons a {
      margin: 0;
      padding: 0;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      height: 100%;
      width: 100%;
      opacity: 0;
  }
}

@media only screen and (max-width: 50.99rem) {
  .footer-important-links .g-blockcontent {
      margin: 0;
      padding: 0;
  }
  .footer-important-links .g-blockcontent-subcontent {
      margin: 0;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: .5rem;
      justify-content: center;
      align-items: center;
  }
  .footer-important-links .g-blockcontent-subcontent-block {
      margin: 0;
      padding: 0;
      position: relative;
      transition: .3s all ease-in-out;
  }
  .footer-important-links .g-blockcontent-subcontent-block:hover .g-blockcontent-subcontent-title-text {
      opacity: .5;
  }
  .footer-important-links .g-blockcontent-subcontent-block-content {
      margin: 0;
      padding: 0;
      transition: .3s all ease-in-out;
  }
  .footer-important-links .g-blockcontent-subcontent-title {
      margin: 0;
      padding: 0;
      color: var(--default-white);
      font-size: 4vw;
      text-decoration: underline;
      line-height: 1;
      font-weight: 400;
      display: flex;
      letter-spacing: 2px;
      transition: .3s all ease-in-out;
  }
  .footer-important-links .g-blockcontent-subcontent-title-text {
      margin: 0;
      padding: 0;
      color: var(--default-white);
      font-size: 4vw;
      text-decoration: underline;
      line-height: 1;
      font-weight: 400;
      letter-spacing: 2px;
      transition: .3s all ease-in-out;
  }
  .footer-important-links .g-blockcontent-buttons {
      margin: 0;
      padding: 0;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      height: 100%;
      width: 100%;
      opacity: 0;
  }
  .footer-important-links .g-blockcontent-buttons a {
      margin: 0;
      padding: 0;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      height: 100%;
      width: 100%;
      opacity: 0;
  }
}

@media only screen and (max-width: 50.99rem) {
    .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;
    }
}

@media only screen and (min-width: 50.99rem) {
    .bulletin-page #g-mainbar > .g-grid:nth-child(1) {
        display: none!important;
    }
    .bulletin-page .docman_category {
        display: none!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .bulletin-page #g-mainbar > .g-grid:nth-child(1) {
        display: none!important;
    }
    .bulletin-page .docman_category {
        display: none!important;
    }
}

/* Image Paths for Particle Template */
/* All images used in the particle template need to be updated here */

.style-1303 #g-footer:has([class*="-1303"]) {background-image: url('/images/template/parallax1.jpg'); background-size: cover; background-position: center; background-repeat: no-repeat;}

@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) {
    body[class*="-sub"]:not(.sponsorshippage) #g-mainbar.section-padding-5 > .g-grid > .g-block > .g-content {
        margin: 0!important;
        padding: 0!important;
    }
    body[class*="-sub"]:not(.sponsorshippage) #g-mainbar.section-padding-5:has(.page-header) > .g-grid > .g-block > .g-content {
        margin: .625rem 0!important;
        padding: 1.5rem 0!important;
    }
    body[class*="-sub"]:not(.sponsorshippage) #g-container-main:has(#g-mainbar.section-padding-5, #g-aside) {
        margin: 0!important;
        padding: 0 5%!important;
    }
    body[class*="-sub"]:not(.sponsorshippage) #g-container-main:has(#g-mainbar.section-padding-5, #g-aside) #g-mainbar.section-padding-5 {
        margin: 0!important;
        padding: 0!important
    }
    body[class*="-sub"]:not(.sponsorshippage) #g-container-main:has(#g-mainbar.section-padding-5, #g-aside) #g-mainbar.section-padding-5 > .g-grid > .g-block > .g-content {
        margin: 0!important;
        padding: 0 5% 0 0!important;
    }
    body[class*="-sub"]:not(.sponsorshippage) #g-container-main:has(#g-mainbar.section-padding-5, #g-aside) #g-mainbar.section-padding-5:has(.page-header) > .g-grid > .g-block > .g-content {
        margin: .625rem 0!important;
        padding: 1.5rem 5% 1.5rem 0!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    body[class*="-sub"]:not(.sponsorshippage) #g-mainbar.section-padding-5 > .g-grid > .g-block > .g-content {
        margin: 0!important;
        padding: 0!important;
    }
}

/*  */

@media only screen and (min-width: 50.99rem) {
    #g-top-nav {
        display: none!important;
    }
    #g-mobile-fixed-nav {
        display: none!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    #g-top-nav {
        display: none!important;
    }
    #g-mobile-fixed-nav {
        display: none!important;
    }
}

body {background-color: var(--primary-color);}
@media only screen and (max-width: 50.99rem) {
@media (display-mode: standalone) {
    #g-top-nav {
        display: flex!important;
    }
    #g-mobile-fixed-nav {
        display: flex!important;
    }
    #g-top.modern-alert-padding {
        padding: 2rem 5%!important;
    }
    body {background-color: var(--primary-color);}
    #g-offcanvas {height: calc(100% - 120pt); top: 40pt; bottom: 80pt;}
    #g-top {margin-top: 40pt!important;}
    #g-navigation .g-logo {display: none;}
    #g-top-nav .g-particle:has(.g-logo) {width: 100%;}
    #g-top-nav .g-logo {text-align: center; display: flex; align-items: center; justify-content: center; width: 100%; height: 40pt;}
    #g-top-nav .g-logo img {height: 80%; width: auto;}
    #g-page-surround .g-offcanvas-toggle {display: none;}
    #g-page-surround {background: var(--primary-color);}
    #g-top-nav {display: flex; position: fixed; top: 0; left: 0; right: 0; width: 100%; height: 40pt; background: var(--primary-color); z-index: 100; box-shadow: var(--default-box-shadow);}
    .g-offcanvas-toggle {position: fixed!important; z-index: 101; top: 0; left: 10pt; height: 40pt; font-size: 23pt; display: flex; justify-content: center; align-items: center; background: none!important; border-radius: unset; box-shadow: unset;}
    .g-offcanvas-toggle {color: var(--default-white);} 
    .g-offcanvas-toggle .fa-fw {text-shadow: none;}
    #g-container-footer {padding-bottom: 80pt!important;}
    #g-mobile-fixed-nav {display: flex; height: 80pt; background: var(--primary-color); color: var(--default-white); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); z-index: 100; position: fixed; bottom: 0; left: 0; right: 0; width: 100%; box-shadow: var(--default-box-shadow)}
    .mobile-nav-link {color: var(--default-white); display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; height: 60pt;}
    .mobile-nav-link:hover {color: var(--secondary-color);}
    .mobile-fixed-nav {width: 100%; height: 60pt;}

    .mobile-fixed-nav {
        margin: 0;
        padding: 0;
        display: flex;
        width: 100%;
        align-items: center;
        overflow: hidden;
    }
    .mobile-fixed-nav .g-particle {
        margin: 0;
        padding: 0;
        width: 100%;
    }
    .mobile-fixed-nav .g-particle > div {
        margin: 0;
        padding: 0;
    }
    .mobile-fixed-nav .g-blockcontent {
        margin: 0;
        padding: 0;
    }
    .mobile-fixed-nav .g-blockcontent-subcontent {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 1pt;
    }
    .mobile-fixed-nav .g-blockcontent-subcontent-block {
        margin: 0;
        padding: 0;
        flex: 1;
        position: relative;
    }
    .mobile-fixed-nav .g-blockcontent-subcontent-block-content {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .mobile-fixed-nav .g-blockcontent-subcontent-title-icon {
        margin: 0;
        padding: 0;
        order: 1;
        color: var(--default-white);
        font-size: 5vw;
    }
    .mobile-fixed-nav .g-blockcontent-subcontent-title {
        margin: 0;
        padding: 0;
        order: 2;
    }
    .mobile-fixed-nav .g-blockcontent-subcontent-title-text {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        font-size: 4vw;
        font-family: var(--body-font-family);
    }
    .mobile-fixed-nav .g-blockcontent-buttons {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .mobile-fixed-nav .g-blockcontent-buttons a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}
}