/* 
TRIPOD CUSTOM STYLESHEET
-------------------------

Add your custom styles here instead of modifying style.css directly
so it is easier to update the theme.

*/

/* Header Logo and Menu Alignment - Logo on top of menu */
header #header-container {
    display: flex;
    flex-direction: column;
}

header #header-container .row {
    display: flex;
    flex-direction: column;
    align-items: center;
}

header #header-container .logo {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    width: 100%;
    text-align: center;
    padding: 20px 0 10px 0;
}

header #header-container .logo img {
    max-height: 80px;
    width: auto;
    display: block;
    margin: 0 auto;
}

header #header-container .logo a {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    cursor: pointer;
}

/* Ensure logo image also shows pointer cursor on hover */
header #header-container .logo a:hover,
header #header-container .logo a:hover img {
    cursor: pointer;
}

/* Also target logo links in different structures */
header #header-container .logo > a,
header #header-container .logo .align-middle > a,
header #header-container .align-middle > a {
    cursor: pointer;
}

header #header-container .logo > a:hover,
header #header-container .logo .align-middle > a:hover,
header #header-container .align-middle > a:hover {
    cursor: pointer;
}

/* Navigation alignment - ensure menu items are vertically centered and positioned below logo */
/* Force center alignment at all viewport widths */
header #header-container .row .menu.columns,
header #header-container .row .menu.align-top,
header #header-container .row .menu.align-right,
header #header-container .row .menu {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding-top: 0;
    margin-top: 0;
    width: 100% !important;
    text-align: center !important;
}

header #header-container .row .menu.columns nav.main-menu,
header #header-container .row .menu.align-top nav.main-menu,
header #header-container .row .menu.align-right nav.main-menu,
header #header-container .row .menu nav.main-menu {
    margin-top: 0;
    padding-top: 0;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

header #header-container .row .menu.columns .cosmo-menu,
header #header-container .row .menu.align-top .cosmo-menu,
header #header-container .row .menu.align-right .cosmo-menu,
header #header-container .row .menu .cosmo-menu {
    margin-top: 0;
    padding-top: 0;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Ensure menu ul lists are centered */
header #header-container .row .menu.columns ul,
header #header-container .row .menu.align-top ul,
header #header-container .row .menu.align-right ul,
header #header-container .row .menu ul,
header #header-container .row .menu.columns ul.sf-menu,
header #header-container .row .menu.align-top ul.sf-menu,
header #header-container .row .menu.align-right ul.sf-menu,
header #header-container .row .menu ul.sf-menu {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
}

/* Remove menu item animations on initial load and prevent white space/margin issues */
header #header-container .row .menu.columns,
header #header-container .row .menu.align-top {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: auto !important;
}

header #header-container .row .menu.columns nav.main-menu,
header #header-container .row .menu.align-top nav.main-menu,
header #header-container .row .menu.columns .cosmo-menu,
header #header-container .row .menu.align-top .cosmo-menu {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: auto !important;
}

header #header-container .row .menu.columns ul,
header #header-container .row .menu.align-top ul,
header #header-container .row .menu.columns ul.sf-menu,
header #header-container .row .menu.align-top ul.sf-menu {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
}

header #header-container .row .menu.columns li,
header #header-container .row .menu.align-top li {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0;
    margin-right: 10px;
    padding: 0 !important;
    min-height: 0 !important;
    height: auto !important;
}

header #header-container .row .menu.columns li:last-child,
header #header-container .row .menu.align-top li:last-child {
    margin-right: 0;
}

header #header-container .row .menu.columns li a,
header #header-container .row .menu.align-top li a {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0;
    margin-right: 0;
    padding: 10px 15px !important;
    min-height: 0 !important;
    display: block;
}

/* Override inline margin-top styles from initHeaderVerticalAlign */
header #header-container nav.main-menu,
header #header-container .cosmo-menu,
header #header-container .align-bottom,
header #header-container .menu .align-bottom,
header #header-container .row .menu nav.main-menu,
header #header-container .row .menu .cosmo-menu {
    margin-top: 0 !important;
    margin: 0 !important;
}

/* Remove margin-top from logo align-middle elements */
header #header-container .logo .align-middle,
header #header-container .align-middle {
    margin-top: 0 !important;
}

/* Remove all animations and transitions */
header #header-container .row .menu.columns,
header #header-container .row .menu.align-top,
header #header-container .row .menu.columns nav.main-menu,
header #header-container .row .menu.align-top nav.main-menu,
header #header-container .row .menu.columns .cosmo-menu,
header #header-container .row .menu.align-top .cosmo-menu,
header #header-container .row .menu.columns ul,
header #header-container .row .menu.align-top ul,
header #header-container .row .menu.columns ul.sf-menu,
header #header-container .row .menu.align-top ul.sf-menu,
header #header-container .row .menu.columns li,
header #header-container .row .menu.align-top li,
header #header-container .row .menu.columns li a,
header #header-container .row .menu.align-top li a {
    animation: none !important;
    transition: none !important;
    -webkit-animation: none !important;
    -webkit-transition: none !important;
    -moz-animation: none !important;
    -moz-transition: none !important;
    -o-animation: none !important;
    -o-transition: none !important;
    animation-delay: 0s !important;
    transition-delay: 0s !important;
    -webkit-animation-delay: 0s !important;
    -webkit-transition-delay: 0s !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Ensure header is visible in full width view */
