@import url('//fonts.googleapis.com/css2?family=Caudex:ital,wght@0,400;0,700;1,400;1,700&family=EB+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=Lato:ital,wght@0,400;0,700;1,400;1,700&display=swap');
/************ TEMPLATE  ************

************/

.site-1 {
    --primary-color: #001940;
    --secondary-color: #d2973b;

    --primary-rgb: 0, 25, 64;
    --secondary-rgb: 210, 151, 59;

    --default-white: #ffffff;
    --default-black: #000000;

    --title-font-family: 'Cinzel Decorative', serif;
    --body-font-family: 'Lora', 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);
    --ql-border-radius: 1.5rem;

    --mt-para-color: var(--default-white);
    --mt-background-color: rgba(var(--primary-rgb),.85); 

    --ph-title-font-size-mobile: 4vw;

    --grid-vertical-gap: 4vw;
}

.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;}

.g-logo {
    display: grid;
    align-items: center;
    justify-content: center;
}

.block-padding-fix .g-block .g-content {
    padding: 0;
}

@media (max-width: 50.99rem) {
    .button {
        width: fit-content;
        line-height: 1.3;
    }

    .site-1 .page-header h2 {
        font-size: 3rem;
    }
}

.site-1 .page-header h2 {
    font-size: 3rem;
}

.h1-title .g-title {
    color: var(--heading-color);
    font-family: var(--heading-font-family);
    font-size: var(--h1-font-size) !important;
    font-weight: var(--h1-font-weight) !important;
    font-variant-caps: var(--h1-font-variant-caps);
    text-transform: var(--h1-text-transform);
    line-height: var(--h1-line-height) !important;
    margin: var(--h1-margin) !important;
    padding: var(--h1-padding);
    border-bottom: var(--none);
    border-radius: var(--null);
    background: var(--h1-background);
}

.h1-title .g-title a {
    color: var(--heading-color);
}

/***********Custom Scrollbar****************/

/* Hide the default scrollbar */
::-webkit-scrollbar {
    width: .75rem;
  }
  
  ::-webkit-scrollbar-track {
    background-color: #f5f5f5;
  }
  
  ::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 5px;
  }
  
  /* Style the scrollbar on hover */
  ::-webkit-scrollbar-thumb:hover {
    background-color: #bbbbbb;
  }
  
  /* Style the scrollbar when it's being dragged */
  ::-webkit-scrollbar-thumb:active {
    background-color: #8c8c8c;
  }
  
  /* For Firefox */
  @-moz-document url-prefix() {
    .scrollbar {
      width: .75rem;
      background-color: #f5f5f5;
    }
  
    .scrollbar-thumb {
      background-color: #ccc;
      border-radius: 5px;
    }
  
    /* Style the scrollbar on hover */
    .scrollbar-thumb:hover {
      background-color: #bbbbbb;
    }
  
    /* Style the scrollbar when it's being dragged */
    .scrollbar-thumb:active {
      background-color: #8c8c8c;
    }
  }

/*************** HOMELAYOUT ***************/ 
/*************** OFFCANVAS ****************/
.g-offcanvas-toggle {color: var(--primary-color);} 
.g-offcanvas-toggle .fa-fw {text-shadow: none;}

/*************** TOP **********************/ 

.hide-title-link .g-item-title a {
    text-decoration: none;
    pointer-events: none;
}

/*************** NAVIGATION ***************/

@media (min-width: 50.99rem) {
    .menu-space-left .g-main-nav {
        padding-left: 15%;
    }

    .show-mobile {
        display: none;
    }
}

.site-1 .g-main-nav .g-toplevel {
    position: relative;
    z-index: 102;
}

.site-1 :is(#g-offcanvas, .g-main-nav) .g-social-items > a:not(:first-child) {
    padding-left: 1rem;
}

.site-1 :is(#g-offcanvas, .g-main-nav) .g-social-items > a {
    color: var(--default-white);
}

.site-1 :is(#g-offcanvas, .g-main-nav) .g-social-items > a:hover {
    color: var(--secondary-color);
}

.header-icon img {
    width: 85% !important;
    margin: auto;
}

.logo-text img {
    width: 100% !important;
    margin: auto;
}

.header-icon {
    padding: 1rem 2rem 2rem 0rem;
    padding-top: 1rem;
    margin-bottom: -4rem;
    z-index: 100;
}

.site-1-sub .header-icon {
    margin-bottom: -7rem;
}

.mobile-logo img {
    padding: 1rem !important;
}

@media (max-width: 50.99rem) {
    .site-1-sub #g-navigation {
        border-bottom: solid 2px var(--primary-color);
    }
}

/*************** SLIDESHOW ****************/ 

.mass-times-block > div > div {
    background-image: url('/images/template/mass-times-heading-v2.png');
    background-repeat: no-repeat;
    /* background-size: contain; */
    background-position: center 5%;
    background-size: 85%;
}

.mass-times-block .g-array-item {
    padding-top: 16%;
}

/*************** HEADER *******************/

.site-1-sub #g-header {
    min-height: 2rem;
}

/*************** ABOVE ********************/
/*************** SHOWCASE *****************/
/*************** UTILITY ******************/
/*************** FEATURE ******************/
/*************** MAIN *********************/
.parish-home #g-container-main {
    padding: 0 5%;
}

.site-1-sub #g-mainbar {
    min-height: 30vh;
    padding-bottom: clamp(80px, 5%, 200px);
}

.rok-mini-particle-verticle .rme-badge {
    border-radius: 0;
}

.homepage-button {
    padding: 1rem 2rem;
}

