/* Reset and Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Sarabun', sans-serif;
    background-color: #0a0a0a;
    color: #ffffff;
    line-height: 1.6;
    font-size: 16px;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
}

/* Container */
.container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Header Styles */
.header {
    background-color: #111111;
    border-bottom: 1px solid #333333;
    position: sticky;
    top: 0;
    z-index: 1000;
    backdrop-filter: blur(10px);
    background-color: rgba(17, 17, 17, 0.95);
}

.nav-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 0;
}

/* Logo Styles */
.logo a {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #ffffff;
}

.logo-img {
    width: 40px;
    height: 40px;
    margin-right: 10px;
}

.logo-text {
    font-family: 'Prompt', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Desktop Navigation */
.nav-desktop {
    display: flex;
}

.nav-menu {
    display: flex;
    list-style: none;
    align-items: center;
    gap: 2rem;
}

.nav-link {
    color: #ffffff;
    text-decoration: none;
    font-family: 'Sarabun', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    transition: all 0.3s ease;
    position: relative;
}

.nav-link:hover {
    color: #ffd700;
    background-color: rgba(255, 215, 0, 0.1);
}

/* CTA Button */
.cta-button {
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    text-decoration: none;
    padding: 0.75rem 1.5rem;
    border-radius: 25px;
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 0.95rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3);
}

.cta-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 215, 0, 0.4);
    background: linear-gradient(135deg, #ffed4e, #ffd700);
}

/* Mobile Menu Toggle */
.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.5rem;
    gap: 4px;
}

.hamburger-line {
    width: 25px;
    height: 3px;
    background-color: #ffffff;
    transition: all 0.3s ease;
    border-radius: 2px;
}

.mobile-menu-toggle.active .hamburger-line:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

.mobile-menu-toggle.active .hamburger-line:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle.active .hamburger-line:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -6px);
}

/* Mobile Navigation */
.nav-mobile {
    display: none;
    background-color: #111111;
    border-top: 1px solid #333333;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 999;
}

.nav-mobile.active {
    display: block;
}

.nav-mobile-menu {
    list-style: none;
    padding: 1rem 0;
}

.nav-mobile-link {
    display: block;
    color: #ffffff;
    text-decoration: none;
    padding: 1rem 2rem;
    font-family: 'Sarabun', sans-serif;
    font-weight: 400;
    border-bottom: 1px solid #333333;
    transition: all 0.3s ease;
}

.nav-mobile-link:hover {
    background-color: rgba(255, 215, 0, 0.1);
    color: #ffd700;
}

.cta-button-mobile {
    display: block;
    margin: 1rem 2rem;
    padding: 1rem;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    text-decoration: none;
    text-align: center;
    border-radius: 25px;
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3);
}

.cta-button-mobile:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 215, 0, 0.4);
}

/* Responsive Design */
@media (max-width: 1024px) {
    .nav-menu {
        gap: 1.5rem;
    }

    .nav-link {
        font-size: 0.95rem;
    }

    .cta-button {
        padding: 0.65rem 1.3rem;
        font-size: 0.9rem;
    }
}

@media (max-width: 768px) {
    .nav-desktop {
        display: none;
    }

    .mobile-menu-toggle {
        display: flex;
    }

    .container {
        padding: 0 15px;
    }

    .nav-wrapper {
        padding: 0.8rem 0;
    }

    .logo-img {
        width: 35px;
        height: 35px;
    }

    .logo-text {
        font-size: 1.3rem;
    }
}

@media (max-width: 480px) {
    .container {
        padding: 0 10px;
    }

    .logo-img {
        width: 30px;
        height: 30px;
        margin-right: 8px;
    }

    .logo-text {
        font-size: 1.2rem;
    }

    .nav-mobile-link {
        padding: 0.8rem 1.5rem;
        font-size: 0.95rem;
    }

    .cta-button-mobile {
        margin: 1rem 1.5rem;
        padding: 0.8rem;
        font-size: 0.95rem;
    }
}

/* Additional Utility Styles */
main {
    margin-top: 0;
}

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Focus styles for accessibility */
.nav-link:focus,
.cta-button:focus,
.nav-mobile-link:focus,
.cta-button-mobile:focus,
.mobile-menu-toggle:focus {
    outline: 2px solid #ffd700;
    outline-offset: 2px;
}

/* Ensure proper contrast for accessibility */
a {
    color: inherit;
}

a:visited {
    color: inherit;
}

/* Hero Section Styles */
.hero {
    background-color: #0a0a0a;
    padding: 3rem 0 4rem 0;
    position: relative;
    overflow: hidden;
}

.hero-content {
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
}

.hero-title {
    font-family: 'Prompt', sans-serif;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 2rem;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.hero-description {
    margin-bottom: 3rem;
}

.hero-description p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.125rem;
    line-height: 1.8;
    color: #e0e0e0;
    max-width: 1000px;
    margin: 0 auto;
    text-align: left;
}

