@import url('//fonts.googleapis.com/css2?family=Marcellus&family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');
/************ TEMPLATE  ************
-Sticky menu
-Menus navigation needs to show that there is a dropdown (such as churchofstjoseph.org) 
--------------

red #771414 rgba(119,20,20,1)
grey #414042 rgba(65,64,66,1)
light grey #f1f2f2 rgba(241,242,242)
Black

Marcellus
Open Sans

Weekend Mass
Sat - 5:00pm
Sun - 8:30am, 10:30am

Daily Mass
Tue-Fri - 8:00am

Reconciliation
Thu, Fri - 7:30-8:00am
Sat - 4:00pm
Anytime by Appointment: 651-451-1863
************/

.site-1 {
    --primary-color: #771414;
    --secondary-color: #414042;

    --primary-rgb: 119,20,20;
    --secondary-rgb: 65,64,66;

    --default-white: #ffffff;
    --default-black: #000000;

    --title-font-family: 'Marcellus', serif;
    --body-font-family: 'Open 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);

    --rok-mini-badge: var(--primary-color);
    --rok-mini-text: var(--default-white);

    --ph-title-font-size-mobile: 5vw;
	--ph-title-weight: 600;
}

.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: 'Lato', sans-serif;
} 

/*************** HOMELAYOUT ***************/ 
/*************** OFFCANVAS ****************/
.g-offcanvas-toggle {color: var(--default-white);} 
.g-offcanvas-toggle .fa-fw {text-shadow: none;}

@media only screen and (max-width: 50.99rem) {
    #g-offcanvas .g-social-items a {
        margin-right: 1.5vw;
    }
}

/*************** TOP **********************/ 
/*************** NAVIGATION ***************/
@media only screen and (min-width: 50.99rem) {
    .site-1-home #g-navigation {
        position: relative;
        z-index: 20;
        height: 4vw;
        width: 100%;
        margin-bottom: -4vw!important;
        box-shadow: var(--default-box-shadow);
    }
    .site-1-home #g-navigation .g-main-nav > .g-toplevel {
        height: 4vw;
    }
    .g-main-nav .g-toplevel>li>.g-menu-item-container>.g-menu-item-content {
        font-size: .9vw;
        text-transform: uppercase;
        font-family: var(--body-font-family);
        font-weight: 500;
        letter-spacing: 1px;
    }
    .g-main-nav .g-toplevel>li.active>.g-menu-item-container {
        border-bottom: none;
    }
    #g-navigation .g-social-items a:not(#g-navigation .g-social-items a:last-child) {
        margin-right: 5px;
    }
    #g-navigation .g-main-nav .g-toplevel > li > .g-menu-item-container {
        transition: var(--default-transition);
    }
    #g-navigation .g-main-nav .g-toplevel > li > .g-menu-item-container:not(#g-navigation .g-main-nav .g-toplevel > li:last-child > .g-menu-item-container):hover {
        background: rgba(0,0,0,.25);
        border-radius: .5rem;
    }
}
#g-navigation {border-bottom: 2px solid var(--primary-color);}
.g-main-nav .g-toplevel > li.g-parent .g-menu-parent-indicator {
    display: initial;
}

@media only all and (min-width: 51rem){
	#g-navigation .g-logo img {
    width: 50vw;
	}
}

@media only screen and (max-width: 50.99rem) {
    #g-navigation .g-logo {
        max-width: 70%;
        margin: 1rem auto;
    }
}