.site-1-home #g-container-main {
    padding: 5%;
}

.site-1-home #g-mainbar {
    padding-right: 5%;
}

.site-1-home #g-aside .g-title,
.site-1-home #g-aside h1 {
    font-size: clamp(1.5rem, 2vw, 3rem) !important;
}

.p-spacing-fix p {
    margin-bottom: 0;
    line-height: 1.5;
}

.grid-center {
    display: grid;
    justify-content: center;
    align-items: center;
}

.latest-flocknotes > .g-content {
    padding-bottom: 0;
}

.latest-flocknotes .g-title {
    font-weight: normal;
}

/*************** EXPANDED *****************/ 

.site-1-home #g-expanded {
    background: url('/images/template/sh-drawing-parallax.jpg') 50% 50% no-repeat;
    background-size: auto clamp(110%, 100vw, 100vw);
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center;
}

@media (max-width: 50.99rem) {
    .site-1-home #g-expanded {
        background-size: auto 120%;
    }
}

.site-1-home #g-expanded > div {
    background: rgba(0,0,0,.5);
}

.site-1-home .info-box-wrapper {
    display: flex;
    gap: 3vw;
    justify-content: center;
    flex-wrap: wrap;
}

.info-boxes-block {
    padding: 5% 0;
}
.info-boxes-block > .g-content {
    margin: 0!important;
    padding: 0!important;
}

.site-1-home .info-box {
    background: white;
    padding: 3%;
    max-width: 30%;
    border-radius: 5%;
    position: relative;
    display: grid;
    grid-template-rows: 1fr 1fr 0.75fr;
    gap: 1rem;
    aspect-ratio: 1/1;
    min-width: 350px;
}

.site-1-home .info-boxes-block .g-array-item-text {
    margin: 0;
}

.info-box h2 {
    font-size: clamp(1.5rem, 2vw, 4rem);
    font-family: var(--body-font-family);
    font-variant: small-caps;
    font-weight: 800;
    color: black;
}

.info-box p {
    font-size: clamp(1rem, 1.05vw, 2.5rem);
}

.info-box .button {
    background-color: black;
    position: absolute;
    border: 1px solid black;
    bottom: 9%;
    left: 9%;
}

.info-box .button:hover {
    transition: all 0.3s ease-in-out;
    background-color: transparent;
    border: 1px solid black;
    color: black;
    transform: scale(1.02);
}

.catechesis::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background: url(/images/stories/template/church-icon.png) no-repeat;
    background-position: 90% 93%;
    background-size: clamp(100px, 5vw, 200px) clamp(100px, 5vw, 200px);
}

.biblical-studies::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background: url(/images/stories/template/book-cross.png) no-repeat;
    background-position: 90% 93%;
    background-size: clamp(100px, 5vw, 200px) clamp(100px, 5vw, 200px);
}

.word-on-fire::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background: url(/images/stories/template/word-on-fire-icon.png) no-repeat;
    background-position: 90% 93%;
    background-size: clamp(100px, 5vw, 200px) clamp(100px, 5vw, 200px);
}

@media only screen and (min-width: 50.99rem) and (max-width: 1311px) {
    .site-1-home .info-box {
        min-width: 300px;
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-1-home #g-expanded > .g-grid {
        padding: 1rem;
    }
}

@media (max-width: 900px) {
    .site-1-home .info-box {
        max-width: initial;
        padding: 10%;
    }

    .info-box h2 {
        font-size: clamp(2rem, 6vw, 5rem) !important;
    }

    .info-box p {
        font-size: clamp(1rem, 3vw, 5rem) !important;
    }

    .site-1-home .info-boxes-block {
        padding-bottom: 12%;
    }

    
    .site-1-home #g-expanded > .g-grid {
        padding: 10%;
    }

    .site-1-home .info-box-wrapper {
        gap: 6rem;
    }

}

/*************** EXTENSION ****************/
/*************** BOTTOM *******************/

.floating-ads {
    height: 0;
}

.site-1 .floating-ads .moduletable {
    transform: translatey(-50%);
    z-index: 100;
    position: relative;
}

/*************** FOOTER *******************/
#g-footer .g-content-array {margin: 0;}
#g-footer a {color: var(--default-white);} 

.site-1 #g-footer a:is(:hover, :active, :focus) {
    color: #cccccc
}

.site-1 #g-footer h2 {
    font-size: clamp(2.5rem, 3.5vw, 5rem);
}

.site-1 #g-footer img {
    width: 100%;
}

.site-1 #g-footer {
    padding-top: 2%;
}

@media (max-width: 900px) {
    .site-1 #g-footer {
        padding-top: 8%;
    }
}

@media (max-width: 50.99rem) {
    .site-1 .footer-icon img {
        width: 70% !important;
        margin: auto;
        padding-top: 5%;
    }
}

/*************** COPYRIGHT ****************/ 
/*************** 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(--primary-color); 
    background: var(--secondary-color);
} 
/*************** SECTIONS *****************/
/*************** MOBILE *******************/ 
/*************** ADS **********************/

/* staff page */

.grid-staff p {
    margin: 0;
    line-height: 1.5;
    font-size: 1.2rem;
}

.grid-staff .g-array-item-text {
    margin: 0;
}

.grid-staff .g-array-item {
    padding-bottom: 0;
}

@media (max-width: 50.99rem) {
    .grid-staff .g-array-item {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        border-radius: var(--grid-border-radius);
    }

    .grid-staff img {
        width: 100% !important;
        height: auto !important;
        object-fit: cover !important;
    }

    .grid-staff .g-joomla-articles {
        gap: 2rem;
    }
}
