/*=========================================
NEWS HERO
=========================================*/

.page-hero{

    position: relative;

    overflow: hidden;

    padding: 120px 0 90px;

    background: linear-gradient(135deg,#0d4d8b,#1d71b8);

    color:#fff;

    text-align:center;

}

.page-hero::before{

    content:"";

    position:absolute;

    width:550px;

    height:550px;

    background:rgba(255,255,255,.05);

    border-radius:50%;

    top:-180px;

    left:-180px;

}

.page-hero::after{

    content:"";

    position:absolute;

    width:420px;

    height:420px;

    background:rgba(255,255,255,.04);

    border-radius:50%;

    bottom:-180px;

    right:-180px;

}

.page-hero-content{

    position:relative;

    z-index:2;

    max-width:760px;

    margin:auto;

}

.hero-badge{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 20px;

    background:rgba(255,255,255,.12);

    border-radius:50px;

    margin-bottom:25px;

    backdrop-filter:blur(8px);

}

.page-hero h1{

    font-size:54px;

    margin-bottom:20px;

    font-weight:800;

}

.page-hero p{

    font-size:18px;

    line-height:2;

    opacity:.95;

    margin-bottom:35px;

}

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

.news-section{
    
    top:150px;

    padding:90px 0;

}

.featured-news{

    display:grid;

    grid-template-columns:1.2fr 1fr;

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    margin-bottom:80px;

    box-shadow:0 18px 45px rgba(0,0,0,.08);

}

.featured-image{

    overflow:hidden;

}

.featured-image img{

    width:100%;

    height:100%;

    min-height:480px;

    object-fit:cover;

    transition:.5s;

}

.featured-news:hover img{

    transform:scale(1.08);

}

.featured-content{

    padding:55px;

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.featured-label{

    display:inline-block;

    width:max-content;

    padding:8px 18px;

    background:#0d4d8b;

    color:#fff;

    border-radius:40px;

    margin-bottom:25px;

    font-size:14px;

}

.featured-content h2{

    font-size:38px;

    margin:20px 0;

    line-height:1.5;

}

.featured-content p{

    color:#666;

    line-height:2;

    margin-bottom:35px;

}

/*=========================================
SECTION TITLE
=========================================*/

.section-title{

    text-align:center;

    margin-bottom:55px;

}

.section-title span{

    color:#0d4d8b;

    font-weight:700;

    letter-spacing:1px;

}

.section-title h2{

    font-size:38px;

    margin-top:10px;

}

/*=========================================
NEWS GRID
=========================================*/

.news-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(340px,1fr));

    gap:35px;

}

.news-card{

    background:#fff;

    border-radius:22px;

    overflow:hidden;

    box-shadow:0 10px 35px rgba(0,0,0,.07);

    transition:.35s;

}

.news-card:hover{

    transform:translateY(-10px);

}

.news-card a{

    display:block;

    color:inherit;

    text-decoration:none;

}

.card-image{

    overflow:hidden;

}

.card-image img{

    width:100%;

    height:250px;

    object-fit:cover;

    transition:.45s;

}

.news-card:hover img{

    transform:scale(1.08);

}

.card-body{

    padding:28px;

}

.card-body h3{

    font-size:24px;

    margin:18px 0;

    line-height:1.6;

}

.card-body p{

    color:#666;

    line-height:2;

}

/*=========================================
DATE
=========================================*/

.news-date{

    display:flex;

    align-items:center;

    gap:8px;

    color:#999;

    font-size:14px;

}

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

.read-more{

    display:inline-flex;

    align-items:center;

    gap:10px;

    margin-top:25px;

    color:#0d4d8b;

    font-weight:700;

    transition:.3s;

}

.news-card:hover .read-more{

    gap:18px;

}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:992px){

    .featured-news{

        grid-template-columns:1fr;

    }

    .featured-image img{

        min-height:320px;

    }

    .featured-content{

        padding:35px;

    }

    .page-hero h1{

        font-size:42px;

    }

}