.hero-image {
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

.hero-img {
    width: 100%;
    max-width: 800px;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(255, 215, 0, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.hero-img:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(255, 215, 0, 0.25);
}

/* Hero Responsive Design */
@media (max-width: 1024px) {
    .hero {
        padding: 2.5rem 0 3.5rem 0;
    }

    .hero-title {
        font-size: 2.25rem;
        margin-bottom: 1.75rem;
    }

    .hero-description p {
        font-size: 1.1rem;
        line-height: 1.75;
    }

    .hero-img {
        max-width: 750px;
    }
}

@media (max-width: 768px) {
    .hero {
        padding: 2rem 0 3rem 0;
    }

    .hero-title {
        font-size: 1.875rem;
        margin-bottom: 1.5rem;
        line-height: 1.3;
    }

    .hero-description {
        margin-bottom: 2.5rem;
    }

    .hero-description p {
        font-size: 1.05rem;
        line-height: 1.7;
        text-align: center;
    }

    .hero-img {
        max-width: 100%;
        border-radius: 10px;
    }
}

@media (max-width: 480px) {
    .hero {
        padding: 1.5rem 0 2.5rem 0;
    }

    .hero-title {
        font-size: 1.5rem;
        margin-bottom: 1.25rem;
        line-height: 1.4;
    }

    .hero-description {
        margin-bottom: 2rem;
    }

    .hero-description p {
        font-size: 1rem;
        line-height: 1.65;
    }

    .hero-img {
        border-radius: 8px;
        box-shadow: 0 8px 25px rgba(255, 215, 0, 0.12);
    }

    .hero-img:hover {
        transform: translateY(-3px);
        box-shadow: 0 12px 35px rgba(255, 215, 0, 0.2);
    }
}

@media (max-width: 360px) {
    .hero {
        padding: 1.25rem 0 2rem 0;
    }

    .hero-title {
        font-size: 1.375rem;
        margin-bottom: 1rem;
    }

    .hero-description {
        margin-bottom: 1.75rem;
    }

    .hero-description p {
        font-size: 0.95rem;
        line-height: 1.6;
    }
}

/* Platform Access Section Styles */
.platform-access {
    background-color: #111111;
    padding: 4rem 0;
    position: relative;
}

.section-content {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

.section-header {
    text-align: center;
    margin-bottom: 1rem;
}

.section-title {
    font-family: 'Prompt', sans-serif;
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.3;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    max-width: 800px;
    margin: 0 auto;
}

/* Access Grid Layout */
.access-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 3rem;
    align-items: start;
}

.access-main {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}

.access-info {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.access-subtitle {
    font-family: 'Prompt', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.access-description {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.access-description p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
}

.access-description strong {
    color: #ffd700;
    font-weight: 700;
}

/* Login Steps Grid */
.login-steps {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.steps-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

.step-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    transition: all 0.3s ease;
}

.step-item:hover {
    background-color: rgba(255, 215, 0, 0.05);
    transform: translateY(-2px);
}

.step-number {
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.step-content {
    flex: 1;
}

.step-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.5rem;
}

.step-description {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.6;
    color: #e0e0e0;
}

/* Security Sidebar */
.security-sidebar {
    position: sticky;
    top: 2rem;
}

.security-content {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.security-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1rem;
    line-height: 1.3;
}

.security-intro {
    font-family: 'Sarabun', sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    color: #e0e0e0;
    margin-bottom: 1.5rem;
}

.security-features {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.security-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 6px;
    transition: all 0.3s ease;
}

.security-item:hover {
    background-color: rgba(255, 215, 0, 0.05);
}

.security-icon {
    font-size: 1.2rem;
    flex-shrink: 0;
    width: 24px;
    text-align: center;
}

.security-item span {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* Security Showcase */
.security-showcase {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.showcase-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    align-items: center;
}

.showcase-image {
    display: flex;
    justify-content: center;
}

.security-img {
    width: 100%;
    max-width: 400px;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 8px 25px rgba(255, 215, 0, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.security-img:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 35px rgba(255, 215, 0, 0.25);
}

.showcase-text p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
}

/* Platform Access Responsive Design */
@media (max-width: 1024px) {
    .platform-access {
        padding: 3rem 0;
    }

    .section-title {
        font-size: 2rem;
    }

    .access-grid {
        gap: 2.5rem;
    }

    .access-subtitle {
        font-size: 1.35rem;
    }

    .security-title {
        font-size: 1.3rem;
    }
}

@media (max-width: 768px) {
    .platform-access {
        padding: 2.5rem 0;
    }

    .section-title {
        font-size: 1.75rem;
    }

    .access-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .steps-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .showcase-content {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        text-align: center;
    }

    .security-sidebar {
        position: static;
    }

    .access-info,
    .login-steps,
    .security-content,
    .security-showcase {
        padding: 1.5rem;
    }
}

@media (max-width: 480px) {
    .platform-access {
        padding: 2rem 0;
    }

    .section-content {
        gap: 2rem;
    }

    .section-title {
        font-size: 1.5rem;
        line-height: 1.4;
    }

    .access-main {
        gap: 1.5rem;
    }

    .access-subtitle {
        font-size: 1.2rem;
        margin-bottom: 1rem;
    }

    .security-title {
        font-size: 1.2rem;
    }

    .access-description p,
    .security-intro,
    .showcase-text p {
        font-size: 1rem;
    }

    .step-item {
        padding: 0.75rem;
        gap: 0.75rem;
    }

    .step-number {
        width: 28px;
        height: 28px;
        font-size: 0.85rem;
    }

    .step-title {
        font-size: 0.95rem;
    }

    .step-description {
        font-size: 0.9rem;
    }

    .security-item {
        padding: 0.5rem;
        gap: 0.5rem;
    }

    .security-item span {
        font-size: 0.9rem;
    }

    .access-info,
    .login-steps,
    .security-content,
    .security-showcase {
        padding: 1.25rem;
    }
}

@media (max-width: 360px) {
    .platform-access {
        padding: 1.5rem 0;
    }

    .section-title {
        font-size: 1.375rem;
    }

    .access-subtitle {
        font-size: 1.1rem;
    }

    .security-title {
        font-size: 1.1rem;
    }

    .access-info,
    .login-steps,
    .security-content,
    .security-showcase {
        padding: 1rem;
    }
}

/* Games and Casino Section Styles */
.games-casino {
    background-color: #0a0a0a;
    padding: 4rem 0;
    position: relative;
}

/* Main Grid Layout */
.games-main-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    margin-bottom: 3rem;
}

/* Slots Section */
.slots-section {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.slots-content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.slots-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.6rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0;
    line-height: 1.3;
}

.slots-description {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.slots-description p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
}

/* Slot Types Grid */
.slot-types-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}

.slot-type-card {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.05);
    transition: all 0.3s ease;
}

.slot-type-card:hover {
    background-color: rgba(255, 215, 0, 0.05);
    border-color: rgba(255, 215, 0, 0.2);
    transform: translateX(5px);
}

.slot-type-number {
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.slot-type-content {
    flex: 1;
}

.slot-type-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.slot-type-desc {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* Casino Section */
.casino-section {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.casino-content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.casino-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.6rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0;
    line-height: 1.3;
}

.casino-description p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
}

/* Casino Games List */
.casino-games-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.casino-game-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.05);
    transition: all 0.3s ease;
}

.casino-game-item:hover {
    background-color: rgba(255, 215, 0, 0.05);
    border-color: rgba(255, 215, 0, 0.2);
    transform: translateX(5px);
}

.casino-game-icon {
    font-size: 1.5rem;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 215, 0, 0.1);
    border-radius: 8px;
    flex-shrink: 0;
}

.casino-game-content {
    flex: 1;
}

.casino-game-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.casino-game-desc {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* Game Showcase */
.game-showcase {
    margin-bottom: 3rem;
}

.showcase-visual {
    display: flex;
    justify-content: center;
    align-items: center;
}

.showcase-image-container {
    max-width: 100%;
    display: flex;
    justify-content: center;
}

.showcase-img {
    width: 100%;
    max-width: 900px;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(255, 215, 0, 0.2);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.showcase-img:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(255, 215, 0, 0.3);
}

/* Betflik Integration */
.betflik-integration {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
    text-align: center;
}

.integration-text {
    max-width: 800px;
    margin: 0 auto;
}

.integration-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.75rem;
    font-weight: 700;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.integration-description p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    text-align: left;
}

/* Games Casino Responsive Design */
@media (max-width: 1024px) {
    .games-casino {
        padding: 3rem 0;
    }

    .games-main-grid {
        gap: 2.5rem;
        margin-bottom: 2.5rem;
    }

    .slots-title,
    .casino-title {
        font-size: 1.5rem;
    }

    .integration-title {
        font-size: 1.6rem;
    }

    .slots-section,
    .casino-section,
    .betflik-integration {
        padding: 2rem;
    }
}

@media (max-width: 768px) {
    .games-casino {
        padding: 2.5rem 0;
    }

    .games-main-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
        margin-bottom: 2rem;
    }

    .slots-title,
    .casino-title {
        font-size: 1.4rem;
    }

    .integration-title {
        font-size: 1.5rem;
    }

    .slots-description p,
    .casino-description p,
    .integration-description p {
        font-size: 1.05rem;
        text-align: center;
    }

    .integration-description p {
        text-align: left;
    }

    .slot-type-card,
    .casino-game-item {
        padding: 0.875rem;
    }

    .slots-section,
    .casino-section,
    .betflik-integration {
        padding: 1.75rem;
    }
}

@media (max-width: 480px) {
    .games-casino {
        padding: 2rem 0;
    }

    .section-content {
        gap: 2rem;
    }

    .games-main-grid {
        gap: 1.5rem;
        margin-bottom: 1.5rem;
    }

    .slots-content,
    .casino-content {
        gap: 1.5rem;
    }

    .slots-title,
    .casino-title {
        font-size: 1.25rem;
    }

    .integration-title {
        font-size: 1.375rem;
        margin-bottom: 1rem;
    }

    .slots-description p,
    .casino-description p,
    .integration-description p {
        font-size: 1rem;
    }

    .slot-type-title,
    .casino-game-title {
        font-size: 1rem;
    }

    .slot-type-desc,
    .casino-game-desc {
        font-size: 0.9rem;
    }

    .slot-type-card,
    .casino-game-item {
        padding: 0.75rem;
        gap: 0.75rem;
    }

    .slot-type-number {
        width: 28px;
        height: 28px;
        font-size: 0.85rem;
    }

    .casino-game-icon {
        width: 36px;
        height: 36px;
        font-size: 1.3rem;
    }

    .slots-section,
    .casino-section,
    .betflik-integration {
        padding: 1.5rem;
    }

    .showcase-img {
        border-radius: 10px;
    }
}

@media (max-width: 360px) {
    .games-casino {
        padding: 1.5rem 0;
    }

    .slots-title,
    .casino-title {
        font-size: 1.15rem;
    }

    .integration-title {
        font-size: 1.25rem;
    }

    .slots-section,
    .casino-section,
    .betflik-integration {
        padding: 1.25rem;
    }

    .slot-type-card,
    .casino-game-item {
        padding: 0.625rem;
        gap: 0.625rem;
    }

    .slot-type-number {
        width: 26px;
        height: 26px;
        font-size: 0.8rem;
    }

    .casino-game-icon {
        width: 32px;
        height: 32px;
        font-size: 1.2rem;
    }
}

/* VIP Services Section Styles */
.vip-services {
    background-color: #111111;
    padding: 4rem 0;
    position: relative;
}

.vip-main-content {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

/* VIP Introduction */
.vip-intro {
    text-align: center;
    margin-bottom: 1rem;
}

.vip-intro-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.75rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.vip-intro-description p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    max-width: 900px;
    margin: 0 auto;
}

