.post, .page {
    margin-bottom: 0;
}

.search-popup--style-two .site-header.layout--default .search-form-wrap {
	position: fixed;
    left: 0;
    width: 100%;
    height: 100%;
    top: 0;
    background-color: #252424d9;
    z-index: 10;
}

.search-popup--style-two .site-header.layout--default .search-form-wrap .search-form {
	margin-top: 50vh;
}

.search-popup--style-two input.search-field {
    background-color: transparent;
    border: none;
    border-bottom: 2px solid var(--theme-color-red);
    width: 40%;
    font-size: 25px;
}

.search-popup--style-two input.search-field:focus {
	border: none;
	outline: none;
	border-bottom: 3px solid var(--theme-color-red);
	color: #ffffff;
}


.search-popup--style-two input.search-field::placeholder {
	color: #ffffff;
}

.search-popup--style-two input.search-field:focus::placeholder {
	color: #ffffff;
    font-size: 28px;
}

.search-popup--style-two .search_close_btn {
	position: absolute;
    right: 20px;
    top: 20px;
    font-size: 37px;
    z-index: 999;
    color: var(--theme-color-red);
}

.search-popup--style-two .search_close_btn:hover {
	cursor: pointer;
}

.search-popup--style-two .search-submit {
    display: block;
    text-align: center;
    margin: 0 auto;
    margin-top: 10px;
}

body.search-popup--style-one .search_close_btn,
.search_close_btn {
    display: none;
}

.bodynoscroll .search_close_btn {
    display: block;
    position: absolute;
    right: 20px;
    top: 20px;
}

/** search layout 3 **/

.search-popup--style-three .site-header.layout--default .search-form-wrap {
    position: fixed;
    left: 0px;
    width: 100%;
    padding: 80px 0px;
    top: 0;
    border-top: none;
    box-shadow: 0px 3px 5px -1px rgb(0 0 0 / 20%);
    -webkit-box-shadow: 0px 3px 5px -1px rgb(0 0 0 / 20%);
    -moz-box-shadow: 0px 3px 5px -1px rgb(0 0 0 / 20%);
    z-index: 1;
}

.search-popup--style-three.logged-in .site-header.layout--default .search-form-wrap {
    top: 32px;
}

.search-popup--style-three .site-header.layout--default .search-form-wrap form {
    width: 60%;
    margin: 0 auto;
    display: flex;
}

.search-form-wrap form label {
    width: 100%;
    margin-right: 10px;
}

.search-popup--style-three .site-header.layout--default .search-form-wrap .search-field {
    width: 100%;
    height: 46px;
}

.digital_newspaper_dark_mode.search-popup--style-three .search-field {
    background: #27272b;
    border-color: #343434;
    color: var(--white-text);
}

.search-popup--style-three .site-header.layout--default .search-submit {
    padding-bottom: 10px;
    text-transform: uppercase;
    padding: 15px 40px;
}

.search-popup--style-three input.search-field:focus::placeholder,
.search-popup--style-three input.search-field {
    font-size: 20px;
    outline: none;
}

.search-popup--style-three .site-header.layout--default .search-wrap {
    position: initial;
}

.search-popup--style-three .search_close_btn {
    position: absolute;
    right: 20px;
    top: 20px;
    z-index: 2;
}

body.search-popup--style-three.logged-in .site-header.layout--two .search_close_btn,
body.search-popup--style-three.logged-in .site-header.layout--three .search_close_btn {
    top: 52px;
}

.search-popup--style-three .search_close_btn:hover {
    cursor: pointer;
}

.search-popup--style-three .search_close_btn i {
    color: #fff;
    z-index: 99999;
    background-color: var(--theme-color-red);
    padding: 10px 15px 9px;
    border-radius: 2px;
    display: block;
    font-size: 0.86rem;
}

@media(max-width: 769px) {
    .search-popup--style-three .site-header.layout--default .search-form-wrap {
        padding: 50px 0 20px;
    }

    .search-popup--style-three.admin-bar .search-form-wrap {
        margin-top: 46px;
    }

    body.search-popup--style-three .site-header.layout--two .search_close_btn,
    body.search-popup--style-three .site-header.layout--three .search_close_btn {
        right: 20px;
        top: 9px;
    }

    .search-popup--style-three .site-header.layout--default .search-submit {
        padding: 10px 40px;
    }
}

