/*======================================
    RESET
======================================*/

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

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Inter',sans-serif;
    background:#ffffff;
    color:#111111;
    font-size:16px;
    line-height:1.7;
    overflow-x:hidden;

}

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

a{
    text-decoration:none;
    color:inherit;
}

ul{
    list-style:none;
}

/*======================================
    VARIABLES
======================================*/

:root{

    --black:#111111;
    --text:#555;
    --border:#e8e8e8;
    --light:#f5f5f5;
    --white:#fff;
    --radius:18px;
    --transition:.35s;

}

/*======================================
    CONTAINER
======================================*/

.container{

    width:min(1280px,92%);
    margin:auto;

}

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

.header{

    width:100%;
    border-bottom:1px solid var(--border);
    background:#fff;
    position:sticky;
    top:0;
    z-index:1000;

}

.header .container{

    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:22px 0;

}

.logo img{

    height:34px;
    width:auto;

}

nav ul{

    display:flex;
    gap:38px;
    align-items:center;

}

nav ul li a{

    color:#222;
    font-size:15px;
    font-weight:500;
    transition:.3s;

}

nav ul li a:hover{

    color:#000;

}

/*======================================
    BUTTONS
======================================*/

.btn,
.primary-btn{

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

    background:#111;
    color:#fff;

        padding: 7px 24px;
    border-radius: 4px;

    font-weight:600;

    transition:.3s;

}

.btn:hover,
.primary-btn:hover{

    background:#333;

}

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

.blog-hero{

    padding:90px 0;

}

.hero-grid{

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:center;

}

.hero-content{

    max-width:620px;

}

.blog-date{

    display:block;
    color:#666;
    font-size:14px;
    margin-bottom:40px;

}

.hero-content h1{

    font-size:60px;
    line-height:1.2;
    font-weight:500;
    letter-spacing:-3px;

    margin-bottom:32px;

}

.hero-content p{

    font-size:20px;
    color:#333;
    line-height:1.3;
    margin-bottom:45px;

}

.hero-image{

    overflow:hidden;
    border-radius:10px;

}

.hero-image img{

    width:100%;
    height:720px;
    object-fit:cover;
    transition:.6s;

}

.hero-image:hover img{

    transform:scale(1.04);

}

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

@media(max-width:1200px){

.hero-content h1{

font-size:60px;

}

.hero-content p{

font-size:22px;

}

.hero-image img{

height:620px;

}

}

@media(max-width:991px){

.hero-grid{

grid-template-columns:1fr;
gap:60px;

}

.hero-content{

max-width:100%;

}

.hero-content h1{

font-size:56px;

}

.hero-image img{

height:auto;

}

}

@media(max-width:768px){

.blog-hero{

padding:60px 0;

}

.hero-content h1{

font-size:42px;
letter-spacing:-1px;

}

.hero-content p{

font-size:20px;

}

.blog-date{

margin-bottom:25px;

}

.primary-btn{

width:100%;
padding:16px;

}

}
/*======================================
    BLOG CONTENT
======================================*/

.blog-content{

    padding:100px 0;

}

.content-grid{

    display:grid;
    grid-template-columns:320px minmax(0,1fr);
    gap:90px;
    align-items:start;

}

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

.blog-sidebar{

    position:sticky;
    top:110px;

}

.blog-sidebar ul{

    display:flex;
    flex-direction:column;
    gap:12px;

}

.blog-sidebar li{

    border-radius:14px;
    transition:.3s;

}

.blog-sidebar li a{

    display:block;
    padding:18px 24px;

    font-size:18px;
    line-height:1.45;

    color:#666;
    font-weight:500;

    transition:.3s;

}

.blog-sidebar li:hover{

    background:#f5f5f5;

}

.blog-sidebar li:hover a{

    color:#111;

}

.blog-sidebar li.active{

    background:#f3f3f3;

}

.blog-sidebar li.active a{

    color:#111;
    font-weight:600;

}

/*======================================
    ARTICLE
======================================*/

.article-content{

    max-width:860px;

}

.article-content section{

    margin-bottom:90px;

}

.article-content h2{

    font-size:46px;
    line-height:1.15;
    font-weight:500;
    letter-spacing:-1.5px;

    margin-bottom:30px;

}

.article-content h3{

    font-size:32px;
    margin:50px 0 22px;

    font-weight:600;

}

.article-content p{

    font-size:24px;
    line-height:1.9;

    color:#222;

    margin-bottom:30px;

}

.article-content strong{

    font-weight:700;
    color:#111;

}

.article-content a{

    color:#111;
    text-decoration:underline;

}

.article-content img{

    margin-top:40px;
    margin-bottom:30px;

    border-radius:18px;

}

/*======================================
    BLOCKQUOTE
======================================*/

.article-content blockquote{

    margin:50px 0;

    padding:40px;

    border-left:5px solid #111;

    background:#f8f8f8;

    font-size:32px;
    line-height:1.45;

    font-weight:500;

    border-radius:16px;

}

/*======================================
    LIST
======================================*/

.article-content ul{

    margin:35px 0;

    padding-left:25px;

}

.article-content ul li{

    list-style:disc;

    font-size:22px;
    color:#222;

    margin-bottom:16px;

}

.article-content ol{

    margin:35px 0;

    padding-left:28px;

}

.article-content ol li{

    margin-bottom:18px;

    font-size:22px;

}

/*======================================
    TABLE
======================================*/

.article-content table{

    width:100%;

    border-collapse:collapse;

    margin:45px 0;

}

