body {
        font-family: 'Kanit', sans-serif;
        margin: 0;
        padding: 0;
        background-color: #f4f7f6;
    }

        .main-container {
            width: 100%;
            min-height: 100vh;
            background: url('../img/bg_desktop.png') no-repeat center bottom;
            background-size: cover;
            background-attachment: fixed;
            display: flex;
            flex-direction: column;
            overflow-x: hidden;
        }

        .mobile-wrapper {
            width: 100%;
            min-height: 100vh;
            margin: 0;
            overflow-x: hidden;
            position: relative;
            display: flex;
            flex-direction: column;
            /* นำ background เดิมออกจากที่นี่ */
            background: none; 
        }

        /* สร้าง Layer พื้นหลังใหม่ที่ตรึงอยู่กับที่ */
        .mobile-wrapper::before {
            content: "";
            position: fixed; /* ตรึง Layer นี้ไว้กับหน้าจอ */
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            /* ใส่พื้นหลังที่นี่แทน */
            background: url('../img/bg_desktop.png') no-repeat center bottom;
            background-size: cover;
            z-index: -1; /* ส่งไปไว้ด้านหลังสุด */
            will-change: transform; /* ช่วยเรื่องความลื่นไหลบนมือถือ */
        }
        
        /* --- Sticky Header --- */
        .sticky-header {
            position: -webkit-sticky;
            position: sticky;
            top: 0;
            width: 100%;
            background: rgba(255, 255, 255, 0.95);
            backdrop-filter: blur(5px);
            padding: 10px 15px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            z-index: 1050;
            /* ให้สูงกว่า content อื่นๆ */
            box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
        }

        /* ปรับแต่ง Offcanvas (Sidebar Menu) */
        .offcanvas {
            max-width: 300px;
            background: url('../img/paseo-campaign_11.png') no-repeat center center !important;
            background-size: cover !important;
            color: white;
            border: none !important;
            z-index: 1100;
        }

        .offcanvas-body {
            padding: 0 !important;
            display: flex;
            flex-direction: column;
            align-items: center;
            text-align: center;
        }

        .offcanvas-body hr {
            border-top: 1px solid rgba(255, 255, 255, 0.3);
            width: 100%;
            margin: 10px 0;
        }

        .offcanvas-header .btn-close {
            filter: invert(1) grayscale(100%) brightness(200%);
            /* เปลี่ยนปุ่มปิดเป็นสีขาว */
        }

        .nav-menu-list {
            list-style: none;
            padding: 0;
            margin: 0;
            width: 100%;
        }

        .nav-menu-item {
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
            /* เส้นขาวบางๆ 10% */
        }

        .nav-menu-item:last-child {
            border-bottom: none;
            /* เมนูสุดท้ายไม่ต้องมีเส้น */
        }

        .nav-menu-link {
            color: #ffffff !important;
            font-weight: 400;
            font-size: 1.1rem;
            text-decoration: none;
            display: flex;
            width: 100%;
            transition: all 0.3s ease;
            display: inline-block;
        }

        .nav-menu-link { padding: 15px 25px;}

        /* เพิ่มส่วน Hover effect */
        .nav-menu-link:hover {
            color: #FF8C00;
            transform: scale(1.15);
            text-shadow: 0px 0px 10px rgba(255, 140, 0, 0.8);
            background: rgba(255, 255, 255, 0.1);
        }
        /* ปุ่มปิด */
        .offcanvas-header {
            justify-content: flex-end;
            padding: 10px;
        }

        /* ปุ่ม Hamburger */
        .menu-toggle-btn {
            border: none;
            background: none;
            padding: 5px;
        }

        .bar {
            width: 25px;
            height: 3px;
            background-color: #1B0B83;
            margin: 5px 0;
            display: block;
            border-radius: 2px;
        }

        /* Back to Top Button Styling */
        .back-to-top {
            position: fixed;
            bottom: 30px;
            right: 30px;
            width: 40px;
            height: 40px;
            background-color: #1B0B83;
            color: white;
            border: none;
            border-radius: 50%;
            display: none;
            /* ซ่อนไว้เริ่มต้น */
            align-items: center;
            justify-content: center;
            font-size: 18px;
            cursor: pointer;
            transition: all 0.3s ease;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
            z-index: 1000;
        }

        .back-to-top:hover {
            background-color: #3b29b0;
            transform: translateY(-5px);
            box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
        }

        .line-icon-footer {
            width: 20px;
            height: auto;
            vertical-align: middle;
            /* ช่วยให้จัดวางกึ่งกลางกับตัวอักษรได้สวยขึ้น */
        }

        .menu-banner-img {
            width: 100%;
            margin-bottom: 0px;
        }

        .menu-rewards-img {
            width: 100%;
            margin-top: auto;
            padding-bottom: 0px;
        }

        .company-disclaimer {
            position: absolute;
            bottom: 10px;
            right: 15px;
            font-size: 11px;
            color: rgba(68, 68, 68, 0.5);
            z-index: 50;
            pointer-events: none;
            font-family: 'Kanit', sans-serif;
            white-space: nowrap;
        }

        .product-lineup img:hover {
            transform: scale(1.02);
        }

        .header-logo {
            padding: 15px;
            background: rgba(255, 255, 255, 0.9);
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .promo-banner {
            width: 100%;
            padding: 20px 10px 0px 10px;
            text-align: center;
            /* animation: float 3s ease-in-out infinite; */
            animation: pop 0.8s forwards;
        }

        .promo-banner img {
            transition: transform 0.3s ease;
        }

        .promo-banner img:hover {
            transform: scale(1.04);
        }

        .reward-group {
            width: 100%;
            margin: 0 auto;
            position: relative;
            animation: fadeInUp 1.2s ease-out forwards;
        }

        .reward-group img {
            transition: transform 0.3s ease;
        }

        .reward-group img:hover {
            transform: scale(1.04);
        }

        .buy-group {
            width: 70%;
            margin: 0 auto;
            position: relative;
            animation: fadeInUp 1.2s ease-out forwards;
            /* 1.2s คือความเร็ว, ease-out คือนุ่มนวลตอนจบ, forwards คือให้ค้างค่าสุดท้ายไว้ */
        }

        .buy-group img {
            transition: transform 0.3s ease;
        }

        .buy-group img:hover {
            transform: scale(1.04);
        }

        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(20px);
                /* ขยับขึ้นจากด้านล่างเล็กน้อย */
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .fade-in-up {
            opacity: 0;
            animation: fadeInUp 1s ease-out forwards;
            will-change: opacity, transform; /* เพิ่มประสิทธิภาพการประมวลผลบนมือถือ */
        }

        @keyframes pop {
            0% {
                transform: scale(0.5);
                opacity: 0;
            }

            50% {
                transform: scale(1.3);
                opacity: 1;
            }

            100% {
                transform: scale(1);
            }
        }

        .btn-join {
            background: linear-gradient(to right, #000080, #0000cd);
            color: white;
            border-radius: 50px;
            padding: 12px 30px;
            font-weight: bold;
            border: 2px solid #FF8C00;
            display: block;
            width: 80%;
            margin: 10px auto;
            text-decoration: none;
            transition: transform 0.2s;
        }

        .btn-join:hover {
            color: #FF8C00;
            transform: scale(1.05);
        }

        .product-lineup {
            width: 100%;
            /* margin-top: 20px; */
            padding: 0 10px;
        }

        .product-lineup img {
            transition: transform 0.3s ease;
        }

        .product-lineup img:hover {
            transform: scale(1.02);
        }

        .footer-info {
            border-radius: 15px;
            margin-top: -20px;
            padding: 0 10px;
        }

        .desktop-nav-link {
            text-decoration: none;
            color: #1B0B83;
            font-weight: 500;
            /*margin-left: 20px;*/
            transition: 0.3s;
            position: relative;
        }

        .desktop-nav-link:hover,
        .desktop-nav-link.active {
            color: #FF8C00;
        }

        .desktop-nav-link.active::after {
            content: '';
            position: absolute;
            width: 100%;
            height: 2px;
            /* bottom: -5px; */
            left: 0;
            background-color: #FF8C00;
        }

        .terms-card {
            background: rgba(255, 255, 255, 0.95);
            border-radius: 20px;
            padding: 30px;
            margin-bottom: 50px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }

        .terms-card a, 
        .terms-card a:link, 
        .terms-card a:visited {
            color: #160B8B !important;
            text-decoration: none;
            transition: color 0.2s ease;
        }

        .terms-card a:hover, 
        .terms-card a:active {
            color: #FF8C00 !important;
            text-decoration: underline;
        }

        .contact-text a, 
        .contact-text a:link, 
        .contact-text a:visited {
            color: #160B8B !important;
            text-decoration: none;
            transition: color 0.2s ease;
        }

        .contact-text a:hover, 
        .contact-text a:active {
            color: #FF8C00 !important;
            text-decoration: underline;
        }

        .terms-section-title {
            color: #fff;
            font-weight: 600;
            font-size: 1.25rem;
            border-left: 5px solid #FF8C00;
            padding: 12px;
            background-color: #160B8B;
            border-radius: 0 10px 10px 0;
            margin-bottom: 25px;
            text-align: center;
        }

        .text-primary-custom {
            color: #160B8B !important;
            font-weight: 600;
            margin-bottom: 15px;
            display: flex;
            align-items: center;
        }

        .text-primary-custom i {
            margin-right: 10px;
            width: 25px;
            text-align: center;
        }

        .content-body p,
        .content-body li {
            color: #444;
            line-height: 1.7;
        }

        .table-custom {
            font-size: 0.9rem;
            border-radius: 10px;
            overflow: hidden;
        }

        .table-custom thead {
            background-color: #160B8B;
            color: rgb(184, 23, 23);
        }

        .contact-footer {
            background: #f8f9fa;
            border-radius: 10px;
            padding: 15px;
            border-left: 4px solid #FF8C00;
            margin-top: 20px;
        }