/*************** SLIDESHOW ****************/
@media only screen and (min-width: 50.99rem) {
    .site-1-home #g-slideshow > .g-container {
        position: relative;
        height: 56vw;
        width: 100%;
        overflow: hidden;
    }
    .site-1-home #g-slideshow > .g-container > .g-grid:nth-child(1) {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        z-index: 1;
    }
    .site-1-home #g-slideshow > .g-container > .g-grid:nth-child(2) {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 8vw;
        width: 50%;
        margin: 24vw auto;
        z-index: 5;
    }
    .site-1-home #g-slideshow > .g-container > .g-grid:nth-child(3) {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        height: 12vw;
        width: 100%;
        z-index: 5;
        background: rgba(var(--secondary-rgb),.7);
    }
    .swiper-m-times-overlay {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .swiper-m-times-overlay > .g-content {
        width: 100%;
    }
    .swiper-m-times-overlay .g-content-array {
        margin: 0;
        padding: 0;
    }
    .m-times-text-container {
        display: flex;
        flex-direction: row;
        justify-content: space-around;
        align-items: flex-start;
    }
    .m-times-text-container :is(h1,h2,h3,h4,h5,h6) {
        color: var(--default-white);
        font-family: var(--title-font-family);
        text-transform: none;
        font-variant-caps: normal;
        font-size: 2.5vw;
        border: none;
        background: none;
        font-weight: 400;
        margin: 0;
        padding: 0;
        line-height: 1.3;
        border-radius: 0;
        text-shadow: 2px 2px 7px #000000;
		letter-spacing: 2px;
    }
    .m-times-text-container p {
        font-size: 1.3vw;
        text-shadow: 1px 1px 5px #000000;
        margin: 0;
        padding: 0;
    }
    .m-times-text-container .button {
        border-radius: 0;
        border: 1px solid #ffffff;
        text-transform: uppercase;
        letter-spacing: 1px;
        font-size: 1vw;
        margin-top: 1vw;
        padding: .7vw 1.3vw;
    }
    .swiper-m-times-overlay .g-array-item-text {
        margin: 0;
        padding: 0;
    }
} 
@media only screen and (max-width: 50.99rem) {
    .swiper-m-times-overlay {
        padding: 1rem;
    }
    .swiper-overlay-container .swiper-m-times-overlay .g-content-array {
        margin: 0;
        padding: 0;
    }
    .swiper-m-times-overlay .g-array-item-text {
        margin: 0;
        padding: 0;
    }
    .m-times-text-container :is(h1,h2,h3,h4,h5,h6) {
        color: var(--default-white);
        font-family: var(--title-font-family);
        text-transform: none;
        font-variant-caps: normal;
        font-size: 9vw;
        border: none;
        background: none;
        font-weight: 400;
        margin: 0;
        padding: 0;
        line-height: 1.3;
        border-radius: 0;
        text-shadow: 2px 2px 7px #000000;
        margin-bottom: 2vw;
    }
    .m-times-text-container p {
        font-size: 4vw;
        text-shadow: 1px 1px 5px #000000;
        margin: 0;
        padding: 0;
        margin-bottom: 2vw;
    }
    .m-times-text-container .button {
        border-radius: 0;
        border: 1px solid #ffffff;
        text-transform: uppercase;
        letter-spacing: 1px;
        font-size: 4vw;
        margin-top: 1vw;
        padding: 1rem;
    }
}

/*************** HEADER *******************/
@media only screen and (min-width: 50.99rem) {
    .site-1-home #g-header {
        padding: 2vw 5%;
    }
    .circle-links.ql-height16vw .g-blockcontent-subcontent-block-content {
        box-shadow: 0px 0px 15px rgba(0,0,0,.25);
    }
}
@media only screen and (max-width: 50.99rem) {
    .site-1-home .ql-dm .g-blockcontent-subcontent-block {
        box-shadow: 0px 0px 15px rgba(0,0,0,.25);
    }
}

/*************** ABOVE ********************/
/*************** SHOWCASE *****************/
/*************** UTILITY ******************/
/*************** FEATURE ******************/
/*************** MAIN *********************/
.ph-sidepics-3 .g-title {
    font-size: 3vw;
    color: var(--primary-color);
    border-bottom: none;
    font-weight: 400;
    margin: 2vw 0;
    font-family: var(--title-font-family);
    text-transform: none;
    font-variant-caps: normal;
}
@media only screen and (min-width: 50.99rem){
	.ph-sidepics-3.ph-square .g-array-item {
    grid-template-columns: 14vw calc(100% - 14vw - 1rem)!important;
    grid-template-rows: 25% 50% 25%;
    max-height: 14vw;
}
	.ph-sidepics-3.ph-square .g-array-item-image {
    max-height: 14vw;
    max-width: 14vw;
    height: 14vw;
    width: 14vw;
}
.ph-sidepics-3.ph-square .g-array-item-read-more a {
    padding: 0 0 2vw calc(14vw + 1rem);
}
}

@media only screen and (min-width: 50.99rem) {
    .site-1-home #g-mainbar > .g-grid:last-child .button {
        border: 2px solid var(--primary-color);
        background: transparent;
        color: var(--primary-color);
        text-transform: uppercase;
        font-family: var(--body-font-family);
        letter-spacing: 2px;
        padding: 1vw 2vw;
        border-radius: 0;
        margin: 2vw 0;
        font-weight: 500;
    }
    .site-1-home #g-mainbar > .g-grid:last-child .button:hover {
        background: var(--primary-color);
        color: var(--default-white);
    }
    .site-1-home #g-container-main > .g-grid > .g-block:nth-child(2) {
        display: flex;
        justify-content: center;
        align-items: center;
    }
}

