:root {
    /* Primary and Secondary Colors */
    --primary-color: #01A9F2;
    /* Main brand color */
    --secondary-color: #F7921C;
    /* Secondary accent color */

    /* Text Colors */
    --text-color: #212121;
    --text-muted-color: #777777;

    /* Background Colors */
    --background-primary-color: hsla(198, 99%, 95%, 1);
    --background-secondary-color: hsla(32, 93%, 95%, 1);
    --content-bg-color: #ffffff;
    /* Content background color */

    /* Border Color */
    --border-color: #eaeaea;

    /* Additional Color Variables */
    --link-color: #01A9F2;
    /* Link color (same as primary) */
    --hover-color: #e57a00;
    /* Hover color for buttons and interactive elements */

    --author-bg: #f9f9f9;
    --hero-overlay: rgba(0, 0, 0, 0.05);
    --btn-outline: #007bff;
    --btn-outline-hover: #0056b3;
    --text-muted: #666;
    --card-shadow: rgba(0, 0, 0, 0.1);
}

/* Reset margin and padding for all elements */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Font Face Declarations */

@font-face {
    font-family: "calibri";
    src: url(../fonts/calibri.ttf);
}

@font-face {
    font-family: "calibri-Bold";
    src: url(../fonts/calibri-bold.ttf);
}

@font-face {
    font-family: "cairo-Medium";
    src: url(../fonts/Cairo-Medium.ttf);
}


@font-face {
    font-family: "cairo-SemiBold";
    src: url(../fonts/Cairo-SemiBold.ttf);
}

@font-face {
    font-family: "cairo-Bold";
    src: url(../fonts/Cairo-Bold.ttf);
}


/* Global Body Styles */
body {
    font-size: 1rem;
    line-height: 1.6;
    font-family: "calibri", sans-serif;
}

a {
    color: inherit;
}

/* Text Utility Classes */
.text-muted {
    color: var(--text-muted-color) !important;
}

/* Rounded Corners Utility */
.rounded {
    border-radius: 12px !important;
}

/* Section Padding */
.section {
    padding: 40px 0;
}

/* Primary Button */
.btn-primary {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    /* Darker variant for hover effect */
    background-color: #019ecf;
    border-color: #019ecf;
}

/* Secondary Button */
.btn-secondary {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
    /* Darker variant for hover effect */
    background-color: #e67e0e;
    border-color: #e67e0e;
}


/* Headings */
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "calibri-Bold";
    font-weight: 600;
    margin: 0;
}

h1 {
    font-size: 3rem;
}

h2 {
    font-size: 2.6rem;
}

h3 {
    font-size: 2.2rem;
}

h4 {
    font-size: 1.8rem;
}

h5 {
    font-size: 1.6rem;
}

/* Paragraph Styles */
p {
    font-size: 1rem;
    line-height: 1.6;
    color: var(--text-muted-color);
    margin: 0;
}

/* Input Placeholder Alignment */
input::placeholder {
    text-align: right;
    font-size: 1rem;
}

/* Link Styles */
a,
a:active,
a:focus,
a:hover {
    text-decoration: none;
}

a:active,
a:focus,
a:hover {
    outline: 0;
}

/* Responsive Image Styling */
img {
    max-width: 100%;
    height: auto;
}

/* List Reset */
ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Button Styling */
.btn {
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    width: max-content;
    padding: 8px 20px;
    font-size: 1rem;
}

/* Overlay Styling */
.overlay {
    background: rgba(0, 0, 0, 0.6);
    color: var(--text-color);
}


/* ======================== */
/* Custom Navbar CSS Styles */
/* ======================== */

.custom-navbar {
    width: 100%;
    font-family: "calibri", sans-serif;
}

/* ---------------------- */
/* Top Bar Styles         */
/* ---------------------- */
.navbar-top {
    background-color: var(--background-primary-color);
    padding: 10px 0;
}

.navbar-top-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.navbar-top-content > div {
    flex: 0 0 1;
}

/* Search Box */
.navbar-search form {
    display: flex;
    align-items: center;
}
.navbar-search-mobile div{
    width: 100%;
}
.navbar-search input[type="text"] {
    padding: 5px 10px;
    border: 1px solid hsl(198 99% 95% / 1);
    border-radius: 0 4px 4px 0;
    outline: none;
}

.navbar-search button {
    padding: 5px 10px;
    border: 1px solid hsl(198 99% 95% / 1);
    border-left: none;
    border-radius: 4px 0 0 4px;
    background-color: var(--primary-color);
    color: #fff;
    cursor: pointer;
}

/* Logo */
.navbar-logo {
    text-align: center;
    gap: 80px;
}


.navbar-social {
    display: flex;
    justify-content: end;
    gap: 15px;
}

/* Social Media Icons */
.navbar-social a {
    color: var(--primary-color);
    font-size: 1.2rem;
    transition: color 0.3s ease;
}

.navbar-social a:hover {
    color: var(--primary-color);
}

/* ---------------------- */
/* Bottom Bar Styles      */
/* ---------------------- */
.navbar-bottom {
    background-color: var(--primary-color);
    padding: 10px 0;
}

.navbar-bottom-content {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

/* Hamburger Menu & Mobile Search Icon */
.navbar-mobile-menu,
.navbar-mobile-search {
    display: none;
}

.mobile-menu-toggle,
.mobile-search-toggle {
    background: none;
    border: none;
    font-size: 1.5rem;
    color: var(--text-color);
    cursor: pointer;
}

/* Navigation Links (Desktop) */
.navbar-links {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.navbar-links li {
    position: relative;
}

.navbar-links a {
    text-decoration: none;
    color: #ffffff;
    padding: 5px 10px;
    transition: color 0.3s ease;
    font-size: 18px;
    text-transform: uppercase;
    font-family: "calibri", sans-serif;
}

.navbar-links a:hover {
    color: var(--secondary-color);
}

/* ===== Mega Menu (polished RTL) ===== */
.mega-menu {
    position: relative
}

.navbar-bottom .navbar-links {
    display: flex;
    gap: 12px;
    align-items: center
}

.navbar-bottom .navbar-links > li {
    position: relative;
    list-style: none
}

.navbar-bottom .navbar-links > li > a {
    display: flex;
    align-items: center;
    gap: .35rem;
    padding: .6rem .8rem;
    border-radius: .6rem;
    text-decoration: none;
    color: #fff;
}

.navbar-bottom .navbar-links > li:hover > a {
    background: rgba(2, 132, 199, .06);
    color: var(--secondary-color)
}

.mega-menu > a .fa-caret-down {
    transition: transform .2s ease;
    transform-origin: center
}

.mega-menu:hover > a .fa-caret-down,
.mega-menu:focus-within > a .fa-caret-down {
    transform: rotate(180deg)
}

/* جسر صغير يمنع الرعشة بين اللينك والقائمة */
.mega-menu::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    height: 12px
}

/* Dropdown panel */
.mega-menu-content {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    left: auto; /* RTL */
    min-width: 180px;
    max-width: min(80vw, 720px);
    background: #fff;
    border: 1px solid var(--border-color);
    border-radius: 12px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .08);
    padding: 14px 16px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(6px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s;
    z-index: 1000
}

.mega-menu:hover .mega-menu-content,
.mega-menu:focus-within .mega-menu-content {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0)
}