body.digital-newspaper-post-blocks-hover--effect-one .row .news-carousel-post-wrap > div .blaze_box_wrap:hover {
    box-shadow: -2px 6px 15px 0px rgb(53 52 52 / 7%);
    -webkit-box-shadow: -2px 6px 15px 0px rgb(53 52 52 / 7%);
    -moz-box-shadow: -2px 6px 15px 0px rgba(53,52,52,0.85);
    transform: translateY(-2px);
}

footer .widget .opinions-items-wrap.column--one .blaze_box_wrap {
    background-color: transparent;
}

footer .opinions-items-wrap .opinion-item {
    background-color: transparent; 
}

/** additional css **/

.dark_bk .widget.widget_block:has(div.wp-block-spacer),
.dark_bk .widget.widget_block:has(hr.wp-block-separator) {
    background-color: transparent;
}

.single #theme-content, .archive #theme-content {
    padding-bottom: 20px;

}

.site-info.blaze_copyright_align_center {
    text-align: center;
}

/* live search */
.search-form-wrap .search-posts-wrap {
    max-height: 600px;
    overflow-y: scroll;
    padding-right: 8px;
}

.search-form-wrap .search-posts-wrap::-webkit-scrollbar {
    width: 4px;
}

.search-form-wrap .search-posts-wrap::-webkit-scrollbar-thumb {
    background-color: var(--theme-color-red);
    border-radius: 20px;
}

.search-results-wrap {
    padding: 15px 3px 0;
}

.search-results-wrap .article-item {
    display: flex;
    align-items: center;
    -webkit-align-items:center;
    padding: 10px 0;
    border-bottom: 1px solid var(--border-bottom-color);
}

.search-results-wrap .article-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.search-results-wrap .article-item .post-thumb-wrap {
    flex: 0 1 20%;
    margin-right: 15px;
}

.search-results-wrap .article-item .post-thumb-wrap img {
    display: block;
}

.search-results-wrap .article-item .post-element {
    flex: 0 1 80%;
}

.search-results-wrap .article-item .post-element .post-title {
    margin: 0 0 6px;
    line-height: 22px;
    font-size: calc(var(--post-title-size) * 0.68);
}

.search-results-wrap .article-item .post-element .post-date a {
    text-decoration: none;
}

.search-results-wrap .article-item .post-element .post-date time {
    color: var(--meta-text-color);
    font-size: calc(var(--meta-size)*0.93);
    font-family: var(--meta-family);
    font-weight: var(--meta-weight);
    text-transform: var(--meta-texttransform);
}

.search-results-wrap .view-all-search-button {
    padding: 8px 15px;
    width: 100%;
    display: block;
    background-color: var(--theme-color-red);
    color: var(--white-text);
    text-decoration: none;
    margin-top: 20px;
    border-radius: 2px;
    text-align: center;
    text-transform: capitalize;
    font-size: 0.96rem;
    letter-spacing: 0.3px;
}

.search-form.retrieving-posts label {
    position: relative;
}

.search-form.retrieving-posts label:before {
    content: '\f110';
    font-family: 'Font Awesome 5 Free';
    font-weight: 600;
    display: inline-block;
    color: var(--live-search-color);
    background: var(--live-search-bk-color);
    position: absolute;
    right: 5px;
    border-radius: 50%;
    top: 6px;
    font-size: 1.1rem;
    -webkit-animation: tie-spin 3s infinite linear;
    animation: tie-spin 3s infinite linear;
}

.search-popup--style-three .search-form.retrieving-posts label:before {
    top: 10px;
    right: 8px;
}

.search-popup--style-two .search-form.retrieving-posts label:before {
    background-color: transparent;
    color: var(--white-text);
    right: 35px;
}

@keyframes tie-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.search-popup--style-three .search-results-wrap {
    width: 57%;
    background-color: var(--inner-container-bk);
    margin: 0 auto;
}

.search-popup--style-three .search-results-wrap .post-thumb-wrap img {
    width: 85px;
    height: 70px;
}

.search-popup--style-three .search-results-wrap .article-item .post-thumb-wrap {
    flex: 0 1 8%;
}

.search-popup--style-three .search-results-wrap .article-item .post-element {
    flex: 0 1 92%;
}

