/***********************************************
 GLOBAL STYLES
***********************************************/

/* Hide reCAPTCHA badge (still functional) */
.grecaptcha-badge {
    visibility: hidden !important;
}

/* Center top navigation menu */
#top-menu {
    text-align: center;
}


/***********************************************
 LOGO SIZE CONTROLS (EASY TO ADJUST)
***********************************************/

/* Mobile logo size */
@media screen and (max-width: 1023px) {
    .custom-logo-link img,
    img.custom-logo {
        max-height: 100px !important;   /* ← MOBILE LOGO HEIGHT */
        width: auto;
    }
}

/* Desktop logo size */
@media screen and (min-width: 1024px) {
    .custom-logo-link img,
    img.custom-logo {
        max-height: 200px !important;   /* ← DESKTOP LOGO HEIGHT */
        width: auto;
        max-width: 600px;
    }
}


/***********************************************
 SITE TITLE + TAGLINE – HEADER ONLY
***********************************************/

/* Mobile sizing */
@media screen and (max-width: 600px) {

    .site-title,
    .site-branding .site-title {
        font-size: clamp(22px, 22px, 22px) !important;
        line-height: 1.1 !important;
        white-space: nowrap !important;
        margin-bottom: 0.25em;
    }

    .site-description,
    .site-branding .site-description {
        font-size: clamp(12px, 12px, 12px) !important;
        line-height: 1.3 !important;
        white-space: nowrap !important;
        letter-spacing: 0.12em;
        margin-left: auto;
        margin-right: auto;
    }
}

/* Desktop sizing */
@media screen and (min-width: 1024px) {

    .site-title,
    .site-branding .site-title {
        font-size: 37px !important;
        line-height: 1.1 !important;
        letter-spacing: 0.08em;
        margin-bottom: 0.35em;
    }

    .site-description,
    .site-branding .site-description {
        font-size: 21px !important;
        line-height: 1.4 !important;
        letter-spacing: 0.14em;
        margin-left: auto;
        margin-right: auto;
    }
}


/***********************************************
 HEADER HEIGHT – DESKTOP (MATCH HOME PAGE)
***********************************************/
@media screen and (min-width: 1024px) {

    .custom-header,
    .custom-header-media,
    #wp-custom-header {
        height: 870px !important;
        max-height: 870px !important;
        min-height: 870px !important;
        overflow: hidden;
    }

    .custom-header-media img,
    .custom-header-media video,
    #wp-custom-header video,
    #wp-custom-header img {
        width: 100%;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center center !important;
    }
}


/***********************************************
 HEADER HEIGHT – MOBILE (MATCH HOME PAGE)
***********************************************/
@media screen and (max-width: 1023px) {

    .custom-header,
    .custom-header-media,
    #wp-custom-header {
        height: 560px !important;
        max-height: 560px !important;
        min-height: 560px !important;
        overflow: hidden;
    }

    .custom-header-media img,
    .custom-header-media video,
    #wp-custom-header video,
    #wp-custom-header img {
        width: 100%;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center center !important;
    }
}


/***********************************************
 MOBILE FIX:
 Align Logo + Title + Tagline the SAME on all pages
***********************************************/
@media screen and (max-width: 600px) {

    .has-header-image .custom-header,
    .has-header-video .custom-header {
        display: table;
        width: 100%;
    }

    .has-header-image .site-branding,
    .has-header-video .site-branding {
        display: table-cell;
        vertical-align: bottom;
        height: 100%;
        padding-bottom: 1.5rem;
    }
}


/***********************************************
 DISABLE HORIZONTAL SCROLLING ON MOBILE
***********************************************/
html, body {
    overflow-x: hidden !important;
    width: 100% !important;
}

@media screen and (max-width: 1023px) {
    .site,
    .custom-header,
    .custom-header-media,
    #wp-custom-header {
        overflow-x: hidden !important;
    }
}


/***********************************************
 MODERN “GLASS” PANEL – BLUR HEADER MEDIA UNDER CONTENT
***********************************************/
.site-content-contain {
    background-color: rgba(50, 50, 50, 0.9);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-radius: 0;
}


