
            :root {
                --primary: #00346f;
                --bg: #fafafa;
                --text: #333;
                --muted: #555;
                --radius: 12px;
                --shadow-sm: 0 4px 10px rgba(0, 0, 0, 0.05);
                --shadow-lg: 0 10px 25px rgba(0, 0, 0, 0.12);
                --transition: 0.3s ease;
            }
            *,
            *:before,
            *:after {
                margin: 0;
                padding: 0;
                box-sizing: border-box;
            }
            html {
                scroll-behavior: smooth;
            }
            body {
                font-family: "Inter", sans-serif;
                background: var(--bg);
                color: var(--text);
                line-height: 1.6;
            }
            img {
                max-width: 100%;
                display: block;
            }
            a {
                color: var(--primary);
                text-decoration: none;
                transition: color var(--transition);
            }
            .container {
                width: 95%;
                max-width: 1140px;
                margin: 0 auto;
                padding: 0 1rem;
            }

            @media (min-width: 576px) {
                .container {
                    width: 94%;
                    padding: 0 1.5rem;
                }
            }

            @media (min-width: 768px) {
                .container {
                    width: 92%;
                    padding: 0 2rem;
                }
            }

            @media (min-width: 992px) {
                .container {
                    width: 90%;
                    padding: 0;
                }
            }

            /* Simple button */
            .btn {
                display: inline-block;
                padding: 0.85rem 1.4rem;
                border-radius: 10px;
                background: var(--primary);
                color: #fff !important;
                font-weight: 600;
                box-shadow: var(--shadow-sm);
                transition:
                    transform var(--transition),
                    box-shadow var(--transition),
                    opacity var(--transition);
                -webkit-tap-highlight-color: transparent;
                touch-action: manipulation;
            }
            .btn:hover {
                transform: translateY(-2px);
                box-shadow: var(--shadow-lg);
                opacity: 0.95;
            }

            /* HEADER & NAV */
            header {
                position: sticky;
                top: 0;
                z-index: 1000;
                background: rgba(255, 255, 255, 0.85);
                backdrop-filter: blur(8px);
                box-shadow: var(--shadow-sm);
            }
            .nav-wrapper {
                display: flex;
                align-items: center;
                justify-content: space-between;
                padding: 0.8rem 0;
            }

            @media (min-width: 768px) {
                .nav-wrapper {
                    padding: 1rem 0;
                }
            }
            .logo-img {
                height: 32px;
                display: block;
            }

            @media (min-width: 768px) {
                .logo-img {
                    height: 36px;
                }
            }
            nav ul {
                list-style: none;
                display: flex;
                gap: 2rem;
            }
            nav a {
                font-weight: 500;
                position: relative;
                padding: 0.25rem 0;
            }
            nav a:after {
                content: "";
                position: absolute;
                width: 0;
                height: 2px;
                left: 0;
                bottom: -4px;
                background: var(--primary);
                transition: width var(--transition);
            }
            nav a:hover:after,
            nav a.active:after {
                width: 100%;
            }
            .burger {
                display: none;
                font-size: 1.6rem;
                cursor: pointer;
                color: var(--primary);
            }
            @media (max-width: 480px) {
                .nav-wrapper {
                    padding: 0.6rem 0;
                }
                .logo-img {
                    height: 28px;
                }
            }

            @media (max-width: 768px) {
                .burger {
                    display: block;
                }
                nav ul {
                    position: fixed;
                    top: 0;
                    right: -100%;
                    flex-direction: column;
                    gap: 1.5rem;
                    background: #fff;
                    height: 100vh;
                    width: min(280px, 85vw);
                    padding: 5rem 1.5rem;
                    transition: right 0.4s ease;
                    box-shadow: var(--shadow-lg);
                    z-index: 1001;
                }
                nav ul.open {
                    right: 0;
                }
            }

            /* HERO */
            #hero {
                position: relative;
                min-height: 60vh;
                display: flex;
                align-items: center;
                justify-content: center;
                text-align: center;
                color: #fff;
                overflow: hidden;
                background:
                    linear-gradient(rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0.55)),
                    url("./assets/img/bg1.jpg") center/cover no-repeat;
            }

            @media (min-width: 576px) {
                #hero {
                    min-height: 65vh;
                }
            }

            @media (min-width: 768px) {
                #hero {
                    min-height: 75vh;
                    background-attachment: fixed;
                }
            }
            .hero-inner {
                max-width: 820px;
                padding: 0 0.5rem;
            }

            @media (min-width: 576px) {
                .hero-inner {
                    padding: 0 1rem;
                }
            }
            .hero-inner h1 {
                font-size: clamp(1.8rem, 4.5vw, 3rem);
                margin-bottom: 1rem;
            }
            .subtitle {
                font-size: clamp(1rem, 3.5vw, 1.25rem);
                font-weight: 500;
                margin-bottom: 1rem;
                color: #f0f0f0;
            }
            .badge-theme {
                display: inline-block;
                background: rgba(255, 255, 255, 0.14);
                padding: 0.4rem 1rem;
                border-radius: 25px;
                margin-bottom: 1rem;
                font-weight: 500;
                backdrop-filter: blur(3px);
                font-size: 0.9rem;
            }

            @media (min-width: 576px) {
                .badge-theme {
                    padding: 0.55rem 1.3rem;
                    font-size: 1rem;
                }
            }
            .loc-date {
                font-size: clamp(0.85rem, 2.5vw, 0.95rem);
            }

            /* SECTIONS & COMPONENTS */
            section {
                padding: 2.5rem 0;
            }

            @media (min-width: 576px) {
                section {
                    padding: 3rem 0;
                }
            }

            @media (min-width: 768px) {
                section {
                    padding: 4rem 0;
                }
            }
            h2.section-title {
                text-align: center;
                font-size: clamp(1.5rem, 4vw, 2rem);
                margin-bottom: 1.8rem;
                color: var(--primary);
                position: relative;
            }

            @media (min-width: 768px) {
                h2.section-title {
                    margin-bottom: 2.2rem;
                }
            }
            h2.section-title:after {
                content: "";
                position: absolute;
                width: 60px;
                height: 3px;
                background: var(--primary);
                bottom: -10px;
                left: 50%;
                transform: translateX(-50%);
            }
            #about p {
                max-width: 750px;
                margin: 0 auto;
                color: var(--muted);
            }
            .card-grid {
                display: grid;
                gap: 1.5rem;
                grid-template-columns: 1fr;
            }

            @media (min-width: 576px) {
                .card-grid {
                    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
                }
            }
            .card {
                background: #fff;
                border-radius: var(--radius);
                padding: 1.5rem;
                box-shadow: var(--shadow-sm);
                transition:
                    transform var(--transition),
                    box-shadow var(--transition);
            }

            @media (min-width: 576px) {
                .card {
                    padding: 1.8rem;
                }
            }
            .card:hover {
                transform: translateY(-6px);
                box-shadow: var(--shadow-lg);
            }
            .card h3 {
                color: var(--primary);
                margin-bottom: 0.6rem;
                font-size: 1.15rem;
            }
            .card p {
                color: var(--muted);
                font-size: 0.95rem;
            }
            .speaker-grid {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
                gap: 1.5rem;
            }

            @media (min-width: 480px) {
                .speaker-grid {
                    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
                }
            }

            @media (min-width: 576px) {
                .speaker-grid {
                    gap: 2rem;
                }
            }

            @media (min-width: 768px) {
                .speaker-grid {
                    grid-template-columns: repeat(3, 1fr);
                }
            }

            @media (min-width: 1200px) {
                .speaker-grid {
                    grid-template-columns: repeat(6, 1fr);
                }
            }
            .speaker {
                text-align: center;
            }
            .speaker img {
                width: 120px;
                height: 120px;
                object-fit: cover;
                border-radius: 50%;
                border: 3px solid var(--primary);
                margin: 0 auto 1rem;
                transition:
                    transform var(--transition),
                    box-shadow var(--transition);
                display: block;
            }

            @media (min-width: 576px) {
                .speaker img {
                    width: 140px;
                    height: 140px;
                    border: 4px solid var(--primary);
                }
            }

            .speaker img:hover {
                transform: scale(1.05);
                box-shadow: 0 8px 25px rgba(0, 111, 106, 0.3);
            }
            .speaker h4 {
                font-size: clamp(0.95rem, 2.5vw, 1.05rem);
                color: var(--primary);
                margin-bottom: 0.3rem;
                line-height: 1.3;
            }
            .speaker span {
                font-size: clamp(0.8rem, 2vw, 0.9rem);
                color: var(--muted);
                line-height: 1.4;
            }
            .accordion {
                max-width: 900px;
                margin: 0 auto;
            }
            .acc-item + .acc-item {
                margin-top: 0.8rem;
            }
            .acc-header {
                background: #fff;
                padding: 0.8rem 1rem;
                border: 1px solid #e6e6e6;
                border-radius: var(--radius);
                cursor: pointer;
                position: relative;
                font-weight: 600;
                transition: background var(--transition);
                font-size: 0.95rem;
                -webkit-tap-highlight-color: transparent;
                touch-action: manipulation;
            }

            @media (min-width: 576px) {
                .acc-header {
                    padding: 0.9rem 1.3rem;
                    font-size: 1rem;
                }
            }
            .acc-header:hover {
                background: #f8f8f8;
            }
            .acc-header:after {
                content: "+";
                position: absolute;
                right: 1rem;
                font-size: 1.1rem;
                transition: transform var(--transition);
            }

            @media (min-width: 576px) {
                .acc-header:after {
                    right: 1.3rem;
                }
            }
            .acc-header.active:after {
                transform: rotate(45deg);
            }
            .acc-body {
                max-height: 0;
                overflow: hidden;
                background: #fff;
                border: 1px solid #e6e6e6;
                border-top: none;
                border-radius: 0 0 var(--radius) var(--radius);
                transition: max-height var(--transition);
            }
            .acc-body-inner {
                padding: 1rem;
                color: var(--muted);
                font-size: 0.9rem;
            }

            @media (min-width: 576px) {
                .acc-body-inner {
                    padding: 1rem 1.3rem;
                    font-size: 0.95rem;
                }
            }
            .acc-body ul {
                margin-left: 1.4rem;
                list-style: disc;
            }
            .table-container {
                overflow-x: auto;
            }
            table {
                width: 100%;
                border-collapse: separate;
                border-spacing: 0 0.6rem;
            }
            th,
            td {
                padding: 0.9rem 1rem;
            }
            th {
                background: rgba(0, 111, 106, 0.12);
                color: var(--primary);
                text-align: left;
                font-size: 0.95rem;
            }
            td {
                background: #fff;
                font-size: 0.9rem;
                box-shadow: var(--shadow-sm);
            }
            @media (max-width: 480px) {
                th,
                td {
                    padding: 0.7rem 0.8rem;
                    font-size: 0.85rem;
                }
            }

            @media (max-width: 600px) {
                table,
                thead {
                    display: none;
                }
                tbody,
                tr,
                td {
                    display: block;
                    width: 100%;
                }
                tr {
                    margin-bottom: 1.2rem;
                    border-radius: var(--radius);
                    overflow: hidden;
                }
                td {
                    box-shadow: none;
                    border: 1px solid #e6e6e6;
                    border-radius: 0;
                    margin: 0;
                }
                td:first-child {
                    background: rgba(0, 111, 106, 0.08);
                    font-weight: 600;
                    color: var(--primary);
                    border-radius: var(--radius) var(--radius) 0 0;
                }
                td:last-child {
                    border-radius: 0 0 var(--radius) var(--radius);
                }
            }
            .sponsor-category {
                text-align: center;
                color: var(--primary);
                font-size: 1.1rem;
                font-weight: 600;
                margin: 2rem 0 0.5rem;
            }
            .sponsor-category:first-of-type {
                margin-top: 1rem;
            }
            .sponsor-grid {
                display: flex;
                flex-wrap: wrap;
                gap: 1rem;
                justify-content: center;
                align-items: center;
                margin-top: 0.5rem;
            }

            @media (min-width: 576px) {
                .sponsor-grid {
                    gap: 1.5rem;
                }
            }
            .sponsor-grid img {
                width: 100px;
                filter: grayscale(100%);
                opacity: 0.8;
                transition:
                    filter var(--transition),
                    opacity var(--transition);
            }

            @media (min-width: 576px) {
                .sponsor-grid img {
                    width: 120px;
                }
            }
            .sponsor-grid img:hover,
            .sponsor-grid img:focus {
                filter: grayscale(0);
                opacity: 1;
            }
            .sponsor-grid img {
                -webkit-tap-highlight-color: transparent;
            }
            #map-wrap {
                position: relative;
                padding-bottom: 60%;
                height: 0;
                overflow: hidden;
                border-radius: var(--radius);
                box-shadow: var(--shadow-sm);
                cursor: pointer;
            }

            @media (min-width: 576px) {
                #map-wrap {
                    padding-bottom: 56%;
                }
            }
            #map-wrap iframe {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                border: 0;
            }
            #map-overlay {
                position: absolute;
                inset: 0;
                background: rgba(0, 0, 0, 0.35) url("./assets/img/bg1.jpg")
                    center/cover no-repeat;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #fff;
                font-size: clamp(0.9rem, 2.5vw, 1.1rem);
                backdrop-filter: blur(2px);
                transition: opacity var(--transition);
                padding: 1rem;
                text-align: center;
            }
            footer {
                background: #eaf7f6;
                text-align: center;
                padding: 1.5rem 0;
                font-size: clamp(0.8rem, 2vw, 0.9rem);
                color: var(--muted);
            }

            @media (min-width: 768px) {
                footer {
                    padding: 1.8rem 0;
                }
            }

            /* Activities Section */
            .activity-gallery {
                display: grid;
                grid-template-columns: 1fr;
                gap: 1rem;
            }
            @media (min-width: 576px) {
                .activity-gallery {
                    grid-template-columns: repeat(2, 1fr);
                }
            }
            @media (min-width: 992px) {
                .activity-gallery {
                    grid-template-columns: repeat(3, 1fr);
                }
            }
            .activity-img-wrap {
                overflow: hidden;
                border-radius: var(--radius);
                box-shadow: var(--shadow-sm);
            }
            .activity-img-wrap img {
                width: 100%;
                height: 200px;
                object-fit: cover;
                transition: transform 0.5s ease;
            }
            @media (min-width: 768px) {
                .activity-img-wrap img {
                    height: 220px;
                }
            }
            .activity-img-wrap:hover img {
                transform: scale(1.08);
            }

            /* Additional mobile typography improvements */
            @media (max-width: 480px) {
                .hero-inner h1 {
                    line-height: 1.2;
                }

                .subtitle {
                    line-height: 1.4;
                    margin-bottom: 1.5rem;
                }

                h2.section-title {
                    line-height: 1.3;
                }

                .card h3 {
                    font-size: 1.1rem;
                    line-height: 1.3;
                }

                .card p {
                    line-height: 1.5;
                }

                .speaker img {
                    width: 100px;
                    height: 100px;
                    border: 2px solid var(--primary);
                }

                .speaker h4 {
                    font-size: 0.95rem;
                }

                .speaker span {
                    font-size: 0.8rem;
                }
            }

            /* Improved button responsiveness */
            @media (max-width: 480px) {
                .btn {
                    padding: 0.75rem 1.2rem;
                    font-size: 0.9rem;
                }
            }

            /* Better spacing for small screens */
            @media (max-width: 480px) {
                #about p {
                    font-size: 0.95rem;
                    line-height: 1.6;
                }

                .acc-body-inner {
                    line-height: 1.5;
                }

                /* Improve touch targets */
                nav a {
                    padding: 12px 8px;
                    font-size: 1.05rem;
                }

                .burger {
                    padding: 12px;
                }
            }

            /* Focus styles for accessibility */
            .btn:focus,
            .acc-header:focus,
            nav a:focus {
                outline: 2px solid var(--primary);
                outline-offset: 2px;
            }

            /* Reduce motion for users who prefer it */
            @media (prefers-reduced-motion: reduce) {
                *,
                *::before,
                *::after {
                    animation-duration: 0.01ms !important;
                    animation-iteration-count: 1 !important;
                    transition-duration: 0.01ms !important;
                }
            }

            /* Hotels Section */
            #hotels {
                padding: 4rem 0;
            }
            .hotels-grid {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
                gap: 2rem;
            }
            .hotel-card {
                background: #fff;
                border-radius: var(--radius);
                box-shadow: var(--shadow-sm);
                overflow: hidden;
                transition:
                    transform var(--transition),
                    box-shadow var(--transition);
            }
            .hotel-card:hover {
                transform: translateY(-5px);
                box-shadow: var(--shadow-lg);
            }
            .hotel-img {
                width: 100%;
                height: 200px;
                overflow: hidden;
            }
            .hotel-img img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                transition: transform var(--transition);
            }
            .hotel-card:hover .hotel-img img {
                transform: scale(1.05);
            }
            .hotel-info {
                padding: 1.25rem;
                text-align: center;
            }
            .hotel-info h3 {
                font-size: 1.15rem;
                margin-bottom: 0.5rem;
            }
            .hotel-info h3 a {
                color: var(--text);
                transition: color var(--transition);
            }
            .hotel-info h3 a:hover {
                color: var(--primary);
            }
            .hotel-info .stars {
                margin-bottom: 0.5rem;
            }
            .hotel-info .stars .star {
                color: #f5a623;
                font-size: 1rem;
            }
            .hotel-info p {
                color: var(--muted);
                font-size: 0.9rem;
            }
            @media (max-width: 768px) {
                #hotels {
                    padding: 3rem 0;
                }
                .hotels-grid {
                    gap: 1.5rem;
                }
            }
    