/* roulang page: index */
:root{
            --jade-deep:#0A2E1C;
            --forest:#123E25;
            --gold:#FFD700;
            --lucky-red:#D32F2F;
            --pale-mint:#D1F2EB;
            --white:#FFFFFF;
            --soft-gold:#F0E68C;
            --dark-charcoal:#1C1C1E;
            --muted-mint:#9BBFB4;
            --surface-glass:rgba(255,255,255,.06);
            --surface-glass-hover:rgba(255,255,255,.1);
            --border-gold:rgba(255,215,0,.35);
            --border-mint:rgba(209,242,235,.18);
            --radius-sm:10px;
            --radius-md:16px;
            --radius-lg:24px;
            --radius-xl:32px;
            --shadow-card:0 12px 32px rgba(0,0,0,.35);
            --shadow-gold:0 0 28px rgba(255,215,0,.18);
            --shadow-neon:0 0 24px rgba(0,240,255,.12);
            --transition:all .3s cubic-bezier(.4,0,.2,1);
            --font-sans:'Inter','Segoe UI','Roboto',system-ui,sans-serif;
        }
        *{box-sizing:border-box;margin:0;padding:0}
        html{scroll-behavior:smooth}
        body{
            font-family:var(--font-sans);
            background:var(--jade-deep);
            color:var(--white);
            line-height:1.6;
            min-height:100vh;
            -webkit-font-smoothing:antialiased;
            -moz-osx-font-smoothing:grayscale;
            overflow-x:hidden;
        }
        a{text-decoration:none;color:inherit;transition:var(--transition)}
        a:focus-visible,button:focus-visible,input:focus-visible{
            outline:3px solid var(--gold);
            outline-offset:2px;
            border-radius:6px;
        }
        img{max-width:100%;height:auto;display:block}
        ul,ol{list-style:none}
        .container{
            width:100%;
            max-width:1200px;
            margin-inline:auto;
            padding-inline:20px;
        }
        .section-pad{padding-block:72px 64px}
        @media(min-width:768px){
            .section-pad{padding-block:96px 80px}
        }

        /* ===== HEADER / NAV ===== */
        .site-header{
            position:fixed;
            top:0;left:0;right:0;
            z-index:80;
            background:rgba(10,46,28,.82);
            backdrop-filter:blur(18px);
            -webkit-backdrop-filter:blur(18px);
            border-bottom:1px solid var(--border-gold);
            transition:var(--transition);
        }
        .site-header.scrolled{
            background:rgba(10,46,28,.96);
            box-shadow:0 8px 32px rgba(0,0,0,.4);
        }
        .nav-wrap{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:16px;
            height:68px;
        }
        .nav-logo{
            font-size:1.02rem;
            font-weight:800;
            letter-spacing:-.02em;
            color:var(--gold);
            line-height:1.25;
            max-width:260px;
            white-space:nowrap;
            overflow:hidden;
            text-overflow:ellipsis;
            display:flex;
            align-items:center;
            gap:8px;
        }
        .nav-logo i{
            color:var(--gold);
            font-size:1.35rem;
            flex-shrink:0;
        }
        .nav-links{
            display:none;
            align-items:center;
            gap:28px;
            flex:1;
            justify-content:center;
        }
        .nav-links a{
            font-size:.9rem;
            font-weight:500;
            color:var(--pale-mint);
            padding-block:6px;
            border-bottom:2px solid transparent;
            transition:var(--transition);
            white-space:nowrap;
        }
        .nav-links a:hover,
        .nav-links a.active{
            color:var(--gold);
            border-bottom-color:var(--gold);
        }
        .nav-auth{
            display:flex;
            align-items:center;
            gap:10px;
            flex-shrink:0;
        }
        .btn-login{
            padding:8px 14px;
            font-size:.85rem;
            font-weight:600;
            color:var(--pale-mint);
            border:1px solid var(--border-mint);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
        }
        .btn-login:hover{
            color:var(--gold);
            border-color:var(--gold);
            background:rgba(255,215,0,.08);
        }
        .btn-signup{
            padding:8px 18px;
            font-size:.85rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
            box-shadow:0 4px 16px rgba(255,215,0,.3);
        }
        .btn-signup:hover{
            background:#FFE44D;
            transform:translateY(-1px);
            box-shadow:0 8px 24px rgba(255,215,0,.42);
        }
        .menu-toggle{
            display:flex;
            align-items:center;
            justify-content:center;
            width:42px;height:42px;
            border-radius:10px;
            border:1px solid var(--border-gold);
            background:rgba(255,215,0,.06);
            color:var(--gold);
            font-size:1.2rem;
            cursor:pointer;
            transition:var(--transition);
            flex-shrink:0;
        }
        .menu-toggle:hover{
            background:rgba(255,215,0,.16);
        }
        @media(min-width:1024px){
            .nav-links{display:flex}
            .menu-toggle{display:none}
            .nav-logo{font-size:1.08rem;max-width:340px}
        }

        /* Mobile drawer */
        .mobile-drawer{
            position:fixed;
            top:68px;right:0;
            width:min(82vw,360px);
            background:var(--forest);
            border-left:1px solid var(--border-gold);
            padding:28px 22px;
            z-index:75;
            transform:translateX(100%);
            transition:transform .35s cubic-bezier(.4,0,.2,1);
            box-shadow:-12px 0 40px rgba(0,0,0,.4);
            border-radius:0 0 0 var(--radius-lg);
        }
        .mobile-drawer.open{transform:translateX(0)}
        .mobile-drawer a{
            display:block;
            padding:13px 16px;
            font-size:.95rem;
            font-weight:500;
            color:var(--pale-mint);
            border-radius:10px;
            margin-bottom:6px;
            transition:var(--transition);
        }
        .mobile-drawer a:hover,.mobile-drawer a.active{
            color:var(--gold);
            background:rgba(255,215,0,.08);
        }
        .mobile-drawer .nav-auth{
            margin-top:18px;
            padding-top:18px;
            border-top:1px solid var(--border-mint);
        }

        /* ===== HERO ===== */
        .hero-section{
            position:relative;
            min-height:92vh;
            display:flex;
            align-items:center;
            padding-block:120px 72px;
            background-image:linear-gradient(rgba(10,46,28,.72),rgba(10,46,28,.92)),url('/assets/images/backpic/back-1.jpg');
            background-size:cover;
            background-position:center;
            overflow:hidden;
        }
        .hero-section::after{
            content:'';
            position:absolute;
            inset:0;
            background:radial-gradient(ellipse at 30% 40%,rgba(255,215,0,.12),transparent 55%),
                       radial-gradient(ellipse at 80% 70%,rgba(0,240,255,.07),transparent 50%);
            pointer-events:none;
        }
        .hero-inner{
            position:relative;
            z-index:2;
            display:grid;
            gap:36px;
            align-items:center;
        }
        @media(min-width:1024px){
            .hero-inner{grid-template-columns:1.1fr .9fr;gap:56px}
        }
        .hero-badge{
            display:inline-flex;
            align-items:center;
            gap:8px;
            padding:7px 16px;
            font-size:.8rem;
            font-weight:700;
            color:var(--gold);
            background:rgba(255,215,0,.1);
            border:1px solid var(--border-gold);
            border-radius:999px;
            letter-spacing:.02em;
        }
        .hero-badge i{font-size:.75rem;animation:pulse-dot 1.8s infinite}
        @keyframes pulse-dot{0%,100%{opacity:1}50%{opacity:.35}}
        .hero-title{
            font-size:clamp(2rem,5vw,3.6rem);
            font-weight:900;
            letter-spacing:-.03em;
            line-height:1.15;
            color:var(--white);
            text-shadow:0 4px 32px rgba(0,0,0,.5);
            margin-block:16px 18px;
        }
        .hero-title .gold{color:var(--gold)}
        .hero-desc{
            font-size:clamp(1rem,1.4vw,1.15rem);
            color:var(--pale-mint);
            max-width:560px;
            line-height:1.7;
            margin-bottom:28px;
        }
        .hero-cta-row{
            display:flex;
            flex-wrap:wrap;
            gap:14px;
            align-items:center;
            margin-bottom:28px;
        }
        .btn-primary{
            display:inline-flex;
            align-items:center;
            gap:10px;
            padding:14px 28px;
            font-size:1rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:999px;
            transition:var(--transition);
            box-shadow:0 8px 28px rgba(255,215,0,.35);
        }
        .btn-primary:hover{
            background:#FFE44D;
            transform:translateY(-2px);
            box-shadow:0 14px 36px rgba(255,215,0,.5);
        }
        .btn-primary i{font-size:1.05rem}
        .btn-secondary{
            display:inline-flex;
            align-items:center;
            gap:10px;
            padding:14px 26px;
            font-size:1rem;
            font-weight:600;
            color:var(--gold);
            background:rgba(255,215,0,.08);
            border:1px solid var(--border-gold);
            border-radius:999px;
            transition:var(--transition);
        }
        .btn-secondary:hover{
            background:rgba(255,215,0,.16);
            transform:translateY(-2px);
        }
        .btn-secondary i{font-size:1rem}
        .hero-stats{
            display:flex;
            gap:28px;
            flex-wrap:wrap;
        }
        .hero-stat{
            display:flex;
            flex-direction:column;
            gap:2px;
        }
        .hero-stat .num{
            font-size:1.5rem;
            font-weight:800;
            color:var(--gold);
            letter-spacing:-.02em;
        }
        .hero-stat .label{
            font-size:.82rem;
            color:var(--muted-mint);
        }
        .hero-visual{
            position:relative;
            border-radius:var(--radius-xl);
            overflow:hidden;
            border:1px solid var(--border-gold);
            box-shadow:var(--shadow-card),var(--shadow-gold);
            background:rgba(10,46,28,.6);
        }
        .hero-visual img{
            width:100%;
            height:380px;
            object-fit:cover;
            opacity:.9;
        }
        .hero-visual .overlay-badge{
            position:absolute;
            top:16px;right:16px;
            padding:8px 18px;
            font-size:.75rem;
            font-weight:800;
            color:var(--white);
            background:var(--lucky-red);
            border-radius:999px;
            letter-spacing:.06em;
            text-transform:uppercase;
        }
        .hero-visual .visual-caption{
            position:absolute;
            bottom:0;left:0;right:0;
            padding:18px 20px;
            background:linear-gradient(transparent,rgba(10,46,28,.92));
            font-size:.9rem;
            color:var(--pale-mint);
            font-weight:500;
        }

        /* ===== SECTION HEADINGS ===== */
        .section-label{
            display:inline-flex;
            align-items:center;
            gap:8px;
            font-size:.78rem;
            font-weight:700;
            letter-spacing:.06em;
            text-transform:uppercase;
            color:var(--gold);
            margin-bottom:12px;
        }
        .section-label i{font-size:.85rem}
        .section-title{
            font-size:clamp(1.6rem,3.2vw,2.4rem);
            font-weight:800;
            letter-spacing:-.025em;
            line-height:1.2;
            color:var(--white);
            margin-bottom:16px;
        }
        .section-desc{
            font-size:1rem;
            color:var(--pale-mint);
            max-width:680px;
            line-height:1.7;
            margin-bottom:36px;
        }
        .section-heading-wrap{
            text-align:left;
            margin-bottom:40px;
        }
        @media(min-width:768px){
            .section-heading-wrap{max-width:70%}
        }

        /* ===== FEATURE / CONTENT CARDS ===== */
        .feature-grid{
            display:grid;
            gap:20px;
            grid-template-columns:1fr;
        }
        @media(min-width:768px){
            .feature-grid{grid-template-columns:repeat(2,1fr)}
        }
        @media(min-width:1024px){
            .feature-grid{grid-template-columns:repeat(3,1fr)}
        }
        .feature-card{
            position:relative;
            padding:28px 24px;
            background:var(--surface-glass);
            border:1px solid var(--border-gold);
            border-radius:var(--radius-lg);
            transition:var(--transition);
            overflow:hidden;
        }
        .feature-card::before{
            content:'';
            position:absolute;
            top:0;left:0;right:0;
            height:3px;
            background:linear-gradient(90deg,var(--gold),transparent);
            opacity:.7;
        }
        .feature-card:hover{
            background:var(--surface-glass-hover);
            transform:translateY(-4px);
            box-shadow:var(--shadow-card),var(--shadow-gold);
        }
        .feature-card .icon-wrap{
            width:52px;height:52px;
            border-radius:14px;
            display:flex;
            align-items:center;
            justify-content:center;
            background:rgba(255,215,0,.12);
            border:1px solid var(--border-gold);
            margin-bottom:18px;
            font-size:1.4rem;
            color:var(--gold);
        }
        .feature-card h3{
            font-size:1.15rem;
            font-weight:700;
            color:var(--white);
            margin-bottom:10px;
            letter-spacing:-.01em;
        }
        .feature-card p{
            font-size:.92rem;
            color:var(--muted-mint);
            line-height:1.65;
        }
        .feature-card .tag{
            position:absolute;
            top:20px;right:20px;
            padding:3px 10px;
            font-size:.68rem;
            font-weight:800;
            letter-spacing:.05em;
            text-transform:uppercase;
            color:var(--white);
            background:var(--lucky-red);
            border-radius:999px;
        }

        /* ===== TESTIMONIALS ===== */
        .testimonial-grid{
            display:grid;
            gap:20px;
        }
        @media(min-width:768px){
            .testimonial-grid{grid-template-columns:repeat(2,1fr)}
        }
        @media(min-width:1024px){
            .testimonial-grid{grid-template-columns:repeat(3,1fr)}
        }
        .testimonial-item{
            padding:26px 22px;
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-lg);
            transition:var(--transition);
        }
        .testimonial-item:hover{
            border-color:var(--border-gold);
            background:var(--surface-glass-hover);
        }
        .testimonial-item .stars{
            color:var(--gold);
            font-size:.9rem;
            margin-bottom:14px;
            letter-spacing:2px;
        }
        .testimonial-item blockquote{
            font-size:.95rem;
            color:var(--pale-mint);
            line-height:1.7;
            font-style:italic;
            margin-bottom:18px;
        }
        .testimonial-author{
            display:flex;
            align-items:center;
            gap:12px;
        }
        .testimonial-author .avatar{
            width:42px;height:42px;
            border-radius:50%;
            background:var(--gold);
            color:var(--jade-deep);
            display:flex;
            align-items:center;
            justify-content:center;
            font-weight:800;
            font-size:.9rem;
            flex-shrink:0;
        }
        .testimonial-author .name{
            font-size:.9rem;
            font-weight:700;
            color:var(--white);
        }
        .testimonial-author .meta{
            font-size:.78rem;
            color:var(--muted-mint);
        }

        /* ===== CMS LIST ===== */
        .cms-list-panel{
            display:grid;
            gap:32px;
        }
        @media(min-width:1024px){
            .cms-list-panel{grid-template-columns:1.6fr 1fr}
        }
        .cms-left-list{
            display:flex;
            flex-direction:column;
            gap:0;
        }
        .cms-list-item{
            display:flex;
            align-items:center;
            gap:16px;
            padding:16px 18px;
            border-bottom:1px solid var(--border-mint);
            transition:var(--transition);
            border-radius:8px;
        }
        .cms-list-item:hover{
            background:var(--surface-glass);
            border-bottom-color:var(--border-gold);
        }
        .cms-list-item .idx{
            font-size:1.6rem;
            font-weight:900;
            color:var(--gold);
            width:48px;
            text-align:center;
            flex-shrink:0;
            opacity:.7;
        }
        .cms-list-item .content h4{
            font-size:1rem;
            font-weight:700;
            color:var(--white);
            line-height:1.4;
            margin-bottom:5px;
            transition:var(--transition);
        }
        .cms-list-item:hover .content h4{color:var(--gold)}
        .cms-list-item .content .meta{
            font-size:.8rem;
            color:var(--muted-mint);
            display:flex;
            gap:12px;
            flex-wrap:wrap;
        }
        .cms-list-item .content .meta span{
            display:inline-flex;
            align-items:center;
            gap:5px;
        }
        .cms-right-recommend{
            padding:24px;
            background:var(--surface-glass);
            border:1px solid var(--border-gold);
            border-radius:var(--radius-lg);
            align-self:start;
        }
        .cms-right-recommend h5{
            font-size:1rem;
            font-weight:700;
            color:var(--gold);
            margin-bottom:16px;
            display:flex;
            align-items:center;
            gap:8px;
        }
        .cms-right-recommend ul{
            display:flex;
            flex-direction:column;
            gap:12px;
        }
        .cms-right-recommend li{
            padding:12px 14px;
            background:rgba(255,255,255,.04);
            border-radius:10px;
            border-left:3px solid var(--gold);
            font-size:.9rem;
            color:var(--pale-mint);
            line-height:1.5;
        }
        .cms-empty{
            padding:32px 20px;
            text-align:center;
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-lg);
            color:var(--muted-mint);
            font-size:1rem;
        }

        /* ===== TRUST BADGES ===== */
        .trust-strip{
            display:grid;
            gap:18px;
            grid-template-columns:repeat(2,1fr);
        }
        @media(min-width:768px){
            .trust-strip{grid-template-columns:repeat(4,1fr)}
        }
        .trust-badge{
            padding:22px 18px;
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-md);
            text-align:left;
            transition:var(--transition);
            display:flex;
            flex-direction:column;
            gap:8px;
        }
        .trust-badge:hover{
            border-color:var(--gold);
            box-shadow:var(--shadow-gold);
            transform:translateY(-2px);
        }
        .trust-badge i{
            font-size:1.6rem;
            color:var(--gold);
            margin-bottom:4px;
        }
        .trust-badge h4{
            font-size:.95rem;
            font-weight:700;
            color:var(--white);
        }
        .trust-badge p{
            font-size:.82rem;
            color:var(--muted-mint);
            line-height:1.5;
        }

        /* ===== GUIDE LIST ===== */
        .guide-steps{
            display:grid;
            gap:18px;
            counter-reset:guide;
        }
        .guide-step{
            display:flex;
            gap:16px;
            padding:22px 20px;
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-md);
            transition:var(--transition);
            counter-increment:guide;
        }
        .guide-step:hover{
            border-color:var(--border-gold);
            background:var(--surface-glass-hover);
        }
        .guide-step .step-num{
            font-size:1.8rem;
            font-weight:900;
            color:var(--gold);
            line-height:1;
            width:52px;
            flex-shrink:0;
        }
        .guide-step .step-body h4{
            font-size:1.05rem;
            font-weight:700;
            color:var(--white);
            margin-bottom:6px;
        }
        .guide-step .step-body p{
            font-size:.9rem;
            color:var(--muted-mint);
            line-height:1.6;
        }

        /* ===== CATEGORY TAGS ===== */
        .category-row{
            display:flex;
            flex-wrap:wrap;
            gap:14px;
        }
        .category-tag{
            display:inline-flex;
            align-items:center;
            gap:8px;
            padding:12px 22px;
            font-size:.9rem;
            font-weight:600;
            color:var(--pale-mint);
            background:var(--surface-glass);
            border:1px solid var(--border-gold);
            border-radius:999px;
            transition:var(--transition);
        }
        .category-tag:hover{
            color:var(--jade-deep);
            background:var(--gold);
            border-color:var(--gold);
            transform:translateY(-2px);
            box-shadow:0 8px 22px rgba(255,215,0,.3);
        }
        .category-tag i{font-size:.9rem}

        /* ===== CTA SECTION ===== */
        .cta-box{
            position:relative;
            padding:56px 32px;
            background:linear-gradient(135deg,var(--forest),var(--jade-deep));
            border:1px solid var(--border-gold);
            border-radius:var(--radius-xl);
            text-align:center;
            overflow:hidden;
        }
        .cta-box::before{
            content:'';
            position:absolute;
            inset:0;
            background:radial-gradient(ellipse at center,rgba(255,215,0,.12),transparent 60%);
            pointer-events:none;
        }
        .cta-box h2{
            font-size:clamp(1.5rem,3vw,2.2rem);
            font-weight:800;
            color:var(--white);
            letter-spacing:-.02em;
            margin-bottom:14px;
            position:relative;
        }
        .cta-box p{
            font-size:1rem;
            color:var(--pale-mint);
            max-width:540px;
            margin-inline:auto;
            margin-bottom:28px;
            position:relative;
            line-height:1.7;
        }
        .cta-box .btn-row{
            display:flex;
            flex-wrap:wrap;
            gap:14px;
            justify-content:center;
            position:relative;
        }

        /* ===== FOOTER ===== */
        .site-footer{
            background:var(--dark-charcoal);
            border-top:1px solid var(--border-gold);
            padding-block:56px 32px;
            margin-top:40px;
        }
        .footer-grid{
            display:grid;
            gap:32px;
            grid-template-columns:1fr;
        }
        @media(min-width:768px){
            .footer-grid{grid-template-columns:1.4fr 1fr 1fr}
        }
        .footer-brand .logo{
            font-size:1.2rem;
            font-weight:800;
            color:var(--gold);
            line-height:1.3;
            margin-bottom:12px;
        }
        .footer-brand p{
            font-size:.88rem;
            color:var(--muted-mint);
            line-height:1.7;
            max-width:340px;
        }
        .footer-col h5{
            font-size:.92rem;
            font-weight:700;
            color:var(--gold);
            margin-bottom:16px;
            letter-spacing:.03em;
        }
        .footer-col ul{display:flex;flex-direction:column;gap:10px}
        .footer-col ul a{
            font-size:.88rem;
            color:var(--muted-mint);
            transition:var(--transition);
        }
        .footer-col ul a:hover{color:var(--gold)}
        .footer-bottom{
            margin-top:40px;
            padding-top:24px;
            border-top:1px solid var(--border-mint);
            display:flex;
            flex-wrap:wrap;
            gap:12px;
            align-items:center;
            justify-content:space-between;
            font-size:.82rem;
            color:var(--muted-mint);
        }

        /* ===== FAB ===== */
        .fab-left{
            position:fixed;
            left:16px;
            bottom:96px;
            z-index:60;
            display:flex;
            align-items:center;
            justify-content:center;
            width:58px;height:58px;
            border-radius:50%;
            background:linear-gradient(145deg,#1a3a28,#0A2E1C);
            border:2px solid var(--gold);
            box-shadow:0 4px 24px rgba(255,215,0,.3),inset 0 1px 0 rgba(255,255,255,.15);
            opacity:.72;
            animation:fab-breathe 3s ease-in-out infinite;
            transition:var(--transition);
            cursor:pointer;
        }
        .fab-left i{
            font-size:1.25rem;
            color:var(--gold);
            transition:transform .35s ease;
        }
        .fab-left::after{
            content:'';
            position:absolute;
            top:4px;right:4px;
            width:12px;height:12px;
            border-radius:50%;
            background:var(--lucky-red);
            border:2px solid var(--dark-charcoal);
            animation:blink-dot 1.4s infinite;
        }
        .fab-left:hover{
            opacity:1;
            transform:scale(1.1);
            box-shadow:0 8px 32px rgba(255,215,0,.5);
        }
        .fab-left:hover i{transform:rotate(360deg)}
        .fab-left:active{
            transform:scale(.95) translateY(2px);
        }
        @keyframes fab-breathe{
            0%,100%{transform:translateY(0)}
            50%{transform:translateY(-6px)}
        }
        @keyframes blink-dot{
            0%,100%{opacity:1}
            50%{opacity:.25}
        }
        @media(max-width:640px){
            .fab-left{width:50px;height:50px;bottom:84px;left:12px}
        }

        /* ===== RESPONSIVE FINE-TUNE ===== */
        @media(max-width:520px){
            .nav-logo{font-size:.88rem;max-width:170px}
            .nav-auth .btn-login{padding:7px 10px;font-size:.78rem}
            .nav-auth .btn-signup{padding:7px 12px;font-size:.78rem}
            .hero-section{padding-block:100px 56px;min-height:auto}
            .hero-visual img{height:260px}
            .section-pad{padding-block:56px 48px}
            .cta-box{padding:36px 20px}
        }

/* roulang page: article */
:root{
            --jade-deep:#0A2E1C;
            --forest:#123E25;
            --gold:#FFD700;
            --lucky-red:#D32F2F;
            --pale-mint:#D1F2EB;
            --white:#FFFFFF;
            --soft-gold:#F0E68C;
            --dark-charcoal:#1C1C1E;
            --muted-mint:#9BBFB4;
            --surface-glass:rgba(255,255,255,.06);
            --surface-glass-hover:rgba(255,255,255,.1);
            --border-gold:rgba(255,215,0,.35);
            --border-mint:rgba(209,242,235,.18);
            --radius-sm:10px;
            --radius-md:16px;
            --radius-lg:24px;
            --radius-xl:32px;
            --shadow-card:0 12px 32px rgba(0,0,0,.35);
            --shadow-gold:0 0 28px rgba(255,215,0,.18);
            --shadow-neon:0 0 24px rgba(0,240,255,.12);
            --transition:all .3s cubic-bezier(.4,0,.2,1);
            --font-sans:'Inter','Segoe UI','Roboto',system-ui,sans-serif;
        }
        html{scroll-behavior:smooth}
        body{
            font-family:var(--font-sans);
            background:var(--jade-deep);
            color:var(--white);
            line-height:1.6;
            min-height:100vh;
            -webkit-font-smoothing:antialiased;
            -moz-osx-font-smoothing:grayscale;
            overflow-x:hidden;
        }
        a{text-decoration:none;color:inherit;transition:var(--transition)}
        a:focus-visible,button:focus-visible,input:focus-visible{
            outline:3px solid var(--gold);
            outline-offset:2px;
            border-radius:6px;
        }
        img{max-width:100%;height:auto;display:block}
        .container{
            width:100%;
            max-width:1200px;
            margin-inline:auto;
            padding-inline:20px;
        }
        .section-pad{padding-block:96px 80px}
        
        /* ===== HEADER / NAV ===== */
        .site-header{
            position:fixed;
            top:0;left:0;right:0;
            z-index:80;
            background:rgba(10,46,28,.82);
            backdrop-filter:blur(18px);
            -webkit-backdrop-filter:blur(18px);
            border-bottom:1px solid var(--border-gold);
            transition:var(--transition);
        }
        .site-header.scrolled{
            background:rgba(10,46,28,.96);
            box-shadow:0 8px 32px rgba(0,0,0,.4);
        }
        .nav-wrap{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:16px;
            height:68px;
        }
        .nav-logo{
            font-size:1.02rem;
            font-weight:800;
            letter-spacing:-.02em;
            color:var(--gold);
            line-height:1.25;
            max-width:260px;
            white-space:nowrap;
            overflow:hidden;
            text-overflow:ellipsis;
            display:flex;
            align-items:center;
            gap:8px;
        }
        .nav-logo i{
            color:var(--gold);
            font-size:1.35rem;
            flex-shrink:0;
        }
        .nav-links{
            display:none;
            align-items:center;
            gap:28px;
            flex:1;
            justify-content:center;
        }
        .nav-links a{
            font-size:.9rem;
            font-weight:500;
            color:var(--pale-mint);
            padding-block:6px;
            border-bottom:2px solid transparent;
            transition:var(--transition);
            white-space:nowrap;
        }
        .nav-links a:hover,
        .nav-links a.active{
            color:var(--gold);
            border-bottom-color:var(--gold);
        }
        .nav-auth{
            display:flex;
            align-items:center;
            gap:10px;
            flex-shrink:0;
        }
        .btn-login{
            padding:8px 14px;
            font-size:.85rem;
            font-weight:600;
            color:var(--pale-mint);
            border:1px solid var(--border-mint);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
        }
        .btn-login:hover{
            color:var(--gold);
            border-color:var(--gold);
            background:rgba(255,215,0,.08);
        }
        .btn-signup{
            padding:8px 18px;
            font-size:.85rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
            box-shadow:0 4px 16px rgba(255,215,0,.3);
        }
        .btn-signup:hover{
            background:#FFE44D;
            transform:translateY(-1px);
            box-shadow:0 8px 24px rgba(255,215,0,.42);
        }
        .menu-toggle{
            display:flex;
            align-items:center;
            justify-content:center;
            width:42px;height:42px;
            border-radius:10px;
            border:1px solid var(--border-gold);
            background:rgba(255,215,0,.06);
            color:var(--gold);
            font-size:1.2rem;
            cursor:pointer;
            transition:var(--transition);
            flex-shrink:0;
        }
        .menu-toggle:hover{
            background:rgba(255,215,0,.16);
        }
        
        /* Mobile drawer */
        .mobile-drawer{
            position:fixed;
            top:68px;right:0;
            width:min(82vw,360px);
            background:var(--forest);
            border-left:1px solid var(--border-gold);
            padding:28px 22px;
            z-index:75;
            transform:translateX(100%);
            transition:transform .35s cubic-bezier(.4,0,.2,1);
            box-shadow:-12px 0 40px rgba(0,0,0,.4);
            border-radius:0 0 0 var(--radius-lg);
        }
        .mobile-drawer.open{transform:translateX(0)}
        .mobile-drawer a{
            display:block;
            padding:13px 16px;
            font-size:.95rem;
            font-weight:500;
            color:var(--pale-mint);
            border-radius:10px;
            margin-bottom:6px;
            transition:var(--transition);
        }
        .mobile-drawer a:hover,
        .mobile-drawer a.active{
            color:var(--gold);
            background:rgba(255,215,0,.08);
        }
        .mobile-drawer .btn-signup{
            margin-top:12px;
            text-align:center;
            display:block;
        }
        
        /* ===== ARTICLE HERO ===== */
        .article-hero{
            position:relative;
            padding-top:140px;
            padding-bottom:56px;
            background:linear-gradient(180deg,#0A2E1C 0%,#0F3523 60%,#0A2E1C 100%);
            border-bottom:1px solid var(--border-gold);
            overflow:hidden;
        }
        .article-hero::before{
            content:"";
            position:absolute;
            top:0;left:0;right:0;bottom:0;
            background-image:url('/assets/images/backpic/back-1.jpg');
            background-size:cover;
            background-position:center;
            opacity:.15;
            pointer-events:none;
        }
        .article-hero .container{
            position:relative;
            z-index:2;
        }
        .breadcrumb{
            display:flex;
            align-items:center;
            gap:8px;
            font-size:.85rem;
            color:var(--muted-mint);
            margin-bottom:16px;
            flex-wrap:wrap;
        }
        .breadcrumb a{
            color:var(--pale-mint);
            transition:var(--transition);
        }
        .breadcrumb a:hover{
            color:var(--gold);
        }
        .breadcrumb .separator{
            color:var(--gold);
            font-size:.7rem;
        }
        .breadcrumb .current{
            color:var(--gold);
            font-weight:600;
        }
        .article-hero h1{
            font-size:2.2rem;
            font-weight:800;
            line-height:1.25;
            letter-spacing:-.02em;
            color:var(--white);
            margin-bottom:16px;
            max-width:850px;
        }
        .article-meta{
            display:flex;
            align-items:center;
            gap:20px;
            flex-wrap:wrap;
            font-size:.9rem;
            color:var(--muted-mint);
        }
        .article-meta span{
            display:inline-flex;
            align-items:center;
            gap:6px;
        }
        .article-meta i{
            color:var(--gold);
            font-size:.85rem;
        }
        .article-category-tag{
            display:inline-flex;
            align-items:center;
            gap:6px;
            padding:5px 12px;
            background:rgba(255,215,0,.12);
            border:1px solid var(--border-gold);
            border-radius:999px;
            font-size:.8rem;
            font-weight:600;
            color:var(--gold);
        }
        
        /* ===== ARTICLE BODY ===== */
        .article-body-section{
            padding-block:48px 72px;
            background:var(--jade-deep);
        }
        .article-body-layout{
            display:grid;
            grid-template-columns:1fr;
            gap:36px;
            max-width:860px;
            margin-inline:auto;
        }
        .article-featured-image{
            border-radius:var(--radius-lg);
            overflow:hidden;
            box-shadow:var(--shadow-card);
            border:1px solid var(--border-gold);
        }
        .article-featured-image img{
            width:100%;
            height:auto;
            aspect-ratio:16/9;
            object-fit:cover;
        }
        .article-content{
            font-size:1.05rem;
            line-height:1.75;
            color:#E8F5F0;
        }
        .article-content p{
            margin-bottom:1.4em;
        }
        .article-content h2{
            font-size:1.6rem;
            font-weight:700;
            color:var(--gold);
            margin-top:2em;
            margin-bottom:.8em;
            letter-spacing:-.01em;
            line-height:1.3;
        }
        .article-content h3{
            font-size:1.3rem;
            font-weight:700;
            color:var(--pale-mint);
            margin-top:1.8em;
            margin-bottom:.6em;
            line-height:1.4;
        }
        .article-content ul,
        .article-content ol{
            margin-bottom:1.4em;
            padding-left:1.5em;
        }
        .article-content ul{
            list-style:disc;
        }
        .article-content ol{
            list-style:decimal;
        }
        .article-content li{
            margin-bottom:.5em;
        }
        .article-content strong{
            color:var(--gold);
            font-weight:700;
        }
        .article-content blockquote{
            background:var(--surface-glass);
            border-left:4px solid var(--gold);
            border-radius:var(--radius-sm);
            padding:18px 24px;
            margin:24px 0;
            font-style:italic;
            color:var(--pale-mint);
            font-size:1.1rem;
            line-height:1.7;
            box-shadow:var(--shadow-gold);
        }
        .article-content img{
            border-radius:var(--radius-md);
            margin-block:20px;
            box-shadow:var(--shadow-card);
            border:1px solid var(--border-mint);
        }
        .article-content a{
            color:var(--gold);
            text-decoration:underline;
            text-underline-offset:3px;
        }
        .article-content a:hover{
            color:#FFE44D;
        }
        
        /* Article not found */
        .article-not-found{
            text-align:center;
            padding-block:80px;
            max-width:600px;
            margin-inline:auto;
        }
        .article-not-found .icon-wrap{
            width:80px;
            height:80px;
            border-radius:50%;
            background:var(--surface-glass);
            border:1px solid var(--border-gold);
            display:flex;
            align-items:center;
            justify-content:center;
            margin:0 auto 24px;
        }
        .article-not-found .icon-wrap i{
            font-size:2rem;
            color:var(--gold);
        }
        .article-not-found h2{
            font-size:1.8rem;
            font-weight:700;
            color:var(--white);
            margin-bottom:12px;
        }
        .article-not-found p{
            color:var(--muted-mint);
            margin-bottom:24px;
            font-size:1.05rem;
        }
        
        /* ===== ARTICLE CTA ===== */
        .article-cta{
            background:var(--forest);
            border-radius:var(--radius-lg);
            border:1px solid var(--border-gold);
            padding:36px 28px;
            margin-top:48px;
            text-align:center;
            box-shadow:var(--shadow-gold);
        }
        .article-cta h3{
            font-size:1.5rem;
            font-weight:700;
            color:var(--gold);
            margin-bottom:12px;
        }
        .article-cta p{
            color:var(--pale-mint);
            margin-bottom:20px;
            font-size:1rem;
        }
        .article-cta .cta-btn{
            display:inline-flex;
            align-items:center;
            gap:8px;
            padding:12px 28px;
            font-size:1rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:999px;
            transition:var(--transition);
            box-shadow:0 4px 18px rgba(255,215,0,.35);
        }
        .article-cta .cta-btn:hover{
            background:#FFE44D;
            transform:translateY(-2px);
            box-shadow:0 8px 28px rgba(255,215,0,.5);
        }
        
        /* ===== FOOTER ===== */
        .site-footer{
            background:var(--dark-charcoal);
            border-top:1px solid var(--border-gold);
            padding-block:56px 24px;
            margin-top:32px;
        }
        .footer-grid{
            display:grid;
            grid-template-columns:1fr;
            gap:36px;
            margin-bottom:32px;
        }
        .footer-brand .logo{
            font-size:1rem;
            font-weight:800;
            color:var(--gold);
            margin-bottom:12px;
            line-height:1.35;
        }
        .footer-brand p{
            color:var(--muted-mint);
            font-size:.9rem;
            line-height:1.7;
            max-width:400px;
        }
        .footer-col h5{
            font-size:.95rem;
            font-weight:700;
            color:var(--white);
            margin-bottom:14px;
            letter-spacing:.01em;
        }
        .footer-col ul{
            list-style:none;
            padding:0;
            margin:0;
        }
        .footer-col ul li{
            margin-bottom:8px;
        }
        .footer-col ul a{
            color:var(--muted-mint);
            font-size:.88rem;
            transition:var(--transition);
        }
        .footer-col ul a:hover{
            color:var(--gold);
        }
        .footer-bottom{
            border-top:1px solid var(--border-mint);
            padding-top:20px;
            display:flex;
            flex-direction:column;
            gap:8px;
            font-size:.82rem;
            color:var(--muted-mint);
        }
        .footer-bottom a{
            color:var(--gold);
        }
        .footer-bottom a:hover{
            color:#FFE44D;
        }
        
        /* ===== FAB ===== */
        .fab-support{
            position:fixed;
            left:16px;
            bottom:96px;
            z-index:60;
            width:56px;
            height:56px;
            border-radius:50%;
            background:var(--dark-charcoal);
            border:2px solid var(--gold);
            display:flex;
            align-items:center;
            justify-content:center;
            color:var(--gold);
            font-size:1.5rem;
            cursor:pointer;
            box-shadow:0 4px 20px rgba(255,215,0,.3);
            opacity:.7;
            transition:var(--transition);
            animation:fabFloat 3s ease-in-out infinite;
        }
        .fab-support:hover{
            opacity:1;
            transform:scale(1.1);
            box-shadow:0 6px 28px rgba(255,215,0,.5);
        }
        .fab-support .notification-dot{
            position:absolute;
            top:8px;
            right:8px;
            width:12px;
            height:12px;
            background:var(--lucky-red);
            border-radius:50%;
            border:2px solid var(--white);
            animation:blinkDot 1.2s ease-in-out infinite;
        }
        @keyframes fabFloat{
            0%,100%{transform:translateY(0)}
            50%{transform:translateY(-6px)}
        }
        @keyframes blinkDot{
            0%,100%{opacity:1}
            50%{opacity:.3}
        }
        
        /* ===== RESPONSIVE ===== */
        @media (min-width:768px){
            .nav-links{display:flex}
            .menu-toggle{display:none}
            .nav-logo{font-size:1.08rem;max-width:340px}
            .article-body-layout{
                grid-template-columns:1fr;
            }
            .footer-grid{
                grid-template-columns:2fr 1fr 1fr;
                gap:48px;
            }
            .article-hero h1{
                font-size:2.8rem;
            }
            .footer-bottom{
                flex-direction:row;
                justify-content:space-between;
                align-items:center;
            }
        }
        @media (min-width:1024px){
            .article-hero h1{
                font-size:3rem;
            }
            .article-body-layout{
                grid-template-columns:minmax(0,1fr);
            }
            .article-cta{
                padding:48px 40px;
            }
        }
        @media (max-width:520px){
            .article-hero{
                padding-top:120px;
                padding-bottom:40px;
            }
            .article-hero h1{
                font-size:1.7rem;
            }
            .article-content{
                font-size:.98rem;
            }
            .article-content h2{
                font-size:1.4rem;
            }
            .article-cta h3{
                font-size:1.3rem;
            }
            .article-cta .cta-btn{
                padding:10px 20px;
                font-size:.9rem;
            }
            .nav-logo{
                font-size:.85rem;
                max-width:180px;
            }
            .btn-login{
                padding:6px 10px;
                font-size:.75rem;
            }
            .btn-signup{
                padding:6px 12px;
                font-size:.75rem;
            }
            .fab-support{
                width:48px;
                height:48px;
                font-size:1.2rem;
            }
        }

/* roulang page: category1 */
:root{
            --jade-deep:#0A2E1C;
            --forest:#123E25;
            --gold:#FFD700;
            --lucky-red:#D32F2F;
            --pale-mint:#D1F2EB;
            --white:#FFFFFF;
            --soft-gold:#F0E68C;
            --dark-charcoal:#1C1C1E;
            --muted-mint:#9BBFB4;
            --surface-glass:rgba(255,255,255,.06);
            --surface-glass-hover:rgba(255,255,255,.1);
            --border-gold:rgba(255,215,0,.35);
            --border-mint:rgba(209,242,235,.18);
            --radius-sm:10px;
            --radius-md:16px;
            --radius-lg:24px;
            --radius-xl:32px;
            --shadow-card:0 12px 32px rgba(0,0,0,.35);
            --shadow-gold:0 0 28px rgba(255,215,0,.18);
            --shadow-neon:0 0 24px rgba(0,240,255,.12);
            --transition:all .3s cubic-bezier(.4,0,.2,1);
            --font-sans:'Inter','Segoe UI','Roboto',system-ui,sans-serif;
        }
        html{scroll-behavior:smooth}
        body{
            font-family:var(--font-sans);
            background:var(--jade-deep);
            color:var(--white);
            line-height:1.6;
            min-height:100vh;
            -webkit-font-smoothing:antialiased;
            -moz-osx-font-smoothing:grayscale;
            overflow-x:hidden;
        }
        a{text-decoration:none;color:inherit;transition:var(--transition)}
        a:focus-visible,button:focus-visible,input:focus-visible{
            outline:3px solid var(--gold);
            outline-offset:2px;
            border-radius:6px;
        }
        img{max-width:100%;height:auto;display:block}
        .container{
            width:100%;
            max-width:1200px;
            margin-inline:auto;
            padding-inline:20px;
        }
        .section-pad{padding-block:96px 80px}
        .section-pad-sm{padding-block:64px 48px}

        /* ===== HEADER / NAV ===== */
        .site-header{
            position:fixed;
            top:0;left:0;right:0;
            z-index:80;
            background:rgba(10,46,28,.82);
            backdrop-filter:blur(18px);
            -webkit-backdrop-filter:blur(18px);
            border-bottom:1px solid var(--border-gold);
            transition:var(--transition);
        }
        .site-header.scrolled{
            background:rgba(10,46,28,.96);
            box-shadow:0 8px 32px rgba(0,0,0,.4);
        }
        .nav-wrap{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:16px;
            height:68px;
        }
        .nav-logo{
            font-size:1.08rem;
            font-weight:800;
            letter-spacing:-.02em;
            color:var(--gold);
            line-height:1.25;
            max-width:340px;
            white-space:nowrap;
            overflow:hidden;
            text-overflow:ellipsis;
            display:flex;
            align-items:center;
            gap:8px;
        }
        .nav-logo i{
            color:var(--gold);
            font-size:1.35rem;
            flex-shrink:0;
        }
        .nav-links{
            display:flex;
            align-items:center;
            gap:28px;
            flex:1;
            justify-content:center;
        }
        .nav-links a{
            font-size:.9rem;
            font-weight:500;
            color:var(--pale-mint);
            padding-block:6px;
            border-bottom:2px solid transparent;
            transition:var(--transition);
            white-space:nowrap;
        }
        .nav-links a:hover,
        .nav-links a.active{
            color:var(--gold);
            border-bottom-color:var(--gold);
        }
        .nav-auth{
            display:flex;
            align-items:center;
            gap:10px;
            flex-shrink:0;
        }
        .btn-login{
            padding:8px 14px;
            font-size:.85rem;
            font-weight:600;
            color:var(--pale-mint);
            border:1px solid var(--border-mint);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
        }
        .btn-login:hover{
            color:var(--gold);
            border-color:var(--gold);
            background:rgba(255,215,0,.08);
        }
        .btn-signup{
            padding:8px 18px;
            font-size:.85rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
            box-shadow:0 4px 16px rgba(255,215,0,.3);
        }
        .btn-signup:hover{
            background:#FFE44D;
            transform:translateY(-1px);
            box-shadow:0 8px 24px rgba(255,215,0,.42);
        }
        .menu-toggle{
            display:none;
            align-items:center;
            justify-content:center;
            width:42px;height:42px;
            border-radius:10px;
            border:1px solid var(--border-gold);
            background:rgba(255,215,0,.06);
            color:var(--gold);
            font-size:1.2rem;
            cursor:pointer;
            transition:var(--transition);
            flex-shrink:0;
        }
        .menu-toggle:hover{
            background:rgba(255,215,0,.16);
        }

        /* Mobile drawer */
        .mobile-drawer{
            position:fixed;
            top:68px;right:0;
            width:min(82vw,360px);
            background:var(--forest);
            border-left:1px solid var(--border-gold);
            padding:28px 22px;
            z-index:75;
            transform:translateX(100%);
            transition:transform .35s cubic-bezier(.4,0,.2,1);
            box-shadow:-12px 0 40px rgba(0,0,0,.4);
            border-radius:0 0 0 var(--radius-lg);
        }
        .mobile-drawer.open{transform:translateX(0)}
        .mobile-drawer a{
            display:block;
            padding:13px 16px;
            font-size:.95rem;
            font-weight:500;
            color:var(--pale-mint);
            border-radius:10px;
            margin-bottom:6px;
            transition:var(--transition);
        }
        .mobile-drawer a:hover,
        .mobile-drawer a.active{
            color:var(--gold);
            background:rgba(255,215,0,.08);
        }

        /* ===== BUTTONS ===== */
        .btn-primary{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            gap:10px;
            padding:14px 30px;
            font-size:.95rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:999px;
            transition:var(--transition);
            box-shadow:0 4px 18px rgba(255,215,0,.32);
            border:none;
            cursor:pointer;
            white-space:nowrap;
        }
        .btn-primary:hover{
            background:#FFE44D;
            transform:translateY(-2px);
            box-shadow:0 10px 28px rgba(255,215,0,.45);
        }
        .btn-outline{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            gap:10px;
            padding:13px 28px;
            font-size:.95rem;
            font-weight:600;
            color:var(--gold);
            background:transparent;
            border:1.5px solid var(--border-gold);
            border-radius:999px;
            transition:var(--transition);
            cursor:pointer;
            white-space:nowrap;
        }
        .btn-outline:hover{
            background:rgba(255,215,0,.08);
            border-color:var(--gold);
            transform:translateY(-1px);
        }
        .btn-danger{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            gap:10px;
            padding:13px 28px;
            font-size:.95rem;
            font-weight:700;
            color:var(--white);
            background:var(--lucky-red);
            border-radius:999px;
            transition:var(--transition);
            box-shadow:0 4px 18px rgba(211,47,47,.35);
            cursor:pointer;
            white-space:nowrap;
        }
        .btn-danger:hover{
            background:#E53935;
            transform:translateY(-2px);
            box-shadow:0 8px 26px rgba(211,47,47,.5);
        }

        /* ===== BADGES & TAGS ===== */
        .badge{
            display:inline-flex;
            align-items:center;
            gap:6px;
            padding:6px 14px;
            font-size:.75rem;
            font-weight:700;
            border-radius:999px;
            letter-spacing:.02em;
            text-transform:uppercase;
        }
        .badge-hot{
            background:var(--lucky-red);
            color:var(--white);
            box-shadow:0 0 16px rgba(211,47,47,.4);
        }
        .badge-gold{
            background:rgba(255,215,0,.15);
            color:var(--gold);
            border:1px solid var(--border-gold);
        }
        .badge-mint{
            background:rgba(209,242,235,.12);
            color:var(--pale-mint);
            border:1px solid var(--border-mint);
        }

        /* ===== CARDS ===== */
        .glass-card{
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-md);
            padding:28px;
            transition:var(--transition);
            backdrop-filter:blur(12px);
            -webkit-backdrop-filter:blur(12px);
        }
        .glass-card:hover{
            background:var(--surface-glass-hover);
            border-color:var(--border-gold);
            box-shadow:var(--shadow-gold);
            transform:translateY(-3px);
        }
        .feature-card{
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-md);
            padding:28px 24px;
            transition:var(--transition);
            backdrop-filter:blur(10px);
            -webkit-backdrop-filter:blur(10px);
            height:100%;
            display:flex;
            flex-direction:column;
            gap:14px;
        }
        .feature-card:hover{
            border-color:var(--border-gold);
            box-shadow:var(--shadow-gold);
            transform:translateY(-4px);
        }
        .feature-card .icon-box{
            width:52px;height:52px;
            border-radius:14px;
            display:flex;
            align-items:center;
            justify-content:center;
            font-size:1.4rem;
            color:var(--gold);
            background:rgba(255,215,0,.1);
            border:1px solid var(--border-gold);
            flex-shrink:0;
        }
        .feature-card h3{
            font-size:1.12rem;
            font-weight:700;
            color:var(--white);
            line-height:1.35;
            margin-top:4px;
        }
        .feature-card p{
            font-size:.9rem;
            color:var(--muted-mint);
            line-height:1.65;
            margin-bottom:0;
        }

        /* ===== STEP LIST ===== */
        .step-item{
            display:flex;
            gap:20px;
            align-items:flex-start;
            padding:22px 24px;
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-md);
            transition:var(--transition);
            margin-bottom:16px;
        }
        .step-item:hover{
            border-color:var(--border-gold);
            background:var(--surface-glass-hover);
            box-shadow:var(--shadow-gold);
            transform:translateX(4px);
        }
        .step-number{
            width:48px;height:48px;
            border-radius:50%;
            background:var(--gold);
            color:var(--jade-deep);
            font-weight:800;
            font-size:1.15rem;
            display:flex;
            align-items:center;
            justify-content:center;
            flex-shrink:0;
            box-shadow:0 0 20px rgba(255,215,0,.35);
        }
        .step-content h4{
            font-size:1.02rem;
            font-weight:700;
            color:var(--white);
            margin-bottom:6px;
        }
        .step-content p{
            font-size:.88rem;
            color:var(--muted-mint);
            line-height:1.65;
            margin-bottom:0;
        }

        /* ===== HERO ===== */
        .hero-category{
            padding-top:130px;
            padding-bottom:70px;
            background:linear-gradient(180deg,rgba(10,46,28,.92) 0%,rgba(10,46,28,.98) 100%),url('/assets/images/backpic/back-2.jpg') center/cover no-repeat;
            position:relative;
            min-height:520px;
            display:flex;
            align-items:center;
        }
        .hero-category::before{
            content:'';
            position:absolute;
            inset:0;
            background:radial-gradient(ellipse at 30% 40%,rgba(255,215,0,.08) 0%,transparent 60%);
            pointer-events:none;
        }
        .hero-category .container{position:relative;z-index:2}
        .hero-category h1{
            font-size:2.2rem;
            font-weight:800;
            line-height:1.25;
            color:var(--gold);
            margin-bottom:18px;
            max-width:750px;
        }
        .hero-category .lead{
            font-size:1.05rem;
            color:var(--pale-mint);
            max-width:680px;
            line-height:1.7;
            margin-bottom:28px;
        }
        .hero-explosion{
            position:absolute;
            top:90px;
            right:60px;
            width:100px;
            height:100px;
            background:var(--lucky-red);
            border-radius:50%;
            display:flex;
            align-items:center;
            justify-content:center;
            text-align:center;
            font-weight:800;
            font-size:.8rem;
            color:var(--white);
            box-shadow:0 0 40px rgba(211,47,47,.5);
            transform:rotate(-12deg);
            z-index:3;
            line-height:1.3;
            padding:12px;
        }

        /* ===== IMAGE BLOCK ===== */
        .image-block{
            border-radius:var(--radius-lg);
            overflow:hidden;
            border:1px solid var(--border-gold);
            box-shadow:var(--shadow-card);
            position:relative;
        }
        .image-block img{
            width:100%;
            height:100%;
            object-fit:cover;
        }
        .image-block .overlay-tag{
            position:absolute;
            bottom:16px;
            left:16px;
            background:rgba(10,46,28,.85);
            backdrop-filter:blur(8px);
            border:1px solid var(--border-gold);
            color:var(--gold);
            padding:8px 16px;
            border-radius:999px;
            font-size:.8rem;
            font-weight:600;
        }

        /* ===== FAQ ===== */
        .faq-item{
            border:1px solid var(--border-mint);
            border-radius:var(--radius-md);
            margin-bottom:14px;
            overflow:hidden;
            transition:var(--transition);
            background:var(--surface-glass);
        }
        .faq-item:hover{
            border-color:var(--border-gold);
        }
        .faq-question{
            width:100%;
            padding:18px 24px;
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:16px;
            background:none;
            border:none;
            cursor:pointer;
            color:var(--white);
            font-size:.95rem;
            font-weight:600;
            text-align:left;
            transition:var(--transition);
            font-family:var(--font-sans);
        }
        .faq-question:hover{
            color:var(--gold);
        }
        .faq-question i{
            color:var(--gold);
            font-size:.85rem;
            transition:transform .3s ease;
            flex-shrink:0;
        }
        .faq-question.active i{
            transform:rotate(180deg);
        }
        .faq-answer{
            max-height:0;
            overflow:hidden;
            transition:max-height .4s ease;
        }
        .faq-answer-inner{
            padding:0 24px 20px;
            color:var(--muted-mint);
            font-size:.9rem;
            line-height:1.7;
        }

        /* ===== CTA SECTION ===== */
        .cta-section{
            background:linear-gradient(135deg,var(--forest) 0%,var(--jade-deep) 100%);
            border:1px solid var(--border-gold);
            border-radius:var(--radius-xl);
            padding:48px 40px;
            text-align:left;
            position:relative;
            overflow:hidden;
        }
        .cta-section::before{
            content:'';
            position:absolute;
            top:-40%;
            right:-20%;
            width:400px;
            height:400px;
            background:radial-gradient(circle,rgba(255,215,0,.12) 0%,transparent 70%);
            pointer-events:none;
        }
        .cta-section h2{
            font-size:1.5rem;
            font-weight:800;
            color:var(--gold);
            margin-bottom:14px;
        }
        .cta-section p{
            color:var(--pale-mint);
            font-size:.95rem;
            line-height:1.7;
            margin-bottom:24px;
            max-width:600px;
        }

        /* ===== FLOATING ACTION BUTTON ===== */
        .fab-support{
            position:fixed;
            left:16px;
            bottom:96px;
            z-index:50;
            width:52px;
            height:52px;
            border-radius:50%;
            background:rgba(10,46,28,.85);
            backdrop-filter:blur(12px);
            -webkit-backdrop-filter:blur(12px);
            border:2px solid var(--gold);
            color:var(--gold);
            font-size:1.35rem;
            display:flex;
            align-items:center;
            justify-content:center;
            cursor:pointer;
            transition:var(--transition);
            box-shadow:0 4px 20px rgba(255,215,0,.3);
            animation:floaty 3s ease-in-out infinite;
            text-decoration:none;
        }
        .fab-support:hover{
            transform:scale(1.1);
            opacity:1;
            box-shadow:0 8px 32px rgba(255,215,0,.45);
        }
        .fab-support .fab-dot{
            position:absolute;
            top:-3px;
            right:-3px;
            width:14px;
            height:14px;
            background:var(--lucky-red);
            border-radius:50%;
            border:2px solid var(--jade-deep);
            animation:blink 1.4s ease-in-out infinite;
        }

        @keyframes floaty{
            0%,100%{transform:translateY(0)}
            50%{transform:translateY(-6px)}
        }
        @keyframes blink{
            0%,100%{opacity:1}
            50%{opacity:.35}
        }

        /* ===== FOOTER ===== */
        .site-footer{
            background:var(--jade-deep);
            border-top:1px solid var(--border-gold);
            padding:48px 0 24px;
            margin-top:40px;
        }
        .footer-grid{
            display:grid;
            grid-template-columns:1fr;
            gap:36px;
            margin-bottom:32px;
        }
        .footer-brand .logo{
            font-size:1rem;
            font-weight:800;
            color:var(--gold);
            line-height:1.4;
            margin-bottom:12px;
        }
        .footer-brand p{
            font-size:.85rem;
            color:var(--muted-mint);
            line-height:1.65;
            max-width:420px;
        }
        .footer-col h5{
            font-size:.9rem;
            font-weight:700;
            color:var(--gold);
            margin-bottom:14px;
            letter-spacing:.02em;
            text-transform:uppercase;
        }
        .footer-col ul{
            list-style:none;
            padding:0;
            margin:0;
        }
        .footer-col ul li{
            margin-bottom:10px;
        }
        .footer-col ul li a{
            font-size:.85rem;
            color:var(--muted-mint);
            transition:var(--transition);
        }
        .footer-col ul li a:hover{
            color:var(--gold);
        }
        .footer-bottom{
            display:flex;
            flex-direction:column;
            gap:10px;
            padding-top:20px;
            border-top:1px solid var(--border-mint);
            font-size:.78rem;
            color:var(--muted-mint);
            text-align:center;
        }

        /* ===== RESPONSIVE ===== */
        @media (max-width:1024px){
            .nav-links{display:none}
            .menu-toggle{display:flex}
            .nav-logo{font-size:1rem;max-width:260px}
            .hero-category h1{font-size:1.8rem}
            .hero-explosion{width:80px;height:80px;font-size:.7rem;right:30px}
            .section-pad, .section-pad-sm{padding-block:72px 56px}
        }
        @media (max-width:768px){
            .nav-auth .btn-login{display:inline-flex}
            .nav-auth .btn-signup{display:inline-flex}
            .hero-category{padding-top:110px;padding-bottom:56px;min-height:auto}
            .hero-category h1{font-size:1.5rem}
            .hero-category .lead{font-size:.95rem}
            .hero-explosion{display:none}
            .step-item{flex-direction:column;gap:14px}
            .cta-section{padding:32px 24px}
            .footer-grid{grid-template-columns:1fr}
            .footer-bottom{flex-direction:column;align-items:center;text-align:center}
        }
        @media (max-width:520px){
            .container{padding-inline:14px}
            .hero-category h1{font-size:1.3rem}
            .btn-primary,.btn-outline,.btn-danger{width:100%;padding:13px 20px;font-size:.88rem}
            .nav-logo{max-width:200px;font-size:.88rem}
            .nav-wrap{height:60px}
            .mobile-drawer{top:60px}
            .fab-support{left:12px;bottom:80px;width:46px;height:46px;font-size:1.15rem}
        }
        @media (min-width:768px){
            .footer-grid{grid-template-columns:1.4fr 1fr 1fr}
            .footer-bottom{flex-direction:row;justify-content:space-between;align-items:center;text-align:left}
        }
        @media (min-width:1025px){
            .nav-links{display:flex}
            .menu-toggle{display:none}
        }

