/* 1. Primary Variables */
:root {
    --primary: #1d8206 !important;
    --red: #34a649 !important;
}

/* Force the date to be consistent */
.bengali-date-display {
    margin: 0 !important;
    /* Increased font-size from 16px to 20px */
    font-size: 20px !important; 
    color: #333 !important;
    font-family: 'SolaimanLipi', sans-serif !important;
    display: block !important;
    text-align: left;
}

@media (max-width: 767px) {
    .date33 {
        text-align: center !important;
        width: 100%;
        margin-top: 10px;
    }
    .bengali-date-display {
        text-align: center !important;
        /* Adjusted mobile size for better readability */
        font-size: 18px !important;
    }
}

/* 3. Cleanup: Keep your mobile meta icons hidden */
.fa-map-marker, 
.fa-calendar {
    display: none !important;
}

/* Apply the Green Bar style to all widget titles */
.widget-title {
    position: relative;
    padding-left: 15px !important; 
    font-size: 20px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    display: flex !important;
    align-items: center !important;
    border: none !important; /* Removes old borders if any */
}

/* The vertical green bar (Applied to all titles) */
.widget-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 5px;      
    height: 28px;    
    background-color: #1d8206 !important; 
    border-radius: 0px;
}

/* Ensure links inside titles look correct */
.widget-title a {
    color: #000000 !important;
}

/* 3. Menu Background & Links */
.main-nav, 
.stellarnav {
    background-color: #1d8206 !important;
}

/* Remove the arrow/all-show button from section titles */
.all-show-button {
    display: none !important;
}

/* If the arrow is inside an <i> tag or <span>, hide it as well */
.widget-title i, .widget-title span.arrow {
    display: none !important;
}

.main-nav ul li a {
    color: #ffffff !important;
}

/* 4. Submenu Fix (Black Text) */
.main-nav ul li ul li a, 
.main-nav ul li ul li a:hover,
#newsprk_menu ul li ul li a,
.sub-menu li a {
    color: #000000 !important;
    background-color: #ffffff !important;
}

/* 5. Header Logo Size */
.theme-3 .logo img {
    max-width: 180px !important;
    height: auto !important;
}

/* 1. Reset Home Button Icon (White when Active) */
.active-home a i {
    color: #ffffff !important; /* White color when active */
}

/* 7. Animation */
@keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 0; }
    100% { opacity: 1; }
}
.blink-icon-img {
    animation: blink 1s linear infinite;
    width: 25px;
    height: auto;
    margin-right: 10px;
    vertical-align: middle;
}

/* Force the image to ignore parent constraints */
.partners-carousel .owl-item img {
    max-height: 150px !important; 
    height: 150px !important; /* Forces a fixed height */
    width: auto !important;
    object-fit: contain; /* Keeps the logo proportions correct */
}

/* Ensure the container is big enough to hold the new size */
.partners-carousel .owl-stage {
    display: flex;
    align-items: center;
}

/* Force the wrapper to provide more space */
.partners-section-wrapper {
    padding: 100px 0 !important; /* Even more space */
}


/* Social Media Icons - Round and Forced Color */
.social-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 35px !important;
    height: 35px !important;
    background-color: #1d8206 !important; /* Brand green */
    border-radius: 50% !important;        /* Makes them round */
    transition: 0.3s ease-in-out !important;
    margin: 0 5px !important;
    text-decoration: none !important;
}

/* Force the icon inside to be white, including Instagram */
.social-icon i {
    color: #ffffff !important;
}

/* Hover Effect */
.social-icon:hover {
    background-color: #092f00 !important; /* Darker green */
}

/* Search Button Hover Effect */
.btn-custom-search {
    background-color: #1d8206 !important; /* Your brand green */
    border-color: #1d8206 !important;
    color: #ffffff !important;
    transition: all 0.3s ease-in-out !important; /* Smooth animation */
}

.btn-custom-search:hover {
    background-color: #092f00 !important; /* Darker green on hover */
    border-color: #092f00 !important;
    color: #ffffff !important;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2); /* Subtle lift effect */
}

/* Sidebar Tabs: Active Tab Color */
.new-nav .nav-tabs .nav-link.active {
    background-color: #1d8206 !important;
    border-color: #1d8206 !important;
    color: #ffffff !important;
}

/* Sidebar Tabs: Default Link Color */
.new-nav .nav-tabs .nav-link {
    color: #333 !important;
    border: 1px solid #ddd;
}

.today-news-button {
    background-color: #1d8206 !important;
    border-color: #1d8206 !important;
    color: #ffffff !important;
}

.today-news-button:hover {
    background-color: #092f00 !important;
    color: #ffffff !important;
}

