body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    color: #333;
    background: #f4f4f4;
}

.wrapper {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    background: white;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

img {
    height: auto;
    object-fit: cover;
}

/* Blue Header */
#blue-header {
    width: 100%;
    background: #2a3d66;
    color: white;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    z-index: 200;
    min-height: 25px;
}

#current-date {
    margin-left: 330px;
}

.search {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.search-form {
    display: flex;
    align-items: center;
    background: #1f2d4d;
    padding: 4px 8px;
    border-radius: 5px;
}

.search-field {
    border: none;
    outline: none;
    padding: 5px 8px;
    background: transparent;
    color: white;
    font-size: 14px;
}

.search-field::placeholder {
    color: #ccc;
}

.search-submit {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    display: flex;
    align-items: center;
}


/* White Header */
.white-header {
    width: 100%;
    background: white;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    min-height: 25px;
}

.logo {
    position: absolute;
    z-index: 300;
    width: 360px;
    margin-left: 20px;
    margin-right: 10;
    margin-top: -60px;
    height: 90px;
    overflow: hidden;
}

.logo img {
    width: 300px;
    height: auto;
}


.header-txt {
    margin-left: 330px;
    text-align: center;
    font-size: 16px;
    line-height: 1.4;
}

.header-txt p {
    margin: 2px 0;
    /* Reduce top and bottom margin */
}


/* Header Navigation */
.navigation {
    width: 100%;
    background: #1f2d4d;
    color: white;
    display: flex;
    justify-content: left;
    min-height: fit-content;
}

.navigation ul {
    list-style: none;
    display: flex;
}

.navigation ul li {
    margin-right: 15px;
}

.navigation ul li a {
    text-decoration: none;
    color: white;
}

.navigation ul li a:hover {
    text-decoration: underline;
}

.content-container {
    width: auto;
    display: flex;
    /* Use flexbox to align elements side-by-side */
    justify-content: space-between;
    margin-top: 20px;
}

.medium-banner {
    display: none;
}

.small-banner {
    display: none;
}

/* News Column */
.news-column {
    width: 300px;
    background: #2a3d66;
    color: white;
    padding: 20px;
    box-sizing: border-box;
}

.news-column h3 {
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: bold;
}

.news-column ul {
    list-style: none;
    padding: 0;
}

.news-column ul li {
    margin-bottom: 10px;
}

.news-column ul li a {
    text-decoration: none;
    color: white;
    font-size: 14px;
    display: block;
    margin-bottom: 5px;
}

.news-column ul li img {
    width: 250px;
    height: 200px;
    display: block;
}

.news-column ul li span {
    font-size: 12px;
    color: #ccc;
}

.news-thumb {
    display: block;
    width: 100%;
    height: auto;
    margin-top: 5px;
}

.news-column .wp-caption .wp-caption-text {
    display: none;
}

.news-column .wp-caption {
    padding: 0;
    margin: 0;
}

/* Right container for banner, carousel, sections */
.right-container {
    display: flex;
    align-items: center;
    flex-direction: column;
    /* Stack banner above carousel */
    flex-grow: 1;
    /* Take remaining width */
}

/* Ad Banner Styling */
.ad-banner {
    width: 728px;
    height: 90px;
    /* background: #f4f4f4; */
    display: block;
    /* align-items: center;
    justify-content: center;  */
    margin-bottom: 20px;
    /* Space below banner */
    /* box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    border: 1px solid #ddd; */
}

.carousel-wrapper {
    position: relative;
    width: 100%;
}

/* Carousel Section */
.main-news-carousel {
    width: 98%;
    flex-grow: 1;
    /* Take remaining space */
    height: 500px;
    background: white;
    overflow: hidden;
    margin-left: 20px;
    /* Add some space between the news column and carousel */
    margin-right: 20px;
    position: relative;
}

/* Carousel Style */
.carousel {
    display: flex;
    transition: transform 1s ease-in-out;
}

.slide {
    min-width: 100%;
    box-sizing: border-box;
    position: relative;
}

.slide img {
    width: 100%;
    height: 500px;
    object-fit: cover;
}

.slide h3 {
    position: absolute;
    bottom: 40px;
    left: 20px;
    color: white !important;
    padding: 5px 10px;
    background: rgba(0, 0, 0, 0.6);
    border-radius: 3px;
    font-size: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.slide h3 a {
    color: white !important;
    text-decoration: none;
}

.carousel-heading {
    position: absolute;
    bottom: 40px;
    left: 20px;
    right: 20px;
    color: white;
    background: rgba(0, 0, 0, 0.6);
    border-radius: 3px;
    font-size: 30px;
    line-height: 1.3;
    padding: 5px 10px;
    margin: 0;
}

.carousel-heading a {
    color: white;
    text-decoration: none;
}

.comment-count {
    font-size: 0.9em;
    color: #ccc;
    margin-left: 6px;
    display: inline;
    white-space: nowrap;
}

.carousel-date {
    position: absolute;
    bottom: 10px;
    left: 20px;
    background: rgba(0, 0, 0, 0.6);
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 14px;
    color: white;
    z-index: 10;
}

/* fourBlock AND BANNER FLEX CONTAINER */
.fourBlock-and-banner {
    display: flex;
    /* Horizontal layout for fourBlock and banner */
    align-items: center;
    /* Align items to the top */
}


/* BANNER PLACEHOLDER */
.vertical-banner {
    width: 160px;
    height: 600px;
    /* background: #f4f4f4; */
    margin-left: 10px;
    /* Space between fourBlock and banner */
    display: flex;
    /*
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    border: 1px solid #ddd;
    font-size: 16px;
    color: #666; */
    margin-top: 15px;
}

/* Unified Block Section */
.block-section {
    margin-bottom: 20px;
}

.block-section h3 {
    font-size: 20px;
    background-color: #f4f4f4;
    padding: 15px;
    margin-bottom: 15px;
}

/* Grid Container */
.block-grid {
    display: grid;
    gap: 10px;
    /* Space between items */
}

/* Grid Item */
.block-item {
    position: relative;
    width: 285px;
    /* Fixed width */
    height: 200px;
    /* Fixed height */
}

.block-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Title Overlay */
.block-item h4 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    margin: 0;
    color: white;
    background: rgba(0, 0, 0, 0.6);
    font-size: 18px;
    text-align: left;
    line-height: 1.2;
    padding: 5px 15px;
    box-sizing: border-box;
}

.block-item h4 a {
    color: white;
    text-decoration: none;
}

/* Date Overlay */
.block-item span {
    position: absolute;
    bottom: 5px;
    right: 5px;
    padding: 3px 5px;
    font-size: 12px;
    color: white;
    background: rgba(0, 0, 0, 0.6);
    border-radius: 3px;
}

/* Specific Grid Layouts */
.threeBlock .block-grid {
    grid-template-columns: repeat(3, 1fr);
    /* 3 items in one row */
}

.fourBlock .block-grid {
    grid-template-columns: repeat(2, 2fr);
    /* 2 items in 2 row */
}

.fourBlock .block-item {
    position: relative;
    width: 350px;
    height: 280px;
}

.sixBlock .block-grid {
    grid-template-columns: repeat(3, 1fr);
    /* 3 items in one row */
    /* Automatically adjusts to 2 rows because of 6 items */
}

/* Footer */
.footer-content {
    margin-top: 20px;
    padding: 10px;
    background: #2a3d66;
    color: white;
    text-align: center;
}

.footer-content ul {
    list-style: none;
    padding: 0;
    display: flex;
    justify-content: center;
}

.footer-content ul li {
    margin: 0 10px;
}

.footer-content ul li a {
    color: white;
    text-decoration: none;
}

.footer-content ul li a:hover {
    text-decoration: underline;
}

.featured-image {
    margin-bottom: 20px;
}

.img-caption {
    display: block;
    font-size: 0.85em;
    color: #666;
    margin-top: 5px;
}

.wp-caption .wp-caption-text {
  text-align: right;
  padding-right: 10px; /* optional for spacing */
  font-style: italic;
}

/* Article page */

.news-article h1 {
    font-size: 28px;
    margin-bottom: 10px;
}

.news-article em {
    color: #888;
    font-size: 14px;
}

.news-article p {
    margin-left: 5px;
    max-width: 90%
}

.inside-news-medium-banner {
    display: none;
}


.inside-news-small-banner {
    display: none;
}

.carousel-controls {
    position: absolute;
    top: 50%;
    width: 100%;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
    pointer-events: none;
    z-index: 20;
}

.carousel-controls button {
    background: rgba(0, 0, 0, 0.6);
    border: none;
    color: white;
    font-size: 44px;
    padding: 0px 10px;
    cursor: pointer;
    pointer-events: auto;
    transition: background 0.3s ease;
}

.carousel-controls button:hover {
    background: rgba(167, 167, 167, 0.8);
}

.carousel-controls button:focus,
.carousel-controls button:active {
    background: rgba(0, 0, 0, 0.6);
    /* same as default */
    outline: none;
    /* optional, removes blue focus ring */
}


/* === Comment Form Section === */
.comment-respond {
    width: 100%;
    margin-top: 40px;
    padding: 20px;
    background: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 8px;
    margin-bottom: 15px;
    box-sizing: border-box;
}

.comment-respond h3 {
    font-size: 20px;
    margin-bottom: 15px;
}

.comment-form-comment,
.comment-form-author,
.comment-form-email,
.comment-form-url {
    margin-bottom: 15px;
}

.comment-form label {
    display: block;
    font-weight: bold;
    margin-bottom: 5px;
}

.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
    width: 100%;
    max-width: 100%;
    padding: 10px;
    font-size: 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-sizing: border-box;
}

