*{
    box-sizing: border-box;
}

body{
    margin: 0;
    font-family: 'Segoe UI', sans-serif;
    background: linear-gradient(180deg, #F4EEDC, #EFE6CF);
    padding-top: 90px; /* tinggi navbar */
}

/* ================= NAVBAR ================= */
.navbar{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 90px;

    padding: 0 50px;
    background: linear-gradient(90deg, #3B2F2F, #2E2424);

    display: flex;
    justify-content: space-between;
    align-items: center;

    box-shadow: 0 12px 32px rgba(0,0,0,.35);
    z-index: 1000;
}

.nav-left{
    display: flex;
    align-items: center;
    gap: 1px;
    font-weight: 900;
    color: #E9DFC7;
}

.nav-logo{
    height: 70px;
    width: auto;
    object-fit: contain;
}

.nav-menu{
    list-style:none;
    display:flex;
    gap:32px;
}

.nav-menu a{
    color:#E9DFC7;
    text-decoration:none;
    font-weight:600;
    position:relative;
    transition:.3s;
}

.nav-menu a.active{
    color:#E6B566;
}

.nav-menu a::after{
    content:'';
    position:absolute;
    bottom:-8px;
    left:0;
    width:0;
    height:3px;
    background:#E6B566;
    border-radius:3px;
    transition:.3s;
}

.nav-menu a:hover::after,
.nav-menu a.active::after{
    width:100%;
}

/* ================= MERCH SECTION ================= */
.merch-section{
    max-width:1200px;
    margin:120px auto;
    padding:48px;
    background: linear-gradient(180deg, #FFF9EB, #F6EED9);
    border-radius:36px;
    box-shadow:0 40px 80px rgba(0,0,0,.18);
}

.merch-section h2{
    text-align:center;
    margin-bottom:8px;
    font-size:30px;
}

.subtitle{
    text-align:center;
    color:#6b7280;
    margin-bottom:48px;
}

/* ================= GRID ================= */
.merch-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
    gap: 40px;
    margin-top: 80px;
}

/* ================= CARD - SAMA KAYAK BOARDGAME ================= */
.merch-card{
    background: linear-gradient(
        180deg,
        #FDFBF5,
        #EFE6CF
    );

    padding: 28px;
    border-radius: 26px;

    border: 1px solid #D6C7A1;

    box-shadow:
        0 20px 40px rgba(47,62,52,.25),
        inset 0 1px 0 rgba(255,255,255,.7);

    transition: .35s ease;
}

.merch-card:hover{
    transform: translateY(-10px) scale(1.04);
    box-shadow: 0 32px 64px rgba(47,62,52,.35);
}

.merch-card img{
    width: 100%;
    max-height: 260px;
    object-fit: contain;

    border-radius: 18px;
    background: #E6DDC4;
    padding: 12px;
}

/* ================= IMAGE ================= */
.merch-card img{
    width:100%;
    max-height:260px;
    object-fit:contain;

    background:#EFE6CF;
    padding:18px;

    border-radius:22px;
}

/* ================= TEXT ================= */
.merch-card h3{
    margin:10px 0 2px;
}

.jenis{
    font-size:16px;
    color:#6b7280;
}

.desc{
    font-size:15px;
    color:#374151;
    margin:14px 0;
    line-height:1.6;
}

/* ================= EMPTY ================= */
.empty{
    text-align:center;
    color:#6b7280;
}

/* ================= GLOBAL BUY BUTTON ================= */
.buy-global{
    margin-top:60px;
    display:flex;
    justify-content:center;
}

.btn-buy-global{
    display:flex;
    align-items:center;
    gap:12px;

    padding:16px 48px;
    background: linear-gradient(135deg, #25D366, #1EBE5D);
    color:#fff;
    font-weight:800;
    font-size:16px;
    border-radius:16px;
    text-decoration:none;

    box-shadow:0 18px 35px rgba(37,211,102,.45);
    transition:.3s ease;
}

.btn-buy-global:hover{
    transform:translateY(-3px) scale(1.03);
    box-shadow:0 24px 45px rgba(37,211,102,.55);
}

.wa-icon{
    width:22px;
    height:22px;
    object-fit:contain;
}

.stok{
    font-weight:700;
}

/* READY */
.stok.ready{
    color:#16a34a;
}

/* HAMPIR HABIS */
.stok.warning{
    color:#f59e0b;
}

/* HABIS */
.stok.habis{
    color:#dc2626;
}

/* ================= MERCH ABOUT ================= */
.merch-about{
    padding:120px 20px 60px;
    display:flex;
    justify-content:center;
}

.merch-about-box{
    max-width:900px;
    width:100%;

    background:linear-gradient(
        180deg,
        #FFF9EB,
        #EFE6CF
    );

    padding:40px 50px;
    border-radius:28px;

    box-shadow:
        0 20px 50px rgba(0,0,0,.15);

    text-align:left;
}

/* judul */
.merch-about-box h2{
    font-size:28px;
    margin-bottom:16px;
    color:#2F3E34;
    position:relative;
}

/* garis bawah */
.merch-about-box h2::after{
    content:'';
    display:block;
    width:60px;
    height:3px;
    background:#C9A24D;
    margin-top:10px;
    border-radius:3px;
}

/* isi teks */
.merch-about-box p{
    margin-top:18px;
    font-size:18px;
    line-height:1.8;
    color:#475569;
}

/* ================= FOOTER ================= */

.footer{
    background: linear-gradient(90deg,#3B2F2F,#2E2424);
    color:#E9DFC7;

    margin-top:100px;
    padding:60px 40px 20px;
}

/* layout */
.footer-container{
    max-width:1200px;
    margin:auto;

    display:flex;
    gap:60px;
    flex-wrap:wrap;
}

/* brand */
.footer-brand{
    flex:1;
    min-width:250px;
}

.footer-brand h3{
    margin-bottom:12px;
}

.footer-brand p{
    font-size:14px;
    line-height:1.7;
    color:#d6cfc2;
}

/* links */
.footer-links{
    min-width:160px;
}

.footer-links h4{
    margin-bottom:12px;
}

.footer-links ul{
    list-style:none;
    padding:0;
}

.footer-links li{
    margin-bottom:8px;
}

.footer-links a{
    text-decoration:none;
    color:#E9DFC7;
    font-size:14px;
    transition:.2s;
}

.footer-links a:hover{
    color:#E6B566;
}

/* contact */
.footer-contact{
    min-width:200px;
}

.footer-contact h4{
    margin-bottom:12px;
}

.footer-contact p{
    font-size:14px;
    margin-bottom:6px;
    color:#d6cfc2;
}

/* bottom */
.footer-bottom{
    margin-top:40px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,0.1);

    text-align:center;
    font-size:13px;
    color:#cfc7b8;
}