/* ======================================
BLOG HERO
====================================== */

.blog-hero{
    background:
    linear-gradient(
        135deg,
        #020d4d 0%,
        #04145f 30%,
        #091d87 100%
    );

    padding:30px 0;
    overflow:hidden;
    position:relative;
}

.blog-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:
    radial-gradient(circle at 70% 30%,
    rgba(61,119,255,.25),
    transparent 40%);
}

.blog-hero-grid{
    display:grid;
    /*grid-template-columns:1fr 550px;*/
    grid-template-columns:minmax(0,1fr) minmax(350px,550px);
    gap:60px;
    align-items:center;
    position:relative;
    z-index:2;
}

.blog-tag{
    display:inline-block;
    background:
    rgba(255,255,255,.12);

    border:1px solid
    rgba(255,255,255,.15);

    color:#fff;

    padding:8px 18px;

    border-radius:40px;

    font-size:12px;
    font-weight:700;

    margin-bottom:25px;
}

.blog-hero h1{
    font-size:46px;
    line-height:1.05;
    color:#fff;
    font-weight:800;
    margin-bottom:25px;
}

.blog-hero h1 span{
    color:#2196ff;
    display:block;
}

.blog-hero p{
    color:#d8e2ff;
    font-size:18px;
    line-height:1.8;
    max-width:620px;
    margin-bottom:35px;
}

.hero-btn{
    display:inline-flex;
    align-items:center;
    gap:12px;

    background:#2563ff;

    color:#fff;

    padding:18px 30px;

    border-radius:12px;

    font-weight:700;

    transition:.3s;
}

.hero-btn:hover{
    color:#fff;
    transform:translateY(-3px);
}

/*.blog-hero-image img{*/
/*    width:80%;*/
/*    display:block;*/
/*}*/

.blog-hero-image{
    text-align:center;
}

.blog-hero-image img{
    width:100%;
    max-width:450px;
    margin:0 auto;
    display:block;
}

/* ======================================
BLOG PAGE
====================================== */

.blog-page{
    background:#f7f9fc;
    padding:60px 0;
}

.blog-layout{
    display:grid;
    /*grid-template-columns:minmax(0,1fr) 360px;*/
    grid-template-columns:minmax(0,1fr) minmax(300px,360px);
    gap:35px;
    align-items:start;
}

/* ======================================
BLOG CARD
====================================== */

.blog-card{
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    display:grid;
    grid-template-columns:0.7fr 1fr;
    margin-bottom:25px;
    border:1px solid #edf1f7;
    box-shadow:0 8px 25px rgba(0,0,0,.05);
    transition:.35s ease;
}

.blog-card:hover{
    transform:translateY(-5px);
    box-shadow:0 20px 50px rgba(0,0,0,.08);
}

.blog-image{
    height:100%;
    min-height:220px;
}

.blog-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