/* سهم صغير أعلى القائمة */
.mega-menu-content::before {
    content: "";
    position: absolute;
    top: -6px;
    right: 24px;
    width: 14px;
    height: 14px;
    background: #fff;
    transform: rotate(45deg);

}

/* داخل القائمة */
.mega-menu-wrapper {
    display: grid;
    grid-template-columns:1fr;
    gap: 8px 24px
}


.mega-menu-column {
    min-width: 180px
}

.mega-menu-column ul {
    list-style: none;
    padding: 0;
    margin: 0
}

.mega-menu-column ul li {
    margin: 0
}

.mega-menu-column ul li a {
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: .5rem .65rem;
    border-radius: .5rem;
    text-decoration: none;
    color: var(--text-color, #374151);
    transition: background .15s ease, color .15s ease, transform .15s ease
}

.mega-menu-column ul li a:hover {
    background: rgba(2, 132, 199, .06);
    color: var(--primary-color)
}

/* حركة طفيفة مناسبة للـRTL */
[dir="rtl"] .mega-menu-column ul li a:hover {
    transform: translateX(-2px)
}

/* الوضع الافتراضي في الموبايل */
.navbar-links-mobile ul {
    list-style: none;
    padding: 0;
    margin: 0;
}


.mega-menu span {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    cursor: pointer;
    color: #fff;
    font-size: 18px;
    gap: 6px;
    font-family: "calibri", sans-serif;
}

.navbar-links-mobile .mega-menu-content {
    display: none; /* مغلقة افتراضياً */
    position: static; /* تلغى absolute */
    background: transparent;
    border: none;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
    margin: 0;
}

.navbar-links-mobile .mega-menu-content .mega-menu-column ul li a {
    padding: 10px 20px;
    display: block;
    font-size: 15px;
}

/* عند الفتح */
.navbar-links-mobile .mega-menu.open .mega-menu-content {
    display: block;
}

/* Sticky state for desktop bottom bar */
.navbar-bottom.is-sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1050;
    background: var(--primary-color);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
    transform: translateY(-10px);
    animation: stickySlide .18s ease forwards;
}

/* Sticky state for mobile header */
.navbar-mobile.is-sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1060;
    background: var(--background-primary-color);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
    transform: translateY(-10px);
    animation: stickySlide .18s ease forwards;
}

/* Optional: shrink logo a bit when sticky (desktop) */
.navbar-bottom.is-sticky .navbar-logo img {
    max-height: 44px;
    transition: max-height .18s ease;
}

@keyframes stickySlide {
    to {
        transform: translateY(0);
    }
}

/* Spacer placeholder to prevent layout jump */
.sticky-spacer {
    height: 0;
}

/* ---------------------- */
/* Responsive (Mobile)    */
/* ---------------------- */
@media (max-width: 767px) {
    .mega-menu-content::before,
    .mega-menu::after {
        display: none;
    }

    /* Hide Top Bar on Mobile */
    .navbar-top {
        display: none;
    }

    /* Hide Navigation Links on Mobile */
    .navbar-links {
        display: none;
    }

    /* Show Mobile Menu and Search Icons */
    .navbar-mobile-menu,
    .navbar-mobile-search {
        display: block;
    }

    /* Center Logo in Bottom Bar */
    .navbar-bottom-content {
        justify-content: space-between;
    }

    .navbar-logo img {
        max-height: 65px;
    }

    .mobile-menu-toggle {
        background: var(--background-primary-color);
        color: var(--primary-color);
        padding: 5px 8px;
        border-radius: 4px;
        border: 1px solid hsl(198 99% 95% / 1);
        line-height: 1;
    }
}

.navbar-search-mobile {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
}

/* Limit total height to 600px and hide overflow */
.home-news-section {
    padding: 30px 0;
}

/* Basic styling for news boxes */
.news-box {
    border: 1px solid #eee;
    background: #fff;
    border-radius: 12px;
}

.articlesSlider {
}

.news-box .body-card {
    padding: 16px;
    flex: 1;
}

/* Meta info (date, author, category) */
.news-meta {
    font-size: 12px;
    color: #999;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.news-meta span {

    display: flex;
    align-items: center;
    gap: 6px;
    padding: 3px 8px;
    border-radius: 6px;
    background: hsl(198 99% 96% / 1);
    height: 25px;
    color: var(--primary-color);
}

.news-meta span a {
    display: flex;
    align-items: center;
    gap: 6px;
}

/* Base styling for meta info */
.news-meta {
    font-size: 12px;
    color: #999;
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
    /* Required for positioning dropdown */
}

/* Styling for the author link */
.news-author {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 3px 8px;
    border-radius: 6px;
    background: hsl(198 99% 96%);
    color: var(--primary-color);
    cursor: pointer;
    position: relative;
    height: 25px;
}

/* Hide dropdown menu by default */
.author-list {
    list-style: none;
    margin: 0;
    padding: 5px 0;
    position: absolute;
    top: 100%;
    right: 0;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    display: none;
    min-width: 140px;
    width: max-content;
    z-index: 10;
}

/* Show dropdown on hover */
.author-dropdown:hover .author-list {
    display: block;
}

/* Styling for each author in list */
.author-list li a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    white-space: nowrap;
}


/* Hover effect for list items */
.author-list li:hover {
    background: hsl(198 99% 90%);
}


/* Author avatar styling */
.author-list img {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50%;
    object-fit: cover;
}


/* Title styling */
.news-title {
    color: var(--primary-color);
    font-size: 1.4rem;
}


/* Different sizes for large, medium, small news titles (optional) */
.col-lg-6 .news-title {
    font-size: 1.2rem;
    /* Larger for the big news */
}

.col-lg-3 .news-title {
    font-size: 16px;
    /* Slightly smaller for medium/small news */
}

/* Description styling */
.news-description {
    font-size: 16px;
    color: var(--text-muted);
}

/* Adjust spacing for images if needed */


.news-box .img-card {
    width: 100%;
    height: 160px;
}