/* VIP Benefits Grid */
.vip-benefits-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
}

.vip-benefits-section {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.benefits-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 2rem;
    line-height: 1.3;
}

.benefits-list {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.benefit-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.05);
    transition: all 0.3s ease;
}

.benefit-item:hover {
    background-color: rgba(255, 215, 0, 0.05);
    border-color: rgba(255, 215, 0, 0.2);
    transform: translateX(5px);
}

.benefit-number {
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.benefit-content {
    flex: 1;
}

.benefit-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.benefit-desc {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* Customer Service Section */
.customer-service-section {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.service-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.service-intro p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    margin-bottom: 1.5rem;
}

.service-features {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.service-feature {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 6px;
    transition: all 0.3s ease;
}

.service-feature:hover {
    background-color: rgba(255, 215, 0, 0.05);
}

.service-icon {
    font-size: 1.25rem;
    flex-shrink: 0;
    width: 28px;
    text-align: center;
}

.service-feature span {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* VIP Showcase */
.vip-showcase {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    align-items: center;
}

.vip-image-container {
    display: flex;
    justify-content: center;
}

.vip-img {
    width: 100%;
    max-width: 500px;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 12px 35px rgba(255, 215, 0, 0.2);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.vip-img:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 45px rgba(255, 215, 0, 0.3);
}

.vip-management-info p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
}

/* Payment System Section Styles */
.payment-system {
    background-color: #0a0a0a;
    padding: 4rem 0;
    position: relative;
}

.payment-main-grid {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

/* Payment Introduction */
.payment-intro {
    text-align: center;
}

.payment-intro-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.75rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.payment-intro-description p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    max-width: 900px;
    margin: 0 auto;
}

/* Payment Methods Grid */
.payment-methods-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
}

/* Deposit Methods */
.deposit-methods {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.methods-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 2rem;
    line-height: 1.3;
}

.methods-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.method-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.05);
    transition: all 0.3s ease;
}

.method-item:hover {
    background-color: rgba(255, 215, 0, 0.05);
    border-color: rgba(255, 215, 0, 0.2);
    transform: translateX(5px);
}

.method-number {
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.method-content {
    flex: 1;
}

.method-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.method-desc {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* Withdrawal Process */
.withdrawal-process {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.process-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.process-intro p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    margin-bottom: 1.5rem;
}

.withdrawal-steps {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 2rem;
}

.withdrawal-step {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 6px;
    transition: all 0.3s ease;
}

.withdrawal-step:hover {
    background-color: rgba(255, 215, 0, 0.05);
}

.step-indicator {
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 0.85rem;
    flex-shrink: 0;
}

.step-text {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* Processing Times */
.processing-times {
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    padding: 1.5rem;
    border: 1px solid rgba(255, 215, 0, 0.05);
}

.times-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1rem;
}

.times-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.time-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(255, 215, 0, 0.1);
}

.time-item:last-child {
    border-bottom: none;
}

.time-method {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.9rem;
    color: #e0e0e0;
}

.time-duration {
    font-family: 'Prompt', sans-serif;
    font-size: 0.9rem;
    font-weight: 700;
    color: #ffd700;
}

/* Payment Showcase */
.payment-showcase {
    display: flex;
    justify-content: center;
    margin: 2rem 0;
}

.payment-image-container {
    max-width: 100%;
    display: flex;
    justify-content: center;
}

.payment-img {
    width: 100%;
    max-width: 900px;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(255, 215, 0, 0.2);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.payment-img:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(255, 215, 0, 0.3);
}

/* Security Measures */
.security-measures {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
    text-align: center;
}

.security-measures-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.6rem;
    font-weight: 700;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.security-intro p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    margin-bottom: 2rem;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.security-measures-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 800px;
    margin: 0 auto;
}

.security-measure {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.05);
    transition: all 0.3s ease;
    text-align: left;
}

.security-measure:hover {
    background-color: rgba(255, 215, 0, 0.05);
    border-color: rgba(255, 215, 0, 0.2);
}

.security-measure-icon {
    font-size: 1.5rem;
    width: 40px;
    text-align: center;
    flex-shrink: 0;
}

.security-measure span {
    font-family: 'Sarabun', sans-serif;
    font-size: 1rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* VIP and Payment Responsive Design */
@media (max-width: 1024px) {
    .vip-services,
    .payment-system {
        padding: 3rem 0;
    }

    .vip-benefits-grid,
    .payment-methods-grid {
        gap: 2.5rem;
    }

    .vip-intro-title,
    .payment-intro-title {
        font-size: 1.6rem;
    }

    .benefits-title,
    .service-title,
    .methods-title,
    .process-title {
        font-size: 1.4rem;
    }

    .security-measures-title {
        font-size: 1.5rem;
    }

    .vip-benefits-section,
    .customer-service-section,
    .deposit-methods,
    .withdrawal-process,
    .security-measures {
        padding: 2rem;
    }
}

@media (max-width: 768px) {
    .vip-services,
    .payment-system {
        padding: 2.5rem 0;
    }

    .vip-benefits-grid,
    .payment-methods-grid,
    .vip-showcase {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .vip-intro-title,
    .payment-intro-title {
        font-size: 1.5rem;
    }

    .benefits-title,
    .service-title,
    .methods-title,
    .process-title {
        font-size: 1.3rem;
    }

    .security-measures-title {
        font-size: 1.4rem;
    }

    .vip-intro-description p,
    .payment-intro-description p,
    .service-intro p,
    .process-intro p,
    .security-intro p,
    .vip-management-info p {
        font-size: 1.05rem;
        text-align: center;
    }

    .vip-management-info p {
        text-align: left;
    }

    .benefit-item,
    .method-item {
        padding: 0.875rem;
    }

    .vip-benefits-section,
    .customer-service-section,
    .deposit-methods,
    .withdrawal-process,
    .security-measures {
        padding: 1.75rem;
    }
}

@media (max-width: 480px) {
    .vip-services,
    .payment-system {
        padding: 2rem 0;
    }

    .vip-main-content,
    .payment-main-grid {
        gap: 2rem;
    }

    .vip-intro-title,
    .payment-intro-title {
        font-size: 1.375rem;
        margin-bottom: 1rem;
    }

    .benefits-title,
    .service-title,
    .methods-title,
    .process-title {
        font-size: 1.2rem;
    }

    .security-measures-title {
        font-size: 1.3rem;
    }

    .vip-intro-description p,
    .payment-intro-description p,
    .service-intro p,
    .process-intro p,
    .security-intro p,
    .vip-management-info p {
        font-size: 1rem;
    }

    .benefit-title,
    .method-title {
        font-size: 1rem;
    }

    .benefit-desc,
    .method-desc,
    .step-text,
    .service-feature span,
    .security-measure span {
        font-size: 0.9rem;
    }

    .benefit-item,
    .method-item {
        padding: 0.75rem;
        gap: 0.75rem;
    }

    .benefit-number,
    .method-number {
        width: 28px;
        height: 28px;
        font-size: 0.85rem;
    }

    .step-indicator {
        width: 26px;
        height: 26px;
        font-size: 0.8rem;
    }

    .vip-benefits-section,
    .customer-service-section,
    .deposit-methods,
    .withdrawal-process,
    .security-measures {
        padding: 1.5rem;
    }

    .vip-img,
    .payment-img {
        border-radius: 10px;
    }
}

@media (max-width: 360px) {
    .vip-services,
    .payment-system {
        padding: 1.5rem 0;
    }

    .vip-intro-title,
    .payment-intro-title {
        font-size: 1.25rem;
    }

    .benefits-title,
    .service-title,
    .methods-title,
    .process-title {
        font-size: 1.1rem;
    }

    .security-measures-title {
        font-size: 1.2rem;
    }

    .vip-benefits-section,
    .customer-service-section,
    .deposit-methods,
    .withdrawal-process,
    .security-measures {
        padding: 1.25rem;
    }

    .benefit-item,
    .method-item {
        padding: 0.625rem;
        gap: 0.625rem;
    }

    .benefit-number,
    .method-number {
        width: 26px;
        height: 26px;
        font-size: 0.8rem;
    }

    .step-indicator {
        width: 24px;
        height: 24px;
        font-size: 0.75rem;
    }
}

/* Mobile Application Section Styles */
.mobile-application {
    background-color: #111111;
    padding: 4rem 0;
    position: relative;
}

.mobile-app-content {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

/* App Introduction */
.app-intro {
    text-align: center;
    margin-bottom: 1rem;
}

.app-intro-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.75rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.app-intro-description p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    max-width: 900px;
    margin: 0 auto;
}

/* App Features Grid */
.app-features-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
}

/* App Features Section */
.app-features-section {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.features-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.features-intro p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    margin-bottom: 1.5rem;
}

.features-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.feature-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.05);
    transition: all 0.3s ease;
}

