/* ARTWORK NOTES
--------------------------------------------

--------------------------------------------
*/
html body.site-home {
    --section-above-bg: var(--secondary-color);
}

html body {
    --side-menu-bg: var(--primary-color);
    --side-menu-bg-hover: var(--secondary-color);
    --side-menu-font-size-desktop: min(1.25vw, 1.25rem);
    --side-menu-font-family: var(--body-font-family);
    --side-menu-font-weight: 400;

    --section-footer-bg: rgba(var(--primary-color-rgb),.75);
    --section-copyright-bg: rgba(var(--primary-color-rgb),.75);
}

html body #g-navigation {
    --main-menu-text-color: var(--default-white);
    --main-menu-text-color-hover: var(--default-white);
	--main-menu-bg: transparent;
    --main-menu-bg-color: transparent;

    --navigation-floating-social-padding: min(1vw, 1rem);
}

:is(.nav-mainmenu-container, .swiper-overlay-mass-times, .wlake-feed-container, .calendar-container, .wl-widget-container, #g-footer) .g-array-item-text {
    margin: 0!important;
    padding: 0!important;
}

@media only screen and (min-width: 50.99rem) {
    .site-sub.site.withmaxwidth #g-header > .g-container {
        width: 100%;
        max-width: 100%;
    }

    #hero-title-text {
        width: 100%;
        max-width: 1440px;
        transform: translateX(-50%);
        left: 50%;
        right: unset;
        padding-left: min(5vw, 5rem);
    }

    .grid-mobile-stacked .g-item-title {
        padding: min(.75vw, .75rem);
    }

    #g-navigation.crawl-space .g-main-nav .g-toplevel>li:hover:not(.g-menu-item-type-particle)>.g-menu-item-container, #g-navigation.crawl-space .g-main-nav .g-toplevel>li.active:not(.g-menu-item-type-particle)>.g-menu-item-container {
        border: none;
        margin: 0;
    }

    #g-navigation .g-main-nav .g-toplevel > li:has(.g-social-items) {
        display: none!important;
    }
}

.site-home #g-feature {
    background: url('/images/template/announcement-bg.jpg') 50% 50% no-repeat;
    background-size: cover;
}

.site-home #g-expanded {
    background: url('/images/template/calendar-bg.jpg') 50% 50% no-repeat;
    background-size: cover;
}

#g-container-footer {
    background: url('/images/template/footer-bg.jpg') 50% 50% no-repeat;
    background-size: cover;
}


/* NAVIGATION */
@media only screen and (min-width: 50.99rem) {
    #g-navigation .g-main-nav .g-sublevel>li>.g-menu-item-container {
        color: var(--default-white);
    }
    #g-navigation .g-main-nav .g-sublevel>li>.g-menu-item-container:hover {
        background: var(--secondary-color);
        color: var(--default-white)!important;
    }
}

/*SLIDESHOW*/
@media only screen and (min-width: 50.99rem) {
    .site-home.site.withmaxwidth #g-slideshow > .g-container {
        width: 100%;
        max-width: 100%;
    }
}

/*BOTTOM*/
@media only screen and (min-width: 50.99rem) {
    #g-bottom {
        position: relative;
        z-index: 10;
    }
    #g-bottom > .g-container {
        padding: 2rem 0!important;
    }
    #g-bottom .admod td {
        padding-top: 0!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    #g-bottom {
        position: relative;
        z-index: 10;
    }
    .site.withmaxwidth #g-bottom > .g-container {
        padding: 2rem 0!important;
    }
    #g-bottom .admod td {
        padding-top: .5rem!important;
    }
}

.search-page #searchForm .btn {
    background: var(--primary-color);
}

.grid-articles .g-array-item-text a:not(a.button) {
    color: var(--primary-color);
}
.grid-articles .g-array-item-text a {
    color: var(--primary-color);
}

@media only screen and (max-width: 50.99rem) {
    .admod.adside tbody {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: .5rem .5rem;
    }
}

@media only screen and (max-width: 50.99rem) {
    body#site-grid.newslayout #g-container-main > .g-container {
        padding: 2rem 1rem!important;
    }
    body#site-grid.newslayout #g-container-main #g-mainbar {
        margin: 0!important;
        padding: 0!important;
    }

    #site-grid.newslayout .grid-mobile-stacked .g-item-title {
        --grid-title-font-size: 3vw;
    }
}

