/* Homepage featured images - force 16:9 ratio */
.td-post-featured-image {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    display: block;
    background-size: cover;
    background-position: center center;
}

/* If the featured image is inside a link */
.td-post-featured-image a {
    display: block;
    width: 100%;
    height: 100%;
}

/* Force the actual image to fill the 16:9 box */
.td-post-featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

/* Novamira fix: homepage thumbnails fit inside Newspaper cards */
body.home .td-module-thumb .td-image-wrap {
    background: #f4f4f4;
}

body.home .td-module-thumb .td-image-wrap img.entry-thumb,
body.home .td_module_wrap .entry-thumb,
body.home .td-big-grid-post .entry-thumb {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
}

/* =====================================================
 *    UTICA PHOENIX — MOBILE NAV FIX
 *    Paste in: Appearance → Customize → Additional CSS
 *    ===================================================== */

/* ── Hamburger button (hidden on desktop, shown on mobile) ── */
.up-mobile-toggle {
	  display: none;
	  cursor: pointer;
	  background: transparent;
	  border: 2px solid rgba(255,255,255,0.6);
	  border-radius: 4px;
	  padding: 6px 10px;
	  float: right;
	  position: relative;
	  z-index: 10002;
	  margin: 8px 12px 0 0;
	  line-height: 0;
}

.up-mobile-toggle .up-bar {
	  display: block;
	  width: 24px;
	  height: 3px;
	  background: #fff;
	  margin: 5px 0;
	  border-radius: 2px;
	  transition: all 0.3s ease;
}

/* ── Mobile breakpoint (≤767px) ── */
@media (max-width: 767px) {
	  .tdb_header_menu,
	  .td_block_wrap.tdb_header_menu,
	#tdi_10 {
		    display: none !important;
	}
	.up-mobile-toggle {
		    display: inline-block !important;
	}
	  .vc_row.tdi_4,
	.tdi_4.wpb_row {
		    display: flex !important;
		    align-items: center;
		    flex-wrap: nowrap;
		    overflow: visible !important;
	}
	.tdc-row {
		    padding-top: 4px !important;
		    padding-bottom: 4px !important;
	}
	  .td-header-logo img,
	.tdb_header_logo img {
		    max-height: 48px !important;
		    width: auto !important;
	}
	body {
		    overflow-x: hidden !important;
	}
	.td-main-content-wrap {
		    padding-top: 10px !important;
	}
}

/* ── Tablet breakpoint (768px–1018px): shrink nav items ── */
@media (min-width: 768px) and (max-width: 1018px) {
	  .tdb-menu > li > a,
	.tdb-menu > li > .tdb-menu-item-text {
		    padding: 0 5px !important;
		    font-size: 12px !important;
	}
}

/* ── Mobile Drawer improvements ── */
@media (max-width: 767px) {
	#td-mobile-nav {
		    width: 80% !important;
		    max-width: 300px !important;
		    height: 100vh !important;
		    overflow-y: auto !important;
		    -webkit-overflow-scrolling: touch;
		    background: #1a1a2e !important;
		    z-index: 99999 !important;
	}
	.td-menu-background {
		    background: rgba(0, 0, 0, 0.55) !important;
		    z-index: 99998 !important;
	}
	.td-mobile-container {
		    padding-top: 10px;
	}
	.td-mobile-close {
		    padding: 16px 16px !important;
		    cursor: pointer;
	}
	  .td-mobile-close span,
	.td-icon-close-mobile {
		    font-size: 22px !important;
		    color: #fff !important;
	}
	#td-mobile-nav .td-mobile-main-menu > li > a {
		    display: block !important;
		    padding: 13px 20px !important;
		    font-size: 15px !important;
		    font-weight: 600;
		    color: #f0f0f0 !important;
		    border-bottom: 1px solid rgba(255,255,255,0.1) !important;
		    line-height: 1.3;
	}
	#td-mobile-nav .td-mobile-main-menu > li > a:hover {
		    color: #ffcc00 !important;
		    background: rgba(255,255,255,0.06) !important;
	}
	#td-mobile-nav .td-mobile-main-menu .sub-menu a {
		    display: block !important;
		    padding: 10px 20px 10px 36px !important;
		    font-size: 13px !important;
		    color: #ccc !important;
		    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
	}
	#td-mobile-nav .td-mobile-main-menu .sub-menu a:hover {
		    color: #ffcc00 !important;
	}
	  .td-icon-menu-right,
	.td-element-after {
		    color: #aaa !important;
		    font-size: 14px !important;
		    float: right;
		    padding: 4px 10px 0 0;
	}
}
	}
	}
	}
	}
	}
	}
	}
	}
	}
	}
}
	}
}
	}
	}
	}
	}
	}
	}
	}
}
}
}