.feature-item:hover {
    background-color: rgba(255, 215, 0, 0.05);
    border-color: rgba(255, 215, 0, 0.2);
    transform: translateX(5px);
}

.feature-number {
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.feature-content {
    flex: 1;
}

.feature-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.feature-desc {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* Browser Access Section */
.browser-access-section {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.browser-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.browser-intro p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    margin-bottom: 1.5rem;
}

.browser-domains {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.domain-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.05);
    transition: all 0.3s ease;
}

.domain-item:hover {
    background-color: rgba(255, 215, 0, 0.05);
    border-color: rgba(255, 215, 0, 0.2);
    transform: translateX(5px);
}

.domain-icon {
    font-size: 1.5rem;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 215, 0, 0.1);
    border-radius: 8px;
    flex-shrink: 0;
}

.domain-content {
    flex: 1;
}

.domain-name {
    font-family: 'Prompt', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.domain-desc {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* Cross Platform Section */
.cross-platform-section {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
    text-align: center;
}

.platform-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.6rem;
    font-weight: 700;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.platform-intro p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    margin-bottom: 2rem;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.platform-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1.5rem;
    max-width: 1000px;
    margin: 0 auto;
}

.platform-category {
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    padding: 1.5rem;
    border: 1px solid rgba(255, 215, 0, 0.05);
    transition: all 0.3s ease;
    text-align: center;
}

.platform-category:hover {
    background-color: rgba(255, 215, 0, 0.05);
    border-color: rgba(255, 215, 0, 0.2);
    transform: translateY(-3px);
}

.platform-icon {
    font-size: 2.5rem;
    margin-bottom: 1rem;
    display: block;
}

.platform-name {
    font-family: 'Prompt', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.5rem;
}

.platform-devices {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.9rem;
    line-height: 1.4;
    color: #e0e0e0;
}

/* Mobile Showcase */
.mobile-showcase {
    display: flex;
    justify-content: center;
    margin: 2rem 0;
}

.showcase-image-container {
    max-width: 100%;
    display: flex;
    justify-content: center;
}

.mobile-showcase-img {
    width: 100%;
    max-width: 900px;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(255, 215, 0, 0.2);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.mobile-showcase-img:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(255, 215, 0, 0.3);
}

/* Account Management Grid */
.account-management-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
}

/* Account Management */
.account-management {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.management-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.management-intro p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    margin-bottom: 1.5rem;
}

.management-features {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.management-feature {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 6px;
    transition: all 0.3s ease;
}

.management-feature:hover {
    background-color: rgba(255, 215, 0, 0.05);
}

.management-icon {
    font-size: 1.25rem;
    flex-shrink: 0;
    width: 28px;
    text-align: center;
}

.management-feature span {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* Network Stability */
.network-stability {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.stability-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
    line-height: 1.3;
}

.stability-intro p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    margin-bottom: 1.5rem;
}

.stability-features {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.stability-feature {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.05);
    transition: all 0.3s ease;
}

.stability-feature:hover {
    background-color: rgba(255, 215, 0, 0.05);
    border-color: rgba(255, 215, 0, 0.2);
}

.stability-icon {
    font-size: 1.5rem;
    width: 40px;
    text-align: center;
    flex-shrink: 0;
}

.stability-content {
    flex: 1;
}

.stability-name {
    font-family: 'Prompt', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.stability-desc {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #e0e0e0;
}

/* Network Conclusion */
.network-conclusion {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
    text-align: center;
}

.conclusion-content p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #e0e0e0;
    max-width: 900px;
    margin: 0 auto;
}

/* Mobile Application Responsive Design */
@media (max-width: 1024px) {
    .mobile-application {
        padding: 3rem 0;
    }

    .app-features-grid,
    .account-management-grid {
        gap: 2.5rem;
    }

    .app-intro-title {
        font-size: 1.6rem;
    }

    .features-title,
    .browser-title,
    .management-title,
    .stability-title {
        font-size: 1.4rem;
    }

    .platform-title {
        font-size: 1.5rem;
    }

    .platform-grid {
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
        gap: 1.25rem;
    }

    .app-features-section,
    .browser-access-section,
    .cross-platform-section,
    .account-management,
    .network-stability,
    .network-conclusion {
        padding: 2rem;
    }
}

@media (max-width: 768px) {
    .mobile-application {
        padding: 2.5rem 0;
    }

    .app-features-grid,
    .account-management-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .app-intro-title {
        font-size: 1.5rem;
    }

    .features-title,
    .browser-title,
    .management-title,
    .stability-title {
        font-size: 1.3rem;
    }

    .platform-title {
        font-size: 1.4rem;
    }

    .app-intro-description p,
    .features-intro p,
    .browser-intro p,
    .platform-intro p,
    .management-intro p,
    .stability-intro p,
    .conclusion-content p {
        font-size: 1.05rem;
        text-align: center;
    }

    .platform-grid {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 1rem;
    }

    .platform-category {
        padding: 1.25rem;
    }

    .platform-icon {
        font-size: 2rem;
        margin-bottom: 0.75rem;
    }

    .feature-item,
    .domain-item {
        padding: 0.875rem;
    }

    .app-features-section,
    .browser-access-section,
    .cross-platform-section,
    .account-management,
    .network-stability,
    .network-conclusion {
        padding: 1.75rem;
    }
}

@media (max-width: 480px) {
    .mobile-application {
        padding: 2rem 0;
    }

    .mobile-app-content {
        gap: 2rem;
    }

    .app-intro-title {
        font-size: 1.375rem;
        margin-bottom: 1rem;
    }

    .features-title,
    .browser-title,
    .management-title,
    .stability-title {
        font-size: 1.2rem;
    }

    .platform-title {
        font-size: 1.3rem;
    }

    .app-intro-description p,
    .features-intro p,
    .browser-intro p,
    .platform-intro p,
    .management-intro p,
    .stability-intro p,
    .conclusion-content p {
        font-size: 1rem;
    }

    .feature-title,
    .domain-name,
    .stability-name {
        font-size: 1rem;
    }

    .feature-desc,
    .domain-desc,
    .platform-devices,
    .stability-desc,
    .management-feature span {
        font-size: 0.9rem;
    }

    .feature-item,
    .domain-item {
        padding: 0.75rem;
        gap: 0.75rem;
    }

    .feature-number {
        width: 28px;
        height: 28px;
        font-size: 0.85rem;
    }

    .domain-icon {
        width: 36px;
        height: 36px;
        font-size: 1.3rem;
    }

    .platform-grid {
        grid-template-columns: 1fr 1fr;
        gap: 0.75rem;
    }

    .platform-category {
        padding: 1rem;
    }

    .platform-icon {
        font-size: 1.75rem;
        margin-bottom: 0.5rem;
    }

    .platform-name {
        font-size: 1rem;
    }

    .platform-devices {
        font-size: 0.85rem;
    }

    .app-features-section,
    .browser-access-section,
    .cross-platform-section,
    .account-management,
    .network-stability,
    .network-conclusion {
        padding: 1.5rem;
    }

    .mobile-showcase-img {
        border-radius: 10px;
    }
}

@media (max-width: 360px) {
    .mobile-application {
        padding: 1.5rem 0;
    }

    .app-intro-title {
        font-size: 1.25rem;
    }

    .features-title,
    .browser-title,
    .management-title,
    .stability-title {
        font-size: 1.1rem;
    }

    .platform-title {
        font-size: 1.2rem;
    }

    .platform-grid {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }

    .app-features-section,
    .browser-access-section,
    .cross-platform-section,
    .account-management,
    .network-stability,
    .network-conclusion {
        padding: 1.25rem;
    }

    .feature-item,
    .domain-item {
        padding: 0.625rem;
        gap: 0.625rem;
    }

    .feature-number {
        width: 26px;
        height: 26px;
        font-size: 0.8rem;
    }

    .domain-icon {
        width: 32px;
        height: 32px;
        font-size: 1.2rem;
    }
}

/* Contact Section Styles */
.contact-section {
    background-color: #0a0a0a;
    padding: 4rem 0;
    position: relative;
}

.contact-main-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 3rem;
    align-items: start;
}