@media only screen and (max-width: 50.99rem) {
    body .side-menu-particle .g-blockcontent-subcontent-title-text {
        --side-menu-font-size-desktop: 4vw;
    }
}

@media only screen and (max-width: 50.99rem) {
    .grid-img-box-shadow-50 .g-array-item-image {
        box-shadow: none!important;
    }
    .grid-mobile-stacked .g-array-item-image img {
        box-shadow: none!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .bulletin-page .koowa_media {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 1rem;
    }
    .bulletin-page .koowa_media__item {
        flex: 1;
        min-width: calc(50% - .5rem);
        max-width: calc(50% - .5rem);
    }
}
/* WHITE LAKE — shared navigation and container geometry */
body {
    --wl-content-width: 1440px;
    --wl-gutter: clamp(20px, 3vw, 48px);
    --wl-cream: #f9f5f1;
}
html body #g-navigation {
    --navigation-toplevel-menu-item-font-size: 12px;
    --navigation-toplevel-menu-item-text-transform: uppercase;
    --navigation-toplevel-menu-item-padding: 12px 0;
    --navigation-floating-social-items-font-size: 15px;
    --navigation-floating-social-items-font-size-mobile: 18px;
    --navigation-floating-social-items-color: var(--secondary-color);
    --navigation-floating-social-items-color-mobile: var(--secondary-color);
    --main-menu-text-color: var(--primary-color);
    --main-menu-text-color-hover: var(--secondary-color);
    background: #f3e3c9;
    z-index: 30;
}
.site.withmaxwidth #g-navigation > .g-container,
.site.withmaxwidth #g-footer > .g-container,
.site.withmaxwidth #g-copyright > .g-container {
    width: 100%;
    max-width: var(--wl-content-width);
    padding-inline: var(--wl-gutter) !important;
    box-sizing: border-box;
    margin-inline: auto !important;
}
.nav-mainmenu-container .g-content { margin: 0; padding: 0; }
.nav-links { display: flex; align-items: center; justify-content: flex-end; gap: 16px; }
.nav-top-row { padding: 12px 0 8px; }
.nav-info { color: var(--secondary-color); font: 600 14px/1.4 var(--title-font-family); }
.nav-social-icons .g-social-items { display: flex; gap: 16px; }
.nav-social-icons .g-social a { --navigation-social-item-font-size: 15px; color: var(--secondary-color); font-size: 15px; margin: 0; }
.nav-bottom-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 8px 0 24px; }
.nav-logo { flex: 0 1 370px; min-width: 240px; }
.nav-logo img { display: block; width: 100%; height: auto; }
.nav-main-menu { min-width: 0; }
#g-navigation .g-main-nav .g-toplevel { display: flex; align-items: center; justify-content: flex-end; gap: 14px; }
#g-navigation .g-main-nav .g-toplevel > li { margin: 0; }
#g-navigation .g-main-nav .g-toplevel > li > .g-menu-item-container {
    color: var(--primary-color); padding: 12px 0; border: 0; margin: 0;
    font: 700 12px/1.4 var(--body-font-family); text-transform: uppercase; letter-spacing: 0;
    white-space: normal;
}
#g-navigation .g-main-nav .g-toplevel > li:hover > .g-menu-item-container,
#g-navigation .g-main-nav .g-toplevel > li.active > .g-menu-item-container { color: var(--secondary-color); }
@media (min-width: 51rem) {
    #g-navigation .g-main-nav .g-toplevel > li:focus-within > .g-dropdown { opacity: 1; visibility: visible; transform: none; }
}
#g-navigation .g-main-nav .g-dropdown { background: var(--primary-color); box-shadow: 0 8px 24px #0003; }
#g-navigation .g-main-nav .g-sublevel .g-menu-item-container { font-size: 15px; line-height: 1.5; white-space: normal; }
#g-navigation a:focus-visible, #g-offcanvas a:focus-visible { outline: 3px solid var(--tertiary-color); outline-offset: 3px; }
.site-sub #g-navigation { position: relative; inset: auto; margin: 0; }
.site-home #g-container-top { position: relative; }