/***********************************************
 FORCE LAYERS BEHIND CONTENT PANEL TO BE TRANSPARENT
***********************************************/
.site,
.site-content,
.content-area,
.site-main {
    background: transparent !important;
    background-color: transparent !important;
}


/***********************************************
 FACEBOOK FEED – CLEAN, TIGHT LAYOUT
***********************************************/
.efbl-halfwidth-skin.added_photos.efbl-story-wrapper,
.efbl-halfwidth-skin.added_photos.efbl-story-wrapper h2,
.efbl-halfwidth-skin.added_photos.efbl-story-wrapper p,
.efbl-halfwidth-skin.added_video.efbl-story-wrapper,
.efbl-halfwidth-skin.added_video.efbl-story-wrapper h2,
.efbl-halfwidth-skin.added_video.efbl-story-wrapper p {
    color: #ffffff !important;
}

.efbl-halfwidth-skin.added_photos.efbl-story-wrapper,
.efbl-halfwidth-skin.added_video.efbl-story-wrapper {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 10px 0 8px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
}

.efbl-halfwidth-skin.added_photos .efbl-story-wrapper:first-child,
.efbl-halfwidth-skin.added_video .efbl-story-wrapper:first-child {
    border-top: none !important;
}

.efbl-story-wrapper .efbl-story-inner {
    padding: 0 !important;
    margin: 0 !important;
}

.efbl-story-wrapper h2,
.efbl-story-wrapper p {
    margin-top: 0.2em !important;
    margin-bottom: 0.35em !important;
}

.efbl-halfwidth-skin.added_photos.efbl-story-wrapper *,
.efbl-halfwidth-skin.added_video.efbl-story-wrapper * {
    border: none !important;
    box-shadow: none !important;
}

.efbl-halfwidth-skin.added_photos.efbl-story-wrapper img,
.efbl-halfwidth-skin.added_video.efbl-story-wrapper img {
    box-shadow: none !important;
    outline: none !important;
}


/***********************************************
 FACEBOOK FEED – KILL IMAGE UNDERLINE COMPLETELY
***********************************************/
.efbl-story-wrapper a,
.efbl-story-wrapper a:hover,
.efbl-story-wrapper a:focus {
    text-decoration: none !important;
    border: none !important;
    box-shadow: none !important;
    background-image: none !important;
}

.efbl-story-wrapper img,
.efbl-story-wrapper img:hover,
.efbl-story-wrapper img:focus {
    border: none !important;
    box-shadow: none !important;
}

.efbl-story-wrapper .efbl-image,
.efbl-story-wrapper .efbl-image:hover,
.efbl-story-wrapper .efbl-image a,
.efbl-story-wrapper .efbl-image a:hover {
    border: none !important;
    box-shadow: none !important;
}


/***********************************************
 FACEBOOK FEED – REMOVE SHARE + LIKE/COMMENT ROW
***********************************************/
.efbl-view-share,
.efbl-view-share * {
    display: none !important;
}

.efbl-story-wrapper .efbl-d-flex:has(.efbl-view-share),
.efbl-story-wrapper .efbl-story-footer:has(.efbl-view-share) {
    display: none !important;
}


/***********************************************
 FACEBOOK FEED – MOBILE LEFT EDGE FIX
***********************************************/
@media screen and (max-width: 600px) {

    .efbl-row,
    .efbl-stories-wrap,
    .efbl-wrap,
    .efbl-halfwidth-skin {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .efbl-story-wrapper {
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
    }

    .efbl-author-avatar,
    .efbl-author-avatar img {
        margin-left: 0 !important;
        padding-left: 0 !important;
        transform: translateX(0) !important;
    }
}


/***********************************************
 HOME PAGE ONLY – HEADER MEDIA CROP ANCHOR
***********************************************/
body.home .custom-header-media img,
body.home .custom-header-media video,
body.home #wp-custom-header img,
body.home #wp-custom-header video,
body.front-page .custom-header-media img,
body.front-page .custom-header-media video,
body.front-page #wp-custom-header img,
body.front-page #wp-custom-header video {
    object-position: center 20% !important;