.contact-info {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.contact-methods {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.contact-method {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding: 1.5rem;
    background-color: rgba(255, 255, 255, 0.03);
    border-radius: 10px;
    border: 1px solid rgba(255, 215, 0, 0.05);
    transition: all 0.3s ease;
}

.contact-method:hover {
    background-color: rgba(255, 215, 0, 0.05);
    border-color: rgba(255, 215, 0, 0.2);
    transform: translateX(5px);
}

.contact-icon {
    font-size: 2rem;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(255, 215, 0, 0.1), rgba(255, 237, 78, 0.1));
    border-radius: 12px;
    flex-shrink: 0;
}

.contact-content {
    flex: 1;
}

.contact-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.25rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.5rem;
    line-height: 1.3;
}

.contact-link {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.1rem;
    color: #e0e0e0;
    text-decoration: none;
    transition: all 0.3s ease;
    line-height: 1.5;
}

.contact-link:hover {
    color: #ffd700;
    text-decoration: underline;
}

/* Additional Info */
.additional-info {
    position: sticky;
    top: 2rem;
}

.info-card {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
    text-align: center;
}

.info-title {
    font-family: 'Prompt', sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1rem;
    line-height: 1.3;
}

.info-description {
    font-family: 'Sarabun', sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    color: #e0e0e0;
    margin-bottom: 1.5rem;
}

.external-link {
    display: inline-block;
    font-family: 'Prompt', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #000000;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    text-decoration: none;
    padding: 0.75rem 1.5rem;
    border-radius: 25px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3);
}

.external-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 215, 0, 0.4);
    background: linear-gradient(135deg, #ffed4e, #ffd700);
}

/* FAQ Section Styles */
.faq-section {
    background-color: #111111;
    padding: 4rem 0;
    position: relative;
}

.faq-main-content {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

.faq-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    max-width: 1000px;
    margin: 0 auto;
}

.faq-item {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
    transition: all 0.3s ease;
}

.faq-item:hover {
    background-color: rgba(255, 215, 0, 0.02);
    border-color: rgba(255, 215, 0, 0.2);
    transform: translateY(-2px);
}

.faq-question {
    font-family: 'Prompt', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1rem;
    line-height: 1.3;
}

.faq-answer p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1.05rem;
    line-height: 1.7;
    color: #e0e0e0;
}

/* CTA Section */
.cta-section {
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
    text-align: center;
}

.cta-content {
    max-width: 800px;
    margin: 0 auto;
}

.cta-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.cta-primary,
.cta-secondary,
.cta-tertiary {
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    padding: 0.875rem 2rem;
    border-radius: 25px;
    transition: all 0.3s ease;
    display: inline-block;
    min-width: 150px;
    text-align: center;
}

.cta-primary {
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3);
}

.cta-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 215, 0, 0.4);
    background: linear-gradient(135deg, #ffed4e, #ffd700);
}

.cta-secondary {
    background-color: transparent;
    color: #ffd700;
    border: 2px solid #ffd700;
}

.cta-secondary:hover {
    background-color: rgba(255, 215, 0, 0.1);
    transform: translateY(-2px);
}

.cta-tertiary {
    background-color: rgba(255, 255, 255, 0.05);
    color: #e0e0e0;
    border: 1px solid rgba(255, 215, 0, 0.3);
}

.cta-tertiary:hover {
    background-color: rgba(255, 215, 0, 0.05);
    color: #ffd700;
    border-color: rgba(255, 215, 0, 0.5);
    transform: translateY(-2px);
}

/* Contact and FAQ Responsive Design */
@media (max-width: 1024px) {
    .contact-section,
    .faq-section {
        padding: 3rem 0;
    }

    .contact-main-grid {
        gap: 2.5rem;
    }

    .contact-method {
        padding: 1.25rem;
        gap: 1.25rem;
    }

    .contact-icon {
        width: 55px;
        height: 55px;
        font-size: 1.8rem;
    }

    .contact-title {
        font-size: 1.2rem;
    }

    .contact-link {
        font-size: 1.05rem;
    }

    .info-title {
        font-size: 1.3rem;
    }

    .faq-question {
        font-size: 1.2rem;
    }

    .faq-answer p {
        font-size: 1rem;
    }

    .contact-info,
    .info-card,
    .faq-item,
    .cta-section {
        padding: 2rem;
    }
}

@media (max-width: 768px) {
    .contact-section,
    .faq-section {
        padding: 2.5rem 0;
    }

    .contact-main-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .additional-info {
        position: static;
    }

    .contact-methods {
        gap: 1.5rem;
    }

    .contact-method {
        padding: 1rem;
        gap: 1rem;
        flex-direction: column;
        text-align: center;
    }

    .contact-icon {
        width: 50px;
        height: 50px;
        font-size: 1.6rem;
    }

    .contact-title {
        font-size: 1.15rem;
    }

    .contact-link {
        font-size: 1rem;
    }

    .info-title {
        font-size: 1.25rem;
    }

    .info-description {
        font-size: 0.95rem;
    }

    .faq-question {
        font-size: 1.15rem;
    }

    .faq-answer p {
        font-size: 0.95rem;
    }

    .cta-buttons {
        flex-direction: column;
        gap: 1rem;
    }

    .cta-primary,
    .cta-secondary,
    .cta-tertiary {
        width: 100%;
        max-width: 300px;
    }

    .contact-info,
    .info-card,
    .faq-item,
    .cta-section {
        padding: 1.75rem;
    }
}

@media (max-width: 480px) {
    .contact-section,
    .faq-section {
        padding: 2rem 0;
    }

    .faq-main-content {
        gap: 2rem;
    }

    .contact-methods {
        gap: 1.25rem;
    }

    .contact-method {
        padding: 0.875rem;
        gap: 0.875rem;
    }

    .contact-icon {
        width: 45px;
        height: 45px;
        font-size: 1.4rem;
    }

    .contact-title {
        font-size: 1.1rem;
    }

    .contact-link {
        font-size: 0.95rem;
    }

    .info-title {
        font-size: 1.2rem;
    }

    .info-description {
        font-size: 0.9rem;
    }

    .external-link {
        font-size: 1rem;
        padding: 0.65rem 1.25rem;
    }

    .faq-question {
        font-size: 1.1rem;
        margin-bottom: 0.875rem;
    }

    .faq-answer p {
        font-size: 0.9rem;
    }

    .cta-primary,
    .cta-secondary,
    .cta-tertiary {
        font-size: 0.95rem;
        padding: 0.75rem 1.5rem;
    }

    .contact-info,
    .info-card,
    .faq-item,
    .cta-section {
        padding: 1.5rem;
    }
}

@media (max-width: 360px) {
    .contact-section,
    .faq-section {
        padding: 1.5rem 0;
    }

    .contact-method {
        padding: 0.75rem;
        gap: 0.75rem;
    }

    .contact-icon {
        width: 40px;
        height: 40px;
        font-size: 1.25rem;
    }

    .contact-title {
        font-size: 1rem;
    }

    .contact-link {
        font-size: 0.9rem;
    }

    .info-title {
        font-size: 1.1rem;
    }

    .info-description {
        font-size: 0.85rem;
    }

    .external-link {
        font-size: 0.95rem;
        padding: 0.6rem 1rem;
    }

    .faq-question {
        font-size: 1rem;
    }

    .faq-answer p {
        font-size: 0.85rem;
    }

    .cta-primary,
    .cta-secondary,
    .cta-tertiary {
        font-size: 0.9rem;
        padding: 0.7rem 1.25rem;
    }

    .contact-info,
    .info-card,
    .faq-item,
    .cta-section {
        padding: 1.25rem;
    }
}

/* Footer Styles */
.footer {
    background-color: #111111;
    border-top: 1px solid #333333;
    padding: 2rem 0;
    margin-top: 2rem;
}

.footer-content {
    display: flex;
    justify-content: center;
    align-items: center;
}

.footer-links {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    flex-wrap: wrap;
}

.footer-link {
    font-family: 'Sarabun', sans-serif;
    font-size: 0.95rem;
    color: #e0e0e0;
    text-decoration: none;
    padding: 0.5rem 0;
    transition: all 0.3s ease;
    position: relative;
}