.news-box .img-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.news-box-small .img-card {
    width: 100px;
    height: 110px;
}

.news-box-small .img-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.news-box-small .news-meta {
    font-size: 12px;
    color: #999;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 5px;
}

.news-box-small .news-title {
    font-size: 16px;
}

.news-box-small .news-description {
    font-size: 12px;

}

.news-box-small .body-card {
    padding: 10px;
}

.main-news-box {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    height: 400px;
    width: 100%;
    display: block;
}

.main-news-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main-news-box .body-card {
    position: absolute;
    bottom: 20px;
    padding: 16px;
    z-index: 10;
    width: 100%;

}

.main-news-box .news-description {
    color: #fff;
}

.main-news-box .news-meta,
.main-news-box .body-card .news-title {
    color: #fff;
}

.title-small-cards {
    height: 50px;
    justify-content: space-between;


    padding: 12px;
    background: var(--secondary-color);
    color: #fff;

    text-align: center;
    display: flex;
    align-items: center;

}

.container-small-cards {
    border: 1px solid var(--secondary-color);
    border-radius: 12px;
    overflow: hidden;
    height: 400px;
}

.list-small-cards {
    padding: 12px;
}

.title-small-cards h5 {
    font-size: 18px;
}

.list-small-cards .news-box {
    border: none;
    align-items: center;
}

.list-small-cards .news-box-small .img-card {
    width: 80px;
    height: 70px;
    border-radius: 12px;
    overflow: hidden;
}

.list-small-cards .news-box-small .body-card {
    padding: 0;
}

.see-all {
    color: #fff;
    font-size: 16px;


}

.list-small-cards .mb-3 {
    margin-bottom: 11px !important;
}

.featured-articles-section {
    margin-bottom: 30px;
}

.section-title img {
    height: 25px;
}

.section-title h2 {
    color: var(--primary-color);
    font-size: 24px;


}

.search-box .form-control {
    border-radius: 30px;
    border: 1px solid #ddd;
    padding: 0.5rem 1rem;
    transition: all 0.3s ease;
}

.search-box .form-control:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, .15);
}

.search-icon {
    font-size: 1rem;
    pointer-events: none;
}

.investigations-section .news-box .img-card {
    width: 210px;
    height: 155px;
    overflow: hidden;
}

.reports .news-box .img-card,
.featured-articles-section .news-box .img-card {
    width: 210px;
    height: 155px;
}

.article-slide .article-card {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    margin: 0;
    display: block;
}

.article-slide .article-card .article-info {
    position: absolute;
    z-index: 9;
    bottom: 20px;
    color: #fff;
    padding: 20px;
}

.home-news-section .articlesSlider {
    max-height: 400px;
}


.article-slide .article-card .article-info p {
    color: #fff;

}

#articlesSlider .owl-dots.disabled {
    display: block;
}

.owl-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    position: absolute;
    bottom: 15px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}

.owl-dot span {
    display: block;
    background: rgba(245, 165, 73, 0.3);
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 1px solid var(--secondary-color);
    transition: transform 0.3s ease, background 0.3s ease;
}


.owl-dot.active span {
    background: var(--secondary-color);
    transform: scale(1.2);
}

.list-featured-small {
    padding: 16px 0 0;
    display: flex;
    gap: 16px;
}

.list-featured-small .article-slide {
    flex: 1;
}

.list-featured-small .article-slide .img-card {
    height: 260px;
    width: 100%;
    position: relative;
}

.list-featured-small .article-slide .img-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.list-featured-small .article-slide .article-card .article-info {
    bottom: 0;
}

#articlesSlider .article-slide .article-card .img-card {
    width: 100%;
    height: 400px;
}

#articlesSlider .article-slide .article-card .img-card img {
    height: 100%;
    object-fit: cover;
}

.main-news-box::after,
.article-slide .article-card .img-card::after,
.list-featured-small .article-slide .img-card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%);

}

.news-box-vrtical {
    flex-direction: column;
    height: 100%;
}

.news-box-vrtical .img-card {
    height: auto !important;
    width: 100% !important;
}

.news-box .img-card img {
    height: 100%;
    object-fit: cover;
    aspect-ratio: 16 / 9;
}

.recommended-articles .news-box-small .img-card,
.section-main .news-box-small .img-card {
    height: 80px;
    width: 90px;
    border-radius: 12px;
    overflow: hidden;
}

.section-main .must-read .news-box {
    border: none;
    gap: 10px;
}

.section-main .must-read .body-card {
    padding: 0;
}

.navbar-mobile {
    display: none;
}


.subscription {
    display: flex;
    align-items: center;
    background: hsl(32 93% 96% / 1);
    padding: 20px;
    justify-content: space-between;
    border-radius: 12px;


}

.newsletter {

    background: #0194C7;
    padding: 20px;


}

.newsletter-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.newsletter .text {
    flex: 2;
}

.newsletter .form {
    flex: 1;
}

.newsletter .text h2 {
    color: #fff;
    font-size: 36px;
    text-align: start;
}

.subscription .iocn {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: hsl(32 93% 96% / 1);
    border: 2px dashed var(--secondary-color);
    display: flex;
    justify-content: center;
    align-items: center;
}

.featured-articles-section .articlesSlider .article-slide .img-card {
    height: 400px;
}

.featured-articles-section .articlesSlider .article-slide .img-card img {
    height: 100%;
    object-fit: cover;
}

.filter-form .btn {
    text-wrap-mode: nowrap;
}

.articles-page .img-card {
    height: 260px;
    width: 100%;
}

.articles-page .img-card img {
    width: 100%;
    border-radius: 12px;
}

.articles-page .article-card {
    min-height: 450px;
}