/* Update red borders around the tabbed sidebar section */
.new-nav .tab-content, 
.new-nav .nav-tabs {
    border-color: #1d8206 !important; /* Change to your brand green */
}

/* Also ensure the active tab link border is green */
.new-nav .nav-tabs .nav-link.active {
    border-bottom: 2px solid #1d8206 !important;
}

/* Force hide icons in the header meta info across all devices */
.fa-map-marker, 
.fa-calendar {
    display: none !important;
}

/* Force removal of gaps between location and date */
.mobile_bg .row.mt-2 .col-12 span {
    margin-right: 0 !important;
    padding-right: 5px !important; /* Add a tiny space if needed */
}

/* Force removal of gaps between location and date on Desktop */
/* Adjust the selector if your specific class name is different */
.logo_area .date3 .d-flex {
    gap: 0 !important;
}

.logo_area .date3 span {
    margin-right: 5px !important; /* Adjust this small value to control the gap manually */
}

/* ============================================
   IMPROVED FOOTER DESIGN - BIGGER FONTS
   ============================================ */

.main-footer {
    background-color: #ffffff;
    padding: 50px 0 30px 0;
    border-top: 4px solid #1d8206;
    color: #333;
}

/* Column Styling */
.footer-col {
    margin-bottom: 25px;
}

.footer-content {
    display: block;
    text-align: left;
}

/* Logo Column - Centered */
.footer-logo-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    min-height: 150px;
}

