/* ===== GLOBAL ===== */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family: Arial, sans-serif;
}

body{
    background: #0b1220;
    color:#fff;
}

/* ===== HEADER ===== */

/* HEADER TRANSPARAN */
.site-header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:1000;

    background:rgba(15,23,42,0.4);
    -webkit-backdrop-filter:blur(10px);

    border-bottom:1px solid rgba(255,255,255,0.08);
}

.header-container{
    max-width:1200px;
    margin:auto;
    padding:15px 20px;

    display:flex;
    justify-content:space-between;
    align-items:center;
}

.logo-brand{
    display:flex;
    align-items:center;
    gap:12px;
    text-decoration:none;
}

.logo-brand img{
    width:42px;
    height:42px;
    border-radius:50%;
}

.logo-brand span{
    color:white;
    font-size:1.3rem;
    font-weight:700;
}

/* MENU */
.header-nav{
    display:flex;
    gap:25px;
}

.header-nav a{
    color:white;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
}

.header-nav a:hover{
    color:#60a5fa;
}

/* Agar konten tidak tertutup header */
.site-header{
    height:80px;
}
body{
    padding-top:80px;

}


/* ===== NAV ===== */
nav{
    background:#0f172a;
    text-align:center;
    padding:15px;
}

nav a{
    color:#fff;
    text-decoration:none;
    margin:0 15px;
    font-weight:bold;
    transition:0.3s;
}

nav a:hover{
    color:#60a5fa;
}

/* ===== HERO ===== */
.hero{
    max-width:1000px;
    margin:40px auto;
    background: rgba(255,255,255,0.05);
    padding:50px;
    border-radius:20px;
    text-align:center;
    border:1px solid rgba(255,255,255,0.1);
}
.hero h1{
    color:#60a5fa;
    margin-bottom:15px;
}
.hero h2{
    color:#60a5fa;
    margin-bottom:15px;
}
.hero p{
    margin: 12px 0;
    line-height: 1.7;
    font-size: 16px;
    opacity: 0.9;
}
.hero-slider{
    max-width:1000px;
    margin:40px auto;
    display: block;
}

.slides{
    display:none;
}

.slides img{
    width:100%;
    height:500px;
    display:block;
    margin: 0 auto;
    border-radius: 15px;
}

.fade{
    animation:fade 1s;
}

@keyframes fade{
    from{opacity:.4}
    to{opacity:1}
}

.hero-slider{
    max-width:1000px;
    margin:40px auto;
    position:relative; /* penting */
}

.dots{
    position:absolute;
    bottom:15px;
    left:0;
    width:100%;
    text-align:center;
    z-index:10;
}

.dot{
    width:14px;
    height:14px;
    margin:0 6px;
    background:rgba(255,255,255,0.6);
    border-radius:50%;
    display:inline-block;
    transition:all .3s ease;
    cursor:pointer;
}

.dot.active{
    width:28px;
    border-radius:20px;
    background:#60a5fa;
}

.logo-brand{
    display:flex;
    align-items:center;
    gap:8px;
    text-decoration:none;
}

.logo-video{
    width:48px;
    height:48px;
    object-fit:cover;
    border-radius:50%;
    margin-left:6px;
    box-shadow:0 0 10px rgba(96,165,250,0.4);
}

/* ===== KATEGORI ===== */
.categories{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:20px;
    max-width:1100px;
    margin:40px auto;
    padding:0 15px;
}

.category{
    background: rgba(255,255,255,0.05);
    border-radius:15px;
    overflow:hidden;
    text-decoration:none;
    color:white;
    padding:0;
    transition:0.3s;
    display:block;

}

.category h3{
    padding:15px 15px 5px;
}

.category p{
    padding:0 15px 15px;
    opacity:.85;
}

.category:hover{
    transform:translateY(-8px);
    background:rgba(255,255,255,0.1);
}
.cupangVideo{
    width:100%;
    height:180px;
    object-fit:cover;
    border-radius:12px;
}
/* ===== ARTIKEL ===== */

.articles{
    max-width:1200px;
    margin:60px auto;
    padding:0 20px;
}

.articles h2{
    text-align:center;
    margin-bottom:30px;
    color:#60a5fa;
}

.article-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.article-card{
    background:rgba(255,255,255,0.05);
    border-radius:15px;
    overflow:hidden;
    transition:.3s;
    border:1px solid rgba(255,255,255,0.08);
}

.article-card:hover{
    transform:translateY(-8px);
    background:rgba(255,255,255,0.08);
}

.article-card img{
    width:100%;
    height:220px;
    object-fit:cover;
    display:block;
}

.article-content{
    padding:20px;
}

.article-content h3{
    margin-bottom:10px;
    font-size:18px;
    line-height:1.4;
}

.article-content p{
    font-size:14px;
    opacity:.85;
    margin-bottom:15px;
    line-height:1.6;
}

.btn{
    display:inline-block;
    padding:10px 18px;
    background:#2563eb;
    color:white;
    text-decoration:none;
    border-radius:8px;
    transition:.3s;
}

.btn:hover{
    background:#1d4ed8;
}
.list-item{
    display:block;
    padding:15px 20px;
    margin-bottom:10px;
    background:rgba(255,255,255,0.05);
    border-radius:10px;
    color:white;
    text-decoration:none;
    border-left:4px solid #2563eb;
    transition:.3s;
}

.list-item:hover{
    background:rgba(255,255,255,0.1);
    transform:translateX(8px);
}
.card{
    min-width:300px;
    flex-shrink:0;
}

.card:hover{
    transform:scale(1.03);
}

.card-content{
    padding:20px;
}

.card h3{
    margin-bottom:10px;
    color:#fff;
}