.active > .page-link,
.page-link.active {
    color: #fff;
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

.page-link {
    color: var(--primary-color);

}

/* Filter Form Container */
.filter-form {
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 15px;
}

/* Form Layout: Use flex-wrap to allow multiple rows on small screens */
.filter-form form {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

/* Each Filter Item: Wrapping the icon with its field */
.filter-item {
    position: relative;
    flex: 1 1 180px;
    display: flex;
    align-items: center;
}

/* Icon Styling inside Filter Items */
.filter-item i {
    position: absolute;
    right: 10px;
    /* For RTL layout, icon is placed on the right */
    color: #999;
    font-size: 16px;
    pointer-events: none;
}

/* Style for Input and Select fields to leave space for the icon */
.filter-item input,
.filter-item select {
    width: 100%;
    padding: 10px 35px 10px 15px;
    /* Extra padding on right for icon */
    border: 1px solid #ccc;
    border-radius: 5px;
    text-align: right;
}

.filter-item input[type="date"] {
    padding: 10px 15px;
}


/* Placeholder text style */
.filter-item input::placeholder {
    text-align: right;
}

/* Hide the native date icon in Chrome, Safari, and Edge */
input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0;
    /* Make it invisible */
    cursor: pointer;
    /* Keep pointer behavior */
}

input[type="date"]::-webkit-clear-button,
input[type="date"]::-webkit-inner-spin-button {
    display: none;
    /* Hide other internal buttons if any */
}

/* Remove Firefox's default background icon */
input[type="date"]::-moz-push-button {
    display: none;
}


/* Breadcrumb Navigation */
.breadcrumb {
    background: none;
    padding: 0;
    margin-bottom: 1rem;
    font-size: 1rem;
    font-family: "calibri", sans-serif;
    font-weight: 600;

}

.breadcrumb a {
    text-decoration: none;
    color: #f5a549;
}

.breadcrumb a:hover {
    text-decoration: underline;
}

/* Hero Section for Search Results */
.search-results-header {
    background: var(--background-primary-color);
    border: 1px solid hsl(195, 99%, 90%);
    color: var(--primary-color);
    padding: 30px;
    border-radius: 8px;
    text-align: center;
    margin-bottom: 30px;
}

.search-results-header h2 {
    font-size: 2rem;
    margin-bottom: 10px;
}

.results-count {
    font-size: 1rem;
    opacity: 0.9;
}

/* Articles Grid Styling */
.article-card {
    background: #fff;
    border: 0;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    margin-bottom: 20px;
}

.article-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.article-card img {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.article-card .p-3 {
    padding: 15px;
}

.article-card .news-meta {
    color: #777;
}

.article-card .article-title {
    font-size: 1.6rem;
    margin: 10px 0;

    color: #333;
}

.list-featured-small .article-card .article-title {
    font-size: 1.4rem;
    margin: 10px 0;

    color: #333;
}

.article-card .article-desc {
    font-size: 0.95rem;
    color: #555;
}

/* Sidebar Styling */
.sidebar {
    background: #fff;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
}

.sidebar h4 {
    margin-bottom: 15px;
    border-bottom: 2px solid #f5a549;
    padding-bottom: 5px;
    font-size: 1.2rem;
}

.recommended-articles img {
    width: 80px;
    height: 80px;
    object-fit: cover;
}

/* Pagination Styling */
.pagination {
    margin-top: 30px;
}

.pagination .page-link {
    color: #f5a549;
    background: #fff;
    border: 1px solid #ddd;
}

.pagination .page-item.active .page-link {
    background: #f5a549;
    border-color: #f5a549;
    color: #fff;
}

.pagination .page-link:hover {
    background: #f5a549;
    color: #fff;
}

/* Additional spacing for responsiveness */
@media (max-width: 767px) {
    .search-results-header h2 {
        font-size: 1.5rem;
    }

    .results-count {
        font-size: 0.9rem;
    }
}


/* Hero Section */
.contact-hero {
    background: #fff;
    padding: 50px 20px;
    text-align: center;
    border-bottom: 2px solid #eaeaea;
    margin-bottom: 40px;
}

.contact-hero h1 {
    font-size: 2.5rem;
    color: var(--primary-color);
    margin-bottom: 10px;
}

.contact-hero p {
    font-size: 1.1rem;
    color: var(--text-dark);
    margin-bottom: 0;
}

/* Contact Details Section */
.contact-details {
    margin-bottom: 50px;
}

.contact-details .detail-box {
    background: var(--background-primary-color);
    border: 1px solid hsl(198, 99%, 95%);
    box-shadow: 0 2px 6px rgb(1 169 242 / 40%);
    border-radius: 12px;
    padding: 16px;
    margin-bottom: 30px;
    display: flex;
    align-items: center;
    flex-direction: column;
    transition: transform 0.3s ease;
    text-align: center;

}


.contact-details .icon-container {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.8rem;
    margin-bottom: 16px;
}

.contact-details .text-container {
    flex: 1;
}


.contact-details .text-container .contact-title {
    font-size: 1.2rem;
    color: var(--primary-color);
    margin-bottom: 8px;

}

.contact-details .text-container .contact-desc {
    font-size: 1rem;
    color: #555;
    margin-bottom: 15px;
    line-height: 1.5;
    min-height: 48px;
}

.contact-details .text-container .btn {
    font-size: 0.9rem;
    padding: 8px 16px;
    margin: auto;
}

/* Contact Form Section */
.contact-form-section {
    background: var(--background-primary-color);
    border: 1px solid hsl(198, 99%, 95%);
    box-shadow: 0 2px 6px rgb(1 169 242 / 40%);
    padding: 40px;
    border-radius: 12px;
    margin-bottom: 50px;
    position: relative;
    overflow: hidden;
}

/* Optional subtle background pattern */
.contact-form-section::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: url('img/contact-bg.png') no-repeat center center/cover;
    opacity: 0.05;
    z-index: 0;
}

.contact-form-section h2 {
    font-size: 2rem;
    color: var(--primary-color);
    text-align: center;
    margin-bottom: 15px;
    position: relative;
    z-index: 1;
}

.contact-form-section p {
    text-align: center;
    font-size: 1rem;
    color: #666;
    margin-bottom: 30px;
    position: relative;
    z-index: 1;
}

.contact-form-section form {
    position: relative;
    z-index: 1;
}

/* Input group styling for form fields with icons */
.contact-form-section .input-group-text {
    background-color: var(--primary-color);
    color: #fff;
    border: none;
    border-radius: 4px 0 0 4px;
    padding: 10px 14px;
    font-size: 1.1rem;
}

/* Override Bootstrap input-group styling if necessary */
.contact-form-section .input-group .form-control {
    border: 1px solid #ccc;
    border-right: none;
    border-radius: 0 4px 4px 0;
}

.contact-form-section .form-control:focus {
    box-shadow: none;
    border-color: var(--primary-color);
}

.contact-form-section form button {
    display: block;
    width: 100%;
    padding: 12px;
    font-size: 1rem;
    border: none;
    border-radius: 4px;
    background: var(--primary-color);
    color: #fff;
    transition: background 0.3s ease;
}

.contact-form-section form button:hover {
    background: #019ecf;
}

/* Responsive adjustments */
@media (max-width: 767px) {
    .contact-details .detail-box {
        flex-direction: column;
        text-align: center;
    }

    .contact-details .image-container {
        margin-top: 15px;
    }
}

/* HERO SECTION */
.hero-section-about {
    position: relative;
    width: 100%;
    background: var(--background-primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 50px 0;
    border-radius: 12px;
    margin-bottom: 40px;
}

.hero-section-about .hero-content {
    position: relative;
    text-align: center;
    color: var(--primary-color);
    z-index: 1;
    animation: fadeInUp 1s ease-out;
}

.hero-content h1 {
    font-size: 3rem;
    margin-bottom: 20px;
}

.hero-content p {
    font-size: 1.4rem;
    margin-bottom: 0;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* SECTION: ABOUT US (عن الموقع) */
.about-section {
    background: var(--background-secondary-color);
    padding: 20px;
    border-radius: 12px;
    margin-bottom: 40px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    text-align: justify;
}

.about-section p {
    font-size: 1.2rem;
    color: var(--text-muted);
    margin-bottom: 20px;
}

.about-section p:last-child {
    margin-bottom: 0;
}

/* VISION & MISSION SECTION */
.vision-mission {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 40px;
}

.vision-mission .block {
    flex: 1 1 300px;
    background: var(--background-color);
    padding: 25px;
    border: 1px solid #eaeaea;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    text-align: center;
}

.vision-mission .block h3 {
    font-size: 1.6rem;
    color: var(--primary-color);
    margin-bottom: 15px;
}

.vision-mission .block p {
    font-size: 1rem;
    color: var(--text-muted);
    line-height: 1.6;
}

/* VALUES SECTION */
.values-section {
    margin-bottom: 40px;
}


.values-section ul {
    list-style-type: disc;
    padding: 0 20px;
    color: var(--text-muted);
    font-size: 1rem;
    display: inline-block;
    text-align: start;
}

.values-section ul li {
    margin-bottom: 10px;
    font-size: 1.2rem;
}


/* TRUSTEES SLIDER (أعضاء مجلس الأمناء) */
.trustees-slider {
    margin: 90px 0;
}

.owl-about-us .owl-dots {


    bottom: -35px;

}

.trustees-slider .owl-carousel .item {
    padding: 0;
    text-align: center;
    background: var(--background-secondary-color);
    border: 1px solid #eaeaea;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    margin: 0 10px;
    overflow: hidden;
}

.trustees-slider .item img {
    width: 100%;
    height: 260px;
    object-fit: cover;
}

.trustees-slider .item h4 {
    font-size: 1.2rem;
    color: var(--text-dark);
    margin-bottom: 5px;
}

.trustees-slider .item p {
    font-size: 0.9rem;
    color: var(--text-muted);
}

.trustees-slider .text-slider {
    padding: 16PX;
}


/* Loader css */
#preloadr {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #f8f7fc;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.typewriter {
    --blue: #01A9F2;
    --blue-dark: #0295d4;
    --key: #fff;
    --paper: #EEF0FD;
    --text: #D3D4EC;
    --tool: #F7921C;
    --duration: 3s;
    position: relative;
    -webkit-animation: bounce05 var(--duration) linear infinite;
    animation: bounce05 var(--duration) linear infinite;

}

.typewriter .slide {
    width: 92px;
    height: 20px;
    border-radius: 3px;
    margin-left: 14px;
    transform: translateX(14px);
    background: linear-gradient(var(--blue), var(--blue-dark));
    -webkit-animation: slide05 var(--duration) ease infinite;
    animation: slide05 var(--duration) ease infinite;
}

.typewriter .slide:before,
.typewriter .slide:after,
.typewriter .slide i:before {
    content: "";
    position: absolute;
    background: var(--tool);
}

.typewriter .slide:before {
    width: 2px;
    height: 8px;
    top: 6px;
    left: 100%;
}

.typewriter .slide:after {
    left: 94px;
    top: 3px;
    height: 14px;
    width: 6px;
    border-radius: 3px;
}

.typewriter .slide i {
    display: block;
    position: absolute;
    right: 100%;
    width: 6px;
    height: 4px;
    top: 4px;
    background: var(--tool);
}

.typewriter .slide i:before {
    right: 100%;
    top: -2px;
    width: 4px;
    border-radius: 2px;
    height: 14px;
}

.typewriter .paper {
    position: absolute;
    left: 24px;
    top: -26px;
    width: 40px;
    height: 46px;
    border-radius: 5px;
    background: var(--paper);
    transform: translateY(46px);
    -webkit-animation: paper05 var(--duration) linear infinite;
    animation: paper05 var(--duration) linear infinite;
}

.typewriter .paper:before {
    content: "";
    position: absolute;
    left: 6px;
    right: 6px;
    top: 7px;
    border-radius: 2px;
    height: 4px;
    transform: scaleY(0.8);
    background: var(--text);
    box-shadow: 0 12px 0 var(--text), 0 24px 0 var(--text), 0 36px 0 var(--text);
}

.typewriter .keyboard {
    width: 120px;
    height: 56px;
    margin-top: -10px;
    z-index: 1;
    position: relative;
}

.typewriter .keyboard:before,
.typewriter .keyboard:after {
    content: "";
    position: absolute;
}

.typewriter .keyboard:before {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 7px;
    background: linear-gradient(135deg, var(--blue), var(--blue-dark));
    transform: perspective(10px) rotateX(2deg);
    transform-origin: 50% 100%;
}

.typewriter .keyboard:after {
    left: 2px;
    top: 25px;
    width: 11px;
    height: 4px;
    border-radius: 2px;
    box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    -webkit-animation: keyboard05 var(--duration) linear infinite;
    animation: keyboard05 var(--duration) linear infinite;
}

@keyframes bounce05 {

    85%,
    92%,
    100% {
        transform: translateY(0);
    }

    89% {
        transform: translateY(-4px);
    }

    95% {
        transform: translateY(2px);
    }
}

@keyframes slide05 {
    5% {
        transform: translateX(14px);
    }

    15%,
    30% {
        transform: translateX(6px);
    }

    40%,
    55% {
        transform: translateX(0);
    }

    65%,
    70% {
        transform: translateX(-4px);
    }

    80%,
    89% {
        transform: translateX(-12px);
    }

    100% {
        transform: translateX(14px);
    }
}

@keyframes paper05 {
    5% {
        transform: translateY(46px);
    }

    20%,
    30% {
        transform: translateY(34px);
    }

    40%,
    55% {
        transform: translateY(22px);
    }

    65%,
    70% {
        transform: translateY(10px);
    }

    80%,
    85% {
        transform: translateY(0);
    }

    92%,
    100% {
        transform: translateY(46px);
    }
}

@keyframes keyboard05 {

    5%,
    12%,
    21%,
    30%,
    39%,
    48%,
    57%,
    66%,
    75%,
    84% {
        box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }

    9% {
        box-shadow: 15px 2px 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }

    18% {
        box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 2px 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }

    27% {
        box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 12px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }

    36% {
        box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 12px 0 var(--key), 60px 12px 0 var(--key), 68px 12px 0 var(--key), 83px 10px 0 var(--key);
    }

    45% {
        box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 2px 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }

    54% {
        box-shadow: 15px 0 0 var(--key), 30px 2px 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }

    63% {
        box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 12px 0 var(--key);
    }

    72% {
        box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 2px 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }

    81% {
        box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 12px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }


}

.featured-articles-section .article-card .article-title {
    color: #fff;
}

.home-news-section .first-list .news-box .img-card {
    width: 120px;
    height: 120px;
}

.home-news-section .first-list .news-box .news-title {
    font-size: 16px;
}

.home-news-section .first-list .news-box .body-card {
    padding: 10px;
}

@media (max-width: 1024px) {
    .home-news-section .first-list .news-box .img-card {
        width: 160px;
        height: auto;
        aspect-ratio: 4 / 3;
    }

}

/* For tablet devices: when the viewport width is between 768px and 1024px */
@media (min-width: 768px) and (max-width: 1024px) {

    /* Override Bootstrap col-md-* classes in home-news-section */
    .row [class*="col-md-"] {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-1 {
        order: 1 !important;
    }

    .order-2 {
        order: 2 !important;
    }

    .recommended,
    .list-small-cards {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0 16px;
    }

    .must-read {
        margin-top: 30px;
    }

    .container-small-cards {
        height: auto;
    }

    .bannars {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0 16px;
    }

    .navbar-bottom {
        display: none;
    }

    .navbar-mobile {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 12px 20px;
        background: var(--background-primary-color);
        border-bottom: 1px solid hsl(198 99% 95%);
        position: relative;
        z-index: 1000;
    }

    .mobile-menu-toggle {
        background: none;
        border: none;
        font-size: 1.8rem;
        color: var(--primary-color);
        cursor: pointer;
    }

    .navbar-links-mobile {
        position: fixed;
        top: 0;
        right: -300px;
        width: 280px;
        height: 100vh;
        background: linear-gradient(to bottom, var(--primary-color), #007fb9);
        box-shadow: -2px 0 10px rgba(0, 0, 0, 0.15);
        padding: 60px 25px 20px;
        transition: right 0.4s ease;
        z-index: 9999;
        color: #fff;
    }

    .navbar-links-mobile.active {
        right: 0;
    }

    .navbar-links-mobile ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }


    .navbar-links-mobile ul li a {
        color: #fff;
        font-size: 1.1rem;
        text-decoration: none;
        transition: 0.3s;
        display: block;
    }

    .navbar-links-mobile ul li a:hover {
        color: #f1f1f1;
        transform: translateX(-3px);
    }

    .mobile-close {
        position: absolute;
        top: 15px;
        left: 15px;
        background: transparent;
        border: none;
        color: #fff;
        font-size: 1.6rem;
        cursor: pointer;
    }

    body.mobile-menu-open {
        overflow: hidden;
    }

    .hamburger {
        cursor: pointer;
    }

    .hamburger input {
        display: none;
    }

    .hamburger svg {
        /* The size of the SVG defines the overall size */
        height: 1.8em;
        /* Define the transition for transforming the SVG */
        transition: transform 600ms cubic-bezier(0.4, 0, 0.2, 1);
    }

    .line {
        fill: none;
        stroke: var(--primary-color);
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 3;
        /* Define the transition for transforming the Stroke */
        transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1),
        stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
    }

    .line-top-bottom {
        stroke-dasharray: 12 63;
    }

    .hamburger input:checked + svg {
        transform: rotate(-45deg);
    }

    .hamburger input:checked + svg .line-top-bottom {
        stroke-dasharray: 20 300;
        stroke-dashoffset: -32.42;
    }

    .custom-navbar {
        display: none;
    }

    .contact-details .row [class*="col-md-"] {
        flex: 0 0 50%;
        max-width: 50%;
    }

}

@media (max-width: 767px) {
    .main-news-box {
        max-height: 300px;
    }

    .home-news-section .first-list .news-box .img-card {
        width: 120px;
        height: 120px;
    }

    .main-news-box .body-card {
        padding: 10px;
    }

    .article-card .news-meta,
    .main-news-box .news-meta {
        font-size: 12px;

    }

    .reports .news-title,
    .investigations-section .news-title,
    .section-main .news-title,
    .article-card .article-title,
    .main-news-box .body-card .news-title {
        font-size: 24px;
    }

    .recommended .news-title,
    .home-news-section .first-list.news-box .news-title {
        font-size: 18px;
    }

    .title-small-cards h5 {
        font-size: 18px;
    }

    .list-small-cards .news-box-small .img-card {
        width: 100px;
        height: 80px;
        border-radius: 12px;
        overflow: hidden;
    }

    .list-featured-small,
    .article-list .news-box {
        flex-direction: column;
    }

    .featured-articles-section .news-box .img-card {
        width: 100%;
        height: 200px;
    }

    .container-small-cards {
        height: auto;
    }

    .navbar-bottom {
        display: none;
    }

    .navbar-mobile {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 12px 20px;
        background: var(--background-primary-color);
        border-bottom: 1px solid hsl(198 99% 95%);
        position: relative;
        z-index: 1000;
    }

    .mobile-menu-toggle {
        background: none;
        border: none;
        font-size: 1.8rem;
        color: var(--primary-color);
        cursor: pointer;
    }

    .navbar-links-mobile {
        position: fixed;
        top: 0;
        right: -300px;
        width: 280px;
        height: 100vh;
        background: linear-gradient(to bottom, var(--primary-color), #007fb9);
        box-shadow: -2px 0 10px rgba(0, 0, 0, 0.15);
        padding: 60px 25px 20px;
        transition: right 0.4s ease;
        z-index: 9999;
        color: #fff;
    }

    .navbar-links-mobile.active {
        right: 0;
    }

    .navbar-links-mobile ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }


    .navbar-links-mobile ul li a {
        color: #fff;
        font-size: 1.2rem;
        text-decoration: none;
        transition: 0.3s;
        display: block;
        padding: 10px 0;

    }

    .mega-menu ul li a {

    }

    .navbar-links-mobile ul li a:hover {
        color: #f1f1f1;
        transform: translateX(-3px);
    }

    .mobile-close {
        position: absolute;
        top: 15px;
        left: 15px;
        background: transparent;
        border: none;
        color: #fff;
        font-size: 1.6rem;
        cursor: pointer;
    }

    body.mobile-menu-open {
        overflow: hidden;
    }

    .hamburger {
        cursor: pointer;
    }

    .hamburger input {
        display: none;
    }

    .hamburger svg {
        /* The size of the SVG defines the overall size */
        height: 1.8em;
        /* Define the transition for transforming the SVG */
        transition: transform 600ms cubic-bezier(0.4, 0, 0.2, 1);
    }

    .line {
        fill: none;
        stroke: var(--primary-color);
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 3;
        /* Define the transition for transforming the Stroke */
        transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1),
        stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
    }

    .line-top-bottom {
        stroke-dasharray: 12 63;
    }

    .hamburger input:checked + svg {
        transform: rotate(-45deg);
    }

    .hamburger input:checked + svg .line-top-bottom {
        stroke-dasharray: 20 300;
        stroke-dashoffset: -32.42;
    }

    .must-read {
        margin-top: 20px;
    }

    .newsletter .text,
    .newsletter-container,
    .subscription {
        flex-direction: column;
        text-align: center;
        gap: 10px;
    }

    .newsletter .text h2 {
        text-align: center;
        font-size: 22px;

    }

    .investigations-section .news-box .img-card {
        width: 100%;
        height: 220px;
    }

    .reports .col-md-6 > .news-box-vrtical {
        margin-bottom: 20px;
    }

    .reports .news-box .img-card,
    .featured-articles-section .news-box .img-card {
        width: 100%;
        height: 220px;
    }

    .section {
        padding: 40px 0;
    }

    .list-featured-small .article-slide .img-card {
        height: 200px;
    }

    .sidebar {
        margin-top: 40px;
    }

    .featured-articles-section .articlesSlider .article-slide .img-card {
        height: 300px;
    }
}


/* Hero header for the article */
.article-hero {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    margin-bottom: 30px;
}

.article-hero img {
    width: 100%;
    height: 600px;
    object-fit: cover;
}

.hero-overlay {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 20px;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
    color: #fff;
}

.hero-overlay h1 {
    font-size: 2.5rem;
    margin-bottom: 10px;
}

.article-meta {
    font-size: 0.9rem;
    color: #ddd;
}

/* Article Content Styling */
.article-content {
    color: #333;
    margin-bottom: 50px;
    font-size: 18px;
}

.article-content p {
    font-family: "calibri", sans-serif !important;
    margin-bottom: 1.2rem;
    font-weight: 400;

}

.article-content h2 {
    font-size: 1.6rem;
    margin-top: 2rem;
    margin-bottom: 1rem;
    color: var(--secondary-color);
}

.article-content p {
    font-family: "calibri", sans-serif !important;
    font-size: 18px;
}

.article-content h3 {
    font-size: 1.4rem;
    margin-top: 1.8rem;
    margin-bottom: 0.8rem;
    color: #444;
}

.article-content blockquote {
    border-right: 5px solid var(--secondary-color);
    margin: 20px 0;
    padding: 10px 20px;
    background: #f7f7f7;
    font-style: italic;
    color: #555;
}

.article-content ul {
    list-style: disc inside;
    margin-bottom: 1.2rem;
}

/* Social Share Section */
.social-share {
    margin: 30px 0;
    padding: 15px;
    text-align: center;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

.social-share h5 {
    margin-bottom: 10px;
}

.social-share a {
    display: inline-block;
    margin: 0 10px;
    font-size: 1.5rem;
    color: var(--primary-color);
    transition: color 0.3s ease;
}

.social-share a:hover {
    color: var(--secondary-color);
}

/* Author Bio Section */
.author-bio {
    margin: 50px 0;
}

.bio-container {
    background: #f7f7f7;
    border-radius: 8px;
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.bio-image {
    flex: 0 0 150px;
    text-align: center;
    margin-bottom: 15px;
}

.bio-image img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    object-fit: cover;
}

.bio-info {
    flex: 1;
    padding-right: 20px;
}

.bio-info h4 {
    margin-bottom: 10px;
    color: #333;
}

.bio-info p {
    margin-bottom: 10px;
    font-size: 1rem;
    color: #555;
}

.author-social a {
    margin: 0 8px;
    font-size: 1.3rem;
    color: var(--primary-color);
    transition: color 0.3s ease;
}

.author-social a:hover {
    color: var(--secondary-color);
}

/* Related Articles Section */
.related-articles {
    margin-top: 50px;
}

.related-articles h3 {
    margin-bottom: 20px;
    border-bottom: 2px solid var(--secondary-color);
    padding-bottom: 5px;
    color: #333;
}

.related-articles .article-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    margin-bottom: 20px;
}

.related-articles .article-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* ===== Authors (RTL Ready) ===== */
.authors-wrap {
    margin-top: 1rem
}

.authors-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

@media (min-width: 768px) {
    .authors-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

.author-card {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 18px 20px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .06);
    border-radius: 16px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .04);
    transition: box-shadow .2s ease, transform .15s ease, border-color .2s ease;
}