.article-content table th{

    text-align:left;

    background:#111;
    color:#fff;

    padding:18px;

    font-size:18px;

}

.article-content table td{

    padding:18px;

    border:1px solid #ececec;

}

/*======================================
    CODE
======================================*/

.article-content pre{

    background:#111;

    color:#fff;

    padding:30px;

    border-radius:14px;

    overflow:auto;

    margin:40px 0;

}

.article-content code{

    font-family:monospace;

}

/*======================================
    HORIZONTAL LINE
======================================*/

.article-content hr{

    border:none;

    border-top:1px solid #e7e7e7;

    margin:70px 0;

}

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

@media(max-width:1200px){

.content-grid{

grid-template-columns:280px 1fr;

gap:60px;

}

.article-content h2{

font-size:40px;

}

.article-content p{

font-size:21px;

}

}

@media(max-width:991px){

.content-grid{

grid-template-columns:1fr;

}

.blog-sidebar{

position:relative;
top:0;
margin-bottom:50px;

}

.blog-sidebar ul{

display:grid;
grid-template-columns:1fr 1fr;

gap:15px;

}

.article-content{

max-width:100%;

}

}

@media(max-width:768px){

.blog-content{

padding:60px 0;

}

.blog-sidebar ul{

grid-template-columns:1fr;

}

.blog-sidebar li a{

font-size:16px;
padding:16px;

}

.article-content h2{

font-size:34px;

}

.article-content p{

font-size:18px;
line-height:1.8;

}

.article-content blockquote{

font-size:24px;
padding:25px;

}

.article-content img{

border-radius:12px;

}

}
/*======================================
    KEEP READING
======================================*/

.related-posts{

    padding:120px 0;
    background:#fff;
    border-top:1px solid #ececec;

}

.section-heading{

    margin-bottom:60px;

}

.section-heading h2{

    font-size:64px;
    font-weight:500;
    letter-spacing:-2px;
    color:#111;
    line-height:1.1;

}

.post-grid{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:35px;

}

.post-card{

    cursor:pointer;
    transition:.35s ease;

}

.post-card img{

    width:100%;
    height:300px;
    object-fit:cover;
    border-radius:18px;
    transition:.5s ease;

}

.post-card h3{

    margin-top:22px;

    font-size:28px;
    line-height:1.35;
    font-weight:500;
    color:#111;

    transition:.3s;

}

.post-card:hover{

    transform:translateY(-8px);

}

.post-card:hover img{

    transform:scale(1.04);

}

.post-card:hover h3{

    color:#000;

}

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

.footer{

    border-top:1px solid #ececec;
    padding:50px 0;
    background:#fff;

}

.footer .container{

    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;

}

.footer p{

    color:#666;
    font-size:15px;

}

.footer-links{

    display:flex;
    gap:25px;

}

.footer-links a{

    color:#444;
    font-size:15px;
    transition:.3s;

}

.footer-links a:hover{

    color:#111;

}

/*======================================
    UTILITIES
======================================*/

.mt-30{

    margin-top:30px;

}

.mt-50{

    margin-top:50px;

}

.mt-80{

    margin-top:80px;

}

.mb-30{

    margin-bottom:30px;

}

.mb-50{

    margin-bottom:50px;

}

.text-center{

    text-align:center;

}

.text-right{

    text-align:right;

}

.rounded{

    border-radius:18px;

}

.shadow{

    box-shadow:0 12px 35px rgba(0,0,0,.08);

}

/*======================================
    IMAGE HOVER
======================================*/

.image-hover{

    overflow:hidden;
    border-radius:18px;

}

.image-hover img{

    transition:.6s ease;

}

.image-hover:hover img{

    transform:scale(1.05);

}

/*======================================
    BUTTON HOVER
======================================*/

.primary-btn{

    position:relative;
    overflow:hidden;

}

.primary-btn::before{

    content:"";
    position:absolute;
    left:-100%;
    top:0;

    width:100%;
    height:100%;

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

    transition:.45s;

}

.primary-btn:hover::before{

    left:100%;

}

/*======================================
    SCROLLBAR
======================================*/

::-webkit-scrollbar{

    width:8px;

}

::-webkit-scrollbar-track{

    background:#f2f2f2;

}

::-webkit-scrollbar-thumb{

    background:#bdbdbd;
    border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

    background:#999;

}

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

@media(max-width:991px){

.related-posts{

padding:90px 0;

}

.section-heading h2{

font-size:48px;

}

.post-grid{

grid-template-columns:1fr;
gap:40px;

}

.post-card img{

height:360px;

}

.footer .container{

flex-direction:column;
text-align:center;

}

.footer-links{

justify-content:center;
flex-wrap:wrap;

}

}

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

@media(max-width:768px){

.related-posts{

padding:70px 0;

}

.section-heading{

margin-bottom:40px;

}

.section-heading h2{

font-size:38px;
letter-spacing:-1px;

}

.post-card img{

height:240px;

}

.post-card h3{

font-size:22px;

}

.footer{

padding:35px 0;

}

.footer p{

font-size:14px;

}

.footer-links{

gap:15px;

}

}

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

@media(max-width:480px){

.container{

width:92%;

}

.section-heading h2{

font-size:32px;

}

.post-card img{

height:200px;

}

.post-card h3{

font-size:20px;

}

}


@media screen and (max-width:767px)
{
.article-content {
        max-width: 100vw;
        overflow: hidden;
    }
}