@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@200..800&display=swap');

:root{
    --primary:#b6895b;
    --bg:#000;
    --card:#111;
    --card-hover:#171717;
    --text:#fff;
    --muted:#bdbdbd;
    --border:rgba(255,255,255,0.08);
}

/* ===================================== */
/* RESET */
/* ===================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;

    font-family:'Plus Jakarta Sans',sans-serif;
}

html{
    scroll-behavior:smooth;
}

body{
    background:var(--bg);
    color:var(--text);
    overflow-x:hidden;
}

/* ===================================== */
/* SECTION */
/* ===================================== */

section{
    padding:0 7% 80px;
}

/* ===================================== */
/* TITLE */
/* ===================================== */

.title-section{
    padding-top:120px;

    margin-bottom:45px;
}

.title-section h2{
    text-align:center;

    font-size:3rem;

    font-weight:800;
}

.title-section h2 span{
    color:var(--primary);
}

.section-subtitle{
    text-align:center;

    color:var(--muted);

    margin-bottom:35px;

    font-size:1.05rem;
}


/* ===================================== */
/* BERITA */
/* ===================================== */

.news-container{
    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(340px,1fr));

    gap:30px;
}

/* ===================================== */
/* IMAGE / EMPTY COVER */
/* ===================================== */

.news-cover{
    width:100%;
    height:240px;

    position:relative;

    overflow:hidden;

    display:flex;

    justify-content:center;
    align-items:center;

    background:
    linear-gradient(
    135deg,
    rgba(182,137,91,0.18),
    rgba(255,255,255,0.02)
    );

    border-bottom:
    1px solid rgba(255,255,255,0.05);
}

/* IMAGE */

.news-cover img{
    width:100%;
    height:100%;

    object-fit:cover;

    transition:0.4s;
}

.news-card:hover .news-cover img{
    transform:scale(1.05);
}

/* ===================================== */
/* EMPTY COVER */
/* ===================================== */

.news-cover.empty{

    background:
    radial-gradient(
    circle at top left,
    rgba(182,137,91,0.22),
    transparent 45%
    ),

    linear-gradient(
    135deg,
    #111,
    #050505
    );

    position:relative;

    border-bottom:
    1px solid rgba(255,255,255,0.06);
}

/* GLOW */

.news-cover.empty::before{

    content:'';

    position:absolute;

    width:180px;
    height:180px;

    background:
    rgba(182,137,91,0.12);

    filter:blur(80px);

    border-radius:50%;

    top:-40px;
    left:-40px;
}

/* ICON */

.news-cover.empty::after{

    content:'☕';

    position:absolute;

    font-size:5rem;

    opacity:0.08;

    color:#fff;

    top:50%;
    left:50%;

    transform:
    translate(-50%,-50%);
}

/* WATERMARK */

.news-cover.empty .empty-brand{

    position:absolute;

    bottom:22px;
    left:25px;

    font-size:1.6rem;

    font-weight:800;

    letter-spacing:1px;

    color:
    rgba(255,255,255,0.08);
}

/* ===================================== */
/* CARD */
/* ===================================== */

.news-card{
    background:var(--card);

    border:
    1px solid rgba(255,255,255,0.08);

    border-radius:28px;

    overflow:hidden;

    transition:0.4s ease;

    position:relative;

    backdrop-filter:blur(10px);
}

.news-card:hover{
    transform:translateY(-10px);

    background:var(--card-hover);

    border-color:
    rgba(182,137,91,0.35);

    box-shadow:
    0 20px 40px rgba(0,0,0,0.35);
}

/* ===================================== */
/* CONTENT */
/* ===================================== */

.news-content{
    padding:28px;
}

.news-date{
    display:inline-flex;

    padding:8px 14px;

    border-radius:999px;

    background:
    rgba(182,137,91,0.12);

    color:var(--primary);

    font-size:0.8rem;

    font-weight:700;

    margin-bottom:18px;
}

.news-content h3{
    font-size:1.5rem;

    line-height:1.4;

    margin-bottom:15px;

    font-weight:700;
}

.news-content p{
    color:var(--muted);

    line-height:1.8;

    font-size:0.97rem;

    margin-bottom:22px;
}

/* ===================================== */
/* BUTTON */
/* ===================================== */

.btn-read{
    display:inline-flex;

    align-items:center;

    gap:10px;

    color:var(--primary);

    font-weight:700;

    text-decoration:none;

    transition:0.3s;
}

.btn-read:hover{
    gap:15px;
}

/* ===================================== */
/* EMPTY */
/* ===================================== */

.empty-news{
    background:#111;

    border:
    1px solid var(--border);

    border-radius:28px;

    padding:60px 30px;

    text-align:center;
}

.empty-news h3{
    font-size:2rem;

    color:var(--primary);

    margin-bottom:15px;
}

.empty-news p{
    color:var(--muted);

    line-height:1.8;
}

/* ===================================== */
/* POPUP */
/* ===================================== */

.popup-news{
    position:fixed;

    inset:0;

    background:
    rgba(0,0,0,0.8);

    backdrop-filter:blur(8px);

    display:none;

    justify-content:center;
    align-items:center;

    z-index:999999;

    padding:20px;
}

.popup-content-news{
    width:100%;
    max-width:850px;

    background:#111;

    border-radius:30px;

    overflow:hidden;

    border:
    1px solid var(--border);

    animation:popupFade 0.3s ease;

    position:relative;
}

@keyframes popupFade{

    from{
        opacity:0;
        transform:translateY(30px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }
}

.popup-content-news img{
    width:100%;
    height:400px;

    object-fit:cover;
}

.popup-body{
    padding:35px;
}

.popup-body h2{
    text-align:left;

    font-size:2rem;

    margin-bottom:20px;
}

.popup-body p{
    color:#ddd;

    line-height:1.9;

    font-size:1rem;
}

.close-popup{
    position:absolute;

    top:18px;
    right:25px;

    font-size:2.5rem;

    color:#fff;

    cursor:pointer;

    transition:0.3s;
}

.close-popup:hover{
    color:var(--primary);

    transform:rotate(90deg);
}

/* ===================================== */
/* RESPONSIVE */
/* ===================================== */

@media(max-width:768px){

    .news{
        padding-top:110px;
    }

    .news h2{
        font-size:2.3rem;

        margin-bottom:30px;
    }

    .news-container{
        grid-template-columns:1fr;
    }

    .popup-content-news img{
        height:260px;
    }

    .popup-body{
        padding:25px;
    }

    section{
        padding:0 5% 60px;
    }
}

/* ===================================== */
/* PAGE OFFSET */
/* ===================================== */

.title-section{
    margin-top:20px;
}