.footer-link:hover {
    color: #ffd700;
}

.footer-link:focus {
    outline: 2px solid #ffd700;
    outline-offset: 2px;
    border-radius: 4px;
}

/* Sticky Buttons Styles */
.sticky-buttons {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background-color: rgba(17, 17, 17, 0.95);
    backdrop-filter: blur(10px);
    border-top: 1px solid rgba(255, 215, 0, 0.2);
    padding: 0.75rem;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.3);
}

.sticky-btn {
    flex: 1;
    max-width: 200px;
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 0.9rem;
    text-decoration: none;
    text-align: center;
    padding: 0.875rem 1rem;
    border-radius: 8px;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sticky-btn-login {
    background-color: rgba(255, 255, 255, 0.05);
    color: #e0e0e0;
    border-color: rgba(255, 215, 0, 0.3);
}

.sticky-btn-login:hover {
    background-color: rgba(255, 215, 0, 0.1);
    color: #ffd700;
    border-color: rgba(255, 215, 0, 0.5);
    transform: translateY(-2px);
}

.sticky-btn-register {
    background-color: transparent;
    color: #ffd700;
    border-color: #ffd700;
}

.sticky-btn-register:hover {
    background-color: rgba(255, 215, 0, 0.1);
    transform: translateY(-2px);
}

.sticky-btn-credit {
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    border-color: transparent;
    box-shadow: 0 2px 10px rgba(255, 215, 0, 0.3);
}

.sticky-btn-credit:hover {
    background: linear-gradient(135deg, #ffed4e, #ffd700);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.4);
}

/* Focus styles for accessibility */
.sticky-btn:focus {
    outline: 2px solid #ffd700;
    outline-offset: 2px;
}

/* Add bottom padding to body to prevent content being hidden behind sticky buttons */
body {
    padding-bottom: 5rem;
}

/* Footer Responsive Design */
@media (max-width: 768px) {
    .footer {
        padding: 1.5rem 0;
    }

    .footer-links {
        flex-direction: column;
        gap: 1rem;
        text-align: center;
    }

    .footer-link {
        font-size: 0.9rem;
    }

    .sticky-buttons {
        padding: 0.5rem;
        gap: 0.5rem;
    }

    .sticky-btn {
        font-size: 0.85rem;
        padding: 0.75rem 0.5rem;
        max-width: none;
    }

    body {
        padding-bottom: 4.5rem;
    }
}

@media (max-width: 480px) {
    .footer {
        padding: 1.25rem 0;
    }

    .footer-links {
        gap: 0.75rem;
    }

    .footer-link {
        font-size: 0.85rem;
        padding: 0.375rem 0;
    }

    .sticky-buttons {
        padding: 0.375rem;
        gap: 0.375rem;
    }

    .sticky-btn {
        font-size: 0.8rem;
        padding: 0.625rem 0.375rem;
        border-radius: 6px;
    }

    body {
        padding-bottom: 4rem;
    }
}

@media (max-width: 360px) {
    .footer {
        padding: 1rem 0;
    }

    .footer-links {
        gap: 0.5rem;
    }

    .footer-link {
        font-size: 0.8rem;
    }

    .sticky-buttons {
        padding: 0.25rem;
        gap: 0.25rem;
    }

    .sticky-btn {
        font-size: 0.75rem;
        padding: 0.5rem 0.25rem;
    }
}

/* Login Page Styles */
.login-section {
    padding: 4rem 0;
    min-height: 100vh;
    display: flex;
    align-items: center;
    background: linear-gradient(135deg, rgba(10, 10, 10, 0.95), rgba(17, 17, 17, 0.95));
}

.login-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 500px;
    margin: 0 auto;
    padding: 2rem;
}

.login-title {
    font-family: 'Prompt', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 2rem;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1.2;
}

.login-form-wrapper {
    width: 100%;
    background-color: rgba(17, 17, 17, 0.8);
    border: 1px solid rgba(255, 215, 0, 0.2);
    border-radius: 12px;
    padding: 2.5rem;
    backdrop-filter: blur(10px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.login-form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.form-group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.form-label {
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.form-input {
    font-family: 'Sarabun', sans-serif;
    font-size: 1rem;
    padding: 1rem 1.25rem;
    border: 2px solid rgba(255, 215, 0, 0.3);
    border-radius: 8px;
    background-color: rgba(255, 255, 255, 0.05);
    color: #ffffff;
    transition: all 0.3s ease;
    outline: none;
}

.form-input::placeholder {
    color: rgba(255, 255, 255, 0.5);
}

.form-input:focus {
    border-color: #ffd700;
    background-color: rgba(255, 255, 255, 0.1);
    box-shadow: 0 0 0 3px rgba(255, 215, 0, 0.1);
}

.form-input:hover {
    border-color: rgba(255, 215, 0, 0.5);
}

.form-actions {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: 1rem;
}

.login-btn {
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 1.1rem;
    padding: 1rem 2rem;
    border: none;
    border-radius: 8px;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3);
    text-transform: none;
}

.login-btn:hover {
    background: linear-gradient(135deg, #ffed4e, #ffd700);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 215, 0, 0.4);
}

.login-btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 10px rgba(255, 215, 0, 0.3);
}

.register-btn {
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    padding: 1rem 2rem;
    border: 2px solid #ffd700;
    border-radius: 8px;
    background-color: transparent;
    color: #ffd700;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-block;
}

.register-btn:hover {
    background-color: rgba(255, 215, 0, 0.1);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.2);
}

.register-btn:active {
    transform: translateY(0);
}

/* Focus styles for accessibility */
.login-btn:focus,
.register-btn:focus {
    outline: 2px solid #ffd700;
    outline-offset: 2px;
}

/* Login Page Responsive Design */
@media (max-width: 768px) {
    .login-section {
        padding: 2rem 0;
        min-height: calc(100vh - 8rem);
    }

    .login-container {
        padding: 1rem;
    }

    .login-title {
        font-size: 1.5rem;
        margin-bottom: 1.5rem;
    }

    .login-form-wrapper {
        padding: 1.5rem;
    }

    .form-input {
        padding: 0.875rem 1rem;
        font-size: 1rem;
    }

    .login-btn,
    .register-btn {
        padding: 0.875rem 1.5rem;
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .login-container {
        max-width: 100%;
        padding: 0.5rem;
    }

    .login-title {
        font-size: 1.25rem;
        line-height: 1.3;
    }

    .login-form-wrapper {
        padding: 1.25rem;
        border-radius: 8px;
    }

    .form-input {
        padding: 0.75rem 0.875rem;
        font-size: 0.95rem;
    }

    .login-btn,
    .register-btn {
        padding: 0.75rem 1.25rem;
        font-size: 0.95rem;
    }

    .form-actions {
        gap: 0.75rem;
    }

    body {
        padding-bottom: 3.5rem;
    }
}

/* Register Page Styles */
.register-section {
    background-color: #0a0a0a;
    min-height: calc(100vh - 120px);
    padding: 4rem 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.register-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 500px;
    margin: 0 auto;
    gap: 2.5rem;
}

.register-title {
    font-family: 'Prompt', sans-serif;
    font-size: 2.5rem;
    font-weight: 700;
    text-align: center;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1.2;
    margin-bottom: 1rem;
}

.register-form-wrapper {
    width: 100%;
    background-color: rgba(17, 17, 17, 0.8);
    border: 1px solid rgba(255, 215, 0, 0.2);
    border-radius: 12px;
    padding: 2rem;
    backdrop-filter: blur(10px);
    box-shadow: 0 8px 32px rgba(255, 215, 0, 0.1);
}

.register-form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.register-btn {
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 1.1rem;
    padding: 1rem 2rem;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3);
}

.register-btn:hover {
    background: linear-gradient(135deg, #ffed4e, #ffd700);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 215, 0, 0.4);
}

.register-btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 10px rgba(255, 215, 0, 0.3);
}

.login-btn-outline {
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    padding: 1rem 2rem;
    background-color: transparent;
    color: #ffd700;
    border: 2px solid #ffd700;
    border-radius: 8px;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    transition: all 0.3s ease;
    cursor: pointer;
}

.login-btn-outline:hover {
    background-color: rgba(255, 215, 0, 0.1);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.2);
}

.login-btn-outline:active {
    transform: translateY(0);
}

/* Register Page Responsive Design */
@media (max-width: 1024px) {
    .register-section {
        padding: 3rem 0;
    }

    .register-title {
        font-size: 2.25rem;
    }

    .register-form-wrapper {
        padding: 1.75rem;
    }
}

@media (max-width: 768px) {
    .register-section {
        padding: 2.5rem 0;
        min-height: calc(100vh - 100px);
    }

    .register-container {
        gap: 2rem;
    }

    .register-title {
        font-size: 2rem;
    }

    .register-form-wrapper {
        padding: 1.5rem;
        border-radius: 10px;
    }

    .register-btn,
    .login-btn-outline {
        padding: 0.875rem 1.5rem;
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .register-section {
        padding: 2rem 0;
        min-height: calc(100vh - 80px);
    }

    .register-container {
        gap: 1.5rem;
    }

    .register-title {
        font-size: 1.75rem;
        line-height: 1.3;
    }

    .register-form-wrapper {
        padding: 1.25rem;
        border-radius: 8px;
    }

    .register-form {
        gap: 1.25rem;
    }

    .register-btn,
    .login-btn-outline {
        padding: 0.75rem 1.25rem;
        font-size: 0.95rem;
    }
}

@media (max-width: 360px) {
    .register-section {
        padding: 1.5rem 0;
    }

    .register-title {
        font-size: 1.5rem;
    }

    .register-form-wrapper {
        padding: 1rem;
    }

    .register-btn,
    .login-btn-outline {
        padding: 0.675rem 1rem;
        font-size: 0.9rem;
    }
}
/* === Promotion Page Styles === */

/* Promotion Hero Section */
.promotion-hero {
    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #1a1a1a 100%);
    padding: 6rem 0 4rem;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.promotion-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(ellipse at center, rgba(255, 215, 0, 0.1) 0%, transparent 70%);
    pointer-events: none;
}

.promotion-hero-title {
    font-size: 3rem;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 2rem;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1.2;
}

.promotion-hero-description {
    font-size: 1.125rem;
    color: #e0e0e0;
    line-height: 1.8;
    max-width: 900px;
    margin: 0 auto;
}

/* Section Common Styles */
.section-content {
    padding: 4rem 0;
}

.section-header {
    text-align: center;
    margin-bottom: 3rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.section-icon {
    font-size: 3rem;
    filter: drop-shadow(0 4px 8px rgba(255, 215, 0, 0.3));
}

.section-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #ffffff;
    text-align: center;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1.3;
}

/* Welcome Bonus Section */
.welcome-bonus {
    background: linear-gradient(135deg, #0f0f0f 0%, #1a1a1a 50%, #0f0f0f 100%);
    border-top: 1px solid #333333;
    border-bottom: 1px solid #333333;
}

.bonus-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 3rem;
    margin-top: 2rem;
}

.bonus-subtitle, .vip-subtitle, .slot-subtitle, .access-subtitle, .weekly-subtitle, .casino-subtitle {
    font-size: 1.75rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
}

.bonus-description, .vip-description, .slot-description, .access-description, .weekly-description, .casino-description {
    font-size: 1.125rem;
    color: #e0e0e0;
    line-height: 1.8;
    margin-bottom: 2rem;
}

.bonus-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
    margin-bottom: 2rem;
}

.bonus-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.5rem;
    background: rgba(255, 215, 0, 0.05);
    border-radius: 12px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    transition: all 0.3s ease;
}