/* Homepage section spacing; the hero alone remains edge to edge. */
.site-home.site.withmaxwidth :is(#g-header, #g-feature, #g-utility, #g-expanded, #g-extension) > .g-container {
    width: 100%; max-width: var(--wl-content-width); margin-inline: auto !important;
    padding-inline: var(--wl-gutter) !important; box-sizing: border-box;
}
.site-home.site.withmaxwidth #g-slideshow > .g-container { width: 100%; max-width: none; padding: 0; }
.site-home #g-slideshow { position: relative; }
.site-home #g-header { position: relative; z-index: 5; margin-top: -28px !important; padding-bottom: 40px !important; background: transparent; }
.site-home #g-feature { padding-block: 64px 40px !important; background-image: linear-gradient(#f1e0c8d9, #f1e0c8d9), url('/images/template/announcement-bg.jpg'); }
.site-home #g-utility { padding-block: 72px !important; }
.site-home #g-expanded { padding-block: 72px !important; background-image: linear-gradient(#f1e0c8dc, #f1e0c8dc), url('/images/template/calendar-bg.jpg'); }
.site-home #g-extension { padding-block: 72px 32px !important; background: var(--wl-cream); }
.site-home #g-bottom { background: var(--wl-cream); }
.site-home #g-utility > .g-container > .g-grid { gap: 40px; }
.site-home #g-utility .ph-news-container { flex: 1 1 0; width: auto; min-width: 0; }
.site-home #g-utility .facebook-container { flex: 0 1 34%; min-width: 0; }
.site-home #g-extension > .g-container > .g-grid { gap: 40px; }
.site-home #g-extension .wl-widget-container { flex: 1 1 0; min-width: 0; }

/* Hero and schedule */
.fullwidth-swiper { --slideshow-height: clamp(680px, 56.25vw, 920px); }
.fullwidth-swiper .swiper-slide > img { height: var(--slideshow-height); width: 100%; object-fit: cover; }
.fullwidth-swiper .swiper-pagination-bullets { text-align: left; padding-left: max(var(--wl-gutter), calc((100% - 1440px) / 2 + var(--wl-gutter))); bottom: 50px; }
.swiper-overlay-mass-times {
    color: white; background: rgba(var(--tertiary-color-rgb), .92); padding: 28px;
    border: 5px solid var(--tertiary-color); outline: 1px solid #fffd; outline-offset: -7px;
    box-shadow: 0 8px 24px #0002; box-sizing: border-box;
    font: 400 15px/1.7 var(--body-font-family);
}
.swiper-overlay-mass-times .g-content-array .g-array-item .g-array-item-text { font: 400 15px/1.7 var(--body-font-family); }
.swiper-overlay-mass-times .g-content { margin: 0; padding: 0; }
.swiper-overlay-mass-times h2 { color: white; font: 700 30px/1.15 var(--title-font-family); text-transform: uppercase; font-variant: normal; margin: 0 0 16px; }
.swiper-overlay-mass-times p { margin: 0 0 14px; }
.swiper-overlay-mass-times p:last-child { margin-bottom: 0; }
.swiper-overlay-mass-times p + h2 { margin-top: 30px; }
.swiper-overlay-mass-times .button { background: var(--secondary-color); color: white; border: 1px solid #ffffff80; border-radius: 3px; padding: 8px 18px; font: 700 14px/1.3 var(--body-font-family); }
@media (min-width: 51rem) {
    /* Anchor the overlay to its own row, after the optional alert in normal flow. */
    .site-home #g-container-top > .g-container > .g-grid > .g-block:has(> #g-navigation) {
        position: relative;
    }
    .site-home #g-navigation { position: absolute; top: 0; left: 0; width: 100%; background: linear-gradient(#f3e3c9 10%, #f3e3c9e6 50%, #f3e3c900); }
    .site-home #g-slideshow .swiper-overlay-mass-times { position: absolute; z-index: 3; top: 52%; transform: translateY(-50%); right: max(var(--wl-gutter), calc((100% - 1440px) / 2 + var(--wl-gutter))); width: 340px; max-width: calc(100% - 40px); }
}

