        :root {
            --primary: #1a1a1a;
            --accent: #c5a059;
            --text: #333;
            --white: #ffffff;
            --bg-light: #f9f9f9;
            --header-h: 80px;
        }

        /* Base Reset */
        * { margin: 0; padding: 0; box-sizing: border-box; }
        html, body { overflow-x: hidden; width: 100%; }
        body { font-family: 'Montserrat', sans-serif; color: var(--text); line-height: 1.8; padding-top: var(--header-h); background: #fff; }
        h1, h2, h3 { font-family: 'Cormorant Garamond', serif; color: var(--primary); font-weight: 700; }

        .container { max-width: 900px; margin: 0 auto; padding: 0 25px; width: 100%; }
        
        /* Article Styling */
        .article-wrap { padding: 50px 0; }
        .post-header { text-align: center; margin-bottom: 40px; }
        .post-header h1 { font-size: clamp(1.8rem, 5vw, 2.8rem); margin-bottom: 10px; line-height: 1.2; }
        .subtitle { color: var(--accent); text-transform: uppercase; letter-spacing: 3px; font-size: 0.75rem; font-weight: 700; display: block; margin-bottom: 5px; }
        
        .featured-image { width: 100%; border-radius: 8px; margin-bottom: 35px; display: block; box-shadow: 0 5px 15px rgba(0,0,0,0.08); }
        
        .content-body h2 { margin: 35px 0 15px; font-size: 1.8rem; border-left: 4px solid var(--accent); padding-left: 15px; }
        .content-body p { margin-bottom: 20px; font-size: 1.05rem; color: #444; text-align: left; }

        /* FAQ */
        .faq-box { background: var(--bg-light); padding: 25px; border-radius: 10px; margin: 40px 0; }
        details { background: #fff; padding: 12px; margin-bottom: 8px; border-radius: 5px; border: 1px solid #ddd; cursor: pointer; }
        summary { font-weight: 700; outline: none; }

        /* CTA */
        .cta-box { background: var(--primary); color: white; padding: 35px; text-align: center; border-radius: 12px; margin-top: 40px; }
        .btn-gold { background: var(--accent); color: white; padding: 14px 30px; text-decoration: none; display: inline-block; font-weight: bold; text-transform: uppercase; border-radius: 4px; margin-top: 15px; }

        footer { background: #111; color: #666; padding: 30px 20px; text-align: center; font-size: 0.8rem; margin-top: 50px; }

        /* Mobile Fix */
        @media (max-width: 768px) {
            .nav-links { display: none; } /* Navigasi hilang di mobile */
            .logo { margin: 0 auto; } /* Logo ke tengah agar seimbang */
            .container { padding: 0 20px; }
            .article-wrap { padding: 30px 0; }
        }