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

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:
    Inter,
    sans-serif;

    background:#f6f9ff;

    color:#0a2540;

    overflow-x:hidden;
}

a{
    text-decoration:none;
}

img{
    max-width:100%;
    display:block;
}

.container{

    width:100%;
    max-width:1320px;

    margin:auto;

    padding:0 20px;
}

/* =========================================================
BLOG HERO
========================================================= */

.blog-hero{

    /* padding:160px 0 120px; */

    background:
    linear-gradient(
        135deg,
        #0a2540 0%,
        #163d6b 45%,
        #4f46e5 100%
    );

    position:relative;

    overflow:hidden;
}

/* glow */

.blog-hero::before{

    content:'';

    position:absolute;

    top:-200px;
    right:-200px;

    width:500px;
    height:500px;

    border-radius:50%;

    background:
    radial-gradient(
        circle,
        rgba(255,255,255,.15),
        transparent 70%
    );
}

/* content */

.blog-hero-content{

    max-width:900px;

    position:relative;

    z-index:2;
}

/* category */

.blog-category{

    display:inline-flex;

    padding:12px 22px;

    border-radius:100px;

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

    backdrop-filter:blur(14px);

    color:#fff;

    font-size:13px;

    font-weight:700;

    letter-spacing:.5px;

    margin-bottom:28px;
}

/* title */

.blog-hero h1{

    font-size:60px;

    line-height:1.05;

    font-weight:800;

    color:#fff;

    letter-spacing:-2px;

    margin-bottom:28px;
}

/* paragraph */

.blog-hero p{

    font-size:22px;

    line-height:1.9;

    color:rgba(255,255,255,.82);

    margin-bottom:36px;
}

/* meta */

.blog-meta{

    display:flex;

    gap:28px;

    flex-wrap:wrap;
}

.blog-meta span{

    display:flex;

    align-items:center;

    gap:10px;

    color:#fff;

    font-size:15px;
}

/* =========================================================
DETAIL SECTION
========================================================= */

.blog-detail-section{

    padding:100px 0;
}

/* layout */

.blog-layout{

    display:grid;

    grid-template-columns:
    minmax(0,1fr)
    360px;

    gap:50px;
}

/* =========================================================
MAIN CONTENT
========================================================= */

.blog-main{

    min-width:0;
}

/* featured image */

.blog-featured-image{

    border-radius:40px;

    overflow:hidden;

    margin-bottom:50px;

    box-shadow:
    0 30px 80px rgba(15,23,42,.08);
}

.blog-featured-image img{

    width:100%;

    height:620px;

    object-fit:cover;
}

/* content */

.blog-content{

    background:#fff;

    border-radius:40px;

    padding:60px;

    box-shadow:
    0 20px 70px rgba(15,23,42,.05);
}

/* intro */

.blog-intro{

    font-size:24px;

    line-height:1.9;

    color:#334155;

    margin-bottom:40px;
}

/* headings */

.blog-content h2{

    font-size:42px;

    line-height:1.2;

    font-weight:800;

    color:#0a2540;

    margin:
    55px 0 24px;
}

/* paragraph */

.blog-content p{

    font-size:19px;

    line-height:2;

    color:#64748b;

    margin-bottom:28px;
}

/* highlight */

.blog-highlight-box{

    display:flex;

    gap:24px;

    padding:35px;

    border-radius:28px;

    background:
    linear-gradient(
        135deg,
        #f3f0ff,
        #eef4ff
    );

    margin:50px 0;
}

.blog-highlight-box i{

    width:70px;
    height:70px;

    min-width:70px;

    border-radius:20px;

    background:
    linear-gradient(
        135deg,
        #6d28d9,
        #7c3aed
    );

    display:flex;
    align-items:center;
    justify-content:center;

    color:#fff;

    font-size:28px;
}

/* highlight heading */

.blog-highlight-box h4{

    font-size:24px;

    margin-bottom:12px;
}

/* gallery */

.blog-gallery{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:24px;

    margin:50px 0;
}

.blog-gallery img{

    border-radius:26px;

    height:320px;

    object-fit:cover;
}

/* quote */

blockquote{

    margin:60px 0;

    padding:45px;

    border-radius:32px;

    background:
    linear-gradient(
        135deg,
        #0a2540,
        #163d6b
    );

    color:#fff;

    font-size:30px;

    line-height:1.7;

    font-weight:700;
}

/* =========================================================
SIDEBAR
========================================================= */

.blog-sidebar{

    display:flex;

    flex-direction:column;

    gap:28px;
}

/* card */

.sidebar-card{

    background:#fff;

    border-radius:32px;

    padding:35px;

    box-shadow:
    0 20px 60px rgba(15,23,42,.05);
}

/* sidebar title */

.sidebar-card h3{

    font-size:28px;

    margin-bottom:28px;
}

/* author */

.author-card{

    text-align:center;
}

.author-card img{

    width:120px;
    height:120px;

    border-radius:50%;

    object-fit:cover;

    margin:
    0 auto 24px;
}

.author-card h4{

    font-size:28px;

    margin-bottom:14px;
}

.author-card p{

    font-size:16px;

    line-height:1.8;

    color:#64748b;
}

/* recent */

.recent-blog{

    display:flex;

    gap:16px;

    margin-bottom:22px;
}

.recent-blog:last-child{

    margin-bottom:0;
}

.recent-blog img{

    width:90px;
    height:90px;

    border-radius:18px;

    object-fit:cover;
}

/* recent title */

.recent-blog h5{

    font-size:18px;

    line-height:1.5;

    margin-bottom:10px;
}

/* recent date */

.recent-blog span{

    color:#64748b;

    font-size:14px;
}

/* tags */

.tag-list{

    display:flex;

    flex-wrap:wrap;

    gap:14px;
}

.tag-list a{

    padding:12px 18px;

    border-radius:100px;

    background:#f3f4f6;

    color:#0a2540;

    font-size:14px;

    font-weight:600;

    transition:.3s ease;
}

.tag-list a:hover{

    background:#6d28d9;

    color:#fff;
}

/* =========================================================
TABLET
========================================================= */

@media(max-width:991px){

    .blog-hero{

        padding:140px 0 90px;
    }

    .blog-hero h1{

        font-size:54px;
    }

    .blog-hero p{

        font-size:18px;
    }

    .blog-layout{

        grid-template-columns:1fr;
    }

    .blog-featured-image img{

        height:450px;
    }

    .blog-content{

        padding:40px;
    }

    .blog-content h2{

        font-size:34px;
    }

}

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

@media(max-width:767px){

    .blog-hero{

        padding:120px 0 70px;
    }

    .blog-hero h1{

        font-size:38px;

        line-height:1.15;
    }

    .blog-hero p{

        font-size:16px;

        line-height:1.8;
    }

    .blog-meta{

        gap:16px;
    }

    .blog-featured-image{

        border-radius:24px;

        margin-bottom:30px;
    }

    .blog-featured-image img{

        height:260px;
    }

    .blog-content{

        padding:26px;

        border-radius:26px;
    }

    .blog-intro{

        font-size:18px;
    }

    .blog-content h2{

        font-size:28px;

        margin:
        40px 0 18px;
    }

    .blog-content p{

        font-size:16px;

        line-height:1.9;
    }

    .blog-highlight-box{

        flex-direction:column;

        padding:26px;
    }

    .blog-gallery{

        grid-template-columns:1fr;
    }

    .blog-gallery img{

        height:220px;
    }

    blockquote{

        padding:28px;

        font-size:22px;
    }

    .sidebar-card{

        padding:26px;

        border-radius:24px;
    }

}