/* Quick links retain the CMS's existing anchors and destinations. */
.quicklinks-rect-inner-border .g-content { margin: 0; padding: 0; }
.quicklinks-rect-inner-border .g-blockcontent-subcontent { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.quicklinks-rect-inner-border .g-blockcontent-subcontent-block-content { height: 100%; position: relative; background: var(--secondary-color); border: 4px solid var(--secondary-color); box-shadow: inset 0 0 0 1px #fff9; min-height: 78px; display: flex; align-items: center; justify-content: center; padding: 16px; text-align: center; }
.quicklinks-rect-inner-border .g-blockcontent-subcontent-title { margin: 0; color: white; font: 700 19px/1.3 var(--title-font-family); }
.quicklinks-rect-inner-border .g-blockcontent-buttons { position: absolute; inset: 0; margin: 0; }
.quicklinks-rect-inner-border .g-blockcontent-buttons a { display: block; position: absolute; inset: 0; font-size: 0; color: transparent; }
.quicklinks-rect-inner-border .g-blockcontent-buttons a:focus-visible { outline: 3px solid var(--tertiary-color); outline-offset: 4px; }

/* Featured article slider */
.parish-headlines-rotator { min-width: 0; }
.parish-headlines-rotator > .g-content { margin: 0 24px 0 0; padding: 0; }
/* Stretch every slide to the tallest article without tying height to the source image. */
.parish-headlines-rotator .swiper-wrapper { height: auto !important; align-items: stretch; }
.parish-headlines-rotator .swiper-slide { display: grid; grid-template-columns: minmax(0, 43fr) minmax(0, 57fr); gap: 16px; align-items: stretch; height: auto; min-height: 0; }
.parish-headlines-rotator .swiper-slide > img { grid-area: 1 / 2; align-self: start; display: block; width: 100%; height: auto; min-height: 0; aspect-ratio: 4 / 3; object-fit: cover; }
.parish-headlines-rotator .g-swiper .g-swiper-slider .swiper-slide .slide { grid-area: 1 / 1; position: static; width: auto; min-width: 0; height: auto; background: transparent; color: white; }
.parish-headlines-rotator .g-swiper .slide-content-wrapper { position: static; padding: 24px; box-sizing: border-box; height: 100%; display: flex; align-items: stretch; background: #906845; }
.parish-headlines-rotator .g-swiper .g-swiper-slider .swiper-slide .slide .slide-content-wrapper .slide-content { width: 100%; display: flex; flex-direction: column; align-items: stretch; text-align: left; height: 100%; }
.parish-headlines-rotator .g-swiper .g-swiper-slider .swiper-slide .slide .slide-content-wrapper .slide-content .g-swiper-title { font: 700 26px/1.2 var(--title-font-family); color: white; margin: 0 0 16px; }
.parish-headlines-rotator .g-swiper .g-swiper-slider .swiper-slide .slide .slide-content-wrapper .slide-content .g-swiper-text { font: 400 15px/1.7 var(--body-font-family); color: white; margin: 0 0 24px; }
.parish-headlines-rotator .button { margin-top: auto; }
.parish-headlines-rotator .g-swiper .swiper-navigation > div { width: 32px; height: 32px; transform: none; }
.parish-headlines-rotator .swiper-navigation [class*="swiper-button-prev"] { order: -1; }
.parish-headlines-rotator .swiper-navigation { position: relative; display: flex; justify-content: flex-end; gap: 12px; margin-top: 10px; }
.parish-headlines-rotator .swiper-navigation > div { font-size: 28px; line-height: 32px; position: static; margin: 0; transform: none; width: 32px; height: 32px; color: var(--primary-color); }

/* News, social feed and section headings */
.wlake-feed-container > .g-content, .wl-widget-container > .g-content, .calendar-container > .g-content { margin: 0; padding: 0; }
.wlake-feed-title .g-title, .calendar-title .g-title, .wl-widget-title .g-title { display: flex; align-items: center; gap: 18px; color: var(--secondary-color); font: 600 36px/1.2 var(--title-font-family); margin: 0 0 36px; padding: 0; border: 0; text-transform: none; font-variant: normal; }
.wlake-feed-title .g-title::after, .calendar-title .g-title::after, .wl-widget-title .g-title::after { content: ''; flex: 1; height: 1px; background: #5a382525; }
.wlake-news .g-content { margin: 0; padding: 0; }
.wlake-news .g-array-item { position: relative; display: grid; grid-template-columns: 140px minmax(0, 1fr); column-gap: 24px; align-content: center; padding: 20px 8px; margin-bottom: 16px; border-bottom: 1px solid #e5e1db; border-radius: 6px; transition: background-color .2s, box-shadow .2s; }
.wlake-news .g-array-item-image { grid-column: 1; grid-row: 1 / 4; align-self: center; margin: 0; }
.wlake-news .g-array-item-image img { width: 140px; height: 140px; border-radius: 50%; object-fit: cover; border: 3px solid #e1e0dc; box-shadow: 0 3px 5px #0002; }
.wlake-news .g-array-item-title, .wlake-news .g-array-item-text, .wlake-news .g-array-item-read-more { grid-column: 2; }
.wlake-news .g-item-title { border: 0; font: 600 21px/1.25 var(--title-font-family); margin: 0 0 8px; padding: 0; }
.wlake-news .g-item-title a { color: var(--secondary-color); }
.wlake-news .g-content-array .g-array-item .g-array-item-text { color: #756a62; font: 400 15px/1.5 var(--body-font-family); }
.wlake-news .g-array-item-read-more { margin-top: 8px; position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; opacity: 0; }
.wlake-news .g-array-item-read-more .button { padding: 0; background: none; border: 0; color: var(--tertiary-color); font: 700 12px/1.5 var(--body-font-family); text-transform: uppercase;  position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; opacity: 0; }
.wlake-news .g-array-item-read-more a::after { content: ''; position: absolute; inset: 0; z-index: 1; }
.wlake-news .g-array-item:focus-within { outline: 3px solid var(--tertiary-color); outline-offset: 3px; }
.wlake-feed-button { text-align: right; margin-top: 24px; }
.wlake-feed-content iframe { max-width: 100%; }
.parish-headlines-rotator .button, .wlake-feed-button .button, .calendar-button .button { background: var(--tertiary-color); color: white; border: 4px solid var(--tertiary-color); border-radius: 0; box-shadow: inset 0 0 0 1px #fffc; padding: 10px 28px; font: italic 700 18px/1.3 var(--title-font-family); text-align: center; }

/* Calendar cards */
.calendar-feed .gcaltohtml { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.calendar-feed .cc-date-event-container { display: flex; flex-direction: column; margin: 0; padding: 0; border-radius: 10px; overflow: hidden; background: white; box-shadow: 0 3px 7px #0002; min-width: 0; }
.calendar-feed .cc-dateblockformat { display: flex; align-items: center; gap: 12px; background: var(--tertiary-color); color: white; padding: 12px 20px; width: auto; }
.calendar-feed .cc-dayformat { font: italic 700 32px/1 var(--title-font-family); }
.calendar-feed .cc-monthformat { font: 700 13px/1.3 var(--body-font-family); text-transform: uppercase; }
.calendar-feed .cc-dayofweek { font: 400 12px/1.4 var(--body-font-family); }
.calendar-feed .cc-eventblock { padding: 20px; width: auto; }
.calendar-feed .event { display: flex; flex-direction: column; margin: 0 0 16px; }
.calendar-feed .event:last-child { margin-bottom: 0; }
.calendar-feed .cc-title { order: -1; color: var(--secondary-color); font: 600 21px/1.2 var(--title-font-family); margin-bottom: 10px; }
.calendar-feed .cc-timeofday { color: #756a62; font: 400 14px/1.5 var(--body-font-family); }
.calendar-button { text-align: center; margin-top: 32px; }

/* Media and myParish */
.wl-widget-title p { margin: -20px 0 24px; color: #756a62; font-size: 15px; }
.myparish-wrapper { display: flex; gap: 24px; align-items: center; }
.myparish-image { flex: 0 0 40%; }
.myparish-image img { width: 100%; height: auto; }
.myparish-content { flex: 1; min-width: 0; font-size: 15px; line-height: 1.65; color: #756a62; }
.myparish-buttons { display: flex; flex-direction: column; flex-wrap: wrap; gap: 10px; }
.myparish-buttons .button { background: #171717; color: white; border-radius: 5px; font-size: 14px; padding: 10px 16px; width: 100%; }

/* Shared footer */
#g-footer { --section-footer-bg: rgba(var(--primary-color-rgb), .88); }
#g-copyright { --section-copyright-bg: rgba(var(--primary-color-rgb), .88); }
#g-footer > .g-container { padding-block: 80px 24px !important; }
.footer-wrapper { color: white; font: 400 15px/1.65 var(--body-font-family); }
.footer-top-row { display: grid; grid-template-columns: 1fr .8fr 1fr; align-items: start; gap: 56px; }
.footer-wrapper h4 { color: white; font: 600 23px/1.25 var(--title-font-family); margin: 0 0 12px; }
.footer-wrapper p { margin: 0 0 22px; }
.footer-wrapper a { color: white; overflow-wrap: anywhere; }
.footer-top-center { text-align: center;}
.footer-logo-icon img { width: 220px; max-width: 100%; height: auto; filter: brightness(0) invert(1); }
.footer-social-icons .g-social-items { display: flex; justify-content: center; gap: 22px; margin-top: 20px; }
.footer-social-icons .g-social a { font-size: 22px; }
.footer-bottom-row { border-top: 1px solid #ffffff30; text-align: center; margin-top: 40px; padding-top: 28px; }
.footer-copyright-text p { font-size: 13px; margin-bottom: 8px; color: #ffffffbd; }
.footer-copyright-text h6 { font: 400 11px/1.5 var(--body-font-family); letter-spacing: 3px; color: #ffffffbd; margin: 0; }
#g-copyright .g-content { padding: 0 0 20px; margin: 0; }
@media (hover: hover) and (pointer: fine) {
    .wlake-news .g-array-item:hover { background: var(--wl-cream); box-shadow: 0 4px 12px #0001; }
    .quicklinks-rect-inner-border .g-blockcontent-subcontent-block-content:hover { background: var(--primary-color); }
    .swiper-overlay-mass-times .button:hover { background: var(--primary-color); }
}
:is(.swiper-overlay-mass-times, .calendar-wrapper, .wlake-feed-wrapper, .myparish-wrapper, .footer-wrapper, .parish-headlines-rotator) a:focus-visible { outline: 3px solid var(--tertiary-color); outline-offset: 4px; }

/* Tablet: retain the template's 51rem mobile navigation breakpoint. */
@media (min-width: 51rem) and (max-width: 75.99rem) {
    .site-home #g-slideshow .swiper-overlay-mass-times { top: 60%; }
    .nav-bottom-row { align-items: center; gap: 18px; }
    .nav-logo { flex-basis: 280px; min-width: 210px; }
    #g-navigation .g-main-nav .g-toplevel { flex-wrap: wrap; gap: 0 16px; }
    #g-navigation .g-main-nav .g-toplevel > li > .g-menu-item-container { font-size: 11px; }
    .nav-info { font-size: 12px; }
    .parish-headlines-rotator .g-swiper .slide-content-wrapper { padding: 18px; }
    .calendar-feed .gcaltohtml { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .myparish-wrapper { flex-direction: column; align-items: flex-start; }
    .myparish-image { max-width: 230px; }
}
@media (max-width: 50.99rem) {
    .site-home #g-navigation, .site-sub #g-navigation { position: relative; background: #f3e3c9; }
    .nav-mainmenu-container .g-block.hidden:has(.nav-mainmenu-wrapper) { display: block !important; visibility: visible; }
    .nav-top-row { padding: 64px 0 12px; }
    .nav-links { flex-direction: column; gap: 8px; text-align: center; }
    .nav-info { font-size: 12px; }
    .nav-bottom-row { justify-content: center; padding: 10px 0 20px; }
    .nav-logo { flex: 0 1 360px; min-width: 0; }
    .nav-main-menu { display: none; } /* Gantry provides its native offcanvas menu. */
    #g-navigation .show-mobile:has(.g-logo) { display: none; } /* The same logo is present in nav-logo. */
    .fullwidth-swiper { --slideshow-height: clamp(250px, 65vw, 440px); --slideshow-height-mobile: clamp(250px, 65vw, 440px); }
    .fullwidth-swiper .swiper-slide > img { height: clamp(250px, 65vw, 440px); }
    .fullwidth-swiper .swiper-pagination-bullets { bottom: 20px; }
    .site-home #g-slideshow .swiper-overlay-mass-times { position: relative; flex: none; width: calc(100% - 40px); max-width: 560px; margin: 24px auto !important; inset: auto; transform: none; }
    .swiper-overlay-mass-times { font-size: 15px; padding: 24px; }
    .swiper-overlay-mass-times h2 { font-size: 28px; }
    .site-home #g-header { margin-top: 0 !important; padding-bottom: 32px !important; }
    .quicklinks-rect-inner-border .g-blockcontent-subcontent { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .quicklinks-rect-inner-border .g-blockcontent-subcontent-title { font-size: 18px; }
    .site-home :is(#g-feature, #g-utility, #g-expanded, #g-extension) { padding-block: 40px !important; }
    .site-home #g-utility > .g-container > .g-grid, .site-home #g-extension > .g-container > .g-grid { flex-direction: column; gap: 40px; }
    .site-home #g-utility :is(.ph-news-container, .facebook-container), .site-home #g-extension .wl-widget-container { width: 100%; flex: 0 0 auto; }
    .parish-headlines-rotator > .g-content { margin: 0 0 24px; }
    .parish-headlines-rotator .swiper-slide { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto 1fr; }
    .parish-headlines-rotator .swiper-slide > img { grid-area: 1 / 1; }
    .parish-headlines-rotator .g-swiper .g-swiper-slider .swiper-slide .slide { grid-area: 2 / 1; width: 100%; }
    .parish-headlines-rotator .g-swiper .slide-content-wrapper { padding: 24px; }
    .wlake-feed-title .g-title, .calendar-title .g-title, .wl-widget-title .g-title { font-size: 30px; margin-bottom: 24px; }
    .wlake-news .g-array-item { grid-template-columns: 90px minmax(0, 1fr); gap: 6px 16px; padding: 16px 0; }
    .wlake-news .g-array-item-image img { width: 90px; height: 90px; }
    .wlake-news .g-item-title { border: 0; font-size: 20px; }
    .wlake-news .g-content-array .g-array-item .g-array-item-text { font-size: 14px; }
    .calendar-feed .gcaltohtml { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
    .myparish-wrapper { gap: 18px; }
    .wl-widget-title p { margin-top: -12px; }
    .footer-top-row { grid-template-columns: 1fr; gap: 32px; text-align: center; }
    .footer-logo-icon img { width: 170px; }
    #g-footer > .g-container { padding-block: 48px 24px !important; }

    .nav-mainmenu-wrapper {
        display: flex;
        flex-direction: column;
    }
    .nav-mainmenu-wrapper .nav-top-row {
        order: 2;
        padding: 12px 0 12px;
    }
    .nav-mainmenu-wrapper .nav-bottom-row {
        order: 1;
    }

    .nav-mainmenu-wrapper .nav-logo img {
        max-width: 65%;
        width: 100%;
        margin: 0 auto;
    }
}
@media (max-width: 30rem) {
    .calendar-feed .gcaltohtml { grid-template-columns: 1fr; }
    .myparish-wrapper { flex-direction: column; }
    .myparish-image { width: 200px; }
}
@media (prefers-reduced-motion: reduce) {
    .wlake-news .g-array-item { transition: none; }
}

@media only screen and (min-width: 50.99rem) {
    .footer-top-right {
        text-align: right;
    }
    .footer-wrapper h4 {
        color: #D9A05B;
    }
    .footer-wrapper h4 > a {
        color: #D9A05B!important;
    }

    .crawl-space > .g-container > .g-grid:has(.nav-social-icons) {overflow: visible;}
    .footer-top-center { text-align: center; border-left: 1px solid rgba(var(--default-white-rgb),.3); border-right: 1px solid rgba(var(--default-white-rgb),.3);}

    .myparish-buttons .button {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: min(.75vw, .75rem);
    }
    .myparish-buttons .button:before {
        color: var(--default-white);
        font-family: 'Font Awesome 6 Brands';
        font-weight: 900;
        line-height: 1;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: min(1.25vw, 1.25rem);
    }
    .myparish-buttons .apple-icon-button:before {
        content: '\f179';
    }
    .myparish-buttons .google-play-icon-button:before {
        content: '\f3ab';
    }
}

@media only screen and (max-width: 50.99rem) {
    .myparish-buttons .button {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: .7rem;
    }
    .myparish-buttons .button:before {
        color: var(--default-white);
        font-family: 'Font Awesome 6 Brands';
        font-weight: 900;
        line-height: 1;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 4vw;
    }
    .myparish-buttons .apple-icon-button:before {
        content: '\f179';
    }
    .myparish-buttons .google-play-icon-button:before {
        content: '\f3ab';
    }
}