/* roulang page: category2 */
:root{
            --jade-deep:#0A2E1C;
            --forest:#123E25;
            --gold:#FFD700;
            --lucky-red:#D32F2F;
            --pale-mint:#D1F2EB;
            --white:#FFFFFF;
            --soft-gold:#F0E68C;
            --dark-charcoal:#1C1C1E;
            --muted-mint:#9BBFB4;
            --surface-glass:rgba(255,255,255,.06);
            --surface-glass-hover:rgba(255,255,255,.1);
            --border-gold:rgba(255,215,0,.35);
            --border-mint:rgba(209,242,235,.18);
            --radius-sm:10px;
            --radius-md:16px;
            --radius-lg:24px;
            --radius-xl:32px;
            --shadow-card:0 12px 32px rgba(0,0,0,.35);
            --shadow-gold:0 0 28px rgba(255,215,0,.18);
            --shadow-neon:0 0 24px rgba(0,240,255,.12);
            --transition:all .3s cubic-bezier(.4,0,.2,1);
            --font-sans:'Inter','Segoe UI','Roboto',system-ui,sans-serif;
        }
        html{scroll-behavior:smooth}
        body{
            font-family:var(--font-sans);
            background:var(--jade-deep);
            color:var(--white);
            line-height:1.6;
            min-height:100vh;
            -webkit-font-smoothing:antialiased;
            -moz-osx-font-smoothing:grayscale;
            overflow-x:hidden;
        }
        a{text-decoration:none;color:inherit;transition:var(--transition)}
        a:focus-visible,button:focus-visible,input:focus-visible{
            outline:3px solid var(--gold);
            outline-offset:2px;
            border-radius:6px;
        }
        img{max-width:100%;height:auto;display:block}
        .container{
            width:100%;
            max-width:1200px;
            margin-inline:auto;
            padding-inline:20px;
        }
        .section-pad{padding-block:72px 64px}
        @media(min-width:768px){.section-pad{padding-block:96px 80px}}

        /* ===== HEADER / NAV ===== */
        .site-header{
            position:fixed;
            top:0;left:0;right:0;
            z-index:80;
            background:rgba(10,46,28,.82);
            backdrop-filter:blur(18px);
            -webkit-backdrop-filter:blur(18px);
            border-bottom:1px solid var(--border-gold);
            transition:var(--transition);
        }
        .site-header.scrolled{
            background:rgba(10,46,28,.96);
            box-shadow:0 8px 32px rgba(0,0,0,.4);
        }
        .nav-wrap{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:16px;
            height:68px;
        }
        .nav-logo{
            font-size:1.02rem;
            font-weight:800;
            letter-spacing:-.02em;
            color:var(--gold);
            line-height:1.25;
            max-width:260px;
            white-space:nowrap;
            overflow:hidden;
            text-overflow:ellipsis;
            display:flex;
            align-items:center;
            gap:8px;
        }
        .nav-logo i{
            color:var(--gold);
            font-size:1.35rem;
            flex-shrink:0;
        }
        .nav-links{
            display:none;
            align-items:center;
            gap:28px;
            flex:1;
            justify-content:center;
        }
        .nav-links a{
            font-size:.9rem;
            font-weight:500;
            color:var(--pale-mint);
            padding-block:6px;
            border-bottom:2px solid transparent;
            transition:var(--transition);
            white-space:nowrap;
        }
        .nav-links a:hover,
        .nav-links a.active{
            color:var(--gold);
            border-bottom-color:var(--gold);
        }
        .nav-auth{
            display:flex;
            align-items:center;
            gap:10px;
            flex-shrink:0;
        }
        .btn-login{
            padding:8px 14px;
            font-size:.85rem;
            font-weight:600;
            color:var(--pale-mint);
            border:1px solid var(--border-mint);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
        }
        .btn-login:hover{
            color:var(--gold);
            border-color:var(--gold);
            background:rgba(255,215,0,.08);
        }
        .btn-signup{
            padding:8px 18px;
            font-size:.85rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
            box-shadow:0 4px 16px rgba(255,215,0,.3);
        }
        .btn-signup:hover{
            background:#FFE44D;
            transform:translateY(-1px);
            box-shadow:0 8px 24px rgba(255,215,0,.42);
        }
        .menu-toggle{
            display:flex;
            align-items:center;
            justify-content:center;
            width:42px;height:42px;
            border-radius:10px;
            border:1px solid var(--border-gold);
            background:rgba(255,215,0,.06);
            color:var(--gold);
            font-size:1.2rem;
            cursor:pointer;
            transition:var(--transition);
            flex-shrink:0;
        }
        .menu-toggle:hover{
            background:rgba(255,215,0,.16);
        }
        @media(min-width:1024px){
            .nav-links{display:flex}
            .menu-toggle{display:none}
            .nav-logo{font-size:1.08rem;max-width:340px}
        }
        .mobile-drawer{
            position:fixed;
            top:68px;right:0;
            width:min(82vw,360px);
            background:var(--forest);
            border-left:1px solid var(--border-gold);
            padding:28px 22px;
            z-index:75;
            transform:translateX(100%);
            transition:transform .35s cubic-bezier(.4,0,.2,1);
            box-shadow:-12px 0 40px rgba(0,0,0,.4);
            border-radius:0 0 0 var(--radius-lg);
        }
        .mobile-drawer.open{transform:translateX(0)}
        .mobile-drawer a{
            display:block;
            padding:13px 16px;
            font-size:.95rem;
            font-weight:500;
            color:var(--pale-mint);
            border-radius:10px;
            margin-bottom:6px;
            transition:var(--transition);
        }
        .mobile-drawer a:hover,
        .mobile-drawer a.active{
            color:var(--gold);
            background:rgba(255,215,0,.08);
        }

        /* ===== HERO ===== */
        .page-hero{
            position:relative;
            padding-top:148px;
            padding-bottom:80px;
            background-image:linear-gradient(135deg,rgba(10,46,28,.96),rgba(18,62,37,.88) 55%,rgba(10,46,28,.97)),url('/assets/images/backpic/back-1.jpg');
            background-size:cover;
            background-position:center;
            border-bottom:1px solid var(--border-gold);
            overflow:hidden;
        }
        .page-hero::before{
            content:"";
            position:absolute;
            inset:0;
            background:radial-gradient(ellipse at 30% 40%,rgba(255,215,0,.14),transparent 55%);
            pointer-events:none;
        }
        .hero-badge{
            display:inline-flex;
            align-items:center;
            gap:8px;
            padding:7px 16px;
            font-size:.8rem;
            font-weight:700;
            color:var(--gold);
            background:rgba(255,215,0,.1);
            border:1px solid var(--border-gold);
            border-radius:999px;
            letter-spacing:.02em;
        }
        .hero-badge i{font-size:.9rem}
        .hero-title{
            font-size:2.2rem;
            font-weight:800;
            letter-spacing:-.03em;
            line-height:1.15;
            color:var(--white);
            max-width:780px;
            margin-block:20px 16px;
        }
        .hero-title .gold{
            color:var(--gold);
        }
        .hero-desc{
            font-size:1.05rem;
            color:var(--pale-mint);
            max-width:680px;
            line-height:1.65;
            margin-bottom:28px;
        }
        .hero-cta{
            display:flex;
            flex-wrap:wrap;
            gap:14px;
            align-items:center;
        }
        .btn-gold{
            display:inline-flex;
            align-items:center;
            gap:10px;
            padding:14px 28px;
            font-size:.95rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:999px;
            transition:var(--transition);
            box-shadow:0 6px 22px rgba(255,215,0,.35);
            white-space:nowrap;
        }
        .btn-gold:hover{
            background:#FFE44D;
            transform:translateY(-2px);
            box-shadow:0 12px 32px rgba(255,215,0,.5);
        }
        .btn-ghost{
            display:inline-flex;
            align-items:center;
            gap:10px;
            padding:14px 26px;
            font-size:.95rem;
            font-weight:600;
            color:var(--pale-mint);
            border:1px solid var(--border-mint);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
        }
        .btn-ghost:hover{
            color:var(--gold);
            border-color:var(--gold);
            background:rgba(255,215,0,.08);
        }
        .hero-stats{
            display:flex;
            flex-wrap:wrap;
            gap:28px;
            margin-top:36px;
        }
        .hero-stat{
            display:flex;
            flex-direction:column;
            gap:2px;
        }
        .hero-stat-num{
            font-size:1.5rem;
            font-weight:800;
            color:var(--gold);
        }
        .hero-stat-label{
            font-size:.85rem;
            color:var(--muted-mint);
        }

        /* ===== SECTION COMMON ===== */
        .section-label{
            display:inline-flex;
            align-items:center;
            gap:8px;
            font-size:.78rem;
            font-weight:700;
            color:var(--gold);
            letter-spacing:.08em;
            text-transform:uppercase;
            margin-bottom:12px;
        }
        .section-label::before{
            content:"";
            width:24px;
            height:2px;
            background:var(--gold);
            border-radius:1px;
        }
        .section-title{
            font-size:1.65rem;
            font-weight:800;
            letter-spacing:-.02em;
            line-height:1.25;
            color:var(--white);
            margin-bottom:16px;
        }
        .section-sub{
            font-size:1rem;
            color:var(--muted-mint);
            line-height:1.65;
            max-width:700px;
            margin-bottom:36px;
        }

        /* ===== GLASS GRID ===== */
        .glass-card{
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-md);
            padding:28px 24px;
            transition:var(--transition);
            backdrop-filter:blur(10px);
            -webkit-backdrop-filter:blur(10px);
            box-shadow:var(--shadow-card);
        }
        .glass-card:hover{
            background:var(--surface-glass-hover);
            border-color:var(--border-gold);
            box-shadow:var(--shadow-gold);
            transform:translateY(-4px);
        }
        .card-icon{
            width:52px;height:52px;
            display:flex;
            align-items:center;
            justify-content:center;
            border-radius:14px;
            background:rgba(255,215,0,.12);
            border:1px solid var(--border-gold);
            color:var(--gold);
            font-size:1.3rem;
            margin-bottom:18px;
            transition:var(--transition);
        }
        .glass-card:hover .card-icon{
            background:rgba(255,215,0,.2);
            transform:scale(1.05);
        }
        .card-title{
            font-size:1.05rem;
            font-weight:700;
            color:var(--white);
            margin-bottom:8px;
        }
        .card-desc{
            font-size:.92rem;
            color:var(--muted-mint);
            line-height:1.6;
        }

        /* ===== TIP LIST ===== */
        .tip-list{
            display:grid;
            gap:12px;
        }
        .tip-item{
            display:flex;
            gap:14px;
            align-items:flex-start;
            padding:16px 18px;
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-sm);
            transition:var(--transition);
        }
        .tip-item:hover{
            background:var(--surface-glass-hover);
            border-color:var(--border-gold);
        }
        .tip-num{
            flex-shrink:0;
            width:32px;height:32px;
            display:flex;
            align-items:center;
            justify-content:center;
            font-size:.85rem;
            font-weight:800;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:50%;
        }
        .tip-content h4{
            font-size:.95rem;
            font-weight:700;
            color:var(--white);
            margin-bottom:4px;
        }
        .tip-content p{
            font-size:.88rem;
            color:var(--muted-mint);
            line-height:1.6;
        }

        /* ===== STATS BLOCK ===== */
        .stats-band{
            display:grid;
            grid-template-columns:repeat(2,1fr);
            gap:16px;
        }
        @media(min-width:768px){
            .stats-band{grid-template-columns:repeat(4,1fr)}
        }
        .stat-block{
            padding:24px 18px;
            text-align:center;
            background:var(--surface-glass);
            border:1px solid var(--border-gold);
            border-radius:var(--radius-md);
            transition:var(--transition);
        }
        .stat-block:hover{
            background:var(--surface-glass-hover);
            box-shadow:var(--shadow-gold);
        }
        .stat-block .num{
            font-size:1.8rem;
            font-weight:800;
            color:var(--gold);
            line-height:1.2;
        }
        .stat-block .label{
            font-size:.82rem;
            color:var(--muted-mint);
            margin-top:4px;
        }

        /* ===== FAQ ===== */
        .faq-list{
            display:grid;
            gap:12px;
            max-width:850px;
        }
        .faq-item{
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-sm);
            overflow:hidden;
            transition:var(--transition);
        }
        .faq-item:hover{
            border-color:var(--border-gold);
        }
        .faq-question{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:14px;
            padding:18px 20px;
            cursor:pointer;
            font-weight:700;
            color:var(--white);
            font-size:.95rem;
            user-select:none;
        }
        .faq-question i{
            color:var(--gold);
            font-size:1rem;
            transition:var(--transition);
            flex-shrink:0;
        }
        .faq-item.active .faq-question i{
            transform:rotate(180deg);
        }
        .faq-answer{
            max-height:0;
            overflow:hidden;
            transition:max-height .4s ease,padding .3s ease;
            padding-inline:20px;
        }
        .faq-item.active .faq-answer{
            max-height:280px;
            padding-bottom:18px;
        }
        .faq-answer p{
            font-size:.9rem;
            color:var(--muted-mint);
            line-height:1.65;
        }

        /* ===== CTA PANEL ===== */
        .cta-panel{
            position:relative;
            background:linear-gradient(135deg,rgba(18,62,37,.98),rgba(10,46,28,.94)),url('/assets/images/backpic/back-2.jpg');
            background-size:cover;
            background-position:center;
            border:1px solid var(--border-gold);
            border-radius:var(--radius-lg);
            padding:44px 32px;
            text-align:center;
            overflow:hidden;
            box-shadow:var(--shadow-card);
        }
        .cta-panel::before{
            content:"";
            position:absolute;
            inset:0;
            background:radial-gradient(ellipse at 50% 30%,rgba(255,215,0,.16),transparent 60%);
            pointer-events:none;
        }
        .cta-panel h3{
            font-size:1.5rem;
            font-weight:800;
            color:var(--white);
            margin-bottom:12px;
            position:relative;
        }
        .cta-panel p{
            font-size:.98rem;
            color:var(--pale-mint);
            max-width:560px;
            margin-inline:auto;
            margin-bottom:24px;
            position:relative;
        }

        /* ===== FOOTER ===== */
        .site-footer{
            background:rgba(10,30,18,.98);
            border-top:1px solid var(--border-gold);
            padding-block:52px 26px;
            margin-top:0;
        }
        .footer-grid{
            display:grid;
            grid-template-columns:1fr;
            gap:30px;
            margin-bottom:32px;
        }
        @media(min-width:768px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}
        .footer-brand .logo{
            font-size:1rem;
            font-weight:800;
            color:var(--gold);
            line-height:1.35;
            margin-bottom:12px;
        }
        .footer-brand p{
            font-size:.88rem;
            color:var(--muted-mint);
            line-height:1.65;
            max-width:420px;
        }
        .footer-col h5{
            font-size:.85rem;
            font-weight:700;
            color:var(--white);
            letter-spacing:.06em;
            text-transform:uppercase;
            margin-bottom:14px;
        }
        .footer-col ul{list-style:none;padding:0;margin:0}
        .footer-col li{margin-bottom:8px}
        .footer-col a{
            font-size:.88rem;
            color:var(--muted-mint);
            transition:var(--transition);
        }
        .footer-col a:hover{color:var(--gold)}
        .footer-bottom{
            display:flex;
            flex-wrap:wrap;
            gap:12px;
            align-items:center;
            justify-content:space-between;
            padding-top:20px;
            border-top:1px solid var(--border-mint);
            font-size:.82rem;
            color:var(--muted-mint);
        }

        /* ===== FAB ===== */
        .fab-custom{
            position:fixed;
            left:16px;
            bottom:96px;
            z-index:50;
            width:58px;
            height:58px;
            border-radius:50%;
            background:linear-gradient(145deg,#1C1C1E,#0A2E1C);
            border:2px solid var(--gold);
            box-shadow:0 4px 20px rgba(255,215,0,.3);
            color:var(--gold);
            display:flex;
            align-items:center;
            justify-content:center;
            font-size:1.4rem;
            cursor:pointer;
            transition:var(--transition);
            opacity:.7;
            animation:fabFloat 4s ease-in-out infinite;
        }
        .fab-custom:hover{
            opacity:1;
            transform:scale(1.1);
            box-shadow:0 8px 32px rgba(255,215,0,.5);
        }
        .fab-custom:active{
            transform:scale(.95) translateY(2px);
        }
        .fab-custom .fab-dot{
            position:absolute;
            top:3px;
            right:3px;
            width:12px;
            height:12px;
            border-radius:50%;
            background:var(--lucky-red);
            border:2px solid var(--white);
            animation:dotBlink 1.6s ease-in-out infinite;
        }
        @keyframes fabFloat{
            0%,100%{transform:translateY(0)}
            50%{transform:translateY(-6px)}
        }
        @keyframes dotBlink{
            0%,100%{opacity:1;box-shadow:0 0 8px rgba(211,47,47,.8)}
            50%{opacity:.4;box-shadow:0 0 2px rgba(211,47,47,.3)}
        }
        @keyframes iconSpin{
            0%{transform:rotate(0)}
            100%{transform:rotate(360deg)}
        }
        .fab-custom:hover i{animation:iconSpin .6s ease-in-out}

        /* ===== RESPONSIVE ===== */
        @media(max-width:640px){
            .hero-title{font-size:1.7rem}
            .hero-desc{font-size:.95rem}
            .hero-stats{gap:18px}
            .section-title{font-size:1.35rem}
            .cta-panel{padding:32px 20px}
            .cta-panel h3{font-size:1.25rem}
        }

/* roulang page: category3 */
:root{
            --jade-deep:#0A2E1C;
            --forest:#123E25;
            --gold:#FFD700;
            --lucky-red:#D32F2F;
            --pale-mint:#D1F2EB;
            --white:#FFFFFF;
            --soft-gold:#F0E68C;
            --dark-charcoal:#1C1C1E;
            --muted-mint:#9BBFB4;
            --surface-glass:rgba(255,255,255,.06);
            --surface-glass-hover:rgba(255,255,255,.1);
            --border-gold:rgba(255,215,0,.35);
            --border-mint:rgba(209,242,235,.18);
            --radius-sm:10px;
            --radius-md:16px;
            --radius-lg:24px;
            --radius-xl:32px;
            --shadow-card:0 12px 32px rgba(0,0,0,.35);
            --shadow-gold:0 0 28px rgba(255,215,0,.18);
            --shadow-neon:0 0 24px rgba(0,240,255,.12);
            --transition:all .3s cubic-bezier(.4,0,.2,1);
            --font-sans:'Inter','Segoe UI','Roboto',system-ui,sans-serif;
        }
        html{scroll-behavior:smooth}
        body{
            font-family:var(--font-sans);
            background:var(--jade-deep);
            color:var(--white);
            line-height:1.6;
            min-height:100vh;
            -webkit-font-smoothing:antialiased;
            -moz-osx-font-smoothing:grayscale;
            overflow-x:hidden;
        }
        a{text-decoration:none;color:inherit;transition:var(--transition)}
        a:focus-visible,button:focus-visible,input:focus-visible{
            outline:3px solid var(--gold);
            outline-offset:2px;
            border-radius:6px;
        }
        img{max-width:100%;height:auto;display:block}
        .container{
            width:100%;
            max-width:1200px;
            margin-inline:auto;
            padding-inline:20px;
        }
        .section-pad{padding-block:96px 80px}

        /* ===== HEADER / NAV ===== */
        .site-header{
            position:fixed;
            top:0;left:0;right:0;
            z-index:80;
            background:rgba(10,46,28,.82);
            backdrop-filter:blur(18px);
            -webkit-backdrop-filter:blur(18px);
            border-bottom:1px solid var(--border-gold);
            transition:var(--transition);
        }
        .site-header.scrolled{
            background:rgba(10,46,28,.96);
            box-shadow:0 8px 32px rgba(0,0,0,.4);
        }
        .nav-wrap{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:16px;
            height:68px;
        }
        .nav-logo{
            font-size:1.02rem;
            font-weight:800;
            letter-spacing:-.02em;
            color:var(--gold);
            line-height:1.25;
            max-width:280px;
            white-space:nowrap;
            overflow:hidden;
            text-overflow:ellipsis;
            display:flex;
            align-items:center;
            gap:8px;
            flex-shrink:0;
        }
        .nav-logo i{
            color:var(--gold);
            font-size:1.35rem;
            flex-shrink:0;
        }
        .nav-links{
            display:none;
            align-items:center;
            gap:22px;
            flex:1;
            justify-content:center;
        }
        .nav-links a{
            font-size:.9rem;
            font-weight:500;
            color:var(--pale-mint);
            padding-block:6px;
            border-bottom:2px solid transparent;
            transition:var(--transition);
            white-space:nowrap;
        }
        .nav-links a:hover,
        .nav-links a.active{
            color:var(--gold);
            border-bottom-color:var(--gold);
        }
        .nav-auth{
            display:flex;
            align-items:center;
            gap:10px;
            flex-shrink:0;
        }
        .btn-login{
            padding:8px 14px;
            font-size:.85rem;
            font-weight:600;
            color:var(--pale-mint);
            border:1px solid var(--border-mint);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
        }
        .btn-login:hover{
            color:var(--gold);
            border-color:var(--gold);
            background:rgba(255,215,0,.08);
        }
        .btn-signup{
            padding:8px 18px;
            font-size:.85rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:999px;
            transition:var(--transition);
            white-space:nowrap;
            box-shadow:0 4px 16px rgba(255,215,0,.3);
        }
        .btn-signup:hover{
            background:#FFE44D;
            transform:translateY(-1px);
            box-shadow:0 8px 24px rgba(255,215,0,.42);
        }
        .menu-toggle{
            display:flex;
            align-items:center;
            justify-content:center;
            width:42px;height:42px;
            border-radius:10px;
            border:1px solid var(--border-gold);
            background:rgba(255,215,0,.06);
            color:var(--gold);
            font-size:1.2rem;
            cursor:pointer;
            transition:var(--transition);
            flex-shrink:0;
        }
        .menu-toggle:hover{
            background:rgba(255,215,0,.16);
        }

        /* Mobile drawer */
        .mobile-drawer{
            position:fixed;
            top:68px;right:0;
            width:min(82vw,360px);
            background:var(--forest);
            border-left:1px solid var(--border-gold);
            padding:28px 22px;
            z-index:75;
            transform:translateX(100%);
            transition:transform .35s cubic-bezier(.4,0,.2,1);
            box-shadow:-12px 0 40px rgba(0,0,0,.4);
            border-radius:0 0 0 var(--radius-lg);
        }
        .mobile-drawer.open{transform:translateX(0)}
        .mobile-drawer a{
            display:block;
            padding:13px 16px;
            font-size:.95rem;
            font-weight:500;
            color:var(--pale-mint);
            border-radius:10px;
            margin-bottom:6px;
            transition:var(--transition);
        }
        .mobile-drawer a:hover,
        .mobile-drawer a.active{
            background:rgba(255,215,0,.1);
            color:var(--gold);
        }

        /* ===== HERO ===== */
        .hero-promo{
            min-height:92vh;
            display:flex;
            align-items:center;
            position:relative;
            padding-top:100px;
            padding-bottom:60px;
            background:
                radial-gradient(ellipse at 80% 20%, rgba(255,215,0,.12) 0%, transparent 55%),
                radial-gradient(ellipse at 10% 90%, rgba(18,62,37,.9) 0%, transparent 60%),
                linear-gradient(180deg, #0A2E1C 0%, #0B3622 50%, #0A2E1C 100%);
            overflow:hidden;
        }
        .hero-promo::before{
            content:'';
            position:absolute;
            inset:0;
            background-image:
                radial-gradient(circle at 25% 30%, rgba(255,215,0,.04) 0%, transparent 40%),
                radial-gradient(circle at 75% 70%, rgba(209,242,235,.03) 0%, transparent 45%),
                radial-gradient(circle at 50% 50%, rgba(255,255,255,.015) 0%, transparent 60%);
            pointer-events:none;
        }
        .hero-promo::after{
            content:'';
            position:absolute;
            inset:auto 0 0 0;
            height:180px;
            background:linear-gradient(180deg, transparent 0%, rgba(10,46,28,.7) 100%);
            pointer-events:none;
        }
        .hero-grid-promo{
            display:grid;
            grid-template-columns:1fr;
            gap:40px;
            align-items:center;
            position:relative;
            z-index:5;
        }
        .hero-badge{
            display:inline-flex;
            align-items:center;
            gap:8px;
            padding:8px 16px;
            border-radius:999px;
            background:rgba(211,47,47,.15);
            border:1px solid rgba(211,47,47,.4);
            color:#FF9E8A;
            font-size:.8rem;
            font-weight:700;
            letter-spacing:.03em;
            text-transform:uppercase;
            margin-bottom:18px;
        }
        .hero-badge .dot-pulse{
            width:8px;height:8px;
            border-radius:50%;
            background:#FF5252;
            animation:pulse-dot 1.6s ease-in-out infinite;
        }
        @keyframes pulse-dot{
            0%,100%{opacity:1;transform:scale(1)}
            50%{opacity:.5;transform:scale(1.4)}
        }
        .hero-title-promo{
            font-size:2.2rem;
            font-weight:800;
            letter-spacing:-.03em;
            line-height:1.15;
            margin-bottom:20px;
            color:var(--white);
        }
        .hero-title-promo .text-gold{
            color:var(--gold);
        }
        .hero-desc{
            font-size:1.05rem;
            color:var(--pale-mint);
            line-height:1.7;
            max-width:560px;
            margin-bottom:30px;
            opacity:.9;
        }
        .hero-cta-group{
            display:flex;
            flex-wrap:wrap;
            gap:14px;
            margin-bottom:32px;
        }
        .btn-primary-gold{
            padding:14px 28px;
            font-size:.95rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            border-radius:999px;
            transition:var(--transition);
            box-shadow:0 6px 24px rgba(255,215,0,.35);
            display:inline-flex;
            align-items:center;
            gap:8px;
            cursor:pointer;
            border:none;
        }
        .btn-primary-gold:hover{
            background:#FFE44D;
            transform:translateY(-2px);
            box-shadow:0 12px 36px rgba(255,215,0,.5);
        }
        .btn-outline-mint{
            padding:14px 28px;
            font-size:.95rem;
            font-weight:600;
            color:var(--pale-mint);
            background:transparent;
            border:1px solid var(--border-mint);
            border-radius:999px;
            transition:var(--transition);
            display:inline-flex;
            align-items:center;
            gap:8px;
            cursor:pointer;
        }
        .btn-outline-mint:hover{
            border-color:var(--gold);
            color:var(--gold);
            background:rgba(255,215,0,.06);
        }
        .hero-stats-row{
            display:flex;
            flex-wrap:wrap;
            gap:20px 32px;
            padding-top:20px;
            border-top:1px solid var(--border-mint);
        }
        .hero-stat-item .stat-num{
            font-size:1.4rem;
            font-weight:800;
            color:var(--gold);
            letter-spacing:-.02em;
        }
        .hero-stat-item .stat-label{
            font-size:.78rem;
            color:var(--muted-mint);
            font-weight:500;
        }
        .hero-visual{
            position:relative;
            border-radius:var(--radius-lg);
            overflow:hidden;
            border:1px solid var(--border-gold);
            box-shadow:var(--shadow-card), var(--shadow-gold);
            aspect-ratio:3/4;
            max-width:420px;
            margin-inline:auto;
            background:var(--surface-glass);
            backdrop-filter:blur(12px);
            -webkit-backdrop-filter:blur(12px);
        }
        .hero-visual img{
            width:100%;
            height:100%;
            object-fit:cover;
        }
        .hero-visual .overlay-tag{
            position:absolute;
            bottom:16px;
            left:16px;
            right:16px;
            background:rgba(10,46,28,.85);
            backdrop-filter:blur(10px);
            border-radius:var(--radius-sm);
            padding:12px 16px;
            border:1px solid var(--border-gold);
        }
        .hero-visual .overlay-tag span{
            display:block;
            font-size:.75rem;
            color:var(--gold);
            font-weight:700;
            letter-spacing:.05em;
            text-transform:uppercase;
            margin-bottom:4px;
        }
        .hero-visual .overlay-tag p{
            font-size:.85rem;
            color:var(--pale-mint);
            margin:0;
            font-weight:500;
        }

        /* ===== PROMO CARDS SECTION ===== */
        .promo-grid{
            display:grid;
            grid-template-columns:1fr;
            gap:20px;
            margin-top:40px;
        }
        .promo-card{
            background:var(--surface-glass);
            border:1px solid var(--border-gold);
            border-radius:var(--radius-md);
            padding:24px;
            backdrop-filter:blur(10px);
            -webkit-backdrop-filter:blur(10px);
            transition:var(--transition);
            position:relative;
            overflow:hidden;
        }
        .promo-card::before{
            content:'';
            position:absolute;
            top:0;left:0;right:0;
            height:3px;
            background:linear-gradient(90deg, var(--gold), var(--soft-gold), var(--gold));
            opacity:.6;
        }
        .promo-card:hover{
            transform:translateY(-4px);
            background:var(--surface-glass-hover);
            box-shadow:var(--shadow-card), var(--shadow-gold);
        }
        .promo-card .tag-hot{
            position:absolute;
            top:16px;
            right:16px;
            padding:4px 10px;
            border-radius:999px;
            font-size:.7rem;
            font-weight:700;
            letter-spacing:.03em;
            background:var(--lucky-red);
            color:var(--white);
            text-transform:uppercase;
        }
        .promo-card .tag-new{
            position:absolute;
            top:16px;
            right:16px;
            padding:4px 10px;
            border-radius:999px;
            font-size:.7rem;
            font-weight:700;
            letter-spacing:.03em;
            background:#0088CC;
            color:var(--white);
            text-transform:uppercase;
        }
        .promo-card .promo-icon{
            width:52px;height:52px;
            border-radius:var(--radius-sm);
            background:rgba(255,215,0,.12);
            border:1px solid var(--border-gold);
            display:flex;
            align-items:center;
            justify-content:center;
            font-size:1.5rem;
            color:var(--gold);
            margin-bottom:16px;
        }
        .promo-card h3{
            font-size:1.15rem;
            font-weight:700;
            color:var(--white);
            margin-bottom:8px;
            letter-spacing:-.01em;
        }
        .promo-card p{
            font-size:.9rem;
            color:var(--pale-mint);
            line-height:1.6;
            opacity:.85;
            margin:0;
        }
        .promo-card .promo-value{
            display:inline-block;
            margin-top:12px;
            padding:6px 14px;
            border-radius:999px;
            font-size:.8rem;
            font-weight:700;
            color:var(--jade-deep);
            background:var(--gold);
            box-shadow:0 2px 10px rgba(255,215,0,.3);
        }

        /* ===== STEPS / TIMELINE ===== */
        .steps-list{
            display:grid;
            grid-template-columns:1fr;
            gap:16px;
            margin-top:36px;
        }
        .step-item{
            display:flex;
            gap:16px;
            align-items:flex-start;
            padding:20px;
            border-radius:var(--radius-md);
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            transition:var(--transition);
        }
        .step-item:hover{
            border-color:var(--border-gold);
            background:var(--surface-glass-hover);
        }
        .step-number{
            flex-shrink:0;
            width:44px;height:44px;
            border-radius:50%;
            background:linear-gradient(135deg, var(--gold), var(--soft-gold));
            color:var(--jade-deep);
            font-weight:800;
            font-size:1.1rem;
            display:flex;
            align-items:center;
            justify-content:center;
            box-shadow:0 4px 14px rgba(255,215,0,.3);
        }
        .step-content h4{
            font-size:.95rem;
            font-weight:700;
            color:var(--white);
            margin:0 0 4px;
        }
        .step-content p{
            font-size:.85rem;
            color:var(--muted-mint);
            margin:0;
            line-height:1.6;
        }

        /* ===== IMAGE STRIP ===== */
        .image-strip{
            display:grid;
            grid-template-columns:1fr;
            gap:16px;
            margin-top:32px;
        }
        .image-strip .strip-item{
            border-radius:var(--radius-md);
            overflow:hidden;
            border:1px solid var(--border-mint);
            transition:var(--transition);
            position:relative;
        }
        .image-strip .strip-item:hover{
            border-color:var(--border-gold);
            box-shadow:var(--shadow-card);
        }
        .image-strip .strip-item img{
            width:100%;
            height:200px;
            object-fit:cover;
        }

        /* ===== FAQ ===== */
        .faq-list{
            display:grid;
            gap:12px;
            margin-top:32px;
        }
        .faq-item{
            background:var(--surface-glass);
            border:1px solid var(--border-mint);
            border-radius:var(--radius-md);
            overflow:hidden;
            transition:var(--transition);
        }
        .faq-item:hover{
            border-color:var(--border-gold);
        }
        .faq-question{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:16px;
            padding:18px 20px;
            cursor:pointer;
            font-weight:600;
            font-size:.92rem;
            color:var(--white);
            transition:var(--transition);
            background:transparent;
            border:none;
            width:100%;
            text-align:left;
            color:var(--white);
            font-family:var(--font-sans);
        }
        .faq-question:hover{
            color:var(--gold);
        }
        .faq-question .fa-icon{
            flex-shrink:0;
            width:32px;height:32px;
            border-radius:50%;
            background:rgba(255,215,0,.1);
            border:1px solid var(--border-gold);
            display:flex;
            align-items:center;
            justify-content:center;
            font-size:.8rem;
            color:var(--gold);
            transition:var(--transition);
        }
        .faq-answer{
            max-height:0;
            overflow:hidden;
            transition:max-height .4s cubic-bezier(.4,0,.2,1), padding .3s;
            padding:0 20px;
        }
        .faq-item.open .faq-answer{
            max-height:300px;
            padding:0 20px 18px;
        }
        .faq-item.open .faq-question .fa-icon{
            transform:rotate(45deg);
            background:rgba(255,215,0,.2);
        }
        .faq-answer p{
            font-size:.88rem;
            color:var(--pale-mint);
            line-height:1.7;
            margin:0;
            opacity:.85;
        }

        /* ===== CTA SECTION ===== */
        .cta-section{
            background:linear-gradient(135deg, #123E25 0%, #0A2E1C 60%, #0B3622 100%);
            border-top:1px solid var(--border-gold);
            border-bottom:1px solid var(--border-gold);
            position:relative;
            overflow:hidden;
        }
        .cta-section::before{
            content:'';
            position:absolute;
            inset:0;
            background:
                radial-gradient(circle at 30% 50%, rgba(255,215,0,.08) 0%, transparent 50%),
                radial-gradient(circle at 70% 50%, rgba(209,242,235,.05) 0%, transparent 50%);
            pointer-events:none;
        }
        .cta-content{
            text-align:center;
            position:relative;
            z-index:5;
            max-width:720px;
            margin-inline:auto;
        }
        .cta-content h2{
            font-size:1.8rem;
            font-weight:800;
            letter-spacing:-.02em;
            color:var(--white);
            margin-bottom:14px;
        }
        .cta-content p{
            font-size:1rem;
            color:var(--pale-mint);
            margin-bottom:26px;
            opacity:.9;
            line-height:1.7;
        }

        /* ===== FOOTER ===== */
        .site-footer{
            background:#081C12;
            border-top:1px solid var(--border-gold);
            padding-block:48px 32px;
            position:relative;
        }
        .footer-grid{
            display:grid;
            grid-template-columns:1fr;
            gap:32px;
            margin-bottom:32px;
        }
        .footer-brand .logo{
            font-size:1rem;
            font-weight:800;
            color:var(--gold);
            margin-bottom:12px;
            line-height:1.4;
        }
        .footer-brand p{
            font-size:.85rem;
            color:var(--muted-mint);
            line-height:1.7;
            margin:0;
        }
        .footer-col h5{
            font-size:.85rem;
            font-weight:700;
            color:var(--gold);
            margin:0 0 14px;
            text-transform:uppercase;
            letter-spacing:.03em;
        }
        .footer-col ul{
            list-style:none;
            padding:0;
            margin:0;
        }
        .footer-col ul li{
            margin-bottom:8px;
        }
        .footer-col ul li a{
            font-size:.85rem;
            color:var(--pale-mint);
            transition:var(--transition);
            opacity:.8;
        }
        .footer-col ul li a:hover{
            color:var(--gold);
            opacity:1;
        }
        .footer-bottom{
            padding-top:20px;
            border-top:1px solid var(--border-mint);
            display:flex;
            flex-wrap:wrap;
            gap:12px;
            justify-content:space-between;
            align-items:center;
        }
        .footer-bottom span{
            font-size:.78rem;
            color:var(--muted-mint);
        }
        .footer-bottom a{
            color:var(--gold);
        }

        /* ===== FAB ===== */
        .fab-left{
            position:fixed;
            left:16px;
            bottom:96px;
            z-index:50;
            width:56px;height:56px;
            border-radius:50%;
            background:linear-gradient(135deg, #1C1C1E, #0A0A0A);
            border:2px solid var(--gold);
            display:flex;
            align-items:center;
            justify-content:center;
            font-size:1.3rem;
            color:var(--gold);
            cursor:pointer;
            transition:var(--transition);
            box-shadow:0 4px 20px rgba(255,215,0,.3);
            animation:fab-breathe 3s ease-in-out infinite;
        }
        .fab-left:hover{
            transform:scale(1.1);
            box-shadow:0 8px 32px rgba(255,215,0,.5);
            animation-play-state:paused;
        }
        .fab-left:active{
            transform:scale(.95) translateY(2px);
        }
        @keyframes fab-breathe{
            0%,100%{opacity:.7;transform:translateY(0)}
            50%{opacity:1;transform:translateY(-4px)}
        }
        .fab-left .fab-dot{
            position:absolute;
            top:6px;
            right:6px;
            width:10px;height:10px;
            border-radius:50%;
            background:var(--lucky-red);
            animation:fab-dot-blink 1.8s ease-in-out infinite;
        }
        @keyframes fab-dot-blink{
            0%,100%{opacity:1}
            50%{opacity:.3}
        }

        /* ===== SECTION HEADERS ===== */
        .section-header{
            margin-bottom:32px;
        }
        .section-header .eyebrow{
            display:inline-block;
            font-size:.75rem;
            font-weight:700;
            letter-spacing:.06em;
            text-transform:uppercase;
            color:var(--gold);
            margin-bottom:8px;
        }
        .section-header h2{
            font-size:1.6rem;
            font-weight:800;
            letter-spacing:-.02em;
            color:var(--white);
            margin:0 0 10px;
            line-height:1.2;
        }
        .section-header p{
            font-size:.95rem;
            color:var(--muted-mint);
            margin:0;
            line-height:1.7;
            max-width:640px;
        }

        /* ===== RESPONSIVE ===== */
        @media (min-width: 640px){
            .hero-title-promo{font-size:2.8rem}
            .promo-grid{grid-template-columns:repeat(2,1fr)}
            .steps-list{grid-template-columns:repeat(2,1fr)}
            .image-strip{grid-template-columns:repeat(3,1fr)}
            .footer-grid{grid-template-columns:1.5fr 1fr 1fr}
        }
        @media (min-width: 768px){
            .nav-links{display:flex}
            .menu-toggle{display:none}
            .nav-logo{font-size:1.08rem;max-width:340px}
            .hero-grid-promo{grid-template-columns:1fr 1fr;gap:48px}
            .hero-title-promo{font-size:3rem}
            .section-header h2{font-size:2rem}
            .cta-content h2{font-size:2.2rem}
        }
        @media (min-width: 1024px){
            .hero-title-promo{font-size:3.3rem}
            .promo-grid{grid-template-columns:repeat(3,1fr)}
            .container{padding-inline:32px}
        }
        @media (max-width: 767px){
            .section-pad{padding-block:64px 48px}
            .hero-promo{min-height:auto;padding-top:88px}
            .hero-visual{max-width:320px}
            .nav-logo{font-size:.9rem;max-width:180px}
        }
        @media (max-width: 520px){
            .hero-title-promo{font-size:1.8rem}
            .btn-primary-gold,.btn-outline-mint{padding:12px 20px;font-size:.85rem;display:flex;justify-content:center;width:100%}
            .hero-cta-group{width:100%}
            .hero-stats-row{gap:16px}
            .promo-card{padding:18px}
            .section-header h2{font-size:1.4rem}
            .cta-content h2{font-size:1.5rem}
        }
