
        :root {
            /* Color Palette */
            --primary-blue: #0A3A66;
            --primary-blue-hover: #072847;
            --accent-gold: #D4AF37;
            --accent-gold-hover: #b5952f;
            --text-dark: #2C3E50;
            --text-muted: #6c757d;
            --text-light: #F8F9FA;
            --bg-light: #F8FBFF;
            --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            --main-font:'IBM Plex Sans Thai',sans-serif;

        }

        body,
        html {
            font-family:var(--main-font);
            color: var(--text-dark);
            background-color: #ffffff;
            scroll-behavior: smooth;
            overflow-x: hidden;
        }

        /* Typography */
        h1, h2, h3, h4, h5, h6 {
            font-weight: 700;
            color: var(--primary-blue);
            line-height: 1.3;
        }

        .text-gold { color: var(--accent-gold) !important; }
        .bg-blue { background-color: var(--primary-blue) !important; }
        .bg-gold { background-color: var(--accent-gold) !important; }

        /* Buttons */
        .btn-gold {
            background-color: var(--accent-gold);
            color: #fff;
            border: none;
            padding: 12px 28px;
            font-weight: 600;
            transition: var(--transition);
            box-shadow: 0 4px 15px rgba(212, 175, 55, 0.3);
        }

        .btn-gold:hover {
            background-color: var(--accent-gold-hover);
            color: #fff;
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(212, 175, 55, 0.4);
        }

        .btn-outline-gold {
            border: 2px solid var(--accent-gold);
            color: var(--accent-gold);
            padding: 10px 24px;
            font-weight: 600;
            transition: var(--transition);
        }

        .btn-outline-gold:hover {
            background-color: var(--accent-gold);
            color: #fff;
        }

        /* Navbar (No fixed-top) */
        .navbar {
            padding: 5px 0;
            transition: var(--transition);
            border-bottom: 1px solid rgba(0,0,0,0.05);
        }

        .navbar-brand { display: flex; align-items: center; gap: 12px; }
        .navbar-brand .logo-icon { font-size: 2.2rem; color: var(--accent-gold); line-height: 1; }
        .navbar-brand .brand-text-main { font-size: 1.15rem; font-weight: 600; color: var(--primary-blue); line-height: 1.1; }
        .navbar-brand .brand-text-sub { font-size: 0.75rem; color: var(--text-muted); text-transform: uppercase; }

        .nav-link {
            font-weight: 700;
            color: var(--text-dark) !important;
            margin: 0 8px;
            transition: var(--transition);
        }
        .nav-link:hover, .nav-link.active { color: var(--accent-gold) !important; }

        /* Navbar Dropdown */
        .dropdown-toggle::after {
            display: none !important; /* ซ่อนลูกศร default ของ Bootstrap */
        }
        
        .dropdown-menu {
            border-radius: 12px;
            padding: 10px 0;
            animation: fadeInUp 0.3s ease;
        }
        
        .dropdown-item {
            font-weight: 500;
            font-size: 0.95rem;
            color: var(--text-dark);
            padding: 8px 24px;
            transition: var(--transition);
        }
        
        .dropdown-item:hover, .dropdown-item:focus {
            background-color: rgba(212, 175, 55, 0.1);
            color: var(--accent-gold);
        }

        /* Hero Section (Eventpop Style) */
        .hero-section {
            padding:30px 0; /* ลดช่องไฟบน-ล่างให้กระชับลง */
            background: 
                /* Texture ลายจุดจางๆ ให้ดูมีมิติ */
                url('data:image/svg+xml,%3Csvg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E%3Cg fill="%23ffffff" fill-opacity="0.04" fill-rule="evenodd"%3E%3Ccircle cx="3" cy="3" r="3"/%3E%3Ccircle cx="13" cy="13" r="3"/%3E%3C/g%3E%3C/svg%3E'),
                /* พื้นหลังไล่สี Navy Blue Fade */
                linear-gradient(135deg, #021426 0%, #0d467a 100%);
            overflow: hidden;
            position: relative;
        }

        .hero-slider {
            position: relative;
        }

        .hero-slide-item {
            padding: 15px 0;
            transition: all 0.5s ease;
            opacity: 0.4;
            transform: scale(0.85); /* Shrink non-centered items */
        }

        /* Center item styling */
        .owl-item.active.center .hero-slide-item {
            opacity: 1;
            transform: scale(1);
        }

        .slide-content-wrapper {
            position: relative;
            height: 100%; /* ลดความสูงของแบนเนอร์ลงจาก 480px */
            border-radius: 20px;
            overflow: hidden;
            box-shadow: 0 15px 35px rgba(0,0,0,0.1);
            display: flex;
            align-items: center;
        }

        .slide-bg {
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            background-size: cover;
            background-position: center;
            z-index: 1;
        }

        .slide-overlay {
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            background: linear-gradient(to right, rgba(10,58,102,0.95) 0%, rgba(10,58,102,0.4) 100%);
            z-index: 2;
        }

        .slide-text {
            position: relative;
            z-index: 3;
            padding: 0 60px;
            width: 100%;
        }

        .hero-section h1 {
            color: #fff;
            font-size: 2.8rem; /* ปรับขนาดฟอนต์ให้พอดีกับกรอบที่แคบลง */
            margin-bottom: 15px;
            text-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
            line-height: 1.2;
        }

        .hero-subtitle {
            font-size: 1.05rem;
            color: rgba(255, 255, 255, 0.9);
            margin-bottom: 20px;
            max-width: 600px;
            line-height: 1.5;
        }

        /* Owl Carousel Customization (Eventpop style) */
        .hero-slider .owl-nav {
            position: absolute;
            top: 50%;
            width: 100%;
            transform: translateY(-50%);
            display: flex;
            justify-content: space-between;
            pointer-events: none;
            z-index: 10;
            padding: 0 20px;
        }
        
        .hero-slider .owl-nav button {
            pointer-events: auto;
            width: 50px !important;
            height: 50px !important;
            background: rgba(255, 255, 255, 0.9) !important;
            color: var(--primary-blue) !important;
            border-radius: 50% !important;
            box-shadow: 0 4px 15px rgba(0,0,0,0.15);
            display: flex !important;
            align-items: center;
            justify-content: center;
            font-size: 24px !important;
            transition: var(--transition) !important;
            margin: 0 !important;
        }

        .hero-slider .owl-nav button:hover {
            background: var(--primary-blue) !important;
            color: #fff !important;
            transform: scale(1.1);
        }

        .hero-slider .owl-dots {
            text-align: center;
            margin-top: 10px; /* เพิ่มระยะห่างจุดไข่ปลาดูกับรูปภาพ */
        }
        
        .hero-slider .owl-dot span {
            width: 8px !important;
            height: 8px !important;
            background: #cbd5e1 !important;
            margin: 0 5px !important;
            border-radius: 50%;
            transition: all 0.3s ease !important;
        }
        
        .hero-slider .owl-dot.active span {
            background: var(--accent-gold) !important;
            width: 24px !important;
            border-radius: 10px !important;
        }

        @keyframes fadeInUp {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }

        /* Sections */
        .section-padding { padding: 50px 0; }
        
        .section-title {
            text-align: center;
            margin-bottom: 60px;
        }

        .section-title h2 {
            font-size: 2.5rem;
            position: relative;
            display: inline-block;
            padding-bottom: 20px;
        }

        .section-title h2::after {
            content: '';
            position: absolute;
            width: 80px;
            height: 4px;
            background-color: var(--accent-gold);
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            border-radius: 2px;
        }
        /* Meeting Cards */
        .meeting-card {
            border: none;
            border-radius: 15px;
            overflow: hidden;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
            transition: var(--transition);
            background: #fff;
        }

        .meeting-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
        }

        .meeting-card img {
            height: 220px;
            object-fit: cover;
        }

        .type-badge {
            position: absolute;
            top: 15px;
            left: 15px;
            padding: 6px 14px;
            border-radius: 8px;
            font-weight: 600;
            font-size: 0.85rem;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            z-index: 2;
            color: #fff;
            box-shadow: 0 4px 10px rgba(0,0,0,0.1);
        }

        .badge-meeting {
            background-color: var(--primary-blue);
        }

        .badge-news {
            background-color: var(--accent-gold);
        }

        /* Member Cards */
        .member-card {
            background: #fff;
            border-radius: 20px;
            padding: 50px 35px;
            text-align: center;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.04);
            height: 100%;
            border: 1px solid rgba(0, 0, 0, 0.05);
            transition: var(--transition);
        }

        .member-card:hover {
            border-color: var(--accent-gold);
            background: #fff;
        }

        .member-card.featured {
            background: var(--primary-blue);
            color: #fff;
        }

        .member-card.featured h4 { color: #fff; }
        .member-card.featured .text-muted { color: rgba(255,255,255,0.7) !important; }

        /* Partner Slider */
        .partners-section {
            padding: 80px 0;
            background: #fff;
            border-top: 1px solid #f0f0f0;
        }

        .logo-slider {
            overflow: hidden;
            position: relative;
            padding: 20px 0;
        }

        .logo-track {
            display: flex;
            width: calc(250px * 12);
            animation: scroll 40s linear infinite;
        }

        .logo-item {
            width: 250px;
            padding: 0 30px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .logo-item img {
            max-width: 100%;
            height: auto;
            max-height: 120px;
            filter: grayscale(0);
            opacity: 1;
            transition: var(--transition);
        }

        .logo-item:hover img {
            filter: grayscale(0);
            opacity: 1;
        }

        @keyframes scroll {
            0% { transform: translateX(0); }
            100% { transform: translateX(calc(-250px * 6)); }
        }

        /* Contact */
        .contact-card {
            background: #fff;
            padding: 40px;
            border-radius: 20px;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
        }

        .info-item {
            display: flex;
            gap: 20px;
            margin-bottom: 30px;
        }

        .info-item .icon-box {
            width: 54px;
            height: 54px;
            background: rgba(212, 175, 55, 0.1);
            color: var(--accent-gold);
            border-radius: 12px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.5rem;
            flex-shrink: 0;
        }

        /* Footer */
        footer {
            background: #051c31;
            color: rgba(255, 255, 255, 0.8);
            padding: 80px 0 30px;
        }

        .footer-link {
            color: rgba(255, 255, 255, 0.6);
            text-decoration: none;
            transition: var(--transition);
            display: block;
            margin-bottom: 12px;
        }

        .footer-link:hover {
            color: var(--accent-gold);
            padding-left: 5px;
        }

        .social-btn {
            width: 40px;
            height: 40px;
            background: rgba(255, 255, 255, 0.05);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            margin-right: 10px;
            color: #fff;
            text-decoration: none;
            transition: var(--transition);
        }

        .social-btn:hover {
            background: var(--accent-gold);
            color: #fff;
            transform: translateY(-3px);
        }

        /* Responsive */
        @media (max-width: 991.98px) {
            .hero-section h1 { font-size: 2.2rem; }
            .section-padding { padding: 40px 0; }
            
            .slide-text { padding: 0 30px; }
        }

        @media (max-width: 767.98px) {
            .hero-section h1 { font-size: 1.8rem; }
            .navbar-brand .brand-text-main { font-size: 1rem; }
            .navbar-brand .brand-text-sub { font-size: 0.65rem; }
            
            .slide-text { padding: 0 20px; }
            .hero-slider .owl-nav { display: none; } /* Hide arrows on mobile */
            .hero-subtitle { font-size: 0.95rem; margin-bottom: 15px; }
        }

        .breadcrumb-banner {
            padding: 30px 0; /* ทำให้ส่วนแบนเนอร์แคบลง */
            background-color: #16254e;
            color: #fff;
            position: relative;
        }

        .breadcrumb-banner h1 {
            color: #fff;
            font-size: 2.2rem;
            margin-bottom: 5px;
        }

        .breadcrumb-item a { color: var(--accent-gold); text-decoration: none; transition: var(--transition); }
        .breadcrumb-item a:hover { color: #fff; }
        .breadcrumb-item.active { color: rgba(255, 255, 255, 0.7); }
        .breadcrumb-item + .breadcrumb-item::before { color: rgba(255, 255, 255, 0.5); }

        .section-padding { padding: 80px 0; }
        
        .category-title {
            position: relative;
            display: inline-block;
            margin-bottom: 40px;
            padding-bottom: 15px;
        }

        .category-title::after {
            content: '';
            position: absolute;
            width: 60px;
            height: 4px;
            background-color: var(--accent-gold);
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            border-radius: 2px;
        }

        .committee-card {
            background: #fff;
            border-radius: 16px;
            overflow: hidden;
            box-shadow: 0 5px 25px rgba(0, 0, 0, 0.04);
            transition: var(--transition);
            border: 1px solid rgba(0,0,0,0.03);
            text-align: center;
            height: 100%;
        }

        .committee-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
            border-color: rgba(212, 175, 55, 0.3);
        }

        .committee-img-wrap {
            position: relative;
            padding-top: 100%; /* 1:1 Aspect Ratio */
            overflow: hidden;
            background-color: #f8f9fa;
        }

        .committee-img-wrap img {
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            object-fit: cover;
            object-position: top;
            transition: var(--transition);
        }

        .committee-card:hover .committee-img-wrap img {
            transform: scale(1.05);
        }

        .committee-info {
            padding: 25px 20px;
        }

        .committee-role {
            display: inline-block;
            color: var(--accent-gold);
            font-size: 0.85rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            margin-bottom: 10px;
            background: rgba(212, 175, 55, 0.1);
            padding: 4px 12px;
            border-radius: 20px;
        }

        .committee-name {
            font-size: 1.1rem;
            font-weight: 700;
            color: var(--primary-blue);
            margin-bottom: 5px;
        }
        
        .committee-degree {
            font-size: 0.85rem;
            color: var(--text-muted);
            margin-bottom: 0;
        }
        .sidebar-menu {
            background: #fff;
            border-radius: 16px;
            box-shadow: 0 5px 25px rgba(0, 0, 0, 0.04);
            border: 1px solid rgba(0,0,0,0.03);
            overflow: hidden;
            position: sticky;
            top: 100px; /* ให้เมนูติดหนึบเมื่อเลื่อนจอ */
        }

        .sidebar-title {
            background-color: var(--primary-blue);
            color: #fff;
            padding: 20px;
            font-size: 1.1rem;
            font-weight: 700;
            margin: 0;
        }

        .sidebar-link {
            display: block;
            padding: 15px 20px;
            color: var(--text-dark);
            font-weight: 500;
            border-bottom: 1px solid rgba(0,0,0,0.05);
            transition: var(--transition);
            text-decoration: none;
        }

        .sidebar-link:hover {
            color: var(--accent-gold);
            background-color: rgba(212, 175, 55, 0.05);
            padding-left: 25px;
        }

        .sidebar-link.active {
            color: var(--primary-blue);
            font-weight: 700;
            border-left: 4px solid var(--accent-gold);
            background-color: rgba(10, 58, 102, 0.03);
        }

        .sidebar-sub-menu {
            background-color: #fafbfc;
            padding: 10px 0;
            border-bottom: 1px solid rgba(0,0,0,0.05);
        }

        .sidebar-sub-link {
            display: flex;
            align-items: center;
            padding: 8px 20px 8px 40px;
            color: var(--text-muted);
            font-size: 0.95rem;
            text-decoration: none;
            transition: var(--transition);
        }

        .sidebar-sub-link::before {
            content: '';
            width: 6px;
            height: 6px;
            background-color: #cbd5e1;
            border-radius: 50%;
            margin-right: 10px;
            transition: var(--transition);
        }

        .sidebar-sub-link:hover, .sidebar-sub-link.active {
            color: var(--accent-gold);
            font-weight: 600;
        }

        .sidebar-sub-link.active::before {
            background-color: var(--accent-gold);
            transform: scale(1.5);
        }
        .dropdown-item.active, .dropdown-item:active {
            color: var(--bs-dropdown-link-active-color);
            text-decoration: none;
            background-color: #d4af37;
        }
        /* Hero Section (Slide) */
        .hero-section {
            background: linear-gradient(135deg, #031526 0%, #0A3A66 100%);
            position: relative;
            padding: 50px 0;
        }
        .hero-section::before {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            background-image: radial-gradient(rgba(255, 255, 255, 0.1) 1px, transparent 1px);
            background-size: 20px 20px;
            z-index: 1;
        }

        .hero-container { position: relative; z-index: 2; overflow: hidden; /* Prevent horizontal scroll bar from carousel */ }

        /* Owl Carousel Eventpop Style (Poster) */
        .hero-slide-item {
            padding: 15px 0;
            transition: all 0.5s ease;
            opacity: 0.4;
            transform: scale(0.85);
        }

        .hero-carousel .owl-item.active.center .hero-slide-item {
            opacity: 1;
            transform: scale(1);
        }
        
        .slide-content-wrapper {
            position: relative;
            /* เอาความสูงคงที่และ vh ออก เพื่อให้ความสูงปรับตามอัตราส่วนภาพ */
            width: 100%;
            display: block; 
            border-radius: 20px;
            overflow: hidden;
            box-shadow: 0 15px 35px rgba(0,0,0,0.3);
            /* ป้องกันไม่ให้มีพื้นที่ว่างใต้รูป */
            line-height: 0; 
        }
        
        .slide-content-wrapper img {
            width: 100%;
            height: auto; /* ให้ความสูงแปรผันตามความกว้างเพื่อรักษาสัดส่วน */
            display: block;
            transition: transform 0.5s ease;
        }

        .slide-content-wrapper:hover img {
            transform: scale(1.02);
        }

        /* Custom Owl Nav */
        .hero-carousel .owl-nav {
            position: absolute;
            top: 50%;
            width: 100%;
            transform: translateY(-50%);
            display: flex;
            justify-content: space-between;
            pointer-events: none; /* Let clicks pass through to slides */
            z-index: 10;
        }
        
        .hero-carousel .owl-nav button {
            pointer-events: auto; /* Re-enable clicks for buttons */
            width: 50px !important;
            height: 50px !important;
            background: rgba(255,255,255,0.9) !important;
            color: var(--primary-blue) !important;
            border-radius: 50% !important;
            box-shadow: 0 5px 15px rgba(0,0,0,0.2);
            font-size: 24px !important;
            transition: var(--transition);
            display: flex !important;
            align-items: center;
            justify-content: center;
        }
        .hero-carousel .owl-nav button:hover { background: var(--accent-gold) !important; color: #fff !important; }
        .hero-carousel .owl-prev { margin-left: 20px !important; }
        .hero-carousel .owl-next { margin-right: 20px !important; }
        
        .hero-carousel .owl-dots { margin-top: 25px !important; text-align: center; }
        .hero-carousel .owl-dot span { background: rgba(255,255,255,0.3) !important; width: 10px !important; height: 10px !important; transition: var(--transition) !important; margin: 0 5px !important; border-radius: 50%; display: inline-block;}
        .hero-carousel .owl-dot.active span { background: var(--accent-gold) !important; width: 25px !important; border-radius: 10px !important;}