@media only screen and (max-width: 50.99rem) {
    .ph-sidepics-3 .g-title {
        font-size: 9vw;
    }
    .site-1-home #g-mainbar {
        padding-top: 1rem;
    }
    .ph-sidebyside-mobile .g-array-item-read-more {
        opacity: 0;
    }
}


/*************** EXPANDED *****************/ 
@media only screen and (min-width: 50.99rem) {
    .site-1-home #g-expanded {
        background: url('/images/template/paralax1.jpg') 0% 0% no-repeat;
        background-size: cover;
        background-position: center;
        background-attachment: fixed;
    }
    .site-1-home #g-expanded > .g-container {
        background: rgba(var(--secondary-rgb),.75);
        padding: 3vw 10%!important;
    }
    .site-1-home #g-expanded .button {
        border: 2px solid var(--default-white);
        background: transparent;
        color: var(--default-white);
        text-transform: uppercase;
        font-family: var(--body-font-family);
        letter-spacing: 2px;
        padding: 1vw 2vw;
        border-radius: 0;
        margin: 2vw 0;
        font-weight: 500;
    }
    .site-1-home #g-expanded .button:hover {
        background: var(--primary-color);
    }
    .site-1-home #g-expanded .g-title {
        border-bottom: none;
        color: var(--default-white);
        font-size: 3vw;
        font-weight: 400;
        margin: 2vw 0;
    }
}
@media only screen and (max-width: 50.99rem) {
    .site-1-home #g-expanded {
        background: url('/images/template/paralax1.jpg') 0% 0% no-repeat;
        background-size: cover;
        background-position: center;
    }
    .site-1-home #g-expanded > .g-container {
        background: rgba(var(--secondary-rgb),.75);
        padding: 3vw 10%!important;
    }
    .site-1-home #g-expanded .button {
        border: 2px solid var(--default-white);
        background: transparent;
        color: var(--default-white);
        text-transform: uppercase;
        font-family: var(--body-font-family);
        letter-spacing: 2px;
        padding: 1rem;
        border-radius: 0;
        margin: 2vw 0;
        font-weight: 500;
    }
    .site-1-home #g-expanded .button:hover {
        background: var(--primary-color);
    }
    .site-1-home #g-expanded .g-title {
        border-bottom: none;
        color: var(--default-white);
        font-size: 9vw;
        font-weight: 400;
        margin: 2vw 0;
    }
}

/*************** EXTENSION ****************/
.logo-offset .g-blockcontent-subcontent {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 2vw;
}
.logo-offset .g-blockcontent-subcontent > .g-blockcontent-subcontent-block:nth-child(1) {
    flex: 100%;
    max-width: 100%;
}
.logo-offset .g-blockcontent-subcontent-block {
    flex: calc(50% - 1vw);
    max-width: 50%;
    position: relative;
    transition: var(--default-transition);
    margin-bottom: 0;
}
.logo-offset .g-blockcontent-subcontent-block:hover {
    transform: scale(.95);
}
.logo-offset .g-blockcontent-subcontent-block-content {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.logo-offset .g-blockcontent-subcontent-block-content > img {
    width: 100%;
    border-radius: 0;
    box-shadow: var(--default-box-shadow);
}
.logo-offset .g-blockcontent-subcontent-title {
    content-visibility: hidden;
    display: none;
    opacity: 0;
}
.logo-offset .g-blockcontent-buttons {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
    background: transparent;
    opacity: 0;
}
.logo-offset .g-blockcontent-buttons a {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
    background: transparent;
    opacity: 0;
}

@media only screen and (min-width: 50.99rem) {
    .site-1-home #g-extension {
        padding: 4vw 10%;
    }
    .site-1-home #g-extension .g-title {
        color: var(--default-white);
        font-size: 3vw;
        font-weight: 400;
        letter-spacing: 1px;
    }
    .site-1-home #g-extension > .g-grid {
        background: url('/images/template/bg.jpg') 0% 100% no-repeat, var(--primary-color);
        background-size: 20%;
        box-shadow: 0px 0px 15px rgba(0,0,0,.15);
    }
    .site-1-home #g-bottom {
        padding: 3vw 10%!important;
    }
    .logo-offset {
        margin-bottom: 2vw;
    }
    .site-1-home #g-extension .button {
        border: 2px solid var(--default-white);
        background: transparent;
        color: var(--default-white);
        text-transform: uppercase;
        font-family: var(--body-font-family);
        letter-spacing: 2px;
        padding: 1vw 2vw;
        border-radius: 0;
        margin: 2vw 0;
        font-weight: 500;
    }
    .site-1-home #g-extension .button:hover {
        background: var(--secondary-color);
    }
    .site-1-home #g-extension > .g-grid > .g-block:nth-child(2) > .g-content {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .site-1-home #g-extension > .g-grid > .g-block:nth-child(2) iframe {
        box-shadow: 0px 0px 15px rgba(0,0,0,.25);
    }
}