/* live search no image */
.search-results-wrap .post-thumb-wrap.no-feat-img {
    display: none;
}
/* WildMagPro v18: extra Front Sections + equal aligned post cards */
body.home .digital-newspaper-section.full-width-section .news-grid-post-wrap,
body.home .digital-newspaper-section.leftc-rights-section .news-grid-post-wrap,
body.home .digital-newspaper-section.lefts-rightc-section .news-grid-post-wrap,
body.home .digital-newspaper-section.bottom-full-width-section .news-grid-post-wrap,
body.page .digital-newspaper-section.full-width-section .news-grid-post-wrap,
body.page .digital-newspaper-section.leftc-rights-section .news-grid-post-wrap,
body.page .digital-newspaper-section.lefts-rightc-section .news-grid-post-wrap,
body.page .digital-newspaper-section.bottom-full-width-section .news-grid-post-wrap {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}

body.home .digital-newspaper-section .news-grid-post-wrap.column--three,
body.page .digital-newspaper-section .news-grid-post-wrap.column--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.home .digital-newspaper-section .news-grid-post-wrap.column--two,
body.page .digital-newspaper-section .news-grid-post-wrap.column--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.home .digital-newspaper-section .news-grid-post-wrap article.grid-item,
body.page .digital-newspaper-section .news-grid-post-wrap article.grid-item,
body.home .digital-newspaper-section .news-list-post-wrap article.list-item,
body.page .digital-newspaper-section .news-list-post-wrap article.list-item,
body.home .digital-newspaper-section .news-carousel-post-wrap article.carousel-item,
body.page .digital-newspaper-section .news-carousel-post-wrap article.carousel-item {
    min-width: 0;
    height: 100%;
    display: flex !important;
    flex-direction: column;
}

body.home .digital-newspaper-section .news-grid-post-wrap article .blaze_box_wrap,
body.page .digital-newspaper-section .news-grid-post-wrap article .blaze_box_wrap,
body.home .digital-newspaper-section .news-list-post-wrap article .blaze_box_wrap,
body.page .digital-newspaper-section .news-list-post-wrap article .blaze_box_wrap,
body.home .digital-newspaper-section .news-carousel-post-wrap article .blaze_box_wrap,
body.page .digital-newspaper-section .news-carousel-post-wrap article .blaze_box_wrap {
    display: flex !important;
    flex-direction: column;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}

