/* NEWS PAGE — specific styles only */

@font-face {
            font-family: 'Abusayed';
            src: url('../fonts/Codepotro Abu Sayed.ttf') format('truetype');
            font-weight: normal;
            font-style: normal;
        }

/* ══════════  FILTER BAR  ══════════ */
        .filter-bar {
            background: #fff;
            border-bottom: 1px solid rgba(2,108,51,0.1);
            padding: 0 40px;
            display: flex;
            align-items: center;
            gap: 6px;
            overflow-x: auto;
            -ms-overflow-style: none;
            scrollbar-width: none;
        }
        .filter-bar::-webkit-scrollbar { display: none; }
        .ftab {
            flex-shrink: 0;
            padding: 16px 20px;
            font-size: 13px;
            font-weight: 600;
            color: #888;
            background: transparent;
            border: none;
            border-bottom: 3px solid transparent;
            cursor: pointer;
            letter-spacing: 0.04em;
            transition: all 0.22s;
            white-space: nowrap;
        }
        .ftab:hover { color: var(--green-dk); }
        .ftab.active {
            color: var(--green-dk);
            border-bottom-color: var(--red);
            font-weight: 700;
        }

        /* ══════════  SEC LABEL  ══════════ */
        .sec-label {
            font-size: 11px; font-weight: 700;
            letter-spacing: 0.14em;
            text-transform: uppercase;
            color: var(--red);
            display: flex; align-items: center; gap: 8px;
            margin-bottom: 8px;
        }
        .sec-label::before {
            content: '';
            width: 26px; height: 2.5px;
            background: var(--red);
            border-radius: 2px; display: block;
        }
        .sec-title {
            font-family: 'Tiro Bangla', serif;
            font-size: clamp(24px, 3.2vw, 38px);
            font-weight: 900;
            color: var(--green-dk);
            line-height: 1.15;
        }

        /* ══════════  FEATURED  ══════════ */
        .featured-sec {
            background: var(--off);
            padding: 72px 40px;
        }
        .featured-inner {
            max-width: 1200px;
            margin: 0 auto;
        }
        .featured-head {
            margin-bottom: 40px;
        }
        .featured-grid {
            display: grid;
            grid-template-columns: 1.5fr 1fr;
            gap: 28px;
        }

        /* Big featured card */
        .feat-main {
            background: #fff;
            border-radius: 20px;
            overflow: hidden;
            box-shadow: 0 4px 28px rgba(0,0,0,0.07);
            transition: all 0.3s;
            border: 1px solid rgba(0,0,0,0.04);
            display: flex;
            flex-direction: column;
        }
        .feat-main:hover {
            transform: translateY(-6px);
            box-shadow: 0 20px 56px rgba(2,108,51,0.14);
        }
        .feat-main-img {
            width: 100%;
            height: 280px;
            background: #081a0c;
            position: relative;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        /* Illustrated placeholder — press/megaphone graphic */
        .feat-main-img svg {
            opacity: 0.18;
        }
        .feat-main-img .img-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to bottom, transparent 40%, rgba(1,50,24,0.55) 100%);
        }
        .feat-cat {
            position: absolute;
            top: 16px; left: 16px;
            background: var(--red);
            color: #fff;
            font-size: 10px; font-weight: 700;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            padding: 6px 14px;
            border-radius: 100px;
        }
        .feat-main-body { padding: 28px; flex: 1; display: flex; flex-direction: column; }
        .feat-meta {
            font-size: 12px;
            color: var(--green);
            font-weight: 600;
            letter-spacing: 0.04em;
            text-transform: uppercase;
            margin-bottom: 10px;
            display: flex; gap: 14px; align-items: center;
        }
        .feat-meta .sep { opacity: 0.3; }
        .feat-main-title {
            font-family: 'Abusayed', serif;
            font-size: 22px;
            color: var(--green-dk);
            line-height: 1.45;
            margin-bottom: 12px;
            flex: 1;
        }
        .feat-main-exc {
            font-size: 14px;
            color: #666;
            line-height: 1.75;
            margin-bottom: 20px;
        }
        .read-link {
            display: inline-flex;
            align-items: center;
            gap: 7px;
            color: var(--red);
            font-size: 12px; font-weight: 700;
            text-decoration: none;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            transition: gap 0.2s;
        }
        .read-link:hover { gap: 12px; }
        .read-link svg { transition: transform 0.2s; }
        .read-link:hover svg { transform: translateX(4px); }

        /* Side stacked cards */
        .feat-side { display: flex; flex-direction: column; gap: 20px; }
        .feat-side-card {
            background: #fff;
            border-radius: 16px;
            overflow: hidden;
            box-shadow: 0 2px 14px rgba(0,0,0,0.06);
            display: flex;
            gap: 0;
            transition: all 0.3s;
            border: 1px solid rgba(0,0,0,0.04);
        }
        .feat-side-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 12px 36px rgba(2,108,51,0.12);
        }
        .feat-side-thumb {
            width: 110px;
            flex-shrink: 0;
            background: var(--green);
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .feat-side-thumb svg { opacity: 0.22; }
        .feat-side-cat {
            position: absolute;
            bottom: 8px; left: 8px;
            background: rgba(0,0,0,0.45);
            color: #fff;
            font-size: 9px; font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            padding: 3px 8px;
            border-radius: 100px;
        }
        .feat-side-body { padding: 18px 20px; display: flex; flex-direction: column; justify-content: center; }
        .feat-side-date {
            font-size: 11px;
            color: var(--green);
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            margin-bottom: 7px;
        }
        .feat-side-title {
            font-family: 'Abusayed', serif;
            font-size: 16px;
            color: var(--green-dk);
            line-height: 1.45;
            margin-bottom: 10px;
        }
        .feat-side-link {
            font-size: 11px; font-weight: 700;
            color: var(--red);
            text-decoration: none;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            display: inline-flex;
            align-items: center; gap: 5px;
            transition: gap 0.2s;
        }
        .feat-side-link:hover { gap: 9px; }

        /* ══════════  ALL NEWS GRID  ══════════ */
        .news-sec {
            background: #fff;
            padding: 80px 40px;
        }
        .news-inner { max-width: 1200px; margin: 0 auto; }
        .news-head {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            margin-bottom: 44px;
        }
        .news-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 28px;
            margin-bottom: 52px;
        }
        .news-card {
            background: var(--off);
            border-radius: 18px;
            overflow: hidden;
            border: 1px solid rgba(2,108,51,0.08);
            transition: all 0.3s;
            position: relative;
        }
        .news-card::before {
            content: '';
            position: absolute;
            top: 0; left: 0; right: 0;
            height: 3px;
            background: var(--green);
            transform: scaleX(0);
            transform-origin: left;
            transition: transform 0.3s;
        }
        .news-card:hover {
            transform: translateY(-6px);
            box-shadow: 0 18px 50px rgba(2,108,51,0.12);
            background: #fff;
        }
        .news-card:hover::before { transform: scaleX(1); }
        .news-card-thumb {
            height: 160px;
            background: #081a0c;
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
        }
        .news-card-thumb svg { opacity: 0.15; }
        /* colour variants for placeholder thumbs */
        .thumb-red { background: #8b1010; }
        .thumb-green { background: #081a0c; }
        .thumb-teal { background: #045c44; }
        .thumb-navy { background: #0a2340; }
        .news-cat {
            position: absolute;
            top: 12px; left: 12px;
            background: var(--red);
            color: #fff;
            font-size: 10px; font-weight: 700;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            padding: 5px 12px;
            border-radius: 100px;
        }
        .news-cat.cat-green { background: var(--green); }
        .news-cat.cat-dark { background: rgba(0,0,0,0.55); }
        .news-body { padding: 22px; }
        .news-date {
            font-size: 11px;
            color: var(--green);
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            margin-bottom: 9px;
        }
        .news-title {
            font-family: 'Abusayed', serif;
            font-size: 18px;
            color: var(--green-dk);
            line-height: 1.45;
            margin-bottom: 10px;
        }
        .news-exc {
            font-size: 13.5px;
            color: #666;
            line-height: 1.7;
            margin-bottom: 16px;
            display: -webkit-box;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }
        .news-link {
            display: inline-flex;
            align-items: center; gap: 6px;
            color: var(--red);
            font-size: 11px; font-weight: 700;
            text-decoration: none;
            letter-spacing: 0.07em;
            text-transform: uppercase;
            transition: gap 0.2s;
        }
        .news-link:hover { gap: 10px; }

        /* Load more */
        .load-more-wrap { text-align: center; }
        .btn-outline-green {
            display: inline-flex;
            align-items: center; gap: 10px;
            padding: 14px 36px;
            border: 2px solid var(--green);
            border-radius: 6px;
            color: var(--green);
            font-size: 14px; font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
            text-decoration: none;
            background: transparent;
            cursor: pointer;
            transition: all 0.25s;
        }
        .btn-outline-green:hover {
            background: var(--green);
            color: #fff;
            transform: translateY(-2px);
            box-shadow: 0 8px 28px rgba(2,108,51,0.22);
        }

        /* ══════════  PRESS RELEASES  ══════════ */
        .press-sec {
            background: var(--off);
            padding: 80px 40px;
        }
        .press-inner { max-width: 1200px; margin: 0 auto; }
        .press-head { margin-bottom: 40px; }
        .press-list { display: flex; flex-direction: column; gap: 0; }
        .press-row {
            display: flex;
            align-items: center;
            gap: 24px;
            padding: 22px 0;
            border-bottom: 1px solid rgba(2,108,51,0.1);
            transition: all 0.22s;
            text-decoration: none;
            color: inherit;
        }
        .press-row:first-child { border-top: 1px solid rgba(2,108,51,0.1); }
        .press-row:hover .press-title { color: var(--red); }
        .press-row:hover .press-arrow { transform: translateX(5px); }
        .press-date-box {
            flex-shrink: 0;
            width: 56px;
            text-align: center;
        }
        .press-date-d {
            font-family: 'Tiro Bangla', serif;
            font-size: 28px; font-weight: 900;
            color: var(--green-dk);
            line-height: 1;
        }
        .press-date-m {
            font-size: 10px; font-weight: 700;
            color: var(--red);
            text-transform: uppercase;
            letter-spacing: 0.08em;
        }
        .press-divider {
            width: 1px; height: 40px;
            background: rgba(2,108,51,0.2);
            flex-shrink: 0;
        }
        .press-info { flex: 1; }
        .press-badge {
            display: inline-block;
            font-size: 9px; font-weight: 700;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: var(--green);
            border: 1px solid rgba(2,108,51,0.35);
            padding: 3px 10px;
            border-radius: 100px;
            margin-bottom: 7px;
        }
        .press-title {
            font-family: 'Abusayed', serif;
            font-size: 17px;
            color: var(--green-dk);
            line-height: 1.4;
            transition: color 0.22s;
        }
        .press-arrow {
            flex-shrink: 0;
            color: var(--red);
            transition: transform 0.22s;
        }

        /* ══════════  MEDIA / PHOTO  ══════════ */
        .media-sec {
            background: #fff;
            padding: 80px 40px;
        }
        .media-inner { max-width: 1200px; margin: 0 auto; }
        .media-head {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            margin-bottom: 36px;
        }
        .media-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 16px;
        }
        .media-thumb {
            border-radius: 14px;
            overflow: hidden;
            aspect-ratio: 4/3;
            background: #081a0c;
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.3s;
        }
        .media-thumb.tall { grid-row: span 2; aspect-ratio: unset; }
        .media-thumb:hover { transform: scale(1.03); box-shadow: 0 12px 36px rgba(0,0,0,0.18); }
        .media-thumb svg { opacity: 0.18; }
        .media-thumb-overlay {
            position: absolute; inset: 0;
            background: rgba(1,50,24,0);
            display: flex; align-items: center; justify-content: center;
            transition: background 0.3s;
        }
        .media-thumb:hover .media-thumb-overlay {
            background: rgba(1,50,24,0.5);
        }
        .media-expand {
            opacity: 0;
            color: #fff;
            transition: opacity 0.3s;
        }
        .media-thumb:hover .media-expand { opacity: 1; }
        .media-label {
            position: absolute;
            bottom: 10px; left: 12px;
            font-size: 11px; font-weight: 600;
            color: rgba(255,255,255,0.8);
            letter-spacing: 0.04em;
        }
        /* colour variants for gallery placeholders */
        .mt-1 { background: #024a23; }
        .mt-2 { background: #7a1010; }
        .mt-3 { background: #04523c; }
        .mt-4 { background: #022b15; }
        .mt-5 { background: #8b2a10; }
        .mt-6 { background: #033a1e; }
        .mt-7 { background: #610f0f; }
        .mt-8 { background: #03613a; }

        /* ══════════  SUBSCRIBE  ══════════ */
        .sub-sec {
            background: #081a0c;
            padding: 72px 40px;
            text-align: center;
            position: relative;
            overflow: hidden;
        }
        .sub-sec::before {
            content: '';
            position: absolute;
            top: -80px; right: -80px;
            width: 300px; height: 300px;
            border-radius: 50%;
            background: rgba(243,27,29,0.08);
            pointer-events: none;
        }
        .sub-sec::after {
            content: '';
            position: absolute;
            bottom: -60px; left: -60px;
            width: 240px; height: 240px;
            border-radius: 50%;
            background: rgba(255,255,255,0.03);
            pointer-events: none;
        }
        .sub-inner { position: relative; z-index: 1; max-width: 600px; margin: 0 auto; }
        .sub-icon {
            width: 64px; height: 64px;
            border-radius: 18px;
            background: rgba(243,27,29,0.2);
            border: 1px solid rgba(243,27,29,0.4);
            display: flex; align-items: center; justify-content: center;
            margin: 0 auto 24px;
        }
        .sub-title {
            font-family: 'Tiro Bangla', serif;
            font-size: clamp(22px, 3vw, 34px);
            font-weight: 900;
            color: #fff;
            margin-bottom: 12px;
            line-height: 1.2;
        }
        .sub-desc {
            font-size: 15px;
            color: rgba(255,255,255,0.58);
            line-height: 1.7;
            margin-bottom: 32px;
        }
        .sub-form {
            display: flex;
            gap: 10px;
            max-width: 440px;
            margin: 0 auto;
        }
        .sub-input {
            flex: 1;
            padding: 15px 18px;
            border-radius: 6px;
            border: 1.5px solid rgba(255,255,255,0.15);
            background: rgba(255,255,255,0.08);
            color: #fff;
            font-size: 14px;
            font-family: 'Tiro Bangla', serif;
            outline: none;
            transition: border-color 0.22s;
        }
        .sub-input::placeholder { color: rgba(255,255,255,0.35); }
        .sub-input:focus { border-color: rgba(243,27,29,0.6); }
        .sub-btn {
            flex-shrink: 0;
            padding: 15px 26px;
            background: var(--red);
            color: #fff;
            border: none;
            border-radius: 6px;
            font-size: 13px; font-weight: 700;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            cursor: pointer;
            transition: all 0.25s;
            font-family: 'Tiro Bangla', serif;
            white-space: nowrap;
        }
        .sub-btn:hover {
            background: #d01517;
            transform: translateY(-2px);
            box-shadow: 0 8px 24px rgba(243,27,29,0.4);
        }