.author-card:hover {
    transform: translateY(-2px);
    border-color: rgba(0, 0, 0, .10);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .08);
}

/* Avatar on the right (RTL) */
.author-avatar {
    flex: 0 0 auto;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid #f1f1f1;
    box-shadow: inset 0 0 0 4px #fff;
}

.author-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Text side */
.author-meta {
    flex: 1 1 auto;
    text-align: right;
    min-width: 0;
}

.author-name {
    margin: 0 0 4px;
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: .1px;
}

.author-name a {
    color: #111;
    text-decoration: none;
}

.author-name a:hover {
    text-decoration: underline;
}

.author-desc {
    margin: 0 0 10px;
    color: #606b77;
    line-height: 1.85;
    font-size: .95rem;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* يتوسع تلقائياً في الشاشات الكبيرة تحت */
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media (min-width: 992px) {
    .author-desc {
        -webkit-line-clamp: 3;
    }
}

/* Social */
.author-social {
    display: flex;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: flex-end;
}

.author-social li a {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 50%;
    background: #fafafa;
    transition: transform .15s ease, border-color .2s ease, background .2s ease;
}

.author-social li a:hover {
    transform: translateY(-1px);
    border-color: rgba(0, 0, 0, .2);
    background: #fff;
}

.author-social img {
    width: 18px;
    height: 18px;
    object-fit: contain;
    display: block;
}

/* Tighten vertical rhythm so مفيش فراغات فاضية */
.authors-wrap .author-card + .author-card {
    margin-top: 0;
}

.item .author-list {
    bottom: 100%;
    top: unset;
}

.by-owner {
    font-size: 24px;
    color: var(--primary-color);
    display: flex;
    flex-flow: column;
    align-items: start;
    line-height: 1.2;
}

.by-owner span:last-child {
    color: var(--secondary-color);
}

.featured-articles-section .news-title {
    font-size: 1.4rem;
}


.breadcrumb {
    font-size: .95rem;
    color: #6b7280;
}

.breadcrumb a {
    color: var(--primary-color);
    text-decoration: none;
}

.breadcrumb .separator {
    margin: 0 6px;
    color: #9ca3af;
}

.page-header h1 {
    font-size: 2.5rem;
    color: var(--primary-color);
}

.hero-image img {
    max-height: 220px;
    object-fit: cover;
}

/* =======================================================================
  12) Floating WhatsApp Button
======================================================================= */
.fixed-btn {
    position: fixed;
    bottom: 20px;
    left: 20px;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Gaurang7717 */
.btn-whatsapp {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 45px;
    height: 45px;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition-duration: .3s;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, .199);
    background: #00d757;
}

.btn-whatsapp .sign {
    width: 100%;
    transition-duration: .3s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-whatsapp .sign svg {
    width: 25px;
}

.btn-whatsapp .sign svg path {
    fill: #fff;
}

.btn-whatsapp .text {
    position: absolute;
    left: 0;
    width: 0;
    opacity: 0;
    color: #fff;
    font-size: 1em;
    font-weight: 600;
    transition-duration: .3s;
    font-family: Arial, Helvetica, sans-serif;
}

.btn-whatsapp:hover {
    width: 130px;
    border-radius: 40px;
}

.btn-whatsapp:hover .sign {
    width: 30%;
    padding-right: 10px;
}

.btn-whatsapp:hover .text {
    opacity: 1;
    width: 70%;
    padding-right: 10px;
}

.btn-whatsapp:active {
    transform: translate(2px, 2px);
}

.about-content h2 {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 40px 0 15px;
    color: var(--secondary-color, #0ea5e9);
    border-right: 4px solid var(--primary-color);
    padding-right: 10px;
}

.about-content p {
    font-size: 1.1rem;
    line-height: 1.9;
    margin-bottom: 18px;
    color: var(--text-muted, #374151);
    text-align: justify;
}

.about-content ul {
    padding-right: 20px;
    list-style: disc;
    font-size: 1.1rem;
    margin-bottom: 25px;
}

/* ===== WhatsApp Banner ===== */
.whatsapp-banner {
    display: none;
    position: fixed;
    padding: .6rem 0;
    background: var(--secondary-color); /* برتقالي */
    top: 0; /* سنضبطها بالـJS حسب ارتفاع الهيدر */
    left: 0;
    right: 0;
    z-index: 1049; /* أقل درجة من navbar (اللي عندك 1050/1060) */
    transform: translateY(-8px);
    opacity: 0;
    pointer-events: none;
    transition: transform .18s ease, opacity .18s ease;
}

.whatsapp-banner.is-visible {
    display: block;
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}


.whatsapp-banner__inner {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .4rem 1rem;
}

.whatsapp-banner__text {
    margin: 0;
    font-size: 1.4rem;
    color: #FFF;
    font-weight: 600;
}

.whatsapp-banner__btn {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    background: #fff;
    color: var(--secondary-color);
    font-weight: 700;
    padding: .35rem 1rem;
    border-radius: 999px;
    text-decoration: none;
    font-size: .95rem;
    transition: background .2s ease, color .2s ease;
}

.whatsapp-banner__btn:hover {
    background: color-mix(in srgb, #fff 85%, var(--secondary-color));
    color: #000;
}

/* Responsive */
@media (max-width: 640px) {
    .whatsapp-banner__inner {
        text-align: center;
    }

    .whatsapp-banner__text {
        font-size: 1.2rem;
    }
}

.search-banner__inner{
    margin-top: 12px;
}
.search-banner__inner form,
.search-banner__inner div{
    width: 100%;
}
.search-banner__inner button{
    background: var(--secondary-color);
}
.search-banner__inner .navbar-search input[type="text"]{
    width: 100%;
}



/* =========================================
   WhatsApp Banner – Smooth & Jank-free
   Notes:
   - No 'display:none' so CSS transitions can run.
   - Banner sits exactly below the sticky header (via CSS var).
========================================= */
:root{
    --sticky-header-h: 0px; /* current sticky header height */
    --banner-h: 0px;        /* current banner height */
}

/* Global safety: prevent accidental horizontal scrollbars */
html, body { overflow-x: hidden; }

/* Optional: avoid sub-pixel jiggle on containers */
.container { contain: layout paint style; }

/* ===== WhatsApp Banner ===== */
.whatsapp-banner{
    position: fixed;
    inset-inline: 0;
    top: var(--sticky-header-h);
    z-index: 1049; /* below your navbar (1050/1060) */
    padding: .6rem 0;
    background: var(--secondary-color);
    /* Smooth appearance */
    opacity: 0;
    transform: translateY(-8px);
    pointer-events: none;
    visibility: hidden;
    transition: transform .24s ease, opacity .24s ease, visibility 0s linear .24s;
    will-change: transform, opacity;
    backface-visibility: hidden;
    /* iOS notch padding when at very top (defensive) */
    padding-top: calc(.6rem + env(safe-area-inset-top));
}

.whatsapp-banner.is-visible{
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
    visibility: visible;
    transition: transform .24s ease, opacity .24s ease, visibility 0s;
}

.whatsapp-banner__inner{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .4rem 1rem;
}

.whatsapp-banner__text{
    margin: 0;
    font-size: 1.4rem;
    color: #fff;
    font-weight: 600;
}

.whatsapp-banner__btn{
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    background: #fff;
    color: var(--secondary-color);
    font-weight: 700;
    padding: .35rem 1rem;
    border-radius: 999px;
    text-decoration: none;
    font-size: .95rem;
    transition: background .2s ease, color .2s ease;
    will-change: background, color;
}

.whatsapp-banner__btn:hover{
    background: color-mix(in srgb, #fff 85%, var(--secondary-color));
    color: #000;
}

/* Spacer under sticky bars to prevent layout jump when banner shows */
.sticky-spacer{
    height: 0;
    transition: height .24s ease;
    will-change: height;
}

/* Responsive */
@media (max-width: 640px){
    .whatsapp-banner__inner{ text-align: center; flex-wrap: wrap; }
    .whatsapp-banner__text{ font-size: 1.2rem; }
}

/* Search banner small fixes (unchanged behavior, just safe width) */
.search-banner__inner{ margin-top: 12px; }
.search-banner__inner form,
.search-banner__inner div{ width: 100%; }
.search-banner__inner button{ background: var(--secondary-color); }
.search-banner__inner .navbar-search input[type="text"]{ width: 100%; }

/* Accessibility: respect reduced motion */
@media (prefers-reduced-motion: reduce){
    .whatsapp-banner,
    .sticky-spacer{
        transition: none !important;
    }
}