body.home .digital-newspaper-section .news-grid-post-wrap .post-thumb-wrap,
body.page .digital-newspaper-section .news-grid-post-wrap .post-thumb-wrap,
body.home .digital-newspaper-section .news-list-post-wrap .post-thumb-wrap,
body.page .digital-newspaper-section .news-list-post-wrap .post-thumb-wrap,
body.home .digital-newspaper-section .news-carousel-post-wrap .post-thumb-wrap,
body.page .digital-newspaper-section .news-carousel-post-wrap .post-thumb-wrap {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: var(--noimg-bk-color, #f2f2f2);
    flex: 0 0 auto;
}

body.home .digital-newspaper-section .news-grid-post-wrap .post-thumb-wrap > a,
body.page .digital-newspaper-section .news-grid-post-wrap .post-thumb-wrap > a,
body.home .digital-newspaper-section .news-list-post-wrap .post-thumb-wrap > a,
body.page .digital-newspaper-section .news-list-post-wrap .post-thumb-wrap > a,
body.home .digital-newspaper-section .news-carousel-post-wrap .post-thumb-wrap > a,
body.page .digital-newspaper-section .news-carousel-post-wrap .post-thumb-wrap > a,
body.home .digital-newspaper-section .news-grid-post-wrap .post-thumb-wrap img,
body.page .digital-newspaper-section .news-grid-post-wrap .post-thumb-wrap img,
body.home .digital-newspaper-section .news-list-post-wrap .post-thumb-wrap img,
body.page .digital-newspaper-section .news-list-post-wrap .post-thumb-wrap img,
body.home .digital-newspaper-section .news-carousel-post-wrap .post-thumb-wrap img,
body.page .digital-newspaper-section .news-carousel-post-wrap .post-thumb-wrap img {
    display: block;
    width: 100%;
    height: 100% !important;
}

body.home .digital-newspaper-section .news-grid-post-wrap .post-thumb-wrap img,
body.page .digital-newspaper-section .news-grid-post-wrap .post-thumb-wrap img,
body.home .digital-newspaper-section .news-list-post-wrap .post-thumb-wrap img,
body.page .digital-newspaper-section .news-list-post-wrap .post-thumb-wrap img,
body.home .digital-newspaper-section .news-carousel-post-wrap .post-thumb-wrap img,
body.page .digital-newspaper-section .news-carousel-post-wrap .post-thumb-wrap img {
    object-fit: cover !important;
}

body.home .digital-newspaper-section .news-grid-post-wrap .post-element,
body.page .digital-newspaper-section .news-grid-post-wrap .post-element,
body.home .digital-newspaper-section .news-list-post-wrap .post-element,
body.page .digital-newspaper-section .news-list-post-wrap .post-element,
body.home .digital-newspaper-section .news-carousel-post-wrap .post-element,
body.page .digital-newspaper-section .news-carousel-post-wrap .post-element {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    box-sizing: border-box;
}

body.home .digital-newspaper-section .post-element-inner,
body.page .digital-newspaper-section .post-element-inner {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

body.home .digital-newspaper-section .post-title,
body.home .digital-newspaper-section .post-title a,
body.page .digital-newspaper-section .post-title,
body.page .digital-newspaper-section .post-title a {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.home .digital-newspaper-section .post-title,
body.page .digital-newspaper-section .post-title {
    min-height: calc(1.45em * 3);
}

body.home .digital-newspaper-section .post-excerpt,
body.page .digital-newspaper-section .post-excerpt {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.home .digital-newspaper-section .news-list-post-wrap.column--two,
body.page .digital-newspaper-section .news-list-post-wrap.column--two {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}

body.home .digital-newspaper-section .news-list-post-wrap.column--one,
body.page .digital-newspaper-section .news-list-post-wrap.column--one {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 20px;
}

body.home .digital-newspaper-section .news-carousel .owl-stage,
body.page .digital-newspaper-section .news-carousel .owl-stage {
    display: flex;
    align-items: stretch;
}

body.home .digital-newspaper-section .news-carousel .owl-item,
body.page .digital-newspaper-section .news-carousel .owl-item {
    display: flex;
    height: auto;
}

body.home .digital-newspaper-section .news-carousel .owl-item > *,
body.page .digital-newspaper-section .news-carousel .owl-item > * {
    width: 100%;
}

@media (max-width: 991px) {
    body.home .digital-newspaper-section .news-grid-post-wrap,
    body.home .digital-newspaper-section .news-grid-post-wrap.column--four,
    body.home .digital-newspaper-section .news-grid-post-wrap.column--three,
    body.page .digital-newspaper-section .news-grid-post-wrap,
    body.page .digital-newspaper-section .news-grid-post-wrap.column--four,
    body.page .digital-newspaper-section .news-grid-post-wrap.column--three {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    body.home .digital-newspaper-section .news-grid-post-wrap,
    body.home .digital-newspaper-section .news-grid-post-wrap.column--four,
    body.home .digital-newspaper-section .news-grid-post-wrap.column--three,
    body.home .digital-newspaper-section .news-grid-post-wrap.column--two,
    body.home .digital-newspaper-section .news-list-post-wrap.column--two,
    body.page .digital-newspaper-section .news-grid-post-wrap,
    body.page .digital-newspaper-section .news-grid-post-wrap.column--four,
    body.page .digital-newspaper-section .news-grid-post-wrap.column--three,
    body.page .digital-newspaper-section .news-grid-post-wrap.column--two,
    body.page .digital-newspaper-section .news-list-post-wrap.column--two {
        grid-template-columns: 1fr;
    }
}


/* ==========================================================================
   WildMagPro v27 — Universal Image Containment Fix
   Root cause: <figure class="post-thumb"> elements have fixed pixel heights
   but no overflow:hidden, and their <img> children have no object-fit,
   causing images to render at natural size and bleed outside their block
   into adjacent sidebar / ad columns.

   Fix strategy: three layers —
   1. Global baseline — every post-thumb figure + img is contained.
   2. Component-specific overrides — banner layouts 5 & 6, grid, list,
      carousel, filter, widget, and sidebar contexts with correct aspect
      ratios / heights where needed.
   3. Responsive safety net — ensures containment at all breakpoints.
   ========================================================================== */

/* ------------------------------------------------------------------
   LAYER 1 — Global baseline
   Every figure that acts as a thumbnail wrapper must clip its content.
   ------------------------------------------------------------------ */

figure.post-thumb,
figure.post-thumb-wrap,
.post_thumb_image,
.post_thumb_image.post-thumb {
    overflow: hidden !important;
    position: relative;
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Every img inside any thumbnail container is fully covered */
figure.post-thumb img,
figure.post-thumb-wrap img,
.post_thumb_image img,
.post_thumb_image.post-thumb img,
.post-thumb > a > img,
.post-thumb > a img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    max-width: 100%;
}

/* Anchor wrappers inside figures must fill the figure */
figure.post-thumb > a,
figure.post-thumb-wrap > a,
.post_thumb_image > a,
.post_thumb_image.post-thumb > a,
.post_thumb_image > figure > a {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* ------------------------------------------------------------------
   LAYER 2A — Banner Layout 5 containment
   Fixed-height post-thumb figures must clip + cover their images.
   ------------------------------------------------------------------ */

/* Main slider/feature article — large hero */
.banner-layout--five .main-banner-wrap article .post-thumb {
    overflow: hidden !important;
    height: 581px;
    max-height: 581px;
}

/* List posts (sidebar articles) */
.banner-layout--five .main-banner-list-posts article .post-thumb {
    overflow: hidden !important;
    height: 212px;
    max-height: 212px;
}

/* Grid/carousel posts */
.banner-layout--five .main-banner-grid-posts article .post-thumb {
    overflow: hidden !important;
    height: 170px;
    max-height: 170px;
}

/* All imgs inside banner-layout--five post-thumb */
.banner-layout--five article .post-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ------------------------------------------------------------------
   LAYER 2B — Banner Layout 6 containment
   ------------------------------------------------------------------ */

.banner-layout--six .main-banner-wrap article .post-thumb,
.banner-layout--six .row .main-banner-trailing-posts .post-thumb,
.banner-layout--six .row .main-banner-trailing-posts figure.post-thumb {
    overflow: hidden !important;
    position: relative;
}

.banner-layout--six article .post-thumb img,
.banner-layout--six .row .main-banner-trailing-posts figure.post-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ------------------------------------------------------------------
   LAYER 2C — News Grid sections (all layouts)
   ------------------------------------------------------------------ */

.news-grid-post-wrap figure.post-thumb-wrap,
.news-grid .post-thumb-wrap {
    overflow: hidden !important;
    position: relative;
    display: block;
    width: 100%;
}

.news-grid-post-wrap figure.post-thumb-wrap img,
.news-grid .post-thumb-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ------------------------------------------------------------------
   LAYER 2D — News List sections (all layouts)
   ------------------------------------------------------------------ */

.news-list-post-wrap figure.post-thumb-wrap,
.news-list .post-thumb-wrap {
    overflow: hidden !important;
    position: relative;
    display: block;
    width: 100%;
}

.news-list-post-wrap figure.post-thumb-wrap img,
.news-list .post-thumb-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ------------------------------------------------------------------
   LAYER 2E — News Carousel sections
   ------------------------------------------------------------------ */

.news-carousel .post-thumb-wrap {
    overflow: hidden !important;
}

.news-carousel .post-thumb-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ------------------------------------------------------------------
   LAYER 2F — News Filter sections
   ------------------------------------------------------------------ */

.news-filter .post-thumb-wrap,
.news-filter .trailing-post .post-thumb-wrap {
    overflow: hidden !important;
}

.news-filter .post-thumb-wrap img,
.news-filter .trailing-post .post-thumb-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ------------------------------------------------------------------
   LAYER 2G — Posts List Widget (sidebar + homepage sections)
   Handles layout-one / layout-two / layout-three.
   ------------------------------------------------------------------ */

.widget_digital_newspaper_posts_list_widget figure.post-thumb,
.widget_digital_newspaper_posts_list_widget .post_thumb_image {
    overflow: hidden !important;
    position: relative;
    display: block;
    width: 100%;
    flex-shrink: 0;
}

.widget_digital_newspaper_posts_list_widget figure.post-thumb img,
.widget_digital_newspaper_posts_list_widget .post_thumb_image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* First post in layout-one is the large hero — keep its min-height */
.widget_digital_newspaper_posts_list_widget .post-item:first-child figure.post-thumb {
    min-height: 180px;
    overflow: hidden !important;
}

/* Smaller list thumbs */
.widget_digital_newspaper_posts_list_widget .posts-list-wrap.layout-one .post-item:not(:first-child) figure.post-thumb {
    min-height: 73px;
    max-height: 90px;
    overflow: hidden !important;
}

/* ------------------------------------------------------------------
   LAYER 2H — Posts Grid Widget (featured / grid blocks)
   ------------------------------------------------------------------ */

.widget_digital_newspaper_posts_grid_widget figure.post-thumb,
.widget_digital_newspaper_posts_grid_widget .post_thumb_image.post-thumb,
.widget_digital_newspaper_posts_grid_two_column_widget figure.post-thumb,
.widget_digital_newspaper_posts_grid_two_column_widget .post_thumb_image.post-thumb {
    overflow: hidden !important;
}

.widget_digital_newspaper_posts_grid_widget figure.post-thumb img,
.widget_digital_newspaper_posts_grid_widget .post_thumb_image.post-thumb img,
.widget_digital_newspaper_posts_grid_two_column_widget figure.post-thumb img,
.widget_digital_newspaper_posts_grid_two_column_widget .post_thumb_image.post-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ------------------------------------------------------------------
   LAYER 2I — Sidebar widget contexts
   Ensures sidebar ad columns are never overlapped by content images.
   ------------------------------------------------------------------ */

.secondary-sidebar figure.post-thumb,
.secondary-sidebar .post-thumb-wrap,
.secondary-left-sidebar figure.post-thumb,
.secondary-left-sidebar .post-thumb-wrap,
.sidebar-toggle figure.post-thumb,
.sidebar-toggle .post-thumb-wrap {
    overflow: hidden !important;
    max-width: 100%;
}

.secondary-sidebar figure.post-thumb img,
.secondary-sidebar .post-thumb-wrap img,
.secondary-left-sidebar figure.post-thumb img,
.secondary-left-sidebar .post-thumb-wrap img,
.sidebar-toggle figure.post-thumb img,
.sidebar-toggle .post-thumb-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ------------------------------------------------------------------
   LAYER 2J — Home / Page front-section digital-newspaper-section blocks
   (covers news-grid-post-wrap / news-list-post-wrap / news-carousel-post-wrap)
   ------------------------------------------------------------------ */

.digital-newspaper-section .post-thumb-wrap,
.digital-newspaper-section figure.post-thumb,
.digital-newspaper-section .post_thumb_image {
    overflow: hidden !important;
    position: relative;
    max-width: 100%;
}

.digital-newspaper-section .post-thumb-wrap img,
.digital-newspaper-section figure.post-thumb img,
.digital-newspaper-section .post_thumb_image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ------------------------------------------------------------------
   LAYER 2K — General .post-thumb anywhere not caught above
   ------------------------------------------------------------------ */

.post-thumb {
    overflow: hidden;
    max-width: 100%;
}

.post-thumb img {
    display: block;
    width: 100%;
    max-width: 100%;
    object-fit: cover;
    object-position: center center;
}

/* ------------------------------------------------------------------
   LAYER 3 — Responsive safety net
   At every breakpoint, ensure images never break out of their columns.
   ------------------------------------------------------------------ */

@media (max-width: 1200px) {
    .banner-layout--five .main-banner-wrap article .post-thumb {
        height: 420px;
        max-height: 420px;
    }
}

@media (max-width: 1025px) {
    .banner-layout--five .main-banner-wrap article .post-thumb {
        height: 340px;
        max-height: 340px;
    }

    .banner-layout--five .main-banner-list-posts article .post-thumb {
        height: 160px;
        max-height: 160px;
    }
}

@media (max-width: 768px) {
    .banner-layout--five .main-banner-wrap article .post-thumb,
    .banner-layout--five .main-banner-list-posts article .post-thumb,
    .banner-layout--five .main-banner-grid-posts article .post-thumb {
        height: auto !important;
        max-height: none !important;
        aspect-ratio: 16 / 9;
    }

    figure.post-thumb,
    figure.post-thumb-wrap,
    .post-thumb-wrap,
    .post_thumb_image {
        max-width: 100% !important;
        overflow: hidden !important;
    }
}

@media (max-width: 480px) {
    figure.post-thumb,
    figure.post-thumb-wrap,
    .post-thumb-wrap,
    .post_thumb_image {
        aspect-ratio: 16 / 9;
        height: auto !important;
        max-height: none !important;
    }
}



/* ==========================================================================
   WildMagPro v29 — News Filter Complete Blank-Space Fix
   -------------------------------------------------------------------------
   ROOT CAUSE ANALYSIS:
   The PHP template (template-one.php) generates this structure per 5 posts:
     <div class="row-wrap">
       <div class="featured-post">   [post 0 — large]  </div>
       <div class="trailing-post">   [post 1][post 2][post 3][post 4] stacked </div>
     </div>
     <div class="row-wrap">
       <div class="trailing-post bottom-trailing-post"> [post 5][post 6]... </div>
     </div>

   The original CSS splits row-wrap into 50% left (featured) / 50% right (trailing).
   Posts 1–4 stack VERTICALLY inside the right 50% column.
   When post 0 (left column) is short and posts 1–4 (right column) are tall,
   a large blank space appears on the LEFT side — exactly what the screenshots show.

   FIX STRATEGY:
   Flatten the entire filter block into a uniform CSS Grid. The row-wrap,
   featured-post, and trailing-post wrappers become transparent layout helpers
   (display:contents) so that ALL article cards sit directly in a shared 2-column
   grid on the filter-tab-content-wrapper. Every card is equal width, equal image
   height — zero blank space possible regardless of post count or content length.

   SAFETY: Every selector is scoped to .news-filter.layout--one.
   No other theme section, widget, sidebar or page layout is affected.
   ========================================================================== */

/* ------------------------------------------------------------------
   STEP 1 — Make the content wrapper a 2-column grid.
   All articles from ALL nested divs will participate in this grid
   once their parent wrappers are set to display:contents below.
   ------------------------------------------------------------------ */
.news-filter.layout--one .filter-tab-content-wrapper .tab-content {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 16px;
    align-items: start;
}

/* ------------------------------------------------------------------
   STEP 2 — Make layout wrapper divs "transparent" to the grid.
   display:contents removes the box of the element from the formatting
   context so its children participate directly in the parent grid.
   This works on: row-wrap, featured-post, trailing-post (all variants).
   ------------------------------------------------------------------ */
.news-filter.layout--one .row-wrap,
.news-filter.layout--one .featured-post,
.news-filter.layout--one .trailing-post {
    display: contents !important;
}

/* ------------------------------------------------------------------
   STEP 3 — Each article card fills its grid cell, stacks internally.
   Reset any leftover flex/width rules that may conflict.
   ------------------------------------------------------------------ */
.news-filter.layout--one .tab-content article.filter-item {
    display: flex !important;
    flex-direction: column;
    width: 100% !important;
    min-width: 0;
    max-width: 100% !important;
    box-sizing: border-box;
    margin-bottom: 0 !important;
    /* Reset the original blaze_box_wrap flex that made thumbnails go side-by-side
       inside trailing-post — in the grid layout every card is full-width */
}

/* blaze_box_wrap: stack image above text in every card */
.news-filter.layout--one .tab-content article.filter-item .blaze_box_wrap {
    display: flex !important;
    flex-direction: column !important;
    width: 100%;
    height: 100%;
    margin-bottom: 0 !important;
}

/* ------------------------------------------------------------------
   STEP 4 — Uniform image height across all cards.
   Every thumbnail is the same 16:10 aspect ratio, cropped to fill.
   No image bleeds outside its card.
   ------------------------------------------------------------------ */
.news-filter.layout--one .tab-content .post-thumb-wrap {
    display: block !important;
    width: 100% !important;
    aspect-ratio: 16 / 10;
    overflow: hidden !important;
    position: relative;
    flex-shrink: 0;
    /* Reset thumbnail sizing rules from trailing-post list style */
    flex: none !important;
    max-width: 100% !important;
}

.news-filter.layout--one .tab-content .post-thumb-wrap > a {
    display: block;
    width: 100%;
    height: 100%;
}

.news-filter.layout--one .tab-content .post-thumb-wrap img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    max-width: 100% !important;
}

/* ------------------------------------------------------------------
   STEP 5 — Post text area: reset trailing-post side-by-side padding.
   In the original layout, .post-element had padding-left:18px because
   it sat to the right of a thumbnail. In our stacked grid it should not.
   ------------------------------------------------------------------ */
.news-filter.layout--one .tab-content .post-element {
    flex: 1 1 auto !important;
    padding: 12px 15px !important;
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
}

/* Titles: uniform size across all cards */
.news-filter.layout--one .tab-content .post-title {
    font-size: calc(var(--post-title-size) * 0.9) !important;
    margin: 0 0 8px !important;
    line-height: 1.4;
}

/* Show excerpt in all cards (was hidden in trailing-post) */
.news-filter.layout--one .tab-content .trailing-post .post-excerpt {
    display: block !important;
}

/* ------------------------------------------------------------------
   STEP 6 — Override old per-context specificity rules that still target
   featured-post / trailing-post and would conflict with the grid layout.
   ------------------------------------------------------------------ */
.news-filter.layout--one .tab-content .featured-post .post-title,
.news-filter.layout--one .tab-content .trailing-post .post-title {
    font-size: calc(var(--post-title-size) * 0.9) !important;
}

.news-filter.layout--one .tab-content .trailing-post .post-thumb-wrap {
    flex: none !important;
    overflow: hidden !important;
}

/* leftc-rights-section overrides — neutralise conflicting flex rules */
.leftc-rights-section .news-filter.layout--one .trailing-post.bottom-trailing-post article,
.leftc-rights-section.width-full-width--layout .news-filter.layout--one .trailing-post.bottom-trailing-post article {
    flex: unset !important;
    width: 100% !important;
}

/* ------------------------------------------------------------------
   STEP 7 — Responsive breakpoints.
   ------------------------------------------------------------------ */

/* Tablet landscape (≤ 991px): keep 2 columns */
@media (max-width: 991px) {
    .news-filter.layout--one .filter-tab-content-wrapper .tab-content {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px 12px;
    }
}

/* Tablet portrait (≤ 767px): single column */
@media (max-width: 767px) {
    .news-filter.layout--one .filter-tab-content-wrapper .tab-content {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}

/* Mobile (≤ 480px): single column, tighter gap */
@media (max-width: 480px) {
    .news-filter.layout--one .filter-tab-content-wrapper .tab-content {
        grid-template-columns: 1fr;
        gap: 12px;
    }
}


/* ==========================================================================
   WildMagPro v30 — Frontpage Top Widget Bar
   -------------------------------------------------------------------------
   Styles the two-column widget bar that appears above the main banner.
   Registered sidebars: front-top-left-sidebar / front-top-right-sidebar.
   Scoped entirely to .wildmagpro-top-widget-bar — zero impact on any other
   section, sidebar, page, or post layout.
   ========================================================================== */

/* Outer wrapper — full-width background strip */
.wildmagpro-top-widget-bar {
    width: 100%;
    background: var(--top-header-background-color, #f5f5f5);
    border-bottom: 1px solid rgba(0,0,0,0.08);
    padding: 14px 0;
    box-sizing: border-box;
}

/* Inner flex row — holds the two columns */
.wildmagpro-top-widget-bar-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 20px;
    width: 100%;
    box-sizing: border-box;
}

/* ------------------------------------------------------------------
   Column sizing — adapts to which columns are active.
   ------------------------------------------------------------------ */

/* Both columns active: equal halves */
.wildmagpro-top-widget-bar.has-both-columns .wildmagpro-top-widget-col {
    flex: 1 1 calc(50% - 10px);
    min-width: 0;
    box-sizing: border-box;
}

/* Left column only: full width */
.wildmagpro-top-widget-bar.has-left-only .wildmagpro-top-widget-col--left {
    flex: 1 1 100%;
    min-width: 0;
    box-sizing: border-box;
}

/* Right column only: full width */
.wildmagpro-top-widget-bar.has-right-only .wildmagpro-top-widget-col--right {
    flex: 1 1 100%;
    min-width: 0;
    box-sizing: border-box;
}

/* ------------------------------------------------------------------
   Widget resets inside the top bar — keep widgets clean and contained.
   ------------------------------------------------------------------ */
.wildmagpro-top-widget-bar .widget {
    margin-bottom: 10px;
    overflow: hidden;
    max-width: 100%;
}

.wildmagpro-top-widget-bar .widget:last-child {
    margin-bottom: 0;
}

/* Widget titles: smaller than body sidebar titles */
.wildmagpro-top-widget-bar .widget-title {
    font-size: 0.9em;
    margin-bottom: 8px;
}

/* Images inside widgets must never overflow */
.wildmagpro-top-widget-bar .widget img {
    max-width: 100% !important;
    height: auto !important;
    display: block;
}

/* Banner-ads widget inside the top bar: centre the ad */
.wildmagpro-top-widget-bar .widget.digital_newspaper_banner_ads_widget {
    text-align: center;
}

.wildmagpro-top-widget-bar .widget.digital_newspaper_banner_ads_widget img {
    margin: 0 auto;
    display: inline-block;
}

/* ------------------------------------------------------------------
   Responsive breakpoints
   ------------------------------------------------------------------ */

/* Tablet portrait and below (≤ 767px): stack columns vertically */
@media (max-width: 767px) {
    .wildmagpro-top-widget-bar.has-both-columns .wildmagpro-top-widget-col {
        flex: 1 1 100%;
    }

    .wildmagpro-top-widget-bar-inner {
        gap: 14px;
    }
}

/* Mobile (≤ 480px): tighter padding */
@media (max-width: 480px) {
    .wildmagpro-top-widget-bar {
        padding: 10px 0;
    }

    .wildmagpro-top-widget-bar-inner {
        gap: 10px;
    }
}