.bonus-item:hover {
    background: rgba(255, 215, 0, 0.1);
    border-color: rgba(255, 215, 0, 0.4);
    transform: translateY(-2px);
}

.bonus-icon {
    font-size: 2rem;
    min-width: 2rem;
}

.bonus-name {
    font-size: 1.125rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.5rem;
}

.bonus-value {
    font-size: 1rem;
    color: #e0e0e0;
    line-height: 1.6;
}

.bonus-terms {
    background: rgba(17, 17, 17, 0.8);
    padding: 2rem;
    border-radius: 12px;
    border: 1px solid #333333;
}

.terms-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 1.5rem;
}

.terms-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.term-item {
    padding: 0.75rem 0;
    border-bottom: 1px solid #333333;
    color: #e0e0e0;
    position: relative;
    padding-left: 1.5rem;
}

.term-item:last-child {
    border-bottom: none;
}

.term-item::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #ffd700;
    font-weight: 700;
}

/* VIP Zone Section */
.vip-zone {
    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #1a1a1a 100%);
}

.vip-benefits-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    margin: 2rem 0;
}

.vip-benefit {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: rgba(255, 215, 0, 0.05);
    border-radius: 12px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    transition: all 0.3s ease;
}

.vip-benefit:hover {
    background: rgba(255, 215, 0, 0.1);
    border-color: rgba(255, 215, 0, 0.4);
    transform: translateY(-2px);
}

.benefit-icon {
    font-size: 1.5rem;
    min-width: 1.5rem;
}

.benefit-name {
    font-size: 1.125rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.benefit-desc {
    font-size: 0.9rem;
    color: #e0e0e0;
}

/* Slot Promotions Section */
.slot-promotions {
    background: linear-gradient(135deg, #0f0f0f 0%, #1a1a1a 50%, #0f0f0f 100%);
    border-top: 1px solid #333333;
    border-bottom: 1px solid #333333;
}

.slot-promos {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    margin: 2rem 0;
}

.slot-promo {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: rgba(255, 215, 0, 0.05);
    border-radius: 12px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    transition: all 0.3s ease;
}

.slot-promo:hover {
    background: rgba(255, 215, 0, 0.1);
    border-color: rgba(255, 215, 0, 0.4);
    transform: translateY(-2px);
}

.promo-icon {
    font-size: 1.5rem;
    min-width: 1.5rem;
}

.promo-name {
    font-size: 1.125rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.promo-desc {
    font-size: 0.9rem;
    color: #e0e0e0;
}

/* Access Section */
.access-section {
    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #1a1a1a 100%);
}

.channels-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    margin: 2rem 0;
}

.channel-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: rgba(255, 215, 0, 0.05);
    border-radius: 12px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    transition: all 0.3s ease;
}

.channel-item:hover {
    background: rgba(255, 215, 0, 0.1);
    border-color: rgba(255, 215, 0, 0.4);
    transform: translateY(-2px);
}

.channel-icon {
    font-size: 1.5rem;
    min-width: 1.5rem;
}

.channel-name {
    font-size: 1.125rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.channel-url, .channel-desc {
    font-size: 0.9rem;
    color: #e0e0e0;
}

/* Weekly Promotions Section */
.weekly-promotions {
    background: linear-gradient(135deg, #0f0f0f 0%, #1a1a1a 50%, #0f0f0f 100%);
    border-top: 1px solid #333333;
    border-bottom: 1px solid #333333;
}

.schedule-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    margin: 2rem 0;
}

.day-promo {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: rgba(255, 215, 0, 0.05);
    border-radius: 12px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    transition: all 0.3s ease;
}

.day-promo:hover {
    background: rgba(255, 215, 0, 0.1);
    border-color: rgba(255, 215, 0, 0.4);
    transform: translateY(-2px);
}

.day-icon {
    font-size: 1.5rem;
    min-width: 1.5rem;
}

.day-name {
    font-size: 1.125rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.day-offer {
    font-size: 0.9rem;
    color: #e0e0e0;
}

.monthly-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 2rem 0;
}

.monthly-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: rgba(255, 215, 0, 0.05);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    transition: all 0.3s ease;
}

.monthly-item:hover {
    background: rgba(255, 215, 0, 0.1);
    border-color: rgba(255, 215, 0, 0.4);
}

.monthly-icon {
    font-size: 1.25rem;
    min-width: 1.25rem;
}

.monthly-text {
    color: #e0e0e0;
    font-size: 1rem;
}

/* Casino Promotions Section */
.casino-promotions {
    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #1a1a1a 100%);
}

.casino-promos-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    margin-top: 2rem;
}

.casino-promos {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    margin: 2rem 0;
}

.casino-promo {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem;
    background: rgba(255, 215, 0, 0.05);
    border-radius: 12px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    transition: all 0.3s ease;
}

.casino-promo:hover {
    background: rgba(255, 215, 0, 0.1);
    border-color: rgba(255, 215, 0, 0.4);
    transform: translateY(-2px);
}