.blog-content{
    padding:20px 25px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.blog-meta{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:15px;
    margin-bottom:10px;
    font-size:13px;
    color:#667085;
}

.blog-category{
    background:#6f4ef2;
    color:#fff;
    padding:6px 14px;
    border-radius:30px;
    font-size:12px;
    font-weight:700;
}

.blog-content h2{
    margin:0 0 10px;
}

.blog-content h2 a{
    color:#071C63;
    font-size:24px;
    font-weight:700;
    line-height:1.2;
    text-decoration:none;
}

.blog-content h2 a:hover{
    color:#0B5FFF;
}

.blog-content p{
    color:#667085;
    font-size:14px;
    line-height:1.7;
    margin-bottom:15px;
}

.blog-author-wrap{
    display:flex;
    align-items:center;
    gap:12px;
    margin:10px 0;
}

.blog-author-avatar{
    width:45px;
    height:45px;
    border-radius:50%;
    background:#071C63;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
}

.blog-author{
    color:#071C63;
    font-weight:700;
}

.blog-author-wrap small{
    color:#667085;
}

.read-more{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#2563ff;
    font-weight:700;
    text-decoration:none;
}

.read-more:hover{
    color:#071C63;
}

/* ======================================
SIDEBAR
====================================== */
.blog-sidebar-wrapper {
    margin-top: 45px;
}

.blog-sidebar{
    position:sticky;
    top:100px;
}

.sidebar-widget{
    background:#fff;
    border-radius:20px;
    padding:25px;
    margin-bottom:25px;
    border:1px solid #edf1f7;
}

.search-widget{
    background:#fff;
    padding:20px;
    border-radius:18px;
    margin-bottom:25px;
    border:1px solid #edf1f7;
}

.search-box{
    position:relative;
}

.search-box input{

    width:100%;
    height:55px;

    border:1px solid #e5e7eb;

    border-radius:12px;

    padding:0 55px 0 18px;

    font-size:14px;
}

.search-box button{

    position:absolute;

    right:8px;
    top:50%;

    transform:translateY(-50%);

    width:40px;
    height:40px;

    border:none;

    border-radius:10px;

    background:#0B5FFF;

    color:#fff;

    cursor:pointer;

    transition:.3s;
}

.search-box button:hover{
    background:#071C63;
}

.sidebar-widget h2{
    color:#071C63;
    margin-bottom:20px;
    font-size:24px;
}

.popular-post{
    display:flex;
    gap:15px;
    margin-bottom:20px;
}

.popular-post img{
    width:80px;
    height:80px;
    border-radius:12px;
    object-fit:cover;
}

.popular-post a{
    color:#071C63;
    font-weight:600;
}

.category-list{
    list-style:none;
    margin:0;
    padding:0;
}

.category-list li{
    display:flex;
    justify-content:space-between;
    margin-bottom:15px;
}

.category-list a{
    color:#071C63;
}

.category-list h3 li a{
    font-weight:400;
    font-size:16px;
}

.expert-widget{
    background:
    linear-gradient(
    135deg,
    #071C63,
    #0B5FFF);

    color:#fff;

    padding:30px;

    border-radius:20px;
}

.expert-widget h2{
    color:#fff;
    font-size:26px;
}

.expert-widget p {
    font-size: 16px;
}

.expert-widget ul{
    margin:10px 0;
    padding-left:18px;
}

.expert-widget li{
    margin-bottom:6px;
    font-size: 14px;
}

.expert-btn{
    display:block;
    text-align:center;
    font-size: 14px;
    background:#fff;
    color:#0B5FFF;

    padding:14px;

    border-radius:10px;

    font-weight:700;
}

.popular-content{
    display:flex;
    flex-direction:column;
    gap:6px;
}

.popular-number{
    color:#2563ff;
    font-size:13px;
    font-weight:700;
}

.popular-content a{
    color:#071C63;
    font-size:14px;
    font-weight:600;
    line-height:1.5;
}

.category-list li a{
    display:flex;
    justify-content:space-between;
    align-items:center;
    color:#071C63;
    width:100%;
}

.category-list li strong{
    background:#eef3ff;
    width:28px;
    height:28px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
    color:#2563ff;
}

.expert-widget li i{
    color:#31d17c;
}

.expert-buttons{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-top:20px;
}

.expert-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    width:100%;

    padding:14px 18px;

    border-radius:12px;

    font-weight:700;

    text-decoration:none;

    transition:.3s ease;
}

.expert-btn:first-child{
    background:#ffffff;
    color:#0B5FFF;
}

.expert-btn:first-child:hover{
    transform:translateY(-3px);
}

.whatsapp-btn{
    background:#25D366;
    color:#ffffff;
}

.whatsapp-btn:hover{
    background:#1ebe5d;
    color:#ffffff;
    transform:translateY(-3px);
}

.whatsapp-btn i{
    font-size:18px;
}

/* ======================================
BLOG PAGINATION
====================================== */

.blog-pagination{
    margin-top:50px;
    display:flex;
    justify-content:center;
    overflow-x:auto;
    padding-bottom:5px;
}

.blog-pagination nav{
    display:flex;
    justify-content:center;
}

.blog-pagination .pagination{
    display:flex;
    align-items:center;
    gap:10px;
    margin:0;
    padding:0;
}

.blog-pagination .page-item{
    list-style:none;
}

.blog-pagination .page-link{

    min-width:48px;
    height:48px;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:0 18px;

    border:none !important;

    border-radius:12px;

    background:#ffffff;

    color:#071C63;

    font-size:15px;
    font-weight:700;

    text-decoration:none;

    box-shadow:0 8px 25px rgba(0,0,0,.06);

    transition:.3s ease;
}

.blog-pagination .page-link:hover{

    background:#0B5FFF;
    color:#ffffff;

    transform:translateY(-2px);
}

.blog-pagination .active .page-link{

    background:linear-gradient(
        135deg,
        #0B5FFF,
        #2563ff
    );

    color:#ffffff;

    box-shadow:
    0 12px 30px rgba(11,95,255,.30);
}

.blog-pagination .disabled .page-link{

    opacity:.4;
    pointer-events:none;
}

.blog-pagination svg{
    width:16px;
    height:16px;
}

.blog-pagination .page-item:first-child .page-link,
.blog-pagination .page-item:last-child .page-link{

    padding:0 20px;
    min-width:auto;
}


/* ======================================================
3840px (4K)
====================================================== */
@media (min-width:3000px){

    .blog-hero{
        padding:100px 0;
    }

    .blog-hero-grid{
        grid-template-columns:1fr 800px;
        gap:120px;
    }

    .blog-hero h1{
        font-size:80px;
    }

    .blog-hero p{
        font-size:28px;
        max-width:900px;
    }

    .blog-tag{
        font-size:18px;
        padding:12px 28px;
    }

    .hero-btn{
        padding:22px 40px;
        font-size:20px;
    }

    .blog-page{
        padding:100px 0;
    }

    .blog-layout{
        grid-template-columns:minmax(0,1fr) 500px;
        gap:50px;
    }

    .blog-content{
        padding:35px;
    }

    .blog-content h2 a{
        font-size:36px;
    }

    .blog-content p{
        font-size:18px;
    }

    .sidebar-widget,
    .search-widget{
        padding:35px;
    }

    .sidebar-widget h2{
        font-size:32px;
    }
}

/* ======================================================
2560px
====================================================== */
@media (min-width:2200px) and (max-width:2999px){

    .blog-hero-grid{
        grid-template-columns:1fr 700px;
        gap:90px;
    }

    .blog-hero h1{
        font-size:64px;
    }

    .blog-hero p{
        font-size:24px;
    }

    .blog-layout{
        grid-template-columns:minmax(0,1fr) 450px;
    }

    .blog-content h2 a{
        font-size:30px;
    }
}

/* ======================================================
1920px
====================================================== */
@media (min-width:1600px) and (max-width:2199px){

    .blog-hero h1{
        font-size:54px;
    }

    .blog-hero p{
        font-size:22px;
    }

    .blog-layout{
        grid-template-columns:minmax(0,1fr) 400px;
    }
}

/* ======================================================
1440px
====================================================== */
@media (max-width:1440px){

    .blog-hero-grid{
        grid-template-columns:1fr 500px;
        gap:40px;
    }

    .blog-hero h1{
        font-size:42px;
    }

    .blog-layout{
        grid-template-columns:minmax(0,1fr) 340px;
    }
}

/* ======================================================
1366px
====================================================== */
@media (max-width:1366px){

    .blog-hero h1{
        font-size:40px;
    }

    .blog-hero p{
        font-size:18px;
    }

    .blog-content h2 a{
        font-size:22px;
    }
}

/* ======================================================
1280px
====================================================== */
@media (max-width:1280px){

    .blog-hero-grid{
        grid-template-columns:1fr 450px;
        gap:35px;
    }

    .blog-layout{
        grid-template-columns:minmax(0,1fr) 320px;
        gap:25px;
    }

    .sidebar-widget,
    .search-widget{
        padding:20px;
    }
}

/* ======================================================
1024px
====================================================== */
@media (max-width:1024px){

    .blog-hero-grid{
        grid-template-columns:1fr;
        text-align:center;
        gap:30px;
    }

    .blog-hero p{
        max-width:100%;
    }

    .blog-hero-image img{
        /*width:60%;*/
        /*margin:auto;*/
        
        width:100%;
        max-width:450px;
        margin:auto;
    }

    .blog-layout{
        grid-template-columns:1fr;
    }

    .blog-sidebar{
        position:relative;
        top:auto;
    }

    .blog-card{
        grid-template-columns:1fr;
    }

    .blog-image{
        min-height:260px;
    }
}

/* ======================================================
768px
====================================================== */
@media (max-width:768px){

    .blog-hero{
        padding:40px 0;
    }

    .blog-hero h1{
        font-size:32px;
        line-height:1.2;
    }

    .blog-hero p{
        font-size:16px;
    }

    .blog-hero-image img{
        /*width:75%;*/
        width:100%;
        max-width:400px;
    }

    .hero-btn{
        padding:14px 24px;
        font-size:14px;
    }

    .blog-page{
        padding:40px 0;
    }

    .blog-content{
        padding:20px;
    }

    .blog-content h2 a{
        font-size:20px;
    }

    .blog-image{
        min-height:220px;
    }

    .sidebar-widget,
    .search-widget{
        padding:20px;
    }
}

/* ======================================================
576px
====================================================== */
@media (max-width:576px){

    .blog-hero h1{
        font-size:28px;
    }

    .blog-hero p{
        font-size:15px;
    }

    .blog-hero-image img{
        width:80%;
    }

    .blog-content{
        padding:18px;
    }

    .blog-content h2 a{
        font-size:18px;
    }

    .blog-meta{
        gap:8px;
        font-size:12px;
    }

    .sidebar-widget,
    .search-widget{
        padding:18px;
    }

    .sidebar-widget h2{
        font-size:20px;
    }
}

/* ======================================================
480px
====================================================== */
@media (max-width:480px){

    .blog-hero h1{
        font-size:26px;
    }

    .blog-tag{
        padding:7px 14px;
        font-size:11px;
    }

    .hero-btn{
        width:100%;
        justify-content:center;
    }

    .blog-content h2 a{
        font-size:17px;
    }

    .blog-author-wrap{
        flex-wrap:wrap;
    }

    .popular-post{
        gap:10px;
    }

    .popular-post img{
        width:70px;
        height:70px;
    }

    .blog-pagination .page-link{
        min-width:38px;
        height:38px;
        font-size:13px;
    }
}

/* ======================================================
375px
====================================================== */
@media (max-width:375px){

    .blog-hero h1{
        font-size:22px;
    }

    .blog-hero p{
        font-size:14px;
    }

    .blog-content{
        padding:15px;
    }

    .blog-content h2 a{
        font-size:16px;
    }

    .sidebar-widget h2{
        font-size:18px;
    }
}

/* ======================================================
320px
====================================================== */
@media (max-width:320px){

    .blog-hero h1{
        font-size:20px;
    }

    .blog-hero p{
        font-size:13px;
    }

    .blog-content{
        padding:12px;
    }

    .blog-content h2 a{
        font-size:15px;
    }

    .blog-content p{
        font-size:13px;
    }

    .popular-post img{
        width:60px;
        height:60px;
    }

    .sidebar-widget,
    .search-widget{
        padding:15px;
    }

    .blog-pagination .page-link{
        min-width:34px;
        height:34px;
        font-size:12px;
    }
}

/* ======================================================
OVERFLOW FIXES
====================================================== */

.blog-hero,
.blog-page{
    overflow:hidden;
}

.blog-card{
    width:100%;
}

.blog-content,
.blog-sidebar,
.sidebar-widget,
.search-widget,
.blog-card{
    min-width:0;
}

.blog-image img,
.blog-hero-image img{
    /*max-width:450px;*/
    width:100%;
    height:auto;
}

.blog-content,
.sidebar-widget,
.search-widget{
    word-wrap:break-word;
}

.blog-layout,
.blog-hero-grid{
    width:100%;
}
