
        /* ==========================
        GLOBAL THEME
        ========================== */

        :root{
            --primary: #bc002d;
            --primary-hover: #e60037;

            --heading: #1f2937;     /* dark navy */
            --text: #4b5563;        /* body text */
            --text-light: #6b7280;  /* date */
        }

        body{
            font-family:'Poppins',sans-serif;
            background:var(--bg);
            color:var(--text);
        }

        /* ==========================
        NAVIGATION
        ========================== */

        .navbar,
        .site-header{
            background:#fff;
            box-shadow:0 2px 15px rgba(0,0,0,.08);
        }

        .logo{
            color:var(--primary);
        }

        .nav-menu a{
            color:var(--text);
            font-weight:500;
            transition:.3s;
        }

        .nav-menu a:hover{
            color:var(--primary);
        }

        .nav-menu a.active{
            color:var(--primary);
            border-bottom:3px solid var(--primary);
            padding-bottom:5px;
        }

        /* ==========================
        HERO HEADER
        ========================== */

        .header{
            position:relative;
            background-image:url('https://images.unsplash.com/photo-1504711434969-e33886168f5c');
            background-size:cover;
            background-position:center;
            color:#fff;
            padding:120px 20px;
            text-align:center;
        }

        .header::before{
            content:"";
            position:absolute;
            inset:0;
            background:rgba(0,0,0,.55);
        }

        .header h1,
        .header p{
            position:relative;
            z-index:2;
        }

        .header h1{
            font-size:48px;
            margin-bottom:15px;
        }

        .header p{
            font-size:20px;
            opacity:.95;
        }

        /* ==========================
        SEARCH
        ========================== */

        .search-box{
            margin-bottom:30px;
            background:#fff;
            padding:18px;
            border-radius:20px;
            border:1px solid #eef2f7;
            box-shadow:0 4px 10px rgba(0,0,0,.04);
        }

        .search-box input{
            width:100%;
            padding:14px 16px;
            border:1px solid #e5e7eb;
            border-radius:12px;
            font-size:15px;
            background:#f9fafb;
            transition:.3s;
        }

        .search-box input:focus{
            outline:none;
            border-color:var(--primary);
            background:#fff;
            box-shadow:0 0 0 4px rgba(188,0,45,.10);
        }

        /* ==========================
        FEATURED NEWS
        ========================== */

        .featured{
            background:#fff;
            border:1px solid #eef2f7;
            border-radius:20px;
            overflow:hidden;
            margin-bottom:35px;

            box-shadow:0 6px 18px rgba(0,0,0,.06);
            cursor:pointer;
            transition:all .3s ease;
        }

        .featured:hover{
            transform:translateY(-4px);
        }

        .featured-content{
            padding:36px;
        }

        .featured-title{
            /* color:var(--heading); */
            color: var(--brand-dark-blue);
            font-size:32px;
            font-weight:700;
            line-height:1.3;
        }

        .featured-date{
            color:var(--text-light);
            margin-bottom:12px;
        }

        .featured p{
            color:var(--text);
            line-height:1.8;
            margin-top:14px;
        }
        .featured-image{
            height:280px;
            width:100%;
            object-fit:cover;
            background:url("https://images.unsplash.com/photo-1520607162513-77705c0f0d4a") center/cover;
        }
        .container{
            max-width:1500px;
            margin:auto;
            padding:30px 20px;
        }

        /* ==========================
        NEWS CARDS
        ========================== */

        .news-grid{
            display:grid;
            grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
            gap:25px;
        }

        .news-card{
            background:#fff;
            border:1px solid #eef2f7;
            border-radius:20px;
            box-shadow:
                0 4px 10px rgba(0,0,0,.04),
                0 12px 30px rgba(0,0,0,.06);
            transition:all .3s ease;
            display:flex;
            flex-direction:column;
            height:100%;
        }

        .news-card:hover{
            transform:translateY(-6px);
            box-shadow:
                0 10px 20px rgba(0,0,0,.06),
                0 20px 40px rgba(0,0,0,.10);
        }

        .news-card:hover{
            transform:translateY(-6px);
        }

        .card-body{
            padding:28px;
            display:flex;
            flex-direction:column;
            height:100%;
            gap:12px;
        }
        .read-btn{
            margin-top:auto;
        }
        .read-btn{
            align-self:flex-start;
            width:auto;
            display:inline-flex;
            padding:15px 15px;
            white-space:nowrap;
        }
        .card-image {
            height: 180px;
            background-color: #f3f4f6;
            background-image: url('https://images.unsplash.com/photo-1504711434969-e33886168f5c');
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
        }
        .news-date{
            color:var(--text-light);
            font-size:13px;
            margin-bottom:10px;
        }
        .news-date,
        .featured-date,
        .modal-date{
            color:#9ca3af;
            font-size:13px;
            font-weight:500;
        }
        .news-title::before{
            content:"";
            display:block;
            width:40px;
            height:3px;
            background:var(--primary);
            border-radius:20px;
            margin-bottom:12px;
        }

        .news-title{
            color:var(--heading);
            font-size:22px;
            font-weight:700;
            line-height:1.45;
            letter-spacing:-0.2px;
        }

        .news-content{
            color:#6b7280;
            line-height:1.8;
            font-size:15px;
            margin-bottom:18px;
        }

        /* ==========================
        READ MORE BUTTON
        ========================== */

        .read-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;

            padding: 10px 18px;
            min-height: 40px;

            background: var(--primary);
            color: #fff;

            border: none;
            border-radius: 999px;

            font-weight: 600;
            font-size: 13.5px;
            letter-spacing: 0.2px;

            cursor: pointer;
            text-decoration: none;

            box-shadow: 0 8px 18px rgba(188,0,45,.20);

            transition: all .25s ease;
        }

        .read-btn:hover {
            background: var(--primary-hover);
            transform: translateY(-2px);
            box-shadow: 0 12px 26px rgba(188,0,45,.30);
        }

        .read-btn:focus{
            outline:none;
        }

        .read-btn:active {
            transform: translateY(0);
            box-shadow: 0 6px 14px rgba(188,0,45,.18);
        }

        /* ==========================
        PAGINATION
        ========================== */

        .pagination{
            display:flex;
            justify-content:center;
            gap:10px;
            margin-top:40px;
            flex-wrap:wrap;
        }

        .pagination button{
            width:45px;
            height:45px;
            border:none;
            border-radius:10px;
            background:#fff;
            color:var(--text);
            cursor:pointer;
            box-shadow:0 2px 8px rgba(0,0,0,.08);
            transition:.3s;
        }

        .pagination button:hover{
            background:#f3f4f6;
        }

        .pagination button.active{
            background:var(--primary);
            color:#fff;
        }

        /* ==========================
        MODAL
        ========================== */

        .modal{
            display:none;
            position:fixed;
            inset:0;
            background:rgba(0,0,0,.7);
            z-index:99999;
            overflow:auto;
            padding:20px;
        }

        .modal-content{
            background:#fff;
            max-width:900px;
            margin:40px auto;
            border-radius:20px;
            padding:35px;
            position:relative;
        }

        .close{
            position:absolute;
            right:20px;
            top:10px;
            font-size:35px;
            cursor:pointer;
            color:var(--text-light);
        }

        .close:hover{
            color:var(--primary);
        }

        .modal-title{
            color:var(--primary);
            font-size:34px;
            margin-bottom:15px;
        }

        .modal-date{
            color:var(--text-light);
            margin-bottom:20px;
        }

        .modal-text{
            color:var(--text);
            line-height:1.9;
        }

        /* ==========================
        FOOTER
        ========================== */

        .footer{
            background:#1f2937;
            color:#d1d5db;
            text-align:center;
            padding:30px;
            margin-top:60px;
        }

        /* ==========================
        MOBILE
        ========================== */

        @media (max-width:768px){

            .header{
                padding:90px 20px;
            }

            .header h1{
                font-size:32px;
            }

            .header p{
                font-size:16px;
            }

            .featured-title{
                font-size:24px;
            }

            .news-title{
                font-size:20px;
            }

            .modal-title{
                font-size:26px;
            }

            .modal-content{
                padding:25px;
            }
        }