.comment-form textarea {
    resize: vertical;
    min-height: 120px;
}

.comment-form input[type="submit"] {
    background-color: #2a3d66;
    color: white;
    padding: 10px 20px;
    font-size: 15px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.comment-form input[type="submit"]:hover {
    background-color: #1e2b50;
}

/* Comments  text */

.comments-block {
    width: 90%;
    max-width: none;
    margin: 0 auto;
    padding: 0;
    text-align: left;
}

.comment-list {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
    text-align: left;
}

.comment-body {
    text-align: left;
    padding-left: 0;
    margin-left: 0;
}

/* Category page */

.category-title {
    text-align: left !important;
    margin: 20px 0 10px 30px;
    padding: 0 10px;
    display: block;
    width: 100%;
}


.category-post-list {
    display: flex;
    flex-direction: column;
    margin-left: 20px;
    gap: 20px;
}

.category-post-item {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    border-bottom: 1px solid #ccc;
    padding-bottom: 20px;
}

.category-thumb img {
    width: 180px;
    height: auto;
    border-radius: 4px;
    object-fit: cover;
}

.category-post-content {
    flex: 1;
}

.category-post-content h2 {
    margin-top: 0;
    margin-bottom: 10px;
    font-size: 1.2em;
}

.category-post-content .excerpt {
    margin: 0 0 10px 0;
}

.category-post-content .post-date {
    font-size: 0.9em;
    color: #666;
}


.pagination-wrapper {
    text-align: center;
    margin: 30px 0;
}

.pagination-wrapper .page-numbers {
    display: inline-block;
    margin: 0 5px;
    padding: 8px 12px;
    background: #f0f1f4;
    color: #333;
    text-decoration: none;
    border-radius: 4px;
}

.pagination-wrapper .page-numbers.current {
    background: #1a556e;
    color: white;
    font-weight: bold;
}


.wp-block-embed iframe,
    iframe[src*="youtube.com"],
    iframe[src*="youtu.be"],
    iframe[src*="facebook.com"],
    iframe[src*="instagram.com"],
    iframe[src*="twitter.com"],
    iframe[src*="tiktok.com"] {
        margin-left:5px;
    }


/* For screens <= 1024px */
@media (max-width: 1024px) {
    .wrapper {
        max-width: 100%;
        /* Allow the wrapper to adjust to the screen width */
    }

    /* Adjust fonts for readability */
    body {
        font-size: 90%;
        /* Shrink font size proportionally */
    }

    .header-txt {
        font-size: 14px;
        /* Smaller header text */
        line-height: 1.2;
        /* Adjust line height */
    }

    .navigation ul li a {
        font-size: 14px;
        /* Adjust navigation links font size */
    }

    /* Responsive news column */
    .news-column {
        width: 25%;
        flex-shrink: 0;
        /* prevent it from shrinking */
        padding: 10px;
    }

    .news-column ul li img {
        width: 100%;
        /* Ensure images take up full width */
        height: auto;
        /* Maintain aspect ratio */
    }

    .news-column ul li span {
        font-size: 10px;
        /* Smaller font for dates */
    }


    .right-container {
        width: 75%;
    }

    /* Responsive carousel */
    .main-news-carousel {
        height: auto;
        /* Adjust height dynamically */
        margin: 10px;
        /* Remove extra margins */
    }

    .slide img {
        width: 100%;
        aspect-ratio: 4 / 3;
        /* Fit images to the container width */
        height: auto;
        /* Maintain aspect ratio */
    }

    .carousel-heading {
        font-size: 16px;
        padding: 4px 8px;
        bottom: 40px;
    }

    .comment-count {
        font-size: 0.8em;
    }

    .carousel-date {
        font-size: 12px;
        padding: 2px 5px;
        bottom: 8px;
        left: 15px;
    }

    .carousel-controls button {
        padding: 0px 5px;
    }


    .block-section h3 {
        margin-left: 10px;
    }

    .block-grid {
        display: grid;
        gap: 5px;
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
        justify-items: center;
    }

    /* Ensure all block-items follow grid rules */
    .block-item {
        width: 100%;
        aspect-ratio: 4 / 3;
        /* Consistent proportions */
        position: relative;
    }

    .block-item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .block-item h4 {
        font-size: 12px;
    }

    .block-item span {
        font-size: 10px;
    }

    /* Remove hardcoded size from fourBlock */
    .fourBlock .block-item,
    .sixBlock .block-item,
    .threeBlock .block-item {
        width: 95%;
        height: auto;
        margin-left: 10px;
    }

    /* Footer adjustments */
    .footer-content ul li a {
        font-size: 13px;
    }
}

/* For mobile devices (<768px) */
@media (max-width: 771px) {

    #blue-header {
        width: 100%;
        justify-content: end;
        min-height: 30px;
    }

    .logo {
        margin-left: -10px;
        margin-top: -55px;
    }

    .logo img {
        width: 60%;
        height: auto;
    }

    #current-date {
        display: none;
    }

    .search {
        margin-right: 5px;
        max-width: 35%;
    }

    .search input {
        width: 100%;
        box-sizing: border-box;
    }

    .white-header {
        display: block;f
    }


    .header-txt {
        margin-left: 0px;
        margin-top: 10px;
        font-size: 12px;
    }

    .ad-banner {
        display: none;
    }

    .medium-banner {
        display: flex;
        width: 100%;
        height: 90px;
        /* text-align: center;
        background: #f4f4f4;
        color: #666;
        font-size: 14px; */
        margin-bottom: 5px;
    }

    .navigation ul {
        display: inline-flex;
        padding-inline: 10px;
    }

    .navigation ul li {
        margin-right: 5px;
    }

    .navigation ul li a {
        text-decoration: none;
        color: white;
        font-size: 14px;
    }

    .content-container {
        flex-wrap: wrap;
        /* Allow wrapping for child elements */
    }

    .news-column {
        width: 40%;
        /* Make the column take half the width */
        padding: 5px;
        /* Adjust padding */
        box-sizing: border-box;
        /* Include padding in the width calculation */
    }

    .news-column ul li img {
        width: 100%;
        /* Ensure images are responsive */
        height: auto;
        /* Maintain aspect ratio */
    }

    .news-column h3 {
        text-align: left;
        /* Center align the heading if needed */
    }

    .right-container {
        width: 60%;
    }

    .main-news-carousel {
        height: auto;
        margin-inline: 5px;
        margin-top: 0px;
    }


    body.search .right-container {
        width: 60%;
    }

    body.search {
        max-width: 100%;
    }

    .slide img {
        width: 100%;
        height: auto;
        object-fit: cover;
    }

    .slide h3 {
        position: absolute;
        bottom: 30px;
        left: 10px;
        color: white !important;
        padding: 1px 2px;
        border-radius: 1px;
        font-size: 12px;
    }

    .carousel-heading {
        font-size: 16px;
        padding: 4px 6px;
        bottom: 30px;
    }

    .comment-count {
        font-size: 0.75em;
        margin-left: 4px;
    }

    .carousel-date {
        font-size: 10px;
        padding: 1px 4px;
        bottom: 6px;
        left: 10px;
    }

    .fourBlock-and-banner {
        width: 100%;
    }

    .vertical-banner {
        display: none;
    }

    .threeBlock .block-grid {
        grid-template-columns: 1fr;
    }

    .sixBlock .block-grid {
        grid-template-columns: 1fr;
    }

    .fourBlock .block-grid {
        grid-template-columns: 1fr;
    }

    .block-grid {
        gap: 0px;
        padding: 5px;
    }

    .block-item:nth-child(n+3) {
        display: none;
        /* Hide items after the first two */
    }

    .block-item {
        width: 100%;
        aspect-ratio: 4 / 3;
        position: relative;
    }

    .block-section {
        width: 100%;
        /* Full width for block sections */
    }

    .block-section h3 {
        font-size: 14px;
        /* Adjust font size for headers */
        padding: 10px;
        /* Add padding to the header */
        margin-bottom: 5px;
        margin-top: 5px;
        margin-left: 5px;
    }

    .block-item img {
        width: 100%;
        height: 100%;
        /* Fill the block’s fixed aspect ratio */
        object-fit: cover;
        /* Crop to fit if needed */
    }

    .block-item h4 {
        font-size: 12px;
        /* Adjust title size */
        margin: 0px 0;
        /* Add spacing for the title */
        padding: 5px 5px;
        text-align: left;
    }

    .block-item span {
        font-size: 10px;
        /* Adjust date size */
        background: rgba(0, 0, 0, 0.3);
    }

    .fourBlock .block-item,
    .threeBlock .block-item,
    .sixBlock .block-item {
        width: 100%;
        height: auto;
        /* this will be controlled by aspect-ratio */
        margin-left: 0px;
        /* reset any manual offset */
    }

    .footer-content ul li {
        margin: 0 5px;
    }

    .legal-info {
        font-size: 12px;
    }

      .wp-block-embed iframe,
    iframe[src*="youtube.com"],
    iframe[src*="youtu.be"],
    iframe[src*="facebook.com"],
    iframe[src*="instagram.com"],
    iframe[src*="twitter.com"],
    iframe[src*="tiktok.com"] {
        width: 100% !important;
        margin-left:0px;
        display: block;
        max-width: 100%;
        border: none;
    }

    /* Fix container spacing */
    .wp-block-embed {
        max-width: 100%;
        margin: 1em 0;
    }
}