.card p{
    font-size:14px;
    opacity:0.8;
}
.dropdown{
    position:relative;
}

.menu-btn{
    background:none;
    border:none;
    color:#fff;
    font-size:22px;
    cursor:pointer;
}

.dropdown-content{
    display:none;
    position:absolute;
    right:0;
    top:35px;
    min-width:180px;
    background:#0f172a;
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 5px 15px rgba(0,0,0,.3);
}

.dropdown-content a{
    display:block;
    padding:12px 15px;
    text-decoration:none;
    color:white;
}

.dropdown-content a:hover{
    background:#1e293b;
}
.dropdown-content{
    display:none;
    position:absolute;
    right:0;
    top:45px;
    min-width:200px;
    background:#0f172a;
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 5px 15px rgba(0,0,0,.3);
    z-index:9999;
}

.dropdown-content.show{
    display:block;
}

/* ===== ABOUT ===== */
.about{
    max-width:900px;
    margin:60px auto;
    text-align:center;
    padding:40px;
    background: rgba(255,255,255,0.05);
    border-radius:20px;
    border:1px solid rgba(255,255,255,0.1);
}
.about p{
    margin: 12px 0;
    line-height: 1.7;
    font-size: 16px;
    opacity: 0.9;
}
.category img,
.category video{
    width:100%;
    height:150px;
    object-fit:cover;
    display:block;
}
/* Ikan */
.header-fish {
    position: relative;
    width: 100%;
    height: 100px;
    overflow: hidden;
}
.fish {
    position: absolute;
    width: 120px;
    animation: swim 6s linear infinite;
}
.header-fish img{ 
width:100px;
position:absolute;
top:0; left:0;
animation: fishMove 20s linear infinite,
fishFloat 2.5s ease-in-out infinite; }

/* Mondar-mandir */
@keyframes fishMove{

    0%{
        left:0;
        transform:scaleX(1);
    }

    49%{
        left:calc(100% - 100px);
        transform:scaleX(1);
    }

    50%{
        left:calc(100% - 100px);
        transform:scaleX(-1);
    }

    99%{
        left:0;
        transform:scaleX(-1);
    }

    100%{
        left:0;
        transform:scaleX(1);
    }
}

/* Efek berenang */
@keyframes fishFloat{
    0%,100%{
        margin-top:0;
    }

    50%{
        margin-top:-6px;
    }
}

faq{
    max-width:900px;
    margin:60px auto;
    padding:40px;
    background: rgba(255,255,255,0.05);
    border-radius:20px;
    border:1px solid rgba(255,255,255,0.1);
}

.faq h2{
    text-align:center;
    color:#60a5fa;
    margin-bottom:25px;
}

.faq-item{
    margin-bottom:15px;
    padding:15px;
    background: rgba(255,255,255,0.03);
    border-radius:10px;
}

.faq-item h3{
    color:#fff;
    margin-bottom:8px;
    font-size:16px;
}

.faq-item p{
    font-size:14px;
    opacity:0.85;
    line-height:1.6;
}
/* ===== FOOTER ===== */
footer{
    text-align:center;
    padding:30px;
    margin-top:60px;
    background:#0f172a;
    opacity:0.8;
}

/* =========================
   TABLET (768px)
========================= */
@media (max-width:768px){

    .header-container{
        padding:12px 15px;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
    }

    /* Tulisan logo tetap tampil */
    .logo-brand{
        display:flex;
        align-items:center;
        gap:8px;
    }

    .logo-brand span{
        display:block;
        font-size:16px;
        font-weight:700;
        white-space:nowrap;
    }

    .logo-video{
        width:36px;
        height:36px;
    }

    /* Sembunyikan ikan */
    .header-fish{
        display:none;
    }

    /* Slider */
    .slides img{
        height:350px;
        object-fit:cover;
    }

    /* Kategori */
    .categories{
        grid-template-columns:repeat(2,1fr);
        gap:12px;
        padding:0 15px;
    }
    .category video, 
    .category img{
     width:100%;
    height:150px;
    object-fit:cover;
    display:block;  
    }

    /* Artikel */
    .article-grid{
        grid-template-columns:1fr;
        gap:15px;
    }

    .article-card img{
        height:220px;
    }

    .hero{
        margin:25px 15px;
        padding:30px;
    }

    .faq,
    .about{
        margin:30px 15px;
        padding:25px;
    }
}

/* =========================
   MOBILE (480px)
========================= */
@media (max-width:480px){

    .header-container{
        padding:10px;
    }

    .logo-brand img{
        width:34px;
        height:34px;
    }

    /* Nama tetap muncul */
    .logo-brand span{
        display:block;
        font-size:14px;
        font-weight:700;
        white-space:nowrap;
    }

    .logo-video{
        width:28px;
        height:28px;
    }

    /* Sembunyikan ikan */
    .header-fish{
        display:none;
    }

    .slides img{
        height:220px;
        object-fit:cover;
    }

    .hero{
        padding:20px;
        margin:20px 10px;
    }

    .hero h1{
        font-size:22px;
    }

    .hero p{
        font-size:14px;
        line-height:1.7;
    }

    .categories{
        grid-template-columns:repeat(2,1fr);
        gap:10px;
    }
    .category video,
    .category img{
        height:150px;
    }

    .category h3{
        font-size:14px;
    }

    .category p{
        font-size:12px;
    }

    .article-card img{
        height:180px;
    }

    .article-content{
        padding:15px;
    }

    .article-content h3{
        font-size:15px;
    }

    .article-content p{
        font-size:13px;
    }

    .btn{
        font-size:13px;
        padding:8px 14px;
    }

    .faq,
    .about{
        padding:20px;
    }
}
