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

.article-hero{
    position:relative;
    height:70vh;
    display:flex;
    align-items:flex-end;
    overflow:hidden;
}

.article-hero img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transform:scale(1.08);
}

.article-hero .overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        rgba(15,23,42,.2),
        rgba(15,23,42,.88)
    );
}

/* HERO CONTENT */

.article-hero-content{
    position:relative;
    z-index:2;
    color:white;

    padding-bottom:70px;
    max-width:850px;
}

.article-hero-content span{
    display:inline-block;
    padding:8px 16px;
    border-radius:50px;

    background:rgba(99,102,241,.18);
    border:1px solid rgba(99,102,241,.35);

    font-size:13px;
    font-weight:600;

    margin-bottom:15px;
}

.article-hero-content h1{
    font-size:48px;
    font-weight:800;
    line-height:1.2;

    margin-bottom:10px;
}

.article-hero-content p{
    font-size:15px;
    color:#e2e8f0;
}

/* ==========================================
SECTION LAYOUT
========================================== */

.article-section{
    padding:80px 0;
    background:#f8fafc;
}

.article-layout{
    display:grid;
    grid-template-columns:2fr 380px;
    gap:50px;
    align-items:start;
}

/* ==========================================
ARTICLE CONTENT (STYLE MAGAZINE)
========================================== */

.article-content{
    background:white;

    padding:60px;

    border-radius:28px;

    box-shadow:0 25px 70px rgba(0,0,0,.08);

    color:#111827;

    font-size:17px;
    line-height:2;
}

.article-content p{
    margin-bottom:22px;
    color:#1f2937;
}

.article-content h2,
.article-content h3{
    margin-top:30px;
    margin-bottom:15px;

    color:#0f172a;
}

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

.article-sidebar{
    position:sticky;
    top:120px;
}

.sidebar-card{
    background:rgba(255,255,255,.9);
    backdrop-filter:blur(12px);

    border-radius:25px;

    padding:25px;

    box-shadow:0 20px 50px rgba(0,0,0,.06);
}

.sidebar-card h3{
    font-size:18px;
    margin-bottom:20px;

    color:#0f172a;
}

/* ==========================================
RECENT POSTS
========================================== */

.recent-post{
    display:flex;
    gap:12px;
    align-items:center;

    padding:12px;
    margin-bottom:12px;

    border-radius:14px;

    text-decoration:none;

    color:#111827;

    transition:.3s;
}

.recent-post:hover{
    background:#eef2ff;
    transform:translateX(6px);
}

.recent-post img{
    width:75px;
    height:65px;

    object-fit:cover;

    border-radius:12px;
}

.recent-post h4{
    font-size:14px;
    line-height:1.4;
    color:#111827;
}

/* ==========================================
ANIMATION
========================================== */

.article-content,
.sidebar-card{
    animation:fadeUp .6s ease-in-out;
}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(20px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

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

@media(max-width:991px){

    .article-layout{
        grid-template-columns:1fr;
    }

    .article-sidebar{
        position:relative;
        top:0;
    }

    .article-content{
        padding:35px;
    }

    .article-hero-content h1{
        font-size:34px;
    }
}

@media(max-width:768px){

    .article-hero{
        height:55vh;
    }

    .article-content{
        padding:25px;
        font-size:16px;
    }
}