@media only screen and (max-width: 50.99rem) {
    .logo-offset .g-blockcontent-subcontent {
        gap: 1rem;
    }
    .logo-offset .g-blockcontent-subcontent-block {
        flex: 50%;
        width: 45%;
        max-width: 45%;
    }
    .logo-offset .g-blockcontent-subcontent-block-content > img {
        width: 100%;
    }
    .site-1-home #g-extension > .g-grid > .g-block:nth-child(1) iframe {
        width: 100%!important;
        height: auto!important;
    }
    .site-1-home #g-extension {
        padding: 1rem;
    }
    .site-1-home #g-extension .g-title {
        color: var(--default-white);
        font-size: 9vw;
        font-weight: 400;
        letter-spacing: 1px;
    }
    .site-1-home #g-extension > .g-grid {
        background: url('/images/template/bg.jpg') 0% 100% no-repeat, var(--primary-color);
        background-size: 50%;
        box-shadow: 0px 0px 15px rgba(0,0,0,.15);
    }
    .site-1-home #g-bottom {
        padding: 3vw 10%!important;
    }
    .logo-offset {
        margin-bottom: 2vw;
    }
    .site-1-home #g-extension .button {
        border: 2px solid var(--default-white);
        background: transparent;
        color: var(--default-white);
        text-transform: uppercase;
        font-family: var(--body-font-family);
        letter-spacing: 2px;
        padding: 1rem;
        border-radius: 0;
        margin: 2vw 0;
        font-weight: 500;
    }
    .site-1-home #g-extension .button:hover {
        background: var(--secondary-color);
    }
    .site-1-home #g-extension > .g-grid > .g-block:nth-child(2) > .g-content {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .site-1-home #g-extension > .g-grid > .g-block:nth-child(2) iframe {
        box-shadow: 0px 0px 15px rgba(0,0,0,.25);
    }
    .site-1-home #g-extension > .g-grid > .g-block > .g-content {
        margin: 0;
        padding: 1rem;
    }
    .site-1-home .logo-offset {
        margin: 2rem 0;
    }
}

/*************** BOTTOM *******************/
#g-bottom .g-content-array {
    margin: 0;
    padding: 0;
}

@media only screen and (min-width: 50.99rem) {
    .site-1-home #g-bottom > .g-container > .g-grid:nth-child(1) > .g-block:nth-child(1) img {
        width: 50%;
        height: auto;
    }
    .site-1-home #g-bottom > .g-container > .g-grid:nth-child(1) > .g-block:nth-child(1) .g-array-item-text {
        margin: 0;
        padding: 0;
    }
}

/*************** FOOTER *******************/
#g-footer .g-content-array {margin: 0;}
#g-footer a {color: var(--default-white);} 

@media only screen and (min-width: 50.99rem) {
    #g-footer {padding: 1rem 5%!important;}
    #g-footer .g-logo img {
        width: 5vw;
        height: auto;
    }
    #g-footer .g-array-item-text {
        margin: 0;
        padding: 0;
    }
    #g-footer p {
        margin: 0;
        padding: 0;
		font-family: var(--body-font-family);
    }
    #g-footer .g-block {
        display: flex;
        align-items: center;
    }
    #g-footer > .g-container > .g-grid > .g-block:nth-child(2) {
        justify-content: flex-end;
    }
}
@media only screen and (max-width: 50.99rem) {
    #g-footer {
        padding: 1rem!important;
    }
    #g-footer .g-logo img {
        width: 100%;
        height: auto;
    }
    #g-footer .g-logo {
        width: 30%;
    }
    #g-footer > .g-container > .g-grid > .g-block > .g-content {
        display: flex;
        justify-content: center;
        align-items: center;
    }
}


/*************** 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: white; 
    background: var(--secondary-color);
} 
/*************** SECTIONS *****************/
/*************** MOBILE *******************/ 
/*************** ADS **********************/
.admod img {
    box-shadow: var(--default-box-shadow);
}
.admod td {
    padding: 0;
    padding-left: 5px;
}

/*@media only screen and (min-width: 50.99rem) {
    .admod img {
        box-shadow: var(--default-box-shadow);
        height: 5vw;
        width: auto;
        object-position: center;
        object-fit: cover;
    }
    .admod td {
        margin: 0!important;
        padding: 0!important;
    }
    .admod tr {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-around;
        gap: 1vw;
    }
}
@media only screen and (max-width: 50.99rem) {

}*/