@media(max-width:768px){

    .page-hero{

        padding:90px 0 70px;

    }

    .page-hero h1{

        font-size:34px;

    }

    .featured-content h2{

        font-size:28px;

    }

    .section-title h2{

        font-size:30px;

    }

    .news-grid{

        grid-template-columns:1fr;

    }

}

/*=========================================
NEWS DETAILS
=========================================*/

.news-details-section{

    padding:80px 0;

}

.news-article{

    max-width:900px;

    margin:auto;

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    box-shadow:0 15px 45px rgba(0,0,0,.08);

}

.news-cover img{

    width:100%;

    height:520px;

    object-fit:cover;

    display:block;

}

.news-info{

    padding:35px 60px 0;

}

.article-title{

    padding:10px 60px;

    font-size:42px;

    line-height:1.5;

    font-weight:800;

}

.article-summary{

    margin:0 60px 35px;

    padding:25px;

    background:#f5f8fc;

    border-right:5px solid #0d4d8b;

    border-radius:12px;

    line-height:2;

    color:#555;

    font-size:18px;

}

.article-content{

    padding:0 60px 60px;

    line-height:2.2;

    font-size:18px;

    color:#444;

}

.article-content h1,
.article-content h2,
.article-content h3,
.article-content h4{

    margin:35px 0 20px;

    color:#0d4d8b;

}

.article-content p{

    margin-bottom:20px;

}

.article-content img{

    max-width:100%;

    display:block;

    margin:35px auto;

    border-radius:18px;

}

.article-content ul,
.article-content ol{

    padding-right:25px;

    margin-bottom:25px;

}

.article-content li{

    margin-bottom:10px;

}

.article-content table{

    width:100%;

    border-collapse:collapse;

    margin:30px 0;

}

.article-content table td,
.article-content table th{

    border:1px solid #ddd;

    padding:12px;

}

.article-content blockquote{

    margin:30px 0;

    padding:20px 25px;

    border-right:5px solid #0d4d8b;

    background:#f7f9fc;

    font-style:italic;

}

@media(max-width:768px){

.news-cover img{

height:260px;

}

.article-title{

padding:10px 25px;

font-size:30px;

}

.article-summary{

margin:0 25px 25px;

}

.article-content{

padding:0 25px 40px;

font-size:16px;

}

.news-info{

padding:25px 25px 0;

}

}

/*=========================================
NEWS DETAILS MOBILE
=========================================*/

@media (max-width: 992px) {

    .news-article {

        border-radius: 18px;

    }

    .news-cover img {

        height: 320px;

    }

    .article-title {

        font-size: 32px;

        padding: 10px 35px;

    }

    .article-summary {

        margin: 0 35px 30px;

        padding: 20px;

    }

    .article-content {

        padding: 0 35px 40px;

    }

}

@media (max-width: 768px) {

    .news-details-section {

        padding: 40px 0;

    }

    .news-article {

        border-radius: 15px;

    }

    .news-cover img {

        height: 220px;

    }

    .news-info {

        padding: 20px 20px 0;

    }

    .article-title {

        padding: 10px 20px;

        font-size: 26px;

        line-height: 1.6;

    }

    .article-summary {

        margin: 0 20px 20px;

        padding: 18px;

        font-size: 16px;

    }

    .article-content {

        padding: 0 20px 30px;

        font-size: 16px;

        line-height: 2;

    }

    .article-content img {

        margin: 20px auto;

        border-radius: 12px;

    }

    .article-content table {

        display: block;

        overflow-x: auto;

        white-space: nowrap;

    }

}

@media (max-width: 480px) {

    .news-cover img {

        height: 180px;

    }

    .article-title {

        font-size: 22px;

    }

    .article-summary {

        font-size: 15px;

    }

    .article-content {

        font-size: 15px;

    }

    .news-date {

        font-size: 13px;

    }

}