header#top {
    display: block !important;
    visibility: visible !important;
    position: relative !important;
    z-index: 10 !important;
    width: 100% !important;
}

header #header-container {
    display: block !important;
    visibility: visible !important;
    position: relative !important;
    z-index: 10 !important;
    width: 100% !important;
}

/* Ensure header rows are visible */
header #header-container .row {
    display: block !important;
    visibility: visible !important;
    width: 100% !important;
}

/* Ensure header is not hidden by full width content */
.full_width_row + header#top,
section#main.full_width + header#top {
    display: block !important;
    visibility: visible !important;
}

/* Disable lightbox on image clicks - remove zoom overlay */
.zoom-image {
    display: none !important;
}

/* Prevent lightbox links from being clickable */
a[data-rel^='prettyPhoto'] {
    pointer-events: none !important;
    cursor: default !important;
}

/* Remove pointer cursor from images that would trigger lightbox */
a[data-rel^='prettyPhoto'] img,
.wp-image-* a img {
    cursor: default !important;
}

/* Remove pointer cursor from all images and image links since lightbox is disabled */
/* Exception: Logo images should show pointer cursor */
img:not(header #header-container .logo img),
a img:not(header #header-container .logo a img),
a:hover img:not(header #header-container .logo a:hover img),
.entry-content img,
.post-content img,
.page-content img,
.content img,
article img,
section img,
.wp-post-image,
.post-thumbnail img,
.featured-image img,
.attachment-post-thumbnail,
.attachment-full,
.attachment-large,
.attachment-medium,
.attachment-thumbnail,
img[class*="wp-image-"],
img[class*="attachment-"],
.gallery img,
.wp-block-gallery img,
.gallery-item img,
.widget img,
.sidebar img,
#main img:not(header #header-container .logo img),
#content img,
.container img,
.row img,
.columns img {
    cursor: default !important;
}

/* Ensure logo images are excluded from the default cursor rule */
header #header-container .logo img,
header #header-container .logo a img,
header #header-container .align-middle img,
header #header-container .align-middle a img {
    cursor: pointer !important;
}

/* Remove pointer cursor from links containing images */
/* Exception: Logo links should show pointer cursor */
a:has(img):not(header #header-container .logo a):not(header #header-container .align-middle a),
a[href*=".jpg"]:not(header #header-container .logo a):not(header #header-container .align-middle a),
a[href*=".jpeg"]:not(header #header-container .logo a):not(header #header-container .align-middle a),
a[href*=".png"]:not(header #header-container .logo a):not(header #header-container .align-middle a),
a[href*=".gif"]:not(header #header-container .logo a):not(header #header-container .align-middle a),
a[href*=".webp"]:not(header #header-container .logo a):not(header #header-container .align-middle a) {
    cursor: default !important;
}


/* Hide post date/time information */
.entry-content-meta-date,
.meta-details-date,
.entry-meta-date,
.post-date,
.entry-date,
article .date,
.post .date,
.entry-content-meta-list .entry-content-meta-date,
.meta-details-list .meta-details-date {
    display: none !important;
}

/* Hide Facebook share/like links below slideshow on homepage */
.home .share-container,
.home .addthis_toolbox,
.home .addthis_button_facebook_like,
.home .fb-like,
.home iframe[src*="facebook.com"],
.home [class*="facebook"],
.home [id*="facebook"],
.home .fb_iframe_widget,
.home .fb-like-container,
body.home .share-container,
body.home .addthis_toolbox,
body.home .addthis_button_facebook_like {
    display: none !important;
}

/* Hide Facebook share buttons that appear after slideshow elements */
.element + .share-container,
.element + .addthis_toolbox,
.slideshow + .share-container,
.slideshow + .addthis_toolbox,
.row + .share-container,
.row + .addthis_toolbox {
    display: none !important;
}

/* Remove bold font-weight from post/page titles */
.post h1.post-title,
.post h2.post-title,
.page h1.post-title,
.page h2.post-title,
article h1.post-title,
article h2.post-title,
.single-post h1.post-title,
.single-post h2.post-title,
h1.post-title,
h2.post-title,
h1.page-title,
h2.page-title,
.entry-title,
.post .entry-title,
.page .entry-title {
    font-weight: normal !important;
}

/* Responsive: Force menu center alignment at all viewport widths */
@media only screen and (max-width: 767px) {
    header #header-container .row .menu.columns,
    header #header-container .row .menu.align-top,
    header #header-container .row .menu.align-right,
    header #header-container .row .menu {
        justify-content: center !important;
        text-align: center !important;
    }
    
    header #header-container .row .menu.columns nav.main-menu,
    header #header-container .row .menu.align-top nav.main-menu,
    header #header-container .row .menu.align-right nav.main-menu,
    header #header-container .row .menu nav.main-menu,
    header #header-container .row .menu.columns .cosmo-menu,
    header #header-container .row .menu.align-top .cosmo-menu,
    header #header-container .row .menu.align-right .cosmo-menu,
    header #header-container .row .menu .cosmo-menu {
        justify-content: center !important;
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    
    header #header-container .row .menu.columns ul,
    header #header-container .row .menu.align-top ul,
    header #header-container .row .menu.align-right ul,
    header #header-container .row .menu ul,
    header #header-container .row .menu.columns ul.sf-menu,
    header #header-container .row .menu.align-top ul.sf-menu,
    header #header-container .row .menu.align-right ul.sf-menu,
    header #header-container .row .menu ul.sf-menu {
        justify-content: center !important;
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    header #header-container .row .menu.columns,
    header #header-container .row .menu.align-top,
    header #header-container .row .menu.align-right,
    header #header-container .row .menu {
        justify-content: center !important;
        text-align: center !important;
    }
    
    header #header-container .row .menu.columns nav.main-menu,
    header #header-container .row .menu.align-top nav.main-menu,
    header #header-container .row .menu.align-right nav.main-menu,
    header #header-container .row .menu nav.main-menu,
    header #header-container .row .menu.columns .cosmo-menu,
    header #header-container .row .menu.align-top .cosmo-menu,
    header #header-container .row .menu.align-right .cosmo-menu,
    header #header-container .row .menu .cosmo-menu {
        justify-content: center !important;
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* Override any align-right classes on menu elements */
header #header-container .row .menu.align-right {
    text-align: center !important;
}

header #header-container .row .menu.align-right nav.main-menu,
header #header-container .row .menu.align-right .cosmo-menu {
    text-align: center !important;
    justify-content: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Ensure featured images are visible on single post pages */
.single #main > .featimg,
.page #main > .featimg {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
}

.single #main > .featimg img,
.page #main > .featimg img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    object-fit: contain !important; /* Preserve full image without cropping */
}

/* Hide featmask */
.single #main > .featimg > .featmask,
.page #main > .featimg > .featmask {
    display: none !important;
    visibility: hidden !important;
}

/* Hide post titles on posts and pages */
.single .post-title,
.page .post-title,
.single h1.post-title,
.page h1.post-title,
.single .main-container .post-title,
.page .main-container .post-title,
.single .main-container h1.post-title,
.page .main-container h1.post-title,
.single article .post-title,
.page article .post-title,
.single article h1.post-title,
.page article h1.post-title {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

/* Hide image captions (wp-caption-text) on post pages */
.single .wp-caption-text,
.single .wp-caption .wp-caption-text,
.single [id^="attachment_"] .wp-caption-text,
.single article .wp-caption-text,
.single .content .wp-caption-text,
.single .entry-content .wp-caption-text,
.single .post-content .wp-caption-text,
.single p.wp-caption-text,
.single div.wp-caption-text {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

/* Reduce spacing on wp-caption containers when caption is hidden */
.single .wp-caption,
.single [id^="attachment_"] {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.single .wp-caption img,
.single [id^="attachment_"] img {
    margin-bottom: 0 !important;
}

.single #main > .featimg .featbg,
.page #main > .featimg .featbg {
    display: block !important;
    visibility: visible !important;
    width: 100% !important;
}

.single #main > .featimg.cropped-img {
    overflow: hidden !important;
    position: relative !important;
    display: block !important;
}

.single #main > .featimg.cropped-img .featbg {
    overflow: hidden !important;
    display: block !important;
    position: relative !important;
    width: 100% !important;
}

.single #main > .featimg.cropped-img img {
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    object-position: center !important;
    max-width: 100% !important;
    display: block !important;
    margin: 0 !important;
    /* No scaling - image stays at natural aspect ratio */
    /* Container height will be set via JavaScript to 80% of natural height */
    /* Image will be positioned to show middle 80% */
}

/* Navigation arrows on featured image */
.single #main > .featimg {
    position: relative;
}

.featimg-navigation {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    pointer-events: none;
}

.featimg-navigation a {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.5);
    color: white;
    text-decoration: none;
    pointer-events: all;
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 3px;
}

.featimg:hover .featimg-navigation a {
    opacity: 1;
}

.featimg-navigation a:hover {
    background: rgba(0, 0, 0, 0.7);
    opacity: 1 !important;
}

.featimg-nav-left {
    left: 15px;
}

.featimg-nav-right {
    right: 15px;
}

.featimg-navigation i {
    font-size: 24px;
    line-height: 1;
}