.casino-promo-icon {
    font-size: 1.5rem;
    min-width: 1.5rem;
}

.casino-promo-name {
    font-size: 1rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.casino-promo-desc {
    font-size: 0.875rem;
    color: #e0e0e0;
}

.casino-benefits {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 2rem 0;
}

.casino-benefit {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: rgba(255, 215, 0, 0.05);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    transition: all 0.3s ease;
}

.casino-benefit:hover {
    background: rgba(255, 215, 0, 0.1);
    border-color: rgba(255, 215, 0, 0.4);
}

.casino-benefit-icon {
    font-size: 1.25rem;
    min-width: 1.25rem;
}

.casino-benefit-text {
    color: #e0e0e0;
    font-size: 0.9rem;
}

/* Promotion CTA Button */
.promotion-cta-button {
    display: inline-block;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    color: #000000;
    text-decoration: none;
    padding: 1rem 2rem;
    border-radius: 25px;
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3);
    text-align: center;
    margin-top: 1rem;
}

.promotion-cta-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 215, 0, 0.4);
    background: linear-gradient(135deg, #ffed4e, #ffd700);
}

/* FAQ Section */
.promotion-faq {
    background: linear-gradient(135deg, #0f0f0f 0%, #1a1a1a 50%, #0f0f0f 100%);
    border-top: 1px solid #333333;
    border-bottom: 1px solid #333333;
}

.faq-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-top: 2rem;
}

.faq-item {
    background: rgba(17, 17, 17, 0.8);
    border-radius: 12px;
    border: 1px solid #333333;
    overflow: hidden;
    transition: all 0.3s ease;
}

.faq-item:hover {
    border-color: rgba(255, 215, 0, 0.4);
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.1);
}

.faq-question {
    font-size: 1.25rem;
    font-weight: 700;
    color: #ffd700;
    padding: 1.5rem;
    margin: 0;
    background: rgba(255, 215, 0, 0.05);
    border-bottom: 1px solid #333333;
}

.faq-answer {
    padding: 1.5rem;
}

.faq-answer p {
    color: #e0e0e0;
    line-height: 1.8;
    margin: 0;
}

.faq-final-cta {
    text-align: center;
    margin-top: 3rem;
}

/* Disclaimer Section */
.disclaimer {
    background: rgba(17, 17, 17, 0.9);
    border-top: 1px solid #333333;
    padding: 3rem 0;
}

.disclaimer-content {
    text-align: center;
    max-width: 900px;
    margin: 0 auto;
}

.disclaimer-note, .disclaimer-responsible {
    color: #cccccc;
    font-size: 0.9rem;
    line-height: 1.8;
    margin-bottom: 1.5rem;
}

.disclaimer-responsible {
    margin-bottom: 0;
    border-top: 1px solid #333333;
    padding-top: 1.5rem;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .bonus-grid, .casino-promos-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .section-title {
        font-size: 2.25rem;
    }
}

@media (max-width: 768px) {
    .promotion-hero {
        padding: 4rem 0 3rem;
    }

    .promotion-hero-title {
        font-size: 2rem;
        margin-bottom: 1.5rem;
    }

    .promotion-hero-description {
        font-size: 1rem;
    }

    .section-title {
        font-size: 1.875rem;
    }

    .bonus-subtitle, .vip-subtitle, .slot-subtitle,
    .access-subtitle, .weekly-subtitle, .casino-subtitle {
        font-size: 1.5rem;
    }

    .bonus-list, .vip-benefits-list, .slot-promos,
    .channels-grid, .schedule-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .casino-promos {
        grid-template-columns: 1fr;
    }

    .bonus-item, .vip-benefit, .slot-promo,
    .channel-item, .day-promo, .casino-promo {
        padding: 1.25rem;
    }

    .section-content {
        padding: 3rem 0;
    }

    .section-header {
        margin-bottom: 2rem;
    }

    .faq-question {
        font-size: 1.125rem;
        padding: 1.25rem;
    }

    .faq-answer {
        padding: 1.25rem;
    }
}

@media (max-width: 480px) {
    .promotion-hero-title {
        font-size: 1.75rem;
    }

    .section-title {
        font-size: 1.625rem;
    }

    .bonus-item, .vip-benefit, .slot-promo,
    .channel-item, .day-promo, .casino-promo {
        flex-direction: column;
        text-align: center;
        gap: 0.75rem;
    }

    .promotion-cta-button {
        padding: 0.875rem 1.5rem;
        font-size: 0.9rem;
    }

    .section-icon {
        font-size: 2.5rem;
    }
}

/* Legal Content Pages Styles */
.legal-content {
    background-color: #0a0a0a;
    padding: 4rem 0;
    min-height: calc(100vh - 200px);
}

.legal-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 20px;
}

.legal-header {
    text-align: center;
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #333333;
}

.legal-title {
    font-family: 'Prompt', sans-serif;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1rem;
    background: linear-gradient(135deg, #ffd700, #ffed4e);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.legal-meta {
    font-family: 'Sarabun', sans-serif;
    font-size: 1rem;
    color: #b0b0b0;
    margin-bottom: 0.5rem;
}

.legal-body {
    max-width: 900px;
    margin: 0 auto;
}

.legal-body h2 {
    font-family: 'Prompt', sans-serif;
    font-size: 1.75rem;
    font-weight: 600;
    color: #ffd700;
    margin-top: 3rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid rgba(255, 215, 0, 0.3);
}

.legal-body h3 {
    font-family: 'Prompt', sans-serif;
    font-size: 1.375rem;
    font-weight: 600;
    color: #ffed4e;
    margin-top: 2.5rem;
    margin-bottom: 1rem;
}

.legal-body h4 {
    font-family: 'Prompt', sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    color: #e0e0e0;
    margin-top: 2rem;
    margin-bottom: 0.75rem;
}

.legal-body p {
    font-family: 'Sarabun', sans-serif;
    font-size: 1rem;
    line-height: 1.8;
    color: #e0e0e0;
    margin-bottom: 1.5rem;
    text-align: left;
}

.legal-body ul, .legal-body ol {
    font-family: 'Sarabun', sans-serif;
    font-size: 1rem;
    line-height: 1.8;
    color: #e0e0e0;
    margin-bottom: 1.5rem;
    padding-left: 2rem;
}

.legal-body li {
    margin-bottom: 0.75rem;
}

.legal-body ul li {
    list-style-type: disc;
}

.legal-body ol li {
    list-style-type: decimal;
}

.legal-body strong {
    color: #ffd700;
    font-weight: 600;
}

.legal-body em {
    color: #ffed4e;
    font-style: italic;
}

.legal-body .highlight {
    background-color: rgba(255, 215, 0, 0.1);
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    color: #ffd700;
}

.legal-section {
    margin-bottom: 3rem;
    padding: 2rem;
    background-color: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.legal-section:last-child {
    margin-bottom: 0;
}

/* Responsive Design for Legal Pages */
@media (max-width: 768px) {
    .legal-content {
        padding: 3rem 0;
    }

    .legal-wrapper {
        padding: 0 15px;
    }

    .legal-title {
        font-size: 2rem;
    }

    .legal-body h2 {
        font-size: 1.5rem;
        margin-top: 2.5rem;
    }

    .legal-body h3 {
        font-size: 1.25rem;
        margin-top: 2rem;
    }

    .legal-body h4 {
        font-size: 1.1rem;
        margin-top: 1.5rem;
    }

    .legal-section {
        padding: 1.5rem;
        margin-bottom: 2rem;
    }

    .legal-body ul, .legal-body ol {
        padding-left: 1.5rem;
    }
}

@media (max-width: 480px) {
    .legal-content {
        padding: 2rem 0;
    }

    .legal-wrapper {
        padding: 0 10px;
    }

    .legal-title {
        font-size: 1.75rem;
    }

    .legal-header {
        margin-bottom: 2rem;
        padding-bottom: 1.5rem;
    }

    .legal-body h2 {
        font-size: 1.375rem;
        margin-top: 2rem;
    }

    .legal-body h3 {
        font-size: 1.125rem;
        margin-top: 1.5rem;
    }

    .legal-body p, .legal-body ul, .legal-body ol {
        font-size: 0.95rem;
        line-height: 1.7;
    }

    .legal-section {
        padding: 1.25rem;
        margin-bottom: 1.5rem;
    }
}