.footer-logo {
    max-width: 180px;
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

.footer-logo:hover {
    transform: scale(1.05);
}

/* Headings - Bigger */
.footer-heading {
    font-size: 22px;  /* Increased from 18px */
    font-weight: 700;
    color: #1d8206;
    margin: 0 0 20px 0;
    padding-bottom: 12px;
    border-bottom: 3px solid #1d8206;
    display: inline-block;
    font-family: 'SolaimanLipi', sans-serif;
}

/* Team/Editorial Section */
.footer-team {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.footer-label {
    font-size: 16px;  /* Increased from 13px */
    color: #888;
    font-weight: 400;
    margin-top: 10px;
}

.footer-label:first-child {
    margin-top: 0;
}

.footer-name {
    font-size: 20px;  /* Increased from 16px */
    color: #333;
    font-weight: 600;
    margin: 0 0 5px 0;
    line-height: 1.5;
}

.footer-link {
    color: #1d8206 !important;
    text-decoration: none;
    font-weight: 600;
    font-size: 18px;  /* Increased from 14px */
    display: inline-block;
    margin-top: 10px;
    transition: all 0.3s ease;
}

.footer-link:hover {
    transform: translateX(5px);
    color: #0f5a04 !important;
}

/* Address Section - Bigger */
.footer-address p {
    margin-bottom: 14px;
    font-size: 18px;  /* Increased from 14px */
    color: #555;
    line-height: 1.8;
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.footer-icon {
    color: #1d8206;
    font-size: 20px;  /* Increased from 16px */
    min-width: 24px;
    margin-top: 3px;
}

/* Quick Links - Bigger */
.footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links li {
    margin-bottom: 14px;
}

.footer-links a {
    color: #555;
    text-decoration: none;
    font-size: 18px;  /* Increased from 15px */
    font-weight: 500;
    transition: all 0.3s ease;
    position: relative;
    padding-left: 0;
    display: inline-block;
}

/* Elegant hover effect - slide underline */
.footer-links a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: -2px;
    left: 0;
    background-color: #1d8206;
    transition: width 0.3s ease;
}

.footer-links a:hover {
    color: #1d8206;
}

.footer-links a:hover::after {
    width: 100%;
}

/* Copyright Bar - Centered */
.copyright-bar {
    background-color: #1d8206;
    color: #ffffff;
    padding: 18px 0;
    text-align: center;
}

.copyright-bar p {
    color: #ffffff;
    margin: 0;
    font-size: 18px;  /* Increased from 14px */
    letter-spacing: 0.5px;
}

/* ============================================
   RESPONSIVE
   ============================================ */

/* Tablet */
@media (max-width: 991px) {
    .footer-logo-wrapper {
        min-height: auto;
        justify-content: flex-start;
    }
    
    .footer-logo {
        max-width: 150px;
    }
    
    .footer-heading {
        font-size: 20px;
    }
    
    .footer-name {
        font-size: 18px;
    }
    
    .footer-address p {
        font-size: 16px;
    }
    
    .footer-links a {
        font-size: 16px;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .main-footer {
        padding: 35px 0 20px 0;
    }
    
    .footer-col {
        text-align: left;
        margin-bottom: 30px;
    }
    
    .footer-content {
        display: block;
    }
    
    .footer-logo-wrapper {
        justify-content: flex-start;
    }
    
    .footer-logo {
        max-width: 140px;
    }
    
    .footer-heading {
        font-size: 18px;
        margin-bottom: 15px;
        padding-bottom: 10px;
    }
    
    .footer-name {
        font-size: 17px;
    }
    
    .footer-label {
        font-size: 14px;
    }
    
    .footer-address p {
        font-size: 15px;
        line-height: 1.6;
    }
    
    .footer-icon {
        font-size: 17px;
        min-width: 20px;
    }
    
    .footer-links a {
        font-size: 16px;
    }
    
    .footer-link {
        font-size: 16px;
    }
    
    .copyright-bar p {
        font-size: 16px;
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    .footer-logo {
        max-width: 120px;
    }
    
    .footer-heading {
        font-size: 17px;
    }
    
    .footer-name {
        font-size: 16px;
    }
    
    .footer-address p {
        font-size: 14px;
    }
    
    .footer-links a {
        font-size: 15px;
    }
    
    .copyright-bar p {
        font-size: 14px;
    }
}

/* Nuclear override to kill the green background everywhere */
body .main-footer, 
body .footer_area3, 
body footer {
    background-color: #ffffff !important;
}

/* ============================================
   CONSISTENT GAP AFTER WIDGET TITLE DIVIDER
   ============================================ */

/* 1. Force consistent margin after the divider for all headings */
.new-head,
.heading.new-head {
    margin-bottom: 25px !important; /* Gap after the divider line */
}

/* 2. Override Bootstrap margin classes on headings */
.new-head.mb-3,
.new-head.mb-4,
.new-head.mb-5,
.heading.new-head.mb-3,
.heading.new-head.mb-4,
.heading.new-head.mb-5 {
    margin-bottom: 25px !important;
}

/* 3. Section containers */
.total3 .new-head,
.new-section .new-head,
.mix3 .new-head {
    margin-bottom: 25px !important;
}

/* 4. Module headings */
.module_style1 .new-head,
.module_style2 .new-head,
.module_style3 .new-head,
.module_style4 .new-head,
.module_style5 .new-head,
.module_style6 .new-head,
.new_style1 .new-head,
.new_style2 .new-head,
.new_style6 .new-head {
    margin-bottom: 25px !important;
}

/* 5. Video section */
.container.my-5 .new-head {
    margin-bottom: 25px !important;
}

/* 6. Partners section */
.partners-section .new-head {
    margin-bottom: 25px !important;
}

/* 7. For sections inside modules that use heading */
.heading.new-head {
    margin-bottom: 25px !important;
}

/* 8. Mobile adjustment - slightly smaller gap on mobile */
@media (max-width: 767px) {
    .new-head,
    .heading.new-head {
        margin-bottom: 18px !important;
    }
    
    .new-head.mb-3,
    .new-head.mb-4,
    .new-head.mb-5,
    .heading.new-head.mb-3,
    .heading.new-head.mb-4,
    .heading.new-head.mb-5 {
        margin-bottom: 18px !important;
    }
}

/* 9. Very small mobile */
@media (max-width: 480px) {
    .new-head,
    .heading.new-head {
        margin-bottom: 15px !important;
    }
}

/* ============================================
   CONSISTENT GAP AFTER LEAD IMAGE IN WIDGETS
   ============================================ */

/* 1. Gap between lead image and headline in module_style4 */
.module_style4 .type15 .img_wrap {
    margin-bottom: 12px !important;
}

/* 2. Gap for single_post type15 */
.module_style4 .single_post.type15 .img_wrap {
    margin-bottom: 12px !important;
}

/* 3. Ensure the post_text doesn't add extra padding */
.module_style4 .type15 .single_post_text {
    padding-top: 0 !important;
}

/* 4. Gap for lead image in module_style1 */
.new_style1 .box-news .image-container {
    margin-bottom: 12px !important;
}

/* 5. Gap for lead image in style6 */
.new_style6 .box-news .image-container {
    margin-bottom: 12px !important;
}

/* 6. Gap for lead image in custom layout */
.custom-lead-layout .single_post .img_wrap {
    margin-bottom: 12px !important;
}

/* 7. Gap for lead image in top news section */
.post_type66 .img_wrap {
    margin-bottom: 12px !important;
}

/* 8. For mobile */
@media (max-width: 767px) {
    .module_style4 .type15 .img_wrap {
        margin-bottom: 10px !important;
    }
    
    .post_type66 .img_wrap {
        margin-bottom: 10px !important;
    }
    
    .new_style1 .box-news .image-container {
        margin-bottom: 10px !important;
    }
}

/* ============================================
   CONSISTENT GAP AFTER HEADLINE IN WIDGETS
   ============================================ */

/* 1. Gap after headline in module_style4 lead news */
.module_style4 .type15 .single_post_text {
    margin-bottom: 12px !important;
}

/* 2. Gap after headline in module_style4 */
.module_style4 .single_post.type15 {
    margin-bottom: 15px !important;
}

/* 3. For the popular carousel items (remaining news) */
.module_style4 .popular_items .single_post {
    margin-bottom: 8px !important;
}

/* 4. Gap between news items in module_style4 */
.module_style4 .widgets_small {
    margin-bottom: 10px !important;
}

/* 5. For style1 module */
.new_style1 .box-news .news-item h4 {
    margin-bottom: 10px !important;
}

/* 6. For style6 module */
.new_style6 .box-news .news-item h4 {
    margin-bottom: 10px !important;
}

/* 7. For top news section */
.post_type66 .single_post_text {
    margin-bottom: 10px !important;
}

/* 8. For custom lead layout */
.custom-lead-layout .single_post_text {
    margin-bottom: 10px !important;
}

/* 9. Ensure consistent spacing after all headlines */
.single_post_text h4,
.single_post_text h5,
.single_post_text a {
    display: block;
}

.single_post_text h4 {
    margin-bottom: 0 !important;
}

/* 10. Mobile adjustments */
@media (max-width: 767px) {
    .module_style4 .type15 .single_post_text {
        margin-bottom: 10px !important;
    }
    
    .module_style4 .single_post.type15 {
        margin-bottom: 12px !important;
    }
    
    .module_style4 .widgets_small {
        margin-bottom: 8px !important;
    }
    
    .post_type66 .single_post_text {
        margin-bottom: 8px !important;
    }
}


/* ============================================
   FIX: Consistent Title Height - TOP ALIGNED
   ============================================ */

/* 1. Lead headlines - fixed height, top aligned */
.module_style4 .single_post_text h4,
.module_style4 .type15 .single_post_text h4,
.new_style1 .box-news .news-item h4,
.new_style6 .box-news .news-item h4,
.post_type66 .single_post_text h4,
.post_type333 .single_post_text h5 {
    min-height: 70px; /* Adjust based on 2-3 lines */
    display: flex;
    align-items: flex-start; /* TOP ALIGNED - FIXED! */
    line-height: 1.4;
}

/* 2. For smaller news items (with image beside text) */
.module_style4 .widgets_small .single_post_text h4,
.regular-list .news-item h4,
.regular-list2 .news-item h4,
.custom-lead-layout .widgets_small .single_post_text h4,
.new-nav .tab-content .news-item h4 {
    min-height: 50px;
    display: flex;
    align-items: flex-start; /* TOP ALIGNED - FIXED! */
    line-height: 1.4;
}

/* 3. For top news lead */
.post_type66 .single_post_text h4 {
    min-height: 80px;
    display: flex;
    align-items: flex-start;
}

/* 4. For post type 333 (recent news) */
.post_type333 .single_post_text h5 {
    min-height: 60px;
    display: flex;
    align-items: flex-start;
}

/* 5. For style4 module - small items */
.module_style4 .single_post.type10 .single_post_text h4 {
    min-height: 50px;
    display: flex;
    align-items: flex-start;
}

/* 6. For grid items (Style1) */
.new_style1 .box-news .news-item h4 {
    min-height: 60px;
    display: flex;
    align-items: flex-start;
}

/* 7. For the mix carousel section */
.mix3 .module_style4 .single_post_text h4 {
    min-height: 50px;
    display: flex;
    align-items: flex-start;
}

/* 8. For custom lead layout */
.custom-lead-layout .single_post .single_post_text h4 {
    min-height: 60px;
    display: flex;
    align-items: flex-start;
}

/* 9. For mobile */
@media (max-width: 767px) {
    .post_type66 .single_post_text h4 {
        min-height: 60px;
        font-size: 20px;
    }
    
    .module_style4 .type15 .single_post_text h4 {
        min-height: 55px;
        font-size: 18px;
    }
    
    .module_style4 .widgets_small .single_post_text h4,
    .regular-list .news-item h4,
    .regular-list2 .news-item h4 {
        min-height: 45px;
        font-size: 16px;
    }
    
    .post_type333 .single_post_text h5 {
        min-height: 50px;
        font-size: 16px;
    }
}

/* 10. For very small screens */
@media (max-width: 480px) {
    .post_type66 .single_post_text h4 {
        min-height: 50px;
        font-size: 18px;
    }
    
    .module_style4 .type15 .single_post_text h4 {
        min-height: 50px;
        font-size: 16px;
    }
}