*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial,sans-serif;
scroll-behavior:smooth;
}

body{
background:#0f0f0f;
color:white;
line-height:1.6;
}

/* Navbar */
.navbar{
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 8%;
background:#111;
position:sticky;
top:0;
z-index:1000;
}

.promo{
background:gold;
color:black;
text-align:center;
padding:10px;
font-weight:bold;
}

.logo{
color:gold;
font-size:24px;
font-weight:bold;
}

.menu{
display:flex;
gap:20px;
list-style:none;
}

.menu a{
text-decoration:none;
color:white;
transition:.3s;
}

.menu a:hover{
color:gold;
}

/* Hero */
.hero{
min-height:90vh;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
padding:40px 8%;
background:
linear-gradient(rgba(0,0,0,.70),rgba(0,0,0,.75)),
url('Produk.png') center/cover;
}

.hero-logo{
width:80px;
height:80px;
border-radius:50%;
object-fit:cover;
margin-bottom:15px;
border:2px solid gold;
}

.hero-text h2{
font-size:42px;
margin-bottom:12px;
}

.hero-text p{
max-width:600px;
margin:auto;
margin-bottom:22px;
color:#ddd;
}

.btn{
display:inline-block;
padding:12px 24px;
background:gold;
color:black;
text-decoration:none;
border-radius:8px;
font-weight:bold;
}

.btn:hover{
opacity:.9;
}

/* Produk */
.produk{
padding:70px 8%;
text-align:center;
}

.produk h2{
font-size:34px;
color:gold;
margin-bottom:30px;
}

.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:25px;
}

.card p s{
color:#888;
margin-right:5px;
}

.card{
position:relative;
}

/* Badge */
.badge{
position:absolute;
top:10px;
left:10px;
background:red;
color:white;
padding:5px 10px;
font-size:12px;
border-radius:6px;
font-weight:bold;
}

.badge{
animation:pulse 1.5s infinite;
}

@keyframes pulse{
0%{transform:scale(1);}
50%{transform:scale(1.1);}
100%{transform:scale(1);}
}

.card{
background:#1a1a1a;
padding:15px;
border-radius:14px;
transition:.3s;
}

.card:hover{
transform:translateY(-8px);
}

.card img{
width:100%;
height:220px;
object-fit:cover;
border-radius:10px;
}

.card h3{
margin-top:14px;
}

.card p{
margin:10px 0;
color:gold;
}

.btn-kecil{
display:inline-block;
padding:8px 16px;
background:gold;
color:black;
text-decoration:none;
border-radius:6px;
font-size:14px;
font-weight:bold;
}

/* Tentang Kontak */
.tentang,
.kontak{
padding:60px 8%;
text-align:center;
}

.tentang h2,
.kontak h2{
color:gold;
margin-bottom:14px;
}

/* Footer */
footer{
padding:25px;
text-align:center;
background:#111;
color:#aaa;
margin-top:30px;
}

/* Mobile */
@media(max-width:768px){

.navbar{
flex-direction:column;
gap:14px;
}

.menu{
flex-wrap:wrap;
justify-content:center;
}

.hero-text h2{
font-size:30px;
}

.hero-logo{
width:65px;
height:65px;
}

}

/* WhatsApp Floating PRO */
.wa-float{
position:fixed;
bottom:20px;
right:20px;
background:#25D366;
color:white;
padding:12px 16px;
border-radius:50px;
display:flex;
align-items:center;
gap:8px;
text-decoration:none;
font-weight:bold;
box-shadow:0 6px 15px rgba(0,0,0,.3);
z-index:999;
animation:denyut 1.8s infinite;
transition:.3s;
}

.wa-float:hover{
transform:scale(1.05);
}

.wa-icon{
font-size:20px;
}

.wa-text{
font-size:14px;
}

/* Animasi denyut */
@keyframes denyut{
0%{
box-shadow:0 0 0 0 rgba(37,211,102,.7);
}
70%{
box-shadow:0 0 0 15px rgba(37,211,102,0);
}
100%{
box-shadow:0 0 0 0 rgba(37,211,102,0);
}
}

@media(max-width:768px){
.wa-text{
display:none;
}
.wa-float{
padding:14px;
border-radius:50%;
}
}

/* Loading Screen */
#loader{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:#111;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
z-index:9999;
transition:.5s;
}

#loader p{
margin-top:15px;
color:white;
font-size:15px;
}

/* Logo Loader */
.loader-logo{
width:75px;
height:75px;
border-radius:50%;
object-fit:cover;
border:3px solid gold;
animation:putar 1.5s linear infinite;
box-shadow:0 0 15px rgba(255,215,0,.3);
}

@keyframes putar{
0%{transform:rotate(0deg);}
100%{transform:rotate(360deg);}
}

/* Animasi muncul */
.card{
opacity:0;
transform:translateY(40px);
transition:.6s;
}

.card.show{
opacity:1;
transform:translateY(0);
}