/* For mobile devices (<425px) */
@media (max-width: 431px) {

    .wrapper {
        max-width: 100%;
    }

   .news-article {
        width: 98%;
   }

    .carousel-controls {
        top: 20%;
    }

    .logo {
        width: 55%;
    }

    .logo img {
        width: 100%;
        height: auto;
    }

    .news-column h3 {
        margin-bottom: 5px;
        font-size: 14px;
    }

    .news-column ul li a {
        font-size: 12px;
    }

    body.single .news-column {
        display: none;
    }

    body.single .right-container {
        width: 100%;
    }

    body.category .news-column {
        display: none;
    }

    body.category .right-container {
        width: 100%;
    }

    body.search .news-column {
        display: none;
    }

    body.search .right-container {
        width: 100%;
    }

    body.search {
        max-width: 100%;
    }

    .main-news-carousel {
        margin-inline: 2px;
        height: auto;
    }

    .carousel-controls button {
        font-size: 24px;
    }

    .block-grid {
        gap: 0px;
        padding: 2px;
    }

    .block-section h3 {
        font-size: 12px;
        /* Adjust font size for headers */
        padding: 10px;
        /* Add padding to the header */
        margin-bottom: 2px;
        margin-top: 2px;
        margin-left: 2px;
    }

    .news-article h1 {
        font-size: 22px;
        margin-bottom: 5px;
    }

    .category-title {
        font-size: 22px;
        margin: 10px 0 0 10px;
    }

    .category-post-item {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        gap: 10px;
        flex-wrap: wrap;
    }

    .category-thumb {
        flex: 0 0 auto;
    }

    .category-thumb img {
        width: 120px;
        height: auto;
        border-radius: 4px;
    }

    .category-post-content {
        flex: 1 1 calc(100% - 130px);
        /* leave space for image */
        display: flex;
        flex-direction: column;
    }

    .category-post-content h2 {
        margin: 0 5px 5px 0;
        font-size: 1em;
    }

    .category-post-content .excerpt,
    .category-post-content .post-date {
        margin: 0 5px 5px 0;
        font-size: 0.9em;
    }

    .slide h3 a {
        font-size: 13px;
    }

    .medium-banner {
        display: none;
    }

    .small-banner {
        display: block;
        width: 100%;
        height: 200px;
        /* text-align: center;
        background: #f4f4f4;
        color: #666;
        font-size: 14px; */
        margin-bottom: 5px;
    }
}